anchor.diff:  /mob/living/simple_animal/hostile/megafauna/hierophant/AttackingTarget()
   	if(!blinking)
   		if(target && isliving(target))
  -			INVOKE_ASYNC(src, .proc/melee_blast, get_turf(target)) //melee attacks on living mobs produce a 3x3 blast
  -		return ..()
  +			var/mob/living/L = target
  +			if(L.stat != DEAD)
  +				if(ranged_cooldown <= world.time)
  +					calculate_rage()
  +					ranged_cooldown = world.time + max(5, ranged_cooldown_time - anger_modifier * 0.75)
  +					INVOKE_ASYNC(src, .proc/burst, get_turf(src))
  +				else
  +					burst_range = 3
  +					INVOKE_ASYNC(src, .proc/burst, get_turf(src), 0.25) //melee attacks on living mobs cause it to release a fast burst if on cooldown
  +			else
  +				devour(L)
  +		else
  +			return ..()
   
   /mob/living/simple_animal/hostile/megafauna/hierophant/DestroySurroundings()
   	if(!blinking)
  
positive.code: 							pickedtarget = target
  							if(QDELETED(pickedtarget) || (istype(pickedtarget) && pickedtarget.stat == DEAD))
  								break //main target is dead and we're out of living targets, cancel out
  						var/obj/effect/temp_visual/hierophant/chaser/C = new /obj/effect/temp_visual/hierophant/chaser(loc, src, pickedtarget, chaser_speed, FALSE)
  						C.moving = 3
  						C.moving_dir = pick_n_take(cardinal_copy)
  						sleep(8 + target_slowness)
  
negative.code: 		var/dist = get_dist(original, T)
  		if(dist > last_dist)
  			last_dist = dist
  			sleep(1 + min(burst_range - last_dist, 12) * spread_speed) //gets faster as it gets further out
  		new /obj/effect/temp_visual/hierophant/blast(T, src, FALSE)
  
  /mob/living/simple_animal/hostile/megafauna/hierophant/AltClickOn(atom/A) //player control handler(don't give this to a player holy fuck)
  