From a97355fda9e32f16611ef73a5d17faa53c773822 Mon Sep 17 00:00:00 2001 From: Cheridan Date: Sun, 19 Mar 2017 08:40:19 -0500 Subject: [PATCH] Some Anomaly Changes (#25228) Pyroclastic anomalies make player-controlled adult slimes. Tweaks announcement/spawn of anomalies some. Flux anomalies are super dangerous and are now announced ahead of time, and pyroclastic anomalies are somewhat less devastating so they're given some time before announcing, like gravitational ones. --- code/game/objects/effects/anomalies.dm | 9 +++++++-- code/modules/events/anomaly_flux.dm | 4 ++-- code/modules/events/anomaly_pyro.dm | 4 ++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index 24843e128a6..64ca07675a3 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -265,13 +265,18 @@ T.atmos_spawn_air("o2=5;plasma=5;TEMP=1000") /obj/effect/anomaly/pyro/detonate() + INVOKE_ASYNC(src, .proc/makepyroslime) + +/obj/effect/anomaly/pyro/proc/makepyroslime() var/turf/open/T = get_turf(src) if(istype(T)) T.atmos_spawn_air("o2=500;plasma=500;TEMP=1000") //Make it hot and burny for the new slime - var/new_colour = pick("red", "orange") var/mob/living/simple_animal/slime/S = new(T, new_colour) - S.rabid = 1 + S.rabid = TRUE + S.amount_grown = SLIME_EVOLUTION_THRESHOLD + S.Evolve() + offer_control(S) ///////////////////// diff --git a/code/modules/events/anomaly_flux.dm b/code/modules/events/anomaly_flux.dm index 294e897399d..d416bda8034 100644 --- a/code/modules/events/anomaly_flux.dm +++ b/code/modules/events/anomaly_flux.dm @@ -7,8 +7,8 @@ weight = 20 /datum/round_event/anomaly/anomaly_flux - startWhen = 3 - announceWhen = 20 + startWhen = 10 + announceWhen = 3 /datum/round_event/anomaly/anomaly_flux/announce() priority_announce("Localized hyper-energetic flux wave detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") diff --git a/code/modules/events/anomaly_pyro.dm b/code/modules/events/anomaly_pyro.dm index f18893d341d..ae21de1035c 100644 --- a/code/modules/events/anomaly_pyro.dm +++ b/code/modules/events/anomaly_pyro.dm @@ -5,8 +5,8 @@ weight = 20 /datum/round_event/anomaly/anomaly_pyro - startWhen = 10 - announceWhen = 3 + startWhen = 3 + announceWhen = 10 /datum/round_event/anomaly/anomaly_pyro/announce() priority_announce("Pyroclastic anomaly detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert")