diff --git a/code/__DEFINES/~~bubber_defines/traits/declarations.dm b/code/__DEFINES/~~bubber_defines/traits/declarations.dm index 0f8e7df54c3..db94c6156a6 100644 --- a/code/__DEFINES/~~bubber_defines/traits/declarations.dm +++ b/code/__DEFINES/~~bubber_defines/traits/declarations.dm @@ -25,3 +25,4 @@ // Shows extended examine option when worn #define TRAIT_WORN_EXAMINE "worn_examine" +#define TRAIT_SIGN_LANGUAGE_BLOCKED "sign_language_blocked" diff --git a/code/_globalvars/traits/_traits.dm b/code/_globalvars/traits/_traits.dm index 6cd4e326d04..de05b37c0bb 100644 --- a/code/_globalvars/traits/_traits.dm +++ b/code/_globalvars/traits/_traits.dm @@ -557,6 +557,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_SPEECH_BOOSTER" = TRAIT_SPEECH_BOOSTER, "TRAIT_MINING_PARRYING" = TRAIT_MINING_PARRYING, "TRAIT_ILLUSORY_EFFECT" = TRAIT_ILLUSORY_EFFECT, + "TRAIT_SIGN_LANGUAGE_BLOCKED" = TRAIT_SIGN_LANGUAGE_BLOCKED ), /obj/item = list( "TRAIT_APC_SHOCKING" = TRAIT_APC_SHOCKING, diff --git a/code/datums/components/sign_language.dm b/code/datums/components/sign_language.dm index 054a4de4af0..34b8f041c03 100644 --- a/code/datums/components/sign_language.dm +++ b/code/datums/components/sign_language.dm @@ -332,7 +332,7 @@ #undef SIGN_HANDS_FULL #undef SIGN_ARMLESS #undef SIGN_ARMS_DISABLED -#undef SIGN_TRAIT_BLOCKED +// #undef SIGN_TRAIT_BLOCKED BUBBER CHANGE now used out of the file #undef SIGN_HANDS_COMPLETELY_RESTRAINED #undef SIGN_SLOWLY_FROM_CUFFS #undef TONE_NEUTRAL diff --git a/modular_zubbers/code/datums/components/sign_language.dm b/modular_zubbers/code/datums/components/sign_language.dm new file mode 100644 index 00000000000..9c5fa03ccba --- /dev/null +++ b/modular_zubbers/code/datums/components/sign_language.dm @@ -0,0 +1,4 @@ +/datum/component/sign_language/check_signables_state() + . = ..() + if(HAS_TRAIT(parent, TRAIT_SIGN_LANGUAGE_BLOCKED)) // BUBBER CHANGE add a trait to prevent sign language usage + return SIGN_TRAIT_BLOCKED diff --git a/modular_zubbers/code/modules/status_effects/buffs/frenzy.dm b/modular_zubbers/code/modules/status_effects/buffs/frenzy.dm index 12d9ea9b34c..12626b4da07 100644 --- a/modular_zubbers/code/modules/status_effects/buffs/frenzy.dm +++ b/modular_zubbers/code/modules/status_effects/buffs/frenzy.dm @@ -22,7 +22,7 @@ var/was_tooluser = FALSE /// The stored Bloodsucker antag datum var/datum/antagonist/bloodsucker/bloodsuckerdatum - var/trait_list = list(TRAIT_MUTE, TRAIT_DEAF, TRAIT_STRONG_GRABBER) + var/trait_list = list(TRAIT_MUTE, TRAIT_SIGN_LANGUAGE_BLOCKED, TRAIT_DEAF, TRAIT_STRONG_GRABBER) /datum/status_effect/frenzy/get_examine_text() return span_notice("They seem... inhumane, and feral!") diff --git a/tgstation.dme b/tgstation.dme index 36396a1c0d5..707fe693f5a 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -8676,6 +8676,7 @@ #include "modular_zubbers\code\datums\bubber_quirks\hydrophilic.dm" #include "modular_zubbers\code\datums\bubber_quirks\neutral.dm" #include "modular_zubbers\code\datums\bubber_quirks\petowner.dm" +#include "modular_zubbers\code\datums\components\sign_language.dm" #include "modular_zubbers\code\datums\components\squeak.dm" #include "modular_zubbers\code\datums\components\crafting\furniture.dm" #include "modular_zubbers\code\datums\components\crafting\tailoring.dm"