From ec3502af38039244bf4356153ba4e0850141a884 Mon Sep 17 00:00:00 2001 From: Tigercat2000 Date: Wed, 30 Mar 2016 18:12:03 -0700 Subject: [PATCH] Fix the last of fox's noted bugs, runtime prevention --- code/datums/diseases/beesease.dm | 2 +- code/game/machinery/computer/medical.dm | 20 +++++++++++++------ code/modules/reagents/Chemistry-Holder.dm | 1 + .../oldchem/reagents/reagents_water.dm | 4 ++-- code/modules/surgery/organs/blood.dm | 4 +++- 5 files changed, 21 insertions(+), 10 deletions(-) diff --git a/code/datums/diseases/beesease.dm b/code/datums/diseases/beesease.dm index 3ca2f86503a..8e7331cbab8 100644 --- a/code/datums/diseases/beesease.dm +++ b/code/datums/diseases/beesease.dm @@ -14,7 +14,7 @@ /datum/disease/beesease/stage_act() ..() switch(stage) - if(2) //also changes say, see say.dm + if(2) //also changes say, see say.dm // no it doesn't, that's horrifyingly snowflakey if(prob(2)) affected_mob << "You taste honey in your mouth." if(3) diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 9659b28e970..7fa351e72be 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -200,12 +200,20 @@ src.active2 = null if(href_list["vir"]) - var/datum/data/record/v = locate(href_list["vir"]) - src.temp = "
GNAv2 based virus lifeform V-[v.fields["id"]]
" - src.temp += "
Name: [v.fields["name"]]" - src.temp += "
Antigen: [v.fields["antigen"]]" - src.temp += "
Spread: [v.fields["spread type"]] " - src.temp += "
Details:
[v.fields["description"]]" + var/type = href_list["vir"] + var/datum/disease/Dis = new type(0) + var/AfS = "" + for(var/mob/M in Dis.viable_mobtypes) + AfS += " [initial(M.name)];" + src.temp = {"Name: [Dis.name] +
Number of stages: [Dis.max_stages] +
Spread: [Dis.spread_text] Transmission +
Possible Cure: [(Dis.cure_text||"none")] +
Affected Lifeforms:[AfS] +
+
Notes: [Dis.desc] +
+
Severity: [Dis.severity]"} if (href_list["del_all"]) src.temp = text("Are you sure you wish to delete all records?
\n\tYes
\n\tNo
", src, src) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 5da35567af9..b1fb226a209 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -447,6 +447,7 @@ var/const/INGEST = 2 R.volume += amount update_total() my_atom.on_reagent_change() + R.on_merge(data) handle_reactions() return 0 diff --git a/code/modules/reagents/oldchem/reagents/reagents_water.dm b/code/modules/reagents/oldchem/reagents/reagents_water.dm index 24cad5d5e64..df9cdd6ade6 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_water.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_water.dm @@ -190,8 +190,8 @@ preserve += D data["viruses"] = preserve - if(mix_data["blood_colour"]) - color = mix_data["blood_colour"] + if(mix_data["blood_colour"]) + color = mix_data["blood_colour"] return 1 /datum/reagent/blood/on_update(var/atom/A) diff --git a/code/modules/surgery/organs/blood.dm b/code/modules/surgery/organs/blood.dm index c8787097bb3..35c38d1b99b 100644 --- a/code/modules/surgery/organs/blood.dm +++ b/code/modules/surgery/organs/blood.dm @@ -213,8 +213,10 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 B.data["donor"] = src B.data["viruses"] = list() - for(var/datum/disease/D in src.viruses) + for(var/datum/disease/D in viruses) B.data["viruses"] += D.Copy() + if(resistances && resistances.len) + B.data["resistances"] = resistances.Copy() B.data["blood_DNA"] = copytext(src.dna.unique_enzymes,1,0) B.data["blood_type"] = copytext(src.dna.b_type,1,0)