mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 02:16:05 +00:00
-More work to advance diseases.
The Pandemic should be more compatible with advance diseases. Currently it's pretty ugly but when I get rid of the broken diseases and convert the rest to advance diseases I will clean up the pandemic. Vaccines will now work properly with advance diseases. Soon I'll add a system so that you are able to name your own diseases, as I've added ways for me to do that with the archive_diseases list. Gave names to symptoms for the Pandemic. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4989 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -9,6 +9,8 @@
|
||||
|
||||
#define RANDOM_STARTING_LEVEL 2
|
||||
|
||||
var/list/archive_diseases = list()
|
||||
|
||||
/*
|
||||
|
||||
PROPERTIES
|
||||
@@ -36,6 +38,13 @@
|
||||
*/
|
||||
|
||||
/datum/disease/advance/New(var/process = 1, var/datum/disease/advance/D)
|
||||
|
||||
// Setup our dictionary if it hasn't already.
|
||||
if(!dictionary_symptoms.len)
|
||||
for(var/symp in list_symptoms)
|
||||
var/datum/symptom/S = new symp
|
||||
dictionary_symptoms[S.id] = symp
|
||||
|
||||
if(!istype(D))
|
||||
D = null
|
||||
// Generate symptoms if we weren't given any.
|
||||
@@ -70,7 +79,7 @@
|
||||
if(affected_mob)
|
||||
var/id = "[GetDiseaseID()]"
|
||||
if(resistance && !(id in affected_mob.resistances))
|
||||
affected_mob.resistances[id] = /datum/disease/advance
|
||||
affected_mob.resistances[id] = id
|
||||
affected_mob.viruses -= src //remove the datum from the list
|
||||
del(src) //delete the datum to stop it processing
|
||||
return
|
||||
@@ -119,6 +128,7 @@
|
||||
//world << "[src.name] \ref[src] - REFRESH!"
|
||||
var/list/properties = GenerateProperties()
|
||||
AssignProperties(properties)
|
||||
archive_diseases[GetDiseaseID()] = src
|
||||
|
||||
//Generate disease properties based on the effects. Returns an associated list.
|
||||
/datum/disease/advance/proc/GenerateProperties()
|
||||
|
||||
@@ -16,6 +16,7 @@ Bonus
|
||||
|
||||
/datum/symptom/confusion
|
||||
|
||||
name = "Confusion"
|
||||
stealth = 1
|
||||
resistance = -1
|
||||
stage_speed = -3
|
||||
|
||||
@@ -16,6 +16,7 @@ BONUS
|
||||
|
||||
/datum/symptom/cough
|
||||
|
||||
name = "Cough"
|
||||
stealth = -1
|
||||
resistance = 0
|
||||
stage_speed = 0
|
||||
|
||||
@@ -16,6 +16,7 @@ Bonus
|
||||
|
||||
/datum/symptom/damage_converter // Not the egg
|
||||
|
||||
name = "Toxic Compensation"
|
||||
stealth = 1
|
||||
resistance = -5
|
||||
stage_speed = -5
|
||||
|
||||
@@ -16,6 +16,7 @@ Bonus
|
||||
|
||||
/datum/symptom/dizzy // Not the egg
|
||||
|
||||
name = "Dizziness"
|
||||
stealth = 1
|
||||
resistance = -2
|
||||
stage_speed = -3
|
||||
|
||||
@@ -17,6 +17,7 @@ BONUS
|
||||
|
||||
/datum/symptom/cough
|
||||
|
||||
name = "Headache"
|
||||
stealth = -1
|
||||
resistance = 4
|
||||
stage_speed = 0
|
||||
|
||||
@@ -17,6 +17,7 @@ Bonus
|
||||
|
||||
/datum/symptom/sneeze
|
||||
|
||||
name = "Sneezing"
|
||||
stealth = -2
|
||||
resistance = -1
|
||||
stage_speed = 0
|
||||
@@ -31,5 +32,5 @@ Bonus
|
||||
M.emote("sniffs")
|
||||
else
|
||||
M.emote("sneeze")
|
||||
A.spread(A.holder, 4, AIRBORNE)
|
||||
A.spread(A.holder, 5, AIRBORNE)
|
||||
return
|
||||
@@ -1,11 +1,13 @@
|
||||
// Symptoms are the effects that engineered advanced diseases do.
|
||||
|
||||
var/list/list_symptoms = typesof(/datum/symptom) - /datum/symptom
|
||||
var/list/dictionary_symptoms = list()
|
||||
|
||||
var/global/const/SYMPTOM_ACTIVATION_PROB = 1
|
||||
|
||||
/datum/symptom
|
||||
// Buffs/Debuffs the symptom has to the overall engineered disease.
|
||||
var/name = ""
|
||||
var/stealth = 0
|
||||
var/resistance = 0
|
||||
var/stage_speed = 0
|
||||
|
||||
@@ -20,6 +20,7 @@ Bonus
|
||||
|
||||
/datum/symptom/vomit
|
||||
|
||||
name = "Vomiting"
|
||||
stealth = -2
|
||||
resistance = -1
|
||||
stage_speed = 0
|
||||
@@ -69,6 +70,7 @@ Bonus
|
||||
|
||||
/datum/symptom/vomit/blood
|
||||
|
||||
name = "Blood Vomiting"
|
||||
stealth = -2
|
||||
resistance = -1
|
||||
stage_speed = -1
|
||||
|
||||
Reference in New Issue
Block a user