Stunbaton delayed knockdown now respects antistuns (#21069)

* stunbaton delayed knockdown now moved into status effect

* renaming proc to keep its meaning

* made STATUS_EFFECT_DELAYED as status effect for any delayed logic, removed STATUS_EFFECT_BATONNED

* cleanup, little bug fixing

* cleanup

* whoopsie

* updates

* signal string changed

* Update code/datums/status_effects/neutral.dm

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

---------

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
HMBGERDO
2023-06-02 01:36:44 +02:00
committed by GitHub
parent bdb8039c8f
commit 02db93e37e
10 changed files with 45 additions and 6 deletions
@@ -16,6 +16,7 @@
imp_in.SetParalysis(0)
imp_in.adjustStaminaLoss(-75)
imp_in.stand_up(TRUE)
SEND_SIGNAL(imp_in, COMSIG_LIVING_CLEAR_STUNS)
imp_in.reagents.add_reagent("synaptizine", 10)
imp_in.reagents.add_reagent("omnizine", 10)
+3 -3
View File
@@ -207,7 +207,8 @@
H.SetStuttering(10 SECONDS)
ADD_TRAIT(L, TRAIT_WAS_BATONNED, user_UID) // so one person cannot hit the same person with two separate batons
addtimer(CALLBACK(src, PROC_REF(baton_knockdown), L, user_UID, knockdown_duration), knockdown_delay)
L.apply_status_effect(STATUS_EFFECT_DELAYED, knockdown_delay, CALLBACK(L, TYPE_PROC_REF(/mob/living/, KnockDown), knockdown_duration), COMSIG_LIVING_CLEAR_STUNS)
addtimer(CALLBACK(src, PROC_REF(baton_delay), L, user_UID), knockdown_delay)
SEND_SIGNAL(L, COMSIG_LIVING_MINOR_SHOCK, 33)
@@ -221,8 +222,7 @@
deductcharge(hitcost)
return TRUE
/obj/item/melee/baton/proc/baton_knockdown(mob/living/target, user_UID, knockdown_duration)
target.KnockDown(knockdown_duration)
/obj/item/melee/baton/proc/baton_delay(mob/living/target, user_UID)
REMOVE_TRAIT(target, TRAIT_WAS_BATONNED, user_UID)
/obj/item/melee/baton/emp_act(severity)