diff --git a/Source/Coop/Controllers/HandControllers/SITFirearmController.cs b/Source/Coop/Controllers/HandControllers/SITFirearmController.cs index 34b0fb00..be2eddec 100644 --- a/Source/Coop/Controllers/HandControllers/SITFirearmController.cs +++ b/Source/Coop/Controllers/HandControllers/SITFirearmController.cs @@ -221,8 +221,8 @@ public override void InitiateShot(IWeapon weapon, BulletClass ammo, Vector3 shot { base.InitiateShot(weapon, ammo, shotPosition, shotDirection, fireportPosition, chamberIndex, overheat); - if (((Weapon)weapon).HasChambers && ((Weapon)weapon).Chambers[0].ContainedItem != null && ((Weapon)weapon).Chambers[0].ContainedItem == ammo && ammo.IsUsed) - ((Weapon)weapon).Chambers[0].RemoveItem().OrElse(elseValue: false); + //if (((Weapon)weapon).HasChambers && ((Weapon)weapon).Chambers[0].ContainedItem != null && ((Weapon)weapon).Chambers[0].ContainedItem == ammo && ammo.IsUsed) + // ((Weapon)weapon).Chambers[0].RemoveItem().OrElse(elseValue: false); EShotType shotType = EShotType.Unknown; switch (weapon.MalfState.State) diff --git a/Source/Coop/NetworkPacket/Player/ApplyDamagePacket.cs b/Source/Coop/NetworkPacket/Player/ApplyDamagePacket.cs index 2e0aae14..a47b956f 100644 --- a/Source/Coop/NetworkPacket/Player/ApplyDamagePacket.cs +++ b/Source/Coop/NetworkPacket/Player/ApplyDamagePacket.cs @@ -180,7 +180,8 @@ public override void Process() var bridgeOwner = Singleton.Instance.GetAlivePlayerBridgeByProfileID(ProfileId); if (bridgeOwner == null) { - StayInTarkovHelperConstants.Logger.LogError($"{GetType()}:{nameof(Process)}:Unable to find BridgeOwner for {ProfileId}"); + // this happens on high latency, when hit try to register to someone who is already dead, reduced severity from error to warning // bullet + StayInTarkovHelperConstants.Logger.LogWarning($"{GetType()}:{nameof(Process)}:Unable to find BridgeOwner for {ProfileId}"); return; } diff --git a/Source/Coop/NetworkPacket/Player/Weapons/InitiateShotPacket.cs b/Source/Coop/NetworkPacket/Player/Weapons/InitiateShotPacket.cs index 71746993..549aa29a 100644 --- a/Source/Coop/NetworkPacket/Player/Weapons/InitiateShotPacket.cs +++ b/Source/Coop/NetworkPacket/Player/Weapons/InitiateShotPacket.cs @@ -96,7 +96,7 @@ protected override void Process(CoopPlayerClient client) StayInTarkovHelperConstants.Logger.LogError($"Unable to find Ammo for {firearmControllerClient.Weapon.Name}"); return; } - ammoToFire.IsUsed = true; + //ammoToFire.IsUsed = true; switch (ShotType) { case EShotType.DryFire: @@ -140,7 +140,7 @@ protected override void Process(CoopPlayerClient client) case EShotType.RegularShot: firearmControllerClient.InitiateShot(firearmControllerClient.Weapon, ammoToFire, ShotPosition, ShotDirection, FireportPosition, ChamberIndex, Overheat); firearmControllerClient.PlaySounds(firearmControllerClient.WeaponSoundPlayer, ammoToFire, ShotPosition, ShotDirection, false); - firearmControllerClient.FirearmsAnimator.SetFire(fire: true); + //firearmControllerClient.FirearmsAnimator.SetFire(fire: true); if (firearmControllerClient.Weapon.IsBoltCatch && firearmControllerClient.Weapon.ChamberAmmoCount == 0 && firearmControllerClient.Weapon.GetCurrentMagazineCount() == 0 && !firearmControllerClient.Weapon.ManualBoltCatch) { @@ -169,10 +169,10 @@ protected override void Process(CoopPlayerClient client) firearmControllerClient.LightAndSoundShot(ShotPosition, ShotDirection, ammoToFire.AmmoTemplate); } - if (firearmControllerClient.Weapon.HasChambers && firearmControllerClient.Weapon.Chambers[0].ContainedItem != null) - firearmControllerClient.Weapon.Chambers[0].RemoveItem().OrElse(elseValue: false); + //if (firearmControllerClient.Weapon.HasChambers && firearmControllerClient.Weapon.Chambers[0].ContainedItem != null) + // firearmControllerClient.Weapon.Chambers[0].RemoveItem().OrElse(elseValue: false); - ammoToFire.IsUsed = true; + //ammoToFire.IsUsed = true; break; default: