diff --git a/modular_doppler/loadout_categories/categories/undersuit.dm b/modular_doppler/loadout_categories/categories/undersuit.dm index 7c292543ba937f..13ada568980ccd 100644 --- a/modular_doppler/loadout_categories/categories/undersuit.dm +++ b/modular_doppler/loadout_categories/categories/undersuit.dm @@ -419,6 +419,10 @@ name = "Bodysuit" item_path = /obj/item/clothing/under/bodysuit +/datum/loadout_item/undersuit/fullbody/latexsuit + name = "Bodysuit (Latex)" + item_path = /obj/item/clothing/under/latexsuit + /datum/loadout_item/undersuit/fullbody/jumpsuit name = "Colorable Jumpsuit" item_path = /obj/item/clothing/under/color diff --git a/modular_doppler/modular_cosmetics/code/under/miscellania.dm b/modular_doppler/modular_cosmetics/code/under/miscellania.dm index dbd822f135284a..8a0e13b4b3c45f 100644 --- a/modular_doppler/modular_cosmetics/code/under/miscellania.dm +++ b/modular_doppler/modular_cosmetics/code/under/miscellania.dm @@ -115,3 +115,51 @@ supports_variations_flags = CLOTHING_DIGITIGRADE_VARIATION_NO_NEW_ICON can_adjust = TRUE alt_covers_chest = TRUE + +/obj/item/clothing/under/latexsuit + name = "latex bodysuit" + desc = "A form-fitting bodysuit made of a shiny latex polymer. Ages ago, it would've been a pain in the ass \ + to get into, but centuries of clothing technology have made wearing it easier than ever before. \ + Still, it takes longer to take off than an equivalent cloth garment." + icon_state = "latexsuit" + icon = 'modular_doppler/modular_cosmetics/icons/obj/under/miscellania.dmi' + worn_icon = 'modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi' + equip_sound = 'modular_doppler/modular_sounds/sound/items/latex.ogg' + inhand_icon_state = "latexsuit" + lefthand_file = 'modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_left.dmi' + righthand_file = 'modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_right.dmi' + strip_delay = 8 SECONDS + body_parts_covered = CHEST|GROIN|LEGS|ARMS + supports_variations_flags = CLOTHING_DIGITIGRADE_VARIATION + supported_bodyshapes = list(BODYSHAPE_HUMANOID, BODYSHAPE_DIGITIGRADE, BODYSHAPE_TAUR_SNAKE, BODYSHAPE_TAUR_HOOF, BODYSHAPE_TAUR_PAW) + bodyshape_icon_files = list( + BODYSHAPE_HUMANOID_T = 'modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi', + BODYSHAPE_DIGITIGRADE_T = 'modular_doppler/modular_cosmetics/icons/obj/under/miscellania-digi.dmi', + BODYSHAPE_TAUR_SNAKE_T = 'modular_doppler/modular_cosmetics/icons/mob/under/miscellania_snake.dmi', + BODYSHAPE_TAUR_HOOF_T = 'modular_doppler/modular_cosmetics/icons/mob/under/miscellania_hoof.dmi', + BODYSHAPE_TAUR_PAW_T = 'modular_doppler/modular_cosmetics/icons/mob/under/miscellania_paw.dmi', + ) + can_adjust = FALSE + obj_flags = parent_type::obj_flags | INFINITE_RESKIN + unique_reskin = list( + "Masculine" = "latexsuit", + "Feminine" = "latexsuit_d", + "Masculine Half-suit" = "halflatexsuit", + "Feminine Half-suit" = "halflatexsuit_d" + ) + +//This makes the player have to sit through a 6 Second do_after when taking off the latex suit +/obj/item/clothing/under/latexsuit/allow_attack_hand_drop(mob/user) + if(!iscarbon(src.loc)) + return TRUE + var/mob/living/carbon/human/wearer = src.loc + if(wearer.w_uniform != src) + return TRUE + + if(!do_after(user, 6 SECONDS, target = src)) + return FALSE + return TRUE + +//Stops a player from click-dragging the latex suit into their hand, since we'd like them to take the latex suit off with a simple left-click and have to do the do_after +/obj/item/clothing/under/latexsuit/mouse_drop_dragged(atom/over, mob/user, src_location, over_location, params) + return diff --git a/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_left.dmi b/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_left.dmi new file mode 100644 index 00000000000000..333c4a8910f592 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_left.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_right.dmi b/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_right.dmi new file mode 100644 index 00000000000000..1643cff7a2f4c5 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/inhands/miscellania_right.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania-digi.dmi b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania-digi.dmi new file mode 100644 index 00000000000000..7f8c48cdb33977 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania-digi.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi index 9a60b4d9975bd5..9d8ae10e1056da 100644 Binary files a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi and b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_hoof.dmi b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_hoof.dmi new file mode 100644 index 00000000000000..347a39e84b178f Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_hoof.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_paw.dmi b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_paw.dmi new file mode 100644 index 00000000000000..742334069f87a0 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_paw.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_snake.dmi b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_snake.dmi new file mode 100644 index 00000000000000..c600a3a51e0b24 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/mob/under/miscellania_snake.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/obj/under/miscellania-digi.dmi b/modular_doppler/modular_cosmetics/icons/obj/under/miscellania-digi.dmi new file mode 100644 index 00000000000000..19cc9050a76c53 Binary files /dev/null and b/modular_doppler/modular_cosmetics/icons/obj/under/miscellania-digi.dmi differ diff --git a/modular_doppler/modular_cosmetics/icons/obj/under/miscellania.dmi b/modular_doppler/modular_cosmetics/icons/obj/under/miscellania.dmi index 2018d7625b9c12..193261671ceb8b 100644 Binary files a/modular_doppler/modular_cosmetics/icons/obj/under/miscellania.dmi and b/modular_doppler/modular_cosmetics/icons/obj/under/miscellania.dmi differ diff --git a/modular_doppler/modular_sounds/sound/items/latex.ogg b/modular_doppler/modular_sounds/sound/items/latex.ogg new file mode 100644 index 00000000000000..d9a602244e25b6 Binary files /dev/null and b/modular_doppler/modular_sounds/sound/items/latex.ogg differ diff --git a/modular_doppler/modular_vending/code/tg_vendors/clothesmate.dm b/modular_doppler/modular_vending/code/tg_vendors/clothesmate.dm index c38356247149ac..b829bf83579e8a 100644 --- a/modular_doppler/modular_vending/code/tg_vendors/clothesmate.dm +++ b/modular_doppler/modular_vending/code/tg_vendors/clothesmate.dm @@ -130,6 +130,7 @@ /obj/item/clothing/under/misc/gear_harness = 5, /obj/item/clothing/under/misc/gear_harness/visible = 5, /obj/item/clothing/under/bodysuit = 5, + /obj/item/clothing/under/latexsuit = 5, /obj/item/clothing/under/athletas_bodysuit = 5, ) )