diff --git a/code/game/asteroid.dm b/code/game/asteroid.dm
index 9ac351e6c2f..229bc979c37 100644
--- a/code/game/asteroid.dm
+++ b/code/game/asteroid.dm
@@ -70,7 +70,7 @@ var/global/max_secret_rooms = 6
walltypes = list(/turf/simulated/wall/cult=3,/turf/simulated/mineral/random/high_chance=1)
floortypes = list(/turf/simulated/floor/engine/cult)
treasureitems = list(/obj/item/device/soulstone=1, /obj/item/clothing/suit/space/cult=1, /obj/item/weapon/bedsheet/cult=2,
- /obj/item/clothing/suit/cultrobes=2, /mob/living/simple_animal/hostile/creature=3)
+ /obj/item/clothing/suit/hooded/cultrobes=2, /mob/living/simple_animal/hostile/creature=3)
fluffitems = list(/obj/effect/gateway=1,/obj/effect/gibspawner=1,/obj/structure/cult/talisman=1,/obj/item/toy/crayon/red=2,
/obj/item/organ/internal/heart=2, /obj/effect/decal/cleanable/blood=4,/obj/structure/table/woodentable=2,/obj/item/weapon/ectoplasm=3,
/obj/item/clothing/head/helmet/space/cult=1, /obj/item/clothing/shoes/cult=1)
@@ -209,4 +209,4 @@ var/global/max_secret_rooms = 6
emptyturfs -= T
//log_to_dd("The [theme] themed [T.loc] has been created!")
- return 1
\ No newline at end of file
+ return 1
diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm
index f6d87a1b60c..0dc3910da1e 100644
--- a/code/game/gamemodes/cult/cult_items.dm
+++ b/code/game/gamemodes/cult/cult_items.dm
@@ -43,20 +43,22 @@
icon_state = "cult_hoodalt"
item_state = "cult_hoodalt"
-/obj/item/clothing/suit/cultrobes/alt
+/obj/item/clothing/suit/hooded/cultrobes/alt
icon_state = "cultrobesalt"
item_state = "cultrobesalt"
+ hoodtype = /obj/item/clothing/head/culthood/alt
-/obj/item/clothing/suit/cultrobes
+/obj/item/clothing/suit/hooded/cultrobes
name = "cult robes"
desc = "A set of armored robes worn by the followers of Nar-Sie"
icon_state = "cultrobes"
item_state = "cultrobes"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ hoodtype = /obj/item/clothing/head/culthood
allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade)
armor = list(melee = 50, bullet = 30, laser = 50, energy = 20, bomb = 25, bio = 10, rad = 0)
flags_inv = HIDEJUMPSUIT
-
+
/obj/item/clothing/head/magus
name = "magus helm"
icon_state = "magus"
@@ -90,4 +92,4 @@
desc = "A bulky suit of armour, bristling with spikes. It looks space proof."
w_class = 3
allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade,/obj/item/weapon/tank)
- armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30)
\ No newline at end of file
+ armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30)
diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm
index 77c78ab83d9..28511c9c6f5 100644
--- a/code/game/gamemodes/cult/runes.dm
+++ b/code/game/gamemodes/cult/runes.dm
@@ -1032,8 +1032,7 @@ var/list/sacrificed = list()
usr.visible_message("\red The rune disappears with a flash of red light, and a set of armor appears on [usr]...", \
"\red You are blinded by the flash of red light! After you're able to see again, you see that you are now wearing a set of armor.")
- user.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(user), slot_head)
- user.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(user), slot_wear_suit)
+ user.equip_to_slot_or_del(new /obj/item/clothing/suit/hooded/cultrobes/alt(user), slot_wear_suit)
user.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult(user), slot_shoes)
user.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/cultpack(user), slot_back)
//the above update their overlay icons cache but do not call update_icons()
diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm
index 4f3b9f6166d..5b3bd199373 100644
--- a/code/game/gamemodes/wizard/artefact.dm
+++ b/code/game/gamemodes/wizard/artefact.dm
@@ -493,8 +493,7 @@ var/global/list/multiverse = list()
M.equip_to_slot_or_del(sword, slot_r_hand)
if("cultist")
- M.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(M), slot_head)
- M.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(M), slot_wear_suit)
+ M.equip_to_slot_or_del(new /obj/item/clothing/suit/hooded/cultrobes/alt(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(sword, slot_r_hand)
@@ -873,4 +872,4 @@ var/global/list/multiverse = list()
pump_delay = 60
heal_brute = 25
heal_burn = 25
- heal_oxy = 25
\ No newline at end of file
+ heal_oxy = 25
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm b/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm
index ba971914f24..7c58f4a2b1a 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/chaplain.dm
@@ -13,10 +13,8 @@
..()
new /obj/item/clothing/under/rank/chaplain(src)
new /obj/item/clothing/shoes/black(src)
- new /obj/item/clothing/suit/nun(src)
- new /obj/item/clothing/head/nun_hood(src)
- new /obj/item/clothing/suit/chaplain_hoodie(src)
- new /obj/item/clothing/head/chaplain_hood(src)
+ new /obj/item/clothing/suit/hooded/nun(src)
+ new /obj/item/clothing/suit/hooded/chaplain_hoodie(src)
new /obj/item/clothing/suit/holidaypriest(src)
new /obj/item/clothing/under/wedding/bride_white(src)
new /obj/item/weapon/storage/backpack/cultpack (src)
@@ -28,4 +26,4 @@
new /obj/item/clothing/gloves/ring/silver(src)
new /obj/item/clothing/gloves/ring/silver(src)
new /obj/item/clothing/gloves/ring/gold(src)
- new /obj/item/clothing/gloves/ring/gold(src)
\ No newline at end of file
+ new /obj/item/clothing/gloves/ring/gold(src)
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm
index c26ace63f08..7c880918e41 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm
@@ -15,6 +15,7 @@
else
new /obj/item/weapon/storage/backpack/satchel_eng(src)
new /obj/item/weapon/storage/backpack/duffel/engineering(src)
+ new /obj/item/clothing/head/beret/ce(src)
new /obj/item/areaeditor/blueprints(src)
new /obj/item/weapon/storage/box/permits(src)
new /obj/item/clothing/under/rank/chief_engineer(src)
@@ -141,4 +142,4 @@
new /obj/item/weapon/tank/emergency_oxygen/engi(src)
new /obj/item/weapon/watertank/atmos(src)
new /obj/item/clothing/suit/fire/atmos(src)
- new /obj/item/clothing/head/hardhat/atmos(src)
\ No newline at end of file
+ new /obj/item/clothing/head/hardhat/atmos(src)
diff --git a/code/modules/client/preference/loadout/loadout_accessories.dm b/code/modules/client/preference/loadout/loadout_accessories.dm
index e392f8a4087..b86d5c44ed1 100644
--- a/code/modules/client/preference/loadout/loadout_accessories.dm
+++ b/code/modules/client/preference/loadout/loadout_accessories.dm
@@ -61,4 +61,35 @@
/datum/gear/accessory/scarf/stripedblue
display_name = "scarf, striped blue"
- path = /obj/item/clothing/accessory/stripedbluescarf
\ No newline at end of file
+ path = /obj/item/clothing/accessory/stripedbluescarf
+
+/datum/gear/accessory/holobadge
+ display_name = "holobadge, pin"
+ path = /obj/item/clothing/accessory/holobadge
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/accessory/holobadge_n
+ display_name = "holobadge, cord"
+ path = /obj/item/clothing/accessory/holobadge/cord
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/accessory/tieblue
+ display_name = "tie, blue"
+ path = /obj/item/clothing/accessory/blue
+
+/datum/gear/accessory/tiered
+ display_name = "tie, red"
+ path = /obj/item/clothing/accessory/red
+
+/datum/gear/accessory/tieblack
+ display_name = "tie, black"
+ path = /obj/item/clothing/accessory/black
+
+/datum/gear/accessory/tiehorrible
+ display_name = "tie, vomit green"
+ path = /obj/item/clothing/accessory/horrible
+
+/datum/gear/accessory/stethoscope
+ display_name = "stethoscope"
+ path = /obj/item/clothing/accessory/stethoscope
+ allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Paramedic", "Brig Physician")
diff --git a/code/modules/client/preference/loadout/loadout_general.dm b/code/modules/client/preference/loadout/loadout_general.dm
index 9266dc6ebf0..40d581d030e 100644
--- a/code/modules/client/preference/loadout/loadout_general.dm
+++ b/code/modules/client/preference/loadout/loadout_general.dm
@@ -1,3 +1,40 @@
/datum/gear/dice
- display_name = "d20"
- path = /obj/item/weapon/dice/d20
\ No newline at end of file
+ display_name = "a d20"
+ path = /obj/item/weapon/dice/d20
+
+/datum/gear/uplift
+ display_name = "a pack of Uplifts"
+ path = /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift
+
+/datum/gear/robust
+ display_name = "a pack of Robusts"
+ path = /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust
+
+/datum/gear/carp
+ display_name = "a pack of Carps"
+ path = /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp
+
+/datum/gear/midori
+ display_name = "a pack of Midoris"
+ path = /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori
+
+/datum/gear/lighter
+ display_name = "a cheap lighter"
+ path = /obj/item/weapon/lighter
+
+/datum/gear/rock
+ display_name = "a pet rock"
+ path = /obj/item/toy/pet_rock
+
+/datum/gear/sechud
+ display_name = "a classic security HUD"
+ path = /obj/item/clothing/glasses/hud/security
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/matches
+ display_name = "a box of matches"
+ path = /obj/item/weapon/storage/box/matches
+
+/datum/gear/cards
+ display_name = "a deck of cards"
+ path = /obj/item/toy/cards/deck
diff --git a/code/modules/client/preference/loadout/loadout_hat.dm b/code/modules/client/preference/loadout/loadout_hat.dm
new file mode 100644
index 00000000000..241ebd1fdf6
--- /dev/null
+++ b/code/modules/client/preference/loadout/loadout_hat.dm
@@ -0,0 +1,114 @@
+/datum/gear/hat
+ subtype_path = /datum/gear/hat
+ slot = slot_head
+ sort_category = "Headwear"
+
+/datum/gear/hat/hhat_yellow
+ display_name = "hardhat, yellow"
+ path = /obj/item/clothing/head/hardhat
+ allowed_roles = list("Chief Engineer", "Engineer", "Mechanic", "Life Support Specialist")
+
+/datum/gear/hat/hhat_orange
+ display_name = "hardhat, orange"
+ path = /obj/item/clothing/head/hardhat/orange
+ allowed_roles = list("Chief Engineer", "Engineer", "Mechanic", "Life Support Specialist")
+
+/datum/gear/hat/hhat_blue
+ display_name = "hardhat, blue"
+ path = /obj/item/clothing/head/hardhat/dblue
+ allowed_roles = list("Chief Engineer", "Engineer", "Mechanic", "Life Support Specialist")
+
+/datum/gear/hat/that
+ display_name = "top hat"
+ path = /obj/item/clothing/head/that
+
+/datum/gear/hat/flatcap
+ display_name = "flat cap"
+ path = /obj/item/clothing/head/flatcap
+
+/datum/gear/hat/fez
+ display_name = "fez"
+ path = /obj/item/clothing/head/fez
+
+/datum/gear/hat/bfedora
+ display_name = "fedora, black"
+ path = /obj/item/clothing/head/fedora
+
+/datum/gear/hat/wfedora
+ display_name = "fedora, white"
+ path = /obj/item/clothing/head/fedora/whitefedora
+
+/datum/gear/hat/brfedora
+ display_name = "fedora, brown"
+ path = /obj/item/clothing/head/fedora/brownfedora
+
+/datum/gear/hat/beretsec
+ display_name = "security beret"
+ path = /obj/item/clothing/head/beret/sec
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/hat/capcsec
+ display_name = "security corporate cap"
+ path = /obj/item/clothing/head/soft/sec/corp
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/hat/capsec
+ display_name = "security cap"
+ path = /obj/item/clothing/head/soft/sec
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/hat/capred
+ display_name = "cap, red"
+ path = /obj/item/clothing/head/soft/red
+
+/datum/gear/hat/capblue
+ display_name = "cap, blue"
+ path = /obj/item/clothing/head/soft/blue
+
+/datum/gear/hat/capgreen
+ display_name = "cap, green"
+ path = /obj/item/clothing/head/soft/green
+
+/datum/gear/hat/capblack
+ display_name = "cap, black"
+ path = /obj/item/clothing/head/soft/black
+
+/datum/gear/hat/cappurple
+ display_name = "cap, purple"
+ path = /obj/item/clothing/head/soft/purple
+
+/datum/gear/hat/capwhite
+ display_name = "cap, white"
+ path = /obj/item/clothing/head/soft/mime
+
+/datum/gear/hat/caporange
+ display_name = "cap, orange"
+ path = /obj/item/clothing/head/soft/orange
+
+/datum/gear/hat/capgrey
+ display_name = "cap, grey"
+ path = /obj/item/clothing/head/soft/grey
+
+/datum/gear/hat/capyellow
+ display_name = "cap, yellow"
+ path = /obj/item/clothing/head/soft/yellow
+
+/datum/gear/hat/cowboyhat
+ display_name = "cowboy hat"
+ path = /obj/item/clothing/head/cowboyhat
+
+/datum/gear/hat/beret/purple
+ display_name = "beret, purple"
+ path = /obj/item/clothing/head/beret/purple_normal
+
+/datum/gear/hat/beret/black
+ display_name = "beret, black"
+ path = /obj/item/clothing/head/beret/black
+
+/datum/gear/hat/beret/blue
+ display_name = "beret, blue"
+ path = /obj/item/clothing/head/beret/blue
+
+/datum/gear/hat/beret/red
+ display_name = "beret, red"
+ path = /obj/item/clothing/head/beret
diff --git a/code/modules/client/preference/loadout/loadout_suit.dm b/code/modules/client/preference/loadout/loadout_suit.dm
new file mode 100644
index 00000000000..2da1fddec94
--- /dev/null
+++ b/code/modules/client/preference/loadout/loadout_suit.dm
@@ -0,0 +1,146 @@
+/datum/gear/suit
+ subtype_path = /datum/gear/suit
+ slot = slot_wear_suit
+ sort_category = "External Wear"
+
+//WINTER COATS
+/datum/gear/suit/coat
+ subtype_path = /datum/gear/suit/coat
+ cost = 2
+
+/datum/gear/suit/coat/grey
+ display_name = "winter coat"
+ path = /obj/item/clothing/suit/hooded/wintercoat
+
+/datum/gear/suit/coat/job
+ subtype_path = /datum/gear/suit/coat
+ subtype_cost_overlap = FALSE
+
+/datum/gear/suit/coat/job/sec
+ display_name = "winter coat, security"
+ path = /obj/item/clothing/suit/hooded/wintercoat/security
+ allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/suit/coat/job/captain
+ display_name = "winter coat, captain"
+ path = /obj/item/clothing/suit/hooded/wintercoat/captain
+ allowed_roles = list("Captain")
+
+/datum/gear/suit/coat/job/med
+ display_name = "winter coat, medical"
+ path = /obj/item/clothing/suit/hooded/wintercoat/medical
+ allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Psychiatrist", "Paramedic", "Virologist", "Brig Physician")
+
+/datum/gear/suit/coat/job/sci
+ display_name = "winter coat, science"
+ path = /obj/item/clothing/suit/hooded/wintercoat/science
+ allowed_roles = list("Scientist", "Research Director")
+
+/datum/gear/suit/coat/job/engi
+ display_name = "winter coat, engineering"
+ path = /obj/item/clothing/suit/hooded/wintercoat/engineering
+ allowed_roles = list("Chief Engineer", "Engineer", "Mechanic")
+
+/datum/gear/suit/coat/job/atmos
+ display_name = "winter coat, atmospherics"
+ path = /obj/item/clothing/suit/hooded/wintercoat/engineering/atmos
+ allowed_roles = list("Chief Engineer", "Life Support Specialist")
+
+/datum/gear/suit/coat/job/hydro
+ display_name = "winter coat, hydroponics"
+ path = /obj/item/clothing/suit/hooded/wintercoat/hydro
+ allowed_roles = list("Botanist")
+
+/datum/gear/suit/coat/job/cargo
+ display_name = "winter coat, cargo"
+ path = /obj/item/clothing/suit/hooded/wintercoat/cargo
+ allowed_roles = list("Quartermaster", "Cargo Technician")
+
+/datum/gear/suit/coat/job/miner
+ display_name = "winter coat, miner"
+ path = /obj/item/clothing/suit/hooded/wintercoat/miner
+ allowed_roles = list("Miner")
+
+//LABCOATS
+/datum/gear/suit/labcoat_emt
+ display_name = "labcoat, paramedic"
+ path = /obj/item/clothing/suit/storage/labcoat/emt
+ allowed_roles = list("Chief Medical Officer", "Paramedic")
+
+//JACKETS
+/datum/gear/suit/leather_jacket
+ display_name = "leather jacket"
+ path = /obj/item/clothing/suit/jacket/leather
+
+/datum/gear/suit/br_tcoat
+ display_name = "trenchcoat, brown"
+ path = /obj/item/clothing/suit/browntrenchcoat
+
+/datum/gear/suit/bl_tcoat
+ display_name = "trenchcoat, black"
+ path = /obj/item/clothing/suit/blacktrenchcoat
+
+/datum/gear/suit/bomber_jacket
+ display_name = "bomber jacket"
+ path = /obj/item/clothing/suit/jacket
+
+/datum/gear/suit/ol_miljacket
+ display_name = "military jacket, olive"
+ path = /obj/item/clothing/suit/jacket/miljacket
+
+/datum/gear/suit/nv_miljacket
+ display_name = "military jacket, navy"
+ path = /obj/item/clothing/suit/jacket/miljacket/navy
+
+/datum/gear/suit/ds_miljacket
+ display_name = "military jacket, desert"
+ path = /obj/item/clothing/suit/jacket/miljacket/desert
+
+/datum/gear/suit/wh_miljacket
+ display_name = "military jacket, white"
+ path = /obj/item/clothing/suit/jacket/miljacket/white
+
+/datum/gear/suit/secjacket
+ display_name = "security jacket"
+ path = /obj/item/clothing/suit/armor/secjacket
+ allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/suit/poncho
+ display_name = "poncho, classic"
+ path = /obj/item/clothing/suit/poncho
+
+/datum/gear/suit/grponcho
+ display_name = "poncho, green"
+ path = /obj/item/clothing/suit/poncho/green
+
+/datum/gear/suit/rdponcho
+ display_name = "poncho, red"
+ path = /obj/item/clothing/suit/poncho/red
+
+/datum/gear/suit/tphoodie
+ display_name = "hoodie, Tharsis Polytech"
+ path = /obj/item/clothing/suit/hooded/hoodie/tp
+
+/datum/gear/suit/nthoodie
+ display_name = "hoodie, Nanotrasen"
+ path = /obj/item/clothing/suit/hooded/hoodie/nt
+
+/datum/gear/suit/lamhoodie
+ display_name = "hoodie, Lunar Academy of Medicine"
+ path = /obj/item/clothing/suit/hooded/hoodie/lam
+
+/datum/gear/suit/cuthoodie
+ display_name = "hoodie, Canaan University of Technology"
+ path = /obj/item/clothing/suit/hooded/hoodie/cut
+
+/datum/gear/suit/mithoodie
+ display_name = "hoodie, Martian Institute of Technology"
+ path = /obj/item/clothing/suit/hooded/hoodie/mit
+
+/datum/gear/suit/bluehoodie
+ display_name = "hoodie, blue"
+ path = /obj/item/clothing/suit/hooded/hoodie/blue
+
+/datum/gear/suit/blackhoodie
+ display_name = "hoodie, black"
+ path = /obj/item/clothing/suit/hooded/hoodie
diff --git a/code/modules/client/preference/loadout/loadout_uniform.dm b/code/modules/client/preference/loadout/loadout_uniform.dm
index 826cc7d5838..02cc369fe63 100644
--- a/code/modules/client/preference/loadout/loadout_uniform.dm
+++ b/code/modules/client/preference/loadout/loadout_uniform.dm
@@ -24,7 +24,7 @@
path = /obj/item/clothing/under/blackskirt
/datum/gear/uniform/skirt/job
- cost = 3
+ cost = 2
subtype_path = /datum/gear/uniform/skirt/job
subtype_cost_overlap = FALSE
@@ -96,4 +96,96 @@
/datum/gear/uniform/skirt/job/head_of_security
display_name = "skirt, hos"
path = /obj/item/clothing/under/rank/head_of_security/skirt
- allowed_roles = list("Head of Security")
\ No newline at end of file
+ allowed_roles = list("Head of Security")
+
+/datum/gear/uniform/sec
+ subtype_path = /datum/gear/uniform/sec
+ cost = 2
+
+/datum/gear/uniform/sec/formal
+ display_name = "security uniform, formal"
+ path = /obj/item/clothing/under/rank/security/formal
+ allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer", "Security Pod Pilot")
+
+datum/gear/uniform/secorporate
+ display_name = "security uniform, corporate "
+ path = /obj/item/clothing/under/rank/security/corp
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/uniform/sec/dispatch
+ display_name = "security uniform, dispatch"
+ path = /obj/item/clothing/under/rank/dispatch
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Security Pod Pilot")
+
+/datum/gear/uniform/sec/casual
+ display_name = "security uniform, casual"
+ path = /obj/item/clothing/under/rank/security2
+ allowed_roles = list("Head of Security", "Warden", "Security Officer", "Detective", "Security Pod Pilot")
+
+/datum/gear/uniform/shorts/red
+ display_name = "shorts, red"
+ path = /obj/item/clothing/under/shorts/red
+
+/datum/gear/uniform/shorts/green
+ display_name = "shorts, green"
+ path = /obj/item/clothing/under/shorts/green
+
+/datum/gear/uniform/shorts/blue
+ display_name = "shorts, blue"
+ path = /obj/item/clothing/under/shorts/blue
+
+/datum/gear/uniform/shorts/black
+ display_name = "shorts, black"
+ path = /obj/item/clothing/under/shorts/black
+
+/datum/gear/uniform/shorts/grey
+ display_name = "shorts, grey"
+ path = /obj/item/clothing/under/shorts/grey
+
+/datum/gear/uniform/pants/jeans
+ display_name = "jeans, classic"
+ path = /obj/item/clothing/under/pants/classicjeans
+
+/datum/gear/uniform/pants/mjeans
+ display_name = "jeans, mustang"
+ path = /obj/item/clothing/under/pants/mustangjeans
+
+/datum/gear/uniform/pants/bljeans
+ display_name = "jeans, black"
+ path = /obj/item/clothing/under/pants/blackjeans
+
+/datum/gear/uniform/pants/yfjeans
+ display_name = "jeans, Young Folks"
+ path = /obj/item/clothing/under/pants/youngfolksjeans
+
+/datum/gear/uniform/pants/whitepants
+ display_name = "pants, white"
+ path = /obj/item/clothing/under/pants/white
+
+/datum/gear/uniform/pants/redpants
+ display_name = "pants, red"
+ path = /obj/item/clothing/under/pants/red
+
+/datum/gear/uniform/pants/blackpants
+ display_name = "pants, black"
+ path = /obj/item/clothing/under/pants/black
+
+/datum/gear/uniform/pants/tanpants
+ display_name = "pants, tan"
+ path = /obj/item/clothing/under/pants/tan
+
+/datum/gear/uniform/pants/bluepants
+ display_name = "pants, blue"
+ path = /obj/item/clothing/under/pants/blue
+
+/datum/gear/uniform/pants/trackpants
+ display_name = "trackpants"
+ path = /obj/item/clothing/under/pants/track
+
+/datum/gear/uniform/pants/khakipants
+ display_name = "pants, khaki"
+ path = /obj/item/clothing/under/pants/khaki
+
+/datum/gear/uniform/pants/caopants
+ display_name = "pants, camo"
+ path = /obj/item/clothing/under/pants/camo
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index 9492b7839ac..7100d459a51 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -116,6 +116,11 @@
desc = "A beret for those who have shown immaculate proficienty in piping. Or plumbing."
icon_state = "beret_atmospherics"
+/obj/item/clothing/head/beret/ce
+ name = "chief engineer beret"
+ desc = "A white beret with the engineering insignia emblazoned on it. Its owner knows what they're doing. Probably."
+ icon_state = "beret_ce"
+
//Medical
/obj/item/clothing/head/surgery
name = "surgical cap"
@@ -137,4 +142,4 @@
/obj/item/clothing/head/surgery/black
desc = "A cap coroners wear during autopsies. Keeps their hair from falling into the cadavers. It is as dark than the coroner's humor."
- icon_state = "surgcap_black"
\ No newline at end of file
+ icon_state = "surgcap_black"
diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm
index dda3f5f902c..6d300c724bd 100644
--- a/code/modules/clothing/head/misc.dm
+++ b/code/modules/clothing/head/misc.dm
@@ -25,6 +25,15 @@
icon_state = "pwig"
item_state = "pwig"
+/obj/item/clothing/head/beret/blue
+ icon_state = "beret_blue"
+
+/obj/item/clothing/head/beret/black
+ icon_state = "beret_black"
+
+/obj/item/clothing/head/beret/purple_normal
+ icon_state = "beret_purple_normal"
+
/obj/item/clothing/head/that
name = "top-hat"
desc = "It's an amish looking hat."
@@ -161,6 +170,12 @@
item_state = "boater_hat"
desc = "Goes well with celery."
+/obj/item/clothing/head/cowboyhat
+ name = "cowboy hat"
+ icon_state = "cowboyhat"
+ item_state = "fedora"
+ desc = "There's a new sheriff in town. Pass the whiskey."
+
/obj/item/clothing/head/fedora
name = "\improper fedora"
icon_state = "fedora"
@@ -363,4 +378,4 @@
name = "bloated human head"
desc = "A horribly bloated and mismatched human head."
icon_state = "lingspacehelmet"
- item_state = "lingspacehelmet"
\ No newline at end of file
+ item_state = "lingspacehelmet"
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index 3715a134e16..e2b8e01fd54 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -1,4 +1,3 @@
-
/obj/item/clothing/suit/armor
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/kitchen/knife/combat)
body_parts_covered = UPPER_TORSO|LOWER_TORSO
@@ -91,6 +90,20 @@
species_fit = null
sprite_sheets = null
+/obj/item/clothing/suit/armor/secjacket
+ name = "security jacket"
+ desc = "A sturdy black jacket with reinforced fabric. Bears insignia of NT corporate security."
+ icon_state = "secjacket_open"
+ item_state = "hos"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+ armor = list(melee = 15, bullet = 10, laser = 15, energy = 5, bomb = 15, bio = 0, rad = 0)
+ cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS
+ heat_protection = UPPER_TORSO|LOWER_TORSO|ARMS
+ ignore_suitadjust = 0
+ suit_adjusted = 1
+ action_button_name = "Open/Close Jacket"
+ adjust_flavour = "unzip"
+
/obj/item/clothing/suit/armor/hos
name = "armored coat"
desc = "A trench coat enhanced with a special alloy for some protection and style."
diff --git a/code/modules/clothing/suits/hood.dm b/code/modules/clothing/suits/hood.dm
new file mode 100644
index 00000000000..e6d6c91508f
--- /dev/null
+++ b/code/modules/clothing/suits/hood.dm
@@ -0,0 +1,68 @@
+//Hoods for winter coats and chaplain hoodie etc
+
+/obj/item/clothing/suit/hooded
+ action_button_name = "Adjust hood"
+ var/obj/item/clothing/head/hood
+ var/hoodtype = /obj/item/clothing/head/winterhood //so the chaplain hoodie or other hoodies can override this
+
+/obj/item/clothing/suit/hooded/New()
+ MakeHood()
+ verbs -= /obj/item/clothing/suit/verb/openjacket //you can't unbutton those, deal with it
+ ..()
+
+/obj/item/clothing/suit/hooded/Destroy()
+ qdel(hood)
+ return ..()
+
+/obj/item/clothing/suit/hooded/proc/MakeHood()
+ if(!hood)
+ var/obj/item/clothing/head/W = new hoodtype(src)
+ hood = W
+
+/obj/item/clothing/suit/hooded/ui_action_click()
+ ToggleHood()
+
+/obj/item/clothing/suit/hooded/equipped(mob/user, slot)
+ if(slot != slot_wear_suit)
+ RemoveHood()
+ ..()
+
+/obj/item/clothing/suit/hooded/proc/RemoveHood()
+ icon_state = "[initial(icon_state)]"
+ suit_adjusted = 0
+ if(ishuman(hood.loc))
+ var/mob/living/carbon/H = hood.loc
+ H.unEquip(hood, 1)
+ H.update_inv_wear_suit()
+ hood.loc = src
+
+/obj/item/clothing/suit/hooded/dropped()
+ ..()
+ RemoveHood()
+
+/obj/item/clothing/suit/hooded/verb/Hooderize(var/mob/user)
+ set name = "Adjust the hood"
+ set category = "Object"
+ set src in usr
+ if(!isliving(usr))
+ return
+ if(usr.stat)
+ return
+ ToggleHood()
+
+/obj/item/clothing/suit/hooded/proc/ToggleHood()
+ if(!suit_adjusted)
+ if(ishuman(loc))
+ var/mob/living/carbon/human/H = loc
+ if(H.wear_suit != src)
+ to_chat(H,"You must be wearing [src] to put up the hood!")
+ return
+ if(H.head)
+ to_chat(H,"You're already wearing something on your head!")
+ return
+ else if(H.equip_to_slot_if_possible(hood,slot_head,0,0,1))
+ suit_adjusted = 1
+ icon_state = "[initial(icon_state)]_hood"
+ H.update_inv_wear_suit()
+ else
+ RemoveHood()
diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm
index 1288d02cbf4..b94be6647bb 100644
--- a/code/modules/clothing/suits/jobs.dm
+++ b/code/modules/clothing/suits/jobs.dm
@@ -73,12 +73,13 @@
)
//Chaplain
-/obj/item/clothing/suit/chaplain_hoodie
+/obj/item/clothing/suit/hooded/chaplain_hoodie
name = "chaplain hoodie"
desc = "This suit says to you 'hush'!"
icon_state = "chaplain_hoodie"
item_state = "chaplain_hoodie"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ hoodtype = /obj/item/clothing/head/chaplain_hood
allowed = list(/obj/item/weapon/storage/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/emergency_oxygen)
species_fit = list("Vox")
sprite_sheets = list(
@@ -86,13 +87,14 @@
)
//Chaplain
-/obj/item/clothing/suit/nun
+/obj/item/clothing/suit/hooded/nun
name = "nun robe"
desc = "Maximum piety in this star system."
icon_state = "nun"
item_state = "nun"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS
flags_inv = HIDESHOES|HIDEJUMPSUIT
+ hoodtype = /obj/item/clothing/head/nun_hood
allowed = list(/obj/item/weapon/storage/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/emergency_oxygen)
species_fit = list("Vox")
sprite_sheets = list(
diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm
index 6926105541d..71bdd524b8f 100644
--- a/code/modules/clothing/suits/labcoat.dm
+++ b/code/modules/clothing/suits/labcoat.dm
@@ -56,3 +56,9 @@
desc = "A suit that protects against minor chemical spills. Has a black stripe on the shoulder."
icon_state = "labcoat_mort_open"
item_state = "labcoat_mort_open"
+
+/obj/item/clothing/suit/storage/labcoat/emt
+ name = "EMT labcoat"
+ desc = "A comfortable suit for paramedics. Has dark colours."
+ icon_state = "labcoat_emt_open"
+ item_state = "labcoat_emt_open"
diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm
index badf323d804..ee7be2644e9 100644
--- a/code/modules/clothing/suits/miscellaneous.dm
+++ b/code/modules/clothing/suits/miscellaneous.dm
@@ -2,6 +2,7 @@
* Contains:
* Lasertag
* Costume
+ * Winter Coats
* Misc
*/
@@ -282,11 +283,194 @@
item_state = "lingspacesuit"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+/*
+ * Winter Coats
+ */
+
+/obj/item/clothing/suit/hooded/wintercoat
+ name = "winter coat"
+ desc = "A heavy jacket made from 'synthetic' animal furs."
+ icon_state = "wintercoat"
+ item_state = "labcoat"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+ cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS
+ min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
+ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0)
+ allowed = list(/obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/toy, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/lighter)
+ species_fit = list("Vox")
+ sprite_sheets = list(
+ "Vox" = 'icons/mob/species/vox/suit.dmi'
+ )
+
+/obj/item/clothing/head/winterhood
+ name = "winter hood"
+ desc = "A hood attached to a heavy winter jacket."
+ icon_state = "winterhood"
+ body_parts_covered = HEAD
+ cold_protection = HEAD
+ min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
+ flags = NODROP|BLOCKHAIR
+ flags_inv = HIDEEARS
+ species_fit = list("Vox")
+ sprite_sheets = list("Vox" = 'icons/mob/species/vox/head.dmi')
+
+/obj/item/clothing/suit/hooded/wintercoat/captain
+ name = "captain's winter coat"
+ icon_state = "wintercoat_captain"
+ armor = list(melee = 25, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0)
+ allowed = list(/obj/item/weapon/gun/energy, /obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/weapon/melee/baton, /obj/item/weapon/restraints/handcuffs, /obj/item/device/flashlight/seclite, /obj/item/weapon/melee/classic_baton/telescopic)
+ hoodtype = /obj/item/clothing/head/winterhood/captain
+
+/obj/item/clothing/head/winterhood/captain
+ icon_state = "winterhood_captain"
+
+/obj/item/clothing/suit/hooded/wintercoat/security
+ name = "security winter coat"
+ icon_state = "wintercoat_sec"
+ armor = list(melee = 15, bullet = 10, laser = 20, energy = 5, bomb = 15, bio = 0, rad = 0) //worse stats than normal armor, but this one protects arms and makes space hurt less, CHOICES!
+ allowed = list(/obj/item/weapon/gun/energy, /obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/weapon/melee/baton, /obj/item/weapon/restraints/handcuffs, /obj/item/device/flashlight/seclite, /obj/item/weapon/melee/classic_baton/telescopic)
+ hoodtype = /obj/item/clothing/head/winterhood/security
+
+/obj/item/clothing/head/winterhood/security
+ icon_state = "winterhood_sec"
+
+/obj/item/clothing/suit/hooded/wintercoat/medical
+ name = "medical winter coat"
+ icon_state = "wintercoat_med"
+ allowed = list(/obj/item/device/analyzer, /obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray, /obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker, /obj/item/weapon/storage/pill_bottle, /obj/item/weapon/paper, /obj/item/weapon/melee/classic_baton/telescopic)
+ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 50, rad = 0)
+ hoodtype = /obj/item/clothing/head/winterhood/medical
+
+/obj/item/clothing/head/winterhood/medical
+ icon_state = "winterhood_med"
+
+/obj/item/clothing/suit/hooded/wintercoat/science
+ name = "science winter coat"
+ icon_state = "wintercoat_sci"
+ allowed = list(/obj/item/device/analyzer, /obj/item/stack/medical, /obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray, /obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker, /obj/item/weapon/storage/pill_bottle, /obj/item/weapon/paper, /obj/item/weapon/melee/classic_baton/telescopic)
+ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 0, rad = 0)
+ hoodtype = /obj/item/clothing/head/winterhood/science
+
+/obj/item/clothing/head/winterhood/science
+ icon_state = "winterhood_sci"
+
+/obj/item/clothing/suit/hooded/wintercoat/engineering
+ name = "engineering winter coat"
+ icon_state = "wintercoat_engi"
+ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
+ allowed = list(/obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/device/t_scanner, /obj/item/weapon/rcd)
+ hoodtype = /obj/item/clothing/head/winterhood/engineering
+
+/obj/item/clothing/head/winterhood/engineering
+ icon_state = "winterhood_engi"
+
+/obj/item/clothing/suit/hooded/wintercoat/engineering/atmos
+ name = "atmospherics winter coat"
+ icon_state = "wintercoat_atmos"
+ hoodtype = /obj/item/clothing/head/winterhood/engineering/atmos
+
+/obj/item/clothing/head/winterhood/engineering/atmos
+ icon_state = "winterhood_atmos"
+
+/obj/item/clothing/suit/hooded/wintercoat/hydro
+ name = "hydroponics winter coat"
+ icon_state = "wintercoat_hydro"
+ allowed = list(/obj/item/weapon/reagent_containers/spray, /obj/item/device/analyzer/plant_analyzer, /obj/item/seeds, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/hatchet, /obj/item/weapon/storage/bag/plants)
+ hoodtype = /obj/item/clothing/head/winterhood/hydro
+
+/obj/item/clothing/head/winterhood/hydro
+ icon_state = "winterhood_hydro"
+
+/obj/item/clothing/suit/hooded/wintercoat/cargo
+ name = "cargo winter coat"
+ icon_state = "wintercoat_cargo"
+ hoodtype = /obj/item/clothing/head/winterhood/cargo
+
+/obj/item/clothing/head/winterhood/cargo
+ icon_state = "winterhood_cargo"
+
+/obj/item/clothing/suit/hooded/wintercoat/miner
+ name = "mining winter coat"
+ icon_state = "wintercoat_miner"
+ allowed = list(/obj/item/weapon/pickaxe, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/toy, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/lighter)
+ armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
+ hoodtype = /obj/item/clothing/head/winterhood/miner
+
+/obj/item/clothing/head/winterhood/miner
+ icon_state = "winterhood_miner"
+
/*
* Misc
*/
+//hoodies
+/obj/item/clothing/suit/hooded/hoodie
+ name = "hoodie"
+ desc = "It's a hoodie. It has a hood. Most hoodies do."
+ icon_state = "black_hoodie"
+ item_state = "labcoat"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+ hoodtype = /obj/item/clothing/head/hood
+ species_fit = list("Vox")
+ sprite_sheets = list(
+ "Vox" = 'icons/mob/species/vox/suit.dmi'
+ )
+
+/obj/item/clothing/head/hood
+ name = "hood"
+ desc = "A hood attached to a hoodie."
+ icon_state = "blackhood"
+ body_parts_covered = HEAD
+ cold_protection = HEAD
+ flags = NODROP|BLOCKHAIR
+ flags_inv = HIDEEARS
+ species_fit = list("Vox")
+ sprite_sheets = list(
+ "Vox" = 'icons/mob/species/vox/head.dmi'
+ )
+
+/obj/item/clothing/head/hood/blue
+ icon_state = "bluehood"
+
+/obj/item/clothing/head/hood/white
+ icon_state = "whitehood"
+
+/obj/item/clothing/suit/hooded/hoodie/blue
+ name = "blue hoodie"
+ icon_state = "blue_hoodie"
+ hoodtype = /obj/item/clothing/head/hood/blue
+
+/obj/item/clothing/suit/hooded/hoodie/mit
+ name = "Martian Institute of Technology hoodie"
+ desc = "A hoodie proudly worn by students and graduates alike, has the letters 'MIT' on the back."
+ icon_state = "mit_hoodie"
+ hoodtype = /obj/item/clothing/head/hood
+
+/obj/item/clothing/suit/hooded/hoodie/cut
+ name = "Canaan University of Technology hoodie"
+ desc = "A bright hoodie with the Canaan University of Technology logo on the front."
+ icon_state = "cut_hoodie"
+ hoodtype = /obj/item/clothing/head/hood/white
+
+/obj/item/clothing/suit/hooded/hoodie/lam
+ name = "Lunar Academy of Medicine hoodie"
+ desc = "A bright hoodie with the Lunar Academy of Medicine logo on the back."
+ icon_state = "lam_hoodie"
+ hoodtype = /obj/item/clothing/head/hood/white
+
+/obj/item/clothing/suit/hooded/hoodie/nt
+ name = "Nanotrasen hoodie"
+ desc = "A blue hoodie with the Nanotrasen logo on the back."
+ icon_state = "nt_hoodie"
+ hoodtype = /obj/item/clothing/head/hood/blue
+
+/obj/item/clothing/suit/hooded/hoodie/tp
+ name = "Tharsis Polytech hoodie"
+ desc = "A dark hoodie with the Tharsis Polytech logo on the back."
+ icon_state = "tp_hoodie"
+ hoodtype = /obj/item/clothing/head/hood
+
/obj/item/clothing/suit/straight_jacket
name = "straight jacket"
desc = "A suit that completely restrains the wearer."
@@ -307,6 +491,8 @@
"Vox" = 'icons/mob/species/vox/suit.dmi'
)
+
+
//pyjamas
//originally intended to be pinstripes >.>
@@ -364,6 +550,34 @@
"Vox" = 'icons/mob/species/vox/suit.dmi'
)
+//trackjackets
+
+/obj/item/clothing/suit/tracksuit
+ name = "black tracksuit"
+ desc = "Lightweight and stylish. What else could a man ask of his tracksuit?"
+ icon_state = "trackjacket_open"
+ item_state = "bltrenchcoat"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+ ignore_suitadjust = 0
+ suit_adjusted = 1
+ action_button_name = "Open/Close Jacket"
+ adjust_flavour = "unzip"
+ species_fit = list("Vox")
+ sprite_sheets = list(
+ "Vox" = 'icons/mob/species/vox/suit.dmi'
+ )
+
+/obj/item/clothing/suit/tracksuit/green
+ name = "green tracksuit"
+ icon_state = "trackjacketgreen_open"
+
+/obj/item/clothing/suit/tracksuit/red
+ name = "red tracksuit"
+ icon_state = "trackjacketred_open"
+
+/obj/item/clothing/suit/tracksuit/white
+ name = "white tracksuit"
+ icon_state = "trackjacketwhite_open"
//actual suits
diff --git a/code/modules/research/xenoarchaeology/finds/finds.dm b/code/modules/research/xenoarchaeology/finds/finds.dm
index 6cbe31a7ed9..1b1788eb1a1 100644
--- a/code/modules/research/xenoarchaeology/finds/finds.dm
+++ b/code/modules/research/xenoarchaeology/finds/finds.dm
@@ -296,9 +296,7 @@
if(20)
//arcane clothing
apply_prefix = 0
- var/list/possible_spawns = list(/obj/item/clothing/head/culthood,
- /obj/item/clothing/head/magus,
- /obj/item/clothing/head/culthood/alt,
+ var/list/possible_spawns = list(/obj/item/clothing/head/magus,
/obj/item/clothing/head/helmet/space/cult)
var/new_type = pick(possible_spawns)
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index 89719ebca26..63deb7f9acc 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/mob/species/vox/head.dmi b/icons/mob/species/vox/head.dmi
index b8203a5623d..930e24dfa86 100644
Binary files a/icons/mob/species/vox/head.dmi and b/icons/mob/species/vox/head.dmi differ
diff --git a/icons/mob/species/vox/suit.dmi b/icons/mob/species/vox/suit.dmi
index b8340ac1c9c..e4159ed2450 100644
Binary files a/icons/mob/species/vox/suit.dmi and b/icons/mob/species/vox/suit.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index ea31b07c4cb..a7da1046b05 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index 195d6137fca..224454d5245 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 9d6207aa2c3..abd21586fb5 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ
diff --git a/paradise.dme b/paradise.dme
index a4d08db7b91..38897e6d566 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -1123,6 +1123,8 @@
#include "code\modules\client\preference\loadout\loadout.dm"
#include "code\modules\client\preference\loadout\loadout_accessories.dm"
#include "code\modules\client\preference\loadout\loadout_general.dm"
+#include "code\modules\client\preference\loadout\loadout_hat.dm"
+#include "code\modules\client\preference\loadout\loadout_suit.dm"
#include "code\modules\client\preference\loadout\loadout_uniform.dm"
#include "code\modules\clothing\clothing.dm"
#include "code\modules\clothing\glasses\glasses.dm"
@@ -1175,6 +1177,7 @@
#include "code\modules\clothing\suits\alien.dm"
#include "code\modules\clothing\suits\armor.dm"
#include "code\modules\clothing\suits\bio.dm"
+#include "code\modules\clothing\suits\hood.dm"
#include "code\modules\clothing\suits\jobs.dm"
#include "code\modules\clothing\suits\labcoat.dm"
#include "code\modules\clothing\suits\miscellaneous.dm"