anchor.diff:  	density = 1
   
   /obj/machinery/flasher/New()
  -	if(isnull(bulb))
  -		bulb = new /obj/item/device/flash(src)
  +	bulb = new /obj/item/device/flash(src)
   
   /obj/machinery/flasher/power_change()
  -	if ( powered() && bulb && anchored)
  +	if (powered() && bulb && anchored)
   		stat &= ~NOPOWER
   		if(bulb.broken)
   			icon_state = "[base_state]1-p"
  
positive.code: 	icon_state = "launcheract"
  
  	for(var/obj/machinery/flasher/M in world)
  		if(M.id == src.id)
  			spawn()
  				M.flash()
  
  
negative.code: 			if(!O.blinded)
  				flick("flash", O:flash)
  				O.eye_stat += rand(0, 2)
  	return 1
  
  
  /obj/machinery/flasher/emp_act(severity)
  	if(stat & (BROKEN|NOPOWER))
  		..(severity)
  		return
  	if(bulb && prob(75/severity))
  		flash()
  		bulb.broken = 1
  		bulb.icon_state = "flashburnt"
  		power_change()
  	..(severity)
  
  /obj/machinery/flasher/portable/HasProximity(atom/movable/AM)
  	if (last_flash && world.time < last_flash + 150)
  		return
  
  	if(istype(AM, /mob/living/carbon))
  		var/mob/living/carbon/M = AM
  		if (M.m_intent != "walk" && anchored)
  			flash()
  
  /obj/machinery/flasher/portable/flash()
  	if(!..())
  		return
  	if(prob(4))	//Small chance to burn out on use
  		bulb.broken = 1
  		bulb.icon_state = "flashburnt"
  		power_change()
  
  /obj/machinery/flasher/portable/attackby(obj/item/weapon/W, mob/user)
  	if (istype(W, /obj/item/weapon/wrench))
  		playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
  		anchored = !anchored
  
  		if (!anchored)
  			user.show_message(text("\red [src] can now be moved."))
  			overlays.Cut()
  			power_change()
  
  		else if (anchored)
  			user.show_message(text("\red [src] is now secured."))
  			overlays += "[base_state]-s"
  			power_change()
  	else
  		..()
  
  /obj/machinery/flasher_button/attack_ai(mob/user)
  	return attack_hand(user)
  
  /obj/machinery/flasher_button/attack_paw(mob/user)
  	return attack_hand(user)
  
  /obj/machinery/flasher_button/attackby(obj/item/weapon/W, mob/user)
  	return attack_hand(user)
  
  /obj/machinery/flasher_button/attack_hand(mob/user)
  
  	if(stat & (NOPOWER|BROKEN))
  		return
  