diff --git a/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm b/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm index 22d33af0c67..1f4c8cb9973 100644 --- a/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm +++ b/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm @@ -150,6 +150,43 @@ icon_file = 'icons/mob/inhands/clothing/masks_righthand.dmi' json_config = 'code/datums/greyscale/json_configs/bandanaskull_inhands.json' +/datum/greyscale_config/facescarf + name = "Facescarf" + icon_file = 'icons/obj/clothing/masks.dmi' + json_config = 'code/datums/greyscale/json_configs/facescarf.json' + +/datum/greyscale_config/facescarf/worn + name = "Facescarf (Worn)" + icon_file = 'icons/mob/clothing/mask.dmi' + +/datum/greyscale_config/facescarf/inhands_left + name = "Facescarf (Held, Left)" + icon_file = 'icons/mob/inhands/clothing/masks_lefthand.dmi' + json_config = 'code/datums/greyscale/json_configs/facescarf_inhands.json' + +/datum/greyscale_config/facescarf/inhands_right + name = "Facescarf (Held, Right)" + icon_file = 'icons/mob/inhands/clothing/masks_righthand.dmi' + json_config = 'code/datums/greyscale/json_configs/facescarf_inhands.json' + +/datum/greyscale_config/kitsune + name = "Kitsune mask" + icon_file = 'icons/obj/clothing/masks.dmi' + json_config = 'code/datums/greyscale/json_configs/kitsune.json' + +/datum/greyscale_config/kitsune/worn + name = "Kitsune mask (Worn)" + icon_file = 'icons/mob/clothing/mask.dmi' + +/datum/greyscale_config/rebellion_mask + name = "Rebellion mask" + icon_file = 'icons/obj/clothing/masks.dmi' + json_config = 'code/datums/greyscale/json_configs/rebellion_mask.json' + +/datum/greyscale_config/rebellion_mask/worn + name = "Rebellion mask (Worn)" + icon_file = 'icons/mob/clothing/mask.dmi' + // // NECK // diff --git a/code/datums/greyscale/json_configs/facescarf.json b/code/datums/greyscale/json_configs/facescarf.json new file mode 100644 index 00000000000..eadb07dd927 --- /dev/null +++ b/code/datums/greyscale/json_configs/facescarf.json @@ -0,0 +1,18 @@ +{ + "facescarf": [ + { + "type": "icon_state", + "icon_state": "facescarf", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ], + "facescarf_up": [ + { + "type": "icon_state", + "icon_state": "facescarf_up", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/code/datums/greyscale/json_configs/facescarf_inhands.json b/code/datums/greyscale/json_configs/facescarf_inhands.json new file mode 100644 index 00000000000..eee4225a050 --- /dev/null +++ b/code/datums/greyscale/json_configs/facescarf_inhands.json @@ -0,0 +1,10 @@ +{ + "greyscale_facescarf": [ + { + "type": "icon_state", + "icon_state": "greyscale_bandana", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/code/datums/greyscale/json_configs/kitsune.json b/code/datums/greyscale/json_configs/kitsune.json new file mode 100644 index 00000000000..bee64183213 --- /dev/null +++ b/code/datums/greyscale/json_configs/kitsune.json @@ -0,0 +1,16 @@ +{ + "kitsune": [ + { + "type": "icon_state", + "icon_state": "kitsune_base", + "blend_mode": "overlay", + "color_ids": [ 1 ] + }, + { + "type": "icon_state", + "icon_state": "kitsune_stripe", + "blend_mode": "overlay", + "color_ids": [ 2 ] + } + ] +} diff --git a/code/datums/greyscale/json_configs/rebellion_mask.json b/code/datums/greyscale/json_configs/rebellion_mask.json new file mode 100644 index 00000000000..1c421b00b79 --- /dev/null +++ b/code/datums/greyscale/json_configs/rebellion_mask.json @@ -0,0 +1,10 @@ +{ + "rebellion_mask": [ + { + "type": "icon_state", + "icon_state": "rebellion_mask", + "blend_mode": "overlay", + "color_ids": [ 1 ] + } + ] +} diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 756b2a25a0d..9c4e687c128 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -787,7 +787,8 @@ GLOBAL_LIST_INIT(plastic_recipes, list( new /datum/stack_recipe("mannequin", /obj/structure/mannequin/plastic, 25, time = 5 SECONDS, one_per_turf = TRUE, check_density = FALSE, category = CAT_ENTERTAINMENT), \ new /datum/stack_recipe("wet floor sign", /obj/item/clothing/suit/caution, 2, check_density = FALSE, category = CAT_EQUIPMENT), \ new /datum/stack_recipe("warning cone", /obj/item/clothing/head/cone, 2, check_density = FALSE, category = CAT_EQUIPMENT), \ - new /datum/stack_recipe("blank wall sign", /obj/item/sign, 1, check_density = FALSE, category = CAT_FURNITURE))) + new /datum/stack_recipe("blank wall sign", /obj/item/sign, 1, check_density = FALSE, category = CAT_FURNITURE), \ + new /datum/stack_recipe("rebellion mask", /obj/item/clothing/mask/rebellion, 1, check_density = FALSE, category = CAT_CLOTHING))) /obj/item/stack/sheet/plastic name = "plastic" diff --git a/code/modules/clothing/masks/bandana.dm b/code/modules/clothing/masks/bandana.dm index da9efa593dd..b3a0c4e6af5 100644 --- a/code/modules/clothing/masks/bandana.dm +++ b/code/modules/clothing/masks/bandana.dm @@ -200,3 +200,34 @@ desc = "A fine black bandana with nanotech lining and a skull emblem." greyscale_colors = "#2e2e2e#C6C6C6" flags_1 = NONE + +/obj/item/clothing/mask/facescarf + name = "facescarf" + desc = "Cover your face like in the cowboy movies. It also has breathtube so you can wear it everywhere!" + actions_types = /datum/action/item_action/adjust + icon_state = "facescarf" + inhand_icon_state = "greyscale_facescarf" + alternate_worn_layer = BACK_LAYER + clothing_flags = BLOCK_GAS_SMOKE_EFFECT|MASKINTERNALS + flags_inv = HIDEFACIALHAIR | HIDEFACE | HIDESNOUT + w_class = WEIGHT_CLASS_SMALL + visor_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS + visor_flags_inv = HIDEFACIALHAIR | HIDEFACE | HIDESNOUT + flags_cover = MASKCOVERSMOUTH + visor_flags_cover = MASKCOVERSMOUTH + custom_price = PAYCHECK_CREW + greyscale_colors = "#eeeeee" + greyscale_config = /datum/greyscale_config/facescarf + greyscale_config_worn = /datum/greyscale_config/facescarf/worn + greyscale_config_inhand_left = /datum/greyscale_config/facescarf/inhands_left + greyscale_config_inhand_right = /datum/greyscale_config/facescarf/inhands_right + flags_1 = IS_PLAYER_COLORABLE_1 + +/obj/item/clothing/mask/facescarf/AltClick(mob/user) + ..() + if(user.can_perform_action(src, NEED_DEXTERITY)) + adjustmask(user) + +/obj/item/clothing/mask/facescarf/examine(mob/user) + . = ..() + . += span_notice("Alt-click [src] to adjust it.") diff --git a/code/modules/clothing/masks/costume.dm b/code/modules/clothing/masks/costume.dm index 7eb5da57743..384b6a43460 100644 --- a/code/modules/clothing/masks/costume.dm +++ b/code/modules/clothing/masks/costume.dm @@ -39,3 +39,29 @@ icon_state = "scarecrow_sack" inhand_icon_state = null flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDESNOUT + +/obj/item/clothing/mask/kitsune + name = "kitsune mask" + desc = "Porcelain mask made in the style of the Sol-3 region. It is painted to look like a kitsune." + icon_state = "kitsune" + inhand_icon_state = null + w_class = WEIGHT_CLASS_SMALL + flags_inv = HIDEFACE|HIDEFACIALHAIR + custom_price = PAYCHECK_CREW + greyscale_colors = "#EEEEEE#AA0000" + greyscale_config = /datum/greyscale_config/kitsune + greyscale_config_worn = /datum/greyscale_config/kitsune/worn + flags_1 = IS_PLAYER_COLORABLE_1 + +/obj/item/clothing/mask/rebellion + name = "rebellion mask" + desc = "Mask that is usually used during rebellions by insurgents. It covers the entire face and makes you unrecognizable." + icon_state = "rebellion_mask" + inhand_icon_state = null + w_class = WEIGHT_CLASS_SMALL + flags_inv = HIDEFACE|HIDEFACIALHAIR|HIDESNOUT + custom_price = PAYCHECK_CREW + greyscale_colors = "#EEEEEE" + greyscale_config = /datum/greyscale_config/rebellion_mask + greyscale_config_worn = /datum/greyscale_config/rebellion_mask/worn + flags_1 = IS_PLAYER_COLORABLE_1 diff --git a/code/modules/vending/clothesmate.dm b/code/modules/vending/clothesmate.dm index eeca2422e0c..47276acb259 100644 --- a/code/modules/vending/clothesmate.dm +++ b/code/modules/vending/clothesmate.dm @@ -18,6 +18,7 @@ /obj/item/clothing/mask/bandana = 3, /obj/item/clothing/mask/bandana/striped = 3, /obj/item/clothing/mask/bandana/skull = 3, + /obj/item/clothing/mask/facescarf = 3, /obj/item/clothing/neck/scarf = 6, /obj/item/clothing/neck/large_scarf = 6, /obj/item/clothing/neck/large_scarf/red = 6, @@ -161,6 +162,8 @@ /obj/item/clothing/suit/hooded/ethereal_raincoat = 3, /obj/item/clothing/under/ethereal_tunic = 3, + /obj/item/clothing/mask/kitsune = 3, + /obj/item/clothing/mask/rebellion = 6, /obj/item/clothing/suit/costume/wellworn_shirt/graphic/ian = 1, /obj/item/clothing/suit/costume/irs = 20, /obj/item/clothing/head/costume/irs = 20, diff --git a/icons/mob/clothing/mask.dmi b/icons/mob/clothing/mask.dmi index 375de246269..4c05979ff2b 100644 Binary files a/icons/mob/clothing/mask.dmi and b/icons/mob/clothing/mask.dmi differ diff --git a/icons/obj/clothing/masks.dmi b/icons/obj/clothing/masks.dmi index 20951b3264f..1dd2ac7d71c 100644 Binary files a/icons/obj/clothing/masks.dmi and b/icons/obj/clothing/masks.dmi differ