]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Ensure wires can always be cut (#32447)
authorgoet <6637097+goet@users.noreply.github.com>
Sat, 23 Nov 2024 11:41:37 +0000 (12:41 +0100)
committerGitHub <noreply@github.com>
Sat, 23 Nov 2024 11:41:37 +0000 (12:41 +0100)
ensure wires are always cut

Content.Server/Wires/ComponentWireAction.cs

index 2407068056399d8249d6814e1cbc3436a05a1c2f..90c8a7594d48802357a667866635ca4d07f18780 100644 (file)
@@ -22,13 +22,14 @@ public abstract partial class ComponentWireAction<TComponent> : BaseWireAction w
     public override bool Cut(EntityUid user, Wire wire)
     {
         base.Cut(user, wire);
-        return EntityManager.TryGetComponent(wire.Owner, out TComponent? component) && Cut(user, wire, component);
+        // if the entity doesn't exist, we need to return true otherwise the wire sprite is never updated
+        return EntityManager.TryGetComponent(wire.Owner, out TComponent? component) ? Cut(user, wire, component) : true;
     }
 
     public override bool Mend(EntityUid user, Wire wire)
     {
         base.Mend(user, wire);
-        return EntityManager.TryGetComponent(wire.Owner, out TComponent? component) && Mend(user, wire, component);
+        return EntityManager.TryGetComponent(wire.Owner, out TComponent? component) ? Mend(user, wire, component) : true;
     }
 
     public override void Pulse(EntityUid user, Wire wire)