anchor.diff:  					R.reaction_obj(A, R.volume+volume_modifier)
   	return
   
  -datum/reagents/proc/add_reagent(var/reagent, var/amount, var/list/data=null)
  +datum/reagents/proc/add_reagent(var/reagent, var/amount,var/temp = 270, var/list/data=null)
   	if(!isnum(amount)) return 1
   	update_total()
   	if(total_volume + amount > maximum_volume) amount = (maximum_volume - total_volume) //Doesnt fit in. Make it disappear. Shouldnt happen. Will happen.
  -
  +	//adjust temperature
  +	if(total_volume > 0)
  +		var/mult = amount/(total_volume + amount)
  +		var/temp_dif = present_machines[1] - temp//assume it's 270 , I can't be bothered to change all the add_reagent procs atm
  +		present_machines[1] -= temp_dif * mult// apply the new temperature to the current reagent holder
  +	else
  +		present_machines[1] = temp
   	for(var/A in reagent_list)
   
   		var/datum/reagent/R = A
   		if (R.id == reagent)
   			R.volume += amount
  +
   			update_total()
   			my_atom.on_reagent_change()
   			R.on_merge(data)
  
positive.code: 
  					if(M.Uses > 0) // added a limit to slime cores -- Muskets requested this
  						matching_other = 1
  
  
  
  
  				if(total_matching_reagents == total_required_reagents && total_matching_catalysts == total_required_catalysts && matching_container && matching_other)
  					var/multiplier = min(multipliers)
  					for(var/B in C.required_reagents)
  						remove_reagent(B, (multiplier * C.required_reagents[B]), safety = 1)
  
  					var/created_volume = C.result_amount*multiplier
  					if(C.result)
  						feedback_add_details("chemical_reaction","[C.result]|[C.result_amount*multiplier]")
  						multiplier = max(multiplier, 1) //this shouldnt happen ...
  						add_reagent(C.result, C.result_amount*multiplier)
  
  					var/list/seen = viewers(4, get_turf(my_atom))
  
  
negative.code: 
  					C.on_reaction(src, created_volume)
  					reaction_occured = 1
  					if(over_reacted)//once everything is done a big wafting cloud of toxic fumes is produced , lovely
  						create_smoke(src, 10)
  					break
  
  	while(reaction_occured)
  