anchor.diff:  		qdel(src)
   		return
   
  -	radiate(atoms, FLOOR(strength, 1))
  -
  +	if(radiate(atoms, FLOOR(min(strength,remaining_contam), 1)))
  +		//oof ow ouch
  +		remaining_contam = max(0,remaining_contam-((min(strength,remaining_contam)-RAD_MINIMUM_CONTAMINATION) * RAD_CONTAMINATION_STR_COEFFICIENT))
   	check_obstructions(atoms) // reduce our overall strength if there are radiation insulators
   
   /datum/radiation_wave/proc/get_rad_atoms()
  
positive.code: 	var/turf/master_turf //The center of the wave
  	var/steps=0 //How far we've moved
  	var/intensity //How strong it was originaly
  	var/range_modifier //Higher than 1 makes it drop off faster, 0.5 makes it drop off half etc
  	var/move_dir //The direction of movement
  	var/list/__dirs //The directions to the side of the wave, stored for easy looping
  
negative.code: 			))
  		if(!can_contaminate || blacklisted[thing.type])
  			continue
  		if(CHECK_BITFIELD(thing.rad_flags, RAD_NO_CONTAMINATE) || SEND_SIGNAL(thing, COMSIG_ATOM_RAD_CONTAMINATING, strength) & COMPONENT_BLOCK_CONTAMINATION)
  			continue
  		contam_atoms += thing
  	var/did_contam = 0
  	if(can_contam)
  		var/rad_strength = ((strength-RAD_MINIMUM_CONTAMINATION) * RAD_CONTAMINATION_STR_COEFFICIENT)/contam_atoms.len
  		for(var/k in 1 to contam_atoms.len)
  			var/atom/thing = contam_atoms[k]
  			thing.AddComponent(/datum/component/radioactive, rad_strength, source)
  			did_contam = 1
  	return did_contam
  