From bb49eb80e474aba4b5949da3645eb9dcdc7eb89f Mon Sep 17 00:00:00 2001 From: secc Date: Thu, 28 May 2026 23:26:35 -0400 Subject: [PATCH 01/13] adds custom clothes ignore the fact that like 25% of this is just bunny suits --- .../modules/clothes/code/accessories.dm | 96 ++++++++++ modular_pentest/modules/clothes/code/feet.dm | 123 +++++++++++++ modular_pentest/modules/clothes/code/hands.dm | 8 + modular_pentest/modules/clothes/code/head.dm | 118 ++++++++++++ .../modules/clothes/code/loadout.dm | 106 +++++++++++ modular_pentest/modules/clothes/code/mask.dm | 36 ++++ modular_pentest/modules/clothes/code/neck.dm | 96 ++++++++++ modular_pentest/modules/clothes/code/suits.dm | 15 ++ modular_pentest/modules/clothes/code/under.dm | 174 ++++++++++++++++++ .../clothes/icons/mob/color_accessories.dmi | Bin 0 -> 2862 bytes .../modules/clothes/icons/mob/color_feet.dmi | Bin 0 -> 4160 bytes .../modules/clothes/icons/mob/color_head.dmi | Bin 0 -> 4099 bytes .../modules/clothes/icons/mob/color_neck.dmi | Bin 0 -> 1709 bytes .../modules/clothes/icons/mob/color_under.dmi | Bin 0 -> 14730 bytes .../modules/clothes/icons/mob/feet.dmi | Bin 0 -> 777 bytes .../modules/clothes/icons/mob/hands.dmi | Bin 0 -> 394 bytes .../modules/clothes/icons/mob/head.dmi | Bin 0 -> 774 bytes .../modules/clothes/icons/mob/mask.dmi | Bin 0 -> 2012 bytes .../modules/clothes/icons/mob/suit.dmi | Bin 0 -> 1515 bytes .../modules/clothes/icons/mob/under.dmi | Bin 0 -> 5880 bytes modular_pentest/~pentest.dme | 9 + 21 files changed, 781 insertions(+) create mode 100644 modular_pentest/modules/clothes/code/accessories.dm create mode 100644 modular_pentest/modules/clothes/code/feet.dm create mode 100644 modular_pentest/modules/clothes/code/hands.dm create mode 100644 modular_pentest/modules/clothes/code/head.dm create mode 100644 modular_pentest/modules/clothes/code/loadout.dm create mode 100644 modular_pentest/modules/clothes/code/mask.dm create mode 100644 modular_pentest/modules/clothes/code/neck.dm create mode 100644 modular_pentest/modules/clothes/code/suits.dm create mode 100644 modular_pentest/modules/clothes/code/under.dm create mode 100644 modular_pentest/modules/clothes/icons/mob/color_accessories.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/color_feet.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/color_head.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/color_neck.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/color_under.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/feet.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/hands.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/head.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/mask.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/suit.dmi create mode 100644 modular_pentest/modules/clothes/icons/mob/under.dmi diff --git a/modular_pentest/modules/clothes/code/accessories.dm b/modular_pentest/modules/clothes/code/accessories.dm new file mode 100644 index 00000000000..044d8b43d77 --- /dev/null +++ b/modular_pentest/modules/clothes/code/accessories.dm @@ -0,0 +1,96 @@ + +//colorables + +/obj/item/clothing/accessory/cummerbund + name = "cummerbund" + desc = "A neosilk cummerbund. Special material allows it to be reskinned, but only once." + icon = 'modular_pentest/modules/clothes/icons/mob/color_accessories.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_accessories.dmi' + icon_state = "cummerbund_black" + unique_reskin = list("black cummerbund" = "cummerbund_black", + "grey cummerbund" = "cummerbund_grey", + "blue cummerbund" = "cummerbund_blue", + "green cummerbund" = "cummerbund_green", + "orange cummerbund" = "cummerbund_orange", + "pink cummerbund" = "cummerbund_pink", + "red cummerbund" = "cummerbund_red", + "white cummerbund" = "cummerbund_white", + "yellow cummerbund" = "cummerbund_yellow", + "dark blue cummerbund" = "cummerbund_darkblue", + "teal cummerbund" = "cummerbund_teal", + "purple cummerbund" = "cummerbund_purple", + "dark green cummerbund" = "cummerbund_darkgreen", + "light brown cummerbund" = "cummerbund_lightbrown", + "brown cummerbund" = "cummerbund_brown", + "maroon cummerbund" = "cummerbund_maroon" + ) + unique_reskin_changes_base_icon_state = TRUE + unique_reskin_changes_name = TRUE + +/obj/item/clothing/accessory/cummerbund/black + name = "black cummerbund" + icon_state = "cummerbund_black" + +/obj/item/clothing/accessory/cummerbund/grey + name = "grey cummerbund" + icon_state = "cummerbund_grey" + +/obj/item/clothing/accessory/cummerbund/blue + name = "blue cummerbund" + icon_state = "cummerbund_blue" + +/obj/item/clothing/accessory/cummerbund/green + name = "green cummerbund" + icon_state = "cummerbund_green" + +/obj/item/clothing/accessory/cummerbund/orange + name = "orange cummerbund" + icon_state = "cummerbund_orange" + +/obj/item/clothing/accessory/cummerbund/pink + name = "pink cummerbund" + icon_state = "cummerbund_pink" + +/obj/item/clothing/accessory/cummerbund/red + name = "red cummerbund" + icon_state = "cummerbund_red" + +/obj/item/clothing/accessory/cummerbund/white + name = "white cummerbund" + icon_state = "cummerbund_white" + +/obj/item/clothing/accessory/cummerbund/yellow + name = "yellow cummerbund" + icon_state = "cummerbund_yellow" + +/obj/item/clothing/accessory/cummerbund/darkblue + name = "dark blue cummerbund" + icon_state = "cummerbund_darkblue" + +/obj/item/clothing/accessory/cummerbund/teal + name = "teal cummerbund" + icon_state = "cummerbund_teal" + +/obj/item/clothing/accessory/cummerbund/red + name = "red cummerbund" + icon_state = "cummerbund_red" + +/obj/item/clothing/accessory/cummerbund/purple + name = "purple cummerbund" + icon_state = "cummerbund_purple" + +/obj/item/clothing/accessory/cummerbund/darkgreen + name = "dark green cummerbund" + icon_state = "cummerbund_darkgreen" + +/obj/item/clothing/accessory/cummerbund/lightbrown + name = "light brown cummerbund" + icon_state = "cummerbund_lightbrown" + +/obj/item/clothing/accessory/cummerbund/brown + name = "brown cummerbund" + icon_state = "cummerbund_brown" + +/obj/item/clothing/accessory/cummerbund/maroon + name = "maroon cummerbund" + icon_state = "cummerbund_maroon" diff --git a/modular_pentest/modules/clothes/code/feet.dm b/modular_pentest/modules/clothes/code/feet.dm new file mode 100644 index 00000000000..c717ddee66c --- /dev/null +++ b/modular_pentest/modules/clothes/code/feet.dm @@ -0,0 +1,123 @@ +//custom shoes + +/obj/item/clothing/shoes/laceup/brown + name = "brown laceup shoes" + desc = "The height of fashion, and they're pre-polished! Now available in brown." + icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' + icon_state = "laceups_brown" + +/obj/item/clothing/shoes/laceup/white + name = "white laceup shoes" + desc = "The height of fashion, and they're pre-polished! Now available in white." + icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' + icon_state = "laceups_white" + +//colorables + +/obj/item/clothing/shoes/high_heels + name = "high_heels" + icon_state = "highheels_black" + desc = "A pair of fashionable high heels." + icon = 'modular_pentest/modules/clothes/icons/mob/color_feet.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_feet.dmi' + unique_reskin = list("white high heels" = "highheels_white", + "grey high heels" = "highheels_grey", + "black high heels" = "highheels_black", + "red high heels" = "highheels_red", + "maroon high heels" = "highheels_maroon", + "orange high heels" = "highheels_orange", + "yellow high heels" = "highheels_yellow", + "green high heels" = "highheels_green", + "dark high heels" = "highheels_darkgreen", + "teal high heels" = "highheels_teal", + "blue high heels" = "highheels_blue", + "dark blue high heels" = "highheels_darkblue", + "purple high heels" = "highheels_purple", + "pink high heels" = "highheels_pink", + "brown high heels" = "highheels_brown", + "light brown high heels" = "highheels_lightbrown" + ) + unique_reskin_changes_base_icon_state = TRUE + unique_reskin_changes_name = TRUE + +/obj/item/clothing/shoes/high_heels/white + name = "white high heels" + icon_state = "highheels_white" + current_skin = "white high heels" + +/obj/item/clothing/shoes/high_heels/grey + name = "grey high heels" + icon_state = "highheels_grey" + current_skin = "grey high heels" + +/obj/item/clothing/shoes/high_heels/black + name = "black high heels" + icon_state = "highheels_black" + current_skin = "black high heels" + +/obj/item/clothing/shoes/high_heels/red + name = "red high heels" + icon_state = "highheels_red" + current_skin = "red high heels" + +/obj/item/clothing/shoes/high_heels/maroon + name = "maroon high heels" + icon_state = "highheels_maroon" + current_skin = "maroon high heels" + +/obj/item/clothing/shoes/high_heels/orange + name = "orange high heels" + icon_state = "highheels_orange" + current_skin = "orange high heels" + +/obj/item/clothing/shoes/high_heels/yellow + name = "yellow high heels" + icon_state = "highheels_yellow" + current_skin = "yellow high heels" + +/obj/item/clothing/shoes/high_heels/green + name = "green high heels" + icon_state = "highheels_green" + current_skin = "green high heels" + +/obj/item/clothing/shoes/high_heels/darkgreen + name = "dark green high heels" + icon_state = "highheels_darkgreen" + current_skin = "dark green high heels" + +/obj/item/clothing/shoes/high_heels/teal + name = "teal high heels" + icon_state = "highheels_teal" + current_skin = "teal high heels" + +/obj/item/clothing/shoes/high_heels/blue + name = "blue high heels" + icon_state = "highheels_blue" + current_skin = "blue high heels" + +/obj/item/clothing/shoes/high_heels/darkblue + name = "dark blue high heels" + icon_state = "highheels_darkblue" + current_skin = "dark blue high heels" + +/obj/item/clothing/shoes/high_heels/purple + name = "purple high heels" + icon_state = "highheels_purple" + current_skin = "purple high heels" + +/obj/item/clothing/shoes/high_heels/pink + name = "pink high heels" + icon_state = "highheels_pink" + current_skin = "pink high heels" + +/obj/item/clothing/shoes/high_heels/brown + name = "brown high heels" + icon_state = "highheels_brown" + current_skin = "brown high heels" + +/obj/item/clothing/shoes/high_heels/lightbrown + name = "light brown high heels" + icon_state = "highheels_lightbrown" + current_skin = "light brown high heels" diff --git a/modular_pentest/modules/clothes/code/hands.dm b/modular_pentest/modules/clothes/code/hands.dm new file mode 100644 index 00000000000..feedc6e9e97 --- /dev/null +++ b/modular_pentest/modules/clothes/code/hands.dm @@ -0,0 +1,8 @@ +//custom gloves + +/obj/item/clothing/gloves/bunnycuffs + name = "detached cuffs" + desc = "A pair of cuffs without a shirt to belong to. A bit depressing, honestly." + icon = 'modular_pentest/modules/clothes/icons/mob/hands.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/hands.dmi' + icon_state = "bunnycuffs" diff --git a/modular_pentest/modules/clothes/code/head.dm b/modular_pentest/modules/clothes/code/head.dm new file mode 100644 index 00000000000..5c9e72fd64e --- /dev/null +++ b/modular_pentest/modules/clothes/code/head.dm @@ -0,0 +1,118 @@ +//custom hats + +/obj/item/clothing/head/wedding_veil + name = "wedding veil" + desc = "A veil typically worn during marriage. Although, I guess you could wear it whenever, there's nothing stopping you." + icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' + icon_state = "wedding_veil" + +/obj/item/clothing/head/headband + name = "headband" + desc = "A headband. This one won't give you infinite ammo, though. It's not even the same type of headband, idiot." + icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' + icon_state = "headband" + +/obj/item/clothing/head/barrette + name = "barrette" + desc = "A small little hair clip. Theoretically, you could wear this if you're bald, but it would be super painful if you did." + icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' + icon_state = "barette" + +//colorables + +/obj/item/clothing/head/bunnyheadband + name = "bunny headband" + desc = "A headband styled to look like bunny ears. Might be offensive to those genetically modified with lagomorphic features." + icon = 'modular_pentest/modules/clothes/icons/mob/color_head.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_head.dmi' + icon_state = "bunnyheadband_black" + unique_reskin = list("black bunny headband" = "bunnyheadband_black", + "grey bunny headband" = "bunnyheadband_grey", + "blue bunny headband" = "bunnyheadband_blue", + "green bunny headband" = "bunnyheadband_green", + "orange bunny headband" = "bunnyheadband_orange", + "pink bunny headband" = "bunnyheadband_pink", + "red bunny headband" = "bunnyheadband_red", + "white bunny headband" = "bunnyheadband_white", + "yellow bunny headband" = "bunnyheadband_yellow", + "dark blue bunny headband" = "bunnyheadband_darkblue", + "teal bunny headband" = "bunnyheadband_teal", + "purple bunny headband" = "bunnyheadband_purple", + "dark green bunny headband" = "bunnyheadband_darkgreen", + "light brown bunny headband" = "bunnyheadband_lightbrown", + "brown bunny headband" = "bunnyheadband_brown", + "maroon bunny headband" = "bunnyheadband_maroon" + ) + unique_reskin_changes_base_icon_state = TRUE + unique_reskin_changes_name = TRUE + +/obj/item/clothing/head/bunnyheadband/black + name = "black bunny headband" + icon_state = "bunnyheadband_black" + +/obj/item/clothing/head/bunnyheadband/grey + name = "grey bunny headband" + icon_state = "bunnyheadband_grey" + +/obj/item/clothing/head/bunnyheadband/blue + name = "blue bunny headband" + icon_state = "bunnyheadband_blue" + +/obj/item/clothing/head/bunnyheadband/green + name = "green bunny headband" + icon_state = "bunnyheadband_green" + +/obj/item/clothing/head/bunnyheadband/orange + name = "orange bunny headband" + icon_state = "bunnyheadband_orange" + +/obj/item/clothing/head/bunnyheadband/pink + name = "pink bunny headband" + icon_state = "bunnyheadband_pink" + +/obj/item/clothing/head/bunnyheadband/red + name = "red bunny headband" + icon_state = "bunnyheadband_red" + +/obj/item/clothing/head/bunnyheadband/white + name = "white bunny headband" + icon_state = "bunnyheadband_white" + +/obj/item/clothing/head/bunnyheadband/yellow + name = "yellow bunny headband" + icon_state = "bunnyheadband_yellow" + +/obj/item/clothing/head/bunnyheadband/darkblue + name = "dark blue bunny headband" + icon_state = "bunnyheadband_darkblue" + +/obj/item/clothing/head/bunnyheadband/teal + name = "teal bunny headband" + icon_state = "bunnyheadband_teal" + +/obj/item/clothing/head/bunnyheadband/red + name = "red bunny headband" + icon_state = "bunnyheadband_red" + +/obj/item/clothing/head/bunnyheadband/purple + name = "purple bunny headband" + icon_state = "bunnyheadband_purple" + +/obj/item/clothing/head/bunnyheadband/darkgreen + name = "dark green bunny headband" + icon_state = "bunnyheadband_darkgreen" + +/obj/item/clothing/head/bunnyheadband/lightbrown + name = "light brown bunny headband" + icon_state = "bunnyheadband_lightbrown" + +/obj/item/clothing/head/bunnyheadband/brown + name = "brown bunny headband" + icon_state = "bunnyheadband_brown" + +/obj/item/clothing/head/bunnyheadband/maroon + name = "maroon bunny headband" + icon_state = "bunnyheadband_maroon" diff --git a/modular_pentest/modules/clothes/code/loadout.dm b/modular_pentest/modules/clothes/code/loadout.dm new file mode 100644 index 00000000000..3fe3f5b2e47 --- /dev/null +++ b/modular_pentest/modules/clothes/code/loadout.dm @@ -0,0 +1,106 @@ + +//neckwear + +/datum/gear/accessory/bowtie/recolorable + display_name = "bowtie, recolorable" + path = /obj/item/clothing/neck/bowtie + +//masks + +/datum/gear/accessory/mask/ritualmask + display_name = "ritual mask" + path = /obj/item/clothing/mask/gas/ritual + +/datum/gear/accessory/mask/holeymask + display_name = "holey mask" + path = /obj/item/clothing/mask/gas/karukosa + +/datum/gear/accessory/mask/demonmask + display_name = "demon mask" + path = /obj/item/clothing/mask/gas/demonic + +/datum/gear/accessory/mask/kitonchumask + display_name = "kitonchu mask" + path = /obj/item/clothing/mask/gas/kitonchu + +/datum/gear/accessory/mask/drunkenridermask + display_name = "drunken rider mask" + path = /obj/item/clothing/mask/gas/drunken + +//actual accessories + +/datum/gear/accessory/cummerbund + display_name = "cummerbund" + path = /obj/item/clothing/accessory/cummerbund + slot = null + +//footwear + +/datum/gear/footwear/laceup/brown + display_name = "laceup shoes, brown" + path = /obj/item/clothing/shoes/laceup/brown + +/datum/gear/footwear/laceup/white + display_name = "laceup shoes, white" + path = /obj/item/clothing/shoes/laceup/white + +/datum/gear/footwear/highheels + display_name = "high heels, recolorable" + path = /obj/item/clothing/shoes/high_heels + +//hats + +/datum/gear/hat/headband + display_name = "headband" + path = /obj/item/clothing/head/headband + +/datum/gear/hat/barrette + display_name = "barrette" + path = /obj/item/clothing/head/barrette + +/datum/gear/hat/bunnyheadband + display_name = "bunny headband, recolorable" + path = /obj/item/clothing/head/bunnyheadband + +//suits + +/datum/gear/suit/jacket/tuxedo + display_name = "suit jacket, tuxedo" + path = /obj/item/clothing/suit/toggle/lawyer/tuxedo + +//uniform + +/datum/gear/uniform/suit/tuxedo + display_name = "suit, tuxedo" + path = /obj/item/clothing/under/suit/tuxedo + +/datum/gear/uniform/suit/tuxedo/pants + display_name = "suit, tuxedo pants" + path = /obj/item/clothing/under/suit/tuxedo_pants + +/datum/gear/uniform/suit/yamainu + display_name = "suit, designer burgundy" + path = /obj/item/clothing/under/suit/yamainu + +/datum/gear/uniform/fishypattern + display_name = "fishy patterned shirt" + path = /obj/item/clothing/under/fishypatternclothes + +/datum/gear/uniform/pants/jeans/big + display_name = "jeans, big" + path = /obj/item/clothing/under/bigjeans + +/datum/gear/uniform/chaps + subtype_path = /datum/gear/uniform/chaps + +/datum/gear/uniform/chaps/brown + display_name = "chaps, brown" + path = /obj/item/clothing/under/chaps/brown + +/datum/gear/uniform/chaps/black + display_name = "chaps, black" + path = /obj/item/clothing/under/chaps/black + +/datum/gear/uniform/bunnysuit + display_name = "bunny suit, recolorable" + path = /obj/item/clothing/under/bunnysuit diff --git a/modular_pentest/modules/clothes/code/mask.dm b/modular_pentest/modules/clothes/code/mask.dm new file mode 100644 index 00000000000..ff37abe0e51 --- /dev/null +++ b/modular_pentest/modules/clothes/code/mask.dm @@ -0,0 +1,36 @@ +//custom masks + +/obj/item/clothing/mask/gas/ritual + name = "ritual mask" + desc = "A spooky mask often used for occult rituals." + icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' + icon_state = "ritual" + +/obj/item/clothing/mask/gas/karukosa + name = "holey mask" + desc = "A mask that is said to bring out one's spiritual power... But does it really?" + icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' + icon_state = "karukosa" + +/obj/item/clothing/mask/gas/demonic + name = "demonic mask" + desc = "A mask that depicts a grinning red demon. It should probably see a dentist, teeth aren't supposed to be that yellow." + icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' + icon_state = "demon" + +/obj/item/clothing/mask/gas/kitonchu + name = "\improper Kitonchu mask" + desc = "A mask depicting Kitonchu from hit videogame franchise Legend of Pocketmons." + icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' + icon_state = "kitonchu" + +/obj/item/clothing/mask/gas/drunken + name = "\improper Drunken Rider mask" + desc = "A mask depicting the eponymous hero of the popular Martian tokusatsu show, Drunken Rider." + icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' + icon_state = "drunken" diff --git a/modular_pentest/modules/clothes/code/neck.dm b/modular_pentest/modules/clothes/code/neck.dm new file mode 100644 index 00000000000..e84594686e6 --- /dev/null +++ b/modular_pentest/modules/clothes/code/neck.dm @@ -0,0 +1,96 @@ + +//colorables + +/obj/item/clothing/neck/bowtie + name = "bowtie" + desc = "A neosilk bowtie. Special material allows it to be reskinned, but only once." + icon = 'modular_pentest/modules/clothes/icons/mob/color_neck.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_neck.dmi' + icon_state = "bowtie_black" + unique_reskin = list("black bowtie" = "bowtie_black", + "grey bowtie" = "bowtie_grey", + "blue bowtie" = "bowtie_blue", + "green bowtie" = "bowtie_green", + "orange bowtie" = "bowtie_orange", + "pink bowtie" = "bowtie_pink", + "red bowtie" = "bowtie_red", + "white bowtie" = "bowtie_white", + "yellow bowtie" = "bowtie_yellow", + "dark blue bowtie" = "bowtie_darkblue", + "teal bowtie" = "bowtie_teal", + "purple bowtie" = "bowtie_purple", + "dark green bowtie" = "bowtie_darkgreen", + "light brown bowtie" = "bowtie_lightbrown", + "brown bowtie" = "bowtie_brown", + "maroon bowtie" = "bowtie_maroon" + ) + unique_reskin_changes_base_icon_state = TRUE + unique_reskin_changes_name = TRUE + +/obj/item/clothing/neck/bowtie/black + name = "black bowtie" + icon_state = "bowtie_black" + +/obj/item/clothing/neck/bowtie/grey + name = "grey bowtie" + icon_state = "bowtie_grey" + +/obj/item/clothing/neck/bowtie/blue + name = "blue bowtie" + icon_state = "bowtie_blue" + +/obj/item/clothing/neck/bowtie/green + name = "green bowtie" + icon_state = "bowtie_green" + +/obj/item/clothing/neck/bowtie/orange + name = "orange bowtie" + icon_state = "bowtie_orange" + +/obj/item/clothing/neck/bowtie/pink + name = "pink bowtie" + icon_state = "bowtie_pink" + +/obj/item/clothing/neck/bowtie/red + name = "red bowtie" + icon_state = "bowtie_red" + +/obj/item/clothing/neck/bowtie/white + name = "white bowtie" + icon_state = "bowtie_white" + +/obj/item/clothing/neck/bowtie/yellow + name = "yellow bowtie" + icon_state = "bowtie_yellow" + +/obj/item/clothing/neck/bowtie/darkblue + name = "dark blue bowtie" + icon_state = "bowtie_darkblue" + +/obj/item/clothing/neck/bowtie/teal + name = "teal bowtie" + icon_state = "bowtie_teal" + +/obj/item/clothing/neck/bowtie/red + name = "red bowtie" + icon_state = "bowtie_red" + +/obj/item/clothing/neck/bowtie/purple + name = "purple bowtie" + icon_state = "bowtie_purple" + +/obj/item/clothing/neck/bowtie/darkgreen + name = "dark green bowtie" + icon_state = "bowtie_darkgreen" + +/obj/item/clothing/neck/bowtie/lightbrown + name = "light brown bowtie" + icon_state = "bowtie_lightbrown" + +/obj/item/clothing/neck/bowtie/brown + name = "brown bowtie" + icon_state = "bowtie_brown" + +/obj/item/clothing/neck/bowtie/maroon + name = "maroon bowtie" + icon_state = "bowtie_maroon" diff --git a/modular_pentest/modules/clothes/code/suits.dm b/modular_pentest/modules/clothes/code/suits.dm new file mode 100644 index 00000000000..0e5d86b2eb8 --- /dev/null +++ b/modular_pentest/modules/clothes/code/suits.dm @@ -0,0 +1,15 @@ +//custom suits + +/obj/item/clothing/suit/toggle/lawyer/tuxedo + name = "tuxedo jacket" + desc = "Don't wear this with a regular suit, or the fashion police will be after you. This thing belongs ONLY to a tuxedo." + icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' + icon_state = "tuxedosuit" + +/obj/item/clothing/suit/wedding_dress + name = "wedding dress" + desc = "A nice dress to get married in. Or die in a horrific explosion in. It's 50/50 at this point." + icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' + icon_state = "wedding_dress" diff --git a/modular_pentest/modules/clothes/code/under.dm b/modular_pentest/modules/clothes/code/under.dm new file mode 100644 index 00000000000..ba56d8c4df2 --- /dev/null +++ b/modular_pentest/modules/clothes/code/under.dm @@ -0,0 +1,174 @@ +//custom jumpsuits + +/obj/item/clothing/under/suit/tuxedo + name = "tuxedo" + desc = "A full-piece tuxedo suit for formal occasions." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + icon_state = "tuxedo" + +/obj/item/clothing/under/suit/tuxedo_pants + name = "tuxedo pants" + desc = "The name's pants. Tuxedo pants." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + icon_state = "tuxedopants" + +/obj/item/clothing/under/suit/yamainu + name = "designer burgundy suit" + desc = "A Waffle Corp brand designer suit. It fills you with an aura of discipline and hard work." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + icon_state = "yamainu" + +/obj/item/clothing/under/fishypatternclothes + name = "fish patterned shirt" + desc = "A comfortable looking outfit with a fish patterned shirt over it." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + icon_state = "fishy" + +/obj/item/clothing/under/bigjeans + name = "big jeans" + desc = "Holy fucking shit, these jeans are massive. You could probably use them as a tent, they're that big." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + clothamnt = 6 //jeans are big, what can i say + body_parts_covered = CHEST|GROIN|LEGS + icon_state = "bigjeans" + +/obj/item/clothing/under/chaps + name = "chaps" + desc = "Chaps fit for a space cowboy." + icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' + icon_state = "brown_cowboychaps" + +/obj/item/clothing/under/chaps/brown + name = "brown cowboy chaps" + icon_state = "brown_cowboychaps" + +/obj/item/clothing/under/chaps/black + name = "black cowboy chaps" + desc = "Chaps fit for a dastardly space cowboy." + icon_state = "black_cowboychaps" + +//colorables + +/obj/item/clothing/under/bunnysuit + name = "bunny suit" + desc = "A bunny suit straight out of the magazines you keep hidden under the bed." + icon = 'modular_pentest/modules/clothes/icons/mob/color_under.dmi' //temp + mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_under.dmi' + icon_state = "bunnysuit_black" + alt_covers_chest = TRUE + body_parts_covered = CHEST|GROIN + supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON + unique_reskin = list("black bunny suit" = "bunnysuit_black", + "grey bunny suit" = "bunnysuit_grey", + "blue bunny suit" = "bunnysuit_blue", + "green bunny suit" = "bunnysuit_green", + "orange bunny suit" = "bunnysuit_orange", + "pink bunny suit" = "bunnysuit_pink", + "red bunny suit" = "bunnysuit_red", + "white bunny suit" = "bunnysuit_white", + "yellow bunny suit" = "bunnysuit_yellow", + "dark blue bunny suit" = "bunnysuit_darkblue", + "teal bunny suit" = "bunnysuit_teal", + "purple bunny suit" = "bunnysuit_purple", + "dark green bunny suit" = "bunnysuit_darkgreen", + "light brown bunny suit" = "bunnysuit_lightbrown", + "brown bunny suit" = "bunnysuit_brown", + "maroon bunny suit" = "bunnysuit_maroon" + ) + unique_reskin_changes_base_icon_state = TRUE + unique_reskin_changes_name = TRUE + +/obj/item/clothing/under/bunnysuit/verb/bunnysuit_adjust() // copying all this from clothing code but just doing minor changes to the actions because i guess there wasnt a third option for generic cases that arent rolling up sleeves or going shirtless with jumpsuits + set name = "Detach/Attach Tail" + set category = null + set src in usr + toggle_tailadjust() + +/obj/item/clothing/under/bunnysuit/proc/toggle_tailadjust() + if(!can_use(usr)) + return FALSE + if(toggle_jumpsuit_adjust(ALT_STYLE)) + to_chat(usr, span_notice("You detach the tail off your bunny suit.")) + else + to_chat(usr, span_notice("You reattach the tail onto your bunny suit.")) + if(ishuman(usr)) + var/mob/living/carbon/human/H = usr + H.update_inv_w_uniform() + H.update_body() + return TRUE + return FALSE + +/obj/item/clothing/under/bunnysuit/black + name = "black bunny suit" + icon_state = "bunnysuit_black" + +/obj/item/clothing/under/bunnysuit/grey + name = "grey bunny suit" + icon_state = "bunnysuit_grey" + desc = "Is tiding sexy now?" + +/obj/item/clothing/under/bunnysuit/blue + name = "blue bunny suit" + icon_state = "bunnysuit_blue" + +/obj/item/clothing/under/bunnysuit/green + name = "green bunny suit" + icon_state = "bunnysuit_green" + +/obj/item/clothing/under/bunnysuit/orange + name = "orange bunny suit" + icon_state = "bunnysuit_orange" + +/obj/item/clothing/under/bunnysuit/pink + name = "pink bunny suit" + icon_state = "bunnysuit_pink" + +/obj/item/clothing/under/bunnysuit/red + name = "red bunny suit" + icon_state = "bunnysuit_red" + +/obj/item/clothing/under/bunnysuit/white + name = "white bunny suit" + icon_state = "bunnysuit_white" + +/obj/item/clothing/under/bunnysuit/yellow + name = "yellow bunny suit" + icon_state = "bunnysuit_yellow" + +/obj/item/clothing/under/bunnysuit/darkblue + name = "dark blue bunny suit" + icon_state = "bunnysuit_darkblue" + +/obj/item/clothing/under/bunnysuit/teal + name = "teal bunny suit" + icon_state = "bunnysuit_teal" + +/obj/item/clothing/under/bunnysuit/red + name = "red bunny suit" + icon_state = "bunnysuit_red" + +/obj/item/clothing/under/bunnysuit/purple + name = "purple bunny suit" + icon_state = "bunnysuit_purple" + +/obj/item/clothing/under/bunnysuit/darkgreen + name = "dark green bunny suit" + icon_state = "bunnysuit_darkgreen" + +/obj/item/clothing/under/bunnysuit/lightbrown + name = "light brown bunny suit" + icon_state = "bunnysuit_lightbrown" + +/obj/item/clothing/under/bunnysuit/brown + name = "brown bunny suit" + icon_state = "bunnysuit_brown" + +/obj/item/clothing/under/bunnysuit/maroon + name = "maroon bunny suit" + icon_state = "bunnysuit_maroon" diff --git a/modular_pentest/modules/clothes/icons/mob/color_accessories.dmi b/modular_pentest/modules/clothes/icons/mob/color_accessories.dmi new file mode 100644 index 0000000000000000000000000000000000000000..1c8dbd41a46ec2f99f4d792c8dd4c6c13e13fdc2 GIT binary patch literal 2862 zcmc(h`CF4$7RTSjMtlDPXdoCR$WG!^#X6#F z!=hnP2LVME*#rXwMK%fhP7EMH&|?%E^&7QvmAhi!ZR7kT)R$U^Jcfo_Vfpldvv&|TSE&WTMTOrkCg zPIFO}n=)s=)xGw%oBsxhi1%VsbgaMVVqg4i48A$oZSQfS_3jam*^D2LXcuVe;JN9$ z@YC0`hFHo5&T@dY$5gr18v4e%<~xU}I0QEF5xvVBo}sCANzDd!{bA{n%eS27TaOHh zZzj`<=~L+{MfQabFN`S&k;gv?FL$tyO)iWc2&mDaehC0bw4<%HSL_srNx*xLqC2_7 z!;>?I`f{0o+tMGs~^%`j6A=d zkv}zG?K1Y06*9_Dvo`Qy^nZs=1$p7Moq|K!{*N~~`D7u6M{Vq0n|}9^N3vMaGi4Fo zT&GR@mz02N^Si)+9RLJ<0USF0M}xc;;8#B~5l8HC{$OFJM5}8a$K6#4H>Q|)cgkn| zK#v(;<8bO6d;fOgT2qs`9zL~kqpfavWn9~dp7O!Sh-7wUr-*OwN#!&9OwJ2L-~zFr z;04};cdhTevbO5_>&;x3qFxfQ{e<5Y@z=8$s~j?anRPNybXI`{D++3%ir6-t()2*~ zqsD*<6=HD5Gbg{Z9_NLq#SJ}jcmmaQ^qnGOs|3u|_A7)AV{c+HdxK-38~}W^z=OX> z=x-A|^Z>vH1p}^s1z0J5zHqJxaMseQia7{N6+?**O7G$c`d$gft+E)PGmNIFr!=GK-Nv%7585}J8mvP6AcJP1Kc zSSY39+3SNHw5!L&8!^m96V(90H}(4*zN7rQJWfWTk=@mZOH<+v?(wK?@z&13EF za=A70A;RcJelCtd?A9R%WAHyYO0JZYFlS5|5k4?l@32^rG=sO(S!Ot`F8(P$8b|6N zka5cfWM?Rbka)IOx7UF`8EeCts6GoPvz>O1jj5u2ek8Vm&QHbjB&uOS?1GV$ad zvLC5s5VF@xM?qv67>^6~a;f?vL=-=V`~chfu{Ne-a~GGpRv{k7R6duA60>_D2i!Xr zW}DZKx~kCnp61vL00(vdj6MA^KTC(FVGMe+b#ueAvsw4K3{ke5OL&{l@Nkqy3%Nh< zS4r>ajXkT89`n1WEYO>@Z;#_^J)ef$#}PY1h0*id!Ndwtk!eG?AD&eRHk)4I1Xe1u z)ZTy(637$>3fdq(r8#1V3CWBc$xbpFU@0&lHyi3yt(E>@SFah&_eP?$Id4pf5MWxY zu;If}SPDllEO834JuQx@VQjg0kR+JBDY1&bNM~=`-6n*Od*~x`2qjuRlMxZWxn^`n z29u)uJy=^>BR5ZKPxvQ!GvJlpqP!=B8A#8DDz(`c6>ToXCC%NnQKRj9Qt09lri$ie z@?Vv?Su8@x^3S>BI^}f@q{o--V)bX*Q zieh+3o>;6$?jQ9m-eP(0xh3ZLjH5Kav@GG(U*u`Oh|vv^nf_i;g+Bhi8C=F{eKfI@ zhaR42Fm4g|Q9z~LBykI*)O2?E7T{c)>pqe?k@Yy{o>EUqurNAoO{u1YvyXR*S@t}M z4B8;3k{Jv+ns+%Dnwzeg6;=G0V-PpmLfgK14|~tOF+dp;bxXxlzbdSdbllI4gbg^g zw1E!I0ULDrd_GThZ*NtSP)Q2y-1bn7l^jW7SIFRj- ztxb-HBia`k&T;&P6qc`VMQ*XkjXsD{z}|KO3DD|;?n#-MHzgHIdmak z@;E`84&ht_b}RWdp2WTO{M5hODuwX0K-3IbS~UGPMg(`!4C=VGMRC_h*~Gu^wP(kF z45b(*#zvMvDLc`81AA6gu+U>;S&&rB!7%rjS<=Fw3Ywou82OVzs}jR3E7@VmF`My{ Q2Qc7h=W1JVD)86e0g$h^4*&oF literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/color_feet.dmi b/modular_pentest/modules/clothes/icons/mob/color_feet.dmi new file mode 100644 index 0000000000000000000000000000000000000000..fc6ac49b34dc45c153eb3c94e70ce2f463e71f6d GIT binary patch literal 4160 zcmd6rdpy(oAIHB)%E)nu%Jp=9#c^jYxzpLw1*>04H0ffbEZSlin@AUOOYUrO=l<9by^!H>38uEJ*ZGKFDMh=MS%4 zWcz^T>(|jJ8`RauayGd1pAe_iRcvVHG4j02Zl_|w2$Q$&Pr8*DOZG+$IF3oxZH?jW zcGx7T>8$uP9m3H#Ik4lw$=ht%mmeY7sT?U~=+@Vp8IaUW?Hkn~1j9`+&CGbi-j?&- z8xr&*C(ogF<*_v8E^K{v;sZ1Em6QkIK5V*dCjcmzZh<)O3h!a{BhRnw)My+BC*8a2 zaCP&_xMj+j<+|F5g}XFWoOL&r#mjn_`)qagk;_&tDl~^WOSzqDy1Cs?4GK~@Vz}8k zmGQVpJ27T0;!@0Jr$lpym-lkrXMD}ln{!CbHO=`X5+Cmvd^(3@OF>ifxu9;Vk=4MF z2v>2>V=N~hCB!YVGcPh;GlVJ)}2P#U=i;>YA4$rm1Mo!l@ z!g7bYnO@1il-Omx`E6Rpzuo&Sj9_QO<16X7Pk;EJe?GtULvHS+s}bBG!VJm08O_l3 zs_RfFU#`lZI$iSc4l+o+9L>Tg&akm`hv7TGvDMZsc>m_teOzC!nmW7?vn@%qgDuXo z4h}wiJpgaSin89Cd5ar&v<_NZGxz|GgD&h~OOLAek!adTzUktkWDw~URDtYQG7?7d z{`^=M)_^Q#TXxc>KwPzb`+^DH!n0Mv%i|DmRf}6L24Kl%A* z(&)O;$CjEd;d zymAUzAMiTdZhYiWEYvuW^+)CJgLPDlahY*YK^7y0yu5!rK(&nfv2-%{+DNN-ST zUwH2Wkp*1Ra+Ml`d+l08#m`Ll;`>h6^eb>N_`w|hjQ56C*czBQxTNng=@zrNi@6dG zpf1MiOtE`ZdSfyQ$V_(g`kw+-oqpqTS30HUcpUo^-o+g}@~l||{<CfI~%P0Erb%EbWiL>F)} zl?Aq+mjr&$W9g{uKz~ND$W{D!DwGgSV63{`qF+6J{{-)lRXj(KW=rIbat#_&JqWGi z%0emQB&`8ot6(IXJ6p-0?a65sC$PlM(`uZe<6kH6(eAr03shV%L80Ej$~aqrTS*v$ zK!0lTSj!3|A7k*A3fQ`M942@<=C zDbcVY5zZWocl5}!EOSof{D{BN;x6~z^O2yThcP;$Pny z<20@voHXmJGF-0Wat!pB| zDaR+agD>@JQ)l5leAGpQ156p(sl+I3y-ygTbzuW~7>jsfxAafK+j{ z*udxmwuc%ncMg@lR6WfnYT~G_1@=u|xIe>-a=aMp+vDxE%2nWk_xkfwl@%QRD}0*I zCbbZ`>48HR^eg1J^oW^I@VLVB?_k|ae6^}K#{L*9ovia+R}c1=N>|Ev;U~KO6{?<= z@m(>eDFpF+Mm~+uhbXm_ZBjDs%jvva3$VSwuGQ2pgNd?}o^#^W@}_$&?eYb}w@AT^ zd^*uw6rh5RkEEQ=ni^5nahrfI?m9Mbn%+VNM;mJ#_XY}jEHZT7CejvIVIm7`=dje z*I>Cnt5SjS9akA<`tF7gH1dcdrORvFXJC*;wz{T4%Wp9^Ld27Le4En`&fdRLy`>yj zpCsHl%^L_X=BEV^1FTP%PP8EHjF7n-45R2ZOjq9G2o^QviE3nCfk4>cOJTtxD_@CZ zBSuFjz2lZ_vlpNPFEEEx_?})QXfWfmaq>4x&n|Qx#;f($q)iY5tl2gT*jvKf_)Vtp z46|H3UO72WsrlgP^}=nK=*l8jI&9uCz$IXF{{9id@&hFGi{@X?@!^k7Gtcx z-J3Fl@Y?qzT*AnXU#6_MGb?x|x{D7%jsBX0YGao!b^a@=Fw&z@l*BX(_V_1?`$$QR zS60VW$kKT)JSrj<7pD?$-`A9|>4H8clO{JdqLw@Vee+%xT#hUIhOwa!bQg^6C#P5& z#teG+%pj6%QPkk@F@Fl1PnmCCRygV|I+3mG{&*bf{H89+oh1T=}(d$a~XU6ko+;NBfdIKLn|Vi2wiq literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/color_head.dmi b/modular_pentest/modules/clothes/icons/mob/color_head.dmi new file mode 100644 index 0000000000000000000000000000000000000000..735309aca2b9949bca9c925b9bd58152481a1d94 GIT binary patch literal 4099 zcmds)Ygm$L9*19@G&iHHrmbX5XPlaYlh&nZmT9F;rIU=QnF(20o=`MN%>!UkG*;?t zPP&7do$;(`C?0^6ipl||MDT!;nxNn*5jlk{X0_#ZZC|$iFrS|Hy{_l^bU*j+`Tf&= z_S^|tV7dSR0MPDTZhHYhPxq+@7#ZpoSWIECZeb?+>_6dl3>6d;7JVWt3JCxw_42cr z3vlaAPP2vIrS^DW8>jaE)_0Yr^5 zXYAUa4fqQiD7)5{T=&mz_4?W{GN>;0?>uYV3aC!M=v3 zF5)RIFzZ3Rf4KdI+u3r|2$D6JvVHugZ%q_i2R4? zhhuB?Bs;}sekHY+)!WWB-vjZ>E-8(Jt4hy9Wj)XLn<5Vka?Al>(Tm+~+k8%Tj&x%S zyJO85FQjKuzxvhU^yjvaeC7#4b(p0nSbVhZ@#k4fhpas!n};(&UK^G!@0fmg%7GN& zaIe{|ngAjS^KG-OLpCu7GEbCkz%4m#VqhRpBzJ?IF^XiCT&lUuR`adLMEwQoEjetF z)LE3&Gsbg_){@(<+~p?himIvJ`U_s`N2uZqWEgmx$tV5MlTUWq^D1c5!b4rzdwkPKb;0$RQPeU*ECbH& zh*tE<8kf0nVPna?Y~1psDW5f5R<^2+y(g60R_Hfi#~-V4e&RGedCfKp#5)$r!^ev@ z#%w9YusWa82YDRR$H#e6Fmj>@&FsHKG$%xmtq~2}w|g$if5iVBp1tz%ac;{39h)HG zA7w$fk;Pg>#b|Le`no+OFE_x2RDQ$5CZOZx`Ou|Rdl#*uocMg#z`iv>_)@nqD!sS!N_c~#=a2I*q-}+dx*}O{_P@bwt>+OKE&I%~J_1vDmN^SEgVInO zEhyY$BNB3-vIwS0DB{DMS3~9AR=LO)#(2{8#?~c8*xJ_lndHAH^?D+&nNMO?8s^0q2k3(GDhQE=(b_X zn>C&XiPc9RCI0`D_T}+aC3rI`M@lm$H0m! zg{qr^F|(KBk6ZpjPR(;Ev)|VW>i+6U1oz~(IypzrjoQ(xBycW6RN;U5BX+t9%>x;R zUFOrZag9DY)glvL=VmREd_%e7$xLv%bI<3mt7xqYzE7FKS);gi=@m{vjP~gAQ80=6 zI-O-~=Q&YZ?9FOhoKiW|6YKi9;kIyPh={{ml+r$~mj5IT*m<%h*ys)<9~xwGBO4p% zi5>xd0nxB*J6i1NkW5qkGB6BBf+Q4gprg^QSJ;j>#YDp=26+#NNOS97?=-U@`vbCw zrnY>)VyckJ-*!TeC-<(kTd@mG&!Fi8_$5Hf;d#KJm3qL+AAwKtyB`50_udk47?)8e zQJTlslMHE%)75i``qxi(svho;=1LrDM^{GlBzyQC8Hp$=Q1ed*!_yOeJ?WAD((A$( zeWXC>8=(CUWtA#Ngva9Rf!>I3b?cPd9OkL=yo)j6Ch)sq$>OPA{oPi>Z&BYABSu@y+*U-RU1B{@r#KG73ad{^ z@y-1p8QvA2$9few#CxJNp^!`-8u?X6G@Kh3c``o3l1CSdO4n_n2qYd_z78 zGqr72G%6ZCBihhwGFz10Il0&+>vU*Jj#An?CN|~UQc-y`JqX?~dG1vY5>zQ!@Ajam zsCrt0_Ga)fCXBjbG+uWEmkqyR4jgW!Aj+EmicRQ})WwUP8y||IphVQB=NT?KSVF?k zY-=@(-y#woBeof@SltGT>Y94+tbPyFZ!S&FiDX?Izc&AS8SY zU-lB8n>+{|b2=+^`B>DpW+*~mO&kS1nw)oslzK$purScgp{P~> literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/color_neck.dmi b/modular_pentest/modules/clothes/icons/mob/color_neck.dmi new file mode 100644 index 0000000000000000000000000000000000000000..5e2c21cc31c641649e88d71daafe6ecc91910e2a GIT binary patch literal 1709 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 literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/feet.dmi b/modular_pentest/modules/clothes/icons/mob/feet.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9518c2c0a692056e5201abcb76eb5be5996fc353 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoja4BLB`&GO$wiq3C7Jno3=9>F zrG3_X%?1Lj+3z*OF1Y`^u&mQT&~=AXO2R?ykCXR4c%8h!rNr1jc#nkrO>=#NzfU(z zD7E4HaqLMM`_r9b!cV@kq;^Crw_99vVqEMOZsPwg{?%I1bo%hwU7#NtGJzX3_DsH{KeNfvbQReu^^mi_WlaxFc#>iL* z@_iEDVX^a6=tuT|>Zz+Ickg%L>$vhg`q51Wx z8P5*>TNoV`S!QiL+i_)yOk8ZtuDg5RzPQzTbmxKNe~OmM?Y(wp^XJJ4xuwci_C|az zzN~vT|EJsKd7=VM`V6{tMOivkwdKEWxNP9P@a(w#dEtZ4UO(4zJi@r;h9m5yh{{7Rx@oxEYd*bz)vmRCVpDnL_#@g_S7wCQkBG7_Gj4v9pt{q-c zd9`F zsy&u`4GIDb+22H^-}Z)QC!4f6{cB)yQdEwT+I#wuCM2=m)OEzd1D!;*M^S$0&Z!K_*A5C$bR|0IdFsU?qa>=J5=w@s=l50 zHzRS%j4#q3x~@Lt$O|%?|Fnqhxhs2qw~F%Qo}(&fq}rZq{L(wH@z|8-Tz9lDx&Nza zGX3UsC-}kL4a+ssHeH>1qvUJNclN?U6MqXsh2;zkOctIljv*Dd-rjKZmUfhAczAd9 z*D$AOuWDV9mP#Oye_uvp(zpY$k=$-qcqO1#6iCzHV1Dmsq!Y-*>V7-M44S zKFd2St&rNg^}pbh>ctPGwr=NL|L*eC$1zd0%sG$RcJGmlJ^wnXH=5VsH9Ih%9T+$m z7!?>;8W;o^m@qjD;+Q1(+&@3P@4I~RIfJM3_V4MF**tqz{Oe|R_WRF{AOC-P)%@Q< zH@@Gyw|Wi3yZ7(AO3&R3cR0_?z`%&xPz;$e*#kLdv-#PWE6N_|Wa-v?Dz}pVE5WpZ oIsKv9HyZ}*PQx&T;ey#WhRPS83#R|-bYuVmPgg&ebxsLQ04<$ANdN!< literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/mask.dmi b/modular_pentest/modules/clothes/icons/mob/mask.dmi new file mode 100644 index 0000000000000000000000000000000000000000..5c4725a86c6b78d54e8bcc3c2969bdcf7c9ba79d GIT binary patch literal 2012 zcmb7_`#Teg8^FgwjpUX_Az@{yh@6wecFM|}#*~@6NvOHzvf12sm^qwuTo1Wshskk? zjOCWmaS79x(Og1qZGF+)GS{=tKkz-@&-1+R`+43U-e2D5dEX?I^(|TH6Vd%RoM!%`H2;$G>&P6YCVES~W}C89y92XL0FM-7-D`b*lEGbl&44 zwf_wDh$B+4NwVqp*Kjb$k9NNt9sapLr7bcRy+)}^?XiO=ha5q_P45gMFwZ#+w9hVJ zD-z2O4)(=eZ&*@3B~C$>4n5FPEyd5hv z=nlBC9Ce&-Mg|0Y%u&b7%G)Eu7F+D-P(%xM%r4D(@WAr-FgF)EA>e@vuJknimYu!Q zR1$%x8u%ISy%_a%Vo~Tb<;aa7KzI6f2J$Al?gEYqr~r8pnxN-ped`;I-W~jI4LE6r zGUjxU)!W-A0ELC&tk7uN-sT`d+H`W`K4o?K3QtWZg1Ec+lrkMIU`dXIfP~M>kOOL? ze~zm-vhv(@;@G*wK+Sx}%yZ6)6R;$>I|w@7##tKo58DSS1y&PxhDF3n&} zU%y^E=v;Ht5P>sJLt_>z=hH8|_g?;C@=D*Ra}}hh{=)ksZduV>ieDm%s%Rw@d~Zx1 zWsNs0OP+wUT1Pi9waRaMF|X>~T83+<29Q+M=E(3pI*i->47GY3xN)Vo7vv0!jg0*V zz+n;J>|ezhxwZ>xJs__TZHU~*3WHkSNDIxIDOImFyL|>i)|*NlDgm}8 z1T4+nbk=X75r_PNLmc!e=oj`2SzSrex_d#k5wO*`KIqHBGFma>T)Tv-%&Qj=2qaWJ zAwv)k&KRM$Bt~V1e(zbOyD{a$f$zN#EcAtB-`>AtcBKOCe=u*E=#0{8@o;?yrb;+b zL<1igV07v#ArHkQd7Vbk818mMWhCB24C9VBR9R6qww4`d8mq8(E6akJ1`bN7IU~4l z9;q!*FH$K76C)&ZF+Mk7A<8d_X7rO*NMS+)V^}#c*5AL~1L7YkrWLidZBtD~$mmu~ z?U$$Lxg6qO*vehi;3rasa=M<4k^AcgH@J)ZGqj;JIIf()On>^MCSD!g+AaR-uVw`W zKfkupFQjX=JPdf{M$Mz|6bE3brXNSfizVY_4oUn2Oa$PY{ZF}_>$|i0wGBEp=VfZ0 ztAW|rv?;v0>}872kra2*EL=j_Ua4)J(9a*6{?H%u4kFU&lY9rTT2lYP})&pdP6>nzPL1dI=6f| z=Z;pK@?cA>heh}12h}d=+wl(O0d_U&{O2_^eabx9nGJUSGEr$-X`jv;gg3frpWr09 zdRd(U)y1v~jhS=urZqM3h#25%v1<>=9C-PA>*nik`n0T$5`jnphdU_uuju_CQ9!3ez;pDF>#5fV7%QidQ9BuxIw^K7Z;jh)x9C_jZsfFJ=vXT z&9TYD)|Vpp4L7)lqJD0}b!)na}^-`6!orXKm)n_gicYh@d}JkINVW!fPAf;JUiR `UCUvdhso zX1tJSj|ua}$owSCSALGkzM!**yoIL9%*E%m67n<8vzXQDSNr#o)GU;S>*hy<3d!Zq s)%wiDUwvOk4s^u4iTl6yUpy<2GhFd#36OODD0N=MEH!du=8UO$Q literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/suit.dmi b/modular_pentest/modules/clothes/icons/mob/suit.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9546ddb7be764d1fbd54f37cbc8c5e3493c03d79 GIT binary patch literal 1515 zcmaKrdoYQ2USk7i1a*V1?tox-r% zI>iv8FnKL0Wu#;!O){dyd(S=he$V;b3=cO)ML8`w08n&x zayTkhx;RK^X>lG*NN^TQT7su{jKfLFiRjSCn9zuDfOsS|hb@XfCfoMGjfTw8q|S$CMh`OMd;&#AV;uZ-{^yM03Au1JbKS8hnMoht zh^;p*y7%f^y11~F$g);>%sWrolI<79^|&O*D$Yc1MnzbdTxG((V)BuR>6tB;W~}g0 zK2!pLl&-S_-ZTEy%(dPyH9V#}m~|>2YdpMb6{oRzJ2sPdIZNZOAk%geo;70L&Nnl7Iz301Y?* z3DAgHdDA&O@Qz&Dygu8pVrf~z$#Hkf)8)2GrWiNSsu8B-^YL~bHc>daBHC#FE~4rr zze>rgZippuck?>2xq)%5xHur5sG~eqy`4vh)G?GXH`uPnp0b`~Ka%zM&{>dl$n3*( zW7Hl{p1oK*N@AGjAG4}j=YxK zs6Ui)WjQsqz2%t}DDf6!Yz%6D*)+f5kBOX17I^51?bIQ-M_!bs6JoGOI!+Gl4F02Rs!-%x zCN|3qFH%d;%Of)#bNj9d`ru=s8=FPk3R53t#o+%-z<)sTb?Ig!kZ5!r6kUk)+4tOU6M^iqOnP#n z)v^pG^`QvPt;iUnU>!x66C%8-F)ez-$}O)saU*v{=IsgrK1Y30CduFmgvjD-IA0oL~88d#g|w92jH)7{a;4{bX$Cc-MSa=nZVaKrqc9XgI@#pMsSrWZFQA; zX1yXchMff(>OM<}>oxIcN`&|9U4R?||%L#%$Vk^RUwmTdHY&oigKl%~tI zA&mP;I!!P@M1_o*E(xA4pT5_WXT~tsmxrFLvQlkr{px^li+R_pmcBpzY00n=)oSFi z-9u>Gdb6GePv)>ksk*PZjS)NH9voGd0?0-B?db(e7))nrUbU()&Zf9a@@+SXak)!V zfnG$Rv&5{7yPr^nA1^vCXctNJU$Vxz(4c=4)RTeazhR7#)RhR4=q|+0M_(xMt3>t4 zVtaqywj)ACdn+8z&xpL8ik+5lqUGTA+dE2iVik5xAM*&<7??2_e1!KM@^lw0R+t6t zAg@m%B)(X#79 z;s$+thz`!j#*Ku)Ns2AIOW?0tnKVt68f29)Pit0QO{xF2z5!{pHrexAYuC{lPLT+u XgzOrQxnZa-W&oTIx;d~8kk0=N8zhx_ literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/mob/under.dmi b/modular_pentest/modules/clothes/icons/mob/under.dmi new file mode 100644 index 0000000000000000000000000000000000000000..541a3f8a70736bc13bd8246d34d7ba3c35548708 GIT binary patch literal 5880 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 literal 0 HcmV?d00001 diff --git a/modular_pentest/~pentest.dme b/modular_pentest/~pentest.dme index 36a8cbfe797..00baa76c1a3 100644 --- a/modular_pentest/~pentest.dme +++ b/modular_pentest/~pentest.dme @@ -250,6 +250,15 @@ #include "modules\catalog\howto_guides.dm" #include "modules\chemistry\code\medical_reagents\medicine_reagents.dm" #include "modules\chemistry\code\recipes\medical_reactions.dm" +#include "modules\clothes\code\accessories.dm" +#include "modules\clothes\code\feet.dm" +#include "modules\clothes\code\hands.dm" +#include "modules\clothes\code\head.dm" +#include "modules\clothes\code\loadout.dm" +#include "modules\clothes\code\mask.dm" +#include "modules\clothes\code\neck.dm" +#include "modules\clothes\code\suits.dm" +#include "modules\clothes\code\under.dm" #include "modules\cult\code\_cult_gamemode.dm" #include "modules\cult\code\construct_spells.dm" #include "modules\cult\code\constructs.dm" From ddce34fadfb7693a8973aa86069b61282548260d Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 02:24:46 -0400 Subject: [PATCH 02/13] adds pink chaps, updates bunny suits, adds cuffs to loadout bc i forgot lol --- .../modules/clothes/code/loadout.dm | 10 ++++++++++ modular_pentest/modules/clothes/code/under.dm | 5 +++++ .../modules/clothes/icons/mob/color_under.dmi | Bin 14730 -> 14205 bytes .../modules/clothes/icons/mob/hands.dmi | Bin 394 -> 380 bytes .../modules/clothes/icons/mob/under.dmi | Bin 5880 -> 6792 bytes 5 files changed, 15 insertions(+) diff --git a/modular_pentest/modules/clothes/code/loadout.dm b/modular_pentest/modules/clothes/code/loadout.dm index 3fe3f5b2e47..2f85112f38b 100644 --- a/modular_pentest/modules/clothes/code/loadout.dm +++ b/modular_pentest/modules/clothes/code/loadout.dm @@ -5,6 +5,12 @@ display_name = "bowtie, recolorable" path = /obj/item/clothing/neck/bowtie +//gloves + +/datum/gear/accessory/gloves/detachedcuffs + display_name = "detached cuffs" + path = /obj/item/clothing/gloves/bunnycuffs + //masks /datum/gear/accessory/mask/ritualmask @@ -101,6 +107,10 @@ display_name = "chaps, black" path = /obj/item/clothing/under/chaps/black +/datum/gear/uniform/chaps/pink + display_name = "chaps, pink" + path = /obj/item/clothing/under/chaps/pink + /datum/gear/uniform/bunnysuit display_name = "bunny suit, recolorable" path = /obj/item/clothing/under/bunnysuit diff --git a/modular_pentest/modules/clothes/code/under.dm b/modular_pentest/modules/clothes/code/under.dm index ba56d8c4df2..f0cf8574c21 100644 --- a/modular_pentest/modules/clothes/code/under.dm +++ b/modular_pentest/modules/clothes/code/under.dm @@ -53,6 +53,11 @@ desc = "Chaps fit for a dastardly space cowboy." icon_state = "black_cowboychaps" +/obj/item/clothing/under/chaps/pink + name = "pink cowboy chaps" + desc = "Chaps fit for a fabulous space cowboy." + icon_state = "pink_cowboychaps" + //colorables /obj/item/clothing/under/bunnysuit diff --git a/modular_pentest/modules/clothes/icons/mob/color_under.dmi b/modular_pentest/modules/clothes/icons/mob/color_under.dmi index 3dc0e181f3344875f2848aaad741e481658231a9..f0e65ba40f9e41606b5ab28876812532821663bc 100644 GIT binary patch literal 14205 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 Iy0%yU5BjHN)Bpeg literal 14730 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 diff --git a/modular_pentest/modules/clothes/icons/mob/hands.dmi b/modular_pentest/modules/clothes/icons/mob/hands.dmi index d0efdd93df7f3a80518b5efd8fc44dcc5f16ab85..11ecafbbc19a94f9b5e69269e3c1427375713e41 100644 GIT binary patch delta 211 zcmeBT{=+n3QQlEc7srr_TW@df6>M@4Xt=mk)OagH&laZc14}eg53t`)q6fZ~E7B&-B}rdA*XGPEEha+#~zt{5C=||cp!n&Vm@hBC{5^Y0a_@_)ntMMTeEV<4_F26FOmFy>8@wp} u$F!g#djIWx%yaawpUVHtiekoszPk+0E#Z#;k9JK3NqD;YxvXx?M0Sh7ZDh7`W`)E7mTijZBF8fI(}LR!cYA^Ad!EnpI?wyLk1fp&p&Viy002OZ zjSQ|ZR{Won4Z^rynYzcySc)H9wGA}56L8Dl-8azP#~T1bKrfzt;*L}nh*{iK5F2}f zELDWKh|CN2uyA}j_?V5G?UI;iE9SSP>#%BcpqOXh%^sa_X ztU7o;7Z_>OmHZ766*&e|_O-HPKXs1Tz*#zyE$(TqN}j>3#BN>(5&k?)f5AB!#PJ6z z11TbQ@_wODl5<5WjwQ0i!K>lNqxG&va&*Oj20FQ-Lc)IEPaE&mbSr-F@xiYwu|nKY z(Z>?;-S_J&VST~oJLnfG9GBQ-@}(``fdn|zvHEWymh!^@M~oQijU`xKzypZUhvr&7 zZw7q~T7G)ghuGKiYCAeK^yj(lvMRSbG`EFYbdx&un#(aoL|Lyxkx6===L8|HxVe2KMS6_L0H%rf@!VK&5c99Jc z4OA9PV|BG7s^#qila25n-Q7J$dsCi@4NI|w>ne_Fh1Qpf$hOx$9N&be;LI}5)p*)C zL=k?33RCOYMH57W&7j&~l`-0ytCFkMMsA;78%z?pHpt%C&?EueRg0H2+(nY+mb&6n zbMoX?0{keP2glo3BS1dQjR>vkxp8*Zn!oF{49-L4>FsG}c(m~3{zOA2>*3U%d@XaqO zngZaffu(VYG0Ap#siV~f8=o@sVc-h-%8E0j(oxPiQl2J1+wntb3}8EBh)hB+u@xdk zVzij_WR1m9TZ^iwL8`OYoBn<&lDnntL91twGn#|8kF(F3f4W(-&?El%b9lSNAG?~lTmByST{@8Qc(d%Z%)d; z#94vKoiQ&2;E{bvD7i7Fd2?fHC~rF{9h6E=_TZUp3+l9`r~$$_(~dY$M+yjZ3 zL}X2~vhl;UXLf|_5#c0AN)yWYBuZ*+ON!YnZpSd45>XHwF$^$?goO;TV9E2t2}yqE znI@bViaI)$)r$pG;^PBf)H=t5cUG%9W(Itph0D)F|p`n z9`r&hFdy#`TOzV?aHr>vBjp?_m0D#DZ+ZCyI6te+@^sxD#ZF}65|3$6U)e6=oeFyC zdluE$$O~~)@MTy+@nsq_oInHX>N)y7ZfbN`u$XW5VeAKxVOnsD$s78uFuNJHyvf@) zS3dF&F4Rxz&F)JavG*|{p#8@Vaq?gwF!Sh81O_rn$YDD)vz&lzs2qN1quGFEod8En ztW&+-n$dgE1rbzgj5^+iJ6#C#UOe~2E@mKsTq)7Bcw8PDegkcg0ofRT^m2^;%0=um z@g5fKBO&7z-ULO2W?s~}ex1GyYd`&$7y|_VM8f~gi?`m`D`m+f%+j^-t+@x88Mrcy zZsC~>_myUoa0&L7;NBe1j`x_(mwO&w3ugP?H6kcOQ?&ez8rOO|+HamIx(N3NJ6q92 zqde~0_5Q6ksLsdRMGQQGjZXAn0_xrG_pmk+u9r;_xDd5rzEZYCtUul_77OTiFN?G-rOcTx)-YW@ z3@3Stw;fFvA=Ep5j}N{4VB*nJSO2}2nXv;tCI%^ZIM!e#j#|51<#ag{X#*F>T4@|0@naziQ^oRn5xjv>U zvD2`>@f~yhT<)Uq(zC{OpnN3*7QK<$eSf$zo0VAZy7((62!4Od0Vc{ORPjtCrj?=) z@(|+t*(brGP@ESDfC1hD9vf}P;$B!l#82(rt|`+20ltN~BEEu+XA3<1uq)gJx;i

