mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 02:09:41 +00:00
[MIRROR] Miscellaneous virology fixes/adjustments (#11032)
Co-authored-by: Guti <32563288+TheCaramelion@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
8529a33efd
commit
5c0aeb5b05
@@ -188,6 +188,14 @@
|
|||||||
viruses_to_return += D
|
viruses_to_return += D
|
||||||
return viruses_to_return
|
return viruses_to_return
|
||||||
|
|
||||||
|
/mob/proc/GetDormantDiseases()
|
||||||
|
LAZYINITLIST(viruses)
|
||||||
|
var/list/viruses_to_return = list()
|
||||||
|
for(var/datum/disease/D in viruses)
|
||||||
|
if(D.virus_modifiers & DORMANT)
|
||||||
|
viruses_to_return += D
|
||||||
|
return viruses_to_return
|
||||||
|
|
||||||
/mob/proc/GetResistances()
|
/mob/proc/GetResistances()
|
||||||
LAZYINITLIST(resistances)
|
LAZYINITLIST(resistances)
|
||||||
return resistances
|
return resistances
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
. = FALSE
|
. = FALSE
|
||||||
var/sickrisk = 1
|
var/sickrisk = 1
|
||||||
|
|
||||||
if(isSynthetic() || species.virus_immune || HAS_TRAIT(src, STRONG_IMMUNITY_TRAIT)) // Don't bother
|
if(isSynthetic() || HAS_TRAIT(src, STRONG_IMMUNITY_TRAIT)) // Don't bother
|
||||||
return
|
return
|
||||||
|
|
||||||
switch(get_species())
|
switch(get_species())
|
||||||
|
|||||||
@@ -79,7 +79,7 @@
|
|||||||
. += span_notice("The scanner is missing.")
|
. += span_notice("The scanner is missing.")
|
||||||
else
|
else
|
||||||
. += span_notice("A class " + span_bold("[scanner.rating]") + " scanning module is installed. It is <i>screwed</i> in place.")
|
. += span_notice("A class " + span_bold("[scanner.rating]") + " scanning module is installed. It is <i>screwed</i> in place.")
|
||||||
. += span_notice("Can detect diseases below stealth " + span_bold("[maximum_stealth]") + ".")
|
// . += span_notice("Can detect diseases below stealth " + span_bold("[maximum_stealth]") + ".")
|
||||||
. += span_notice("Can extract diseases in " + span_bold("[DisplayTimeText(extract_time)]") + ".")
|
. += span_notice("Can extract diseases in " + span_bold("[DisplayTimeText(extract_time)]") + ".")
|
||||||
. += span_notice("Can isolate symptoms <b>[maximum_level >= 9 ? "of any level" : "below level [maximum_level]"]</b>, in <b>[DisplayTimeText(isolate_time)]</b>.")
|
. += span_notice("Can isolate symptoms <b>[maximum_level >= 9 ? "of any level" : "below level [maximum_level]"]</b>, in <b>[DisplayTimeText(isolate_time)]</b>.")
|
||||||
|
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
var/effective_scanner_rating = scanner.rating +1
|
var/effective_scanner_rating = scanner.rating +1
|
||||||
extract_time = (10 SECONDS) / effective_scanner_rating
|
extract_time = (10 SECONDS) / effective_scanner_rating
|
||||||
isolate_time = (15 SECONDS) / effective_scanner_rating
|
isolate_time = (15 SECONDS) / effective_scanner_rating
|
||||||
maximum_stealth = scanner.rating + 2
|
// maximum_stealth = scanner.rating + 2
|
||||||
maximum_level = scanner.rating + 5
|
maximum_level = scanner.rating + 5
|
||||||
|
|
||||||
/obj/item/extrapolator/attack(atom/AM, mob/living/user)
|
/obj/item/extrapolator/attack(atom/AM, mob/living/user)
|
||||||
@@ -184,15 +184,17 @@
|
|||||||
return TRUE
|
return TRUE
|
||||||
if(EXTRAPOLATOR_ACT_CHECK(result, EXTRAPOLATOR_ACT_PRIORITY_ISOLATE))
|
if(EXTRAPOLATOR_ACT_CHECK(result, EXTRAPOLATOR_ACT_PRIORITY_ISOLATE))
|
||||||
isolate = TRUE
|
isolate = TRUE
|
||||||
var/list/advance_diseases = list()
|
//var/list/advance_diseases = list()
|
||||||
|
/*
|
||||||
for(var/datum/disease/advance/candidate in diseases)
|
for(var/datum/disease/advance/candidate in diseases)
|
||||||
if(candidate.stealth >= maximum_stealth)
|
if(candidate.stealth >= maximum_stealth)
|
||||||
continue
|
continue
|
||||||
advance_diseases += candidate
|
advance_diseases += candidate
|
||||||
if(!length(advance_diseases))
|
*/
|
||||||
|
if(!length(diseases))
|
||||||
to_chat(user, span_warning("[icon2html(src, user)] There are no valid diseases to make a culture from."))
|
to_chat(user, span_warning("[icon2html(src, user)] There are no valid diseases to make a culture from."))
|
||||||
return
|
return
|
||||||
var/datum/disease/advance/target_disease = length(advance_diseases) > 1 ? tgui_input_list(user, "Select disease to extract", "Viral Extraction", advance_diseases, default = advance_diseases[1]) : advance_diseases[1]
|
var/datum/disease/advance/target_disease = length(diseases) > 1 ? tgui_input_list(user, "Select disease to extract", "Viral Extraction", diseases, default = diseases[1]) : diseases[1]
|
||||||
if(!target_disease)
|
if(!target_disease)
|
||||||
return
|
return
|
||||||
using = TRUE
|
using = TRUE
|
||||||
|
|||||||
@@ -285,6 +285,9 @@ var/const/CE_STABLE_THRESHOLD = 0.5
|
|||||||
for(var/datum/disease/D in GetSpreadableViruses())
|
for(var/datum/disease/D in GetSpreadableViruses())
|
||||||
B.data["viruses"] |= D.Copy()
|
B.data["viruses"] |= D.Copy()
|
||||||
|
|
||||||
|
for(var/datum/disease/D in GetDormantDiseases())
|
||||||
|
B.data["viruses"] |= D.Copy()
|
||||||
|
|
||||||
if(!B.data["resistances"])
|
if(!B.data["resistances"])
|
||||||
B.data["resistances"] = list()
|
B.data["resistances"] = list()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user