diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index 4469f71e474..a388324a582 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -98,11 +98,15 @@ #define HIDEHEADGEAR (1<<11) ///for lizard snouts, because some HIDEFACE clothes don't actually conceal that portion of the head. #define HIDESNOUT (1<<12) -///SKYRAT EDIT ADDITION: CUSTOM EAR TOGGLE FOR ANTHRO/ETC EAR SHOWING - Manually set this on items you want anthro ears to show on! +///hides mutant/moth wings, does not apply to functional wings +#define HIDEMUTWINGS (1<<13) + +//SKYRAT EDIT ADDITION: CUSTOM EAR TOGGLE FOR ANTHRO/ETC EAR SHOWING - +/// Manually set this on items you want anthro ears to show on! #define SHOWSPRITEEARS (1<<13) /// Does this sprite also hide the spine on tails? Realistically only useful for the clothes that have a special tail overlay, like MODsuits #define HIDESPINE (1<<14) -//SKYRAT EDIT ADDITION BEGIN - ERP UPDATE +/// Does this sprite hide devious devices? #define HIDESEXTOY (1<<15) //SKYRAT EDIT ADDITION END diff --git a/code/datums/greyscale/config_types/greyscale_configs.dm b/code/datums/greyscale/config_types/greyscale_configs.dm index 9ffdcaeea00..b3f43c09d6a 100644 --- a/code/datums/greyscale/config_types/greyscale_configs.dm +++ b/code/datums/greyscale/config_types/greyscale_configs.dm @@ -434,3 +434,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' + + diff --git a/code/datums/greyscale/json_configs/moth_coat.json b/code/datums/greyscale/json_configs/moth_coat.json new file mode 100644 index 00000000000..84cdfb4821e --- /dev/null +++ b/code/datums/greyscale/json_configs/moth_coat.json @@ -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" + } + ] +} diff --git a/code/datums/greyscale/json_configs/moth_coat_winter.json b/code/datums/greyscale/json_configs/moth_coat_winter.json new file mode 100644 index 00000000000..6c8c36615e3 --- /dev/null +++ b/code/datums/greyscale/json_configs/moth_coat_winter.json @@ -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" + } + ] +} diff --git a/code/datums/greyscale/json_configs/moth_coat_winter_worn.json b/code/datums/greyscale/json_configs/moth_coat_winter_worn.json new file mode 100644 index 00000000000..04dce626ce2 --- /dev/null +++ b/code/datums/greyscale/json_configs/moth_coat_winter_worn.json @@ -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" + } + ] +} diff --git a/code/datums/greyscale/json_configs/moth_coat_worn.json b/code/datums/greyscale/json_configs/moth_coat_worn.json new file mode 100644 index 00000000000..c04046f7f86 --- /dev/null +++ b/code/datums/greyscale/json_configs/moth_coat_worn.json @@ -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" + } + ] +} diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 11641e72efb..af56dc5a297 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -1620,6 +1620,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" diff --git a/code/modules/clothing/head/moth.dm b/code/modules/clothing/head/moth.dm new file mode 100644 index 00000000000..d91d58208c6 --- /dev/null +++ b/code/modules/clothing/head/moth.dm @@ -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 diff --git a/code/modules/clothing/suits/moth.dm b/code/modules/clothing/suits/moth.dm new file mode 100644 index 00000000000..e366d5e2cca --- /dev/null +++ b/code/modules/clothing/suits/moth.dm @@ -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 diff --git a/code/modules/surgery/organs/external/wings.dm b/code/modules/surgery/organs/external/wings.dm index 2db6c61f20f..e3a6be72d1c 100644 --- a/code/modules/surgery/organs/external/wings.dm +++ b/code/modules/surgery/organs/external/wings.dm @@ -179,7 +179,9 @@ return GLOB.sprite_accessories["wings"] //SKYRAT EDIT CHANGE /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) . = ..() diff --git a/code/modules/vending/clothesmate.dm b/code/modules/vending/clothesmate.dm index 48a7e0b56ed..31d83b41653 100644 --- a/code/modules/vending/clothesmate.dm +++ b/code/modules/vending/clothesmate.dm @@ -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, diff --git a/icons/mob/clothing/head/moth.dmi b/icons/mob/clothing/head/moth.dmi new file mode 100644 index 00000000000..332475dc138 Binary files /dev/null and b/icons/mob/clothing/head/moth.dmi differ diff --git a/icons/mob/clothing/suits/moth.dmi b/icons/mob/clothing/suits/moth.dmi new file mode 100644 index 00000000000..c79c4a4fae3 Binary files /dev/null and b/icons/mob/clothing/suits/moth.dmi differ diff --git a/icons/obj/clothing/head/moth.dmi b/icons/obj/clothing/head/moth.dmi new file mode 100644 index 00000000000..1184e51a45d Binary files /dev/null and b/icons/obj/clothing/head/moth.dmi differ diff --git a/icons/obj/clothing/suits/moth.dmi b/icons/obj/clothing/suits/moth.dmi new file mode 100644 index 00000000000..bdb5701b5e6 Binary files /dev/null and b/icons/obj/clothing/suits/moth.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 65c1143521f..ecdd25df06f 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -2531,6 +2531,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" @@ -2597,6 +2598,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"