SQSyG@KCs9_ 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 From e81621901c21b59fe23dd6f00fa3dfe3f25f53be Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 03:56:34 -0400 Subject: [PATCH 03/13] adds object sprites for shoes (also adds readme) --- modular_pentest/modules/clothes/code/feet.dm | 6 +- .../modules/clothes/icons/obj/color_feet.dmi | Bin 0 -> 3326 bytes .../modules/clothes/icons/obj/feet.dmi | Bin 0 -> 596 bytes modular_pentest/modules/clothes/readme.md | 65 ++++++++++++++++++ 4 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/color_feet.dmi create mode 100644 modular_pentest/modules/clothes/icons/obj/feet.dmi create mode 100644 modular_pentest/modules/clothes/readme.md diff --git a/modular_pentest/modules/clothes/code/feet.dm b/modular_pentest/modules/clothes/code/feet.dm index c717ddee66c..1a057da1c16 100644 --- a/modular_pentest/modules/clothes/code/feet.dm +++ b/modular_pentest/modules/clothes/code/feet.dm @@ -3,14 +3,14 @@ /obj/item/clothing/shoes/laceup/brown name = "brown laceup shoes" desc = "The height of fashion, and they're pre-polished! Now available in brown." - icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/feet.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' icon_state = "laceups_brown" /obj/item/clothing/shoes/laceup/white name = "white laceup shoes" desc = "The height of fashion, and they're pre-polished! Now available in white." - icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/feet.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/feet.dmi' icon_state = "laceups_white" @@ -20,7 +20,7 @@ name = "high_heels" icon_state = "highheels_black" desc = "A pair of fashionable high heels." - icon = 'modular_pentest/modules/clothes/icons/mob/color_feet.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/color_feet.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_feet.dmi' unique_reskin = list("white high heels" = "highheels_white", "grey high heels" = "highheels_grey", diff --git a/modular_pentest/modules/clothes/icons/obj/color_feet.dmi b/modular_pentest/modules/clothes/icons/obj/color_feet.dmi new file mode 100644 index 0000000000000000000000000000000000000000..a5e6a954fd66c6b2749afe9200d07e35c8c826ac GIT binary patch literal 3326 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 VkTG%jNnkQz@O1TaS?83{1OSmy0Hpu` literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/readme.md b/modular_pentest/modules/clothes/readme.md new file mode 100644 index 00000000000..56b257bf3fd --- /dev/null +++ b/modular_pentest/modules/clothes/readme.md @@ -0,0 +1,65 @@ + + +https://github.com/PentestSS13/Pentest/pull/673 + +## \ + +Module ID: CLOTHES + +### Description: + +Adds miscellaneous clothes that don't belong to any particular faction + + +### Shiptest Proc/File Changes: + +- N/A + + +### Modular Overrides: + +- N/A + + +### Defines: + +- N/A + + +### Map additions: + +- N/A + + +### Included files that are not contained in this module: + +- N/A + + +### Credits: + +secc + From 69555022de17af9ce3ae7bc9ae5ecf29e8ccf08f Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 18:45:58 -0400 Subject: [PATCH 04/13] adds object sprites for masks and cummerbunds, updates kitonchu --- .../modules/clothes/code/accessories.dm | 2 +- modular_pentest/modules/clothes/code/mask.dm | 10 +++++----- .../modules/clothes/icons/mob/mask.dmi | Bin 2012 -> 2033 bytes .../clothes/icons/obj/color_accessories.dmi | Bin 0 -> 3101 bytes .../modules/clothes/icons/obj/mask.dmi | Bin 0 -> 1829 bytes 5 files changed, 6 insertions(+), 6 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/color_accessories.dmi create mode 100644 modular_pentest/modules/clothes/icons/obj/mask.dmi diff --git a/modular_pentest/modules/clothes/code/accessories.dm b/modular_pentest/modules/clothes/code/accessories.dm index 044d8b43d77..ca4fe77ab54 100644 --- a/modular_pentest/modules/clothes/code/accessories.dm +++ b/modular_pentest/modules/clothes/code/accessories.dm @@ -4,7 +4,7 @@ /obj/item/clothing/accessory/cummerbund name = "cummerbund" desc = "A neosilk cummerbund. Special material allows it to be reskinned, but only once." - icon = 'modular_pentest/modules/clothes/icons/mob/color_accessories.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/color_accessories.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_accessories.dmi' icon_state = "cummerbund_black" unique_reskin = list("black cummerbund" = "cummerbund_black", diff --git a/modular_pentest/modules/clothes/code/mask.dm b/modular_pentest/modules/clothes/code/mask.dm index ff37abe0e51..141af00bf68 100644 --- a/modular_pentest/modules/clothes/code/mask.dm +++ b/modular_pentest/modules/clothes/code/mask.dm @@ -3,34 +3,34 @@ /obj/item/clothing/mask/gas/ritual name = "ritual mask" desc = "A spooky mask often used for occult rituals." - icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "ritual" /obj/item/clothing/mask/gas/karukosa name = "holey mask" desc = "A mask that is said to bring out one's spiritual power... But does it really?" - icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "karukosa" /obj/item/clothing/mask/gas/demonic name = "demonic mask" desc = "A mask that depicts a grinning red demon. It should probably see a dentist, teeth aren't supposed to be that yellow." - icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "demon" /obj/item/clothing/mask/gas/kitonchu name = "\improper Kitonchu mask" desc = "A mask depicting Kitonchu from hit videogame franchise Legend of Pocketmons." - icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "kitonchu" /obj/item/clothing/mask/gas/drunken name = "\improper Drunken Rider mask" desc = "A mask depicting the eponymous hero of the popular Martian tokusatsu show, Drunken Rider." - icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "drunken" diff --git a/modular_pentest/modules/clothes/icons/mob/mask.dmi b/modular_pentest/modules/clothes/icons/mob/mask.dmi index 5c4725a86c6b78d54e8bcc3c2969bdcf7c9ba79d..fc3536e5174498689ea89afbb6641e5be06d1721 100644 GIT binary patch delta 1771 zcmV!hae`L_t(|+U=ZuXjNq#$Dh-CpowId=16J2(rB)1lxC=Cv$UBF zH56i%DK#jvNXnGV!YHF)g=RGZC6#3@EtjH^X|b%k$-es8xjY=b zY zj`aGnrii$H-G4@F89dQ-sQ%L}H zl}gzW(A@d9?`ToOhm{s&84hQmNop6=yPsKoZ0BBIR)6M~^dEZ04j8ozM=rsFT#0fO z3bsmcJ|S7?60DI-lG=@A*VTDz`J@Ef%>9Pzhx@wZngUuY!DjHX^-CGD9YQ`zC>h9w zX+uD{*!7w&au*5vUNb;RDVCkD--Z_T(#d8!4T#5vFSdXH zxc~tH0h6)?6_dUN36s7B36s7B34aPpK;5q{POrLrTIb*J{TF=Cd&#8urY;=vnP+o-bG`69Q30htT+}`wxj@!0 z@9!z;&?GIv1Q`puV^dO6=ynv+j3+Fibd74-=c}Z%8GBhj|IOuH)E{eaOn<+2(d4hy zgELR5O~35#bQ?;f53E~s2_k`(AxeL^IG8(<*{vyQ0R`!aXMX>ItKYWr-Q@zTyW~hP z-adM~8op&iFs}Zsr*gS5SQAj>Gez4w^?u)0_$IQhKKX*#ug->m<}PUSeo%KPHRTuH z`Xp5t0-mh|ho!V}0z~@o{ePd{1(Oy~cE9GSlbqZK>Jr?iq=!1#dMte`s1j^mg|4qY zR}Uc=l?pli$r5y3|JHHFvXQEk5}`5c0c2as?EdfXXHZ>JUz z{y!ifARr(h00II60w5qDAOHda0snke6xhG7AK>K*##~{Gti(c$wx&v$1BZKdyF@muc=Y z3ugk_>`~{sAD)CBeyxxNjFUm^4=sIRLg{%S3q&a2Uz1G^u>%WBnDm2) zJb<{8Pa{vAgDZ;C^WBXd%GFb-Ys@U7TTsSwEuX>&sFAG|A4sdxN?7S@}(itq1jzj(SRpa zN85|4_tI0=niNSZlC!k~$@IFdJeJ;iQaxPxYT^=#e6Ke=s%C%QH7A*ODgh ze90}rynD}w)bS&41mmCQe4(25`H4#SUy|9D(3J1a!M%b!k}ktiekJpdb|21(gpmX^ z`{UV^P`76j0VRKc+XmLCPxsaa;fsJtwuZ|`bYm!~2Ey-u-JSUTsNDNreBS%PSSnB4 z22tnyM(MaL23!Fa)ie!&V@wW}qaNBf@k#3U5?iU$>^ zGp`>~YEMAHeE4u#hG*^hI2fNgaZ+{Z)-@O}8+3=$ZdqNf1e6O>ZaoCaMKVdM3`_Zy zyd`TvZinJt^jW_#Za=tOU5Qur>Y1MZbofYK{3^r+azRdST4g1RaPBM1r`dl9(Gtqh zWnVlALyrqpzO&_F;~p@V>+oN3;1mP|lUoEFlWqhF9RvgfKtSkx{0#-CVZFWapMn4Y N002ovPDHLkV1lhvYUTg{ delta 1731 zcmV;!20Z!k58Mxs!hZ!xL_t(|+U=Zwh!kZUhuZx>eUYUfXs90*+ znH_2x?N@ih{QDC82SfHeGS(m1kXlO{7bzWSkcW!80YNjD}M^si5--&m5 z8E@-$X6JqP+~@gc-&xsvcR%~g`_7!)$5Q|f@rVEr5D*X`7k{d!%=GoRX2a^p9z}ZL zhT2;HmdeV^@fUSwBsru^cJvq;v^9$q*T)Jdg zFs|LWR#i=&9*pNNm}g}bbSyo8>Gj|``xqsJGR{G`r2A{VAM%{)ZZ^43` ziEhfs(T zN(ORb+7M7qc0H$y+(p8^*Y#Jj70b$3y0u=t)Uw~sO^6x1e0cq+K-tKmQ1TWD^*GAP z7h6Dpe1Cv|fPjF200;;O2!McqfB*;x2nc|HfPer92nYy(fPjDi2nYxWfPjF200;;O z2!McqfB?lMpzf=S(^XeU^ZXaS|AOy%PkGsn5zr!LO++9@jIO%&$Y;)T^t+~5tpHIu zcVMJnJL7ETxN1!|)p^iop3V8q`NGGE3Ml<>QGa_t@`21hw4bM>p-C#i1Q`puu_-Aj zbRC71@q{Im)~LOQeU)@JW3DLm-(1y2{ju@p%yXAa{!%?St5t3PBKWXf7$xCt$cPl0asskG8pd}HBJrNxiuKi{H>>QxiDB0 zP=DkzMQfaTzi%si6PZ_k`GVP3XG1`96|{Lhs2fU6`GvQ()D?$-ZEe9}DQ$cKB7OM! zPp^VW3n;7K{;89kTnFkc_?q$_>W7BYna85qg3Ytg_1Wj@CZyAnMQW*cxs#iau!J2| zzQ_W)#=H>`Y;3=#@OnJ5=~pH1L$GlJ5)RHlk2~Vl+o1)73kL)QlfefVlh6kVlh6kV zlh6kQe@vQd`}X(0KicGFJ5HJ&SM~N!pE~YkJ9e1`0$L!S?NCuTvcB9eo!a1KJ9e3c zGXZUO)Vc1%lhDJ@6|;bGGKl@Ar58pXZFba|{dl$;x%B*<29C)b|9Nn`RRIeLGm9uW z#0pJ!#7IA#^wrtuh;cDzw!lq_RlZ-7$ zFNWoUThAq1@Z7CCtyYui&_%djBO29-U1dri7qfu!`8B!Z5IeB2gh_u1@}XVH7d{Cz zB{ojHLdDD?N)CAmO?TDV+6ryYmo0cbE>`)%SwzW!Uqpjb5D=5W0xf^+323_)&!ql9 zqhB$o%+rsy=ijztw?B6Da8Exf$JopvpL50fA+~$*!Xcz*+@n%!-czmw+%f49HTuKX z6arcnFm5MYT%;1NV$){z*JID9i(h$8)lZyYwWdw}Fy8#5`0%l-JW_pnTX_%ZW5@k` zWuEg7h+D^%k1t;ek&b`Q>7q*dKdG9VUR1qTv|1}Ek}8t6>OitRZ!3=#BU;qMRj(#4 zp~&}o?W1bWuC95>yh8~nVGr%+sVkS=8XR};`H(tu@{M5p^Ssa1-ot*P68@iLwk0&> zyK`W#AdjTCVcC8q^N$Xm$cu!L1T_2cY)Yu>*+f7I;P$e)>XU!QDDzEuN-iP z)3z*E0?G*~mmXGv~HzIUCKEW)|39XieaO^B9I9$oh0Nf>%utn#&$hmC8%e9psv#eq{05R<_IDj1>T Z@eeZZVZCkzTjBr!002ovPDHLkV1gzMY;6Dl diff --git a/modular_pentest/modules/clothes/icons/obj/color_accessories.dmi b/modular_pentest/modules/clothes/icons/obj/color_accessories.dmi new file mode 100644 index 0000000000000000000000000000000000000000..aaf384c9375a268a6aa66c3563fd3cddf055207f GIT binary patch literal 3101 zcmajhc{o)2AHeZ5V~{PfWqBCgx+bYql0;0FqO1|RXmlAGdnCIVi62^&$UcNJH#-^0 zGNW{L2if;+T8wRE$=Jrs`JvnI=XTxa{&CLtIp6br&R?(R{W;O5#^(fhrFa1V5HQf! zy|}*OHm)69>-RUBR~y$CN}z@H4PCU4gEz+O2FB9^0Q?~dkE(WtAK}+?o){B7fq*hJe5HT>&`LqA>Y*Z8fgq0e{pz8kiL5X&gT_p6 zZ_N_zFj_4Svll~{G39OSn=tvt2a&*#`)+w>^xtDS&2n_%-N%rG>MF_nrcfL6#=sEnSvpj*wdA1sbk)xk*_sl!-KV|h^PFn z-V34xh^PuKi_5eVh>=2?aqM>i^aL^qkm`k{rE>-#J|iRJk~zznITg(!mC=Xu7f}py zNt@$8kox8X z@Uy0PH@C`TSLpfRgZY9k2YX=g%huNLPU}LR{c|P7nuL;go_FEDkZOlz$<>wUD`6q_ zZGy5c6^vKDzWE}v9SKVV>=ENcf6m1)J<#()ZUI<5YLd@3zi{3iT)VEfd7jzgJozYH zCZC<>ne4>0y2q|poHbR(f}_&zH51_?8XQQdS9Zp++s7d<+e{?2Q-HzoT>d>qfX9M) zq!0qYvxMb1b9ivhB$z$~1EuyUK`tUw0RP1cIMG&ED{RLjAWa3g=LXcP8;ES>Az$W@ z&_)2x0`@!bKw1@`p=km2`U0I@Hsv8#@{vF3{0xj8rlyDhPNaonz{gb42m64g&0mo_+TwUT82ud;}wc~4;y*XjagL>5#**A z3L$@AEs$dv_Vy-bhHfb1?(W2ZE6XcU8e3xBb2qjtdq*-}-I(|(4;%QoB5Quv+kS?FzgFu!j=tlwZ1XSo!ZgMHYjn0xmuLU;4>n!%-g1b)s9JcY3{TkjM3_ zgjb#Licrnsh+o!`B6Ei#KZi>*Y-c%sf)5hLZo!3CsAo^_UcPU@vbBhjO*K54P}zEW;DFJx)oz(92g^W zvvEy=jt5hzV!hnrH4e|^)I-LkEJvRBuOXs-5E^4fV~QXaOE<)%ZXj zP+e8f(HFrvn-)9pTJIR^Xbk~PBq(g!+Wk!IpBpkQuaVkf1!7U<$L zv&#}hT{4V*PHVtQgdgJ+S3j|9=Z)OZfxwt9Ql_K#@#iONflarPbSXoI@6E4RI63M6 zB7YQUJ6FP!d9#^XC}8{H-Z)?t?6w6nGFmGK5=`aR)qH8z!l@-UUw1F?@G|6~phu@q zonTb3sTsTppfDn&kQ+t(?(Z*|+-8&Cl|uuSvDS=lm@H*B<9Elpnb5&^boAwEQsIi@ zuOK7AysRI5;*7dL2j@kWB7zWJbJ4U8;DbDDBl5YfYtQDnQ2G>t0ukG8UhTQAhwsk;wVj|EtQ z^I0i|VB8BU>Jz6>l=Cx>Da>a{KzI{l4iEWWC`G6pMm?*A-hug6)RT}|dLp18X9Q?4 ze@61^ivTU5JP)AlFmf5H6U_UEd)7Q34+Ib)Kvf!*)Jwddd`zO@nVBU`(;p)z0YzT{we zm}2#=A$*!_pHhO92y!~5&QAK}Yw5P>k_F1Dv`BC0_cJn?_3(B;bDM^$PF8LRCJ+Rj zfYDWLfy}>+@@;2lr*{k>SQzpINbl0=9U9B9;LB+gBB*_KpGkT~p zVInzWy{4h_N*{)KY^&yHh<)?z!rfsWQ{yifk%zQI)8j*8HPOr#+f(V~Gi@>r?lshi zTs>A#PUA6@sS>=QzoKBex~oXJ7Mltt492_lkc#KN>p|4n=f z?DLsRmWAcq#a{Dvn}d7lCJ8e|qY11JdjDn}B3Rl!uqoJc#=oVzMWwcBQp>YlcR(vW z=+P$B$6>K0 zSo!RLY>)dfKAzFvX8nZJvYhYrSshET-BbK5x?=3@H`XsmK}Wmhz$@$-4v8%aA%)Am zFk*%Sm!CV8*Hf4K>6MM=`}@q#%+gGP#82_5 j;I{r|ezO@Vhyrx}XdU3PW?oV=-0C)j~kIf3gFc5^#$x|%tUHrRxkrwH}zQbZxv&1H_+34#VEO?XL<{Lf+ zrib%*nPwQSlYNn7P7zLU+-$9Rvr}K;u(!q&KfJDx6_sl2gtg$av&OOHTI{U33of+g zpB7L`NEw@=qb0?r6;q_vy58B8aS)5 z-jESVP*Ti%No}THF$^RT*{-2Yw=!_9B%k~p_B%eDdoK6fd!Iwx%k%x`oclWu_n!0p zJkRfWJ18Laze2Ax_)zn)8VNJ*!_Uz^Xm=-q)PPLtbf9mgm zw&RB(ZpIwAF8wDh{{E^U*w}a2)bE?VNiu%#fmTSIpWwEo3|2fe8_h=%0DXM(H+EAHMje1Un~i1I?TQ}8YwR)*05rdO zYn{{ICNIy>AXo(e4JVQD1cHwX2jFlxv|5P}Q0_p4g@p+-0Kw1$n@HIKME==DPyza<3JAqQxBht$o!*6+MuK`Usw*FH#d>-wcDr_VEP%zFV?OfJhWFa zg6j>0q#GkxcGS&7X1oM~jOXK3U4KB!Uni{vKz#z`e5(QQ6E0U1v7oXdsELYK<3<4V z^9)Y_B(R$RXTsr`kE%wK;ry|u_H%V6+^YO37Jv~1BLG&I?+Sum1SMiytLdcxZy+p~ zp}^c%FAV{K#vgip9PB^NOq=g906hf#(9=ru-9g}61lD|SQ;j?EOA6z(c^= zZ$GeGvCUu1uoYNsz8->JeA=-J071Z3zz;$3h_&C-mgn^iA_U%S{pXQ@ppWr6-`iYo zR+Nq~-O$l&+7SZ4A7r$uI@&a5cEo5Y!OB)40r;UL00}?>kdgo-04WJT0+5mb%&E1# zlO@DPD`w*ofM9j~*2|)94OPs>B>)LP41h_KL)p2ry^5%E-fGOIAT$<_!DjjSA zSAcl4DdIN(98FKNj%J5j05Qp75SH?xP!rI2JkoaH#iCarcw&eKp#OXyj4ysey@uO@ zD1QLqF@R~d1#rr~U;T{dBtC}cA^{lf!=7B71yiQpqJ2Jd`ge%fR6V4Or~9*h1HhfE z1d!Ty5USQJg|9kJ!`DrnQ2S;rWWJmU52i%JLorh!d*e=M44D^r05G*At;;a|#VzaW zg!KcowOF~NPc@l@5VDq*LiNr9r+Ch;5cPbtZbkYffZm*7r)z&-egv++<_o8IXk~w3 z0Wh0>NFvja1aL*Hw@Ni3eBssC(|h*iY3D|9B{W;;>*+=*=)UM&__njcFa?dqO?aOH zc=Y9h0iduG#ts)d;CJ)h)5<(w{+t%4PIycJm>gdWXO9$F3V@XBZ zIXL58l)DG^R4f9VA?vS;8U^tHuvU}txE@5pbsz#k|4tfE019l=+3J!dz|Vw@MAtVJ z?t)VL31JUU?_#3)WIQfEkZ@UoKp+Hf-_;z|0Pb2Csn&XT!q)J^zHZ?F^1iHA%_rl@ zbRGuA5JLIGS%C$>ECegeC*d+QuK$qnMlAqixGv-`%hDd-BtpO=rX#&D?VzkMpND`) z0)d9p5sgRr)1H9WH%hI6WL2$q*BVIvRO^KRkdgo-04WJT0+5mbBmgN1z;E>*Gtq{9 TDB6W-00000NkvXXu0mjf@F!R? literal 0 HcmV?d00001 From 013c7e2d757a786b7b3cb4849c2494a963c376d2 Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 21:02:48 -0400 Subject: [PATCH 05/13] adds bowtie object sprites, fixes typo in high heels, adds cargo pack for wedding stuff --- modular_pentest/modules/clothes/code/feet.dm | 2 +- modular_pentest/modules/clothes/code/neck.dm | 2 +- .../modules/clothes/code/vendors.dm | 52 ++++++++++++++++++ .../modules/clothes/icons/obj/color_neck.dmi | Bin 0 -> 2498 bytes modular_pentest/~pentest.dme | 1 + 5 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 modular_pentest/modules/clothes/code/vendors.dm create mode 100644 modular_pentest/modules/clothes/icons/obj/color_neck.dmi diff --git a/modular_pentest/modules/clothes/code/feet.dm b/modular_pentest/modules/clothes/code/feet.dm index 1a057da1c16..d0b1fee6f3e 100644 --- a/modular_pentest/modules/clothes/code/feet.dm +++ b/modular_pentest/modules/clothes/code/feet.dm @@ -17,7 +17,7 @@ //colorables /obj/item/clothing/shoes/high_heels - name = "high_heels" + name = "high heels" icon_state = "highheels_black" desc = "A pair of fashionable high heels." icon = 'modular_pentest/modules/clothes/icons/obj/color_feet.dmi' diff --git a/modular_pentest/modules/clothes/code/neck.dm b/modular_pentest/modules/clothes/code/neck.dm index e84594686e6..8d3ef7eb1a4 100644 --- a/modular_pentest/modules/clothes/code/neck.dm +++ b/modular_pentest/modules/clothes/code/neck.dm @@ -4,7 +4,7 @@ /obj/item/clothing/neck/bowtie name = "bowtie" desc = "A neosilk bowtie. Special material allows it to be reskinned, but only once." - icon = 'modular_pentest/modules/clothes/icons/mob/color_neck.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/color_neck.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_neck.dmi' icon_state = "bowtie_black" unique_reskin = list("black bowtie" = "bowtie_black", diff --git a/modular_pentest/modules/clothes/code/vendors.dm b/modular_pentest/modules/clothes/code/vendors.dm new file mode 100644 index 00000000000..f80e896efde --- /dev/null +++ b/modular_pentest/modules/clothes/code/vendors.dm @@ -0,0 +1,52 @@ + +//cargo packs + +/datum/supply_pack/costumes_toys/wedding + name = "Wedding Outfit Crate" + desc = "Want to get married, like right now? This crate contains all the clothing you need to look presentable at the altar!" + cost = 1000 + contains = list(/obj/item/clothing/under/suit/tuxedo_pants, + /obj/item/clothing/suit/toggle/lawyer/tuxedo, + /obj/item/clothing/accessory/cummerbund, + /obj/item/clothing/shoes/laceup, + /obj/item/clothing/neck/bowtie, + /obj/item/clothing/suit/wedding_dress, + /obj/item/clothing/head/wedding_veil, + /obj/item/clothing/shoes/high_heels/white, + /obj/item/clothing/under/shorts/dolphin + ) + crate_name = "wedding outfit crate" + +//clothesmate + +/* commenting this out until i figure out how to modularize this correctly +/obj/machinery/vending/clothing + products = list( + /obj/item/clothing/shoes/laceup/brown = 2, + /obj/item/clothing/shoes/laceup/white = 2, + /obj/item/clothing/shoes/high_heels = 4, + /obj/item/clothing/head/headband = 4, + /obj/item/clothing/head/barrette = 4, + /obj/item/clothing/neck/bowtie = 9, + /obj/item/clothing/under/fishypatternclothes = 1, + /obj/item/clothing/under/bigjeans = 2, + /obj/item/clothing/under/chaps/brown = 2, + /obj/item/clothing/under/chaps/black = 2, + /obj/item/clothing/under/chaps/pink = 2, + /obj/item/clothing/under/bunnysuit = 2, + /obj/item/clothing/head/bunnyheadband = 2, + /obj/item/clothing/gloves/bunnycuffs = 2, + /obj/item/clothing/mask/gas/ritual = 2, + /obj/item/clothing/mask/gas/karukosa = 2, + /obj/item/clothing/mask/gas/demonic = 2, + /obj/item/clothing/mask/gas/kitonchu = 2, + /obj/item/clothing/mask/gas/drunken = 2) + premium = list( + /obj/item/clothing/under/suit/tuxedo = 2, + /obj/item/clothing/under/suit/tuxedo_pants = 2, + /obj/item/clothing/suit/toggle/lawyer/tuxedo = 2, + /obj/item/clothing/accessory/cummerbund = 4, + /obj/item/clothing/under/suit/yamainu = 1, + /obj/item/clothing/suit/wedding_dress = 2, + /obj/item/clothing/head/wedding_veil = 2) +*/ diff --git a/modular_pentest/modules/clothes/icons/obj/color_neck.dmi b/modular_pentest/modules/clothes/icons/obj/color_neck.dmi new file mode 100644 index 0000000000000000000000000000000000000000..ae56556953a8d56512e5147b6feee3b053ce1c9e GIT binary patch literal 2498 zcmb`Jc|6qX9>;%7hKLj)@~Utx6`ia#WWr3A42BU#S+0b}z8s@0Q{qm|Nh*|mYY-;u zSTZKEB#h-SB3nWjWpbRc43jhNnO@hquXF#qzt`*eJ+J5UeZJ2>&-?rNKKE>_Ohtud zg#iE%H8+FVa%bGm5CU`mEr#x0+^ORx$}tq?8R8M_6Bz0f;12*;zT_wRVzEE%i}wn? zFSJ@*M!qCaEYo?YxUWu0L8)W!gSse_5eVvf6{&ZK>Cjw8C;4L|%0}e+FkTyR+2OZR z;Oem!JqsP001aKcLt2UrLl+h=c%Q4W4cNL1fCJLTO$H}!jWDWD(z z+g5k*n;0!&7oFL)Lx%n$U$YTc2`2zRh-?lsLSa9A&5ZCpWG~syR7$J6t$>QVKs?nZ zjGA!|I$3Sz180EwkxDgr_9A=-N5yp&oy{=(dph%mWu-tu{=VwR)KN8^CaRZ+r{au@ zY{dl*NSIw*O0^80#HQA-)ZKf|+~kB<7pR1!ZAQ(_(3IBB$KJ-bH%T=C02ufQ!0`e5 z05<>t0W!dj&qF&(_;#-^wg+b7MU}Qz zVd;#L3AyX@{jxQUzL~jNlY}?(-df))Y9t+&^xHKt7}3m)&VSzTxXXGXm$0s&>CTyn zSES-C9ijD8_|pm!L)J?OxhAQf=U&E2LPr`EL%Ih10Ow)(<{S63g$`!bRXIb%pfx<`$^ ze~cqUckL^Qz$YF-a#Nhr7rjMYzPEkT2BasYimB9zq%iG&g+rNLcAd$%Ul?ne( zqsAOZ%7@*N-U6ar&#i`g0U|n~jx}nF-XGEz$9wfB4|gdy=fw%|vc6hb>w3!5rg#yf zS~`&%(bEQ0PM0MLdtG~uNd@5W5+53khGO9Kz|Io$oLaC?DzHK=hXgKYlJ^c8>LxIt z^!%qOd&@l*ucIHL9MtH&b!8xWua$4EC%>OQOTc@ z{A;y%n4B<#2VFs*^Il~9ZWSb8p@a{YcI{|^QH{+@-p1$jmY5V0R#dObJbcRONjr6;_-(mXL@5R$DiF^Y(EE+P z^66SRn`5%i$t5%1u10mU;}bKK)FqCceErK1BW!ak3JMs4VDnzUY0yWtW5!wh8E-zF zzi_uv5D+~o^S6HS1BzW1@*k=1qiEkPR7_Pkg(Z@lexj@#q2+KGveJn4nlP>!kWg1M z{5IgTIekufDo{?f4AyR*{_A&+VQUC8E2l}?9+MFCezZj;=N zhNx-eU&u+<#i@U34qo&{zik!kR=2L@^L2ligoa9v8*T*g;0R0CwH>2`3-kQu6(h$U zs@pX7TclhLa^QL>BKCjAR@=w)brN|vs2}|XCaGZP4AXJeF*+0K?~hNc*1N;Cr^^TqZixLlX2npx zyR9}Z&E;(CZr||GBxU{b8gu=q*f*rq`l`cbZ29l&82Iy574&d&n)`Z@kIlz+*Ep}aR@4FkTb|<4ytiPg`G? zl61J7(TZRqn!x|$(1M1oFmfYf3KYCQt zQyvl1Fu|d$WLEed{C#U4*%A?;x9pdz@zU9SSNY#*j}nyS_7Fd6BT_`u*3!u|2)nl2 z6VhI3)qSEeTGxfLMzVEf_bMsP*i3CnYgSw0GRW}i%cz-?VNJt>YenCmJ!<5N3st%U z5YjcOEl0%}YRS@i>_HB7L%txZ=v!w{W*O63IFSRJhnuq$ZF6_cMoE!Co4>-T4D?>Y6eD literal 0 HcmV?d00001 diff --git a/modular_pentest/~pentest.dme b/modular_pentest/~pentest.dme index 00baa76c1a3..d06e3772de6 100644 --- a/modular_pentest/~pentest.dme +++ b/modular_pentest/~pentest.dme @@ -259,6 +259,7 @@ #include "modules\clothes\code\neck.dm" #include "modules\clothes\code\suits.dm" #include "modules\clothes\code\under.dm" +#include "modules\clothes\code\vendors.dm" #include "modules\cult\code\_cult_gamemode.dm" #include "modules\cult\code\construct_spells.dm" #include "modules\cult\code\constructs.dm" From b727f88fee747097f48fe86e9f3110c93ef62188 Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 22:36:35 -0400 Subject: [PATCH 06/13] adds the pendrobe, and also fixes the lightbrown bowtie --- .../modules/clothes/code/vendors.dm | 42 ++++++++++++++++-- .../modules/clothes/icons/obj/color_neck.dmi | Bin 2498 -> 2608 bytes .../modules/clothes/icons/obj/vendor.dmi | Bin 0 -> 2454 bytes 3 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/vendor.dmi diff --git a/modular_pentest/modules/clothes/code/vendors.dm b/modular_pentest/modules/clothes/code/vendors.dm index f80e896efde..6ae4d94b176 100644 --- a/modular_pentest/modules/clothes/code/vendors.dm +++ b/modular_pentest/modules/clothes/code/vendors.dm @@ -17,10 +17,31 @@ ) crate_name = "wedding outfit crate" -//clothesmate +/datum/supply_pack/costumes_toys/pendrobe + name = "PenDrobe Vending Machine Crate" + desc = "Need more clothes? Purchase this crate filled with supplies to have your own PenDrobe! (Iron, glass, and wires not included.)" + cost = 1000 + contains = list(/obj/item/vending_refill/wardrobe/pentest, + /obj/item/circuitboard/machine/vending/wardrobe/pentest + ) + crate_name = "pendrobe vending machine crate" + +/datum/supply_pack/vendor_refill/pendrobe + name = "PenDrobe Supply Crate" + desc = "Need even MORE clothes? Get this PenDrobe refill now!" + cost = 500 + contains = list(/obj/item/vending_refill/wardrobe/pentest) -/* commenting this out until i figure out how to modularize this correctly -/obj/machinery/vending/clothing +//pendrobe + +/obj/machinery/vending/wardrobe/pentest + name = "PenDrobe" + desc = "A vending machine for clothing exclusive to this sector." + icon = 'modular_pentest/modules/clothes/icons/obj/vendor.dmi' + icon_state = "clothes" + icon_deny = "clothes-deny" + product_ads = "Be more stylish than the rest!" + vend_reply = "Thank you for using the PenDrobe!" products = list( /obj/item/clothing/shoes/laceup/brown = 2, /obj/item/clothing/shoes/laceup/white = 2, @@ -49,4 +70,17 @@ /obj/item/clothing/under/suit/yamainu = 1, /obj/item/clothing/suit/wedding_dress = 2, /obj/item/clothing/head/wedding_veil = 2) -*/ + refill_canister = /obj/item/vending_refill/wardrobe/pentest + default_price = 50 + extra_price = 200 + light_color = LIGHT_COLOR_BLUEGREEN + +/obj/item/vending_refill/wardrobe/pentest + machine_name = "PenDrobe" + +/obj/item/circuitboard/machine/vending/wardrobe/pentest + name = "PenDrobe (Machine Board)" + build_path = /obj/machinery/vending/wardrobe/pentest + req_components = list( + /obj/item/stack/sheet/glass = 1, + /obj/item/vending_refill/wardrobe/pentest = 1) diff --git a/modular_pentest/modules/clothes/icons/obj/color_neck.dmi b/modular_pentest/modules/clothes/icons/obj/color_neck.dmi index ae56556953a8d56512e5147b6feee3b053ce1c9e..a9bd92e9cc46ff9df2435ce7538c8cd2ce222c4a 100644 GIT binary patch delta 2245 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 ZWkpm>=zN0~9}CDn2U`s4Inw9me*q-lHmm>u diff --git a/modular_pentest/modules/clothes/icons/obj/vendor.dmi b/modular_pentest/modules/clothes/icons/obj/vendor.dmi new file mode 100644 index 0000000000000000000000000000000000000000..f4844fb3a477b70de77b138d0b5863efbf4d9315 GIT binary patch literal 2454 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 Ux6@WOKPdnfrpHZ64?Bnc6DzD+;s5{u literal 0 HcmV?d00001 From 9607619fd56b235dbf64ee28edb8fe86a6526907 Mon Sep 17 00:00:00 2001 From: secc Date: Fri, 29 May 2026 22:39:52 -0400 Subject: [PATCH 07/13] whoops forgot about the animation frames while editing it --- .../modules/clothes/icons/obj/vendor.dmi | Bin 2454 -> 2444 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_pentest/modules/clothes/icons/obj/vendor.dmi b/modular_pentest/modules/clothes/icons/obj/vendor.dmi index f4844fb3a477b70de77b138d0b5863efbf4d9315..a6d89784299f32e1cfe10d0bb56bbd4efe81952e 100644 GIT binary patch delta 2236 zcmZuySx{4n6772vNJJCDqNqtoEjEw zY+Sedlx!&5_YlLwuxh(uOdrW2@gytDY({8NQ1Qq^$In*ZeF!(~+aPp}RQq7;TYM``%8=r-uu+ok?h&@1-=c6kolb*1q-NV`W%m zuehXFw{BP*n_YS$c7iV#|6UStWpn(oIiwKD5GeW7aH(zbj z-<~h6>M`d9iak@~>~Wy8}*QOw}Ar@Rg)gR~J3f12C4@jZUp=Ja|sbOC3CO0Rf!AfEL{radIA9(R7IHEhwJ^8dx|Iw zu*1HkWjJ}h0CVd(6=f^GG@S76lm<41s@gJ&OM~gtwqXvt(4&bgZTxv@w_Hcjrq}A~ z_Ms!5xGP!|KCzsCtFo6>IQ`~Q?&s^0@KJ+chm`2)VqhetlpmANL@^)|Yf+D|h8<>A z%zRcw2@fkQY8+VYzr=Qr?6WqhEYbm62DgUVXYU!MH$*#AimuS@`IvLBNbt%|)IkWM z;Nz3hy)KsPgiAUGX9_rq$6X*!_FbztYP*>IAg;8n##7Drh#nuJj7^of2i{GEWW{O(n~Ar1zHaBQl$@CW7gtTq z6&t)qk)(~?{%R^ZJISv^cO=P^Qo&n86TIN04iOtruJB`FLCT+sDCsI*T?;A2m_udH zqJb&WOkj^qU4EeZ1B?C{7o6XIK*=excMS8zFSS%ecQ83)6Jdq3Iak8RYPoWkFYotg z(Y+VAi*^3^5GJPbvBatz<0rcIaLN| z1bcL2iCYl7M+G;JSE1Ef;rD+mJpR6@wiUb6&@icjUDpDC2^LCwy~`Z&|Hq4OR*_Ov zyla}vsd)coVfz#J$3R_|YcN;)tH4map=_rAeD1r6ylHvH7#~?hg;@2#h*h!wx7Be& zRV|f8Gs8>vHj}svr|Ma6U&Mom47)SGV8ET{H`MRnOH4%m9t+{l1Ihz2aHrwQ81nV{ zoU7iiRvnKInWGjhQIBeelo#Dy`MD!Y>*EV8?!ZFPSRD+mC3G93FRYL;Jx&ZXmRN?KzCw`DXqM`HY41@co_gO+6-r-^W5U-H zQ@t?AY9m*)dbj2hh%;KI&}VankGN8ajq{7t@;!MwmL#ZcuzG|>lJHDvX@Xgm`@8%c z44FieMjz3o?|f(WY!dqnf@csq6xJ6@V`6noTww@b=e-hpv>4qM0CD5YP+i|nK( z3bs&T#3Zk8Y{hJq=W3Rkn=3f>?qs16FjHmx*OSn<*Q-8nWlIR;zc19rTZW@X){Uo3!QhUR?vfW>T?z*?nDZ$weQQ@N!T{ zh}F>2s|c3$Gz`W4LHg3s56tJ_H}ygDo-oa$T1CRV#uO-43!QNZMmbUQ`2RU7j-%H5 z=A2$xW@n_r5`asF+v1!?{rw#eN>QvCINrHs*{_%Hy0QDV4xB|XYH{c`+4(;*$_ux~ zytKx&5zlToVshWZ;Gv_hrWs4WpsxjIA%WmY#jWw4e+X_4L4JO|Qd}SNNyeAyct1Z@ zXaGTEOh%P-bU2kOr;t-aW3Te^^9d*A?JGd44?cNl#$^H<;^X5(Z>d*UXR`D_pO7-* zgJn^1nqibT5#I?ISFb~`YBoeg5gRl(AbtuZW|x0 H=bru_e`5=v delta 2246 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 SWlANmXwF-AI^Nyl8~snVLj-OB From 6a87360e765dda9f679f158960e456e5e9831afb Mon Sep 17 00:00:00 2001 From: secc Date: Sat, 30 May 2026 00:19:13 -0400 Subject: [PATCH 08/13] adds object sprites for tuxedo jacket and wedding dress --- modular_pentest/modules/clothes/code/suits.dm | 4 ++-- .../modules/clothes/icons/obj/suit.dmi | Bin 0 -> 824 bytes 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/suit.dmi diff --git a/modular_pentest/modules/clothes/code/suits.dm b/modular_pentest/modules/clothes/code/suits.dm index 0e5d86b2eb8..92c3811a4b2 100644 --- a/modular_pentest/modules/clothes/code/suits.dm +++ b/modular_pentest/modules/clothes/code/suits.dm @@ -3,13 +3,13 @@ /obj/item/clothing/suit/toggle/lawyer/tuxedo name = "tuxedo jacket" desc = "Don't wear this with a regular suit, or the fashion police will be after you. This thing belongs ONLY to a tuxedo." - icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/suit.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' icon_state = "tuxedosuit" /obj/item/clothing/suit/wedding_dress name = "wedding dress" desc = "A nice dress to get married in. Or die in a horrific explosion in. It's 50/50 at this point." - icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/suit.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/suit.dmi' icon_state = "wedding_dress" diff --git a/modular_pentest/modules/clothes/icons/obj/suit.dmi b/modular_pentest/modules/clothes/icons/obj/suit.dmi new file mode 100644 index 0000000000000000000000000000000000000000..0df0a28669b65b7287a4fcac27010ec9c65d9461 GIT binary patch literal 824 zcmV-81IPS{P)V=-0C)j~jynp3KoCUZ=~FbCFZ)Y3S(L?Ky@CkcIvuDm-F}Ymps8Y3uXq%d z;y3>lC1(EuCJrh?j~{&B?%-x2^ATQ8aGs_0wu4%29AjeR!Zhe8mVhG(8p{W`Ce$78 z`9Q6%<(Y}3Zz~F{dN!S6US`|v6_a{6I6hMK`v3p}Zb?KzRCwC$n#)VWKoG_^S8H1Y zr7wJ-MMWqG-o1G7Pxj))yC4)qrHT*wLP7exM!v|DVM&wSBo&j)cgeag`F4IYvuvP_ z%DEf?AOHk_01yBIKmZ5;0brory+gNDEUNyXuL_0r#r$kGRkdnOjVBZJ_WHCksPKmu z_vU-Rysf|S;#TX-#dB?~pq^hk-W&{J3?1w@)qFnl#_jfP;tC8wfYz-70Nxu`0k-}|i_m-3N_7z+&xB4M{~rto ziJk?ze^>%+{2dc>e(+(;H^I$u2qt|X`uX!J;MtGjAG%<3tM1~3+!Wc+0f0K+4Ay^r z_F@C@^CzEWV;ld-0H_V9{QnXFC4hpClK?9KyajXsdJC)qfZl=}KvaJLV6p+dzeq5| zhDds!CI!IHpMX%nQT-j$P0*Okh&E+~ZvaXn_#pov05<;C-vTtIj1Y0ss=o!eKLLp2 zFJFTKKmZ5;0U!VbfB+Bx0zd!=00AHX1VFet-JbVN-fYyJpt(!}xVwLJw|5%e_#-0j^xMK<)wLz6InAVD|t&<>DTYYXJP#2l0y#{hhY!aIC8^DHm5^{T8SL zNb7Ad5`bmOBmk5>oG`4o+Cs@oXM9tzX=E`27{xf3Jqn%~9!_Rsm%{Ev;a* zL8^ox5IpcSWZnuuP(`FIQ%w>ZB0000 Date: Sat, 30 May 2026 18:51:36 -0400 Subject: [PATCH 09/13] adds object sprites for headwear and cuffs, updates vendor sprite --- modular_pentest/modules/clothes/code/hands.dm | 2 +- modular_pentest/modules/clothes/code/head.dm | 9 +++++---- .../modules/clothes/icons/obj/color_head.dmi | Bin 0 -> 4719 bytes .../modules/clothes/icons/obj/hands.dmi | Bin 0 -> 387 bytes .../modules/clothes/icons/obj/head.dmi | Bin 0 -> 805 bytes .../modules/clothes/icons/obj/vendor.dmi | Bin 2444 -> 2094 bytes 6 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/color_head.dmi create mode 100644 modular_pentest/modules/clothes/icons/obj/hands.dmi create mode 100644 modular_pentest/modules/clothes/icons/obj/head.dmi diff --git a/modular_pentest/modules/clothes/code/hands.dm b/modular_pentest/modules/clothes/code/hands.dm index feedc6e9e97..0461049409f 100644 --- a/modular_pentest/modules/clothes/code/hands.dm +++ b/modular_pentest/modules/clothes/code/hands.dm @@ -3,6 +3,6 @@ /obj/item/clothing/gloves/bunnycuffs name = "detached cuffs" desc = "A pair of cuffs without a shirt to belong to. A bit depressing, honestly." - icon = 'modular_pentest/modules/clothes/icons/mob/hands.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/hands.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/hands.dmi' icon_state = "bunnycuffs" diff --git a/modular_pentest/modules/clothes/code/head.dm b/modular_pentest/modules/clothes/code/head.dm index 5c9e72fd64e..12f585748bf 100644 --- a/modular_pentest/modules/clothes/code/head.dm +++ b/modular_pentest/modules/clothes/code/head.dm @@ -3,30 +3,31 @@ /obj/item/clothing/head/wedding_veil name = "wedding veil" desc = "A veil typically worn during marriage. Although, I guess you could wear it whenever, there's nothing stopping you." - icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/head.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' icon_state = "wedding_veil" /obj/item/clothing/head/headband name = "headband" desc = "A headband. This one won't give you infinite ammo, though. It's not even the same type of headband, idiot." - icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/head.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' icon_state = "headband" /obj/item/clothing/head/barrette name = "barrette" desc = "A small little hair clip. Theoretically, you could wear this if you're bald, but it would be super painful if you did." - icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/head.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/head.dmi' icon_state = "barette" + w_class = WEIGHT_CLASS_TINY //colorables /obj/item/clothing/head/bunnyheadband name = "bunny headband" desc = "A headband styled to look like bunny ears. Might be offensive to those genetically modified with lagomorphic features." - icon = 'modular_pentest/modules/clothes/icons/mob/color_head.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/color_head.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_head.dmi' icon_state = "bunnyheadband_black" unique_reskin = list("black bunny headband" = "bunnyheadband_black", diff --git a/modular_pentest/modules/clothes/icons/obj/color_head.dmi b/modular_pentest/modules/clothes/icons/obj/color_head.dmi new file mode 100644 index 0000000000000000000000000000000000000000..6883dfa1f9409858b690763ea3baddc292d9684b GIT binary patch literal 4719 zcmeI0cTiK=9>-5YLX{$2ibP#e>8u3A0tqXEAVmZOq@#}}MFN5ls=5=-p-tR&-~8(?zuB}=6vS!y%$Z5^?11@ zxB&pX2le-xG3N-@#mUaR-`8?#V@{8P&8__RpTM~Ix%>LN`*;Ho1WAu?=RT_tmLAgby>g_!+m(8B}^B=l{y`6}YrPxO*Z;#K|^glG9&Y9K51xwb}KA?Lm zU+;Y5Mt$usd=Y&t^`25F?gBmOPQy|w!VPY(eZXZ)&gRaWiwnU5t(OSofYpXBoRH9A zz6{>@O7e@4CZ^o9xT7CVshBu&z9z@6|f9^|=j8?~#??~T-Q+{x=U&6QOiR5kes|Hf7#g+iPre|ed-eQHufFbJ$-~oIfiE(v6@<(AWw|W@Mbl6 z@I-3J#B_^7eYAx06k&td?Uu(l6&Bddoa0RQQlnAS_%mvp&filAMA=3_@pa zCpIoG&}{|ur#U!|Mn5&#qtuk<*p+*jXiGX)cITqS8=;@}G$uGOVtAlCR;9HUba%PT z%nM+mDDBC;Z2{vacv7vh-whDu(^OX!#9(I2+tjs04_w(G>1^yv8ITXI%E-_tWA2hu zsVy#QEct5`Du(3z^qtD&<3OE9T*h`4VKQJxo-Ej&FF=?VmH=t;C%R!ES_CSL*I|pm zWap;<@eU^(Aj`1ZK|a=mVx5SQBW}P{X(!->z|{l&E|Y2802cvG-J{t&5(o!6sL1wo zDVOOQDA+`(ry5@^nJ<7KB5x|$^&w!lV@H&&OC1r3+P(RqlOu)_IE0AVGJas`>B&{w zGIj6eCiYGG(Zb=QSH1d{tN!J+s<%yz6D^lDe>Qw5;}IT)s=LJnEx3*xMNFSLG@)t+ z9t5hP2^OVPsUNhix$ir`4HmA-a+VwPq@8UVRV`@IhoER<_QNaupFLy_rtI)9C?T{_ zP#+lTtxY51*}%|j)k^JL7$3m)j((sIE){^-j);bYK@*U*)6qA3P6&*z6So~-fuVM@ zu^+AG0Xu9Tt)4RR8Gyg+?~-uqG&|n^^jIKdmqrD z7YeP0QwXABD93W76{6ZX+B3?=7DRUTI7W`eh!k>poPxmEdsU53_FzhZpfGk?7@R!XQ(UYQFTz+gOnP5;4VNUO5Om^| zPgPwgC6P&m!jQ!QmB8s;te)<+)90*z*(k`Q!dN!x?Q4(IL)}es0WVTC8uLAs{m}@r zLtxvA(@5GDCKcG5Z3o*b!d5b6EpPK{m+$MZ2s+22&+9gI9EOrA;B2gdq0WSYEG8U2 z!N9lhhJ_Fiw&XO$a`S?Ygi;Tv2bDC`;Yma^iSOdp$zmVh_Tcq>wCR7tBVyF`qY1x{B ziJjk@Gb_FWyxNn3cr0g);S&T}H%DeMET^c5u21DBf8`uEv1~g^^tW%M>mcZ@dnI71-&1g+m4^%DmED~a7N6uy zI(0V2vuq==C`d_4!%OFaW&@Jvz^W_lwMh}Pr5dwRHoUxbO-N*HtK}}Ip7CS0WF8rP z@2A*T%2J68z24{zhNNMZN;tJ%yFXUu8qGvc`j3T)6EUeWZp=+wTTGLJ`zl%Q(HL5} zuM)icim5DnifSA`+QvCX@#VktjZdKX11ZbHvm#)7;s$_ooY!=F_e%WIkjUSt$1ye( z^hyR6dsZMzCx+xYMvk;)*~PD!armmXwYA|oku^*_yzKc=K@=su+gT)uZ|?9GV9}=X zolWY07LG7}gKVZ?d_$Ho>2}iR4q^)VYt8tbAeGQHvG^JopS(i}WcjKtwR|**Bc23Z z!@q^dl>#ThK9*SMOT!ZW#5){GXAz=qR#LgXMy8i|5Gv0l6a?%_8j)y4rHFbr&tjB6 znY$NOaSuRm6*NFQMdWRTx<;U!>k6HA+Zt7B61!%)w#VU%~+eYH*eUYQalul>5|%2r;miXFKn2 zDpCL`=6;jz1Fx6M4XhIZd4$0QOP~-HJUT~yQd1so-RWPU9@$fs5tEZw!ByTdYp!Nj zU_=Nglw7lmZ14(K(IF2UWa>;3hdAh!u3{Uguk`CYTZ--R7E&8Do3N=w;Mh;53PmmmAnd5D6mWtezEkOb# zUs^6O2OfVqr1F76-Tcw^GeRwMTH57adRC`ti81JD>WiRR-u8o|QbSA2{acjJjaLp> z)z)bYHMX`O<7KamhYnT;1X`)SH)Fv>gR+m9ynA+RaI`(ufw#9HtTbrFwl4ApQ!b{c zKb1V!dD(vc4}@$TLK!Fs#fHP)^azEFx<2RTlY!6`$!x(Qo?UmkdF1ZZEEicTosC3J@^i zXZ@|Jq9l1B0OdaU6-|720hii|ha(>|NZZX5Y*ow>V#%mWJAnWZ44@Ui6Mt3QAlX(Iu*gnUhoixd}|YjM!Ok1oM_^rFwx k%|Aiq|2nAfHO?#R)Vmzb(VTk6{DTAz>KgAa)NzdZH*AxoHvj+t literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/obj/hands.dmi b/modular_pentest/modules/clothes/icons/obj/hands.dmi new file mode 100644 index 0000000000000000000000000000000000000000..71f2da55f1f8ff596f997334cac5641a7d4769c4 GIT binary patch literal 387 zcmV-}0et?6P)V=-0C)iAXHb9i)r_5a9%%=bS z0pqV6P5}HI+W-In%}GQ-RCwC$)WHpcKoAAcomRZ51>i|5umfX)9eAM#E_NV^u>&j6 zlN6xdYz0q~d`E~gVG$%$u$Pxtb5n0PsfGz|M86qs@YJfz@3CCfzl$!vEXe;7>g{9mK=u_kd h@J;{%5P$##-~%(cm?2BfWqkku002ovPDHLkV1gh^n9TqH literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/obj/head.dmi b/modular_pentest/modules/clothes/icons/obj/head.dmi new file mode 100644 index 0000000000000000000000000000000000000000..7d5cb849bdf3eaec274f2224121e017f867a2b4f GIT binary patch literal 805 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=?NuQWB`&GO$wiq3C7Jno3=9>F zt$n+>njHjOU(a1Hv4y{KYi5&>&LjPni8FUFpXA!z{BK`()7%?#i!G1pevI5dOKf#H z^Wq~*oDZUTc5Ms&Th-C3k~33u)Do{ve@@jVh;pK$S2)l(Bo^X2BY zd!O%qmwD&g?`eliRsa4!_kTyIyymBmiVRE&K-9plF7U$C%ggKR`{0%GLcMVfpDoxr zj^sJ_`tm+``Ellkt*aO7PI>>}TBDN%(+M#PtN#FhA?h7<1As_TAO$?@KdY0EVM zgG`3Nzc*Ldu<1-V^X_xTDd`X2e&zk!vu&MQB(nxXtm66doA((RKUn)7zI@@@)cm$+ zhO@eLix=&Y;rTGvV?z7y9lv=6TDL3h;8hUjsM^1nZO-fIX>WgiDEYNT?z%LCE!%`@ z+lvf#Q(_Hn{yxCKb5PGFI&`n>veheYt@*X-;X#IyZ~TWB=6rqLfAB@Xg|8oszLtI3 zQt;*e0uIO03bW9wUynUM-tGTw*J}nF7Vi1|544`0pU)AC5c5iSJC9aRQj`89ZJ6T-G@yGywq6>tj#= literal 0 HcmV?d00001 diff --git a/modular_pentest/modules/clothes/icons/obj/vendor.dmi b/modular_pentest/modules/clothes/icons/obj/vendor.dmi index a6d89784299f32e1cfe10d0bb56bbd4efe81952e..8d897886997cffd9d661160e70422e359304e738 100644 GIT binary patch literal 2094 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 GB>oLrxnmvx From 9492910e35c3daae36c00fda7ef043b52609b318 Mon Sep 17 00:00:00 2001 From: secc Date: Sat, 30 May 2026 19:39:21 -0400 Subject: [PATCH 10/13] adds object sprites for jumpsuits, updates descriptions --- modular_pentest/modules/clothes/code/mask.dm | 4 ++-- modular_pentest/modules/clothes/code/under.dm | 14 +++++++------- .../modules/clothes/icons/obj/color_under.dmi | Bin 0 -> 7154 bytes .../modules/clothes/icons/obj/under.dmi | Bin 0 -> 6871 bytes 4 files changed, 9 insertions(+), 9 deletions(-) create mode 100644 modular_pentest/modules/clothes/icons/obj/color_under.dmi create mode 100644 modular_pentest/modules/clothes/icons/obj/under.dmi diff --git a/modular_pentest/modules/clothes/code/mask.dm b/modular_pentest/modules/clothes/code/mask.dm index 141af00bf68..e66c2245fc3 100644 --- a/modular_pentest/modules/clothes/code/mask.dm +++ b/modular_pentest/modules/clothes/code/mask.dm @@ -16,7 +16,7 @@ /obj/item/clothing/mask/gas/demonic name = "demonic mask" - desc = "A mask that depicts a grinning red demon. It should probably see a dentist, teeth aren't supposed to be that yellow." + desc = "A mask that depicts a grinning red demon. It should probably see a dentist; teeth aren't supposed to be that yellow." icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "demon" @@ -30,7 +30,7 @@ /obj/item/clothing/mask/gas/drunken name = "\improper Drunken Rider mask" - desc = "A mask depicting the eponymous hero of the popular Martian tokusatsu show, Drunken Rider." + desc = "A mask depicting Drunken Rider, the eponymous hero of a popular Martian tokusatsu show." icon = 'modular_pentest/modules/clothes/icons/obj/mask.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/mask.dmi' icon_state = "drunken" diff --git a/modular_pentest/modules/clothes/code/under.dm b/modular_pentest/modules/clothes/code/under.dm index f0cf8574c21..7fa524bec36 100644 --- a/modular_pentest/modules/clothes/code/under.dm +++ b/modular_pentest/modules/clothes/code/under.dm @@ -3,35 +3,35 @@ /obj/item/clothing/under/suit/tuxedo name = "tuxedo" desc = "A full-piece tuxedo suit for formal occasions." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' icon_state = "tuxedo" /obj/item/clothing/under/suit/tuxedo_pants name = "tuxedo pants" desc = "The name's pants. Tuxedo pants." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' icon_state = "tuxedopants" /obj/item/clothing/under/suit/yamainu name = "designer burgundy suit" desc = "A Waffle Corp brand designer suit. It fills you with an aura of discipline and hard work." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' icon_state = "yamainu" /obj/item/clothing/under/fishypatternclothes name = "fish patterned shirt" desc = "A comfortable looking outfit with a fish patterned shirt over it." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' icon_state = "fishy" /obj/item/clothing/under/bigjeans name = "big jeans" desc = "Holy fucking shit, these jeans are massive. You could probably use them as a tent, they're that big." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' clothamnt = 6 //jeans are big, what can i say body_parts_covered = CHEST|GROIN|LEGS @@ -40,7 +40,7 @@ /obj/item/clothing/under/chaps name = "chaps" desc = "Chaps fit for a space cowboy." - icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/under.dmi' icon_state = "brown_cowboychaps" @@ -63,7 +63,7 @@ /obj/item/clothing/under/bunnysuit name = "bunny suit" desc = "A bunny suit straight out of the magazines you keep hidden under the bed." - icon = 'modular_pentest/modules/clothes/icons/mob/color_under.dmi' //temp + icon = 'modular_pentest/modules/clothes/icons/obj/color_under.dmi' mob_overlay_icon = 'modular_pentest/modules/clothes/icons/mob/color_under.dmi' icon_state = "bunnysuit_black" alt_covers_chest = TRUE diff --git a/modular_pentest/modules/clothes/icons/obj/color_under.dmi b/modular_pentest/modules/clothes/icons/obj/color_under.dmi new file mode 100644 index 0000000000000000000000000000000000000000..5ae3885e3dbec290c79f1bbd6f4e4998bedd024a GIT binary patch literal 7154 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 Date: Sat, 30 May 2026 20:25:26 -0400 Subject: [PATCH 11/13] moves around cargo stuff, updates drunken mask slightly --- .../code/modules/cargo/packs/costumes_toys.dm | 16 +++++++++ .../code/modules/cargo/packs/machinery.dm | 9 +++++ .../code/modules/cargo/packs/vendor_refill.dm | 7 ++++ .../modules/clothes/code/vendors.dm | 33 ------------------ .../modules/clothes/icons/mob/mask.dmi | Bin 2033 -> 2001 bytes modular_pentest/modules/clothes/readme.md | 5 ++- 6 files changed, 36 insertions(+), 34 deletions(-) diff --git a/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm b/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm index f5c2e4398e5..4f78af7ca4e 100644 --- a/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm +++ b/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm @@ -23,3 +23,19 @@ /obj/item/clothing/head/wizard/fake) crate_name = "wizard costume crate" crate_type = /obj/structure/closet/crate/wooden + +/datum/supply_pack/costumes_toys/wedding + name = "Wedding Outfit Crate" + desc = "Want to get married, like right now? This crate contains all the clothing you need to look presentable at the altar!" + cost = 1000 + contains = list(/obj/item/clothing/under/suit/tuxedo_pants, + /obj/item/clothing/suit/toggle/lawyer/tuxedo, + /obj/item/clothing/accessory/cummerbund, + /obj/item/clothing/shoes/laceup, + /obj/item/clothing/neck/bowtie, + /obj/item/clothing/suit/wedding_dress, + /obj/item/clothing/head/wedding_veil, + /obj/item/clothing/shoes/high_heels/white, + /obj/item/clothing/under/shorts/dolphin + ) + crate_name = "wedding outfit crate" diff --git a/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm b/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm index 442d61fcba6..f856d4e5e80 100644 --- a/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm +++ b/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm @@ -20,6 +20,15 @@ crate_name = "wideband intercom crate" crate_type = /obj/structure/closet/crate/engineering +/datum/supply_pack/machinery/pendrobe + name = "PenDrobe Vending Machine Crate" + desc = "Need more clothes? Purchase this crate filled with supplies to have your own PenDrobe! (Iron, glass, and wires not included.)" + cost = 1000 + contains = list(/obj/item/vending_refill/wardrobe/pentest, + /obj/item/circuitboard/machine/vending/wardrobe/pentest + ) + crate_name = "\improper PenDrobe vending machine crate" + /* RND Core machines */ diff --git a/modular_pentest/master_files/code/modules/cargo/packs/vendor_refill.dm b/modular_pentest/master_files/code/modules/cargo/packs/vendor_refill.dm index cd94254f765..ae3c567ebcf 100644 --- a/modular_pentest/master_files/code/modules/cargo/packs/vendor_refill.dm +++ b/modular_pentest/master_files/code/modules/cargo/packs/vendor_refill.dm @@ -46,3 +46,10 @@ contains = list(/obj/item/vending_refill/wardrobe/sec_wardrobe, /obj/item/vending_refill/wardrobe/det_wardrobe) crate_name = "departmental supply crate" + +/datum/supply_pack/vendor_refill/pendrobe + name = "PenDrobe Supply Crate" + desc = "Need even MORE clothes? Get this PenDrobe refill now!" + cost = 500 + contains = list(/obj/item/vending_refill/wardrobe/pentest) + crate_name = "\improper PenDrobe supply crate" diff --git a/modular_pentest/modules/clothes/code/vendors.dm b/modular_pentest/modules/clothes/code/vendors.dm index 6ae4d94b176..243cd697c7f 100644 --- a/modular_pentest/modules/clothes/code/vendors.dm +++ b/modular_pentest/modules/clothes/code/vendors.dm @@ -1,37 +1,4 @@ -//cargo packs - -/datum/supply_pack/costumes_toys/wedding - name = "Wedding Outfit Crate" - desc = "Want to get married, like right now? This crate contains all the clothing you need to look presentable at the altar!" - cost = 1000 - contains = list(/obj/item/clothing/under/suit/tuxedo_pants, - /obj/item/clothing/suit/toggle/lawyer/tuxedo, - /obj/item/clothing/accessory/cummerbund, - /obj/item/clothing/shoes/laceup, - /obj/item/clothing/neck/bowtie, - /obj/item/clothing/suit/wedding_dress, - /obj/item/clothing/head/wedding_veil, - /obj/item/clothing/shoes/high_heels/white, - /obj/item/clothing/under/shorts/dolphin - ) - crate_name = "wedding outfit crate" - -/datum/supply_pack/costumes_toys/pendrobe - name = "PenDrobe Vending Machine Crate" - desc = "Need more clothes? Purchase this crate filled with supplies to have your own PenDrobe! (Iron, glass, and wires not included.)" - cost = 1000 - contains = list(/obj/item/vending_refill/wardrobe/pentest, - /obj/item/circuitboard/machine/vending/wardrobe/pentest - ) - crate_name = "pendrobe vending machine crate" - -/datum/supply_pack/vendor_refill/pendrobe - name = "PenDrobe Supply Crate" - desc = "Need even MORE clothes? Get this PenDrobe refill now!" - cost = 500 - contains = list(/obj/item/vending_refill/wardrobe/pentest) - //pendrobe /obj/machinery/vending/wardrobe/pentest diff --git a/modular_pentest/modules/clothes/icons/mob/mask.dmi b/modular_pentest/modules/clothes/icons/mob/mask.dmi index fc3536e5174498689ea89afbb6641e5be06d1721..f20e0855e06802ed8272654e782891de8b83eda8 100644 GIT binary patch delta 1715 zcmV;k22A&fIN&zb|vnUGAPc|NEQs%Lj^FQY^X5wyEwrAy$X7jc znm=z?yCJlMdA~^lpHuUIC!Hzbs`~e=gpnCN&dv3+?5^!r*Pk+Vk|&&u!V;(w-%TdZa9RIgF)!*^!Xtd4#DYfnDAK)w3nGWG3uJM&&U?>ER5xNPZi zZ``2wB?N1W9_SDxT{@_pDkcfI?GaGEux!&TdX z7FC_i+7Zy)`F8GVRbxh%r?LzOv(Ut~3+mm^tUk7LZ-2;S+_E8~&e;LOmf_GPSdc4G zu0p|92`(li3tfUWl1W^Oh4Gl|?q!a>&#RZ@y&=Nr7aRlRb$#m+;B8N8glJ}OW)vM83kMM6Cev-3q3 z5TFnsAd_JP6O(HM36pCC36pCC34b6UAV9hV)cxwB^r|bSb^Z(2eaUs4XPjJf1hk0R zCc+aVLa(~6$Y-u|=!f=5T>-*!cF%aXarP;HUbVWn>M`IE@<<9P3ICX?5^P?D zNnd?QJ%n7ebg^3IT$ac~NKnG=Dqm;;lg4}y5p0xSQ+Pcd-~OAD&mq`&010NG$KA2? zc54CQ{{sR7lU)QClWPPClWPPCe;^&g6|k5vvj~$zq|kJa80k+Z{pxJ=h)H72e_Vl^q*cPA z5YT3ix?q32Bm^8=yTcnF`f9!!bjxyYyrXVx>IBsCMaiHb0&1jR-O7%Wv2|*au26GJ z`}j?X1a`pW1q>oWcJ;|PQeYxP-Q)>gIn=Gf2G3}V^-DOouFTbINeQmqyv=HBG99`I zH>##dwbWNCJx{ZMa{iipKXQm1SWv>aA4KEJ%uKXnMIf! z3KE*`RcEUd+FmbL@Oqq9`GQ%5$$>vaL!uxclVJoClWPPClWPPCe;^y709ZRO{3!iL_}e7IYq^R}Zj~LB~%=+(KoZ_b-Urjw>p< zA<~g~Jyprjr&VYBf6HpXiZj-m6cr0Pj}^C_R*zM^9=n7h-y4mOt9f7aDoEztN zcs3=}?b$>?3E+-lwd<bzb-)V4SVtiV@uyN~(eI$KUsJuTID-m9yaa)3%L&eii1Q!K$E-&9h1-p36szV1Q>+w$3ORrO1%=Fh9m$0002ov JPDHLkV1kjNT`2$n delta 1794 zcma))`!^E|1IMF{q{tjVZMw-lZ?vEK6N4aaHPsLH}Ug%ILK%ET{F@vBKy&MZ- zL3tXd(U-6<8z6;-B^G_C?N6yGLHiz=r4H`#r$J;;M%H>%Lj7BsJfxV%lJsN7MP3of?}QyqF$=9P4p z>+6TRHdnycM7@(!YdU}cvj{$EF^Bgz+eMjcdCe=<61{m+zNm)!4 zw$2nwdh4-*R_izI)$5O0ncHcre;|flhB3cx7K39{WrV&)Fk7AcQpRM8%I08Kkg2>@ z(CYf^rptr+TzLD8f#O0mxzw;3zlXU;LINkT%b{I%`@bvu?O_}S*pbnS@#aph?xf)p{^@$CV?q#yuBvsh;%t=U|QXqTu^U_uE#X zE)o?MK11dwa7@^U;mV2*um7|G3!pCBdfUy_bv{mcF!QW_IWjA3j9dMzK^^U7A?}^M zIiwjL>Ch23FvA#5HgbA#wPR@odDQNie9aA{%*hA&T6VaWi-o3nqqRDr5s1YR2Z=ggNTE;5$DC1KK zehwV6fpw18hRmu?Y@hZ}lcd%HQY#vxC9SttcgiM!Bo*hlj=2}461Mb$BD?Zgs>xTB zev*Eb;$2@Nonh`NucfN*{a6KEV3N2`#{R3qP*Il9vZXTtLgeu~JH4JL^wYQ7vO)+OVdKV%=0t1S8*gt#1vLVz2MX?_w9|>1nJ477@$Zf4!+1REiK%e{`N!7Nkob zt~6q3x`sKySeUISuaw|r!9}$)lW5mi-Uvj^@F+6%bA%TiK$dllFavbKf3u|>uoqBX zgTgH%Qm1_RULBU_BP?2cZl-zuSSX^3ky|#tBHd14jHP3wcOWPu>bu^@%2C|D0mbft zKtHI= From c646598506d66444166e69d0f2f256763b46c19b Mon Sep 17 00:00:00 2001 From: secc Date: Mon, 1 Jun 2026 01:03:52 -0400 Subject: [PATCH 12/13] makes wedding crate cheaper, fixes missing pixel on wedding dress, slightly reformats cargo crates --- .../code/modules/cargo/packs/costumes_toys.dm | 5 ++--- .../code/modules/cargo/packs/machinery.dm | 3 +-- .../modules/clothes/icons/mob/suit.dmi | Bin 1515 -> 1519 bytes 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm b/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm index 4f78af7ca4e..111d2f7682a 100644 --- a/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm +++ b/modular_pentest/master_files/code/modules/cargo/packs/costumes_toys.dm @@ -27,7 +27,7 @@ /datum/supply_pack/costumes_toys/wedding name = "Wedding Outfit Crate" desc = "Want to get married, like right now? This crate contains all the clothing you need to look presentable at the altar!" - cost = 1000 + cost = 750 contains = list(/obj/item/clothing/under/suit/tuxedo_pants, /obj/item/clothing/suit/toggle/lawyer/tuxedo, /obj/item/clothing/accessory/cummerbund, @@ -36,6 +36,5 @@ /obj/item/clothing/suit/wedding_dress, /obj/item/clothing/head/wedding_veil, /obj/item/clothing/shoes/high_heels/white, - /obj/item/clothing/under/shorts/dolphin - ) + /obj/item/clothing/under/shorts/dolphin) crate_name = "wedding outfit crate" diff --git a/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm b/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm index f856d4e5e80..969187473b0 100644 --- a/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm +++ b/modular_pentest/master_files/code/modules/cargo/packs/machinery.dm @@ -25,8 +25,7 @@ desc = "Need more clothes? Purchase this crate filled with supplies to have your own PenDrobe! (Iron, glass, and wires not included.)" cost = 1000 contains = list(/obj/item/vending_refill/wardrobe/pentest, - /obj/item/circuitboard/machine/vending/wardrobe/pentest - ) + /obj/item/circuitboard/machine/vending/wardrobe/pentest) crate_name = "\improper PenDrobe vending machine crate" /* diff --git a/modular_pentest/modules/clothes/icons/mob/suit.dmi b/modular_pentest/modules/clothes/icons/mob/suit.dmi index 9546ddb7be764d1fbd54f37cbc8c5e3493c03d79..9510b43ff28a4ddb05b18e1ebe4d94a63c97ca50 100644 GIT binary patch delta 1060 zcmV+<1l#-T3-1e%w*e!OxI_vwyZNfCe$&&_lamGkDgp14F##2S>%rt8`~2tk{`|K$ zZ>?qfR)?$EXIFvRiv6!$TS(5%PA}}2+e7$k2ssy=2g-rWNk~aAde3=pasX8NG9{l9 zO#1q5oD0B%`=jhL6~bo`q<3YkDkl5YT{e-Qw_{avweqA4Eh z(}1h{=QcM1KdsVWrhQ>yFmJR5fCD)_oz97DTZBA+7X(~{LoorgotL2!X-{K0wG0JviG z27sJ&AW_0uW!ED|#G&Yy{#v2^ivXZ*m=t;@l477&KK(=kfRDDknK26hVgN{E5Kgcx zKIg&$0QS-l&^8_i1p$ER)1>EZ4@JN9a%~G)0EWQQvuZx-7QZ$C(A5(F0F&YaCx1|H z0l@kIJq7^l1DuDDbAj~%608pp`|)tB4jTI~!!-bHpH;8o zkM#i}uMfccTmbNPtPfxZK$P_X^dm@mJJtuV0U+A?0Qwb?6P*V}h{ktueSnycha2}A0IUxXX?*}!Ba8O=Y`px8^#QOx0Mt?d0F&?o z9FzG2AR)A^FXFaaw%?~`tsj5*_<45w&U*I#-_dbqPQhGXUdpzUIs_;IACqGQIe)gj z-FY9}-?wig0Js2B76kwRkpa-B04eKJKn#CMzE1St>2wwofE$BBS{7q40Ah{-x&{FG zk3Wq~02np;8 zWLeEa&04$Gwma7*40D=8o*Wg_OfK>NVv=IQZ`)659h3YYg_O}=VXaM-gv%Ci(bDqVwpRkJ0N``5RRQRnr&SBCfe3Lv z=C+gM-AIdeSFMG-BTA|oPw5wUAN}KTj0000?qTtqxbS*RBG!75iViwve2ionClf9uMKKA>>?e9w-MgCm|)h=sD-T$q7*D!<2kV zFzM^JaV`K4?vJw9R0y9%kp5NV+g}&ol?%>6Xb7Z_EAMq7DE**JJ{gqt0P?dwilF_A zK#=c;fPerPt_*X3b79d7=(AtveR4Pn0|5PDrr$+AQOE>Rl6(Uo{fhwb?eB_(6HW10 z4+F05pWEC7{Ip7gnf8T+!MxEL01o8zbUG)pZ4vVPT@Y~befn34hx}wNtN`G=a|}(} zTnPZ~R>;)VXc-6{$P)`$05au3 zCqsg69AkG8izx!L2!X-{=s?I0JviG z27p|2AW_0uW!EET#G&Yy{#v2^ivXZ*m=t;?l477o9)6+$z-L?D%9sTJF#x1F2q#z; zpL1aW0DEZ&=ors~f&jquY0~qKhoWD4xsHV_07GEuSv4PZi(eZ6=;{do0F&+m9)AD; z1OOla0097~w*X*&fF1*Y{Q=HH$hpA&015U7h<$rF_6HD!$Nm6;_Xj8g0Q&=6@%;hh zt>GGgw)d)6@yGrEk@pAS_gnz*aqJIZ2SAkl0rV|M`Z)FnumK?2{s8(WOgR?yb$@_Z z07TgzpsxVr-5%a008DNV*NM&pBP2xQySP6<%-h3z4FL8Bh_pX|tC2z1?{q+~2ovBLKJnQWgaO0FeRELx7a^5D>$klCKl}cRHQL1mMPCke0<5 z41kz(fUW^R{^L($697h!NAnz*0??H?KumuC&=CN%VgO)W{3;Lx9|C9s#+M-Sa)h2+ ztOLjiAj@hUB5x8L8vs_5iEyihAnO81e~v*W!NPx^9(4>P>s3%*{L<|w)yY9x*HlmX z^rSFkB4YdJ0bqIdvs}FZ00`{wx(4qO0HnH?qKyEM-9O7>DOArvw74 zG8bAw0f=1y`D2hv7V7}L1)%5>Oco&2rC3+|T~`3sze38Bq3xAGD*$*5wkiOPdAi^l zh!9cZF}Iy0e~q+gchy?RUqne&<0<_B&wO>EwOsG}I4ip7pC^l+plledn}f8Bw6+1a jIV&!szr|9p&zSxL4gn Date: Tue, 2 Jun 2026 23:06:50 -0400 Subject: [PATCH 13/13] temporarily moves dme changes to a different line for a testmerge hopefully things dont get fucked up with this --- modular_pentest/~pentest.dme | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/modular_pentest/~pentest.dme b/modular_pentest/~pentest.dme index d06e3772de6..0c78a35fc00 100644 --- a/modular_pentest/~pentest.dme +++ b/modular_pentest/~pentest.dme @@ -250,16 +250,6 @@ #include "modules\catalog\howto_guides.dm" #include "modules\chemistry\code\medical_reagents\medicine_reagents.dm" #include "modules\chemistry\code\recipes\medical_reactions.dm" -#include "modules\clothes\code\accessories.dm" -#include "modules\clothes\code\feet.dm" -#include "modules\clothes\code\hands.dm" -#include "modules\clothes\code\head.dm" -#include "modules\clothes\code\loadout.dm" -#include "modules\clothes\code\mask.dm" -#include "modules\clothes\code\neck.dm" -#include "modules\clothes\code\suits.dm" -#include "modules\clothes\code\under.dm" -#include "modules\clothes\code\vendors.dm" #include "modules\cult\code\_cult_gamemode.dm" #include "modules\cult\code\construct_spells.dm" #include "modules\cult\code\constructs.dm" @@ -284,6 +274,16 @@ #include "modules\cult\code\narsie.dm" #include "modules\cult\code\shade.dm" #include "modules\cult\code\soulstone.dm" +#include "modules\clothes\code\accessories.dm" //temporarily here for testmerge +#include "modules\clothes\code\feet.dm" +#include "modules\clothes\code\hands.dm" +#include "modules\clothes\code\head.dm" +#include "modules\clothes\code\loadout.dm" +#include "modules\clothes\code\mask.dm" +#include "modules\clothes\code\neck.dm" +#include "modules\clothes\code\suits.dm" +#include "modules\clothes\code\under.dm" +#include "modules\clothes\code\vendors.dm" //temporarily here for testmerge #include "modules\custom_pets\code\custom_pets_init.dm" #include "modules\custom_pets\code\custom_pets_registry.dm" #include "modules\custom_pets\code\custom_pets_testing.dm"