diff --git a/Content.Server/Zombies/ZombieSystem.cs b/Content.Server/Zombies/ZombieSystem.cs index e515c377be8..bef57eceb39 100644 --- a/Content.Server/Zombies/ZombieSystem.cs +++ b/Content.Server/Zombies/ZombieSystem.cs @@ -55,7 +55,7 @@ public override void Initialize() SubscribeLocalEvent(OnStartup); SubscribeLocalEvent(OnEmote, before: - new []{typeof(VocalSystem), typeof(BodyEmotesSystem)}); + new[] { typeof(VocalSystem), typeof(BodyEmotesSystem) }); SubscribeLocalEvent(OnMeleeHit); SubscribeLocalEvent(OnMobState); @@ -70,6 +70,12 @@ public override void Initialize() private void OnPendingMapInit(EntityUid uid, PendingZombieComponent component, MapInitEvent args) { + if (_mobState.IsDead(uid)) + { + ZombifyEntity(uid); + return; + } + component.NextTick = _timing.CurTime + TimeSpan.FromSeconds(1f); } @@ -196,7 +202,7 @@ private float GetZombieInfectionChance(EntityUid uid, ZombieComponent component) var min = component.MinZombieInfectionChance; //gets a value between the max and min based on how many items the entity is wearing - var chance = (max-min) * ((total - items)/total) + min; + var chance = (max - min) * ((total - items) / total) + min; return chance; } @@ -261,7 +267,7 @@ public bool UnZombify(EntityUid source, EntityUid target, ZombieComponent? zombi _humanoidAppearance.SetBaseLayerColor(target, layer, info.Color); _humanoidAppearance.SetBaseLayerId(target, layer, info.Id); } - if(TryComp(target, out var appcomp)) + if (TryComp(target, out var appcomp)) { appcomp.EyeColor = zombiecomp.BeforeZombifiedEyeColor; } diff --git a/Resources/Prototypes/Reagents/toxins.yml b/Resources/Prototypes/Reagents/toxins.yml index c0491716d77..a5b9a3e9bcb 100644 --- a/Resources/Prototypes/Reagents/toxins.yml +++ b/Resources/Prototypes/Reagents/toxins.yml @@ -460,6 +460,7 @@ physicalDesc: reagent-physical-desc-necrotic flavor: bitter color: "#7e916e" + worksOnTheDead: true metabolisms: Medicine: effects: