From 01c8b11a9748ba0edf10deb1beb11fe7f1fd73d6 Mon Sep 17 00:00:00 2001 From: "vageyenaman@gmail.com" Date: Thu, 14 Jul 2011 22:55:39 +0000 Subject: [PATCH] Fixes and small modifications mostly. Nothing too important. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1852 316c924e-a436-60f5-8080-3fe189b3f50e --- code/WorkInProgress/Chemistry-Machinery.dm | 8 +++++--- code/datums/disease.dm | 18 ++++++++---------- code/game/objects/devices/PDA/PDA.dm | 3 ++- code/game/objects/devices/scanners.dm | 3 ++- code/game/objects/items/weapons/guns_new.dm | 4 ++-- code/modules/mob/living/silicon/pai/hud.dm | 4 +++- 6 files changed, 22 insertions(+), 18 deletions(-) diff --git a/code/WorkInProgress/Chemistry-Machinery.dm b/code/WorkInProgress/Chemistry-Machinery.dm index 6bc4136366..c846e8109f 100644 --- a/code/WorkInProgress/Chemistry-Machinery.dm +++ b/code/WorkInProgress/Chemistry-Machinery.dm @@ -422,10 +422,12 @@ var/list/vir = Blood.data["viruses"] if(vir.len) for(var/datum/disease/D in Blood.data["viruses"]) + if(!D.hidden[PANDEMIC]) - dat += "Disease Agent: [D?"[D.agent] - Create virus culture bottle":"none"]
" - dat += "Common name: [(D.name||"none")]
" - dat += "Possible cure: [(D.cure||"none")]

" + dat += "Disease Agent: [D?"[D.agent] - Create virus culture bottle":"none"]
" + dat += "Common name: [(D.name||"none")]
" + dat += "Description: [(D.desc||"none")]
" + dat += "Possible cure: [(D.cure||"none")]

" dat += "Contains antibodies to: " if(Blood.data["resistances"]) diff --git a/code/datums/disease.dm b/code/datums/disease.dm index 14ff1abfdc..3ba5a107d1 100644 --- a/code/datums/disease.dm +++ b/code/datums/disease.dm @@ -6,6 +6,9 @@ #define AIRBORNE 4 #define BLOOD 5 +#define SCANNER 1 +#define PANDEMIC 2 + /* IMPORTANT NOTE: Please delete the diseases by using cure() proc or del() instruction. @@ -38,6 +41,10 @@ to null does not delete the object itself. Thank you. var/desc = null//description. Leave it null and this disease won't show in med records. var/severity = null//severity descr var/longevity = 250//time in "ticks" the virus stays in inanimate object (blood stains, corpses, etc). In syringes, bottles and beakers it stays infinitely. + var/list/hidden = list(0, 0) + // if hidden[1] is true, then virus is hidden from medical scanners + // if hidden[2] is true, then virus is hidden from PANDEMIC machine + /datum/disease/proc/stage_act() var/cure_present = has_cure() @@ -274,7 +281,7 @@ to null does not delete the object itself. Thank you. /datum/disease/proc/spread(var/atom/source=null) //world << "Disease [src] proc spread was called from holder [source]" - if(spread_type == SPECIAL)//does not spread + if(spread_type == SPECIAL || spread_type == NON_CONTAGIOUS)//does not spread return if(stage < contagious_period) //the disease is not contagious at this stage @@ -318,15 +325,6 @@ to null does not delete the object itself. Thank you. affected_mob = null if(!affected_mob) //the virus is in inanimate obj // world << "[src] longevity = [longevity]" - /* - if(holder) - - // spreads the love. Why hasn't anyone coded this in yet?!?!?!? - for(var/mob/living/M in view(1, holder)) - if(M.stat != 2) - if(prob(90)) - M.contract_disease(src) - */ if(prob(70)) if(--longevity<=0) diff --git a/code/game/objects/devices/PDA/PDA.dm b/code/game/objects/devices/PDA/PDA.dm index b07d46829a..8363ab85a6 100644 --- a/code/game/objects/devices/PDA/PDA.dm +++ b/code/game/objects/devices/PDA/PDA.dm @@ -691,7 +691,8 @@ user.show_message("\blue \t Key: Suffocation/Toxin/Burns/Brute", 1) user.show_message("\blue \t Body Temperature: [C.bodytemperature-T0C]°C ([C.bodytemperature*1.8-459.67]°F)", 1) for(var/datum/disease/D in C.viruses) - user.show_message(text("\red Warning Virus Detected.\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]")) + if(!D.hidden[SCANNER]) + user.show_message(text("\red Warning Virus Detected.\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]")) if(2) if (!istype(C:dna, /datum/dna) || !isnull(C:gloves)) diff --git a/code/game/objects/devices/scanners.dm b/code/game/objects/devices/scanners.dm index 93ab3e7443..052f4cbad2 100644 --- a/code/game/objects/devices/scanners.dm +++ b/code/game/objects/devices/scanners.dm @@ -174,7 +174,8 @@ MASS SPECTROMETER if (M.cloneloss) user.show_message(text("\red Subject appears to have been imperfectly cloned."), 1) for(var/datum/disease/D in M.viruses) - user.show_message(text("\red Warning: Virus Detected\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]")) + if(!D.hidden[SCANNER]) + user.show_message(text("\red Warning: Virus Detected\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]")) if (M.reagents && M.reagents.get_reagent_amount("inaprovaline")) user.show_message(text("\blue Bloodstream Analysis located [M.reagents:get_reagent_amount("inaprovaline")] units of rejuvenation chemicals."), 1) if (M.brainloss >= 100 || istype(M, /mob/living/carbon/human) && M:brain_op_stage == 4.0) diff --git a/code/game/objects/items/weapons/guns_new.dm b/code/game/objects/items/weapons/guns_new.dm index 32e287d348..14a346e48e 100644 --- a/code/game/objects/items/weapons/guns_new.dm +++ b/code/game/objects/items/weapons/guns_new.dm @@ -115,7 +115,7 @@ var/const/PROJECTILE_DART = 8 if(istype(src, /obj/item/projectile/freeze)) var/obj/item/projectile/freeze/F = src F.Freeze(A) - if(istype(src, /obj/item/projectile/plasma)) + else if(istype(src, /obj/item/projectile/plasma)) var/obj/item/projectile/plasma/P = src P.Heat(A) else @@ -864,7 +864,7 @@ var/const/PROJECTILE_DART = 8 name = "plasma gun" icon_state = "plasmagun" fire_sound = 'pulse3.ogg' - desc = "A gun that fires super heated plasma at targets, thus increasing their overal body temparature and also harming them." + desc = "A gun that fires super heated plasma at targets, thus increasing their overall body temparature and also harming them." var/temperature = T20C var/current_temperature = T20C charge_cost = 100 diff --git a/code/modules/mob/living/silicon/pai/hud.dm b/code/modules/mob/living/silicon/pai/hud.dm index 68c7d593bf..6a038e4677 100644 --- a/code/modules/mob/living/silicon/pai/hud.dm +++ b/code/modules/mob/living/silicon/pai/hud.dm @@ -36,7 +36,9 @@ for(var/mob/living/carbon/human/patient in view(T)) var/foundVirus = 0 - for(var/datum/disease/D in patient.viruses) foundVirus = 1 + for(var/datum/disease/D in patient.viruses) + if(!D.hidden[SCANNER]) + foundVirus = 1 client.images += image(tempHud,patient,"hud[RoundHealth(patient.health)]") if(patient.stat == 2)