make romerol work on the dead (#26222)

* a

* review

* g

(cherry picked from commit 87386ca0baa9fc3006b726d26723b345b737943d)
This commit is contained in:
Mr. 27 2024-03-18 02:25:36 -04:00 committed by NullWanderer
parent 678468cc05
commit b2564e7a3b
No known key found for this signature in database
GPG Key ID: 65CF92BD1D26F4AC
2 changed files with 10 additions and 3 deletions

View File

@ -55,7 +55,7 @@ namespace Content.Server.Zombies
SubscribeLocalEvent<ZombieComponent, ComponentStartup>(OnStartup);
SubscribeLocalEvent<ZombieComponent, EmoteEvent>(OnEmote, before:
new []{typeof(VocalSystem), typeof(BodyEmotesSystem)});
new[] { typeof(VocalSystem), typeof(BodyEmotesSystem) });
SubscribeLocalEvent<ZombieComponent, MeleeHitEvent>(OnMeleeHit);
SubscribeLocalEvent<ZombieComponent, MobStateChangedEvent>(OnMobState);
@ -70,6 +70,12 @@ namespace Content.Server.Zombies
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 @@ namespace Content.Server.Zombies
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 @@ namespace Content.Server.Zombies
_humanoidAppearance.SetBaseLayerColor(target, layer, info.Color);
_humanoidAppearance.SetBaseLayerId(target, layer, info.Id);
}
if(TryComp<HumanoidAppearanceComponent>(target, out var appcomp))
if (TryComp<HumanoidAppearanceComponent>(target, out var appcomp))
{
appcomp.EyeColor = zombiecomp.BeforeZombifiedEyeColor;
}

View File

@ -460,6 +460,7 @@
physicalDesc: reagent-physical-desc-necrotic
flavor: bitter
color: "#7e916e"
worksOnTheDead: true
metabolisms:
Medicine:
effects: