Merge pull request #33072 from AnturK/ibelievedinyoukornowlook

Fixes non-advanced diseases vaccines.
This commit is contained in:
Leo
2017-11-27 12:25:28 -02:00
committed by CitadelStationBot
parent 952c25ff6e
commit 00f7be5c36
3 changed files with 12 additions and 13 deletions
+8 -1
View File
@@ -1,6 +1,6 @@
SUBSYSTEM_DEF(disease)
name = "Disease"
flags = SS_NO_FIRE | SS_NO_INIT
flags = SS_NO_FIRE
var/list/active_diseases = list() //List of Active disease in all mobs; purely for quick referencing.
var/list/diseases
@@ -12,6 +12,13 @@ SUBSYSTEM_DEF(disease)
if(!diseases)
diseases = subtypesof(/datum/disease)
/datum/controller/subsystem/disease/Initialize(timeofday)
var/list/all_common_diseases = diseases - typesof(/datum/disease/advance)
for(var/common_disease_type in all_common_diseases)
var/datum/disease/prototype = new common_disease_type()
archive_diseases[prototype.GetDiseaseID()] = prototype
..()
/datum/controller/subsystem/disease/stat_entry(msg)
..("P:[active_diseases.len]")
+4 -3
View File
@@ -101,8 +101,9 @@
/datum/disease/proc/cure(add_resistance = TRUE)
if(affected_mob)
if(disease_flags & CAN_RESIST)
if(add_resistance && !(type in affected_mob.resistances))
affected_mob.resistances += type
var/id = GetDiseaseID()
if(add_resistance && !(id in affected_mob.resistances))
affected_mob.resistances += id
remove_virus()
qdel(src)
@@ -119,7 +120,7 @@
/datum/disease/proc/GetDiseaseID()
return type
return "[type]"
//don't use this proc directly. this should only ever be called by cure()
/datum/disease/proc/remove_virus()
-9
View File
@@ -95,15 +95,6 @@
return 0
return 1
// To add special resistances.
/datum/disease/advance/cure(resistance=1)
if(affected_mob)
var/id = "[GetDiseaseID()]"
if(resistance && !(id in affected_mob.resistances))
affected_mob.resistances[id] = id
remove_virus()
qdel(src) //delete the datum to stop it processing
// Returns the advance disease with a different reference memory.
/datum/disease/advance/Copy(process = 0)
return new /datum/disease/advance(process, src, 1)