Removes Virology (#8927)

-Almost all aspects of virology and it's related machinery and objects have been purged from the code and map.
-Most of disease code has been purged. Some pieces of it remain as holdovers because they would require extensive rewrite of defines and codes for things like nanite robot transformation and appendicitis (that frankly isn't necessary)
-The outbreak event has been purged, as has the virology malicious code event variant.
-The Virology department has been remapped into the Abandoned Sector.
This commit is contained in:
Kaedwuff
2020-06-05 12:27:46 -05:00
committed by GitHub
parent ed111cdfb6
commit 1529fa44c1
134 changed files with 1305 additions and 7852 deletions

View File

@@ -150,7 +150,6 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
severity = EVENT_LEVEL_MODERATE
available_events = list(
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Nothing", /datum/event/nothing, 200),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 25)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, 50, list(ASSIGNMENT_SECURITY = 25)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Communication Blackout", /datum/event/communications_blackout, 60),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Electrical Storm", /datum/event/electrical_storm, 50, list(ASSIGNMENT_ENGINEER = 5, ASSIGNMENT_JANITOR = 20)),
@@ -159,14 +158,12 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Ion Storm", /datum/event/ionstorm, 0, list(ASSIGNMENT_AI = 45, ASSIGNMENT_CYBORG = 25, ASSIGNMENT_ENGINEER = 6, ASSIGNMENT_SCIENTIST = 6)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Meteor Shower", /datum/event/meteor_shower, 40, list(ASSIGNMENT_ENGINEER = 13)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Prison Break", /datum/event/prison_break, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_CYBORG = 20),1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Containment Error - Virology", /datum/event/prison_break/virology, 0, list(ASSIGNMENT_MEDICAL = 15, ASSIGNMENT_CYBORG = 20),1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Containment Error - Xenobiology", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_SCIENTIST = 15, ASSIGNMENT_CYBORG = 20),1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Containment Error - Bridge", /datum/event/prison_break/bridge, 0, list(ASSIGNMENT_ENGINEER = 15, ASSIGNMENT_CYBORG = 20),1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Radiation Storm", /datum/event/radiation_storm, 100),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Random Antagonist", /datum/event/random_antag, 0, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 1),0,10,125, list("Extended")),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Rogue Drones", /datum/event/rogue_drone, 50, list(ASSIGNMENT_SECURITY = 25)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Moderate Spider Infestation", /datum/event/spider_infestation/moderate, 50, list(ASSIGNMENT_SECURITY = 25)),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Viral Infection", /datum/event/viral_infection, 0, list(ASSIGNMENT_MEDICAL = 12), 1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Moderate Vermin Infestation", /datum/event/infestation/moderate, 30, list(ASSIGNMENT_JANITOR = 15, ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 15))
)
@@ -178,7 +175,6 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 50, list(ASSIGNMENT_SECURITY = 10), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 40, list(ASSIGNMENT_ENGINEER = 10),1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 75, list(ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_GARDENER = 20), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Viral Infection", /datum/event/viral_infection, 20, list(ASSIGNMENT_MEDICAL = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Spider Infestation", /datum/event/spider_infestation, 25, list(ASSIGNMENT_SECURITY = 10, ASSIGNMENT_MEDICAL = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Major Vermin Infestation", /datum/event/infestation/major, 15, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 10))
)

View File

@@ -79,8 +79,6 @@ var/list/event_last_fired = list()
if(active_with_role["Medical"] > 0)
possibleEvents[/datum/event/radiation_storm] = active_with_role["Medical"] * 10
possibleEvents[/datum/event/spontaneous_appendicitis] = active_with_role["Medical"] * 10
possibleEvents[/datum/event/viral_infection] = active_with_role["Medical"] * 10
possibleEvents[/datum/event/prison_break] = active_with_role["Security"] * 50
if(active_with_role["Security"] > 0)

View File

