From 929f25c18b8f55e69fb97594fdb1483582c24413 Mon Sep 17 00:00:00 2001 From: Certh Date: Sat, 26 Dec 2015 09:55:11 +0100 Subject: [PATCH 1/6] Overhauls BodyScanner NanoUI --- code/game/machinery/adv_med.dm | 10 +- nano/css/shared.css | 7 +- nano/templates/adv_med.tmpl | 545 ++++++++++++++++----------------- 3 files changed, 274 insertions(+), 288 deletions(-) diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index 53e49224c6c..f005384ade4 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -315,6 +315,7 @@ occupantData["name"] = H.name occupantData["stat"] = H.stat occupantData["health"] = H.health + occupantData["maxHealth"] = H.maxHealth occupantData["hasVirus"] = H.virus2.len @@ -338,7 +339,9 @@ var/blood_volume = round(H.vessel.get_reagent_amount("blood")) bloodData["volume"] = blood_volume bloodData["percent"] = round(((blood_volume / 560)*100)) - + bloodData["pulse"] = H.get_pulse(GETPULSE_TOOL) + bloodData["bloodLevel"] = round(H.vessel.get_reagent_amount("blood")) + bloodData["bloodMax"] = H.max_blood occupantData["blood"] = bloodData var/reagentData[0] @@ -427,6 +430,9 @@ if(..()) return 1 + if (href_list["ejectify"]) + src.connected.eject() + if (href_list["print_p"]) generate_printing_text() @@ -609,4 +615,4 @@ else dat = " Error: No Body Scanner connected." - printing_text = dat \ No newline at end of file + printing_text = dat diff --git a/nano/css/shared.css b/nano/css/shared.css index 8aaf9c4f257..0e6568abf07 100644 --- a/nano/css/shared.css +++ b/nano/css/shared.css @@ -560,6 +560,11 @@ th.misc { color: #ffffff; } +/* Table styling for Med Scanner */ +.striped tr:nth-child(even) { + background-color: #404040 +} + /* Damage colors for crew monitoring computer */ .burn { color: orange; @@ -637,4 +642,4 @@ th.misc { .hot3 { color: #FF6600; -} \ No newline at end of file +} diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index 6e0e0d98752..5c7f739d732 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -1,14 +1,15 @@ - + {{if !data.occupied}}

No occupant detected.

{{else}}

Occupant Data:

- Name: + Name:
{{:data.occupant.name}} @@ -22,324 +23,298 @@ Used In File(s): \code\game\machinery\adv_med.dm
{{:helper.round(data.occupant.health*10)/10}}%
+
Status:
{{if data.occupant.stat==0}} - Alive + Alive {{else data.occupant.stat==1}} - Critical + Critical {{else}} - Dead + Dead {{/if}}
- {{:helper.link('Print', 'document', {'print_p' : 1, 'name' : data.occupant.name})}} +
-

Damage:

-
- Brute: +
+ Temperature:
-
- {{:data.occupant.bruteLoss}} -

-
- Burn: -
-
- {{:data.occupant.fireLoss}} -

-
- Oxygen: -
-
- {{:data.occupant.oxyLoss}} -

-
- Toxins: -
-
- {{:data.occupant.toxLoss}} -

-
- Brain: -
-
- {{:data.occupant.brainLoss}} -

-
- Radiation Level: -
-
- {{:data.occupant.radLoss}} -

-
- Genetic: -
-
- {{:data.occupant.cloneLoss}} -

-
- Paralysis: -
-
- {{:data.occupant.paralysis}}% ({{:data.occupant.paralysisSeconds}} seconds left!) -

-
-
-
- Body Temperature: -
-
+
{{:data.occupant.bodyTempC}}°C, {{:data.occupant.bodyTempF}}°F
+ {{if data.occupant.hasVirus}} -
+ Viral pathogen detected in blood stream. -
+
{{/if}} {{if data.occupant.hasBorer}} -
- Large growth detected in frontal lobe, possibly cancerous. Surgical removal is recommended. -
+ + Large growth detected in frontal lobe, possibly cancerous. Surgical removal is recommended.
{{/if}} {{if data.occupant.blind}} - Pupils unresponsive.
+ Pupils unresponsive.
{{/if}} {{if data.occupant.nearsighted}} - Retinal Misalignment Detected + Retinal misalignment detected
{{/if}}
+ {{:helper.link('Print', 'document', {'print_p' : 1, 'name' : data.occupant.name})}} + {{:helper.link('Eject Occupant', 'arrowreturnthick-1-s', {'ejectify' : 1}, data.occupied ? null : 'disabled')}} +

-
-
Blood
-
-
- Volume -
-
- {{:data.occupant.blood.volume}} -
-
-
-
- Percent -
-
- {{:data.occupant.blood.percent}}% -
-
-
- + Damage: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Brute Damage: + + Brain Damage: +
+ {{:helper.displayBar(data.occupant.bruteLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.bruteLoss) }} + + {{:helper.displayBar(data.occupant.brainLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.brainLoss)}} +
+ Resp. Damage: + + Radiation Level: +
+ {{:helper.displayBar(data.occupant.oxyLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.oxyLoss)}} + + {{:helper.displayBar(data.occupant.radLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.radLoss)}} +
+ Toxin Damage: + + Genetic Damage: +
+ {{:helper.displayBar(data.occupant.toxLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.toxLoss)}} + + {{:helper.displayBar(data.occupant.cloneLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.cloneLoss)}} +
+ Burn Severity: + + Paralysis %: ({{:data.occupant.paralysisSeconds}} seconds left) +
+ {{:helper.displayBar(data.occupant.fireLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.fireLoss)}} + + {{:helper.displayBar(data.occupant.paralysis, 0, data.occupant.maxHealth, 'bad', data.occupant.paralysis)}} +

- -
-
Reagents
-
-
- Epinephrine -
-
- {{:data.occupant.reagents.epinephrine}} -
-
-
-
- Ether -
-
- {{:data.occupant.reagents.ether}} -
-
-
-
- - Silver Sulfadiazine - -
-
- - {{:data.occupant.reagents.silver_sulfadiazine}} - -
-
-
-
- - Styptic Powder - -
-
- - {{:data.occupant.reagents.styptic_powder}} - -
-
-
-
- - Salbutamol - -
-
- - {{:data.occupant.reagents.salbutamol}} - -
-
+ Blood: +
+
Pulse:
{{:data.occupant.blood.pulse}} bpm
+
+
Blood Level:
+ {{if data.occupant.blood.percent <= 60}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'bad')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl +
+ {{else data.occupant.blood.percent <= 90}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'average')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.bloodLevel}}cl +
+ {{else}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'good')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl +
+ {{/if}} +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Epinephrine: + + Ether: +
+ {{:helper.displayBar(data.occupant.reagents.epinephrine, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.epinephrine )}} + + {{:helper.displayBar(data.occupant.reagents.ether, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.ether)}} +
+ Silver Sulfadiazine: + + Styptic Powder: +
+ {{:helper.displayBar(data.occupant.reagents.silver_sulfadiazine, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.silver_sulfadiazine)}} + + {{:helper.displayBar(data.occupant.reagents.styptic_powder, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.styptic_powder)}} +
+ Salbutamol: +
+ {{:helper.displayBar(data.occupant.reagents.salbutamol, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.salbutamol)}} + +
+
External Organs -
- {{for data.occupant.extOrgan}} - {{if value.status.destroyed}} -
-
- {{:value.name}} - DESTROYED -
-
- {{else}} -
-
- {{:value.name}} -
-
- {{if value.status.broken}} - {{:value.status.broken}} - {{else value.status.splinted}} - Splinted - {{else value.status.robotic}} - Robotic - {{/if}} -
-
-
-
-  Brute/Burn -
-
- {{:value.bruteLoss}}/{{:value.fireLoss}} -
-
-
-
-  Injuries -
-
- {{if !value.status.bleeding}} - {{if !value.status.internalBleeding}} - No Injuries Detected - {{else}} - Internal Bleeding Detected + + + + + + + + + + + {{for data.occupant.extOrgan}} + + + + + + + {{/for}} + +
Name Brute damage Burn damage Injuries
{{:value.name}} + {{if value.bruteLoss> 0}} {{else}} {{/if}} + {{:value.bruteLoss}} + + {{if value.fireLoss> 0}} {{else}} {{/if}} + {{:value.fireLoss}} + + + {{if value.status.destroyed}} DESTROYED
{{/if}} + {{if value.status.bleeding}} external bleeding
{{/if}} + {{if value.internalBleeding}} internal bleeding
{{/if}} + {{if value.lungRuptured}} lung ruptured
{{/if}} + {{if value.status.broken}} {{:value.status.broken}}
{{/if}} + {{if value.germ_level > 100}} + {{if value.germ_level < 300}} + mild infection
+ {{else value.germ_level < 400}} + mild infection+
+ {{else value.germ_level < 500}} + mild infection++
+ {{else value.germ_level < 700}} + acute infection
+ {{else value.germ_level < 800}} + acute infection+
+ {{else value.germ_level < 900}} + acute infection++
+ {{else value.germ_level >= 900}} + septic
+ {{/if}} {{/if}} - {{else}} - {{if value.status.internalBleeding}} -
Internal Bleeding Detected. External Bleeding Detected.
- {{else}} - External Bleeding Detected + {{if value.open}} open incision
{{/if}} +
+ {{if value.status.splinted}} splinted
{{/if}} + {{if value.status.robotic}} robotic
{{/if}} + {{if value.implants_len}} + {{for value.implants : impValue:impindex}} + {{:impValue.known ? impValue.name : "unknown object"}}
+ {{/for}} {{/if}} - {{/if}} - - - {{if value.germ_level > 100}} -
-
-  Infection -
-
- {{if value.germ_level < 300}} - Mild Infection - {{else value.germ_level < 400}} - Mild Infection+ - {{else value.germ_level < 500}} - Mild Infection++ - {{else value.germ_level < 700}} - Acute Infection - {{else value.germ_level < 800}} - Acute Infection+ - {{else value.germ_level < 900}} - Acute Infection++ - {{else value.germ_level >= 900}} - Septic - {{/if}} -
-
- {{/if}} - {{if value.open}} -
-
-  Operation Status -
-
- Open Incision -
-
- {{/if}} - {{if value.implants_len}} -
-
-  Implants -

