diff --git a/Content.Server/_DV/Pain/PainSystem.cs b/Content.Server/_DV/Pain/PainSystem.cs index 08e23e99461..7beb917d4b3 100644 --- a/Content.Server/_DV/Pain/PainSystem.cs +++ b/Content.Server/_DV/Pain/PainSystem.cs @@ -19,7 +19,7 @@ public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnMapInit); - SubscribeLocalEvent(HandlePainTrigger); + SubscribeLocalEvent(HandlePainDeath); } private void OnMapInit(Entity ent, ref MapInitEvent args) @@ -91,9 +91,11 @@ public override void Update(float frameTime) } } - private void HandlePainTrigger(EntityUid uid, PainComponent component, ref MobStateChangedEvent args) + private void HandlePainDeath(EntityUid ent, PainComponent component, ref MobStateChangedEvent args) { - if (args.NewMobState == MobState.Dead && HasComp(uid)) - EnsureComp(uid); + if (args.NewMobState == MobState.Dead && args.OldMobState != MobState.Dead && HasComp(ent)) + { + EnsureComp(ent); + } } }