From d189a9e3b8a46892368b754a83a41d7a90acfb5f Mon Sep 17 00:00:00 2001 From: mirrorcult Date: Sat, 12 Feb 2022 08:44:50 -0700 Subject: [PATCH] Drone hat simulator (#6644) --- Content.Server/Strip/StrippableComponent.cs | 4 ++-- Resources/Prototypes/Entities/Mobs/Player/silicon.yml | 10 ++++++++++ .../InventoryTemplates/drone_inventory_template.yml | 9 +++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 Resources/Prototypes/InventoryTemplates/drone_inventory_template.yml diff --git a/Content.Server/Strip/StrippableComponent.cs b/Content.Server/Strip/StrippableComponent.cs index 8cf8acc606..a3f0bb6862 100644 --- a/Content.Server/Strip/StrippableComponent.cs +++ b/Content.Server/Strip/StrippableComponent.cs @@ -47,8 +47,8 @@ namespace Content.Server.Strip _strippableSystem = EntitySystem.Get(); Owner.EnsureComponentWarn(); - var cuffed = Owner.EnsureComponentWarn(); - cuffed.OnCuffedStateChanged += UpdateState; + if(_entities.TryGetComponent(Owner, out var cuffed)) + cuffed.OnCuffedStateChanged += UpdateState; } protected override void Shutdown() diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index f94fa247da..8d783e471c 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml @@ -64,6 +64,13 @@ - id: PowerDrill - id: JawsOfLife - id: WelderExperimental + - type: Inventory + templateId: drone + - type: Strippable + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface - type: GhostTakeoverAvailable makeSentient: true name: Maintenance Drone @@ -86,6 +93,9 @@ layers: - state: shell sprite: Mobs/Silicon/drone.rsi + - map: [ "head" ] + offset: 0, -0.45 + rotateOffset: false - type: Fixtures fixtures: - shape: diff --git a/Resources/Prototypes/InventoryTemplates/drone_inventory_template.yml b/Resources/Prototypes/InventoryTemplates/drone_inventory_template.yml new file mode 100644 index 0000000000..94959bb94a --- /dev/null +++ b/Resources/Prototypes/InventoryTemplates/drone_inventory_template.yml @@ -0,0 +1,9 @@ +- type: inventoryTemplate + id: drone + slots: + - name: head + slotTexture: head + slotFlags: HEAD + uiContainer: BottomLeft + uiWindowPos: 0,0 + displayName: Head