diff --git a/modular_doppler/loadout_categories/categories/inhands.dm b/modular_doppler/loadout_categories/categories/inhands.dm index e6bb65a69c4f1..071c98ebc907d 100644 --- a/modular_doppler/loadout_categories/categories/inhands.dm +++ b/modular_doppler/loadout_categories/categories/inhands.dm @@ -30,3 +30,7 @@ /datum/loadout_item/inhand/slimpack name = "Custom Flatpack" item_path = /obj/item/storage/backpack/satchel/flat/empty/custom + +/datum/loadout_item/inhand/aac_device + name = "AAC Device" + item_path = /obj/item/aac_device diff --git a/modular_doppler/modular_cosmetics/GAGS/greyscale_configs_objects.dm b/modular_doppler/modular_cosmetics/GAGS/greyscale_configs_objects.dm new file mode 100644 index 0000000000000..34fb49ffb5aa5 --- /dev/null +++ b/modular_doppler/modular_cosmetics/GAGS/greyscale_configs_objects.dm @@ -0,0 +1,17 @@ +/* + + />  フ meow! this dm file contains greyscale configs for non-clothing items. + |  _ _| / + /` ミ_xノ + /     | + /  ヽ   ノ + │  | | | +/ ̄|   | | | +( ̄ヽ__ヽ_)__)_) +\二) +*/ + +/datum/greyscale_config/aac_device + name = "AAC Device" + icon_file = 'modular_doppler/modular_cosmetics/GAGS/icons/obj/devices.dmi' + json_config = 'modular_doppler/modular_cosmetics/GAGS/json_configs/objects/aac_device.json' diff --git a/modular_doppler/modular_cosmetics/GAGS/icons/obj/devices.dmi b/modular_doppler/modular_cosmetics/GAGS/icons/obj/devices.dmi new file mode 100644 index 0000000000000..d081c92b2a504 Binary files /dev/null and b/modular_doppler/modular_cosmetics/GAGS/icons/obj/devices.dmi differ diff --git a/modular_doppler/modular_cosmetics/GAGS/json_configs/objects/aac_device.json b/modular_doppler/modular_cosmetics/GAGS/json_configs/objects/aac_device.json new file mode 100644 index 0000000000000..293bf1c36aa37 --- /dev/null +++ b/modular_doppler/modular_cosmetics/GAGS/json_configs/objects/aac_device.json @@ -0,0 +1,16 @@ +{ + "aac_device": [ + { + "type": "icon_state", + "icon_state": "aac_device_body", + "blend_mode": "overlay", + "color_ids": [ 1 ] + }, + { + "type": "icon_state", + "icon_state": "aac_device_screen", + "blend_mode": "overlay", + "color_ids": [ 2 ] + } + ] +} diff --git a/modular_doppler/modular_items/aac_device.dm b/modular_doppler/modular_items/aac_device.dm new file mode 100644 index 0000000000000..912ac5e709219 --- /dev/null +++ b/modular_doppler/modular_items/aac_device.dm @@ -0,0 +1,31 @@ +//this is the tts device as seen on other codebases, renamed and reflavored to reflect its real world counterpart. +/obj/item/aac_device + name = "AAC device" + desc = "An Augmented and Alternative Communication device designed to facilitate oral communication \ + for people with communicative disabilities." + icon = 'modular_doppler/modular_cosmetics/GAGS/icons/obj/devices.dmi' + icon_state = "aac_device" + w_class = WEIGHT_CLASS_SMALL + obj_flags = UNIQUE_RENAME + flags_1 = IS_PLAYER_COLORABLE_1 + greyscale_config = /datum/greyscale_config/aac_device + greyscale_colors = "#FFFFFF#FFFFFF" + +/obj/item/aac_device/attack_self(mob/user) + user.balloon_alert_to_viewers("typing...", "started typing...") + playsound(src, 'modular_doppler/modular_items/sounds/aac_started_type.ogg', 50, TRUE) + var/str = tgui_input_text(user, "What would you like the device to say?", "Say Text", "", MAX_MESSAGE_LEN, encode = FALSE) + if(!str) + user.balloon_alert_to_viewers("stops typing", "stopped typing") + playsound(src, 'modular_doppler/modular_items/sounds/aac_stopped_type.ogg', 50, TRUE) + return + src.say(str) + //SEND_SIGNAL((src), COMSIG_MOB_POST_SAY, (str), null, null) ostensibly this would call the user's dopperboops, but it doesn't work :3c + str = null + +/obj/item/aac_device/item_ctrl_click(mob/user) + var/new_name = reject_bad_name(tgui_input_text(user, "Name your Augmented and Alternative Communication device.", "Set AAC Device Name", "", MAX_NAME_LEN)) + if(new_name) + name = "[new_name]'s [initial(name)]" + else + name = initial(name) diff --git a/modular_doppler/modular_items/icons/devices.dmi b/modular_doppler/modular_items/icons/devices.dmi index 07146ded925ed..fde2c9e311e39 100644 Binary files a/modular_doppler/modular_items/icons/devices.dmi and b/modular_doppler/modular_items/icons/devices.dmi differ diff --git a/modular_doppler/modular_items/sounds/aac_started_type.ogg b/modular_doppler/modular_items/sounds/aac_started_type.ogg new file mode 100644 index 0000000000000..3c17e95904421 Binary files /dev/null and b/modular_doppler/modular_items/sounds/aac_started_type.ogg differ diff --git a/modular_doppler/modular_items/sounds/aac_stopped_type.ogg b/modular_doppler/modular_items/sounds/aac_stopped_type.ogg new file mode 100644 index 0000000000000..3a6f66579cd15 Binary files /dev/null and b/modular_doppler/modular_items/sounds/aac_stopped_type.ogg differ diff --git a/modular_doppler/modular_vending/code/tg_vendors/medical.dm b/modular_doppler/modular_vending/code/tg_vendors/medical.dm new file mode 100644 index 0000000000000..e1c6dca8ecda9 --- /dev/null +++ b/modular_doppler/modular_vending/code/tg_vendors/medical.dm @@ -0,0 +1,5 @@ +/obj/machinery/vending/medical + products_doppler = list( + /obj/item/aac_device = 5, + /obj/item/clothing/gloves/radio = 5, + ) diff --git a/tgstation.dme b/tgstation.dme index 3a2596e3516a1..f6179a46e114d 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6796,6 +6796,7 @@ #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_face.dm" #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_head.dm" #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_neck.dm" +#include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_objects.dm" #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_sets.dm" #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_storage.dm" #include "modular_doppler\modular_cosmetics\GAGS\greyscale_configs_suit.dm" @@ -6911,6 +6912,7 @@ #include "modular_doppler\modular_food_drinks_and_chems\food_and_drinks\datums\crafting\hemophage_recipes.dm" #include "modular_doppler\modular_hydroponics\code\honeysuckle.dm" #include "modular_doppler\modular_hydroponics\code\tea_coffee.dm" +#include "modular_doppler\modular_items\aac_device.dm" #include "modular_doppler\modular_items\bettermed_overrides.dm" #include "modular_doppler\modular_items\conversion_kits.dm" #include "modular_doppler\modular_items\invisible_gear.dm" @@ -7034,6 +7036,7 @@ #include "modular_doppler\modular_vending\code\tg_vendors\clothesmate.dm" #include "modular_doppler\modular_vending\code\tg_vendors\engivend.dm" #include "modular_doppler\modular_vending\code\tg_vendors\games.dm" +#include "modular_doppler\modular_vending\code\tg_vendors\medical.dm" #include "modular_doppler\modular_vending\code\tg_vendors\megaseed.dm" #include "modular_doppler\modular_vending\code\tg_vendors\wardrobes.dm" #include "modular_doppler\modular_weapons\code\gunsets.dm"