diff --git a/code/modules/reagents/machinery/chem_master.dm b/code/modules/reagents/machinery/chem_master.dm index b14bcc40c66..b00ed1571bc 100644 --- a/code/modules/reagents/machinery/chem_master.dm +++ b/code/modules/reagents/machinery/chem_master.dm @@ -8,6 +8,9 @@ layer = BELOW_OBJ_LAYER //So bottles/pills reliably appear above it use_power = IDLE_POWER_USE idle_power_usage = 20 + light_range = 1 + light_power = 0.5 + light_color = LIGHT_COLOR_ELECTRIC_CYAN var/obj/item/reagent_containers/beaker = null var/obj/item/storage/pill_bottle/loaded_pill_bottle = null @@ -84,12 +87,13 @@ updateUsrDialog() /obj/machinery/chem_master/proc/transfer_chemicals(obj/dest, obj/source, amount, reagent_id) - if(istype(source)) - if(amount > 0 && source.reagents && amount <= source.reagents.maximum_volume) - if(!istype(dest)) - source.reagents.remove_reagent(reagent_id, amount) - else if(dest.reagents) - source.reagents.trans_id_to(dest, reagent_id, amount) + if(!istype(source)) + return + if(amount > 0 && source.reagents && amount <= source.reagents.maximum_volume) + if(!istype(dest)) + source.reagents.remove_reagent(reagent_id, amount) + else if(dest.reagents) + source.reagents.trans_id_to(dest, reagent_id, amount) /obj/machinery/chem_master/proc/replace_beaker(mob/user) if(beaker) @@ -102,7 +106,6 @@ icon_state = "mixer0" return TRUE - /obj/machinery/chem_master/Topic(href, href_list) . = ..() if(.) @@ -112,12 +115,10 @@ var/mob/living/user = usr -//RUTGMC edit start - marines can use chem machines once again if(user.skills.getRating("medical") < SKILL_MEDICAL_NOVICE) to_chat(user, span_notice("You start fiddling with \the [src]...")) if(!do_after(user, SKILL_TASK_EASY, IGNORE_HELD_ITEM, src, BUSY_ICON_UNSKILLED)) return -//RUTGMC edit end if (href_list["ejectp"]) if(loaded_pill_bottle) @@ -406,6 +407,13 @@ popup.set_content(dat) popup.open() +/obj/machinery/chem_master/update_icon() + . = ..() + if(machine_stat & (NOPOWER)) + set_light(0) + else + set_light(initial(light_range)) + /obj/machinery/chem_master/update_icon_state() . = ..() if(machine_stat & BROKEN) @@ -415,6 +423,13 @@ else icon_state = (beaker?"[base_state]1":"[base_state]0") +/obj/machinery/chem_master/update_overlays() + . = ..() + if(machine_stat & (NOPOWER)) + return + . += emissive_appearance(icon, "[icon_state]_emissive", alpha = src.alpha) + . += mutable_appearance(icon, "[icon_state]_emissive", alpha = src.alpha) + /obj/machinery/chem_master/condimaster name = "CondiMaster 3000" condi = TRUE diff --git a/icons/obj/machines/chemical_machines.dmi b/icons/obj/machines/chemical_machines.dmi index dca4a403525..29f818b46d4 100644 Binary files a/icons/obj/machines/chemical_machines.dmi and b/icons/obj/machines/chemical_machines.dmi differ