anchor.diff:  	var/list/idle_threads // Idle programs on background. They still receive process calls but can't be interacted with.
   	var/obj/physical = null // Object that represents our computer. It's used for Adjacent() and UI visibility checks.
   	var/has_light = FALSE //If the computer has a flashlight/LED light/what-have-you installed
  -	var/comp_light_luminosity = 3 //The brightness of that light
  -	var/comp_light_color //The color of that light
  +
  +	/// How far the computer's light can reach, is not editable by players.
  +	var/comp_light_luminosity = 3
  +	/// The built-in light's color, editable by players.
  +	var/comp_light_color = "#FFFFFF"
  +
   	var/invisible = FALSE // whether or not the tablet is invisible in messenger and other apps
   
   	var/datum/picture/saved_image // the saved image used for messaging purpose like come on dude
  
positive.code: 		return FALSE
  	comp_light_color = color
  	set_light_color(color)
  	update_light()
  	return TRUE
  
  /obj/item/modular_computer/proc/UpdateDisplay()
  
negative.code: 	return
  
  
  /obj/item/modular_computer/attackby(obj/item/attacking_item, mob/user, params)
  	// Check for ID first
  	if(istype(attacking_item, /obj/item/card/id) && InsertID(attacking_item))
  		return
  
  	// Insert a PAI.
  	if(istype(attacking_item, /obj/item/paicard) && !inserted_pai)
  		if(!user.transferItemToLoc(attacking_item, src))
  			return
  		inserted_pai = attacking_item
  		inserted_pai.slotted = TRUE
  		to_chat(user, span_notice("You slot \the [attacking_item] into [src]."))
  		return
  
  	// Scan a photo.
  	if(istype(attacking_item, /obj/item/photo))
  		var/obj/item/computer_hardware/hard_drive/hdd = all_components[MC_HDD]
  		var/obj/item/photo/pic = attacking_item
  		if(hdd)
  			for(var/datum/computer_file/program/messenger/messenger in hdd.stored_files)
  				saved_image = pic.picture
  