diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 0b088cb74f..2cf2d6dc25 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -17,7 +17,7 @@ GLOBAL_LIST_INIT(advance_cures, list( )) /datum/disease/advance - name = "Unknown" + name = DEVELOPER_WARNING_NAME desc = "An engineered disease which can contain a multitude of symptoms." form = "Advance Disease" agent = "advance microbes" @@ -178,7 +178,7 @@ GLOBAL_LIST_INIT(advance_cures, list( else var/datum/disease/advance/A = GLOB.archive_diseases[GetDiseaseID()] var/actual_name = A.name - if(actual_name != "Unknown") + if(actual_name != DEVELOPER_WARNING_NAME) name = actual_name @@ -266,8 +266,10 @@ GLOBAL_LIST_INIT(advance_cures, list( severity = DISEASE_HARMFUL if(4) severity = DISEASE_DANGEROUS - if(5 to INFINITY) + if(5) severity = DISEASE_BIOHAZARD + if(6 to INFINITY) + severity = DISEASE_PANDEMIC else severity = "Unknown" @@ -477,3 +479,103 @@ GLOBAL_LIST_INIT(advance_cures, list( GLOB.active_diseases += A log_admin("[key_name(src)] has contracted the virus \"[A]\"") + +/* +* Generates a random name for a disease, depending on where it comes from +*/ +/datum/disease/advance/proc/random_disease_name(var/atom/diseasesource) + + if(length(symptoms) == 1) + var/datum/symptom/main_symptom = symptoms[1] + if(istype(main_symptom) && length(main_symptom.name)) + return main_symptom.name + + // Prefixes. These need a space right after. + var/list/prefixes = list("Spacer's ", "Space ", "Infectious ","Viral ", "The ", "[capitalize(prob(50) ? pick(first_names_male) : pick(first_names_female))]'s ", "[capitalize(pick(last_names))]'s ", "Acute ") + var/list/bodies = list(pick("[capitalize(prob(50) ? pick(first_names_male) : pick(first_names_female))]", "[pick(last_names)]"), "Space", "Disease", "Noun", "Cold", "Germ", "Virus") + // These might need some space before the word, depends on what you want to add. + var/list/suffixes = list("ism", "itis", "osis", "itosis", " #[rand(1,10000)]", "-[rand(1,100)]", "s", "y", " Virus", " Bug", " Infection", " Disease", " Complex", " Syndrome", " Sickness") + + if(stealth >=2) + prefixes += "Crypto " + switch(max(resistance - (symptoms.len / 2), 1)) + if(1) + suffixes += "-alpha" + if(2) + suffixes += "-beta" + if(3) + suffixes += "-gamma" + if(4) + suffixes += "-delta" + if(5) + suffixes += "-epsilon" + if(6) + suffixes += pick("-zeta", "-eta", "-theta", "-iota") + if(7) + suffixes += pick("-kappa", "-lambda") + if(8) + suffixes += pick("-mu", "-nu", "-xi", "-omicron") + if(9) + suffixes += pick("-pi", "-rho", "-sigma", "-tau") + if(10) + suffixes += pick("-upsilon", "-phi", "-chi", "-psi") + if(11 to INFINITY) + suffixes += "-omega" + prefixes += "Robust " + switch(transmission - symptoms.len) + if(-INFINITY to 2) + prefixes += "Bloodborne " + if(3) + prefixes += list("Mucous ", "Kissing ") + if(4) + prefixes += "Contact " + suffixes += " Flu" + if(5 to INFINITY) + prefixes += "Airborne " + suffixes += " Plague" + switch(severity) + if(-INFINITY to 0) + prefixes += "Altruistic " + if(1 to 2) + prefixes += "Benign " + if(3 to 4) + prefixes += "Malignant " + if(5) + prefixes += "Deadly " + bodies += "Death" + if(6 to INFINITY) + prefixes += "Morbid " + bodies += "Death" + if(diseasesource) + if(ishuman(diseasesource)) + var/mob/living/carbon/human/H = diseasesource + prefixes += pick("[H.name]'s ", "[H.job]'s ", "[H.get_species()]'s ") + bodies += pick("[H.name]", "[H.job]", "[H.get_species()]") + if(H.get_species() == SPECIES_UNATHI || H.get_species() == SPECIES_TAJARAN) + prefixes += list("Vermin ", "Zoo", "Maintenance ") + bodies += list("Rat", "Maint") + if(ismouse(diseasesource) && !istype(diseasesource, /mob/living/simple_mob/animal/passive/mouse/white/virology)) + prefixes += list("Vermin ", "Zoo", "Maintenance ") + bodies += list("Rat", "Maint") + else switch(diseasesource.type) + if(/mob/living/simple_mob/animal/passive/mouse/white/virology) + prefixes += list("Fleming's ", "Standard ") + bodies += list("Freebie") + if(/obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/vomit/old) + prefixes += list("Bloody ", "Maintenance ") + bodies += list("Maint") + if(/obj/item/reagent_containers/syringe/old) + prefixes += list("Junkie ", "Maintenance ") + bodies += list("Needle", "Maint") + for(var/datum/symptom/S in symptoms) + if(!S.neutered) + prefixes += S.prefixes + bodies += S.bodies + suffixes += S.suffixes + switch(rand(1, 3)) + if(1) + return "[pick(prefixes)][pick(bodies)]" + if(2) + return "[pick(prefixes)][pick(bodies)][pick(suffixes)]" + if(3) + return "[pick(bodies)][pick(suffixes)]" diff --git a/code/datums/diseases/advance/disease_preset.dm b/code/datums/diseases/advance/disease_preset.dm index 6ee6b15ce3..6a23220cb6 100644 --- a/code/datums/diseases/advance/disease_preset.dm +++ b/code/datums/diseases/advance/disease_preset.dm @@ -6,7 +6,7 @@ /datum/disease/advance/random/minor max_symptoms_override = 4 -/datum/disease/advance/random/New(max_symptoms, max_level = 6, min_level = 1, list/guaranteed_symptoms = setsymptom) +/datum/disease/advance/random/New(max_symptoms, max_level = 6, min_level = 1, list/guaranteed_symptoms = setsymptom, var/atom/infected) if(!max_symptoms) max_symptoms = (2 + rand(1, (VIRUS_SYMPTOM_LIMIT - 2))) if(max_symptoms_override) @@ -35,6 +35,11 @@ symptoms += new guaranteed_symptom Finalize() + if(randomname) + var/randname = random_disease_name(infected) + AssignName(randname) + name = randname + /mob/living/carbon/human/proc/give_random_dormant_disease(biohazard = 25, min_symptoms = 2, max_symptoms = 4, min_level = 4, max_level = 9, list/guaranteed_symptoms = list()) . = FALSE var/sickrisk = 1 @@ -53,7 +58,7 @@ if(prob(min(100, (biohazard * sickrisk)))) var/symptom_amt = rand(min_symptoms, max_symptoms) - var/datum/disease/advance/dormant_disease = new /datum/disease/advance/random(symptom_amt, max_level, min_level, guaranteed_symptoms) + var/datum/disease/advance/dormant_disease = new /datum/disease/advance/random(symptom_amt, max_level, min_level, guaranteed_symptoms, infected = src) dormant_disease.virus_modifiers |= DORMANT dormant_disease.spread_flags = DISEASE_SPREAD_NON_CONTAGIOUS dormant_disease.spread_text = "None" diff --git a/code/datums/diseases/advance/symptoms/blobspores.dm b/code/datums/diseases/advance/symptoms/blobspores.dm index 29887dfc1e..734b372c34 100644 --- a/code/datums/diseases/advance/symptoms/blobspores.dm +++ b/code/datums/diseases/advance/symptoms/blobspores.dm @@ -37,6 +37,9 @@ BONUS var/strong_blob var/node_blob + prefixes = list("Xeno", "Sporing ") + bodies = list("Blob") + /datum/symptom/blobspores/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 14) diff --git a/code/datums/diseases/advance/symptoms/choking.dm b/code/datums/diseases/advance/symptoms/choking.dm index eb3b492e49..8ee4128296 100644 --- a/code/datums/diseases/advance/symptoms/choking.dm +++ b/code/datums/diseases/advance/symptoms/choking.dm @@ -35,6 +35,9 @@ Bonus "Transmission 8" = "Doubles the damage caused by the symptom." ) + bodies = list("Lung") + suffixes = list(" Tuberculosis") + /datum/symptom/choking/severityset(datum/disease/advance/A) . = ..() if(A.transmission >= 8) diff --git a/code/datums/diseases/advance/symptoms/cockroach.dm b/code/datums/diseases/advance/symptoms/cockroach.dm index da7481a9f0..5638479eac 100644 --- a/code/datums/diseases/advance/symptoms/cockroach.dm +++ b/code/datums/diseases/advance/symptoms/cockroach.dm @@ -17,6 +17,9 @@ "Transmission 8" = "When the host dies, more roaches spawn." ) + prefixes = list("Blatto") + bodies = list("Roach") + /datum/symptom/cockroach/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/confusion.dm b/code/datums/diseases/advance/symptoms/confusion.dm index 1ba1d0ad74..29911dd7b2 100644 --- a/code/datums/diseases/advance/symptoms/confusion.dm +++ b/code/datums/diseases/advance/symptoms/confusion.dm @@ -33,6 +33,9 @@ Bonus "Stealth 4" = "The symptom remains hidden until active." ) + prefixes = list("Dizzy ") + bodies = list("Ditz") + /datum/symptom/confusion/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 6) diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm index e0ef528eef..2625530dab 100644 --- a/code/datums/diseases/advance/symptoms/cough.dm +++ b/code/datums/diseases/advance/symptoms/cough.dm @@ -38,6 +38,8 @@ BONUS "Transmission 11" = "The hosts coughing will occasionally spread the virus." ) + bodies = list("Cough") + /datum/symptom/cough/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 3) diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm index d32bef5f04..cd4d7bd59d 100644 --- a/code/datums/diseases/advance/symptoms/deafness.dm +++ b/code/datums/diseases/advance/symptoms/deafness.dm @@ -33,6 +33,9 @@ Bonus "Stealth 4" = "The symptom remains hidden until active." ) + prefixes = list("Aural ") + bodies = list("Ear") + /datum/symptom/deafness/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 9) diff --git a/code/datums/diseases/advance/symptoms/fever.dm b/code/datums/diseases/advance/symptoms/fever.dm index bd3698eb54..57554fefe3 100644 --- a/code/datums/diseases/advance/symptoms/fever.dm +++ b/code/datums/diseases/advance/symptoms/fever.dm @@ -35,12 +35,17 @@ Bonus "Resistance 10" = "Further increases fever intensity." ) + bodies = list("Fever") + suffixes = list(" Fever") + /datum/symptom/fever/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 5) severity += 1 + prefixes = list("Desert") if(A.resistance >= 10) severity += 1 + prefixes = list("Volcanic") /datum/symptom/fever/Start(datum/disease/advance/A) if(!..()) diff --git a/code/datums/diseases/advance/symptoms/fire.dm b/code/datums/diseases/advance/symptoms/fire.dm index 0896422a90..037e6cdec1 100644 --- a/code/datums/diseases/advance/symptoms/fire.dm +++ b/code/datums/diseases/advance/symptoms/fire.dm @@ -38,6 +38,10 @@ Bonus "Stealth 4" = "The symptom remains hidden until active." ) + prefixes = list("Burning ") + bodies = list("Combustion") + suffixes = list(" Combustion") + /datum/symptom/fire/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/flesh_eating.dm b/code/datums/diseases/advance/symptoms/flesh_eating.dm index 2e181a7baf..919102b57d 100644 --- a/code/datums/diseases/advance/symptoms/flesh_eating.dm +++ b/code/datums/diseases/advance/symptoms/flesh_eating.dm @@ -36,6 +36,9 @@ Bonus "Transmission 8" = "The host will bleed far more violently, loosing even more blood, and spraying infected blood everywhere." ) + prefixes = list("Bloody ", "Hemo") + bodies = list("Hemophilia") + /datum/symptom/flesh_eating/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/flip.dm b/code/datums/diseases/advance/symptoms/flip.dm index 48c01bc1f4..04ab992e2c 100644 --- a/code/datums/diseases/advance/symptoms/flip.dm +++ b/code/datums/diseases/advance/symptoms/flip.dm @@ -27,6 +27,9 @@ BONUS level = 1 severity = 0 + prefixes = list("Acrobat's ", "Flippin' ") + bodies = list("Flip") + /datum/symptom/flip/Activate(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/hair.dm b/code/datums/diseases/advance/symptoms/hair.dm index fc41c3207c..8df7cab0f9 100644 --- a/code/datums/diseases/advance/symptoms/hair.dm +++ b/code/datums/diseases/advance/symptoms/hair.dm @@ -28,6 +28,8 @@ BONUS symptom_delay_min = 45 symptom_delay_max = 90 + bodies = list("Bald", "Scalp") + /datum/symptom/shedding/Activate(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/hallucigen.dm b/code/datums/diseases/advance/symptoms/hallucigen.dm index 4db05f1878..be1cb38473 100644 --- a/code/datums/diseases/advance/symptoms/hallucigen.dm +++ b/code/datums/diseases/advance/symptoms/hallucigen.dm @@ -30,6 +30,9 @@ Bonus var/fake_healthy = FALSE + prefixes = list("Narcotic ", "Narco", "Psycho-") + suffixes = list(" Psychosis") + threshold_descs = list( "Stage Speed 7" = "Increases the amount of hallucinations.", "Stealth 2" = "The virus mimics positive symptoms" diff --git a/code/datums/diseases/advance/symptoms/headache.dm b/code/datums/diseases/advance/symptoms/headache.dm index 94cc4bccc2..5ed93588f3 100644 --- a/code/datums/diseases/advance/symptoms/headache.dm +++ b/code/datums/diseases/advance/symptoms/headache.dm @@ -34,6 +34,8 @@ BONUS "Stealth 4" = "Reduces headache frequency until later stages." ) + bodies = list("Skull", "Migraine") + /datum/symptom/headache/severityset(datum/disease/advance/A) . = ..() if(A.stage_rate >= 6) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 78f23343f3..72ee41c65e 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -58,6 +58,8 @@ "Stage Speed 6" = "Consumed chemicals nourish the host." ) + prefixes = list("Toxo") + /datum/symptom/heal/chem/Start(datum/disease/advance/A) if(!..()) return @@ -98,6 +100,9 @@ "Stage Speed 12" = "The disease heals brute damage incredibly fast, but deteriorates cell health and causes tumors to become more advanced. The disease will also regenerate lost limbs." ) + prefixes = list("Blood ", "Meat ", "Flesh ") + bodies = list("Giant") + /datum/symptom/growth/Start(datum/disease/advance/A) if(!..()) return @@ -165,6 +170,9 @@ "Stage Speed 10" = "Chemical metabolization is tripled instead of doubled." ) + prefixes = list("Metabolic ", "Junkie's ", "Chemical ") + bodies = list("Hunger") + /datum/symptom/heal/metabolism/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/itching.dm b/code/datums/diseases/advance/symptoms/itching.dm index 5eeada1d92..058cfb77f2 100644 --- a/code/datums/diseases/advance/symptoms/itching.dm +++ b/code/datums/diseases/advance/symptoms/itching.dm @@ -34,6 +34,9 @@ BONUS "Stage Speed 7" = "The host will scratch itself when itchin, causing superficial damage." ) + prefixes = list("Irritant ") + bodies = list("Itch") + /datum/symptom/itching/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/language.dm b/code/datums/diseases/advance/symptoms/language.dm index 7d3f95e83a..0bae1cd95e 100644 --- a/code/datums/diseases/advance/symptoms/language.dm +++ b/code/datums/diseases/advance/symptoms/language.dm @@ -33,6 +33,9 @@ Bonus "Resistance 5" = "The host might end up speaking a completely made up language." ) + prefixes = list("Babel's ", "Tongue-Twisting ") + bodies = list("Tongue", "Language") + /datum/symptom/language/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/light.dm b/code/datums/diseases/advance/symptoms/light.dm index 0d3e5b697d..71cb680b69 100644 --- a/code/datums/diseases/advance/symptoms/light.dm +++ b/code/datums/diseases/advance/symptoms/light.dm @@ -12,6 +12,9 @@ "Stealth 3" = "The virus causes a wider disparity between light and dark." ) + prefixes = list("Photo", "Light ") + bodies = list("Cramp") + /datum/symptom/light/severityset(datum/disease/advance/A) . = ..() if(A.stealth >= 3) diff --git a/code/datums/diseases/advance/symptoms/macrophage.dm b/code/datums/diseases/advance/symptoms/macrophage.dm index f5ea92b790..80cd6426ee 100644 --- a/code/datums/diseases/advance/symptoms/macrophage.dm +++ b/code/datums/diseases/advance/symptoms/macrophage.dm @@ -38,6 +38,9 @@ BONUS "Transmission 12" = "Phages will carry all diseases within the host, instead of only containing their own." ) + prefixes = list("Ambulant ", "Macro") + bodies = list("Phage") + /datum/symptom/macrophage/severityset(datum/disease/advance/A) . = ..() if(A.transmission >= 10) diff --git a/code/datums/diseases/advance/symptoms/mlem.dm b/code/datums/diseases/advance/symptoms/mlem.dm index ebd3c79eb4..80f8836d4d 100644 --- a/code/datums/diseases/advance/symptoms/mlem.dm +++ b/code/datums/diseases/advance/symptoms/mlem.dm @@ -32,6 +32,9 @@ BONUS "Transmission 8" = "The host will spread the virus through saliva when mlemming." ) + prefixes = list("Mlemington's ", "Licking-") + bodies = list("Mlem", "Lick") + /datum/symptom/mlem/severityset(datum/disease/advance/A) . = ..() if(A.transmission >= 8) diff --git a/code/datums/diseases/advance/symptoms/radiation.dm b/code/datums/diseases/advance/symptoms/radiation.dm index 0c926c1749..9b4a44ca01 100644 --- a/code/datums/diseases/advance/symptoms/radiation.dm +++ b/code/datums/diseases/advance/symptoms/radiation.dm @@ -13,6 +13,9 @@ "Speed 8" = "Host takes radiation damage faster." ) + prefixes = list("Gamma ") + bodies = list("Radiation") + /datum/symptom/radiation/severityset(datum/disease/advance/A) . = ..() if(A.stage_rate >= 8) @@ -65,6 +68,8 @@ "Resistance 12" = "The disease also kills off genetically damaged cells, coverting Genetic damage to Burn damage, an inefficient rate." ) + suffixes = list(" Aptosis") + /datum/symptom/radconversion/severityset(datum/disease/advance/A) . = ..() if(A.stage_rate >= 6) diff --git a/code/datums/diseases/advance/symptoms/shivering.dm b/code/datums/diseases/advance/symptoms/shivering.dm index ec556abef7..14f6ce18ee 100644 --- a/code/datums/diseases/advance/symptoms/shivering.dm +++ b/code/datums/diseases/advance/symptoms/shivering.dm @@ -34,6 +34,9 @@ Bonus "Stage Speed 10" = "Further increases cooling speed." ) + bodies = list("Shiver") + suffixes = list(" Shivers") + /datum/symptom/shivering/severityset(datum/disease/advance/A) . = ..() if(A.stage_rate >= 5) diff --git a/code/datums/diseases/advance/symptoms/size.dm b/code/datums/diseases/advance/symptoms/size.dm index b01336d999..19c0c8bd57 100644 --- a/code/datums/diseases/advance/symptoms/size.dm +++ b/code/datums/diseases/advance/symptoms/size.dm @@ -43,7 +43,11 @@ BONUS min_size = RESIZE_NORMAL max_size = RESIZE_MAXIMUM + prefixes = list("Growing ", "Gigantic ") + /datum/symptom/size/shrink name = "Dwindling Malady" min_size = RESIZE_MINIMUM max_size = RESIZE_NORMAL + + prefixes = list("Shrinking ", "Micro-") diff --git a/code/datums/diseases/advance/symptoms/sneeze.dm b/code/datums/diseases/advance/symptoms/sneeze.dm index 2ab63957c9..1d94f0d646 100644 --- a/code/datums/diseases/advance/symptoms/sneeze.dm +++ b/code/datums/diseases/advance/symptoms/sneeze.dm @@ -35,6 +35,9 @@ Bonus "Trasmission 12" = "The host may spread the disease through sneezing." ) + prefixes = list("Nasal ") + bodies = list("Cold") + /datum/symptom/sneeze/Start(datum/disease/advance/A) if(!..()) return @@ -86,6 +89,9 @@ Bonus level = 4 severity = 3 + prefixes = list("Nasal ", "Displacing ") + bodies = list("Cold", "Bluespace") + /datum/symptom/bsneeze/Activate(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/spin.dm b/code/datums/diseases/advance/symptoms/spin.dm index 95ef7569b6..319929009b 100644 --- a/code/datums/diseases/advance/symptoms/spin.dm +++ b/code/datums/diseases/advance/symptoms/spin.dm @@ -31,6 +31,9 @@ BONUS var/bigspin = FALSE + prefixes = list("Spinning ", "Rotatory ") + bodies = list("Rotato") + /datum/symptom/spyndrome/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/stimulant.dm b/code/datums/diseases/advance/symptoms/stimulant.dm index 9378221e19..08be2e05b7 100644 --- a/code/datums/diseases/advance/symptoms/stimulant.dm +++ b/code/datums/diseases/advance/symptoms/stimulant.dm @@ -34,12 +34,17 @@ Bonus "Stage 8" = "The virus causes extreme nervousness and paranoia, resulting in occasional hallucinations, and extreme restlessness, but great overall energy." ) + prefixes = list("Gray ", "Amped ", "Nervous ") + bodies = list("Hyper") + /datum/symptom/stimulant/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 8) severity -= 1 if(A.stage_rate >= 8) severity -= 1 + prefixes = list("Gray ", "Amped ", "Paranoid ") + suffixes = list(" Madness", " Insanity") /datum/symptom/stimulant/Start(datum/disease/advance/A) if(!..()) diff --git a/code/datums/diseases/advance/symptoms/symptoms.dm b/code/datums/diseases/advance/symptoms/symptoms.dm index c7322cbb31..33442444bd 100644 --- a/code/datums/diseases/advance/symptoms/symptoms.dm +++ b/code/datums/diseases/advance/symptoms/symptoms.dm @@ -29,6 +29,10 @@ GLOBAL_LIST_INIT(list_symptoms, subtypesof(/datum/symptom)) var/neutered = FALSE var/stopped = FALSE // Used for Viral Suspended Animaton, stops a symptom but doesn't neuter it. + var/list/prefixes = list() + var/list/bodies = list() + var/list/suffixes = list() + /datum/symptom/New() var/list/S = GLOB.list_symptoms for(var/i = 1; i <= length(S); i++) @@ -53,6 +57,9 @@ GLOBAL_LIST_INIT(list_symptoms, subtypesof(/datum/symptom)) /datum/symptom/proc/severityset(datum/disease/advance/A) severity = initial(severity) + prefixes = initial(prefixes) + bodies = initial(bodies) + suffixes = initial(suffixes) // Called when the advance disease is going to be deleted or when the advance disease stops processing. /datum/symptom/proc/End(datum/disease/advance/A) diff --git a/code/datums/diseases/advance/symptoms/viral.dm b/code/datums/diseases/advance/symptoms/viral.dm index d8ad1fb2c3..bbd723f3ee 100644 --- a/code/datums/diseases/advance/symptoms/viral.dm +++ b/code/datums/diseases/advance/symptoms/viral.dm @@ -23,6 +23,8 @@ BONUS level = 4 severity = 0 + prefixes = list("Chronic ") + /* ////////////////////////////////////// Viral evolution @@ -47,6 +49,8 @@ BONUS transmission = 3 level = 4 + prefixes = list("Unstable ") + /datum/symptom/viralpower name = "Viral Power Multiplier" desc = "The vrus has more powerful symptoms. May have unpredictable effects." @@ -116,6 +120,8 @@ BONUS var/time_to_cure + prefixes = list("Spontaneous ") + /datum/symptom/viralreverse/Activate(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index 62da7032a8..5dfa8bf23e 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -35,6 +35,10 @@ Bonus "Stealth 4" = "The symptom remains hidden until active." ) + prefixes = list("Eye ") + bodies = list("Blind") + suffixes = list(" Blindness") + /datum/symptom/visionloss/severityset(datum/disease/advance/A) . = ..() if(A.resistance >= 12) diff --git a/code/datums/diseases/advance/symptoms/vomit.dm b/code/datums/diseases/advance/symptoms/vomit.dm index 99dc0332bd..181d2c0b83 100644 --- a/code/datums/diseases/advance/symptoms/vomit.dm +++ b/code/datums/diseases/advance/symptoms/vomit.dm @@ -37,6 +37,10 @@ Bonus "Stealth 4" = "The symptom remans hidden until active." ) + prefixes = list("Digestive ") + bodies = list("Vomit") + suffixes = list(" Emission") + /datum/symptom/vomit/Start(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/advance/symptoms/weakness.dm b/code/datums/diseases/advance/symptoms/weakness.dm index 219eff1481..3b436c6920 100644 --- a/code/datums/diseases/advance/symptoms/weakness.dm +++ b/code/datums/diseases/advance/symptoms/weakness.dm @@ -26,6 +26,8 @@ Bonus level = 3 severity = 3 + prefixes = list("Weakening ", "Weak's ") + /datum/symptom/weakness/Activate(datum/disease/advance/A) ..() if(prob(SYMPTOM_ACTIVATION_PROB)) diff --git a/code/datums/diseases/advance/symptoms/weight.dm b/code/datums/diseases/advance/symptoms/weight.dm index 88eba6323b..94ee0b6a69 100644 --- a/code/datums/diseases/advance/symptoms/weight.dm +++ b/code/datums/diseases/advance/symptoms/weight.dm @@ -35,6 +35,8 @@ Bonus "Stealth 2" = "The symptom is less noticeable, and does not cause starvation." ) + prefixes = list("Hungry ") + /datum/symptom/weight_loss/severityset(datum/disease/advance/A) . = ..() if(A.stealth >= 2) diff --git a/code/datums/diseases/advance/symptoms/youth.dm b/code/datums/diseases/advance/symptoms/youth.dm index 6597a0ad37..66b176c91a 100644 --- a/code/datums/diseases/advance/symptoms/youth.dm +++ b/code/datums/diseases/advance/symptoms/youth.dm @@ -11,6 +11,9 @@ symptom_delay_min = 25 SECONDS symptom_delay_max = 50 SECONDS + prefixes = list("Eternal ") + bodies = list("Immortal", "Elixir") + /datum/symptom/youth/Activate(datum/disease/advance/A) if(!..()) return diff --git a/code/datums/diseases/anxiety.dm b/code/datums/diseases/anxiety.dm index 19afe86924..be986e4a5f 100644 --- a/code/datums/diseases/anxiety.dm +++ b/code/datums/diseases/anxiety.dm @@ -1,5 +1,6 @@ /datum/disease/anxiety name = "Severe Anxiety" + medical_name = "Lepidopteric Hyperemesis" form = "Infection" max_stages = 4 spread_text = "On contact" diff --git a/code/datums/diseases/appendicitis.dm b/code/datums/diseases/appendicitis.dm index 66e467e961..1e6b329de0 100644 --- a/code/datums/diseases/appendicitis.dm +++ b/code/datums/diseases/appendicitis.dm @@ -1,6 +1,7 @@ /datum/disease/appendicitis form = "Condition" name = "Appendicitis" + medical_name = "Appendicitis" max_stages = 3 spread_text = "Non-contagious" disease_flags = CAN_CARRY|CAN_RESIST|CAN_NOT_POPULATE diff --git a/code/datums/diseases/beesease.dm b/code/datums/diseases/beesease.dm index 716bd3eac1..9764e12a24 100644 --- a/code/datums/diseases/beesease.dm +++ b/code/datums/diseases/beesease.dm @@ -1,5 +1,6 @@ /datum/disease/beesease name = "Beesease" + medical_name = "Apidaemia" form = "Infection" max_stages = 4 spread_text = "On contact" diff --git a/code/datums/diseases/brainrot.dm b/code/datums/diseases/brainrot.dm index 452b4cb238..13bc909209 100644 --- a/code/datums/diseases/brainrot.dm +++ b/code/datums/diseases/brainrot.dm @@ -1,5 +1,6 @@ /datum/disease/brainrot name = "Brainrot" + medical_name = "Encephalonecrosis" max_stages = 4 spread_text = "On contact" spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_FLUIDS | DISEASE_SPREAD_CONTACT @@ -8,7 +9,7 @@ agent = "Cryptococcus Cosmosis" viable_mobtypes = list(/mob/living/carbon/human) cure_chance = 15 - desc = "This disease destroys the braincells, causing brain fever, brain necrosis and general intoxication." + desc = "Destroys the braincells, causing brain fever, brain necrosis and general intoxication." required_organs = list(/obj/item/organ/internal/brain) danger = DISEASE_HARMFUL diff --git a/code/datums/diseases/choreomania.dm b/code/datums/diseases/choreomania.dm index 835b229680..ad6de99541 100644 --- a/code/datums/diseases/choreomania.dm +++ b/code/datums/diseases/choreomania.dm @@ -1,5 +1,6 @@ /datum/disease/choreomania name = "Choreomania" + medical_name = "Choreatic Hyperkinesia" max_stages = 3 spread_text = "Airborne" spread_flags = DISEASE_SPREAD_AIRBORNE | DISEASE_SPREAD_CONTACT | DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_FLUIDS diff --git a/code/datums/diseases/cold.dm b/code/datums/diseases/cold.dm index f88ba69bc2..1f4c3216af 100644 --- a/code/datums/diseases/cold.dm +++ b/code/datums/diseases/cold.dm @@ -1,5 +1,6 @@ /datum/disease/cold name = "The Cold" + medical_name = "Common Cold" max_stages = 3 spread_text = "Airborne" spread_flags = DISEASE_SPREAD_AIRBORNE diff --git a/code/datums/diseases/fake_gbs.dm b/code/datums/diseases/fake_gbs.dm index 3f8b49bd77..9be83bc691 100644 --- a/code/datums/diseases/fake_gbs.dm +++ b/code/datums/diseases/fake_gbs.dm @@ -1,5 +1,6 @@ /datum/disease/fake_gbs name = "GBS" + medical_name = "Neutered Guillain-Barré Syndrome" max_stages = 5 spread_text = "On contact" spread_flags = DISEASE_SPREAD_CONTACT | DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_FLUIDS @@ -7,7 +8,7 @@ cures = list(REAGENT_ID_ADRANOL, REAGENT_ID_SULFUR) agent = "Gravitokinetic Bipotential SADS-" viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/human/monkey) - desc = "if left untreated death will occur." + desc = "If left untreated death will occur." danger = DISEASE_BIOHAZARD // Mimics real GBS /datum/disease/fake_gbs/stage_act() diff --git a/code/datums/diseases/flu.dm b/code/datums/diseases/flu.dm index da6b703338..5aa39dbe92 100644 --- a/code/datums/diseases/flu.dm +++ b/code/datums/diseases/flu.dm @@ -1,5 +1,6 @@ /datum/disease/flu name = "The Flu" + medical_name = "Influenza" max_stages = 3 spread_text = "Airborne" cure_text = REAGENT_SPACEACILLIN diff --git a/code/datums/diseases/food_poisoning.dm b/code/datums/diseases/food_poisoning.dm index 529a5e07dc..a3805f8d2e 100644 --- a/code/datums/diseases/food_poisoning.dm +++ b/code/datums/diseases/food_poisoning.dm @@ -1,5 +1,6 @@ /datum/disease/food_poisoning name = "Food Poisoning" + medical_name = "Gastroenteritis" max_stages = 3 stage_prob = 5 spread_text = "Non-Contagious" diff --git a/code/datums/diseases/gbs.dm b/code/datums/diseases/gbs.dm index cd97f6fac8..b024aa919b 100644 --- a/code/datums/diseases/gbs.dm +++ b/code/datums/diseases/gbs.dm @@ -1,5 +1,7 @@ /datum/disease/gbs name = "GBS" + medical_name = "Guillain-Barré Syndrome" + desc = "If left untreated death will occur." max_stages = 5 spread_text = "On contact" spread_flags = DISEASE_SPREAD_CONTACT | DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_FLUIDS @@ -40,6 +42,8 @@ /datum/disease/gbs/curable name = "Non-Contagious GBS" + medical_name = "Non-Contagious Guillain-Barré Syndrome" + desc = "If left untreated death will occur." stage_prob = 5 spread_text = "Non-contagious" spread_flags = DISEASE_SPREAD_NON_CONTAGIOUS diff --git a/code/datums/diseases/lycancoughy.dm b/code/datums/diseases/lycancoughy.dm index 9172db1e11..e18f48378d 100644 --- a/code/datums/diseases/lycancoughy.dm +++ b/code/datums/diseases/lycancoughy.dm @@ -1,5 +1,6 @@ /datum/disease/lycan name = "Lycancoughy" + medical_name = "Lycanthropic Hyperemesis" form = "Infection" max_stages = 4 spread_text = "On contact" diff --git a/code/datums/diseases/magnitis.dm b/code/datums/diseases/magnitis.dm index e0a80afe1d..ecb2111664 100644 --- a/code/datums/diseases/magnitis.dm +++ b/code/datums/diseases/magnitis.dm @@ -1,5 +1,6 @@ /datum/disease/magnitis name = "Magnitis" + medical_name = "Acquired Magnetotaxis Disorder" max_stages = 4 spread_text = "Airbone" cure_text = REAGENT_IRON diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index 7c6408febf..c4b596cc0e 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -270,7 +270,7 @@ var/global/list/image/splatter_cache=list() //This version should be used for admin spawns and pre-mapped virus vectors (e.g. in PoIs), this version does not dry /obj/effect/decal/cleanable/mucus/mapped/Initialize(mapload) . = ..() - viruses |= new /datum/disease/advance + viruses |= new /datum/disease/advance/random(rand(3, 6), 9, 4, infected = src) /obj/effect/decal/cleanable/mucus/mapped/Destroy() viruses.Cut() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm index d0649cf76b..794de7c6fe 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm @@ -98,7 +98,7 @@ if(prob(40)) LAZYINITLIST(rat_diseases) - rat_diseases += new /datum/disease/advance/random(rand(1, 5), 9, 1) + rat_diseases += new /datum/disease/advance/random(rand(1, 5), 9, 1, infected = src) /mob/living/simple_mob/animal/passive/mouse/extrapolator_act(mob/living/user, obj/item/extrapolator/extrapolator, dry_run = FALSE) . = ..() @@ -246,7 +246,7 @@ ..() name = initial(name) desc = initial(desc) - rat_diseases += new /datum/disease/advance/random(2, 2, 1) + rat_diseases += new /datum/disease/advance/random(2, 2, 1, infected = src) /mob/living/simple_mob/animal/passive/mouse/white/virology/Crossed(atom/movable/AM) . = ..() diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 59c17ae82b..5e0ce04ca2 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -503,7 +503,7 @@ /obj/item/reagent_containers/syringe/old/Initialize(mapload) . = ..() if(prob(75)) - var/datum/disease/advance/new_disease = new /datum/disease/advance/random(rand(1, 3), rand(7, 9), 2) + var/datum/disease/advance/new_disease = new /datum/disease/advance/random(rand(1, 3), rand(7, 9), 2, infected = src) src.viruses += new_disease #undef SYRINGE_DRAW