Fix various runtimes (#48563)

The grille one could use a lower level solution eventually. As in 
separation of simple animal attack/visuals/aftereffects but that's 
bigger refactor.

* Fixes explosion dismemberment runtime.
* Fixes removing pen from PDA runtime.
* Mulebot bullet act runtime.
* Trying to refuel plasmacutter with fuel runtime.
* Fixes grille runtime.
* Teslium reaction runtime
* lavaland elite win runtime
This commit is contained in:
AnturK
2020-01-04 22:13:10 -08:00
committed by Tad Hardesty
parent 44618a4d85
commit e624cabe5d
7 changed files with 41 additions and 37 deletions
@@ -157,7 +157,7 @@
/mob/living/simple_animal/bot/mulebot/bullet_act(obj/projectile/Proj)
. = ..()
if(.)
if(. && !QDELETED(src)) //Got hit and not blown up yet.
if(prob(50) && !isnull(load))
unload(0)
if(prob(25))
@@ -233,7 +233,8 @@ While using this makes the system rely on OnFire, it still gives options for tim
INVOKE_ASYNC(src, .proc/fighters_check) //Checks to see if our fighters died.
INVOKE_ASYNC(src, .proc/arena_trap) //Gets another arena trap queued up for when this one runs out.
INVOKE_ASYNC(src, .proc/border_check) //Checks to see if our fighters got out of the arena somehow.
addtimer(CALLBACK(src, .proc/arena_checks), 50)
if(!QDELETED(src))
addtimer(CALLBACK(src, .proc/arena_checks), 50)
/obj/structure/elite_tumor/proc/fighters_check()
if(activator != null && activator.stat == DEAD || activity == TUMOR_ACTIVE && QDELETED(activator))