Skip to content

Commit

Permalink
Adds Moth Fashion (tgstation#64716)
Browse files Browse the repository at this point in the history
* Adds two suits and one hat based on moth lore and culture, available at the clothesmate. They are set up with GAGS and can be freely recolored
* Adds one curator bundle based on construction, themed after moth engineers. It gives a few tools, materials, and a suit with hidden pockets
  • Loading branch information
Mickyan committed Feb 19, 2022
1 parent e4043e7 commit 681f00b
Show file tree
Hide file tree
Showing 16 changed files with 156 additions and 2 deletions.
2 changes: 2 additions & 0 deletions code/__DEFINES/inventory.dm
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@
#define HIDEHEADGEAR (1<<11)
///for lizard snouts, because some HIDEFACE clothes don't actually conceal that portion of the head.
#define HIDESNOUT (1<<12)
///hides mutant/moth wings, does not apply to functional wings
#define HIDEMUTWINGS (1<<13)

//bitflags for clothing coverage - also used for limbs
#define HEAD (1<<0)
Expand Down
22 changes: 22 additions & 0 deletions code/datums/greyscale/config_types/greyscale_configs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -432,3 +432,25 @@
name = "Worn CTF Light Vest"
icon_file = 'icons/mob/clothing/suits/ctf.dmi'
json_config = 'code/datums/greyscale/json_configs/ctf_light_worn.json'

/datum/greyscale_config/mothcoat
name = "Moth Coat"
icon_file = 'icons/obj/clothing/suits/moth.dmi'
json_config = 'code/datums/greyscale/json_configs/moth_coat.json'

/datum/greyscale_config/mothcoat_worn
name = "Worn Moth Coat"
icon_file = 'icons/mob/clothing/suits/moth.dmi'
json_config = 'code/datums/greyscale/json_configs/moth_coat_worn.json'

/datum/greyscale_config/mothcoat_winter
name = "Moth Winter Coat"
icon_file = 'icons/obj/clothing/suits/moth.dmi'
json_config = 'code/datums/greyscale/json_configs/moth_coat_winter.json'

/datum/greyscale_config/mothcoat_winter_worn
name = "Worn Moth Winter Coat"
icon_file = 'icons/mob/clothing/suits/moth.dmi'
json_config = 'code/datums/greyscale/json_configs/moth_coat_winter_worn.json'


15 changes: 15 additions & 0 deletions code/datums/greyscale/json_configs/moth_coat.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"mothcoat": [
{
"type": "icon_state",
"icon_state": "mothcoat",
"blend_mode": "overlay",
"color_ids": [ 1 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_details",
"blend_mode": "overlay"
}
]
}
21 changes: 21 additions & 0 deletions code/datums/greyscale/json_configs/moth_coat_winter.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"mothcoat_winter": [
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_top",
"blend_mode": "overlay",
"color_ids": [ 1 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_bottom",
"blend_mode": "overlay",
"color_ids": [ 2 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_details",
"blend_mode": "overlay"
}
]
}
21 changes: 21 additions & 0 deletions code/datums/greyscale/json_configs/moth_coat_winter_worn.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"mothcoat_winter": [
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_top_worn",
"blend_mode": "overlay",
"color_ids": [ 1 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_bottom_worn",
"blend_mode": "overlay",
"color_ids": [ 2 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_mantle_details_worn",
"blend_mode": "overlay"
}
]
}
15 changes: 15 additions & 0 deletions code/datums/greyscale/json_configs/moth_coat_worn.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"mothcoat": [
{
"type": "icon_state",
"icon_state": "mothcoat_worn",
"blend_mode": "overlay",
"color_ids": [ 1 ]
},
{
"type": "icon_state",
"icon_state": "mothcoat_details_worn",
"blend_mode": "overlay"
}
]
}
14 changes: 14 additions & 0 deletions code/game/objects/items/storage/boxes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1603,6 +1603,20 @@
new /obj/item/knife/hunting(src)
new /obj/item/storage/box/papersack/meat(src)

/obj/item/storage/box/hero/mothpioneer
name = "Mothic Fleet Pioneer - 2100's."
desc = "Some claim that the fleet engineers are directly responsible for most modern advancement in spacefaring design. Although the exact details of their past contributions are somewhat fuzzy, their ingenuity remains unmatched and unquestioned to this day."

/obj/item/storage/box/hero/mothpioneer/PopulateContents()
new /obj/item/clothing/suit/mothcoat/original(src)
new /obj/item/clothing/head/mothcap(src)
new /obj/item/flashlight/lantern(src)
new /obj/item/screwdriver(src)
new /obj/item/wrench(src)
new /obj/item/crowbar(src)
new /obj/item/stack/sheet/iron/fifty(src)
new /obj/item/stack/sheet/glass/fifty(src)

/obj/item/storage/box/holy/clock
name = "Forgotten kit"

