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: 		icon_state = "[base_state]1-p"
  
  //Don't want to render prison breaks impossible
  /obj/machinery/flasher/attackby(obj/item/weapon/W, mob/user)
  	if (istype(W, /obj/item/weapon/wirecutters))
  		if (bulb)
  			playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1)
  			user.visible_message("<span class='warning'>[user] has disconnected [src]'s flashbulb!</span>", "<span class='notice'>You disconnect [src]'s flashbulb!</span>")
  			bulb.loc = src.loc
  			bulb = null
  			power_change()
  
  	else if (istype(W, /obj/item/device/flash))
  		if (!bulb)
  			user.visible_message("<span class='notice'>[user] installs [W] into [src].</span>", "<span class='notice'>You install [W] into [src].</span>")
  			user.drop_item()
  			W.loc = src
  			bulb = W
  			power_change()
  		else
  			user << "<span class='notice'>A flashbulb is already installed in [src].</span>"
  	add_fingerprint(user)
  
  //Let the AI trigger them directly.
  /obj/machinery/flasher/attack_ai()
  	if (anchored)
  		return flash()
  	else
  		return
  
  /obj/machinery/flasher/proc/flash()
  	if (!powered() || !bulb)
  		return
  
  	if (bulb.broken || (last_flash && world.time < src.last_flash + 150))
  		return
  
  	playsound(src.loc, 'sound/weapons/flash.ogg', 100, 1)
  	flick("[base_state]_flash", src)
  	last_flash = world.time
  	use_power(1000)
  
  	for (var/mob/O in viewers(src, null))
  