anchor.diff:  //If we are setting luminosity to 0 the light will be cleaned up by the controller and garbage collected once all its
   //queues are complete.
   //if we have a light already it is merely updated, rather than making a new one.
  -//The second arg allows you to scale the light cap for calculating falloff.
  -
  +//The second arg allows you to scale the light cap for calculating falloff. (0 for default, null for no change)
   /atom/proc/SetLuminosity(new_luminosity, new_cap)
  -	if (!light)
  -		if (new_luminosity <= 0)
  +	if(new_luminosity < 0)
  +		new_luminosity = 0
  +
  +	if(!light)
  +		if(!new_luminosity)
   			return
   		light = new(src)
  -<<<<<<< HEAD
  -
  -	light.UpdateLuminosity(new_luminosity, new_cap)
  -=======
  -	light.UpdateLuminosity(new_luminosity, new_cap)
  -
  ->>>>>>> refs/remotes/HippieStationCode/master
  +	else
  +		if(light.radius == new_luminosity && (new_cap == null || light.cap == new_cap))
  +			return
  +	light.radius = new_luminosity
  +	luminosity = new_luminosity
  +	if (new_cap != null)
  +		light.cap = new_cap
  +	light.changed()
   
   /atom/proc/AddLuminosity(delta_luminosity)
   	if(light)
  -		SetLuminosity(light.luminosity + delta_luminosity)
  +		SetLuminosity(light.radius + delta_luminosity)
   	else
   		SetLuminosity(delta_luminosity)
   
  
positive.code: 
  
  #define LIGHTING_MAX_LUMINOSITY_STATIC	8	//Maximum luminosity to reduce lag.
  #define LIGHTING_MAX_LUMINOSITY_MOBILE	7	//Moving objects have a lower max luminosity since these update more often. (lag reduction)
  #define LIGHTING_MAX_LUMINOSITY_MOB		6
  #define LIGHTING_MAX_LUMINOSITY_TURF	8	//turfs are static too, why was this 1?!
  
  //caps luminosity effects max-range based on what type the light's owner is.
  
negative.code: 		UpdateAffectingLights()
  	if(luminosity)
  		light = new(src)
  //		luminosity = 0
  
  //Objects with opacity will trigger nearby lights to update at next SSlighting fire
  /atom/movable/Destroy()
  