diff --git a/code/ATMOSPHERICS/components/binary_devices/circulator.dm b/code/ATMOSPHERICS/components/binary_devices/circulator.dm index 044d6b0c13..72e623351a 100644 --- a/code/ATMOSPHERICS/components/binary_devices/circulator.dm +++ b/code/ATMOSPHERICS/components/binary_devices/circulator.dm @@ -6,8 +6,8 @@ /obj/machinery/atmospherics/binary/circulator name = "circulator" desc = "A gas circulator turbine and heat exchanger." - icon = 'icons/obj/pipes.dmi' - icon_state = "circ-off" + icon = 'icons/obj/power.dmi' + icon_state = "circ-unassembled" anchored = 0 pipe_flags = PIPING_DEFAULT_LAYER_ONLY|PIPING_ONE_PER_TURF @@ -22,6 +22,7 @@ var/last_stored_energy_transferred = 0 var/volume_capacity_used = 0 var/stored_energy = 0 + var/temperature_overlay density = 1 @@ -76,15 +77,19 @@ update_icon() /obj/machinery/atmospherics/binary/circulator/update_icon() - if(stat & (BROKEN|NOPOWER) || !anchored) - icon_state = "circ-p" - else if(last_pressure_delta > 0 && recent_moles_transferred > 0) - if(last_pressure_delta > 5*ONE_ATMOSPHERE) - icon_state = "circ-run" + icon_state = anchored ? "circ-assembled" : "circ-unassembled" + cut_overlays() + if (stat & (BROKEN|NOPOWER) || !anchored) + return 1 + if (last_pressure_delta > 0 && recent_moles_transferred > 0) + if (temperature_overlay) + add_overlay(temperature_overlay) + if (last_pressure_delta > 5*ONE_ATMOSPHERE) + add_overlay("circ-run") else - icon_state = "circ-slow" + add_overlay("circ-slow") else - icon_state = "circ-off" + add_overlay("circ-off") return 1 @@ -97,6 +102,7 @@ "You hear a ratchet.") if(anchored) + temperature_overlay = null if(dir & (NORTH|SOUTH)) initialize_directions = NORTH|SOUTH else if(dir & (EAST|WEST)) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 4b86bc9a9a..66cc7aa367 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -582,9 +582,12 @@ obj/structure/cable/proc/cableColor(var/colorC) else if(amount == 2) icon_state = "coil2" name = "cable piece" - else + else if(amount > 2 && amount != max_amount) icon_state = "coil" - name = "cable coil" + name = initial(name) + else + icon_state = "coil-max" + name = initial(name) /obj/item/stack/cable_coil/proc/set_cable_color(var/selected_color, var/user) if(!selected_color) diff --git a/code/modules/power/generator.dm b/code/modules/power/generator.dm index fd52cd461d..d9186b548f 100644 --- a/code/modules/power/generator.dm +++ b/code/modules/power/generator.dm @@ -3,7 +3,7 @@ GLOBAL_LIST_EMPTY(all_turbines) /obj/machinery/power/generator name = "thermoelectric generator" desc = "It's a high efficiency thermoelectric generator." - icon_state = "teg" + icon_state = "teg-unassembled" density = 1 anchored = 0 @@ -68,13 +68,26 @@ GLOBAL_LIST_EMPTY(all_turbines) circ2 = null /obj/machinery/power/generator/proc/updateicon() - if(stat & (NOPOWER|BROKEN)) - overlays.Cut() + icon_state = anchored ? "teg-assembled" : "teg-unassembled" + cut_overlays() + if (circ1) + circ1.temperature_overlay = null + if (circ2) + circ2.temperature_overlay = null + if (stat & (NOPOWER|BROKEN)) + return 1 else - overlays.Cut() - - if(lastgenlev != 0) - overlays += image('icons/obj/power.dmi', "teg-op[lastgenlev]") + if (lastgenlev != 0) + add_overlay("teg-op[lastgenlev]") + if (circ1 && circ2) + var/extreme = (lastgenlev > 9) ? "ex" : "" + if (circ1.last_temperature < circ2.last_temperature) + circ1.temperature_overlay = "circ-[extreme]cold" + circ2.temperature_overlay = "circ-[extreme]hot" + else + circ1.temperature_overlay = "circ-[extreme]hot" + circ2.temperature_overlay = "circ-[extreme]cold" + return 1 /obj/machinery/power/generator/process() if(!circ1 || !circ2 || !anchored || stat & (BROKEN|NOPOWER)) diff --git a/icons/obj/pipes.dmi b/icons/obj/pipes.dmi index dc682dacb0..c664f7a1a5 100644 Binary files a/icons/obj/pipes.dmi and b/icons/obj/pipes.dmi differ diff --git a/icons/obj/power.dmi b/icons/obj/power.dmi index e5db3aeb3e..33fc5e8dcc 100644 Binary files a/icons/obj/power.dmi and b/icons/obj/power.dmi differ