From 2cacb71f778063cf76554a6b88fb2b8898385916 Mon Sep 17 00:00:00 2001 From: Dvir <39403717+dvir001@users.noreply.github.com> Date: Wed, 23 Oct 2024 21:42:18 +0300 Subject: [PATCH] Mobs Depsawn FIxups (#2306) * Fixup * Cleanup --- .../_NF/Salvage/SalvageMobRestrictionsGridComponent.cs | 6 ------ .../_NF/Salvage/SalvageMobRestrictionsSystem.cs | 4 ++++ .../_NF/Entities/Mobs/NPCs/mob_hostile_punkganger.yml | 1 + .../_NF/Entities/Mobs/NPCs/mob_hostile_syndicate.yml | 9 +-------- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/Content.Server/_NF/Salvage/SalvageMobRestrictionsGridComponent.cs b/Content.Server/_NF/Salvage/SalvageMobRestrictionsGridComponent.cs index 079cd5d5d0b..251f868eb5a 100644 --- a/Content.Server/_NF/Salvage/SalvageMobRestrictionsGridComponent.cs +++ b/Content.Server/_NF/Salvage/SalvageMobRestrictionsGridComponent.cs @@ -1,9 +1,3 @@ -using Robust.Shared.GameObjects; -using Robust.Shared.Maths; -using Robust.Shared.Serialization.Manager.Attributes; -using Robust.Shared.ViewVariables; -using System; - namespace Content.Server._NF.Salvage; /// diff --git a/Content.Server/_NF/Salvage/SalvageMobRestrictionsSystem.cs b/Content.Server/_NF/Salvage/SalvageMobRestrictionsSystem.cs index c4b3e5c7c71..be6efb31c9b 100644 --- a/Content.Server/_NF/Salvage/SalvageMobRestrictionsSystem.cs +++ b/Content.Server/_NF/Salvage/SalvageMobRestrictionsSystem.cs @@ -50,6 +50,10 @@ private void OnRemoveGrid(EntityUid uid, SalvageMobRestrictionsGridComponent com { foreach (EntityUid target in component.MobsToKill) { + // Don't destroy yourself, don't destroy things being destroyed. + if (uid == target || MetaData(target).EntityLifeStage >= EntityLifeStage.Terminating) + continue; + if (TryComp(target, out BodyComponent? body)) { // Creates a pool of blood on death, but remove the organs. diff --git a/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_punkganger.yml b/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_punkganger.yml index c337ce42263..907bf2f19b3 100644 --- a/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_punkganger.yml +++ b/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_punkganger.yml @@ -17,6 +17,7 @@ parent: - MobHumanoidHostileBase - MobVandalizer + - NFMobRestrictions id: MobPunkBase description: |- "Criminally-inclined individuals", as NT Security documents call them, these are armed with a variety of weapons. These weapons range from makeshift shivs and machined truncheons to rusty pistols and shotguns. Some may be armored, so plan appropriately. diff --git a/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_syndicate.yml b/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_syndicate.yml index 3445eab3ca7..67ab9887a0c 100644 --- a/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_syndicate.yml +++ b/Resources/Prototypes/_NF/Entities/Mobs/NPCs/mob_hostile_syndicate.yml @@ -1,10 +1,3 @@ -- type: entity - abstract: true - id: MobSyndicateNavalTimedDespawn - components: - - type: TimedDespawn - lifetime: 3000 # 50 mins (max blue space event duration involving these mobs - 40 mins) - - type: entity name: syndicate naval agent abstract: true @@ -13,7 +6,7 @@ - MobHumanoidHostileBase - MobHumanoidInvetory - MobHumanoidHostileAISimpleRanged - #- MobSyndicateNavalTimedDespawn + - NFMobRestrictions id: MobSyndicateNavalBase components: - type: Body