diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm
index d39eb235362..34835e5dd7b 100644
--- a/code/game/machinery/adv_med.dm
+++ b/code/game/machinery/adv_med.dm
@@ -253,24 +253,23 @@
/obj/item/stock_parts/console_screen
)
-
/obj/machinery/body_scanconsole/Destroy()
if (connected)
connected.connected = null
return ..()
-
-
/obj/machinery/body_scanconsole/power_change()
..()
- if(stat & BROKEN)
- icon_state = "body_scannerconsole-p"
+ update_icon()
+
+/obj/machinery/body_scanconsole/update_icon()
+ cut_overlays()
+ if((stat & BROKEN) || (stat & NOPOWER))
+ return
else
- if (stat & NOPOWER)
- spawn(rand(0, 15))
- icon_state = "body_scannerconsole-p"
- else
- icon_state = initial(icon_state)
+ var/mutable_appearance/screen_overlay = mutable_appearance(icon, "body_scannerconsole-screen", EFFECTS_ABOVE_LIGHTING_LAYER)
+ add_overlay(screen_overlay)
+ set_light(1.4, 1, COLOR_RED)
/obj/machinery/body_scanconsole/proc/get_collapsed_lung_desc()
if (!connected || !connected.occupant)
@@ -298,6 +297,7 @@
connected = C
break
connected.connected = src
+ update_icon()
/obj/machinery/body_scanconsole/attack_ai(var/mob/user)
return attack_hand(user)
@@ -744,4 +744,4 @@
dat += text("Cataracts detected.
")
if(occ["sdisabilities"] & NEARSIGHTED)
dat += text("Retinal misalignment detected.
")
- return dat
\ No newline at end of file
+ return dat
diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm
index 7ed745ccb11..a484b78f0ad 100644
--- a/code/game/machinery/computer/computer.dm
+++ b/code/game/machinery/computer/computer.dm
@@ -8,11 +8,12 @@
idle_power_usage = 300
active_power_usage = 300
clicksound = "keyboard"
-
+
var/circuit = null //The path to the circuit board type. If circuit==null, the computer can't be disassembled.
var/processing = 0
var/icon_screen = "generic"
+ var/icon_scanline
var/light_range_on = 2
var/light_power_on = 1
var/overlay_layer
@@ -66,7 +67,7 @@
icon_state = initial(icon_state)
if(stat & BROKEN)
- icon_state = "computer-broken"
+ icon_state = "[initial(icon_state)]-broken"
if (overlay_layer != layer)
add_overlay(image(icon, "broken", overlay_layer))
else
@@ -74,6 +75,8 @@
else if (icon_screen)
if (is_holographic)
holographic_overlay(src, src.icon, icon_screen)
+ if (icon_scanline)
+ add_overlay(icon_scanline)
else if (overlay_layer != layer)
add_overlay(image(icon, icon_screen, overlay_layer))
else
diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm
index f0ea3a72dae..14a68c5c4da 100644
--- a/code/game/machinery/computer/guestpass.dm
+++ b/code/game/machinery/computer/guestpass.dm
@@ -52,11 +52,11 @@
/obj/machinery/computer/guestpass
name = "guest pass terminal"
desc = "Allows issuing temporary access to an area."
- icon_state = "guest"
+ icon_state = "guestw"
light_color = LIGHT_COLOR_BLUE
- icon_screen = "pass"
- is_holographic = FALSE
+ icon_screen = "guest"
+ icon_scanline = "altcomputerw-scanline"
density = 0
var/obj/item/card/id/giver
diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm
index 7e83c6cedd9..dfa74206054 100644
--- a/code/game/machinery/cryopod.dm
+++ b/code/game/machinery/cryopod.dm
@@ -14,12 +14,15 @@ var/global/list/frozen_crew = list()
/obj/machinery/computer/cryopod
name = "cryogenic oversight console"
desc = "An interface between crew and the cryogenic storage oversight systems."
- icon = 'icons/obj/sleeper.dmi'
- icon_state = "cellconsole"
- light_color = LIGHT_COLOR_GREEN
+ icon_state = "altcomputerw"
circuit = /obj/item/circuitboard/cryopodcontrol
density = FALSE
interact_offline = TRUE
+
+ icon_screen = "cryo"
+ icon_scanline = "altcomputerw-scanline"
+ light_color = LIGHT_COLOR_GREEN
+
var/mode = null
var/list/frozen_items = list()
@@ -31,10 +34,12 @@ var/global/list/frozen_crew = list()
/obj/machinery/computer/cryopod/robot
name = "robotic storage console"
desc = "An interface between crew and the robotic storage systems"
- icon = 'icons/obj/robot_storage.dmi'
- icon_state = "console"
+ icon_state = "altcomputerw"
circuit = /obj/item/circuitboard/robotstoragecontrol
+ icon_screen = "cryo_robot"
+ light_color = LIGHT_COLOR_PURPLE
+
storage_type = "Cyborgs"
storage_name = "Robotic Storage Control"
allow_items = FALSE
@@ -612,4 +617,4 @@ var/global/list/frozen_crew = list()
src.occupant = occupant
name = initial(name)
if(occupant)
- name = "[name] ([occupant])"
\ No newline at end of file
+ name = "[name] ([occupant])"
diff --git a/code/game/objects/structures/therapy.dm b/code/game/objects/structures/therapy.dm
index 405b6f99078..18abe10253b 100644
--- a/code/game/objects/structures/therapy.dm
+++ b/code/game/objects/structures/therapy.dm
@@ -512,10 +512,16 @@
/obj/machinery/chakraconsole/power_change()
..()
+ update_icon()
+
+/obj/machinery/chakraconsole/update_icon()
+ cut_overlays()
if((stat & BROKEN) || (stat & NOPOWER))
- icon_state = "sleeper_s_scannerconsole-p"
+ return
else
- icon_state = initial(icon_state)
+ var/mutable_appearance/screen_overlay = mutable_appearance(icon, "sleeper_s_scannerconsole-screen", EFFECTS_ABOVE_LIGHTING_LAYER)
+ add_overlay(screen_overlay)
+ set_light(1.4, 1, COLOR_RED)
/obj/machinery/chakraconsole/Initialize()
. = ..()
@@ -524,6 +530,7 @@
break
if(connected)
connected.connected = src
+ update_icon()
/obj/machinery/chakraconsole/Destroy()
if (connected)
diff --git a/html/changelogs/wezzy_console_screens.yml b/html/changelogs/wezzy_console_screens.yml
new file mode 100644
index 00000000000..f60de2ef116
--- /dev/null
+++ b/html/changelogs/wezzy_console_screens.yml
@@ -0,0 +1,42 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+# balance
+# admin
+# backend
+# security
+# refactor
+#################################
+
+# Your name.
+author: Wowzewow (Wezzy)
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - rscadd: "Made scanner and cryopod screens light up."
+ - imageadd: "New icons for robot storage and cryo storage."
diff --git a/icons/obj/computer.dmi b/icons/obj/computer.dmi
index 16569466ab6..fb92226342e 100644
Binary files a/icons/obj/computer.dmi and b/icons/obj/computer.dmi differ
diff --git a/icons/obj/robot_storage.dmi b/icons/obj/robot_storage.dmi
index 107c2815230..693c7c80e30 100644
Binary files a/icons/obj/robot_storage.dmi and b/icons/obj/robot_storage.dmi differ
diff --git a/icons/obj/sleeper.dmi b/icons/obj/sleeper.dmi
index 84eacca7738..c0d8d168b00 100644
Binary files a/icons/obj/sleeper.dmi and b/icons/obj/sleeper.dmi differ