diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index 45af0693ed..edf9a3035d 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -1,79 +1,71 @@ -// the light switch -// can have multiple per area -// can also operate on non-loc area through "otherarea" var -/obj/machinery/light_switch - name = "light switch" - icon = 'icons/obj/power.dmi' - icon_state = "light1" +// the light switch +// can have multiple per area +// can also operate on non-loc area through "otherarea" var +/obj/machinery/light_switch + name = "light switch" + icon = 'icons/obj/power.dmi' + icon_state = "light1" anchored = TRUE desc = "Make dark." var/on = TRUE -<<<<<<< HEAD - var/area/area = null - var/otherarea = null - // luminosity = 1 - -/obj/machinery/light_switch/Initialize() -======= var/area/area = null var/otherarea = null /obj/machinery/light_switch/Initialize() ->>>>>>> afd8bb7... Code Consistency: luminosity --> light_range (#31355) . = ..() - area = get_area(src) - - if(otherarea) - area = locate(text2path("/area/[otherarea]")) - - if(!name) - name = "light switch ([area.name])" - - on = area.lightswitch - updateicon() - -/obj/machinery/light_switch/proc/updateicon() - if(stat & NOPOWER) - icon_state = "light-p" - else - if(on) - icon_state = "light1" - else - icon_state = "light0" - -/obj/machinery/light_switch/examine(mob/user) - ..() - to_chat(user, "It is [on? "on" : "off"].") - - -/obj/machinery/light_switch/attack_paw(mob/user) - src.attack_hand(user) - -/obj/machinery/light_switch/attack_hand(mob/user) - - on = !on - - for(var/area/A in area.related) - A.lightswitch = on - A.updateicon() - - for(var/obj/machinery/light_switch/L in A) - L.on = on - L.updateicon() - - area.power_change() - -/obj/machinery/light_switch/power_change() - - if(!otherarea) - if(powered(LIGHT)) - stat &= ~NOPOWER - else - stat |= NOPOWER - - updateicon() - -/obj/machinery/light_switch/emp_act(severity) - if(!(stat & (BROKEN|NOPOWER))) - power_change() - ..() + area = get_area(src) + + if(otherarea) + area = locate(text2path("/area/[otherarea]")) + + if(!name) + name = "light switch ([area.name])" + + on = area.lightswitch + updateicon() + +/obj/machinery/light_switch/proc/updateicon() + if(stat & NOPOWER) + icon_state = "light-p" + else + if(on) + icon_state = "light1" + else + icon_state = "light0" + +/obj/machinery/light_switch/examine(mob/user) + ..() + to_chat(user, "It is [on? "on" : "off"].") + + +/obj/machinery/light_switch/attack_paw(mob/user) + src.attack_hand(user) + +/obj/machinery/light_switch/attack_hand(mob/user) + + on = !on + + for(var/area/A in area.related) + A.lightswitch = on + A.updateicon() + + for(var/obj/machinery/light_switch/L in A) + L.on = on + L.updateicon() + + area.power_change() + +/obj/machinery/light_switch/power_change() + + if(!otherarea) + if(powered(LIGHT)) + stat &= ~NOPOWER + else + stat |= NOPOWER + + updateicon() + +/obj/machinery/light_switch/emp_act(severity) + if(!(stat & (BROKEN|NOPOWER))) + power_change() + ..()