anchor.diff:  	active_power_usage = 50
   
   	var/arrival = "%PERSON has signed up as %RANK"
  +	var/arrivalToggle = 1
   	var/newhead = "%PERSON, %RANK, is the department head."
  +	var/newheadToggle = 1
  +
  +	var/greenlight = "green_light"
  +	var/pinklight = "pink_light"
  +	var/errorlight = "error_light"
   
   /obj/machinery/announcement_system/New()
   	..()
  
positive.code: 
  	var/message
  
  	if(message_type == "ARRIVAL")
  		message = CompileText(arrival, user, rank)
  
  		spawn(0)
  			overlays += "green_light" //this is += instead of |= because if we get lots of arrivals at once, we want to keep the light up for the proper duration.
  			sleep(3)
  			overlays.Remove("green_light")
  
  	else if(message_type == "NEWHEAD")
  		message = CompileText(newhead, user, rank)
  
  		spawn(0)
  			overlays += "pink_light" //see above for why "+=" instead of "|="
  			sleep(3)
  			overlays.Remove("pink_light")
  
  	if(channels.len == 0)
  		radio.talk_into(src, message, null, list(SPAN_ROBOT))
  
negative.code: 		if(NewMessage)
  			newhead = NewMessage
  
  	else if(href_list["NewheadT-Topic"])
  		newheadToggle = !newheadToggle
  		update_icon()
  	else if(href_list["ArrivalT-Topic"])
  		arrivalToggle = !arrivalToggle
  		update_icon()
  
  	add_fingerprint(usr)
  	Interact(usr)
  	return
  