diff --git a/code/datums/greyscale/json_configs/gaiter.json b/code/datums/greyscale/json_configs/gaiter.json new file mode 100644 index 000000000000..564f4853627e --- /dev/null +++ b/code/datums/greyscale/json_configs/gaiter.json @@ -0,0 +1,18 @@ +{ + "gaiter": [ + { + "type": "icon_state", + "icon_state": "gaiter_obj", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ], + "gaiter_up": [ + { + "type": "icon_state", + "icon_state": "gaiter_obj_up", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/code/datums/greyscale/json_configs/gaiter_worn.json b/code/datums/greyscale/json_configs/gaiter_worn.json new file mode 100644 index 000000000000..bd1142f30837 --- /dev/null +++ b/code/datums/greyscale/json_configs/gaiter_worn.json @@ -0,0 +1,18 @@ +{ + "gaiter": [ + { + "type": "icon_state", + "icon_state": "gaiter", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ], + "gaiter_up": [ + { + "type": "icon_state", + "icon_state": "gaiter_up", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/code/datums/greyscale/json_configs/wraps.json b/code/datums/greyscale/json_configs/wraps.json new file mode 100644 index 000000000000..f0bdac03acf2 --- /dev/null +++ b/code/datums/greyscale/json_configs/wraps.json @@ -0,0 +1,18 @@ +{ + "wraps": [ + { + "type": "icon_state", + "icon_state": "wraps", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ], + "legwraps": [ + { + "type": "icon_state", + "icon_state": "legwraps", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/icons/map_icons/clothing/mask.dmi b/icons/map_icons/clothing/mask.dmi index d128872db1c8..57cd0c560b7f 100644 Binary files a/icons/map_icons/clothing/mask.dmi and b/icons/map_icons/clothing/mask.dmi differ diff --git a/icons/map_icons/clothing/shoes.dmi b/icons/map_icons/clothing/shoes.dmi index dc7547792d20..8ade91027b1a 100644 Binary files a/icons/map_icons/clothing/shoes.dmi and b/icons/map_icons/clothing/shoes.dmi differ diff --git a/maplestation.dme b/maplestation.dme index 13709f2dc079..10a7a66cdd1b 100644 --- a/maplestation.dme +++ b/maplestation.dme @@ -6768,6 +6768,7 @@ #include "maplestation_modules\story_content\phoneguy_equipment\code\headphone.dm" #include "maplestation_modules\story_content\post_overlay\code\post_overlay.dm" #include "maplestation_modules\story_content\prince_equipment\code\clothing.dm" +#include "maplestation_modules\story_content\providence_equipment\code\clothing.dm" #include "maplestation_modules\story_content\randall_equipment\code\randallclothing.dm" #include "maplestation_modules\story_content\reshia_equipment\code\reshiaclothing.dm" #include "maplestation_modules\story_content\ritz_equipment\code\ritzclothing.dm" diff --git a/maplestation_modules/code/datums/greyscale/_greyscale_config.dm b/maplestation_modules/code/datums/greyscale/_greyscale_config.dm index 78aefe88e5cc..46bed667c2da 100644 --- a/maplestation_modules/code/datums/greyscale/_greyscale_config.dm +++ b/maplestation_modules/code/datums/greyscale/_greyscale_config.dm @@ -68,3 +68,26 @@ /datum/greyscale_config/sweet_bow/worn name = "Sweet Bow (Worn)" icon_file = 'maplestation_modules/story_content/eveleen_equipment/icons/mob/head.dmi' + +/datum/greyscale_config/neck_gaiter + name = "Neck Gaiter" + icon_file = 'maplestation_modules/story_content/providence_equipment/icons/obj/mask.dmi' + json_config = 'code/datums/greyscale/json_configs/gaiter.json' + +/datum/greyscale_config/neck_gaiter/worn + name = "Neck Gaiter (Worn)" + icon_file = 'maplestation_modules/story_content/providence_equipment/icons/mob/mask.dmi' + json_config = 'code/datums/greyscale/json_configs/gaiter_worn.json' + +/datum/greyscale_config/legwraps + name = "Legwraps" + icon_file = 'maplestation_modules/story_content/providence_equipment/icons/obj/wraps.dmi' + json_config = 'code/datums/greyscale/json_configs/wraps.json' + +/datum/greyscale_config/legwraps/worn + name = "Legwraps (Worn)" + icon_file = 'maplestation_modules/story_content/providence_equipment/icons/mob/wrap.dmi' + +/datum/greyscale_config/legwraps/worn/digi + name = "Legwraps (Worn, Digi)" + icon_file = 'maplestation_modules/story_content/providence_equipment/icons/mob/wrap_digi.dmi' diff --git a/maplestation_modules/story_content/providence_equipment/code/clothing.dm b/maplestation_modules/story_content/providence_equipment/code/clothing.dm new file mode 100644 index 000000000000..fdaa05717961 --- /dev/null +++ b/maplestation_modules/story_content/providence_equipment/code/clothing.dm @@ -0,0 +1,90 @@ +// meck galter + +/obj/item/clothing/mask/neck_gaiter + name = "neck gaiter" + desc = "A cloth for covering your neck, and usually part of your face too, but that part's optional. Has a small respirator to be used with internals." + actions_types = list(/datum/action/item_action/adjust) + icon = 'maplestation_modules/story_content/providence_equipment/icons/obj/mask.dmi' + worn_icon = 'maplestation_modules/story_content/providence_equipment/icons/mob/mask.dmi' + alternate_worn_layer = LOW_FACEMASK_LAYER + icon_state = "neck_gaiter" + post_init_icon_state = "gaiter" + inhand_icon_state = "balaclava" + greyscale_config = /datum/greyscale_config/neck_gaiter + greyscale_config_worn = /datum/greyscale_config/neck_gaiter/worn + greyscale_colors = "#666666" + clothing_flags = BLOCK_GAS_SMOKE_EFFECT|MASKINTERNALS + w_class = WEIGHT_CLASS_SMALL + flags_inv = HIDEFACIALHAIR | HIDEFACE | HIDESNOUT + visor_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS + visor_flags_inv = HIDEFACIALHAIR | HIDEFACE | HIDESNOUT + flags_cover = MASKCOVERSMOUTH + visor_flags_cover = MASKCOVERSMOUTH + flags_1 = IS_PLAYER_COLORABLE_1 + interaction_flags_click = NEED_DEXTERITY|ALLOW_RESTING + +/obj/item/clothing/mask/neck_gaiter/attack_self(mob/user) + adjust_visor(user) + +/obj/item/clothing/mask/neck_gaiter/click_alt(mob/user) + adjust_visor(user) + return CLICK_ACTION_SUCCESS + +/obj/item/clothing/mask/neck_gaiter/click_alt_secondary(mob/user) + alternate_worn_layer = (alternate_worn_layer == initial(alternate_worn_layer) ? NONE : initial(alternate_worn_layer)) + user.update_clothing(ITEM_SLOT_MASK) + balloon_alert(user, "wearing [alternate_worn_layer == initial(alternate_worn_layer) ? "below" : "above"] suits") + +/obj/item/clothing/mask/neck_gaiter/examine(mob/user) + . = ..() + . += span_notice("[src] can be worn above or below your suit. Alt-Right-click to toggle.") + . += span_notice("Alt-click [src] to adjust it.") + +/datum/loadout_item/mask/neck_gaiter + name = "Neck Gaiter" + item_path = /obj/item/clothing/mask/neck_gaiter + +// croptop jacket + +/obj/item/clothing/suit/jacket/crop_top_jacket + name = "crop-top jacket" + desc = "A remarkably fancy-looking two-tone cropped jacket with a nice gold trim." + icon = 'maplestation_modules/story_content/providence_equipment/icons/mob/crop_jacket.dmi' + worn_icon = 'maplestation_modules/story_content/providence_equipment/icons/mob/crop_jacket.dmi' + icon_state = "crop_jacket" + worn_icon_state = "crop_jacket" + +/datum/loadout_item/suit/crop_top_jacket + name = "Crop-top Jacket" + item_path = /obj/item/clothing/suit/jacket/crop_top_jacket + +// both leg wraps + +/obj/item/clothing/shoes/wraps + name = "cloth foot wraps" + desc = "Simple cloth footwraps, suitable for padding the heels." + icon = 'maplestation_modules/story_content/providence_equipment/icons/obj/wraps.dmi' + worn_icon = 'maplestation_modules/story_content/providence_equipment/icons/mob/wrap.dmi' + digitigrade_file = 'maplestation_modules/story_content/providence_equipment/icons/mob/wrap_digi.dmi' + icon_state = "wraps" + post_init_icon_state = "wraps" + greyscale_config = /datum/greyscale_config/legwraps + greyscale_config_worn = /datum/greyscale_config/legwraps/worn + greyscale_colors = "#FFFFFF" + body_parts_covered = FALSE + supports_variations_flags = CLOTHING_DIGITIGRADE_VARIATION + flags_1 = IS_PLAYER_COLORABLE_1 + +/obj/item/clothing/shoes/wraps/leg + name = "cloth leg wraps" + desc = "Simple cloth legwraps, for when socks aren't good enough." + icon_state = "legwraps" + post_init_icon_state = "legwraps" + +/datum/loadout_item/shoes/wraps + name = "Cloth Foot Wraps" + item_path = /obj/item/clothing/shoes/wraps + +/datum/loadout_item/shoes/legwraps + name = "Cloth Leg Wraps" + item_path = /obj/item/clothing/shoes/wraps/leg diff --git a/maplestation_modules/story_content/providence_equipment/icons/mob/crop_jacket.dmi b/maplestation_modules/story_content/providence_equipment/icons/mob/crop_jacket.dmi new file mode 100644 index 000000000000..6f64dd2dcab4 Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/mob/crop_jacket.dmi differ diff --git a/maplestation_modules/story_content/providence_equipment/icons/mob/mask.dmi b/maplestation_modules/story_content/providence_equipment/icons/mob/mask.dmi new file mode 100644 index 000000000000..0901ff540cca Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/mob/mask.dmi differ diff --git a/maplestation_modules/story_content/providence_equipment/icons/mob/wrap.dmi b/maplestation_modules/story_content/providence_equipment/icons/mob/wrap.dmi new file mode 100644 index 000000000000..e5b4d73ceca8 Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/mob/wrap.dmi differ diff --git a/maplestation_modules/story_content/providence_equipment/icons/mob/wrap_digi.dmi b/maplestation_modules/story_content/providence_equipment/icons/mob/wrap_digi.dmi new file mode 100644 index 000000000000..cafc04fdf516 Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/mob/wrap_digi.dmi differ diff --git a/maplestation_modules/story_content/providence_equipment/icons/obj/mask.dmi b/maplestation_modules/story_content/providence_equipment/icons/obj/mask.dmi new file mode 100644 index 000000000000..38e877ae9c9c Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/obj/mask.dmi differ diff --git a/maplestation_modules/story_content/providence_equipment/icons/obj/wraps.dmi b/maplestation_modules/story_content/providence_equipment/icons/obj/wraps.dmi new file mode 100644 index 000000000000..0e68099b89c6 Binary files /dev/null and b/maplestation_modules/story_content/providence_equipment/icons/obj/wraps.dmi differ