From abf2e8af69e14df6b4ed5a9bd3c21cd7bf17c338 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Mon, 6 Mar 2017 14:22:11 -0500 Subject: [PATCH 1/2] Resleeving tweaks, fix compile warning Resleeving console now lists people in alphabetical order, and removes bodies when the person cryos (as long as they were really in that body, you can't cryo someone's printed body w/o resleeving and have it remove them) --- code/game/machinery/cryopod.dm | 10 +++++++--- .../integrated_electronics/subtypes/reagents.dm | 2 +- code/modules/resleeving/infocore.dm | 7 +++++++ 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index e232f8a24d6..5068c3ee56b 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -440,9 +440,13 @@ qdel(O) //VOREStation Edit - Resleeving. - if(to_despawn.mind && (to_despawn.mind.name in transcore.backed_up)) - var/datum/transhuman/mind_record/MR = transcore.backed_up[to_despawn.mind.name] - transcore.stop_backup(MR) + if(to_despawn.mind) + if(to_despawn.mind.name in transcore.backed_up) + var/datum/transhuman/mind_record/MR = transcore.backed_up[to_despawn.mind.name] + transcore.stop_backup(MR) + if(to_despawn.mind.name in transcore.body_scans) //This uses mind names to avoid people cryo'ing a printed body to delete body scans. + var/datum/transhuman/body_record/BR = transcore.body_scans[to_despawn.mind.name] + transcore.remove_body(BR) //VOREStation Edit End - Resleeving. //Handle job slot/tater cleanup. diff --git a/code/modules/integrated_electronics/subtypes/reagents.dm b/code/modules/integrated_electronics/subtypes/reagents.dm index 62cf9819346..e4bd5c15a38 100644 --- a/code/modules/integrated_electronics/subtypes/reagents.dm +++ b/code/modules/integrated_electronics/subtypes/reagents.dm @@ -73,7 +73,7 @@ return var/contained = reagents.get_reagents() var/trans = reagents.trans_to_mob(target, inject_amount(), CHEM_BLOOD) - //message_admins("[src] injected \the [AM] with [trans]u of [contained].") //VOREStation Edit - I don't care THAT much. + log_debug("[src] injected \the [AM] with [trans]u of [contained].") //VOREStation Edit - I don't care THAT much. to_chat(AM, "You feel a tiny prick!") visible_message("[src] injects [AM]!") else diff --git a/code/modules/resleeving/infocore.dm b/code/modules/resleeving/infocore.dm index 396dfbd4b9f..e764734a897 100644 --- a/code/modules/resleeving/infocore.dm +++ b/code/modules/resleeving/infocore.dm @@ -64,6 +64,7 @@ var/datum/transhuman/infocore/transcore = new/datum/transhuman/infocore /datum/transhuman/infocore/proc/add_backup(var/datum/transhuman/mind_record/MR) ASSERT(MR) backed_up[MR.mindname] = MR + backed_up = sortAssoc(backed_up) log_debug("Added [MR.mindname] to transcore DB.") /datum/transhuman/infocore/proc/stop_backup(var/datum/transhuman/mind_record/MR) @@ -76,8 +77,14 @@ var/datum/transhuman/infocore/transcore = new/datum/transhuman/infocore /datum/transhuman/infocore/proc/add_body(var/datum/transhuman/body_record/BR) ASSERT(BR) body_scans[BR.mydna.name] = BR + body_scans = sortAssoc(body_scans) log_debug("Added [BR.mydna.name] to transcore body DB.") +/datum/transhuman/infocore/proc/remove_body(var/datum/transhuman/body_record/BR) + ASSERT(BR) + body_scans.Remove("[BR.mydna.name]") + log_debug("Removed [BR.mydna.name] from transcore body DB.") + /datum/transhuman/infocore/proc/core_dump(var/obj/item/weapon/disk/transcore/disk) ASSERT(disk) var/obj/item/device/radio/headset/a = new /obj/item/device/radio/headset/heads/captain(null) From 233dca23fdf0cec75dfe08ecfa1cae59c798fe23 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Mon, 6 Mar 2017 15:09:55 -0500 Subject: [PATCH 2/2] Display OOC notes on mind and body records --- code/modules/resleeving/computers.dm | 12 ++++++++-- nano/templates/sleever.tmpl | 33 +++++++++++++++++++++++++++- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/code/modules/resleeving/computers.dm b/code/modules/resleeving/computers.dm index 8516075afbc..17c9154eac4 100644 --- a/code/modules/resleeving/computers.dm +++ b/code/modules/resleeving/computers.dm @@ -165,7 +165,8 @@ "gender" = active_br.bodygender, \ "synthetic" = active_br.synthetic ? "Yes" : "No", \ "locked" = active_br.locked ? "Low" : "High", \ - "cando" = can_grow_active) + "cando" = can_grow_active, + "booc" = active_br.body_oocnotes) else data["activeRecord"] = null @@ -175,7 +176,8 @@ can_sleeve_current = 0 data["activeMindRecord"] = list("charname" = active_mr.mindname, \ "obviously_dead" = active_mr.dead_state == MR_DEAD ? "Past-due" : "Current", \ - "cando" = can_sleeve_current) + "cando" = can_sleeve_current, + "mooc" = active_mr.mind_oocnotes) else data["activeMindRecord"] = null @@ -215,6 +217,12 @@ active_mr = null temp = "ERROR: Record missing." + else if (href_list["boocnotes"]) + menu = 6 + + else if (href_list["moocnotes"]) + menu = 7 + else if (href_list["refresh"]) updateUsrDialog() diff --git a/nano/templates/sleever.tmpl b/nano/templates/sleever.tmpl index 58f99cbacd9..6e6e9699bbd 100644 --- a/nano/templates/sleever.tmpl +++ b/nano/templates/sleever.tmpl @@ -108,6 +108,10 @@
Synthetic:
{{:data.activeBodyRecord.synthetic}}
+
+
OOC Notes:
+
{{:helper.link('View', null, {'boocnotes' : data.activeBodyRecord.booc}, data.activeBodyRecord.booc ? null : 'linkOff')}}
+
{{:helper.link('Create', 'play', {'create' : data.activeBodyRecord.real_name}, data.activeBodyRecord.cando ? null : 'linkOff')}} @@ -126,13 +130,40 @@
{{:data.activeMindRecord.charname}}
-
Backup status:
+
Backup Status:
{{:data.activeMindRecord.obviously_dead}}
+
+
OOC Notes:
+
{{:helper.link('View', null, {'moocnotes' : data.activeMindRecord.mooc}, data.activeMindRecord.mooc ? null : 'linkOff')}}
+
{{:helper.link('Sleeve', 'play', {'sleeve' : data.activeMindRecord.charname}, data.activeMindRecord.cando ? null : 'linkOff')}} {{else}}
ERROR: Record not found.
{{/if}} + + + {{else data.menu == 6}} +

Body OOC Notes (This is OOC!)

+
{{:helper.link('Back', 'arrowreturn-1-w', {'menu' : 4})}}
+ {{if data.activeBodyRecord}} +
Notes:
+
{{:data.activeBodyRecord.booc}}
+ {{else}} +
ERROR: Record not found.
+ {{/if}} + + + {{else data.menu == 7}} +

Mind OOC Notes (This is OOC!)

+
{{:helper.link('Back', 'arrowreturn-1-w', {'menu' : 5})}}
+ {{if data.activeMindRecord}} +
Notes:
+
{{:data.activeMindRecord.mooc}}
+ {{else}} +
ERROR: Record not found.
+ {{/if}} + {{/if}} {{/if}} \ No newline at end of file