anchor.diff:  					on = 0
   
   				m.set_state(!on)
  -
  -			for(var/mob/O in viewers(src)) //tell everyone the AI is a cunt
  -				O.show_message(text("\red \The [src] stops flickering. It has been switched to the [!on ? "on": "off"] setting."), 1)
  -			user << "\red You finish reprogramming [src]. It has been switched to the [!on ? "on": "off"] setting."
  -
  -			if(m.on) //set sprite
  -				icon_state = "ebreaker_on"
  -			else
  -				icon_state = "ebreaker_off"
  +				on = m.on
  +
  +				for(var/mob/O in viewers(src)) //tell everyone the AI is a cunt
  +					O.show_message(text("\red \The [src] stops flickering. It has been switched to the [!on ? "on": "off"] setting."), 1)
  +				user << "\red You finish reprogramming [src]. It has been switched to the [!on ? "on": "off"] setting."
  +
  +			update_sprite()
   			m.busy = 0
   
   
   /obj/structure/breaker/ebreaker/attack_hand(mob/user)
  +	if(locked)
  +		user << "\The [src] is locked."
  +		return
  +
  +	if(panel_open)
  +		if(emagged)
  +			user << "You start restoring the [src] to factory settings. This may take a while."
  +			if(do_after(user, 300))
  +				emagged = 0
  +				update_sprite()
  +				return
  +		return
  +
   	for(var/obj/structure/breaker/powerswitch/m in world)
   		if(m.id == id)
   
   			if(m.busy)//prevent spam
  -				user << "\red This breaker is already being toggled."
  +				user << "\red This [src] is already being toggled."
   				return
   			..()
   
   			m.busy = 1
  +			icon_state = sprite_working
   			for(var/mob/O in viewers(src)) //tell everyone something is going on
  -				O.show_message(text("\red [user] starts reprogramming the breaker."), 1)
  +				if(O != user)
  +					O.show_message(text("\red [user] starts reprogramming the [src]."), 1)
   			user << "\red You start reprogramming [src]."
   
   			if(do_after(user, 150))//3x as long as AI toggling the breaker
  
positive.code: 					on = 0
  
  				m.set_state(!on)
  
  			for(var/mob/O in viewers(src)) //tell everyone the operation is done
  				if(O != user)
  					O.show_message(text("\red [user] reprograms [src]. It has been switched to the [!on ? "on": "off"] setting."), 1)
  			user << "\red You finish reprogramming [src]. It has been switched to the [!on ? "on": "off"] setting."
  
  			if(m.on) //set sprite
  				icon_state = "ebreaker_on"
  			else
  				icon_state = "ebreaker_off"
  			m.busy = 0
negative.code: 		for(var/obj/structure/cable/C in src.loc)
  			qdel(C)
  
  ////////////////////////
  // ELECTRONIC BREAKER //
  ////////////////////////
  
  
  /obj/structure/breaker/ebreaker
  