Fixed appendicitis killing people in 4 minutes.

Also from stage 2 and on, symptoms of lower stages can appear too.
This commit is contained in:
Chinsky
2013-01-23 23:10:06 +04:00
parent 7f5e8bf595
commit ebc6529b68
2 changed files with 34 additions and 37 deletions

View File

@@ -62,12 +62,12 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease
return return
spread = (cure_present?"Remissive":initial_spread) spread = (cure_present?"Remissive":initial_spread)
if(stage > max_stages) if(stage > max_stages)
stage = max_stages stage = max_stages
if(!cure_present && prob(stage_prob)) //now the disease shouldn't get back up to stage 4 in no time if(!cure_present && prob(stage_prob) && age > stage_minimum_age) //now the disease shouldn't get back up to stage 4 in no time
stage = min(stage + 1, max_stages) stage = min(stage + 1, max_stages)
age = 0
else if(cure_present && prob(cure_chance)) else if(cure_present && prob(cure_chance))
stage = max(stage - 1, 1) stage = max(stage - 1, 1)

View File

@@ -12,24 +12,23 @@
severity = "Medium" severity = "Medium"
longevity = 1000 longevity = 1000
hidden = list(0, 1) hidden = list(0, 1)
stage_minimum_age = 300 // at least 200 life ticks per stage stage_minimum_age = 160 // at least 200 life ticks per stage
/datum/disease/appendicitis/stage_act() /datum/disease/appendicitis/stage_act()
..() ..()
switch(stage) if(stage == 1)
if(1)
if(affected_mob.op_stage.appendix == 2.0) if(affected_mob.op_stage.appendix == 2.0)
// appendix is removed, can't get infected again // appendix is removed, can't get infected again
src.cure() src.cure()
if(prob(5)) if(prob(5))
affected_mob << "\red You feel a stinging pain in your abdomen!" affected_mob << "\red You feel a stinging pain in your abdomen!"
affected_mob.emote("me",1,"winces slightly.") affected_mob.emote("me",1,"winces slightly.")
if(2) if(stage > 1)
if(prob(3)) if(prob(3))
affected_mob << "\red You feel a stabbing pain in your abdomen!" affected_mob << "\red You feel a stabbing pain in your abdomen!"
affected_mob.emote("me",1,"winces painfully.") affected_mob.emote("me",1,"winces painfully.")
affected_mob.adjustToxLoss(1) affected_mob.adjustToxLoss(1)
if(3) if(stage > 2)
if(prob(1)) if(prob(1))
if (affected_mob.nutrition > 100) if (affected_mob.nutrition > 100)
var/mob/living/carbon/human/H = affected_mob var/mob/living/carbon/human/H = affected_mob
@@ -38,8 +37,7 @@
affected_mob << "\red You gag as you want to throw up, but there's nothing in your stomach!" affected_mob << "\red You gag as you want to throw up, but there's nothing in your stomach!"
affected_mob.Weaken(10) affected_mob.Weaken(10)
affected_mob.adjustToxLoss(3) affected_mob.adjustToxLoss(3)
if(stage > 3)
if(4)
if(prob(1) && ishuman(affected_mob)) if(prob(1) && ishuman(affected_mob))
var/mob/living/carbon/human/H = affected_mob var/mob/living/carbon/human/H = affected_mob
H << "\red Your abdomen is a world of pain!" H << "\red Your abdomen is a world of pain!"
@@ -50,5 +48,4 @@
var/datum/wound/W = new /datum/wound/internal_bleeding(25) var/datum/wound/W = new /datum/wound/internal_bleeding(25)
H.adjustToxLoss(25) H.adjustToxLoss(25)
groin.wounds += W groin.wounds += W
src.cure() src.cure()