[MIRROR] Fixes some potential sleeps as detected by SpacemanDMM improvements (#1216)

* Fix some potential sleeps as detected by SpacemanDMM improvements (#54230)

overrides weren't detected by should not sleep, i think i've mostly
fixed that with SpaceManiac/SpacemanDMM#214

Some of these are wacky but overall this pr is harmless

signals shouldnt sleep even in weird 1 in a million situations or due
to other people adding bad code

overrides of changeling can_sting() use alert() and input() and that's
just too fucked for me to fix in this pr

* Fixes some potential sleeps as detected by SpacemanDMM improvements

Co-authored-by: spookydonut <github@spooksoftware.com>
This commit is contained in:
SkyratBot
2020-10-09 18:28:59 +02:00
committed by GitHub
co-authored by spookydonut
parent a76adbfbb6
commit 7eeaefe645
28 changed files with 111 additions and 95 deletions
+1 -1
View File
@@ -573,7 +573,7 @@
if(total_damage >= max_damage * disable_threshold) //Easy limb disable disables the limb at 40% health instead of 0%
if(!last_maxed)
if(owner.stat < UNCONSCIOUS)
owner.emote("scream")
INVOKE_ASYNC(owner, /mob.proc/emote, "scream")
last_maxed = TRUE
set_disabled(TRUE)
return
@@ -17,7 +17,7 @@
affecting.receive_damage(clamp(brute_dam/2 * affecting.body_damage_coeff, 15, 50), clamp(burn_dam/2 * affecting.body_damage_coeff, 0, 50), wound_bonus=CANT_WOUND) //Damage the chest based on limb's existing damage
if(!silent)
C.visible_message("<span class='danger'><B>[C]'s [name] is violently dismembered!</B></span>")
C.emote("scream")
INVOKE_ASYNC(C, /mob.proc/emote, "scream")
playsound(get_turf(C), 'sound/effects/dismember.ogg', 80, TRUE)
SEND_SIGNAL(C, COMSIG_ADD_MOOD_EVENT, "dismembered", /datum/mood_event/dismembered)
drop_limb()