From c6480bdef1b1e0feb4bb439f42e3918e53d9bacd Mon Sep 17 00:00:00 2001 From: nikothedude <59709059+nikothedude@users.noreply.github.com> Date: Fri, 29 May 2026 13:01:55 -0400 Subject: [PATCH] Fix two more quirks that fail to properly remove themselves (#5697) ## About The Pull Request Dirty, and Sharp Claws. Dirty didnt implement remove at all. Sharp claws assumed initial() worked on lists. It does not. ## Why It's Good For The Game bugs bad ## Proof Of Testing
Screenshots/Videos image
## Changelog :cl: fix: Dirty and Sharp Claws now properly get removed /:cl: --- modular_skyrat/modules/quirks/good.dm | 4 ++-- modular_zubbers/code/datums/quirks/negative_quirks/dirty.dm | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/modular_skyrat/modules/quirks/good.dm b/modular_skyrat/modules/quirks/good.dm index 9da5ac186d8..b2566289ac5 100644 --- a/modular_skyrat/modules/quirks/good.dm +++ b/modular_skyrat/modules/quirks/good.dm @@ -54,7 +54,7 @@ var/mob/living/carbon/human/human_holder = quirk_holder var/obj/item/bodypart/arm/left/left_arm = human_holder.get_bodypart(BODY_ZONE_L_ARM) if(left_arm) - left_arm.unarmed_attack_verbs = initial(left_arm.unarmed_attack_verbs) + left_arm.unarmed_attack_verbs = list("punch") left_arm.unarmed_attack_effect = initial(left_arm.unarmed_attack_effect) left_arm.unarmed_attack_sound = initial(left_arm.unarmed_attack_sound) left_arm.unarmed_miss_sound = initial(left_arm.unarmed_miss_sound) @@ -62,7 +62,7 @@ var/obj/item/bodypart/arm/right/right_arm = human_holder.get_bodypart(BODY_ZONE_R_ARM) if(right_arm) - right_arm.unarmed_attack_verbs = initial(right_arm.unarmed_attack_verbs) + right_arm.unarmed_attack_verbs = list("punch") right_arm.unarmed_attack_effect = initial(right_arm.unarmed_attack_effect) right_arm.unarmed_attack_sound = initial(right_arm.unarmed_attack_sound) right_arm.unarmed_miss_sound = initial(right_arm.unarmed_miss_sound) diff --git a/modular_zubbers/code/datums/quirks/negative_quirks/dirty.dm b/modular_zubbers/code/datums/quirks/negative_quirks/dirty.dm index 2b9ca98f1c5..6ddc446aa31 100644 --- a/modular_zubbers/code/datums/quirks/negative_quirks/dirty.dm +++ b/modular_zubbers/code/datums/quirks/negative_quirks/dirty.dm @@ -83,6 +83,11 @@ return ..() +/datum/quirk/dirty/remove() + UnregisterSignal(quirk_holder, list(COMSIG_ATOM_EXAMINE, COMSIG_ATOM_POST_CLEAN, COMSIG_COMPONENT_CLEAN_ACT, COMSIG_MOVABLE_MOVED, COMSIG_LIVING_SEARCHED_TRASH_PILE, COMSIG_LIVING_CHECK_BLOCK)) + + return ..() + /datum/quirk/dirty/proc/searched_trash_pile(atom/signal_source, obj/structure/trash_pile/trash) SIGNAL_HANDLER