Virology Rewrite/Virus3/Nu-viro: IT'S FINALLY HERE (#23461)

* Virology Rewrite/Virus3 - Part 2.5 of 3 : Rebase to Bleeding-Edge (#23391)

* Virology Rewrite/Virus3 - Part 1 of 3 : pathogen spread, science goggles (#22036)

* blud

* cloud

* clooooud

* spread

* scanner

* I am the god of hellfire

* oh god oh no

* trimming fat

* dsqdsqdqs

* sdqdqsdqs

* derp

* pinky & the brain

* gibs n meats

* fix

* FeetStab

* working

* overload

* recipes

* analyser sprites

* analyser

* fucktheflu

* cures

* scanner

* scanner data

* work

* incubator

* more incubator stuff

* all of the centrifuge

* some splicer stuff

* more stuff

* lab mouse and cage

* way too much shit

* rr

* duh

* travis u havin a stroke?

* dangerousness

* better spacing

* some fixes

* qdel

* virus and immune system transfer

* derp

* pixels

* fixing retardation

* srccccccccc

* geh

* ahh

* sterility scan

* however

* out of

* conflicted dmi fixes

* what's wrong with you git

* aight travis now get your shit together.

* ffff

* hurr durr

* setting up

* oh shit nigga why have I not commit any of this yet

* ugh

* curb your pathogens

* bleh

* eh

* runtime

* sterilizine buff

* fixes

* sterile

* fixes

* gibbbb

* gneh

* eh

* oh that too

* fixing mouse refactor

* lab mice packs

* oh god oh fuck here we go

* fucking pandemic circuitboard

* chew

* ERT

* step on it travis

* get on with it

* fixing disease touch not really though

* what's your problem byond

* o minus

* syntax error

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* spelling error

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* still that spelling error

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* boy am I bad at english

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* I mean just look at that

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* manual tweak and record

* oxford comma or something

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* TRAsen

Co-Authored-By: DamianX <DamianX@users.noreply.github.com>

* wrong proc

* weird process

* chem chem chem

* mouse balance

* defines
This commit is contained in:
DeityLink
2019-07-09 21:01:46 +02:00
committed by ShiftyRail
parent 7d7facc109
commit 2d28007c77
176 changed files with 6953 additions and 2166 deletions

View File

@@ -64,9 +64,9 @@ var/list/event_last_fired = list()
possibleEvents[/datum/event/radiation_storm] = 50
if(active_with_role["Medical"] > 1)
possibleEvents[/datum/event/viral_infection] = 30
possibleEvents[/datum/event/viral_infection] = 40
possibleEvents[/datum/event/spontaneous_appendicitis] = 50
possibleEvents[/datum/event/viral_outbreak] = 20
possibleEvents[/datum/event/viral_outbreak] = 25
possibleEvents[/datum/event/organ_failure] = 30
possibleEvents[/datum/event/prison_break] = 25

View File

@@ -7,7 +7,7 @@ datum/event/organ_failure/setup()
severity = rand(1, 4)
datum/event/organ_failure/announce()
biohazard_alert(rand(3,7))
biohazard_alert()
datum/event/organ_failure/start()
var/list/candidates = list() //list of candidate keys
for(var/mob/living/carbon/human/G in player_list)

View File

@@ -1,27 +1,46 @@
datum/event/viral_infection
var/severity = 1
datum/event/viral_infection/setup()
announceWhen = rand(0, 300)
endWhen = announceWhen + 1
severity = rand(1, 3)
datum/event/viral_infection/announce()
biohazard_alert()
biohazard_alert_minor()
datum/event/viral_infection/start()
var/list/candidates = list() //list of candidate keys
for(var/mob/living/carbon/human/G in player_list)
if(G.z == map.zCentcomm) //Don't infect people on the centcomm z-level
continue
if(G.client && G.stat != DEAD)
candidates += G
var/virus_choice = pick(subtypesof(/datum/disease2/disease) - /datum/disease2/disease/prion)
var/datum/disease2/disease/D = new virus_choice
var/list/anti = list(
ANTIGEN_BLOOD = 1,
ANTIGEN_COMMON = 1,
ANTIGEN_RARE = 2,
ANTIGEN_ALIEN = 0,
)
var/list/bad = list(
EFFECT_DANGER_HELPFUL = 0,
EFFECT_DANGER_FLAVOR = 1,
EFFECT_DANGER_ANNOYING = 2,
EFFECT_DANGER_HINDRANCE = 3,
EFFECT_DANGER_HARMFUL = 1,
EFFECT_DANGER_DEADLY = 0,
)
D.origin = "Minor Outbreak"
D.makerandom(list(50,90),list(50,90),anti,bad,src)
var/list/candidates = list()
for(var/mob/living/candidate in player_list)
if(candidate.z == STATION_Z && candidate.client && candidate.stat != DEAD && candidate.can_be_infected() && candidate.immune_system.CanInfect(D))
candidates += candidate
if(!candidates.len)
return
candidates = shuffle(candidates)//Incorporating Donkie's list shuffle
while(severity > 0 && candidates.len)
infect_mob_random_lesser(candidates[1])
candidates.Remove(candidates[1])
severity--
var/infected = 1 + round(candidates.len/10)
for (var/i = 1 to infected)
var/mob/living/candidate = pick(candidates)
candidates -= candidate
candidate.infect_disease2(D,1, "Minor Outbreak")

View File

@@ -1,31 +1,46 @@
datum/event/viral_outbreak
var/severity = 1
datum/event/viral_outbreak/setup()
announceWhen = rand(0, 3000)
endWhen = announceWhen + 1
severity = rand(2, 4)
datum/event/viral_outbreak/announce()
biohazard_alert()
biohazard_alert_major()
datum/event/viral_outbreak/start()
var/list/candidates = list() //list of candidate keys
for(var/mob/living/carbon/human/G in player_list)
if(G.z == map.zCentcomm) //Don't infect people on the centcomm z-level
continue
if(G.client && G.stat != DEAD)
candidates += G
var/virus_choice = pick(subtypesof(/datum/disease2/disease) - /datum/disease2/disease/bacteria)
var/datum/disease2/disease/D = new virus_choice
var/list/anti = list(
ANTIGEN_BLOOD = 0,
ANTIGEN_COMMON = 1,
ANTIGEN_RARE = 2,
ANTIGEN_ALIEN = 2,
)
var/list/bad = list(
EFFECT_DANGER_HELPFUL = 0,
EFFECT_DANGER_FLAVOR = 1,
EFFECT_DANGER_ANNOYING = 1,
EFFECT_DANGER_HINDRANCE = 1,
EFFECT_DANGER_HARMFUL = 2,
EFFECT_DANGER_DEADLY = 3,
)
D.origin = "Major Outbreak"
D.makerandom(list(80,100),list(60,100),anti,bad,src)
var/list/candidates = list()
for(var/mob/living/candidate in player_list)
if(candidate.z == STATION_Z && candidate.client && candidate.stat != DEAD && candidate.can_be_infected() && candidate.immune_system.CanInfect(D))
candidates += candidate
if(!candidates.len)
return
candidates = shuffle(candidates)//Incorporating Donkie's list shuffle
while(severity > 0 && candidates.len)
if(prob(33))
infect_mob_random_lesser(candidates[1])
else
infect_mob_random_greater(candidates[1])
var/infected = 1 + round(candidates.len/10)
candidates.Remove(candidates[1])
severity--
for (var/i = 1 to infected)
var/mob/living/candidate = pick(candidates)
candidates -= candidate
candidate.infect_disease2(D,1, "Major Outbreak")