- {{for value.implants :impValue:impindex}} -
-   {{:impValue.known ? impValue.name : "Unknown"}} -

- {{/for}} -
- {{/if}} - {{/if}} +

- {{/for}} -
Internal Organs -
- {{for data.occupant.intOrgan}} -
-
- {{:value.name}} -
-
- {{:value.desc != null ? value.desc : ""}} -
-
- {{if value.germ_level > 100}} -
-
-  Infection -
-
- {{if value.germ_level < 300}} - Mild Infection - {{else value.germ_level < 400}} - Mild Infection+ - {{else value.germ_level < 500}} - Mild Infection++ - {{else value.germ_level < 700}} - Acute Infection - {{else value.germ_level < 800}} - Acute Infection+ - {{else value.germ_level < 900}} - Acute Infection++ - {{else value.germ_level >= 900}} - Septic - {{/if}} -
-
- {{/if}} -
-
-  Damage -
-
- {{:value.damage}} -
-
- {{/for}} -
-{{/if}} \ No newline at end of file + + + + + + + + + + {{for data.occupant.intOrgan}} + + + + + + + {{/for}} + +
Name Brute damage Injuries
{{:value.name}}
{{:value.desc != null ? value.desc : ""}}
+ {{if value.damage > 0}} {{else}} {{/if}} + {{:value.damage}} + {{if value.germ_level > 100}} + {{if value.germ_level < 300}} + mild infection
+ {{else value.germ_level < 400}} + mild infection+
+ {{else value.germ_level < 500}} + mild infection++
+ {{else value.germ_level < 700}} + acute Infection
+ {{else value.germ_level < 800}} + acute Infection+
+ {{else value.germ_level < 900}} + acute Infection++
+ {{else value.germ_level >= 900}} + septic
+ {{/if}} + {{/if}} +
+{{/if}} From 398a7931d7fbe9fcab7b2d701b2e9c97b836a6ee Mon Sep 17 00:00:00 2001 From: Certh Date: Sun, 27 Dec 2015 10:19:12 +0100 Subject: [PATCH 2/6] Reduced table size in the code --- nano/templates/adv_med.tmpl | 91 ++++++++++--------------------------- 1 file changed, 24 insertions(+), 67 deletions(-) diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index 5c7f739d732..398b2909ebf 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -70,73 +70,41 @@ Used In File(s): \code\game\machinery\adv_med.dm

