anchor.diff:  	else // Timed decay
   		myseed.endurance -= 1
   		if (myseed.endurance > 0)
  -			addtimer(CALLBACK(src, .proc/Decay), delay_decay, FALSE) // Recall decay timer
  +			addtimer(CALLBACK(src, .proc/Decay), delay_decay, TIMER_UNIQUE|TIMER_NO_HASH_WAIT) // Recall decay timer
   			return
   	if (myseed.endurance < 1) // Plant is gone
   		qdel(src)
  
positive.code: 			child.generation = generation + 1
  			shrooms_planted++
  
  			CHECK_TICK
  	if(shrooms_planted <= myseed.yield) //if we didn't get all possible shrooms planted, try again later
  		myseed.adjust_yield(-shrooms_planted)
  		addtimer(CALLBACK(src, .proc/Spread), delay_spread)
  
  /obj/structure/glowshroom/proc/CalcDir(turf/location = loc)
  	var/direction = 16
  
negative.code: 	var/spreadIntoAdjacentChance = 75
  	/// Internal seed of the glowshroom, stats are stored here
  	var/obj/item/seeds/myseed = /obj/item/seeds/glowshroom
  
  	/// If we fail to spread this many times we stop trying to spread
  	var/max_failed_spreads = 5
  	/// Turfs where the glowshroom cannot spread to
  	var/static/list/blacklisted_glowshroom_turfs = typecacheof(list(
  	/turf/open/lava,
  