Expand Down
10 changes: 10 additions & 0 deletions code/modules/clothing/head/moth.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/obj/item/clothing/head/mothcap
name = "mothic softcap"
desc = "A padded leather cap with goggles, standard issue aboard the moth fleet. Keeps your head warm and debris away from those big eyes."
icon_state = "mothcap"
icon = 'icons/obj/clothing/head/moth.dmi'
worn_icon = 'icons/mob/clothing/head/moth.dmi'
cold_protection = HEAD
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
flags_cover = HEADCOVERSEYES
flags_inv = HIDEHAIR
27 changes: 27 additions & 0 deletions code/modules/clothing/suits/moth.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/obj/item/clothing/suit/mothcoat
name = "mothic flightsuit"
desc = "This peculiar utility harness is a common sight among the moth fleet's crews due to its ability to fasten the wings to the body without impacting mobility inside cramped ship interiors. It looks somewhat crude yet it's surprisingly comfortable."
icon_state = "mothcoat"
greyscale_config = /datum/greyscale_config/mothcoat
greyscale_config_worn = /datum/greyscale_config/mothcoat_worn
greyscale_colors = "#eaeaea"
flags_1 = IS_PLAYER_COLORABLE_1
flags_inv = HIDEMUTWINGS
body_parts_covered = CHEST
allowed = list(/obj/item/tank/internals/emergency_oxygen, /obj/item/flashlight/lantern) //lamp

/obj/item/clothing/suit/mothcoat/original
desc = "An old-school flightsuit from the moth fleet. A perfect token of mothic survivalistic and adaptable attitude, yet a bitter reminder that with the loss of their home planet and institution of the fleet, their beloved wings remain as a burden to bear, condemned to never fly again."
greyscale_colors = "#dfa409"
pocket_storage_component_path = /datum/component/storage/concrete/pockets

/obj/item/clothing/suit/mothcoat/winter
name = "mothic mantella"
desc = "A thick garment that keeps warm and protects those precious wings from harsh weather, also commonly used during festivities. Feels much heavier than it looks."
icon_state = "mothcoat_winter"
greyscale_config = /datum/greyscale_config/mothcoat_winter
greyscale_config_worn = /datum/greyscale_config/mothcoat_winter_worn
greyscale_colors = "#557979#795e55"
body_parts_covered = CHEST|GROIN|ARMS|LEGS
cold_protection = CHEST|GROIN|ARMS|LEGS
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
4 changes: 3 additions & 1 deletion code/modules/surgery/organs/external/wings.dm
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,9 @@
return GLOB.moth_wings_list

/obj/item/organ/external/wings/moth/can_draw_on_bodypart(mob/living/carbon/human/human)
return TRUE
if(!(human.wear_suit?.flags_inv & HIDEMUTWINGS))
return TRUE
return FALSE

/obj/item/organ/external/wings/moth/Insert(mob/living/carbon/reciever, special, drop_if_replaced)
. = ..()
Expand Down
5 changes: 4 additions & 1 deletion code/modules/vending/clothesmate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,10 @@
/obj/item/clothing/suit/basil_boys = 20,
/obj/item/clothing/under/costume/basil_boys = 20,
/obj/item/clothing/head/basil_boys = 20,
/obj/item/clothing/shoes/basil_boys = 20
/obj/item/clothing/shoes/basil_boys = 20,
/obj/item/clothing/suit/mothcoat = 3,
/obj/item/clothing/suit/mothcoat/winter = 3,
/obj/item/clothing/head/mothcap = 3,
)
contraband = list(
/obj/item/clothing/under/syndicate/tacticool = 1,
Expand Down
Binary file added icons/mob/clothing/head/moth.dmi
Binary file not shown.
Binary file added icons/mob/clothing/suits/moth.dmi
Binary file not shown.
Binary file added icons/obj/clothing/head/moth.dmi
Binary file not shown.
Binary file added icons/obj/clothing/suits/moth.dmi
Binary file not shown.
2 changes: 2 additions & 0 deletions tgstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -2482,6 +2482,7 @@
#include "code\modules\clothing\head\helmet.dm"
#include "code\modules\clothing\head\jobs.dm"
#include "code\modules\clothing\head\justice.dm"
#include "code\modules\clothing\head\moth.dm"
#include "code\modules\clothing\head\papersack.dm"
#include "code\modules\clothing\head\pirate.dm"
#include "code\modules\clothing\head\religious.dm"
Expand Down Expand Up @@ -2548,6 +2549,7 @@
#include "code\modules\clothing\suits\jobs.dm"
#include "code\modules\clothing\suits\labcoat.dm"
#include "code\modules\clothing\suits\lasertag.dm"
#include "code\modules\clothing\suits\moth.dm"
#include "code\modules\clothing\suits\reactive_armour.dm"
#include "code\modules\clothing\suits\shirt.dm"
#include "code\modules\clothing\suits\straightjacket.dm"
Expand Down

0 comments on commit 681f00b

Please sign in to comment.