anchor.diff:  			if(src.total_smoke > 20)
   				return
   			spawn(0)
  -				if(holder)
  +				if(holder && !istype(holder,/datum))
   					src.location = get_turf(holder)
   				var/iterator = pick(0,1,1,1,2,2,2,3)
   				var/obj/effect/effect/chem_smoke/smoke = new /obj/effect/effect/chem_smoke(src.location)
  
positive.code: 			if(src.total_smoke > 20)
  				return
  			spawn(0)
  				if(holder)
  					src.location = get_turf(holder)
  				var/obj/effect/effect/harmless_smoke/smoke = new /obj/effect/effect/harmless_smoke(src.location)
  				src.total_smoke++
  
negative.code: 		var/i = 0
  		for(i=0, i<src.number, i++)
  			spawn(0)
  				if(holder && !istype(holder,/datum))
  					src.location = get_turf(holder)
  				var/obj/effect/effect/steam/steam = new /obj/effect/effect/steam(src.location)
  				var/direction
  