Damage: - - +
- - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + -
- Brute Damage: - - Brain Damage: - Brute Damage: Brain Damage:
- {{:helper.displayBar(data.occupant.bruteLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.bruteLoss) }} - - {{:helper.displayBar(data.occupant.brainLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.brainLoss)}} - {{:helper.displayBar(data.occupant.bruteLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.bruteLoss) }} {{:helper.displayBar(data.occupant.brainLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.brainLoss)}}
- Resp. Damage: - - Radiation Level: - Resp. Damage: Radiation Level:
- {{:helper.displayBar(data.occupant.oxyLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.oxyLoss)}} - - {{:helper.displayBar(data.occupant.radLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.radLoss)}} - {{:helper.displayBar(data.occupant.oxyLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.oxyLoss)}} {{:helper.displayBar(data.occupant.radLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.radLoss)}}
- Toxin Damage: - - Genetic Damage: - Toxin Damage: Genetic Damage:
- {{:helper.displayBar(data.occupant.toxLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.toxLoss)}} - - {{:helper.displayBar(data.occupant.cloneLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.cloneLoss)}} - {{:helper.displayBar(data.occupant.toxLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.toxLoss)}} {{:helper.displayBar(data.occupant.cloneLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.cloneLoss)}}
- Burn Severity: - - Paralysis %: ({{:data.occupant.paralysisSeconds}} seconds left) - Burn Severity: Paralysis %: ({{:data.occupant.paralysisSeconds}} seconds left)
- {{:helper.displayBar(data.occupant.fireLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.fireLoss)}} - - {{:helper.displayBar(data.occupant.paralysis, 0, data.occupant.maxHealth, 'bad', data.occupant.paralysis)}} - {{:helper.displayBar(data.occupant.fireLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.fireLoss)}} {{:helper.displayBar(data.occupant.paralysis, 0, data.occupant.maxHealth, 'bad', data.occupant.paralysis)}}
+ +
Blood:
@@ -217,8 +185,7 @@ Used In File(s): \code\game\machinery\adv_med.dm
External Organs - - +
@@ -230,14 +197,8 @@ Used In File(s): \code\game\machinery\adv_med.dm {{for data.occupant.extOrgan}} - - + +
Name Brute damage
{{:value.name}} - {{if value.bruteLoss> 0}} {{else}} {{/if}} - {{:value.bruteLoss}} - - {{if value.fireLoss> 0}} {{else}} {{/if}} - {{:value.fireLoss}} - {{if value.bruteLoss> 0}} {{else}} {{/if}} {{:value.bruteLoss}} {{if value.fireLoss> 0}} {{else}} {{/if}} {{:value.fireLoss}} {{if value.status.destroyed}} DESTROYED
{{/if}} @@ -278,8 +239,7 @@ Used In File(s): \code\game\machinery\adv_med.dm

