From 5ffa49d994132dd3ad72502d8acfb4507c2a40b3 Mon Sep 17 00:00:00 2001 From: PsiOmegaDelta Date: Wed, 9 Dec 2015 12:38:17 +0100 Subject: [PATCH] Blob tweaks. The blob no longer holds the entire obj process hostage while it sleeps. The blob now respects its own growth limit. Fixes #11627. Blobs still grow in an X-shape but this should now be much less distinct. --- code/modules/blob/blob.dm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/code/modules/blob/blob.dm b/code/modules/blob/blob.dm index a2de592b84c..72ee0daee6f 100644 --- a/code/modules/blob/blob.dm +++ b/code/modules/blob/blob.dm @@ -120,7 +120,8 @@ if(prob(health)) expand(T) return - B.pulse(forceLeft - 1, dirs) + if(forceLeft) + B.pulse(forceLeft - 1, dirs) /obj/effect/blob/bullet_act(var/obj/item/projectile/Proj) if(!Proj) @@ -158,6 +159,7 @@ fire_resist = 2 expandType = /obj/effect/blob/shield + var/blob_may_process = 1 /obj/effect/blob/core/update_icon() return @@ -171,10 +173,16 @@ return ..() /obj/effect/blob/core/process() + set waitfor = 0 + if(!blob_may_process) + return + blob_may_process = 0 + sleep(0) pulse(20, list(NORTH, EAST)) pulse(20, list(NORTH, WEST)) pulse(20, list(SOUTH, EAST)) pulse(20, list(SOUTH, WEST)) + blob_may_process = 1 /obj/effect/blob/shield name = "strong blob"