Adds an origin and culture system to govern possible faction items, citizenships, accents, religions. (#13400)

This commit is contained in:
Matt Atlas
2022-04-24 17:29:44 +02:00
committed by GitHub
parent fd242cef4c
commit b7b9db101f
85 changed files with 2020 additions and 280 deletions
@@ -292,6 +292,8 @@ var/list/gear_datums = list()
var/list/allowed_roles //Roles that can spawn with this item.
var/whitelisted //Term to check the whitelist for..
var/faction //Is this item whitelisted for a faction?
var/list/culture_restriction //Is this item restricted to certain cultures? The contents are paths.
var/list/origin_restriction //Is this item restricted to certain origins? The contents are paths.
var/sort_category = "General"
var/list/gear_tweaks = list() //List of datums which will alter the item after it has been spawned.
var/flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION
@@ -349,6 +349,7 @@
description = "A selection of cadre brassards from Gadpathur."
path = /obj/item/clothing/accessory/armband/gadpathur
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/accessory/gadpathur/New()
..()
@@ -363,12 +364,14 @@
description = "A small metal badge worn by Gadpathurian Section Leaders."
path = /obj/item/clothing/accessory/gadpathurian_leader
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/accessory/gadpathur_dogtags
display_name = "gadpathurian dogtags"
description = "Dogtags issued to Gadpathurians."
path = /obj/item/clothing/accessory/dogtags/gadpathur
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/accessory/sash_coloured
display_name = "sash (colourable)"
@@ -326,6 +326,7 @@
/datum/gear/gadbook
display_name = "gadpathurian morale manual"
path = /obj/item/device/litanybook/gadpathur
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/aurora_miniature
display_name = "aurora miniature"
@@ -332,6 +332,7 @@
description = "A selection of headgear from Gadpathur."
path = /obj/item/clothing/head/gadpathur
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/head/gadpathur/New()
..()
@@ -37,6 +37,7 @@
display_name = "dominian robe selection"
description = "A selection of robes belonging to Dominia's Moroz Holy Tribunal."
path = /obj/item/clothing/under/dominia/priest
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/dominia/robe/New()
..()
@@ -49,6 +50,7 @@
display_name = "dominian beret selection"
description = "A selection of modified berets belonging to Dominia's Moroz Holy Tribunal."
path = /obj/item/clothing/under/dominia/priest
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/dominia/beret/New()
..()
@@ -61,6 +63,7 @@
display_name = "dominian outerwear selection"
description = "A selection of capes and outerwear worn by the Moroz Holy Tribunal."
path = /obj/item/clothing/under/dominia/priest
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/dominia/cape/New()
..()
@@ -74,6 +77,7 @@
display_name = "assunzione robe selection"
description = "A selection of robes worn by adherents to Luceism."
path = /obj/item/clothing/accessory/poncho/assunzione
origin_restriction = list(/decl/origin_item/origin/assunzione, /decl/origin_item/origin/ipc_assunzione)
/datum/gear/religion/assunzione/robe/New()
..()
@@ -91,6 +95,7 @@
display_name = "tribunalist medical beret"
path = /obj/item/clothing/head/beret/dominia/medical
allowed_roles = list("Chief Medical Officer", "Physician", "Surgeon", "Pharmacist", "First Responder", "Medical Intern")
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/shaman_staff
display_name = "shaman staff"
@@ -101,33 +106,40 @@
description = "The traditional red-black-gold uniform of a priestly member of His Majesty's Diplomatic Service."
path = /obj/item/clothing/under/dominia/priest/consular
allowed_roles = list("Consular Officer")
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/dominia/beret_consular
display_name = "tribunalist consular beret"
description = "A n elegant and well-tailored gold-and-red beret worn by priestly members of His Majesty's Diplomatic Service."
path = /obj/item/clothing/head/beret/dominia/consular
allowed_roles = list("Consular Officer")
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/dominia/cape_consular
display_name = "tribunalist cousular cape"
description = "A truly majestic gold and red cape worn by members of the clergy affiliated with His Majesty's Diplomatic Service."
path = /obj/item/clothing/accessory/poncho/dominia/consular
allowed_roles = list("Consular Officer")
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/religion/assunzione/accessory
display_name = "luceian amulet"
path = /obj/item/clothing/accessory/assunzione
origin_restriction = list(/decl/origin_item/origin/assunzione, /decl/origin_item/origin/ipc_assunzione)
/datum/gear/religion/assunzioneorb
display_name = "assunzione warding sphere"
description = "A religious artefact commonly associated with Luceism."
path = /obj/item/assunzioneorb
origin_restriction = list(/decl/origin_item/origin/assunzione, /decl/origin_item/origin/ipc_assunzione)
/datum/gear/religion/assunzionesheath
display_name = "assunzione warding sphere sheath"
description = "A small metal shell designed to hold a warding sphere."
path = /obj/item/storage/assunzionesheath
origin_restriction = list(/decl/origin_item/origin/assunzione, /decl/origin_item/origin/ipc_assunzione)
/datum/gear/religion/dominia/codex
display_name = "tribunal codex"
path = /obj/item/device/litanybook
path = /obj/item/device/litanybook
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
@@ -286,6 +286,7 @@ datum/gear/suit/colorvest
display_name = "dominian cape"
path = /obj/item/clothing/accessory/poncho/dominia_cape
flags = GEAR_HAS_DESC_SELECTION
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/suit/dominia_cape/New()
..()
@@ -303,6 +304,7 @@ datum/gear/suit/colorvest
description = "A selection of Dominian coats and jackets."
path = /obj/item/clothing/suit/storage/toggle/dominia
flags = GEAR_HAS_DESC_SELECTION
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/suit/dominia/New()
..()
@@ -323,6 +325,7 @@ datum/gear/suit/colorvest
description = "A selection of Fisanduhian jackets."
path = /obj/item/clothing/suit/storage/toggle/dominia/bomber
flags = GEAR_HAS_DESC_SELECTION
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/suit/fisanduhian_bomber/New()
..()
@@ -413,6 +416,7 @@ datum/gear/suit/colorvest
display_name = "himean coat selection"
path = /obj/item/clothing/suit/storage/toggle/himeo
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/himeo)
/datum/gear/suit/himeo/New()
..()
@@ -426,6 +430,7 @@ datum/gear/suit/colorvest
description = "A selection of Vysokan chokhas."
path = /obj/item/clothing/suit/storage/vysoka
flags = GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION
origin_restriction = list(/decl/origin_item/origin/vysoka)
/datum/gear/suit/vysoka/New()
..()
@@ -460,6 +465,7 @@ datum/gear/suit/colorvest
display_name = "gadpathurian coat selection"
path = /obj/item/clothing/suit/storage/gadpathur
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/suit/gadpathur/New()
..()
@@ -214,6 +214,7 @@
description = "A selection of Dominian clothing."
path = /obj/item/clothing/under/dominia
flags = GEAR_HAS_DESC_SELECTION
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/uniform/dominia/New()
..()
@@ -230,6 +231,7 @@
display_name = "dominian dress selection"
description = "A selection of fancy Dominian dresses."
path = /obj/item/clothing/under/dominia/dress
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/uniform/dominia_dress/New()
..()
@@ -244,6 +246,7 @@
description = "A selection of Dominian clothing belonging to the Diplomatic Service."
path = /obj/item/clothing/under/dominia/consular
allowed_roles = list("Consular Officer")
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/uniform/dominia_consular/New()
..()
@@ -256,6 +259,7 @@
display_name = "fisanduhian sweater"
path = /obj/item/clothing/under/dominia/sweater
flags = GEAR_HAS_DESC_SELECTION
culture_restriction = list(/decl/origin_item/culture/dominia, /decl/origin_item/culture/dominian_unathi)
/datum/gear/uniform/elyra_holo
display_name = "elyran holographic suit selection"
@@ -332,6 +336,7 @@
display_name = "gadpathurian fatigues"
path = /obj/item/clothing/under/uniform/gadpathur
flags = GEAR_HAS_DESC_SELECTION
origin_restriction = list(/decl/origin_item/origin/gadpathur)
/datum/gear/uniform/miscellaneous/qipao
display_name = "qipao"
@@ -1,7 +1,7 @@
/datum/gear/suit/unathi_mantle
display_name = "hide mantle selection"
description = "A selection of hide mantles, one for each of the desert, forest, and mountainous \
regions of Moghes. The forest mantle from the coveted Tul is exclusively for nobility these days."
display_name = "peasant hide mantle selection"
description = "A selection of hide mantles, one for each of the desert, and mountainous \
regions of Moghes. The forest mantle is exclusively for nobility these days."
path = /obj/item/clothing/accessory/poncho/unathimantle
cost = 1
whitelisted = list(SPECIES_UNATHI)
@@ -12,10 +12,19 @@
..()
var/list/mantles = list()
mantles["hide mantle, desert"] = /obj/item/clothing/accessory/poncho/unathimantle
mantles["hide mantle, forest"] = /obj/item/clothing/accessory/poncho/unathimantle/forest
mantles["hide mantle, mountain"] = /obj/item/clothing/accessory/poncho/unathimantle/mountain
gear_tweaks += new /datum/gear_tweak/path(mantles)
/datum/gear/suit/unathi_mantle_noble
display_name = "forest mantle"
description = "A forest hide mantle, reserved exclusively for nobility."
path = /obj/item/clothing/accessory/poncho/unathimantle/forest
cost = 1
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_COLOR_SELECTION
/datum/gear/suit/unathi_robe
display_name = "roughspun robe"
path = /obj/item/clothing/suit/unathi/robe
@@ -26,6 +35,7 @@
/datum/gear/suit/unathi_robe/kilt
display_name = "wasteland kilt"
origin_restriction = list(/decl/origin_item/origin/wastelander)
path = /obj/item/clothing/suit/unathi/robe/kilt
/datum/gear/suit/robe_coat
@@ -90,6 +100,7 @@
display_name = "wasteland goggles"
path = /obj/item/clothing/glasses/safety/goggles/wasteland
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/wastelander)
sort_category = "Xenowear - Unathi"
/datum/gear/accessory/sinta_hood
@@ -239,6 +250,7 @@
display_name = "shaman staff"
path = /obj/item/cane/shaman
sort_category = "Xenowear - Unathi"
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
whitelisted = list(SPECIES_UNATHI)
/datum/gear/suit/maxtlatl
@@ -247,6 +259,7 @@
cost = 1
whitelisted = list(SPECIES_UNATHI)
allowed_roles = list("Chaplain")
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_DESC_SELECTION
@@ -254,6 +267,7 @@
display_name = "Thakhist wristguards"
path = /obj/item/clothing/wrists/unathi/maxtlatl
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
allowed_roles = list("Chaplain")
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_DESC_SELECTION
@@ -262,6 +276,7 @@
display_name = "Thakhist headgear"
path = /obj/item/clothing/head/unathi/maxtlatl
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
allowed_roles = list("Chaplain")
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_DESC_SELECTION
@@ -271,6 +286,7 @@
path = /obj/item/clothing/accessory/poncho/rockstone
cost = 1
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION
@@ -278,6 +294,7 @@
display_name = "jeweled bracers"
path = /obj/item/clothing/wrists/unathi/jeweled
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION
@@ -294,5 +311,6 @@
path = /obj/item/clothing/suit/unathi/jokfar
cost = 1
whitelisted = list(SPECIES_UNATHI)
origin_restriction = list(/decl/origin_item/origin/izweski_upper, /decl/origin_item/origin/trad_nobles)
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION