diff --git a/code/game/machinery/tcomms/_base.dm b/code/game/machinery/tcomms/_base.dm index 2f6702eaa8c..3fa0c31b559 100644 --- a/code/game/machinery/tcomms/_base.dm +++ b/code/game/machinery/tcomms/_base.dm @@ -30,7 +30,7 @@ GLOBAL_LIST_EMPTY(tcomms_machines) /obj/machinery/tcomms name = "Telecommunications Device" desc = "Someone forgot to say what this thingy does. Please yell at a coder" - icon = 'icons/obj/tcomms.dmi' + icon = 'icons/obj/machines/telecomms.dmi' icon_state = "error" density = TRUE anchored = TRUE @@ -85,10 +85,8 @@ GLOBAL_LIST_EMPTY(tcomms_machines) /obj/machinery/tcomms/update_icon() . = ..() // Show the off sprite if were inactive, ion'd or unpowered - if(!active || (stat & NOPOWER) || ion) - icon_state = "[initial(icon_state)]_off" - else - icon_state = initial(icon_state) + var/functioning = (active && !(stat & NOPOWER) && !ion) + icon_state = "[initial(icon_state)][panel_open ? "_o" : null][functioning ? null : "_off"]" // Attack overrides. These are needed so the UIs can be opened up // diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 2cc58c8e68e..3c2e2cfda0c 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -45,18 +45,19 @@ GLOBAL_LIST_EMPTY(message_servers) priority = "Undetermined" /obj/machinery/message_server - icon = 'icons/obj/machines/research.dmi' - icon_state = "server" name = "Messaging Server" - density = 1 - anchored = 1.0 + desc = "A machine that processes and routes PDA and request console messages." + icon = 'icons/obj/machines/telecomms.dmi' + icon_state = "message_server" + density = TRUE + anchored = TRUE use_power = IDLE_POWER_USE idle_power_usage = 10 active_power_usage = 100 var/list/datum/data_pda_msg/pda_msgs = list() var/list/datum/data_rc_msg/rc_msgs = list() - var/active = 1 + var/active = TRUE var/decryptkey = "password" /obj/machinery/message_server/New() @@ -64,22 +65,18 @@ GLOBAL_LIST_EMPTY(message_servers) decryptkey = GenerateKey() send_pda_message("System Administrator", "system", "This is an automated message. The messaging system is functioning correctly.") ..() - return /obj/machinery/message_server/Destroy() GLOB.message_servers -= src return ..() /obj/machinery/message_server/process() - //if(decryptkey == "password") - // decryptkey = generateKey() - if(active && (stat & (BROKEN|NOPOWER))) - active = 0 + if(active && (stat & (BROKEN | NOPOWER))) + active = FALSE + update_icon() return if(prob(3)) playsound(loc, "computer_ambience", 50, 1) - update_icon() - return /obj/machinery/message_server/proc/send_pda_message(recipient = "", sender = "", message = "") pda_msgs += new/datum/data_pda_msg(recipient,sender,message) @@ -114,28 +111,20 @@ GLOBAL_LIST_EMPTY(message_servers) RC.set_light(2) /obj/machinery/message_server/attack_hand(user as mob) -// to_chat(user, "There seem to be some parts missing from this server. They should arrive on the station in a few days, give or take a few CentComm delays.") to_chat(user, "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"]") active = !active update_icon() - return - /obj/machinery/message_server/update_icon() - if((stat & (BROKEN|NOPOWER))) - icon_state = "server-nopower" - else if(!active) - icon_state = "server-off" - else - icon_state = "server-on" + ..() + icon_state = "[initial(icon_state)][panel_open ? "_o" : null][active ? null : "_off"]" - return /obj/machinery/blackbox_recorder icon = 'icons/obj/stationobjs.dmi' icon_state = "blackbox" name = "Blackbox Recorder" - density = 1 - anchored = 1.0 + density = TRUE + anchored = TRUE use_power = IDLE_POWER_USE idle_power_usage = 10 active_power_usage = 100 diff --git a/code/modules/research/rdmachines.dm b/code/modules/research/rdmachines.dm index c82ce4dbf50..ac78e892c7e 100644 --- a/code/modules/research/rdmachines.dm +++ b/code/modules/research/rdmachines.dm @@ -122,15 +122,14 @@ /obj/machinery/r_n_d/proc/AfterMaterialInsert(type_inserted, id_inserted, amount_inserted) var/stack_name if(ispath(type_inserted, /obj/item/stack/ore/bluespace_crystal)) - stack_name = "bluespace polycrystal" + stack_name = "bluespace" use_power(MINERAL_MATERIAL_AMOUNT / 10) else var/obj/item/stack/S = type_inserted stack_name = initial(S.name) use_power(min(1000, (amount_inserted / 100))) - overlays += "[initial(name)]_[stack_name]" - sleep(10) - overlays -= "[initial(name)]_[stack_name]" + add_overlay("protolathe_[stack_name]") + addtimer(CALLBACK(src, /atom/proc/cut_overlay, "protolathe_[stack_name]"), 10) /obj/machinery/r_n_d/proc/check_mat(datum/design/being_built, M) return 0 // number of copies of design beign_built you can make with material M diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index 2ca1509b431..74321993be5 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -1,7 +1,7 @@ /obj/machinery/r_n_d/server name = "R&D Server" icon = 'icons/obj/machines/research.dmi' - icon_state = "server" + icon_state = "RD-server" var/datum/research/files var/health = 100 var/list/id_with_upload = list() //List of R&D consoles with upload to server access. @@ -44,6 +44,16 @@ tot_rating += SP.rating heat_gen /= max(1, tot_rating) +/obj/machinery/r_n_d/server/update_icon() + if(stat & NOPOWER) + icon_state = "[initial(icon_state)]-off" + return + icon_state = "[initial(icon_state)]-on" + +/obj/machinery/r_n_d/server/power_change() + . = ..() + update_icon() + /obj/machinery/r_n_d/server/proc/initialize_serv() if(!files) files = new /datum/research(src) @@ -137,7 +147,7 @@ shock(user,50) if(istype(O, /obj/item/screwdriver)) - default_deconstruction_screwdriver(user, "server_o", "server", O) + default_deconstruction_screwdriver(user, "RD-server-on_t", "RD-server-on", O) return 1 if(exchange_parts(user, O)) diff --git a/icons/obj/machines/research.dmi b/icons/obj/machines/research.dmi index b5ba742e661..65d9a87c7ed 100644 Binary files a/icons/obj/machines/research.dmi and b/icons/obj/machines/research.dmi differ diff --git a/icons/obj/machines/telecomms.dmi b/icons/obj/machines/telecomms.dmi new file mode 100644 index 00000000000..8353fa754ab Binary files /dev/null and b/icons/obj/machines/telecomms.dmi differ diff --git a/icons/obj/robotics.dmi b/icons/obj/robotics.dmi index b50e4c35690..8d0627aa958 100644 Binary files a/icons/obj/robotics.dmi and b/icons/obj/robotics.dmi differ diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi index 9c3e072c74d..ada2a38fa28 100755 Binary files a/icons/obj/stationobjs.dmi and b/icons/obj/stationobjs.dmi differ diff --git a/icons/obj/tcomms.dmi b/icons/obj/tcomms.dmi deleted file mode 100644 index 651de700b35..00000000000 Binary files a/icons/obj/tcomms.dmi and /dev/null differ