]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
[fix] prevent removing battery from suit (#15491)
authordeltanedas <39013340+deltanedas@users.noreply.github.com>
Mon, 17 Apr 2023 22:30:40 +0000 (22:30 +0000)
committerGitHub <noreply@github.com>
Mon, 17 Apr 2023 22:30:40 +0000 (16:30 -0600)
Co-authored-by: deltanedas <@deltanedas:kde.org>
Content.Shared/Ninja/Systems/NinjaSuitSystem.cs

index 30902188659a25dccc2a337e365a88f4de569442..67ca7c33aba3e2063dc5386cb0907d4e8501a18a 100644 (file)
@@ -4,6 +4,7 @@ using Content.Shared.Ninja.Components;
 using Content.Shared.Stealth;
 using Content.Shared.Stealth.Components;
 using Content.Shared.Timing;
+using Robust.Shared.Containers;
 using Robust.Shared.Network;
 using Robust.Shared.Prototypes;
 using Robust.Shared.Serialization;
@@ -23,6 +24,7 @@ public abstract class SharedNinjaSuitSystem : EntitySystem
 
         SubscribeLocalEvent<NinjaSuitComponent, GotEquippedEvent>(OnEquipped);
         SubscribeLocalEvent<NinjaSuitComponent, GetItemActionsEvent>(OnGetItemActions);
+        SubscribeLocalEvent<NinjaSuitComponent, ContainerIsRemovingAttemptEvent>(OnSuitRemoveAttempt);
         SubscribeLocalEvent<NinjaSuitComponent, GotUnequippedEvent>(OnUnequipped);
 
         SubscribeNetworkEvent<SetCloakedMessage>(OnSetCloakedMessage);
@@ -48,6 +50,12 @@ public abstract class SharedNinjaSuitSystem : EntitySystem
         args.Actions.Add(comp.EmpAction);
     }
 
+    private void OnSuitRemoveAttempt(EntityUid uid, NinjaSuitComponent comp, ContainerIsRemovingAttemptEvent args)
+    {
+        // no removing your battery idiot!!!
+        args.Cancel();
+    }
+
     private void OnUnequipped(EntityUid uid, NinjaSuitComponent comp, GotUnequippedEvent args)
     {
         UserUnequippedSuit(uid, comp, args.Equipee);