mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 02:16:05 +00:00
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:
@@ -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)
|
||||||
|
|||||||
@@ -12,43 +12,40 @@
|
|||||||
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(stage > 1)
|
||||||
if(2)
|
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(stage > 2)
|
||||||
if(3)
|
if(prob(1))
|
||||||
if(prob(1))
|
if (affected_mob.nutrition > 100)
|
||||||
if (affected_mob.nutrition > 100)
|
|
||||||
var/mob/living/carbon/human/H = affected_mob
|
|
||||||
H.vomit()
|
|
||||||
else
|
|
||||||
affected_mob << "\red You gag as you want to throw up, but there's nothing in your stomach!"
|
|
||||||
affected_mob.Weaken(10)
|
|
||||||
affected_mob.adjustToxLoss(3)
|
|
||||||
|
|
||||||
if(4)
|
|
||||||
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.vomit()
|
||||||
H.Weaken(10)
|
else
|
||||||
H.op_stage.appendix = 2.0
|
affected_mob << "\red You gag as you want to throw up, but there's nothing in your stomach!"
|
||||||
|
affected_mob.Weaken(10)
|
||||||
|
affected_mob.adjustToxLoss(3)
|
||||||
|
if(stage > 3)
|
||||||
|
if(prob(1) && ishuman(affected_mob))
|
||||||
|
var/mob/living/carbon/human/H = affected_mob
|
||||||
|
H << "\red Your abdomen is a world of pain!"
|
||||||
|
H.Weaken(10)
|
||||||
|
H.op_stage.appendix = 2.0
|
||||||
|
|
||||||
var/datum/organ/external/groin = H.get_organ("groin")
|
var/datum/organ/external/groin = H.get_organ("groin")
|
||||||
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()
|
|
||||||
|
|||||||
Reference in New Issue
Block a user