Internal Organs - - +
@@ -290,10 +250,7 @@ Used In File(s): \code\game\machinery\adv_med.dm {{for data.occupant.intOrgan}} - - + - - + + - - + + - - + + - - + +
Name Brute damage
{{:value.name}}
{{:value.desc != null ? value.desc : ""}}
- {{if value.damage > 0}} {{else}} {{/if}} - {{:value.damage}} {{if value.damage > 0}} {{else}} {{/if}} {{:value.damage}} {{if value.germ_level > 100}} {{if value.germ_level < 300}} From 8401e3309883c7dede5bf5180aeda4c2e1a7ae8b Mon Sep 17 00:00:00 2001 From: Certh Date: Sun, 27 Dec 2015 12:31:40 +0100 Subject: [PATCH 3/6] removes reagants --- code/game/machinery/adv_med.dm | 10 ------- nano/templates/adv_med.tmpl | 52 ---------------------------------- 2 files changed, 62 deletions(-) diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index f005384ade4..c8752a79d55 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -344,16 +344,6 @@ bloodData["bloodMax"] = H.max_blood occupantData["blood"] = bloodData - var/reagentData[0] - if(H.reagents) - reagentData["epinephrine"] = H.reagents.get_reagent_amount("Epinephrine") - reagentData["ether"] = H.reagents.get_reagent_amount("ether") - reagentData["silver_sulfadiazine"] = H.reagents.get_reagent_amount("silver_sulfadiazine") - reagentData["styptic_powder"] = H.reagents.get_reagent_amount("styptic_powder") - reagentData["salbutamol"] = H.reagents.get_reagent_amount("salbutamol") - - occupantData["reagents"] = reagentData - var/extOrganData[0] for(var/obj/item/organ/external/E in H.organs) var/organData[0] diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index 398b2909ebf..0e2bd4c82be 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -132,58 +132,6 @@ Used In File(s): \code\game\machinery\adv_med.dm

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Epinephrine: - - Ether: -
- {{:helper.displayBar(data.occupant.reagents.epinephrine, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.epinephrine )}} - - {{:helper.displayBar(data.occupant.reagents.ether, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.ether)}} -
- Silver Sulfadiazine: - - Styptic Powder: -
- {{:helper.displayBar(data.occupant.reagents.silver_sulfadiazine, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.silver_sulfadiazine)}} - - {{:helper.displayBar(data.occupant.reagents.styptic_powder, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.styptic_powder)}} -
- Salbutamol: -
- {{:helper.displayBar(data.occupant.reagents.salbutamol, 0, data.occupant.maxHealth, 'bad', data.occupant.reagents.salbutamol)}} - -
- -
- External Organs From afa5d3358f46369ef7bc2cc888dbcd7735db2a4f Mon Sep 17 00:00:00 2001 From: Certh Date: Sun, 27 Dec 2015 12:39:20 +0100 Subject: [PATCH 4/6] removes description from internal organ names --- nano/templates/adv_med.tmpl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index 0e2bd4c82be..a9d68f2f7a7 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -144,7 +144,7 @@ Used In File(s): \code\game\machinery\adv_med.dm {{for data.occupant.extOrgan}} - + {{for data.occupant.intOrgan}} - +
{{:value.name}} {{:value.name}} {{if value.bruteLoss> 0}} {{else}} {{/if}} {{:value.bruteLoss}} {{if value.fireLoss> 0}} {{else}} {{/if}} {{:value.fireLoss}} @@ -197,7 +197,7 @@ Used In File(s): \code\game\machinery\adv_med.dm
{{:value.name}}
{{:value.desc != null ? value.desc : ""}}
{{:value.name}}
{{if value.damage > 0}} {{else}} {{/if}} {{:value.damage}} {{if value.germ_level > 100}} From 4aa83d3739a7e47df7c71143c0457eb92d905181 Mon Sep 17 00:00:00 2001 From: Certh Date: Sun, 27 Dec 2015 17:11:48 +0100 Subject: [PATCH 5/6] - No longer show blood section for species that have no blood - Prevents incompatible creatures entering the bodyscanner --- code/game/machinery/adv_med.dm | 8 +++--- nano/templates/adv_med.tmpl | 47 ++++++++++++++++++---------------- 2 files changed, 30 insertions(+), 25 deletions(-) diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index c8752a79d55..d15df37c062 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -93,7 +93,7 @@ qdel(G) -/obj/machinery/bodyscanner/MouseDrop_T(mob/living/carbon/O, mob/user as mob) +/obj/machinery/bodyscanner/MouseDrop_T(mob/living/carbon/human/O, mob/user as mob) if(!istype(O)) return 0 //not a mob if(user.incapacitated()) @@ -310,7 +310,7 @@ data["occupied"] = connected.occupant ? 1 : 0 var/occupantData[0] - if(connected.occupant && ishuman(connected.occupant)) + if(connected.occupant) var/mob/living/carbon/human/H = connected.occupant occupantData["name"] = H.name occupantData["stat"] = H.stat @@ -335,8 +335,10 @@ occupantData["hasBorer"] = H.has_brain_worms() var/bloodData[0] - if(H.vessel) + bloodData["hasBlood"] = 0 + if(ishuman(H) && H.vessel && !(H.species && H.species.flags & NO_BLOOD)) var/blood_volume = round(H.vessel.get_reagent_amount("blood")) + bloodData["hasBlood"] = 1 bloodData["volume"] = blood_volume bloodData["percent"] = round(((blood_volume / 560)*100)) bloodData["pulse"] = H.get_pulse(GETPULSE_TOOL) diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index a9d68f2f7a7..675ed51c8e5 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -105,31 +105,34 @@ Used In File(s): \code\game\machinery\adv_med.dm
-
- Blood: -
-
Pulse:
{{:data.occupant.blood.pulse}} bpm
-
-
-
Blood Level:
- {{if data.occupant.blood.percent <= 60}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'bad')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl + {{if data.occupant.blood.hasBlood}} +
+ Blood: +
+
Pulse:
{{:data.occupant.blood.pulse}} bpm
- {{else data.occupant.blood.percent <= 90}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'average')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.bloodLevel}}cl + +
+
Blood Level:
+ {{if data.occupant.blood.percent <= 60}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'bad')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl +
+ {{else data.occupant.blood.percent <= 90}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'average')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.bloodLevel}}cl +
+ {{else}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'good')}} +
+ {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl +
+ {{/if}}
- {{else}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'good')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl -
- {{/if}} -
+ {{/if}}

External Organs From 2a0ed2856f5928ddafa425a650eea1ef98dfc39f Mon Sep 17 00:00:00 2001 From: Certh Date: Sun, 27 Dec 2015 20:35:50 +0100 Subject: [PATCH 6/6] added color-coded bars --- code/game/machinery/adv_med.dm | 7 +++ nano/css/shared.css | 5 ++ nano/templates/adv_med.tmpl | 100 ++++++++++++++------------------- 3 files changed, 55 insertions(+), 57 deletions(-) diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index d15df37c062..2b5366c8eac 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -354,6 +354,10 @@ organData["germ_level"] = E.germ_level organData["bruteLoss"] = E.brute_dam organData["fireLoss"] = E.burn_dam + organData["totalLoss"] = E.brute_dam + E.burn_dam + organData["maxHealth"] = E.max_damage + organData["bruised"] = E.min_bruised_damage + organData["broken"] = E.min_broken_damage var/implantData[0] for(var/obj/I in E.implants) @@ -400,6 +404,9 @@ organData["desc"] = I.desc organData["germ_level"] = I.germ_level organData["damage"] = I.damage + organData["maxHealth"] = I.max_damage + organData["bruised"] = I.min_broken_damage + organData["broken"] = I.min_bruised_damage intOrganData.Add(list(organData)) diff --git a/nano/css/shared.css b/nano/css/shared.css index 0e6568abf07..67d726f5ebd 100644 --- a/nano/css/shared.css +++ b/nano/css/shared.css @@ -371,6 +371,11 @@ div.notice { background: #4f7529; } +.displayBarFill.notgood { + color: #ffffff; + background: #ffb400; +} + .displayBarFill.average { color: #ffffff; background: #cd6500; diff --git a/nano/templates/adv_med.tmpl b/nano/templates/adv_med.tmpl index 675ed51c8e5..a8790d09310 100644 --- a/nano/templates/adv_med.tmpl +++ b/nano/templates/adv_med.tmpl @@ -19,7 +19,7 @@ Used In File(s): \code\game\machinery\adv_med.dm
Health:
- {{:helper.displayBar(data.occupant.health, 0, 100, (data.occupant.health >= 50) ? 'good' : (data.occupant.health >= 25) ? 'average' : 'bad')}} + {{:helper.displayBar(data.occupant.health, -100, 100, (data.occupant.health >= 50) ? 'good' : (data.occupant.health >= 0) ? 'average' : 'bad')}}
{{:helper.round(data.occupant.health*10)/10}}%
@@ -47,12 +47,6 @@ Used In File(s): \code\game\machinery\adv_med.dm {{:data.occupant.bodyTempC}}°C, {{:data.occupant.bodyTempF}}°F
- - {{if data.occupant.hasVirus}} - - Viral pathogen detected in blood stream. -
- {{/if}} {{if data.occupant.hasBorer}} Large growth detected in frontal lobe, possibly cancerous. Surgical removal is recommended.
@@ -76,32 +70,32 @@ Used In File(s): \code\game\machinery\adv_med.dm
Brain Damage:
{{:helper.displayBar(data.occupant.bruteLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.bruteLoss) }} {{:helper.displayBar(data.occupant.brainLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.brainLoss)}} {{:helper.displayBar(data.occupant.bruteLoss, 0, data.occupant.maxHealth+100, (data.occupant.bruteLoss < 15) ? 'notgood' : (data.occupant.bruteLoss < 40) ? 'average' : 'bad', data.occupant.bruteLoss) }} {{:helper.displayBar(data.occupant.brainLoss, 0, data.occupant.maxHealth+100, (data.occupant.brainLoss < 15) ? 'notgood' : (data.occupant.brainLoss < 40) ? 'average' : 'bad', data.occupant.brainLoss)}}
Resp. Damage: Radiation Level:
{{:helper.displayBar(data.occupant.oxyLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.oxyLoss)}} {{:helper.displayBar(data.occupant.radLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.radLoss)}} {{:helper.displayBar(data.occupant.oxyLoss, 0, data.occupant.maxHealth+100, (data.occupant.oxyLoss < 15) ? 'notgood' : (data.occupant.oxyLoss < 40) ? 'average' : 'bad', data.occupant.oxyLoss)}} {{:helper.displayBar(data.occupant.radLoss, 0, data.occupant.maxHealth+100, (data.occupant.radLoss < 15) ? 'notgood' : (data.occupant.radLoss < 40) ? 'average' : 'bad', data.occupant.radLoss)}}
Toxin Damage: Genetic Damage:
{{:helper.displayBar(data.occupant.toxLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.toxLoss)}} {{:helper.displayBar(data.occupant.cloneLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.cloneLoss)}} {{:helper.displayBar(data.occupant.toxLoss, 0, data.occupant.maxHealth+100, (data.occupant.toxLoss < 15) ? 'notgood' : (data.occupant.toxLoss < 40) ? 'average' : 'bad', data.occupant.toxLoss)}} {{:helper.displayBar(data.occupant.cloneLoss, 0, data.occupant.maxHealth+100, (data.occupant.cloneLoss < 15) ? 'notgood' : (data.occupant.cloneLoss < 40) ? 'average' : 'bad', data.occupant.cloneLoss)}}
Burn Severity: Paralysis %: ({{:data.occupant.paralysisSeconds}} seconds left)
{{:helper.displayBar(data.occupant.fireLoss, 0, data.occupant.maxHealth, 'bad', data.occupant.fireLoss)}} {{:helper.displayBar(data.occupant.paralysis, 0, data.occupant.maxHealth, 'bad', data.occupant.paralysis)}} {{:helper.displayBar(data.occupant.fireLoss, 0, data.occupant.maxHealth+100, (data.occupant.fireLoss < 15) ? 'notgood' : (data.occupant.fireLoss < 40) ? 'average' : 'bad', data.occupant.fireLoss)}} {{:helper.displayBar(data.occupant.paralysis, 0, 100, (data.occupant.paralysis < 25) ? 'notgood' : (data.occupant.paralysis < 50) ? 'average' : 'bad', data.occupant.paralysis)}}
@@ -112,42 +106,34 @@ Used In File(s): \code\game\machinery\adv_med.dm
Pulse:
{{:data.occupant.blood.pulse}} bpm
-
Blood Level:
- {{if data.occupant.blood.percent <= 60}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'bad')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl -
- {{else data.occupant.blood.percent <= 90}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'average')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.bloodLevel}}cl -
- {{else}} - {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, 'good')}} -
- {{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl -
- {{/if}} + {{:helper.displayBar(data.occupant.blood.bloodLevel, 0, data.occupant.blood.bloodMax, (data.occupant.blood.percent <= 60) ? 'bad' : (data.occupant.blood.percent <= 90) ? 'average' : 'good' )}} +
{{:data.occupant.blood.percent}}%, {{:data.occupant.blood.bloodLevel}}cl
- {{/if}} -

+ {{/if}} +
+ {{if data.occupant.hasVirus}} + + Viral pathogen detected in blood stream. +
+ {{/if}} External Organs - - - - + + + + + {{for data.occupant.extOrgan}} +
Name Brute damage Burn damage Injuries Name Total damage Brute damage Burn damage Injuries
{{:value.name}} {{:helper.displayBar(value.totalLoss, 0, value.maxHealth, (value.totalLoss < value.bruised) ? 'notgood' : (value.totalLoss < value.broken) ? 'average' : 'bad', value.totalLoss) }} {{if value.bruteLoss> 0}} {{else}} {{/if}} {{:value.bruteLoss}} {{if value.fireLoss> 0}} {{else}} {{/if}} {{:value.fireLoss}} @@ -193,31 +179,31 @@ Used In File(s): \code\game\machinery\adv_med.dm - - + + {{for data.occupant.intOrgan}} - - +
Name Brute damage Injuries Brute damage Injuries
{{:value.name}}
{{if value.damage > 0}} {{else}} {{/if}} {{:value.damage}} - {{if value.germ_level > 100}} - {{if value.germ_level < 300}} - mild infection
- {{else value.germ_level < 400}} - mild infection+
- {{else value.germ_level < 500}} - mild infection++
- {{else value.germ_level < 700}} - acute Infection
- {{else value.germ_level < 800}} - acute Infection+
- {{else value.germ_level < 900}} - acute Infection++
- {{else value.germ_level >= 900}} - septic
+
{{:helper.displayBar(value.damage, 0, value.maxHealth, (value.damage < value.bruised) ? 'notgood' : (value.damage < value.broken) ? 'average' : 'bad', value.damage) }} + {{if value.germ_level > 100}} + {{if value.germ_level < 300}} + mild infection
+ {{else value.germ_level < 400}} + mild infection+
+ {{else value.germ_level < 500}} + mild infection++
+ {{else value.germ_level < 700}} + acute Infection
+ {{else value.germ_level < 800}} + acute Infection+
+ {{else value.germ_level < 900}} + acute Infection++
+ {{else value.germ_level >= 900}} + septic
{{/if}} {{/if}}