diff --git a/code/game/objects/items/weapons/storage/garment.dm b/code/game/objects/items/weapons/storage/garment.dm index 9fd4299ad5a..812605b31b3 100644 --- a/code/game/objects/items/weapons/storage/garment.dm +++ b/code/game/objects/items/weapons/storage/garment.dm @@ -263,6 +263,7 @@ /obj/item/storage/bag/garment/chaplain/populate_contents() new /obj/item/clothing/under/rank/civilian/chaplain(src) new /obj/item/clothing/shoes/black(src) + new /obj/item/clothing/suit/hooded/abaya(src) new /obj/item/clothing/suit/hooded/nun(src) new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) new /obj/item/clothing/suit/hooded/monk(src) diff --git a/code/modules/clothing/suits/hood.dm b/code/modules/clothing/suits/hood.dm index eff09bbbd72..b6d42e6ea0a 100644 --- a/code/modules/clothing/suits/hood.dm +++ b/code/modules/clothing/suits/hood.dm @@ -95,3 +95,51 @@ suit.RemoveHood() else qdel(src) + +/obj/item/clothing/head/hooded/screened_niqab + name = "screened niqab" + desc = "A niqab with an eye mesh for additional concealment. The wearer can see you, but you can't see them." + icon_state = "abaya_hood" + body_parts_covered = HEAD + cold_protection = HEAD + flags = BLOCKHAIR + flags_inv = HIDEEARS | HIDEMASK | HIDEFACE | HIDEEYES + + sprite_sheets = list( + "Vox" = 'icons/mob/clothing/species/vox/head.dmi', + "Grey" = 'icons/mob/clothing/species/grey/head.dmi', + "Drask" = 'icons/mob/clothing/species/drask/head.dmi', + "Kidan" = 'icons/mob/clothing/species/kidan/head.dmi' + ) + +/obj/item/clothing/head/hooded/screened_niqab/red + name = "red niqab" + icon_state = "redabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/orange + name = "orange niqab" + icon_state = "orangeabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/yellow + name = "yellow niqab" + icon_state = "yellowabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/green + name = "green niqab" + icon_state = "greenabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/blue + name = "blue niqab" + icon_state = "blueabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/purple + name = "purple niqab" + icon_state = "purpleabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/white + name = "white niqab" + icon_state = "whiteabaya_hood" + +/obj/item/clothing/head/hooded/screened_niqab/rainbow + name = "rainbow niqab" + icon_state = "rainbowabaya_hood" diff --git a/code/modules/clothing/suits/misc_suits.dm b/code/modules/clothing/suits/misc_suits.dm index a30ff9a00f6..cbc5490d86c 100644 --- a/code/modules/clothing/suits/misc_suits.dm +++ b/code/modules/clothing/suits/misc_suits.dm @@ -1196,3 +1196,87 @@ body_parts_covered = UPPER_TORSO|ARMS cold_protection = UPPER_TORSO | ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT + +/obj/item/clothing/suit/hooded/abaya + name = "abaya" + desc = "A modest, unrevealing attire fitted with a veil." + icon_state = "abaya" + item_state = "abaya" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + allowed = list(/obj/item/storage/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen) + hoodtype = /obj/item/clothing/head/hooded/screened_niqab + flags_inv = HIDEJUMPSUIT + var/list/options = list( + "Abaya" = /obj/item/clothing/suit/hooded/abaya, + "Red Abaya" = /obj/item/clothing/suit/hooded/abaya/red, + "Orange Abaya" = /obj/item/clothing/suit/hooded/abaya/orange, + "Yellow Abaya" = /obj/item/clothing/suit/hooded/abaya/yellow, + "Green Abaya" = /obj/item/clothing/suit/hooded/abaya/green, + "Blue Abaya" = /obj/item/clothing/suit/hooded/abaya/blue, + "Purple Abaya" = /obj/item/clothing/suit/hooded/abaya/purple, + "White Abaya" = /obj/item/clothing/suit/hooded/abaya/white, + "Rainbow Abaya" = /obj/item/clothing/suit/hooded/abaya/rainbow + ) + + sprite_sheets = list( + "Vox" = 'icons/mob/clothing/species/vox/suit.dmi', + "Grey" = 'icons/mob/clothing/species/grey/suit.dmi', + "Drask" = 'icons/mob/clothing/species/drask/suit.dmi', + "Kidan" = 'icons/mob/clothing/species/kidan/suit.dmi' + ) + +/obj/item/clothing/suit/hooded/abaya/proc/reskin_abaya(mob/living/L) + var/choice = input(L, "You may only change the color once.", "Reskin Abaya") in options + + if(!options[choice] || HAS_TRAIT(L, TRAIT_HANDS_BLOCKED) || !in_range(L, src)) + return + var/abaya_type = options[choice] + var/obj/item/clothing/suit/hooded/abaya/abaya = new abaya_type(get_turf(src)) + L.unEquip(src, silent = TRUE) + L.put_in_active_hand(abaya) + to_chat(L, "You are now wearing \a [choice]. Allahu Akbar!") + qdel(src) + +/obj/item/clothing/suit/hooded/abaya/attack_self(mob/user) + . = ..() + reskin_abaya(user) + +/obj/item/clothing/suit/hooded/abaya/red + name = "red abaya" + icon_state = "redabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/red + +/obj/item/clothing/suit/hooded/abaya/orange + name = "orange abaya" + icon_state = "orangeabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/orange + +/obj/item/clothing/suit/hooded/abaya/yellow + name = "yellow abaya" + icon_state = "yellowabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/yellow + +/obj/item/clothing/suit/hooded/abaya/green + name = "green abaya" + icon_state = "greenabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/green + +/obj/item/clothing/suit/hooded/abaya/blue + name = "blue abaya" + icon_state = "blueabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/blue + +/obj/item/clothing/suit/hooded/abaya/purple + name = "purple abaya" + icon_state = "purpleabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/purple + +/obj/item/clothing/suit/hooded/abaya/white + name = "white abaya" + icon_state = "whiteabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/white + +/obj/item/clothing/suit/hooded/abaya/rainbow + name = "rainbow abaya" + icon_state = "rainbowabaya" + hoodtype = /obj/item/clothing/head/hooded/screened_niqab/rainbow diff --git a/icons/mob/clothing/head.dmi b/icons/mob/clothing/head.dmi index 3d4a734e945..3c48e781567 100644 Binary files a/icons/mob/clothing/head.dmi and b/icons/mob/clothing/head.dmi differ diff --git a/icons/mob/clothing/species/drask/head.dmi b/icons/mob/clothing/species/drask/head.dmi index 0de2e55a717..b54a7d74f5c 100644 Binary files a/icons/mob/clothing/species/drask/head.dmi and b/icons/mob/clothing/species/drask/head.dmi differ diff --git a/icons/mob/clothing/species/drask/suit.dmi b/icons/mob/clothing/species/drask/suit.dmi index 673d0a68977..fe8d8226b5d 100644 Binary files a/icons/mob/clothing/species/drask/suit.dmi and b/icons/mob/clothing/species/drask/suit.dmi differ diff --git a/icons/mob/clothing/species/grey/head.dmi b/icons/mob/clothing/species/grey/head.dmi index 8b00c30ae01..6d4f7985ea8 100644 Binary files a/icons/mob/clothing/species/grey/head.dmi and b/icons/mob/clothing/species/grey/head.dmi differ diff --git a/icons/mob/clothing/species/grey/suit.dmi b/icons/mob/clothing/species/grey/suit.dmi index be7f5a16ee3..425689ef861 100644 Binary files a/icons/mob/clothing/species/grey/suit.dmi and b/icons/mob/clothing/species/grey/suit.dmi differ diff --git a/icons/mob/clothing/species/kidan/head.dmi b/icons/mob/clothing/species/kidan/head.dmi index 83818995f69..e2e3a7f7d9a 100644 Binary files a/icons/mob/clothing/species/kidan/head.dmi and b/icons/mob/clothing/species/kidan/head.dmi differ diff --git a/icons/mob/clothing/species/kidan/suit.dmi b/icons/mob/clothing/species/kidan/suit.dmi index 7e04724b7af..4b2fe0c2b18 100644 Binary files a/icons/mob/clothing/species/kidan/suit.dmi and b/icons/mob/clothing/species/kidan/suit.dmi differ diff --git a/icons/mob/clothing/species/vox/head.dmi b/icons/mob/clothing/species/vox/head.dmi index 371cdf7f715..f2767bf36c1 100644 Binary files a/icons/mob/clothing/species/vox/head.dmi and b/icons/mob/clothing/species/vox/head.dmi differ diff --git a/icons/mob/clothing/species/vox/suit.dmi b/icons/mob/clothing/species/vox/suit.dmi index 4888c946b23..e17c8d59686 100644 Binary files a/icons/mob/clothing/species/vox/suit.dmi and b/icons/mob/clothing/species/vox/suit.dmi differ diff --git a/icons/mob/clothing/suit.dmi b/icons/mob/clothing/suit.dmi index 6c4554f0ada..2ea815dc050 100644 Binary files a/icons/mob/clothing/suit.dmi and b/icons/mob/clothing/suit.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index d0edc5a9155..8a4ff7a3f46 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 54cb05d07c7..16e54e17e2a 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