mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-25 06:00:16 +01:00
Sign Language translation glove changes (Plasmamen & MODsuits) (#64090)
Swaps the check for the gloves for people with the tongue-tied trait into a check for a clothing-based trait. Makes a variant of the radio gloves for plasmamen, so they can be forced to use their hands too. Makes a MODsuit mod that lets you sign over comms when your modsuit is activated.
This commit is contained in:
@@ -305,6 +305,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
|
||||
#define TRAIT_PERMANENTLY_ONFIRE "permanently_onfire"
|
||||
/// Galactic Common Sign Language
|
||||
#define TRAIT_SIGN_LANG "sign_language"
|
||||
/// This mob is able to use sign language over the radio.
|
||||
#define TRAIT_CAN_SIGN_ON_COMMS "can_sign_on_comms"
|
||||
/// nobody can use martial arts on this mob
|
||||
#define TRAIT_MARTIAL_ARTS_IMMUNE "martial_arts_immune"
|
||||
/// You've been cursed with a living duffelbag, and can't have more added
|
||||
|
||||
@@ -316,7 +316,10 @@
|
||||
// Only tongues of people with this quirk can't be removed. Manually spawned or found tongues can be.
|
||||
new_tongue.organ_flags |= ORGAN_UNREMOVABLE
|
||||
|
||||
give_item_to_holder(/obj/item/clothing/gloves/radio, list(LOCATION_GLOVES = ITEM_SLOT_GLOVES, LOCATION_BACKPACK = ITEM_SLOT_BACKPACK, LOCATION_HANDS = ITEM_SLOT_HANDS))
|
||||
var/obj/item/clothing/gloves/gloves_type = /obj/item/clothing/gloves/radio
|
||||
if(isplasmaman(human_holder))
|
||||
gloves_type = /obj/item/clothing/gloves/color/plasmaman/radio
|
||||
give_item_to_holder(gloves_type, list(LOCATION_GLOVES = ITEM_SLOT_GLOVES, LOCATION_BACKPACK = ITEM_SLOT_BACKPACK, LOCATION_HANDS = ITEM_SLOT_HANDS))
|
||||
|
||||
/datum/quirk/item_quirk/tongue_tied/post_add()
|
||||
to_chat(quirk_holder, span_boldannounce("Because you speak with your hands, having them full hinders your ability to communicate!"))
|
||||
|
||||
@@ -218,8 +218,7 @@
|
||||
if(HAS_TRAIT(talking_movable, TRAIT_SIGN_LANG)) //Forces Sign Language users to wear the translation gloves to speak over radios
|
||||
var/mob/living/carbon/mute = talking_movable
|
||||
if(istype(mute))
|
||||
var/obj/item/clothing/gloves/radio/G = mute.get_item_by_slot(ITEM_SLOT_GLOVES)
|
||||
if(!istype(G))
|
||||
if(!HAS_TRAIT(talking_movable, TRAIT_CAN_SIGN_ON_COMMS))
|
||||
return FALSE
|
||||
switch(mute.check_signables_state())
|
||||
if(SIGN_ONE_HAND) // One hand full
|
||||
|
||||
@@ -84,11 +84,6 @@
|
||||
icon_state = "wizard"
|
||||
inhand_icon_state = "purplegloves"
|
||||
|
||||
/obj/item/clothing/gloves/radio
|
||||
name = "translation gloves"
|
||||
desc = "A pair of electronic gloves which connect to nearby radios wirelessly. Allows for sign language users to 'speak' over comms."
|
||||
icon_state = "radio_g"
|
||||
inhand_icon_state = "radio_g"
|
||||
|
||||
/obj/item/clothing/gloves/color/plasmaman/head_of_personnel
|
||||
name = "head of personnel's envirogloves"
|
||||
@@ -121,3 +116,11 @@
|
||||
name = "CentCom intern envirogloves"
|
||||
icon_state = "internplasma"
|
||||
inhand_icon_state = "internplasma"
|
||||
|
||||
/obj/item/clothing/gloves/color/plasmaman/radio
|
||||
name = "translation envirogloves"
|
||||
desc = "Allows the less vocally-capable plasmamen to use sign language over comms."
|
||||
icon_state = "radio_gplasma"
|
||||
inhand_icon_state = "radio_gplasma"
|
||||
worn_icon_state = "radio_g"
|
||||
clothing_traits = list(TRAIT_CAN_SIGN_ON_COMMS)
|
||||
|
||||
@@ -60,3 +60,10 @@
|
||||
/obj/item/clothing/gloves/rapid/ComponentInitialize()
|
||||
. = ..()
|
||||
AddComponent(/datum/component/wearertargeting/punchcooldown)
|
||||
|
||||
/obj/item/clothing/gloves/radio
|
||||
name = "translation gloves"
|
||||
desc = "A pair of electronic gloves which connect to nearby radios wirelessly. Allows for sign language users to 'speak' over comms."
|
||||
icon_state = "radio_g"
|
||||
inhand_icon_state = "radio_g"
|
||||
clothing_traits = list(TRAIT_CAN_SIGN_ON_COMMS)
|
||||
|
||||
@@ -644,6 +644,7 @@
|
||||
/obj/item/mod/module/plasma_stabilizer/on_unequip()
|
||||
REMOVE_TRAIT(mod.wearer, TRAIT_NOSELFIGNITION, MOD_TRAIT)
|
||||
|
||||
|
||||
//Finally, https://pipe.miroware.io/5b52ba1d94357d5d623f74aa/mspfa/Nuke%20Ops/Panels/0648.gif can be real:
|
||||
///Hat Stabilizer - Allows displaying a hat over the MOD-helmet, à la plasmamen helmets.
|
||||
/obj/item/mod/module/hat_stabilizer
|
||||
@@ -742,3 +743,20 @@
|
||||
balloon_alert_to_viewers("the hat falls to the floor!")
|
||||
attached_hat = null
|
||||
mod.wearer.update_inv_back()
|
||||
|
||||
///Sign Language Translator - allows people to sign over comms using the modsuit's gloves.
|
||||
/obj/item/mod/module/signlang_radio
|
||||
name = "MOD glove translator module"
|
||||
desc = "A module that adds motion sensors into the suit's gloves, \
|
||||
which works in tandem with a short-range subspace transmitter, \
|
||||
letting the audibly impaired use sign language over comms."
|
||||
icon_state = "signlang_radio"
|
||||
complexity = 1
|
||||
idle_power_cost = DEFAULT_CHARGE_DRAIN * 0.3
|
||||
incompatible_modules = list(/obj/item/mod/module/signlang_radio)
|
||||
|
||||
/obj/item/mod/module/signlang_radio/on_suit_activation()
|
||||
ADD_TRAIT(mod.wearer, TRAIT_CAN_SIGN_ON_COMMS, MOD_TRAIT)
|
||||
|
||||
/obj/item/mod/module/signlang_radio/on_suit_deactivation()
|
||||
REMOVE_TRAIT(mod.wearer, TRAIT_CAN_SIGN_ON_COMMS, MOD_TRAIT)
|
||||
|
||||
@@ -1354,3 +1354,9 @@
|
||||
materials = list(/datum/material/iron = 2500, /datum/material/glass = 2000, /datum/material/bluespace = 1000)
|
||||
build_path = /obj/item/mod/module/anomaly_locked/teleporter
|
||||
department_type = MODULE_SCIENCE
|
||||
|
||||
/datum/design/module/mod_glove_translator
|
||||
name = "MOD Module: Glove Translator"
|
||||
id = "mod_sign_radio"
|
||||
materials = list(/datum/material/iron = 750, /datum/material/glass = 500)
|
||||
build_path = /obj/item/mod/module/signlang_radio
|
||||
|
||||
@@ -133,6 +133,7 @@
|
||||
"mod_longfall",
|
||||
"mod_thermal_regulator",
|
||||
"mod_plasma",
|
||||
"mod_sign_radio",
|
||||
)
|
||||
|
||||
/datum/techweb_node/mech_tools
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
Reference in New Issue
Block a user