From: themias <89101928+themias@users.noreply.github.com> Date: Tue, 30 Jan 2024 23:04:26 +0000 (-0500) Subject: Fix stun baton EMP state (#24706) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=26d8084d524378284c45fa7c3e6eec0757988766;p=space-station-14.git Fix stun baton EMP state (#24706) * Fix stun baton EMP state * trydeactivate --- diff --git a/Content.Server/Stunnable/Systems/StunbatonSystem.cs b/Content.Server/Stunnable/Systems/StunbatonSystem.cs index 053a293689..027259495c 100644 --- a/Content.Server/Stunnable/Systems/StunbatonSystem.cs +++ b/Content.Server/Stunnable/Systems/StunbatonSystem.cs @@ -30,6 +30,7 @@ namespace Content.Server.Stunnable.Systems SubscribeLocalEvent(OnStaminaHitAttempt); SubscribeLocalEvent(TryTurnOn); SubscribeLocalEvent(ToggleDone); + SubscribeLocalEvent(OnChargeChanged); } private void OnStaminaHitAttempt(Entity entity, ref StaminaDamageOnHitAttemptEvent args) @@ -38,12 +39,6 @@ namespace Content.Server.Stunnable.Systems !TryComp(entity.Owner, out var battery) || !_battery.TryUseCharge(entity.Owner, entity.Comp.EnergyPerUse, battery)) { args.Cancelled = true; - return; - } - - if (battery.CurrentCharge < entity.Comp.EnergyPerUse) - { - _itemToggle.Toggle(entity.Owner, predicted: false); } } @@ -101,5 +96,14 @@ namespace Content.Server.Stunnable.Systems User = user }); } + + private void OnChargeChanged(Entity entity, ref ChargeChangedEvent args) + { + if (TryComp(entity.Owner, out var battery) && + battery.CurrentCharge < entity.Comp.EnergyPerUse) + { + _itemToggle.TryDeactivate(entity.Owner, predicted: false); + } + } } }