From b383ea8504e59f40a8598cd6b765c8403e03bb5a Mon Sep 17 00:00:00 2001 From: InsoPL Date: Sun, 4 Oct 2026 15:29:52 +0000 Subject: [PATCH] Strapable Supplybot (#43786) * supplybot * fix for being able to buckle to itself --- Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs | 4 ++-- Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs b/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs index ca4ce5033b..f413e5b689 100644 --- a/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs +++ b/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs @@ -260,7 +260,7 @@ public abstract partial class SharedBuckleSystem if (!_container.IsInSameOrNoContainer((buckleUid, null, null), (strapUid, null, null))) return false; - if (user != null && !HasComp(user)) + if (user != null && !HasComp(user) && strapUid != user) { if (popup) _popup.PopupEntity(Loc.GetString("buckle-component-no-hands-message"), user.Value, user); @@ -526,7 +526,7 @@ public abstract partial class SharedBuckleSystem if (!_interaction.InRangeUnobstructed(user.Value, strap.Owner, buckle.Comp.Range, popup: popup)) return false; - if (user.Value != buckle.Owner && !ActionBlocker.CanComplexInteract(user.Value)) + if (user.Value != buckle.Owner && !ActionBlocker.CanComplexInteract(user.Value) && user.Value != strap.Owner) return false; } diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml index de0750eebf..63aff9241f 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml @@ -440,6 +440,9 @@ - Supply - type: Puller needsHands: false + - type: Strap + position: Down + rotation: -90 - type: entity parent: [ MobSiliconBase, MobCombat ]