#Attacker being wrong?

1 messages · Page 1 of 1 (latest)

meager patrol
#
        public static void Shoot(PlayerHurtEventArgs ev)
        {
                if (ev.DamageHandler is not FirearmDamageHandler handler)
                    return;
                
                if (handler.Hitbox != HitboxType.Headshot)
                    return;
                
                AudioPlayer audioPlayer = AudioPlayer.CreateOrGet($"Player {ev.Player.Nickname}", onIntialCreation: (p) =>
                    {        
                        // This created speaker will be in 2D space ( audio will be always playing directly on you not from specific location ) but make sure that max distance is set to some higher value.
                        Speaker speaker = p.AddSpeaker("Main", isSpatial: false, maxDistance: 5000f);
                    },
                condition: hub =>
                    {
                        if (hub.IsHost)
                            return false;
                        
                        if (hub.authManager.InstanceMode == ClientInstanceMode.Unverified && !hub.nicknameSync.NickSet)
                            return false;
                
                        if (hub.authManager.syncMode == (SyncMode)ClientInstanceMode.DedicatedServer)
                            return false;
                        Logger.Info(ev.Attacker.ReferenceHub.nicknameSync.Network_myNickSync + $" IsAllowed: {ev.Attacker.ReferenceHub == hub} Shooter: {ev.Attacker.ReferenceHub.nicknameSync.Network_myNickSync}");
                        
                        return ev.Attacker.ReferenceHub == hub;
                    });
            
            audioPlayer.AddClip("headshot");
        }

It always returns the first player who joined in the server idk really why but the attack matches the first player even tho i shot the ammo or someone else did