Files
Bubberstation/code/datums/diseases/decloning.dm
SkyratBot 9a594755f3 [MIRROR] Renames delta time to be a more obvious name [MDB IGNORE] (#20507)
* Renames delta time to be a more obvious name

* updates to our code

---------

Co-authored-by: oranges <email@oranges.net.nz>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 20:45:43 +01:00

66 lines
2.1 KiB
Plaintext

/datum/disease/decloning
form = "Virus"
name = "Cellular Degeneration"
max_stages = 5
stage_prob = 0.5
cure_text = "Rezadone or death."
agent = "Severe Genetic Damage"
viable_mobtypes = list(/mob/living/carbon/human)
desc = @"If left untreated the subject will [REDACTED]!"
severity = "Dangerous!"
cures = list(/datum/reagent/medicine/rezadone)
disease_flags = CAN_CARRY|CAN_RESIST
spread_flags = DISEASE_SPREAD_NON_CONTAGIOUS
spread_text = "Organic meltdown"
process_dead = TRUE
/datum/disease/decloning/stage_act(seconds_per_tick, times_fired)
. = ..()
if(!.)
return
if(affected_mob.stat == DEAD)
cure()
return FALSE
switch(stage)
if(2)
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("itch")
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("yawn")
if(3)
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("itch")
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("drool")
if(SPT_PROB(1.5, seconds_per_tick))
affected_mob.adjustCloneLoss(1, FALSE)
if(SPT_PROB(1, seconds_per_tick))
to_chat(affected_mob, span_danger("Your skin feels strange."))
if(4)
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("itch")
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("drool")
if(SPT_PROB(2.5, seconds_per_tick))
affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 1, 170)
affected_mob.adjustCloneLoss(2, FALSE)
if(SPT_PROB(7.5, seconds_per_tick))
affected_mob.adjust_stutter(6 SECONDS)
if(5)
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("itch")
if(SPT_PROB(1, seconds_per_tick))
affected_mob.emote("drool")
if(SPT_PROB(2.5, seconds_per_tick))
to_chat(affected_mob, span_danger("Your skin starts degrading!"))
if(SPT_PROB(5, seconds_per_tick))
affected_mob.adjustCloneLoss(5, FALSE)
affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2, 170)
if(affected_mob.cloneloss >= 100)
affected_mob.visible_message(span_danger("[affected_mob] skin turns to dust!"), span_boldwarning("Your skin turns to dust!"))
affected_mob.dust()
return FALSE