From 3849a4a42cc4e30743aba280a383c78d58ea3460 Mon Sep 17 00:00:00 2001
From: 81Denton <32391752+81Denton@users.noreply.github.com>
Date: Mon, 20 Jan 2020 17:44:38 +0100
Subject: [PATCH] Replica pods can show the blood DNA of injected samples
(#48755)
* Replica pods notify ghosts, can show the blood DNA of injected samples
* basically im monky
* h
* removes garbo, adds hints that "blood DNA" is just the UE
---
code/game/machinery/computer/medical.dm | 2 +-
code/modules/detectivework/scanner.dm | 2 +-
code/modules/hydroponics/grown/replicapod.dm | 32 ++++++++++---------
.../mob/living/silicon/pai/software.dm | 2 +-
4 files changed, 20 insertions(+), 18 deletions(-)
diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm
index 3f5c8d6c978..eceb1cb980a 100644
--- a/code/game/machinery/computer/medical.dm
+++ b/code/game/machinery/computer/medical.dm
@@ -55,7 +55,7 @@
| Name |
ID |
-Fingerprints (F) | DNA (D) |
+Fingerprints (F) | DNA UE (D) |
Blood Type |
Physical Status |
Mental Status |
diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm
index 55699185dfe..14047cbd9cc 100644
--- a/code/modules/detectivework/scanner.dm
+++ b/code/modules/detectivework/scanner.dm
@@ -138,7 +138,7 @@
add_log("Blood:")
found_something = 1
for(var/B in blood)
- add_log("Type: [blood[B]] DNA: [B]")
+ add_log("Type: [blood[B]] DNA (UE): [B]")
//Fibers
if(length(fibers))
diff --git a/code/modules/hydroponics/grown/replicapod.dm b/code/modules/hydroponics/grown/replicapod.dm
index 41907e7bea9..b1581c9dcee 100644
--- a/code/modules/hydroponics/grown/replicapod.dm
+++ b/code/modules/hydroponics/grown/replicapod.dm
@@ -14,15 +14,16 @@
yield = 1 //seeds if there isn't a dna inside
potency = 30
var/volume = 5
- var/ckey = null
- var/realName = null
- var/datum/mind/mind = null
- var/blood_gender = null
- var/blood_type = null
- var/list/features = null
- var/factions = null
- var/list/quirks = null
- var/contains_sample = 0
+ var/ckey
+ var/realName
+ var/datum/mind/mind
+ var/blood_gender
+ var/blood_type
+ var/list/features
+ var/factions
+ var/list/quirks
+ var/sampleDNA
+ var/contains_sample = FALSE
/obj/item/seeds/replicapod/Initialize()
. = ..()
@@ -42,6 +43,7 @@
features = B.data["features"]
factions = B.data["factions"]
quirks = B.data["quirks"]
+ sampleDNA = B.data["blood_DNA"]
contains_sample = TRUE
visible_message("The [src] is injected with a fresh blood sample.")
log_cloning("[key_name(mind)]'s cloning record was added to [src] at [AREACOORD(src)].")
@@ -56,18 +58,18 @@
blood_type = null
features = null
factions = null
+ sampleDNA = null
contains_sample = FALSE
/obj/item/seeds/replicapod/get_analyzer_text()
var/text = ..()
if(contains_sample)
- text += "\n It contains a blood sample!"
+ text += "\n It contains a blood sample with blood DNA (UE) \"sampleDNA\"." //blood DNA (UE) shows in medical records and is readable by forensics scanners
return text
-
/obj/item/seeds/replicapod/harvest(mob/user) //now that one is fun -- Urist
var/obj/machinery/hydroponics/parent = loc
- var/make_podman = 0
+ var/make_podman = FALSE
var/ckey_holder = null
var/list/result = list()
if(CONFIG_GET(flag/revival_pod_plants))
@@ -76,11 +78,11 @@
if(isobserver(M))
var/mob/dead/observer/O = M
if(O.ckey == ckey && O.can_reenter_corpse)
- make_podman = 1
+ make_podman = TRUE
break
else
if(M.ckey == ckey && M.stat == DEAD && !M.suiciding)
- make_podman = 1
+ make_podman = TRUE
if(isliving(M))
var/mob/living/L = M
make_podman = !L.hellbound
@@ -92,7 +94,7 @@
var/mob/dead/observer/O = M
if(!O.can_reenter_corpse)
break
- make_podman = 1
+ make_podman = TRUE
if(isliving(M))
var/mob/living/L = M
make_podman = !L.hellbound
diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm
index e3d4195678e..ea2682f52c4 100644
--- a/code/modules/mob/living/silicon/pai/software.dm
+++ b/code/modules/mob/living/silicon/pai/software.dm
@@ -476,7 +476,7 @@
else
. += "Requested medical record not found.
"
if(medicalActive2 in GLOB.data_core.medical)
- . += "
\nMedical Data
\nBlood Type: [medicalActive2.fields["blood_type"]]
\nDNA: [medicalActive2.fields["b_dna"]]
\n
\nMinor Disabilities: [medicalActive2.fields["mi_dis"]]
\nDetails: [medicalActive2.fields["mi_dis_d"]]
\n
\nMajor Disabilities: [medicalActive2.fields["ma_dis"]]
\nDetails: [medicalActive2.fields["ma_dis_d"]]
\n
\nAllergies: [medicalActive2.fields["alg"]]
\nDetails: [medicalActive2.fields["alg_d"]]
\n
\nCurrent Diseases: [medicalActive2.fields["cdi"]] (per disease info placed in log/comment section)
\nDetails: [medicalActive2.fields["cdi_d"]]
\n
\nImportant Notes:
\n\t[medicalActive2.fields["notes"]]
\n
\nComments/Log
"
+ . += "
\nMedical Data
\nBlood Type: [medicalActive2.fields["blood_type"]]
\nDNA (UE): [medicalActive2.fields["b_dna"]]
\n
\nMinor Disabilities: [medicalActive2.fields["mi_dis"]]
\nDetails: [medicalActive2.fields["mi_dis_d"]]
\n
\nMajor Disabilities: [medicalActive2.fields["ma_dis"]]
\nDetails: [medicalActive2.fields["ma_dis_d"]]
\n
\nAllergies: [medicalActive2.fields["alg"]]
\nDetails: [medicalActive2.fields["alg_d"]]
\n
\nCurrent Diseases: [medicalActive2.fields["cdi"]] (per disease info placed in log/comment section)
\nDetails: [medicalActive2.fields["cdi_d"]]
\n
\nImportant Notes:
\n\t[medicalActive2.fields["notes"]]
\n
\nComments/Log
"
else
. += "Requested medical record not found.
"
. += "
\nBack
"