diff --git a/code/datums/disease.dm b/code/datums/disease.dm index 2f1ad7496fa1..ca8f4078f168 100644 --- a/code/datums/disease.dm +++ b/code/datums/disease.dm @@ -28,7 +28,7 @@ if(stage > max_stages) stage = max_stages - if(prob(stage_prob) && stage != max_stages) + if(prob(stage_prob) && stage != max_stages && !cure_present) //now the disease shouldn't get back up to stage 4 in no time stage++ if(stage != 1 && (prob(1) || (cure_present && prob(cure_chance)))) stage-- diff --git a/code/datums/diseases/beesease.dm b/code/datums/diseases/beesease.dm new file mode 100644 index 000000000000..be75835ca5c7 --- /dev/null +++ b/code/datums/diseases/beesease.dm @@ -0,0 +1,31 @@ +/* +/datum/disease/beesease + name = "Beesease" + max_stages = 5 + spread = "Contact" //ie shot bees + cure = "???" + cure_id = "???" + agent = "Bees" + affected_species = list("Human","Monkey") + curable = 0 + +/datum/disease/beesease/stage_act() + ..() + switch(stage) + if(1) + if(prob(2)) + affected_mob << "\red You feel like something is moving inside of you" + if(2) //also changes say, see the say.dm + if(prob(2)) + affected_mob << "\red You feel like something is moving inside of you" + if(prob(2)) + affected_mob << "\red BZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + if(3) + //Should give the bee spit verb + if(4) + //Plus bees now spit randomly + if(5) + //Plus if you die, you explode into bees + return +*/ +//Started working on it, but am too lazy to finish it today -- Urist \ No newline at end of file diff --git a/code/datums/diseases/brainrot.dm b/code/datums/diseases/brainrot.dm index 73e393b3868c..0195c48e7c29 100644 --- a/code/datums/diseases/brainrot.dm +++ b/code/datums/diseases/brainrot.dm @@ -9,7 +9,7 @@ curable = 0 cure_chance = 10 -/datum/disease/brainrot/stage_act() +/datum/disease/brainrot/stage_act() //Removed toxloss because damaging diseases are pretty horrible. Last round it killed the entire station because the cure didn't work -- Urist ..() switch(stage) if(2) @@ -28,25 +28,26 @@ if(prob(2)) affected_mob.emote("drool") if(prob(10)) - affected_mob.brainloss += 2 + if(affected_mob.brainloss<=98) //shouldn't retard you to death now + affected_mob.brainloss += 2 affected_mob.updatehealth() if(prob(2)) affected_mob << "\red Your try to remember something important...but can't." - if(prob(10)) +/* if(prob(10)) affected_mob.toxloss +=3 affected_mob.updatehealth() if(prob(2)) - affected_mob << "\red Your head hurts." + affected_mob << "\red Your head hurts." */ if(4) if(prob(2)) affected_mob.emote("stare") if(prob(2)) affected_mob.emote("drool") - if(prob(15)) +/* if(prob(15)) affected_mob.toxloss +=4 affected_mob.updatehealth() if(prob(2)) - affected_mob << "\red Your head hurts." + affected_mob << "\red Your head hurts." */ if(prob(15)) affected_mob.brainloss +=3 affected_mob.updatehealth() diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm index 8090a4907386..2b642f65b952 100644 --- a/code/game/gamemodes/events.dm +++ b/code/game/gamemodes/events.dm @@ -233,7 +233,7 @@ /proc/viral_outbreak() command_alert("Confirmed outbreak of level 7 viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert") world << sound('outbreak7.ogg') - var/virus_type = pick(/datum/disease/dnaspread,/datum/disease/cold,/datum/disease/brainrot,/datum/disease/magnitis) + var/virus_type = pick(/datum/disease/dnaspread,/datum/disease/cold,/datum/disease/brainrot,/datum/disease/magnitis,/datum/disease/wizarditis) for(var/mob/living/carbon/human/H in world) if((H.virus) || (H.stat == 2)) continue diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index d49c748e8808..e05dd07553e8 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -98,6 +98,15 @@ if(!src.stuttering && prob(15)) message = stutter(message) + if(src.virus) + if(src.virus.name=="beesease" && src.virus.stage>=2) + if(prob(src.virus.stage*10)) + var/bzz = length(message) + message = "B" + for(var/i=0,i