From 8ac0450c0162b9fbaeb2f8d02d2d402f1365d38d Mon Sep 17 00:00:00 2001 From: mwerezak Date: Sat, 10 Jan 2015 12:26:12 -0500 Subject: [PATCH] Sets chance_maxm for several disease effects Also lengthens the time to get from stage 1 to stage 2 --- code/modules/events/viral_infection.dm | 13 +++++++++++-- code/modules/virus2/disease2.dm | 2 +- code/modules/virus2/effect.dm | 15 ++++++++++----- code/modules/virus2/helpers.dm | 6 +++--- 4 files changed, 25 insertions(+), 11 deletions(-) diff --git a/code/modules/events/viral_infection.dm b/code/modules/events/viral_infection.dm index 29daed2773..55dbe2b823 100644 --- a/code/modules/events/viral_infection.dm +++ b/code/modules/events/viral_infection.dm @@ -11,13 +11,22 @@ datum/event/viral_infection/setup() var/datum/disease2/disease/D = new /datum/disease2/disease var/strength = 1 //whether the disease is of the greater or lesser variety - if (severity >= EVENT_LEVEL_MAJOR && prob(50)) + if (severity >= EVENT_LEVEL_MAJOR && prob(75)) strength = 2 D.makerandom(strength) viruses += D datum/event/viral_infection/announce() - command_announcement.Announce("Confirmed outbreak of level five biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg') + var/level + if (severity == EVENT_LEVEL_MUNDANE) + return + else if (severity == EVENT_LEVEL_MODERATE) + level = pick("one", "two", "three", "four") + else + level = "five" + + if (severity == EVENT_LEVEL_MAJOR || prob(60)) + command_announcement.Announce("Confirmed outbreak of level [level] biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg') datum/event/viral_infection/start() if(!viruses.len) return diff --git a/code/modules/virus2/disease2.dm b/code/modules/virus2/disease2.dm index c7a9b8e375..a68bafed7c 100644 --- a/code/modules/virus2/disease2.dm +++ b/code/modules/virus2/disease2.dm @@ -80,7 +80,7 @@ clicks += 10 //Moving to the next stage - if(clicks > stage*100 && prob(10)) + if(clicks > max(stage*100, 200) && prob(10)) if(stage == max_stage) src.cure(mob) mob.antibodies |= src.antigen diff --git a/code/modules/virus2/effect.dm b/code/modules/virus2/effect.dm index 22d0a49e0a..c79db488a8 100644 --- a/code/modules/virus2/effect.dm +++ b/code/modules/virus2/effect.dm @@ -40,7 +40,7 @@ //////////////////////////////////////////////////////////////// /datum/disease2/effect - var/chance_maxm = 50 + var/chance_maxm = 50 //note that disease effects only proc once every 3 ticks for humans var/name = "Blanking effect" var/stage = 4 var/maxm = 1 @@ -60,8 +60,7 @@ name = "Nil Syndrome" stage = 4 badness = 1 - activate() - return + chance_maxm = 0 /datum/disease2/effect/gibbingtons name = "Gibbingtons Syndrome" @@ -256,6 +255,7 @@ /datum/disease2/effect/groan name = "Groaning Syndrome" stage = 3 + chance_maxm = 25 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*groan") ////////////////////////STAGE 2///////////////////////////////// @@ -263,6 +263,7 @@ /datum/disease2/effect/scream name = "Loudness Syndrome" stage = 2 + chance_maxm = 25 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*scream") @@ -275,6 +276,7 @@ /datum/disease2/effect/sleepy name = "Resting Syndrome" stage = 2 + chance_maxm = 15 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*collapse") @@ -301,6 +303,7 @@ /datum/disease2/effect/fridge name = "Refridgerator Syndrome" stage = 2 + chance_maxm = 25 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*shiver") @@ -346,17 +349,19 @@ name = "Flemmingtons" stage = 1 activate(var/mob/living/carbon/mob,var/multiplier) - mob << "\red Mucous runs down the back of your throat." + mob << "Mucous runs down the back of your throat." /datum/disease2/effect/drool name = "Saliva Effect" stage = 1 + chance_maxm = 25 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*drool") /datum/disease2/effect/twitch name = "Twitcher" stage = 1 + chance_maxm = 25 activate(var/mob/living/carbon/mob,var/multiplier) mob.say("*twitch") @@ -364,4 +369,4 @@ name = "Headache" stage = 1 activate(var/mob/living/carbon/mob,var/multiplier) - mob << " Your head hurts a bit" + mob << "Your head hurts a bit." diff --git a/code/modules/virus2/helpers.dm b/code/modules/virus2/helpers.dm index 8a744be85f..2c4e1e823c 100644 --- a/code/modules/virus2/helpers.dm +++ b/code/modules/virus2/helpers.dm @@ -73,12 +73,12 @@ proc/airborne_can_reach(turf/source, turf/target) if(M.reagents.has_reagent("spaceacillin")) return - if(!disease.affected_species.len) - return - if(!istype(M,/mob/living/carbon)) return + if(!disease.affected_species.len) + return + var/mob/living/carbon/C = M if (!(C.species.name in disease.affected_species)) if (forced)