From f1e82bcfce91d1f0c17827b71e3f32c898622a03 Mon Sep 17 00:00:00 2001 From: unid15 Date: Wed, 28 Jun 2017 15:39:03 +0200 Subject: [PATCH] Fixes petrification 100% tested --- code/datums/disease.dm | 1 + code/datums/diseases/petrification.dm | 19 ++++++++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/code/datums/disease.dm b/code/datums/disease.dm index 37458a037bf..c58dd5d3a9d 100644 --- a/code/datums/disease.dm +++ b/code/datums/disease.dm @@ -199,6 +199,7 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease /datum/disease/New(var/process=1, var/datum/disease/D)//process = 1 - adding the object to global list. List is processed by master controller. cure_list = list(cure_id) // to add more cures, add more vars to this list in the actual disease's New() + if(process) // Viruses in list are considered active. active_diseases += src initial_spread = spread diff --git a/code/datums/diseases/petrification.dm b/code/datums/diseases/petrification.dm index 887930715f8..5fc776dd17f 100644 --- a/code/datums/diseases/petrification.dm +++ b/code/datums/diseases/petrification.dm @@ -1,17 +1,26 @@ /datum/disease/petrification name = "Rapid Petrification" desc = "An extremely dangerous virus which rapidly spreads through any living tissue. A few seconds after initial contact, it starts petrifying the victim, turning their skin, muscle and organs into stone." - max_stages = 6 + max_stages = 4 spread = "Non contagious" spread_type = NON_CONTAGIOUS cure = "Unknown" - cure_list = list(SACID, PACID, ACIDSPIT, ACIDTEA) //ssh don't spoil - cure_chance = 80 + cure_id = list(SACID, PACID, ACIDSPIT, ACIDTEA) //ssh don't spoil + cure_chance = 100 + curable = TRUE + agent = "rapid petrification virus 11Y-ASD" longevity = 1 stage_prob = 100 //100% chance to advance to next stage every tick +/datum/disease/petrification/New() + ..() + + //Oldcode galore + //That's how you make it so that only one reagent in the list is needed to cure, instead of all of them at once + cure_list = cure_id + /datum/disease/petrification/stage_act() ..() if(!affected_mob) @@ -25,11 +34,11 @@ H.simple_message("You are slowing down. Moving is extremely painful to you.",\ "You feel like Michelangelo di Lodovico Buonarroti Simoni trapped in \a foreign body.") H.pain_shock_stage = 300 - if(4) + if(3) affected_mob.simple_message("Your skin starts losing color and cracking. Your body becomes numb.",\ "You decide to channel your inner Italian sculptor to create a beautiful statue.") H.Stun(3) - if(6) + if(4) if(affected_mob.turn_into_statue(1)) affected_mob.simple_message("Your body turns to stone.",\ "You've created a masterwork statue of David!")