@@ -12,11 +12,6 @@
var/list/areaType = list(/area/security/prison, /area/security/brig) //Area types to include.
var/list/areaNotType = list() //Area types to specifically exclude.
/datum/event/prison_break/virology
eventDept = "Medical"
areaName = list("Virology")
areaType = list(/area/medical/virology, /area/medical/virologyaccess, /area/medical/quarantineaccess, /area/medical/quarantine, /area/medical/virologytesting)
/datum/event/prison_break/xenobiology
eventDept = "Science"
areaName = list("Xenobiology")
@@ -25,8 +20,8 @@
/datum/event/prison_break/station
eventDept = "Station"
areaName = list("Brig","Virology","Xenobiology")
areaType = list(/area/security/prison, /area/security/brig, /area/medical/virology, /area/medical/virologyaccess, /area/medical/quarantineaccess, /area/medical/quarantine, /area/medical/virologytesting, /area/rnd/xenobiology)
areaName = list("Brig","Xenobiology")
areaType = list(/area/security/prison, /area/security/brig, /area/rnd/xenobiology)
areaNotType = list(/area/rnd/xenobiology/xenoflora, /area/rnd/xenobiology/xenoflora_storage)
/datum/event/prison_break/bridge

View File

@@ -1,16 +0,0 @@
/datum/event/spontaneous_appendicitis
no_fake = 1
/datum/event/spontaneous_appendicitis/start()
for(var/mob/living/carbon/human/H in shuffle(living_mob_list)) if(H.client && H.stat != DEAD)
var/foundAlready = 0 //don't infect someone that already has the virus
for(var/datum/disease/D in H.viruses)
foundAlready = 1
if(H.stat == 2 || foundAlready)
continue
var/datum/disease/D = new /datum/disease/appendicitis
D.holder = H
D.affected_mob = H
H.viruses += D
break

View File

@@ -1,56 +0,0 @@
datum/event/viral_infection
var/datum/disease2/disease/generated/generated_disease
ic_name = "a viral outbreak"
datum/event/viral_infection/setup()
announceWhen = rand(60, 300)
endWhen = announceWhen + 1
var/has_virologist = FALSE
var/list/valid_diseases = list()
for(var/mob/living/carbon/human/H in mob_list)
if(H.mind && H.stat != DEAD && H.is_client_active(5) && H.get_assignment() == "Biochemist")
has_virologist = TRUE
break
for(var/path in subtypesof(/datum/disease2/disease/generated/))
var/datum/disease2/disease/generated/G = new path
if(!has_virologist && G.dangerous)
continue
valid_diseases += G.type
qdel(G)
var/result = pick(valid_diseases)
generated_disease = new result
datum/event/viral_infection/announce()
var/announcement_body
var/announcement_title
if(!generated_disease || generated_disease.dangerous)
announcement_title = "High Risk Viral Outbreak"
announcement_body = "Confirmed outbreak of level 7 viral infection. Failure to contain outbreak and comply with official orders may result in contract termination and/or death."
else
announcement_title = "Viral Outbreak"
announcement_body = "Confirmed outbreak of level 5 viral infection. Please report to the medbay if you show any unusual symptoms."
command_announcement.Announce(announcement_body, announcement_title)
datum/event/viral_infection/start()
var/list/candidates = list()
for(var/mob/living/carbon/human/H in player_list)
if(H.mind && H.stat != DEAD && H.is_client_active(5) && !player_is_antag(H.mind))
var/turf/T = get_turf(H)
if(isStationLevel(T.z))
candidates += H
if(!candidates.len) return
candidates = shuffle(candidates)
for(var/i=1,i<=severity,i++)
if(candidates.len)
infect_mob(candidates[1], generated_disease.getcopy())
log_admin("Virus event affecting [candidates[1]] started; Virus: [generated_disease.generated_name] ")
message_admins("Virus event affecting [candidates[1]] started; Virus: [generated_disease.generated_name] ")
candidates -= candidates[1]

View File

@@ -1,29 +0,0 @@
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()
command_alert("Confirmed outbreak of level 7 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert")
to_world(sound('sound/AI/outbreak7.ogg'))
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.client && G.stat != DEAD)
candidates += G
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])
candidates.Remove(candidates[1])
severity--