From 14621b5cb129ab330ce49599540df14d84c89867 Mon Sep 17 00:00:00 2001 From: ShadowLarkens Date: Wed, 2 Oct 2024 05:00:34 -0700 Subject: [PATCH 1/5] Give the resleeving console a nice little facelift --- code/modules/resleeving/computers.dm | 247 ++++++++++-------- ...alBodyOverride.tsx => BodyRecordModal.tsx} | 42 +-- ...alBodyOverride.tsx => MindRecordModal.tsx} | 36 +-- ...exts.tsx => ResleevingConsoleCoreDump.tsx} | 16 +- .../ResleevingConsoleElements.tsx | 42 +-- .../ResleevingConsolePodGrowers.tsx | 6 +- .../ResleevingConsolePodSleevers.tsx | 7 +- .../ResleevingConsolePodSpods.tsx | 6 +- .../ResleevingConsoleRecords.tsx | 5 +- .../ResleevingConsoleStatus.tsx | 5 +- .../interfaces/ResleevingConsole/index.tsx | 58 ++-- .../interfaces/ResleevingConsole/types.ts | 41 ++- .../styles/interfaces/ResleevingConsole.scss | 15 ++ tgui/packages/tgui/styles/main.scss | 1 + 14 files changed, 295 insertions(+), 232 deletions(-) rename tgui/packages/tgui/interfaces/ResleevingConsole/{viewBodyRecordModalBodyOverride.tsx => BodyRecordModal.tsx} (55%) rename tgui/packages/tgui/interfaces/ResleevingConsole/{viewMindRecordModalBodyOverride.tsx => MindRecordModal.tsx} (57%) rename tgui/packages/tgui/interfaces/ResleevingConsole/{ResleevingConsoleTexts.tsx => ResleevingConsoleCoreDump.tsx} (79%) create mode 100644 tgui/packages/tgui/styles/interfaces/ResleevingConsole.scss diff --git a/code/modules/resleeving/computers.dm b/code/modules/resleeving/computers.dm index e8caee09001..feab1da4851 100644 --- a/code/modules/resleeving/computers.dm +++ b/code/modules/resleeving/computers.dm @@ -17,7 +17,9 @@ var/list/temp = null var/menu = MENU_MAIN //Which menu screen to display var/datum/transhuman/body_record/active_br = null + var/can_grow_active = FALSE var/datum/transhuman/mind_record/active_mr = null + var/can_sleeve_active = FALSE var/organic_capable = 1 var/synthetic_capable = 1 var/obj/item/disk/transcore/disk @@ -25,6 +27,7 @@ var/obj/machinery/transhuman/synthprinter/selected_printer var/obj/machinery/transhuman/resleever/selected_sleever + // Resleeving database this machine interacts with. Blank for default database // Needs a matching /datum/transcore_db with key defined in code var/db_key @@ -103,7 +106,7 @@ active_br = new /datum/transhuman/body_record(brDisk.stored) // Loads a COPY! to_chat(user, "\The [src] loads the body record from \the [W] before ejecting it.") attack_hand(user) - view_b_rec("view_b_rec", list("ref" = "\ref[active_br]")) + view_b_rec(REF(active_br)) else ..() return @@ -140,121 +143,111 @@ var/data[0] data["menu"] = menu - var/list/temppods[0] + var/list/clonepods = list() for(var/obj/machinery/clonepod/transhuman/pod in pods) var/status = "idle" if(pod.mess) status = "mess" else if(pod.occupant && !(pod.stat & NOPOWER)) status = "cloning" - temppods.Add(list(list( - "pod" = "\ref[pod]", + clonepods += list(list( + "pod" = REF(pod), "name" = sanitize(capitalize(pod.name)), "biomass" = pod.get_biomass(), "status" = status, "progress" = (pod.occupant && pod.occupant.stat != DEAD) ? pod.get_completion() : 0 - ))) - data["pods"] = temppods.Copy() - temppods.Cut() + )) + data["pods"] = clonepods + var/list/synthpods = list() for(var/obj/machinery/transhuman/synthprinter/spod in spods) - temppods.Add(list(list( - "spod" = "\ref[spod]", + synthpods += list(list( + "spod" = REF(spod), "name" = sanitize(capitalize(spod.name)), "busy" = spod.busy, "steel" = spod.stored_material[MAT_STEEL], "glass" = spod.stored_material[MAT_GLASS] - ))) - data["spods"] = temppods.Copy() - temppods.Cut() + )) + data["spods"] = synthpods + var/list/resleevers = list() for(var/obj/machinery/transhuman/resleever/resleever in sleevers) - temppods.Add(list(list( - "sleever" = "\ref[resleever]", + resleevers += list(list( + "sleever" = REF(resleever), "name" = sanitize(capitalize(resleever.name)), "occupied" = !!resleever.occupant, "occupant" = resleever.occupant ? resleever.occupant.real_name : "None" - ))) - data["sleevers"] = temppods.Copy() - temppods.Cut() + )) + data["sleevers"] = resleevers data["coredumped"] = our_db.core_dumped data["emergency"] = disk data["temp"] = temp - data["selected_pod"] = "\ref[selected_pod]" - data["selected_printer"] = "\ref[selected_printer]" - data["selected_sleever"] = "\ref[selected_sleever]" + data["selected_pod"] = REF(selected_pod) + data["selected_printer"] = REF(selected_printer) + data["selected_sleever"] = REF(selected_sleever) - var/bodyrecords_list_ui[0] + var/list/bodyrecords_list_ui = list() for(var/N in our_db.body_scans) var/datum/transhuman/body_record/BR = our_db.body_scans[N] - bodyrecords_list_ui[++bodyrecords_list_ui.len] = list("name" = N, "recref" = "\ref[BR]") + bodyrecords_list_ui += list(list( + "name" = N, + "recref" = REF(BR) + )) data["bodyrecords"] = bodyrecords_list_ui - var/mindrecords_list_ui[0] + var/list/mindrecords_list_ui = list() for(var/N in our_db.backed_up) var/datum/transhuman/mind_record/MR = our_db.backed_up[N] - mindrecords_list_ui[++mindrecords_list_ui.len] = list("name" = N, "recref" = "\ref[MR]") + mindrecords_list_ui += list(list( + "name" = N, + "recref" = REF(MR) + )) data["mindrecords"] = mindrecords_list_ui - data["modal"] = tgui_modal_data(src) + data["active_b_rec"] = null + if(active_br) + data["active_b_rec"] = list( + activerecord = REF(active_br), + realname = sanitize(active_br.mydna.name), + species = active_br.speciesname ? active_br.speciesname : active_br.mydna.dna.species, + sex = active_br.bodygender, + mind_compat = active_br.locked ? "Low" : "High", + synthetic = active_br.synthetic, + oocnotes = active_br.body_oocnotes ? active_br.body_oocnotes : "None", + can_grow_active = can_grow_active, + ) + + data["active_m_rec"] = null + if(active_mr) + data["active_m_rec"] = list( + activerecord = REF(active_mr), + realname = sanitize(active_mr.mindname), + obviously_dead = active_mr.dead_state == MR_DEAD ? "Past-due" : "Current", + oocnotes = active_mr.mind_oocnotes ? active_mr.mind_oocnotes : "None.", + can_sleeve_active = can_sleeve_active, + ) + return data /obj/machinery/computer/transhuman/resleeving/tgui_act(action, params) - if(..()) - return TRUE - - . = TRUE - switch(tgui_modal_act(src, action, params)) - if(TGUI_MODAL_ANSWER) - // if(params["id"] == "del_rec" && active_record) - // var/obj/item/card/id/C = usr.get_active_hand() - // if(!istype(C) && !istype(C, /obj/item/pda)) - // set_temp("ID not in hand.", "danger") - // return - // if(check_access(C)) - // records.Remove(active_record) - // qdel(active_record) - // set_temp("Record deleted.", "success") - // menu = MENU_RECORDS - // else - // set_temp("Access denied.", "danger") - return + . = ..() + if(.) + return switch(action) if("view_b_rec") - view_b_rec(action, params) + view_b_rec(params["ref"]) + . = TRUE + if("clear_b_rec") + active_br = null + . = TRUE if("view_m_rec") - var/ref = params["ref"] - if(!length(ref)) - return - active_mr = locate(ref) - if(istype(active_mr)) - if(isnull(active_mr.ckey)) - qdel(active_mr) - set_temp("Error: Record corrupt.", "danger") - else - var/can_sleeve_active = 1 - if(!LAZYLEN(sleevers)) - can_sleeve_active = 0 - set_temp("Error: Cannot sleeve due to no sleevers.", "danger") - if(!selected_sleever) - can_sleeve_active = 0 - set_temp("Error: Cannot sleeve due to no selected sleever.", "danger") - if(selected_sleever && !selected_sleever.occupant) - can_sleeve_active = 0 - set_temp("Error: Cannot sleeve due to lack of sleever occupant.", "danger") - var/list/payload = list( - activerecord = "\ref[active_mr]", - realname = sanitize(active_mr.mindname), - obviously_dead = active_mr.dead_state == MR_DEAD ? "Past-due" : "Current", - oocnotes = active_mr.mind_oocnotes ? active_mr.mind_oocnotes : "None.", - can_sleeve_active = can_sleeve_active, - ) - tgui_modal_message(src, action, "", null, payload) - else - active_mr = null - set_temp("Error: Record missing.", "danger") + view_m_rec(params["ref"]) + . = TRUE + if("clear_m_rec") + active_mr = null + . = TRUE if("coredump") if(disk) our_db.core_dump(disk) @@ -262,11 +255,13 @@ visible_message("\The [src] spits out \the [disk].") disk.forceMove(get_turf(src)) disk = null + . = TRUE if("ejectdisk") disk.forceMove(get_turf(src)) disk = null - + . = TRUE if("create") + . = TRUE if(istype(active_br)) //Tried to grow a synth but no synth pods. if(active_br.synthetic && !spods.len) @@ -281,32 +276,39 @@ var/obj/machinery/transhuman/synthprinter/spod = selected_printer if(!istype(spod)) set_temp("Error: No SynthFab selected.", "danger") + active_br = null return //Already doing someone. if(spod.busy) set_temp("Error: SynthFab is currently busy.", "danger") + active_br = null return //Not enough steel or glass else if(spod.stored_material[MAT_STEEL] < spod.body_cost) set_temp("Error: Not enough [MAT_STEEL] in SynthFab.", "danger") + active_br = null return else if(spod.stored_material["glass"] < spod.body_cost) set_temp("Error: Not enough glass in SynthFab.", "danger") + active_br = null return //Gross pod (broke mid-cloning or something). else if(spod.broken) set_temp("Error: SynthFab malfunction.", "danger") + active_br = null return //Do the cloning! else if(spod.print(active_br)) set_temp("Initiating printing cycle...", "success") + active_br = null menu = 1 else set_temp("Initiating printing cycle... Error: Post-initialisation failed. Printing cycle aborted.", "danger") + active_br = null return //We're cloning an organic. @@ -314,59 +316,58 @@ var/obj/machinery/clonepod/transhuman/pod = selected_pod if(!istype(pod)) set_temp("Error: No clonepod selected.", "danger") - tgui_modal_clear(src) + active_br = null return //Already doing someone. if(pod.occupant) set_temp("Error: Growpod is currently occupied.", "danger") - tgui_modal_clear(src) + active_br = null return //Not enough materials. else if(pod.get_biomass() < CLONE_BIOMASS) set_temp("Error: Not enough biomass.", "danger") - tgui_modal_clear(src) + active_br = null return //Gross pod (broke mid-cloning or something). else if(pod.mess) set_temp("Error: Growpod malfunction.", "danger") - tgui_modal_clear(src) + active_br = null return //Disabled in config. else if(!config.revival_cloning) set_temp("Error: Unable to initiate growing cycle.", "danger") - tgui_modal_clear(src) + active_br = null return //Do the cloning! else if(pod.growclone(active_br)) set_temp("Initiating growing cycle...", "success") - tgui_modal_clear(src) + active_br = null else set_temp("Initiating growing cycle... Error: Post-initialisation failed. Growing cycle aborted.", "danger") - tgui_modal_clear(src) + active_br = null return - //The body record is broken somehow. else set_temp("Error: Data corruption.", "danger") - tgui_modal_clear(src) - return - + active_br = null if("sleeve") if(istype(active_mr)) + . = TRUE if(!sleevers.len) set_temp("Error: No sleevers detected.", "danger") + active_mr = null else var/mode = text2num(params["mode"]) var/override var/obj/machinery/transhuman/resleever/sleever = selected_sleever if(!istype(sleever)) set_temp("Error: No resleeving pod selected.", "danger") - tgui_modal_clear(src) + active_mr = null return switch(mode) @@ -374,13 +375,13 @@ //No body to sleeve into. if(!sleever.occupant) set_temp("Error: Resleeving pod is not occupied.", "danger") - tgui_modal_clear(src) + active_mr = null return //OOC body lock thing. if(sleever.occupant.resleeve_lock && active_mr.ckey != sleever.occupant.resleeve_lock) set_temp("Error: Mind incompatible with body.", "danger") - tgui_modal_clear(src) + active_mr = null return var/list/subtargets = list() @@ -393,13 +394,13 @@ override = tgui_input_list(usr,"Multiple bodies detected. Select target for resleeving of [active_mr.mindname] manually. Sleeving of primary body is unsafe with sub-contents, and is not listed.", "Resleeving Target", subtargets) if(!override || oc_sanity != sleever.occupant || !(override in sleever.occupant)) set_temp("Error: Target selection aborted.", "danger") - tgui_modal_clear(src) + active_mr = null return if(2) //Card resleeving if(sleever.sleevecards <= 0) set_temp("Error: No available cards in resleever.", "danger") - tgui_modal_clear(src) + active_mr = null return //Body to sleeve into, but mind is in another living body. @@ -409,16 +410,14 @@ //They declined to be moved. if(answer != "Yes") set_temp("Initiating resleeving... Error: Post-initialisation failed. Resleeving cycle aborted.", "danger") - tgui_modal_clear(src) + active_mr = null return TRUE //They were dead, or otherwise available. sleever.putmind(active_mr,mode,override,db_key = db_key) set_temp("Initiating resleeving...") - tgui_modal_clear(src) + active_mr = null - if("refresh") - SStgui.update_uis(src) if("selectpod") var/ref = params["ref"] if(!length(ref)) @@ -426,6 +425,7 @@ var/obj/machinery/clonepod/selected = locate(ref) if(istype(selected) && (selected in pods)) selected_pod = selected + . = TRUE if("selectprinter") var/ref = params["ref"] if(!length(ref)) @@ -433,6 +433,7 @@ var/obj/machinery/transhuman/synthprinter/selected = locate(ref) if(istype(selected) && (selected in spods)) selected_printer = selected + . = TRUE if("selectsleever") var/ref = params["ref"] if(!length(ref)) @@ -440,12 +441,13 @@ var/obj/machinery/transhuman/resleever/selected = locate(ref) if(istype(selected) && (selected in sleevers)) selected_sleever = selected + . = TRUE if("menu") menu = clamp(text2num(params["num"]), MENU_MAIN, MENU_MIND) + . = TRUE if("cleartemp") temp = null - else - return FALSE + . = TRUE // In here because only relevant to computer /obj/item/cmo_disk_holder @@ -489,40 +491,53 @@ if(update_now) SStgui.update_uis(src) -/obj/machinery/computer/transhuman/resleeving/proc/view_b_rec(action, params) - var/ref = params["ref"] +/obj/machinery/computer/transhuman/resleeving/proc/view_b_rec(ref) if(!length(ref)) return + active_br = locate(ref) if(istype(active_br)) - var/can_grow_active = 1 + can_grow_active = TRUE if(!synthetic_capable && active_br.synthetic) //Disqualified due to being synthetic in an organic only. - can_grow_active = 0 + can_grow_active = FALSE set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs.", "danger") else if(!organic_capable && !active_br.synthetic) //Disqualified for the opposite. - can_grow_active = 0 + can_grow_active = FALSE set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of cloners.", "danger") else if(!synthetic_capable && !organic_capable) //What have you done?? - can_grow_active = 0 + can_grow_active = FALSE set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs and cloners.", "danger") else if(active_br.toocomplex) - can_grow_active = 0 + can_grow_active = FALSE set_temp("Error: Cannot grow [active_br.mydna.name] due to species complexity.", "danger") - var/list/payload = list( - activerecord = "\ref[active_br]", - realname = sanitize(active_br.mydna.name), - species = active_br.speciesname ? active_br.speciesname : active_br.mydna.dna.species, - sex = active_br.bodygender, - mind_compat = active_br.locked ? "Low" : "High", - synthetic = active_br.synthetic, - oocnotes = active_br.body_oocnotes ? active_br.body_oocnotes : "None", - can_grow_active = can_grow_active, - ) - tgui_modal_message(src, action, "", null, payload) else active_br = null set_temp("Error: Record missing.", "danger") +/obj/machinery/computer/transhuman/resleeving/proc/view_m_rec(ref) + if(!length(ref)) + return + + active_mr = locate(ref) + if(istype(active_mr)) + if(isnull(active_mr.ckey)) + qdel(active_mr) + set_temp("Error: Record corrupt.", "danger") + else + can_sleeve_active = TRUE + if(!LAZYLEN(sleevers)) + can_sleeve_active = FALSE + set_temp("Error: Cannot sleeve due to no sleevers.", "danger") + if(!selected_sleever) + can_sleeve_active = FALSE + set_temp("Error: Cannot sleeve due to no selected sleever.", "danger") + if(selected_sleever && !selected_sleever.occupant) + can_sleeve_active = FALSE + set_temp("Error: Cannot sleeve due to lack of sleever occupant.", "danger") + else + active_mr = null + set_temp("Error: Record missing.", "danger") + #undef MENU_MAIN #undef MENU_BODY #undef MENU_MIND diff --git a/tgui/packages/tgui/interfaces/ResleevingConsole/viewBodyRecordModalBodyOverride.tsx b/tgui/packages/tgui/interfaces/ResleevingConsole/BodyRecordModal.tsx similarity index 55% rename from tgui/packages/tgui/interfaces/ResleevingConsole/viewBodyRecordModalBodyOverride.tsx rename to tgui/packages/tgui/interfaces/ResleevingConsole/BodyRecordModal.tsx index 58b20b8a976..7aab7736dff 100644 --- a/tgui/packages/tgui/interfaces/ResleevingConsole/viewBodyRecordModalBodyOverride.tsx +++ b/tgui/packages/tgui/interfaces/ResleevingConsole/BodyRecordModal.tsx @@ -1,8 +1,9 @@ -import { useBackend } from '../../backend'; -import { Button, LabeledList, Section } from '../../components'; -import { modalBBodyData } from './types'; +import { Box, Button, LabeledList, Section } from 'tgui-core/components'; -export const viewBodyRecordModalBodyOverride = (modal: modalBBodyData) => { +import { useBackend } from '../../backend'; +import { ActiveBodyRecordData } from './types'; + +export const BodyRecordModal = (props: { data: ActiveBodyRecordData }) => { const { act } = useBackend(); const { activerecord, @@ -13,32 +14,26 @@ export const viewBodyRecordModalBodyOverride = (modal: modalBBodyData) => { synthetic, oocnotes, can_grow_active, - } = modal.args; + } = props.data; return (
act('modal_close')} /> + + + +
+ {oocnotes} +
+
+
); diff --git a/tgui/packages/tgui/interfaces/ResleevingConsole/viewMindRecordModalBodyOverride.tsx b/tgui/packages/tgui/interfaces/ResleevingConsole/MindRecordModal.tsx similarity index 57% rename from tgui/packages/tgui/interfaces/ResleevingConsole/viewMindRecordModalBodyOverride.tsx rename to tgui/packages/tgui/interfaces/ResleevingConsole/MindRecordModal.tsx index 18cfccb73a1..b9532910e94 100644 --- a/tgui/packages/tgui/interfaces/ResleevingConsole/viewMindRecordModalBodyOverride.tsx +++ b/tgui/packages/tgui/interfaces/ResleevingConsole/MindRecordModal.tsx @@ -1,8 +1,9 @@ -import { useBackend } from '../../backend'; -import { Button, LabeledList, Section } from '../../components'; -import { modalMindData } from './types'; +import { useBackend } from 'tgui/backend'; +import { Box, Button, LabeledList, Section } from 'tgui-core/components'; -export const viewMindRecordModalBodyOverride = (modal: modalMindData) => { +import { modalMindData as ActiveMindRecordData } from './types'; + +export const MindRecordModal = (props: { data: ActiveMindRecordData }) => { const { act } = useBackend(); const { activerecord, @@ -10,14 +11,14 @@ export const viewMindRecordModalBodyOverride = (modal: modalMindData) => { obviously_dead, oocnotes, can_sleeve_active, - } = modal.args; + } = props.data; return (
act('modal_close')} /> + - -
- {oocnotes} -
+ + +
+ {oocnotes} +
+
diff --git a/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleTexts.tsx b/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleCoreDump.tsx similarity index 79% rename from tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleTexts.tsx rename to tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleCoreDump.tsx index f350fc85325..bab69e13355 100644 --- a/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleTexts.tsx +++ b/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleCoreDump.tsx @@ -1,5 +1,5 @@ -import { useBackend } from '../../backend'; -import { Box, Button, Dimmer, Flex, Icon } from '../../components'; +import { useBackend } from 'tgui/backend'; +import { Box, Button, Dimmer, Flex, Icon } from 'tgui-core/components'; export const ResleevingConsoleCoreDump = (props) => { return ( @@ -26,6 +26,7 @@ export const ResleevingConsoleDiskPrep = (props) => {

!!WARNING!!

+ This will transfer all minds to the dump disk, and the TransCore will be made unusable until post-shift maintenance! This should only be used in @@ -50,3 +51,14 @@ export const ResleevingConsoleDiskPrep = (props) => { ); }; + +export const PulsingWarningTriangle = (props) => { + return ( + + ); +}; diff --git a/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleElements.tsx b/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleElements.tsx index 1eb7e8d069e..84ea81ff148 100644 --- a/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleElements.tsx +++ b/tgui/packages/tgui/interfaces/ResleevingConsole/ResleevingConsoleElements.tsx @@ -1,5 +1,7 @@ -import { useBackend } from '../../backend'; -import { Box, Button, NoticeBox, Section, Tabs } from '../../components'; +import { useBackend } from 'tgui/backend'; +import { Stack } from 'tgui-core/components'; +import { Box, Button, NoticeBox, Section, Tabs } from 'tgui-core/components'; + import { MENU_BODY, MENU_MAIN, MENU_MIND } from './constants'; import { ResleevingConsolePodGrowers } from './ResleevingConsolePodGrowers'; import { ResleevingConsolePodSleevers } from './ResleevingConsolePodSleevers'; @@ -84,22 +86,24 @@ export const ResleevingConsoleTemp = (props) => { const tempProp = { [temp.style]: true }; return ( - - - {temp.text} - - -
- - )) - ); + + if (!virus?.length) { + return No viruses in database.; + } + + virus.sort((a, b) => (a.name > b.name ? 1 : -1)); + + return virus.map((vir, i) => ( + + +
+
+ )); }; diff --git a/tgui/packages/tgui/interfaces/MedicalRecords/index.tsx b/tgui/packages/tgui/interfaces/MedicalRecords/index.tsx index 61fd434ab91..3ceae1aeb0a 100644 --- a/tgui/packages/tgui/interfaces/MedicalRecords/index.tsx +++ b/tgui/packages/tgui/interfaces/MedicalRecords/index.tsx @@ -1,10 +1,11 @@ -import { useBackend } from '../../backend'; -import { Section } from '../../components'; +import { useBackend } from 'tgui/backend'; +import { Window } from 'tgui/layouts'; +import { Section, Stack } from 'tgui-core/components'; + import { ComplexModal, modalRegisterBodyOverride, -} from '../../interfaces/common/ComplexModal'; -import { Window } from '../../layouts'; +} from '../common/ComplexModal'; import { LoginInfo } from '../common/LoginInfo'; import { LoginScreen } from '../common/LoginScreen'; import { TemporaryNotice } from '../common/TemporaryNotice'; @@ -46,14 +47,26 @@ export const MedicalRecords = (props) => { return ( - - - - - -
- {(screen && body[screen]) || ''} -
+ + + + + + + {!!data.temp && ( + + + + )} + + + + +
+ {(screen && body[screen]) || ''} +
+
+
); From 42fe4515fbab216ba326116e59ea2a6ea475c948 Mon Sep 17 00:00:00 2001 From: ShadowLarkens Date: Wed, 2 Oct 2024 06:07:45 -0700 Subject: [PATCH 5/5] Change the stupid bone icon to a bandaid --- .../interfaces/BodyScanner/BodyScannerMainOrgansExternal.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tgui/packages/tgui/interfaces/BodyScanner/BodyScannerMainOrgansExternal.tsx b/tgui/packages/tgui/interfaces/BodyScanner/BodyScannerMainOrgansExternal.tsx index e2fdfad28da..3c4139827bb 100644 --- a/tgui/packages/tgui/interfaces/BodyScanner/BodyScannerMainOrgansExternal.tsx +++ b/tgui/packages/tgui/interfaces/BodyScanner/BodyScannerMainOrgansExternal.tsx @@ -52,7 +52,7 @@ export const BodyScannerMainOrgansExternal = (props: { > {!!o.bruteLoss && ( - + {toFixed(o.bruteLoss)}  )}