From 0cb458258490c73bfb86a1ef7f95cdbd5f1bdd69 Mon Sep 17 00:00:00 2001 From: ReeZer2 Date: Tue, 10 Dec 2024 12:31:42 +0200 Subject: [PATCH] FIX: E-N can switch to another type --- .../Silicons/Borgs/Components/BorgSwitchableTypeComponent.cs | 5 +++++ .../Silicons/Borgs/SharedBorgSwitchableTypeSystem.cs | 5 +++++ Resources/Prototypes/SS220/Entities/Mobs/NPCs/animals.yml | 2 ++ 3 files changed, 12 insertions(+) diff --git a/Content.Shared/Silicons/Borgs/Components/BorgSwitchableTypeComponent.cs b/Content.Shared/Silicons/Borgs/Components/BorgSwitchableTypeComponent.cs index 9a783d19aa7d69..e9df0c43b3b86b 100644 --- a/Content.Shared/Silicons/Borgs/Components/BorgSwitchableTypeComponent.cs +++ b/Content.Shared/Silicons/Borgs/Components/BorgSwitchableTypeComponent.cs @@ -45,6 +45,11 @@ public sealed partial class BorgSwitchableTypeComponent : Component /// [DataField] public ProtoId[] InherentRadioChannels = []; + + //ss220 borg switchable type fix start + [DataField] + public bool IsNeedToSwitch = true; + //ss220 borg switchable type fix end } /// diff --git a/Content.Shared/Silicons/Borgs/SharedBorgSwitchableTypeSystem.cs b/Content.Shared/Silicons/Borgs/SharedBorgSwitchableTypeSystem.cs index d9abeb2d32662d..ccc7ae5aa16563 100644 --- a/Content.Shared/Silicons/Borgs/SharedBorgSwitchableTypeSystem.cs +++ b/Content.Shared/Silicons/Borgs/SharedBorgSwitchableTypeSystem.cs @@ -45,6 +45,11 @@ public override void Initialize() private void OnMapInit(Entity ent, ref MapInitEvent args) { + //ss220 borg switchable type fix start + if (!ent.Comp.IsNeedToSwitch) + return; + //ss220 borg switchable type fix start + _actionsSystem.AddAction(ent, ref ent.Comp.SelectTypeAction, ActionId); Dirty(ent); diff --git a/Resources/Prototypes/SS220/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/SS220/Entities/Mobs/NPCs/animals.yml index 2799340983d74d..68d27a270a55d3 100644 --- a/Resources/Prototypes/SS220/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/SS220/Entities/Mobs/NPCs/animals.yml @@ -113,6 +113,8 @@ id: MobEN description: Corgi made of metal with a heart of gold, because a heart of gold is a great guide components: + - type: BorgSwitchableType + isNeedToSwitch: false - type: ContainerFill containers: borg_brain: