diff --git a/code/defines/obj.dm b/code/defines/obj.dm
index a940ae262b3..73075a9aeff 100644
--- a/code/defines/obj.dm
+++ b/code/defines/obj.dm
@@ -1491,8 +1491,5 @@
desc = "You can't resist."
// name = ""
-/obj/item/clothing
- name = "clothing"
-
/obj/effect/spawner
name = "object spawner"
diff --git a/code/game/objects/closets/secure/security.dm b/code/game/objects/closets/secure/security.dm
index 9b58855fb87..cfbaa700027 100644
--- a/code/game/objects/closets/secure/security.dm
+++ b/code/game/objects/closets/secure/security.dm
@@ -173,7 +173,7 @@
..()
sleep(2)
new /obj/item/clothing/under/det(src)
- new /obj/item/clothing/suit/det_suit/armor(src)
+ new /obj/item/clothing/suit/armor/det_suit(src)
new /obj/item/clothing/suit/det_suit(src)
new /obj/item/clothing/gloves/black(src)
new /obj/item/clothing/head/det_hat(src)
diff --git a/code/game/objects/items/clothing.dm b/code/game/objects/items/clothing.dm
deleted file mode 100644
index 731f630f330..00000000000
--- a/code/game/objects/items/clothing.dm
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
-CONTAINS:
-ORANGE SHOES
-MUZZLE
-CAKEHAT
-SUNGLASSES
-SWAT SUIT
-CHAMELEON JUMPSUIT
-SYNDICATE SHOES
-DEATH COMMANDO GAS MASK
-THERMAL GLASSES
-*/
-
-
-/*
-/obj/item/clothing/fire_burn(obj/fire/raging_fire, datum/air_group/environment)
- if(raging_fire.internal_temperature > src.s_fire)
- spawn( 0 )
- var/t = src.icon_state
- src.icon_state = ""
- src.icon = 'b_items.dmi'
- flick(text("[]", t), src)
- spawn(14)
- del(src)
- return
- return
- return 0
- return 1
-*/ //TODO FIX
-
-/obj/item/clothing/gloves/examine()
- set src in usr
- ..()
- return
-
-/*
-/obj/item/clothing/gloves/latex/attackby(obj/item/weapon/cable_coil/O as obj, loc)
- if (istype(O) && O.amount==1)
- var/obj/item/latexballon/LB = new //BALLOON IS EVEN SPELLED INCORRECTLY OMFG D=
- usr.put_in_hands(new /obj/item/latexballon)
- del(O)
- del(src)
- else
- return ..()
-*/
-
-/obj/item/clothing/shoes/orange/attack_self(mob/user as mob)
- if (src.chained)
- src.chained = null
- src.slowdown = SHOES_SLOWDOWN
- new /obj/item/weapon/handcuffs( user.loc )
- src.icon_state = "orange"
- return
-
-/obj/item/clothing/shoes/orange/attackby(H as obj, loc)
- ..()
- if ((istype(H, /obj/item/weapon/handcuffs) && !( src.chained )))
- //H = null
- del(H)
- src.chained = 1
- src.slowdown = 15
- src.icon_state = "orange1"
- return
-
-/obj/item/clothing/mask/muzzle/attack_paw(mob/user as mob)
- if (src == user.wear_mask)
- return
- else
- ..()
- return
-
-/obj/item/clothing/head/cakehat/var/processing = 0
-
-/obj/item/clothing/head/cakehat/process()
- if(!onfire)
- processing_objects.Remove(src)
- return
-
- var/turf/location = src.loc
- if(istype(location, /mob/))
- var/mob/living/carbon/human/M = location
- if(M.l_hand == src || M.r_hand == src || M.head == src)
- location = M.loc
-
- if (istype(location, /turf))
- location.hotspot_expose(700, 1)
-
-
-/obj/item/clothing/head/cakehat/attack_self(mob/user as mob)
- if(status > 1) return
- src.onfire = !( src.onfire )
- if (src.onfire)
- src.force = 3
- src.damtype = "fire"
- src.icon_state = "cake1"
- processing_objects.Add(src)
- else
- src.force = null
- src.damtype = "brute"
- src.icon_state = "cake0"
- return
-
-
-
-/obj/item/clothing/suit/suit/verb/toggle()
- set name = "Toggle Jacket Buttons"
- set category = "Object"
- set src in usr
-
- if(!usr.canmove || usr.stat || usr.restrained())
- return 0
-
- if(src.icon_state == "suitjacket_blue_open")
- src.icon_state = "suitjacket_blue"
- src.item_state = "suitjacket_blue"
- usr << "You button up the suit jacket."
- else if(src.icon_state == "suitjacket_blue")
- src.icon_state = "suitjacket_blue_open"
- src.item_state = "suitjacket_blue_open"
- usr << "You unbutton the suit jacket."
- else
- usr << "You button-up some imaginary buttons on your [src]."
- return
- usr.update_inv_wear_suit()
-
-/obj/item/clothing/head/ushanka/attack_self(mob/user as mob)
- if(src.icon_state == "ushankadown")
- src.icon_state = "ushankaup"
- src.item_state = "ushankaup"
- user << "You raise the ear flaps on the ushanka."
- else
- src.icon_state = "ushankadown"
- src.item_state = "ushankadown"
- user << "You lower the ear flaps on the ushanka."
-
-
-
diff --git a/code/game/objects/items/weapons/swords_axes_etc.dm b/code/game/objects/items/weapons/swords_axes_etc.dm
index 9250c886b6f..832224914b4 100644
--- a/code/game/objects/items/weapons/swords_axes_etc.dm
+++ b/code/game/objects/items/weapons/swords_axes_etc.dm
@@ -75,7 +75,6 @@ ENERGY SHIELD (where else should i even put this)
return
// AXE
-
/obj/item/weapon/melee/energy/axe/attack(target as mob, mob/user as mob)
..()
@@ -94,6 +93,17 @@ ENERGY SHIELD (where else should i even put this)
src.add_fingerprint(user)
return
+// CLASSIC BATON
+/obj/item/weapon/melee/classic_baton
+ name = "police baton"
+ desc = "A wooden truncheon for beating criminal scum."
+ icon = 'icons/obj/weapons.dmi'
+ icon_state = "baton"
+ item_state = "classic_baton"
+ flags = FPRINT | TABLEPASS
+ slot_flags = SLOT_BELT
+ force = 10
+
/obj/item/weapon/melee/classic_baton/attack(mob/M as mob, mob/living/user as mob)
if ((CLUMSY in user.mutations) && prob(50))
user << "\red You club yourself over the head."
@@ -128,6 +138,7 @@ ENERGY SHIELD (where else should i even put this)
for(var/mob/O in viewers(M))
if (O.client) O.show_message("\red [M] has been stunned with the police baton by [user]!", 1, "\red You hear someone fall", 2)
+//ENERGY SHIELD
/obj/item/weapon/shield/energy/IsShield()
if(active)
return 1
diff --git a/code/modules/admin/verbs/striketeam_syndicate.dm b/code/modules/admin/verbs/striketeam_syndicate.dm
index ee05467c57f..f825ed528e4 100644
--- a/code/modules/admin/verbs/striketeam_syndicate.dm
+++ b/code/modules/admin/verbs/striketeam_syndicate.dm
@@ -138,14 +138,14 @@ var/global/sent_syndicate_strike_team = 0
equip_if_possible(new /obj/item/clothing/under/syndicate(src), slot_w_uniform)
equip_if_possible(new /obj/item/clothing/shoes/swat(src), slot_shoes)
if (!syndicate_leader_selected)
- equip_if_possible(new /obj/item/clothing/suit/space/syndicate/elite(src), slot_wear_suit)
+ equip_if_possible(new /obj/item/clothing/suit/space/syndicate/black(src), slot_wear_suit)
else
- equip_if_possible(new /obj/item/clothing/suit/space/syndicate/elite/leader(src), slot_wear_suit)
+ equip_if_possible(new /obj/item/clothing/suit/space/syndicate/black/red(src), slot_wear_suit)
equip_if_possible(new /obj/item/clothing/gloves/swat(src), slot_gloves)
if (!syndicate_leader_selected)
- equip_if_possible(new /obj/item/clothing/head/helmet/space/syndicate/elite(src), slot_head)
+ equip_if_possible(new /obj/item/clothing/head/helmet/space/syndicate/black(src), slot_head)
else
- equip_if_possible(new /obj/item/clothing/head/helmet/space/syndicate/elite/leader(src), slot_head)
+ equip_if_possible(new /obj/item/clothing/head/helmet/space/syndicate/black/red(src), slot_head)
equip_if_possible(new /obj/item/clothing/mask/gas/syndicate(src), slot_wear_mask)
equip_if_possible(new /obj/item/clothing/glasses/thermal(src), slot_glasses)
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
new file mode 100644
index 00000000000..88d2b76eec3
--- /dev/null
+++ b/code/modules/clothing/clothing.dm
@@ -0,0 +1,199 @@
+/obj/item/clothing
+ name = "clothing"
+
+//Ears: currently only used for headsets and earmuffs
+/obj/item/clothing/ears
+ name = "ears"
+ w_class = 1.0
+ throwforce = 2
+ slot_flags = SLOT_EARS
+
+/obj/item/clothing/ears/earmuffs
+ name = "earmuffs"
+ desc = "Protects your hearing from loud noises, and quiet ones as well."
+ icon_state = "earmuffs"
+ protective_temperature = 500
+ item_state = "earmuffs"
+
+
+//Glasses
+/obj/item/clothing/glasses
+ name = "glasses"
+ icon = 'icons/obj/clothing/glasses.dmi'
+ w_class = 2.0
+ flags = GLASSESCOVERSEYES
+ slot_flags = SLOT_EYES
+ var/vision_flags = 0
+ var/darkness_view = 0//Base human is 2
+ var/invisa_view = 0
+
+/*
+SEE_SELF // can see self, no matter what
+SEE_MOBS // can see all mobs, no matter what
+SEE_OBJS // can see all objs, no matter what
+SEE_TURFS // can see all turfs (and areas), no matter what
+SEE_PIXELS// if an object is located on an unlit area, but some of its pixels are
+ // in a lit area (via pixel_x,y or smooth movement), can see those pixels
+BLIND // can't see anything
+*/
+
+
+//Gloves
+/obj/item/clothing/gloves
+ name = "gloves"
+ gender = PLURAL //Carn: for grammarically correct text-parsing
+ w_class = 2.0
+ icon = 'icons/obj/clothing/gloves.dmi'
+ protective_temperature = 400
+ heat_transfer_coefficient = 0.25
+ siemens_coefficient = 0.50
+ var/wired = 0
+ var/obj/item/weapon/cell/cell = 0
+ body_parts_covered = HANDS
+ slot_flags = SLOT_GLOVES
+ attack_verb = list("challenged")
+
+/obj/item/clothing/gloves/examine()
+ set src in usr
+ ..()
+ return
+
+
+//Head
+/obj/item/clothing/head
+ name = "head"
+ icon = 'icons/obj/clothing/hats.dmi'
+ body_parts_covered = HEAD
+ slot_flags = SLOT_HEAD
+
+
+//Mask
+/obj/item/clothing/mask
+ name = "mask"
+ icon = 'icons/obj/clothing/masks.dmi'
+ body_parts_covered = HEAD
+ slot_flags = SLOT_MASK
+
+
+//Shoes
+/obj/item/clothing/shoes
+ name = "shoes"
+ icon = 'icons/obj/clothing/shoes.dmi'
+ desc = "Comfortable-looking shoes."
+ gender = PLURAL //Carn: for grammarically correct text-parsing
+
+ body_parts_covered = FEET
+ slot_flags = SLOT_FEET
+
+ protective_temperature = 500
+ heat_transfer_coefficient = 0.10
+ permeability_coefficient = 0.50
+ slowdown = SHOES_SLOWDOWN
+
+
+//Spacesuit
+//Note: Everything in modules/clothing/spacesuits should have the entire suit grouped together.
+// Meaning the the suit is defined directly after the corrisponding helmet. Just like below!
+/obj/item/clothing/head/helmet/space
+ name = "Space helmet"
+ icon_state = "space"
+ desc = "A special helmet designed for work in a hazardous, low-pressure environment."
+ flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | BLOCKHAIR
+ item_state = "space"
+ permeability_coefficient = 0.01
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
+
+
+/obj/item/clothing/suit/space
+ name = "Space suit"
+ desc = "A suit that protects against low pressure environments. Has a big 13 on the back."
+ icon_state = "space"
+ item_state = "s_suit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.01
+ permeability_coefficient = 0.02
+ heat_transfer_coefficient = 0.02
+ protective_temperature = 1000
+ flags = FPRINT | TABLEPASS | SUITSPACE
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 3
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+
+//Suit
+/obj/item/clothing/suit
+ icon = 'icons/obj/clothing/suits.dmi'
+ name = "suit"
+ var/fire_resist = T0C+100
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL
+ allowed = list(/obj/item/weapon/tank/emergency_oxygen)
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+ slot_flags = SLOT_OCLOTHING
+
+
+//Under clothing
+/obj/item/clothing/under
+ icon = 'icons/obj/clothing/uniforms.dmi'
+ name = "under"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ protective_temperature = T0C + 50
+ heat_transfer_coefficient = 0.30
+ permeability_coefficient = 0.90
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL
+ slot_flags = SLOT_ICLOTHING
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+ var/has_sensor = 1//For the crew computer 2 = unable to change mode
+ var/sensor_mode = 0
+ /*
+ 1 = Report living/dead
+ 2 = Report detailed damages
+ 3 = Report location
+ */
+
+
+/obj/item/clothing/under/examine()
+ set src in view()
+ ..()
+ switch(src.sensor_mode)
+ if(0)
+ usr << "Its sensors appear to be disabled."
+ if(1)
+ usr << "Its binary life sensors appear to be enabled."
+ if(2)
+ usr << "Its vital tracker appears to be enabled."
+ if(3)
+ usr << "Its vital tracker and tracking beacon appear to be enabled."
+
+/obj/item/clothing/under/verb/toggle()
+ set name = "Toggle Suit Sensors"
+ set category = "Object"
+ set src in usr
+ var/mob/M = usr
+ if (istype(M, /mob/dead/)) return
+ if (usr.stat) return
+ if(src.has_sensor >= 2)
+ usr << "The controls are locked."
+ return 0
+ if(src.has_sensor <= 0)
+ usr << "This suit does not have any sensors"
+ return 0
+ src.sensor_mode += 1
+ if(src.sensor_mode > 3)
+ src.sensor_mode = 0
+ switch(src.sensor_mode)
+ if(0)
+ usr << "You disable your suit's remote sensing equipment."
+ if(1)
+ usr << "Your suit will now report whether you are live or dead."
+ if(2)
+ usr << "Your suit will now report your vital lifesigns."
+ if(3)
+ usr << "Your suit will now report your vital lifesigns as well as your coordinate position."
+ ..()
+
+/obj/item/clothing/under/rank/New()
+ sensor_mode = pick(0,1,2,3)
+ ..()
diff --git a/code/modules/clothing/ears.dm b/code/modules/clothing/ears.dm
deleted file mode 100644
index 07e82280cdd..00000000000
--- a/code/modules/clothing/ears.dm
+++ /dev/null
@@ -1,12 +0,0 @@
-/obj/item/clothing/ears
- name = "ears"
- w_class = 1.0
- throwforce = 2
- slot_flags = SLOT_EARS
-
-/obj/item/clothing/ears/earmuffs
- name = "earmuffs"
- desc = "Protects your hearing from loud noises, and quiet ones as well."
- icon_state = "earmuffs"
- protective_temperature = 500
- item_state = "earmuffs"
\ No newline at end of file
diff --git a/code/modules/clothing/glasses.dm b/code/modules/clothing/glasses.dm
deleted file mode 100644
index 4a0dd61e957..00000000000
--- a/code/modules/clothing/glasses.dm
+++ /dev/null
@@ -1,19 +0,0 @@
-/obj/item/clothing/glasses
- name = "glasses"
- icon = 'icons/obj/clothing/glasses.dmi'
- w_class = 2.0
- flags = GLASSESCOVERSEYES
- slot_flags = SLOT_EYES
- var/vision_flags = 0
- var/darkness_view = 0//Base human is 2
- var/invisa_view = 0
-
-/*
-SEE_SELF // can see self, no matter what
-SEE_MOBS // can see all mobs, no matter what
-SEE_OBJS // can see all objs, no matter what
-SEE_TURFS // can see all turfs (and areas), no matter what
-SEE_PIXELS// if an object is located on an unlit area, but some of its pixels are
- // in a lit area (via pixel_x,y or smooth movement), can see those pixels
-BLIND // can't see anything
-*/
diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm
index cd305eda444..ee49aa45e7f 100644
--- a/code/modules/clothing/glasses/glasses.dm
+++ b/code/modules/clothing/glasses/glasses.dm
@@ -28,6 +28,18 @@
vision_flags = SEE_TURFS
darkness_view = 3
+/obj/item/clothing/glasses/eyepatch
+ name = "eyepatch"
+ desc = "Yarr."
+ icon_state = "eyepatch"
+ item_state = "eyepatch"
+
+/obj/item/clothing/glasses/monocle
+ name = "monocle"
+ desc = "Such a dapper eyepiece!"
+ icon_state = "monocle"
+ item_state = "headset" // lol
+
/obj/item/clothing/glasses/material
name = "Optical Material Scanner"
desc = "Very confusing glasses."
diff --git a/code/modules/clothing/gloves.dm b/code/modules/clothing/gloves.dm
deleted file mode 100644
index 57e9f4a4c08..00000000000
--- a/code/modules/clothing/gloves.dm
+++ /dev/null
@@ -1,13 +0,0 @@
-/obj/item/clothing/gloves
- name = "gloves"
- gender = PLURAL //Carn: for grammarically correct text-parsing
- w_class = 2.0
- icon = 'icons/obj/clothing/gloves.dmi'
- protective_temperature = 400
- heat_transfer_coefficient = 0.25
- siemens_coefficient = 0.50
- var/wired = 0
- var/obj/item/weapon/cell/cell = 0
- body_parts_covered = HANDS
- slot_flags = SLOT_GLOVES
- attack_verb = list("challenged")
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index 9e280943722..a038823f7c1 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -1,4 +1,11 @@
+/obj/item/clothing/gloves/captain
+ desc = "Regal blue gloves, with a nice gold trim. Swanky."
+ name = "captain's gloves"
+ icon_state = "captain"
+ item_state = "egloves"
+ color = "captain"
+
/obj/item/clothing/gloves/cyborg
desc = "beep boop borp"
name = "cyborg gloves"
@@ -6,7 +13,6 @@
item_state = "r_hands"
siemens_coefficient = 1.0
-
/obj/item/clothing/gloves/swat
desc = "These tactical gloves are somewhat fire and impact-resistant."
name = "\improper SWAT Gloves"
diff --git a/code/modules/clothing/head.dm b/code/modules/clothing/head.dm
deleted file mode 100644
index 8e0f011c478..00000000000
--- a/code/modules/clothing/head.dm
+++ /dev/null
@@ -1,5 +0,0 @@
-/obj/item/clothing/head
- name = "head"
- icon = 'icons/obj/clothing/hats.dmi'
- body_parts_covered = HEAD
- slot_flags = SLOT_HEAD
diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm
new file mode 100644
index 00000000000..41341fb9fb1
--- /dev/null
+++ b/code/modules/clothing/head/collectable.dm
@@ -0,0 +1,118 @@
+
+//Hat Station 13
+
+/obj/item/clothing/head/collectable
+ name = "collectable hat"
+ desc = "A rare collectable hat."
+
+/obj/item/clothing/head/collectable/petehat
+ name = "ultra rare Pete's hat!"
+ desc = "It smells faintly of plasma"
+ icon_state = "petehat"
+
+/obj/item/clothing/head/collectable/metroid
+ name = "collectable metroid cap!"
+ desc = "It just latches right in place!"
+ icon_state = "metroid"
+
+/obj/item/clothing/head/collectable/xenom
+ name = "collectable xenomorph helmet!"
+ desc = "Hiss hiss hiss!"
+ icon_state = "xenom"
+
+/obj/item/clothing/head/collectable/chef
+ name = "collectable chef's hat"
+ desc = "A rare Chef's Hat meant for hat collectors!"
+ icon_state = "chef"
+ item_state = "chef"
+
+/obj/item/clothing/head/collectable/paper
+ name = "collectable paper hat"
+ desc = "What looks like an ordinary paper hat, is actually a rare and valuable collector's edition paper hat. Keep away from water, fire and Librarians."
+ icon_state = "paper"
+
+/obj/item/clothing/head/collectable/tophat
+ name = "collectable top hat"
+ desc = "A top hat worn by only the most prestigious hat collectors."
+ icon_state = "tophat"
+ item_state = "that"
+
+/obj/item/clothing/head/collectable/captain
+ name = "collectable captain's hat"
+ desc = "A Collectable Hat that'll make you look just like a real comdom!"
+ icon_state = "captain"
+ item_state = "caphat"
+
+/obj/item/clothing/head/collectable/police
+ name = "collectable police officer's hat"
+ desc = "A Collectable Police Officer's Hat. This hat emphasizes that you are THE LAW."
+ icon_state = "policehelm"
+
+/obj/item/clothing/head/collectable/beret
+ name = "collectable beret"
+ desc = "A Collectable red Beret. It smells faintly of Garlic."
+ icon_state = "beret"
+
+/obj/item/clothing/head/collectable/welding
+ name = "collectable welding helmet"
+ desc = "A Collectable Welding Helmet. Now with 80% less lead! Not for actual welding. Any welding done while wearing this Helmet is done so at the owner's own risk!"
+ icon_state = "welding"
+ item_state = "welding"
+
+/obj/item/clothing/head/collectable/slime
+ name = "collectable slime hat"
+ desc = "Just like a real Brain Slug!"
+ icon_state = "headslime"
+ item_state = "headslime"
+
+/obj/item/clothing/head/collectable/flatcap
+ name = "collectable flat cap"
+ desc = "A Collectible farmer's Flat Cap!"
+ icon_state = "flat_cap"
+ item_state = "detective"
+
+/obj/item/clothing/head/collectable/pirate
+ name = "collectable pirate hat"
+ desc = "You'd make a great Dread Syndie Roberts!"
+ icon_state = "pirate"
+ item_state = "pirate"
+
+/obj/item/clothing/head/collectable/kitty
+ name = "collectable kitty ears"
+ desc = "The fur feels.....a bit too realistic."
+ icon_state = "kitty"
+ item_state = "kitty"
+
+/obj/item/clothing/head/collectable/rabbitears
+ name = "collectable rabbit ears"
+ desc = "Not as lucky as the feet!"
+ icon_state = "bunny"
+ item_state = "bunny"
+
+/obj/item/clothing/head/collectable/wizard
+ name = "collectable wizard's hat"
+ desc = "NOTE:Any magical powers gained from wearing this hat are purely coincidental."
+ icon_state = "wizard"
+
+/obj/item/clothing/head/collectable/hardhat
+ name = "collectable hard hat"
+ desc = "WARNING! Offers no real protection, or luminosity, but it is damn fancy!"
+ icon_state = "hardhat0_yellow"
+ item_state = "hardhat0_yellow"
+
+/obj/item/clothing/head/collectable/HoS
+ name = "collectable HoS hat"
+ desc = "Now you can beat prisoners, set silly sentences and arrest for no reason too!"
+ icon_state = "hoscap"
+
+/obj/item/clothing/head/collectable/thunderdome
+ name = "collectable Thunderdome helmet"
+ desc = "Go Red! I mean Green! I mean Red! No Green!"
+ icon_state = "thunderdome"
+ item_state = "thunderdome"
+
+/obj/item/clothing/head/collectable/swat
+ name = "collectable SWAT helmet"
+ desc = "Now you can be in the Deathsquad too!"
+ icon_state = "swat"
+ item_state = "swat"
\ No newline at end of file
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 3bfed8dbc81..54ac707693a 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -1,3 +1,29 @@
+/obj/item/clothing/head/helmet
+ name = "helmet"
+ desc = "Standard Security gear. Protects the head from impacts."
+ icon_state = "helmet"
+ flags = FPRINT | TABLEPASS | SUITSPACE | HEADCOVERSEYES
+ item_state = "helmet"
+ armor = list(melee = 50, bullet = 15, laser = 50,energy = 10, bomb = 25, bio = 0, rad = 0)
+ protective_temperature = 500
+ heat_transfer_coefficient = 0.10
+ flags_inv = HIDEEARS|HIDEEYES
+
+/obj/item/clothing/head/helmet/warden
+ name = "warden's hat"
+ desc = "It's a special helmet issued to the Warden of a securiy force. Protects the head from impacts."
+ icon_state = "policehelm"
+ flags_inv = 0
+
+/obj/item/clothing/head/helmet/riot
+ name = "riot helmet"
+ desc = "It's a helmet specifically designed to protect against close range attacks."
+ icon_state = "riot"
+ item_state = "helmet"
+ flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES
+ armor = list(melee = 82, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
+ flags_inv = HIDEEARS
+
/obj/item/clothing/head/helmet/swat
name = "\improper SWAT helmet"
desc = "They're often used by highly trained Swat Members."
@@ -14,3 +40,11 @@
flags = FPRINT | TABLEPASS | SUITSPACE | HEADSPACE | HEADCOVERSEYES
item_state = "thunderdome"
armor = list(melee = 80, bullet = 60, laser = 50,energy = 10, bomb = 25, bio = 10, rad = 0)
+
+/obj/item/clothing/head/helmet/gladiator
+ name = "gladiator helmet"
+ desc = "Ave, Imperator, morituri te salutant."
+ icon_state = "gladiator"
+ flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
+ item_state = "gladiator"
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
\ No newline at end of file
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
new file mode 100644
index 00000000000..6456712c813
--- /dev/null
+++ b/code/modules/clothing/head/jobs.dm
@@ -0,0 +1,53 @@
+
+//Bartender
+/obj/item/clothing/head/chefhat
+ name = "chef's hat"
+ desc = "It's a hat used by chefs to keep hair out of your food. Judging by the food in the mess, they don't work."
+ icon_state = "chef"
+ item_state = "chef"
+ desc = "The commander in chef's head wear."
+ flags = FPRINT | TABLEPASS
+
+//Captain: This probably shouldn't be space-worthy
+/obj/item/clothing/head/caphat
+ name = "captain's hat"
+ icon_state = "captain"
+ desc = "It's good being the king."
+ flags = FPRINT|TABLEPASS|SUITSPACE
+ item_state = "caphat"
+
+//Captain: This probably shouldn't be space-worthy
+/obj/item/clothing/head/helmet/cap
+ name = "captain's cap"
+ desc = "You fear to wear it for the negligence it brings."
+ icon_state = "capcap"
+ flags = FPRINT|TABLEPASS|SUITSPACE
+ flags_inv = 0
+
+//Chaplain
+/obj/item/clothing/head/chaplain_hood
+ name = "chaplain's hood"
+ desc = "It's hood that covers the head. It keeps you warm during the space winters."
+ icon_state = "chaplain_hood"
+ flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|BLOCKHAIR
+
+//Chaplain
+/obj/item/clothing/head/nun_hood
+ name = "nun hood"
+ desc = "Maximum piety in this star system."
+ icon_state = "nun_hood"
+ flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|BLOCKHAIR
+
+//Mime
+/obj/item/clothing/head/beret
+ name = "beret"
+ desc = "A beret, a mime's favorite headwear."
+ icon_state = "beret"
+ flags = FPRINT | TABLEPASS
+
+//Security
+/obj/item/clothing/head/beret/sec
+ name = "security beret"
+ desc = "A beret with the security insignia emblazoned on it. For officers that are more inclined towards style than safety."
+ icon_state = "beret_badge"
+ flags = FPRINT | TABLEPASS
\ No newline at end of file
diff --git a/code/modules/clothing/head/miscellaneous.dm b/code/modules/clothing/head/misc.dm
similarity index 64%
rename from code/modules/clothing/head/miscellaneous.dm
rename to code/modules/clothing/head/misc.dm
index ab8f20be2e9..3581cb73402 100644
--- a/code/modules/clothing/head/miscellaneous.dm
+++ b/code/modules/clothing/head/misc.dm
@@ -1,11 +1,4 @@
-/obj/item/clothing/head/cakehat
- name = "cake-hat"
- desc = "It's tasty looking!"
- icon_state = "cake0"
- var/onfire = 0.0
- var/status = 0
- flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES
- var/fire_resist = T0C+1300 //this is the max temp it can stand before you start to cook. although it might not burn away, you take damage
+
/obj/item/clothing/head/centhat
name = "\improper CentComm. hat"
@@ -27,14 +20,6 @@
item_state = "that"
flags = FPRINT|TABLEPASS
-/obj/item/clothing/head/chefhat
- name = "chef's hat"
- desc = "It's a hat used by chefs to keep hair out of your food. Judging by the food in the mess, they don't work."
- icon_state = "chef"
- item_state = "chef"
- desc = "The commander in chef's head wear."
- flags = FPRINT | TABLEPASS
-
/obj/item/clothing/head/redcoat
name = "redcoat's hat"
icon_state = "redcoat"
@@ -54,24 +39,6 @@
flags = FPRINT | TABLEPASS
permeability_coefficient = 0.01
-/obj/item/clothing/head/beret
- name = "beret"
- desc = "A beret, a mime's favorite headwear."
- icon_state = "beret"
- flags = FPRINT | TABLEPASS
-
-/obj/item/clothing/head/chaplain_hood
- name = "chaplain's hood"
- desc = "It's hood that covers the head. It keeps you warm during the space winters."
- icon_state = "chaplain_hood"
- flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|BLOCKHAIR
-
-/obj/item/clothing/head/nun_hood
- name = "nun hood"
- desc = "Maximum piety in this star system."
- icon_state = "nun_hood"
- flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|BLOCKHAIR
-
/obj/item/clothing/head/hasturhood
name = "hastur's hood"
desc = "It's unspeakably stylish"
@@ -125,3 +92,63 @@
item_state = "cardborg_h"
flags = FPRINT | TABLEPASS | HEADCOVERSEYES | HEADCOVERSMOUTH
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
+
+/obj/item/clothing/head/justice
+ name = "justice hat"
+ desc = "fight for what's righteous!"
+ icon_state = "justicered"
+ item_state = "justicered"
+ flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
+
+/obj/item/clothing/head/justice/blue
+ icon_state = "justiceblue"
+ item_state = "justiceblue"
+
+/obj/item/clothing/head/justice/yellow
+ icon_state = "justiceyellow"
+ item_state = "justiceyellow"
+
+/obj/item/clothing/head/justice/green
+ icon_state = "justicegreen"
+ item_state = "justicegreen"
+
+/obj/item/clothing/head/justice/pink
+ icon_state = "justicepink"
+ item_state = "justicepink"
+
+/obj/item/clothing/head/rabbitears
+ name = "rabbit ears"
+ desc = "Wearing these makes you looks useless, and only good for your sex appeal."
+ icon_state = "bunny"
+ flags = FPRINT | TABLEPASS
+
+/obj/item/clothing/head/flatcap
+ name = "flat cap"
+ desc = "A working man's cap."
+ icon_state = "flat_cap"
+ item_state = "detective"
+
+/obj/item/clothing/head/pirate
+ name = "pirate hat"
+ desc = "Yarr."
+ icon_state = "pirate"
+ item_state = "pirate"
+
+/obj/item/clothing/head/hgpiratecap
+ name = "pirate hat"
+ desc = "Yarr."
+ icon_state = "hgpiratecap"
+ item_state = "hgpiratecap"
+
+/obj/item/clothing/head/bandana
+ name = "pirate bandana"
+ desc = "Yarr."
+ icon_state = "bandana"
+ item_state = "bandana"
+
+/obj/item/clothing/head/bowler
+ name = "bowler-hat"
+ desc = "Gentleman, elite aboard!"
+ icon_state = "bowler"
+ item_state = "bowler"
+ flags = FPRINT | TABLEPASS
\ No newline at end of file
diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm
new file mode 100644
index 00000000000..e007715c92b
--- /dev/null
+++ b/code/modules/clothing/head/misc_special.dm
@@ -0,0 +1,175 @@
+/*
+ * Contents:
+ * Welding mask
+ * Cakehat
+ * Ushanka
+ * Pumpkin head
+ * Kitty ears
+ *
+ */
+
+/*
+ * Welding mask
+ */
+/obj/item/clothing/head/welding
+ name = "welding helmet"
+ desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
+ icon_state = "welding"
+ flags = FPRINT | TABLEPASS | SUITSPACE | HEADCOVERSEYES | HEADCOVERSMOUTH
+ item_state = "welding"
+ protective_temperature = 1300
+ m_amt = 3000
+ g_amt = 1000
+ var/up = 0
+ armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
+ icon_action_button = "action_welding"
+
+ attack_self()
+ toggle()
+
+
+ verb/toggle()
+ set category = "Object"
+ set name = "Adjust welding mask"
+ set src in usr
+
+ if(usr.canmove && !usr.stat && !usr.restrained())
+ if(src.up)
+ src.up = !src.up
+ src.flags |= HEADCOVERSEYES
+ flags_inv |= HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
+ icon_state = "welding"
+ usr << "You flip the mask down to protect your eyes."
+ else
+ src.up = !src.up
+ src.flags &= ~HEADCOVERSEYES
+ flags_inv &= ~(HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
+ icon_state = "weldingup"
+ usr << "You push the mask up out of your face."
+ usr.update_inv_head() //so our mob-overlays update
+
+
+/*
+ * Cakehat
+ */
+/obj/item/clothing/head/cakehat
+ name = "cake-hat"
+ desc = "It's tasty looking!"
+ icon_state = "cake0"
+ flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES
+ var/onfire = 0.0
+ var/status = 0
+ var/fire_resist = T0C+1300 //this is the max temp it can stand before you start to cook. although it might not burn away, you take damage
+ var/processing = 0 //I dont think this is used anywhere.
+
+/obj/item/clothing/head/cakehat/process()
+ if(!onfire)
+ processing_objects.Remove(src)
+ return
+
+ var/turf/location = src.loc
+ if(istype(location, /mob/))
+ var/mob/living/carbon/human/M = location
+ if(M.l_hand == src || M.r_hand == src || M.head == src)
+ location = M.loc
+
+ if (istype(location, /turf))
+ location.hotspot_expose(700, 1)
+
+/obj/item/clothing/head/cakehat/attack_self(mob/user as mob)
+ if(status > 1) return
+ src.onfire = !( src.onfire )
+ if (src.onfire)
+ src.force = 3
+ src.damtype = "fire"
+ src.icon_state = "cake1"
+ processing_objects.Add(src)
+ else
+ src.force = null
+ src.damtype = "brute"
+ src.icon_state = "cake0"
+ return
+
+
+/*
+ * Ushanka
+ */
+/obj/item/clothing/head/ushanka
+ name = "ushanka"
+ desc = "Perfect for winter in Siberia, da?"
+ icon_state = "ushankadown"
+ item_state = "ushankadown"
+ flags_inv = HIDEEARS
+
+/obj/item/clothing/head/ushanka/attack_self(mob/user as mob)
+ if(src.icon_state == "ushankadown")
+ src.icon_state = "ushankaup"
+ src.item_state = "ushankaup"
+ user << "You raise the ear flaps on the ushanka."
+ else
+ src.icon_state = "ushankadown"
+ src.item_state = "ushankadown"
+ user << "You lower the ear flaps on the ushanka."
+
+/*
+ * Pumpkin head
+ */
+/obj/item/clothing/head/pumpkinhead
+ name = "carved pumpkin"
+ desc = "A jack o' lantern! Believed to ward off evil spirits."
+ icon_state = "hardhat0_pumpkin"//Could stand to be renamed
+ item_state = "hardhat0_pumpkin"
+ color = "pumpkin"
+ flags = FPRINT | TABLEPASS | HEADCOVERSEYES | HEADCOVERSMOUTH | BLOCKHAIR
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
+ var/brightness_on = 2 //luminosity when on
+ var/on = 0
+
+ attack_self(mob/user)
+ if(!isturf(user.loc))
+ user << "You cannot turn the light on while in this [user.loc]" //To prevent some lighting anomalities.
+ return
+ on = !on
+ icon_state = "hardhat[on]_[color]"
+ item_state = "hardhat[on]_[color]"
+
+ if(on)
+ user.total_luminosity += brightness_on
+ else
+ user.total_luminosity -= brightness_on
+
+ pickup(mob/user)
+ if(on)
+ user.total_luminosity += brightness_on
+ user.UpdateLuminosity()
+ src.sd_SetLuminosity(0)
+
+ dropped(mob/user)
+ if(on)
+ user.total_luminosity -= brightness_on
+ user.UpdateLuminosity()
+ src.sd_SetLuminosity(brightness_on)
+
+/*
+ * Kitty ears
+ */
+/obj/item/clothing/head/kitty
+ name = "kitty ears"
+ desc = "A pair of kitty ears. Meow!"
+ icon_state = "kitty"
+ flags = FPRINT | TABLEPASS
+ var/icon/mob
+ var/icon/mob2
+
+ update_icon(var/mob/living/carbon/human/user)
+ if(!istype(user)) return
+ mob = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kitty")
+ mob2 = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kitty2")
+ mob.Blend(rgb(user.r_hair, user.g_hair, user.b_hair), ICON_ADD)
+ mob2.Blend(rgb(user.r_hair, user.g_hair, user.b_hair), ICON_ADD)
+
+ var/icon/earbit = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kittyinner")
+ var/icon/earbit2 = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kittyinner2")
+ mob.Blend(earbit, ICON_OVERLAY)
+ mob2.Blend(earbit2, ICON_OVERLAY)
\ No newline at end of file
diff --git a/code/modules/clothing/head/pumpkin.dm b/code/modules/clothing/head/pumpkin.dm
deleted file mode 100644
index 798632b4604..00000000000
--- a/code/modules/clothing/head/pumpkin.dm
+++ /dev/null
@@ -1,35 +0,0 @@
-/obj/item/clothing/head/pumpkinhead
- name = "carved pumpkin"
- desc = "A jack o' lantern! Believed to ward off evil spirits."
- icon_state = "hardhat0_pumpkin"//Could stand to be renamed
- item_state = "hardhat0_pumpkin"
- color = "pumpkin"
- flags = FPRINT | TABLEPASS | HEADCOVERSEYES | HEADCOVERSMOUTH | BLOCKHAIR
- flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
- var/brightness_on = 2 //luminosity when on
- var/on = 0
-
- attack_self(mob/user)
- if(!isturf(user.loc))
- user << "You cannot turn the light on while in this [user.loc]" //To prevent some lighting anomalities.
- return
- on = !on
- icon_state = "hardhat[on]_[color]"
- item_state = "hardhat[on]_[color]"
-
- if(on)
- user.total_luminosity += brightness_on
- else
- user.total_luminosity -= brightness_on
-
- pickup(mob/user)
- if(on)
- user.total_luminosity += brightness_on
- user.UpdateLuminosity()
- src.sd_SetLuminosity(0)
-
- dropped(mob/user)
- if(on)
- user.total_luminosity -= brightness_on
- user.UpdateLuminosity()
- src.sd_SetLuminosity(brightness_on)
\ No newline at end of file
diff --git a/code/modules/clothing/head/security.dm b/code/modules/clothing/head/security.dm
deleted file mode 100644
index d3f557d9c37..00000000000
--- a/code/modules/clothing/head/security.dm
+++ /dev/null
@@ -1,37 +0,0 @@
-/obj/item/clothing/head/helmet
- name = "helmet"
- desc = "Standard Security gear. Protects the head from impacts."
- icon_state = "helmet"
- flags = FPRINT | TABLEPASS | SUITSPACE | HEADCOVERSEYES
- item_state = "helmet"
- armor = list(melee = 50, bullet = 15, laser = 50,energy = 10, bomb = 25, bio = 0, rad = 0)
- protective_temperature = 500
- heat_transfer_coefficient = 0.10
- flags_inv = HIDEEARS|HIDEEYES
-
-/obj/item/clothing/head/helmet/warden
- name = "warden's hat"
- desc = "It's a special helmet issued to the Warden of a securiy force. Protects the head from impacts."
- icon_state = "policehelm"
- flags_inv = 0
-
-/obj/item/clothing/head/helmet/riot
- name = "riot helmet"
- desc = "It's a helmet specifically designed to protect against close range attacks."
- icon_state = "riot"
- item_state = "helmet"
- flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES
- armor = list(melee = 82, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
- flags_inv = HIDEEARS
-
-/obj/item/clothing/head/soft/sec
- name = "security cap"
- desc = "It's baseball hat in tasteful red colour."
- icon_state = "secsoft"
- color = "sec"
-
-/obj/item/clothing/head/beret/sec
- name = "security beret"
- desc = "A beret with the security insignia emblazoned on it. For officers that are more inclined towards style than safety."
- icon_state = "beret_badge"
- flags = FPRINT | TABLEPASS
\ No newline at end of file
diff --git a/code/modules/clothing/head/cargo.dm b/code/modules/clothing/head/soft_caps.dm
similarity index 90%
rename from code/modules/clothing/head/cargo.dm
rename to code/modules/clothing/head/soft_caps.dm
index 4648e600cd9..3d4bfc8dcf9 100644
--- a/code/modules/clothing/head/cargo.dm
+++ b/code/modules/clothing/head/soft_caps.dm
@@ -80,3 +80,8 @@
icon_state = "rainbowsoft"
color = "rainbow"
+/obj/item/clothing/head/soft/sec
+ name = "security cap"
+ desc = "It's baseball hat in tasteful red colour."
+ icon_state = "secsoft"
+ color = "sec"
\ No newline at end of file
diff --git a/code/modules/clothing/head/welding.dm b/code/modules/clothing/head/welding.dm
deleted file mode 100644
index c8b376c5e8b..00000000000
--- a/code/modules/clothing/head/welding.dm
+++ /dev/null
@@ -1,37 +0,0 @@
-/obj/item/clothing/head/welding
- name = "welding helmet"
- desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
- icon_state = "welding"
- flags = FPRINT | TABLEPASS | SUITSPACE | HEADCOVERSEYES | HEADCOVERSMOUTH
- item_state = "welding"
- protective_temperature = 1300
- m_amt = 3000
- g_amt = 1000
- var/up = 0
- armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
- flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
- icon_action_button = "action_welding"
-
- attack_self()
- toggle()
-
-
- verb/toggle()
- set category = "Object"
- set name = "Adjust welding mask"
- set src in usr
-
- if(usr.canmove && !usr.stat && !usr.restrained())
- if(src.up)
- src.up = !src.up
- src.flags |= HEADCOVERSEYES
- flags_inv |= HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
- icon_state = "welding"
- usr << "You flip the mask down to protect your eyes."
- else
- src.up = !src.up
- src.flags &= ~HEADCOVERSEYES
- flags_inv &= ~(HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
- icon_state = "weldingup"
- usr << "You push the mask up out of your face."
- usr.update_inv_head() //so our mob-overlays update
\ No newline at end of file
diff --git a/code/modules/clothing/mask.dm b/code/modules/clothing/mask.dm
deleted file mode 100644
index fa168c0d452..00000000000
--- a/code/modules/clothing/mask.dm
+++ /dev/null
@@ -1,5 +0,0 @@
-/obj/item/clothing/mask
- name = "mask"
- icon = 'icons/obj/clothing/masks.dmi'
- body_parts_covered = HEAD
- slot_flags = SLOT_MASK
\ No newline at end of file
diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm
index 67a10ba5b8b..ab642505e34 100644
--- a/code/modules/clothing/masks/gasmask.dm
+++ b/code/modules/clothing/masks/gasmask.dm
@@ -11,6 +11,7 @@
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.01
+//Plague Dr suit can be found in clothing/suits/bio.dm
/obj/item/clothing/mask/gas/plaguedoctor
name = "plague doctor mask"
desc = "A modernised version of the classic design, this mask will not only filter out toxins but it can also be connected to an air supply."
@@ -76,4 +77,9 @@
/obj/item/clothing/mask/gas/death_commando
name = "Death Commando Mask"
icon_state = "death_commando_mask"
- item_state = "death_commando_mask"
\ No newline at end of file
+ item_state = "death_commando_mask"
+
+/obj/item/clothing/mask/gas/cyborg
+ name = "cyborg visor"
+ desc = "Beep boop"
+ icon_state = "death"
\ No newline at end of file
diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm
index bbeef946bcd..e06f1488bc3 100644
--- a/code/modules/clothing/masks/miscellaneous.dm
+++ b/code/modules/clothing/masks/miscellaneous.dm
@@ -7,6 +7,15 @@
w_class = 2
gas_transfer_coefficient = 0.90
+//Monkeys can not take the muzzle off of themself! Call PETA!
+/obj/item/clothing/mask/muzzle/attack_paw(mob/user as mob)
+ if (src == user.wear_mask)
+ return
+ else
+ ..()
+ return
+
+
/obj/item/clothing/mask/surgical
name = "sterile mask"
desc = "A sterile mask designed to help prevent the spread of diseases."
diff --git a/code/modules/clothing/random.dm b/code/modules/clothing/random.dm
deleted file mode 100644
index bfa0d9dc96a..00000000000
--- a/code/modules/clothing/random.dm
+++ /dev/null
@@ -1,438 +0,0 @@
-/obj/item/clothing/head/rabbitears
- name = "rabbit ears"
- desc = "Wearing these makes you looks useless, and only good for your sex appeal."
- icon_state = "bunny"
- flags = FPRINT | TABLEPASS
-
-/obj/item/clothing/head/kitty
- name = "kitty ears"
- desc = "A pair of kitty ears. Meow!"
- icon_state = "kitty"
- flags = FPRINT | TABLEPASS
- var/icon/mob
- var/icon/mob2
-
- update_icon(var/mob/living/carbon/human/user)
- if(!istype(user)) return
- mob = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kitty")
- mob2 = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kitty2")
- mob.Blend(rgb(user.r_hair, user.g_hair, user.b_hair), ICON_ADD)
- mob2.Blend(rgb(user.r_hair, user.g_hair, user.b_hair), ICON_ADD)
-
- var/icon/earbit = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kittyinner")
- var/icon/earbit2 = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kittyinner2")
- mob.Blend(earbit, ICON_OVERLAY)
- mob2.Blend(earbit2, ICON_OVERLAY)
-
-/obj/item/clothing/under/owl
- name = "owl uniform"
- desc = "A jumpsuit with owl wings. Photorealistic owl feathers! Twooooo!"
- icon_state = "owl"
- color = "owl"
-
-/obj/item/clothing/gloves/cyborg
- desc = "beep boop borp"
- name = "cyborg gloves"
- icon_state = "black"
- item_state = "r_hands"
- siemens_coefficient = 1
-
-/obj/item/clothing/mask/gas/cyborg
- name = "cyborg visor"
- desc = "Beep boop"
- icon_state = "death"
-
-/obj/item/clothing/shoes/cyborg
- name = "cyborg boots"
- desc = "Shoes for a cyborg costume"
- icon_state = "boots"
-
-/obj/item/clothing/suit/cyborg_suit
- name = "cyborg suit"
- desc = "Suit for a cyborg costume."
- icon_state = "death"
- item_state = "death"
- flags = FPRINT | TABLEPASS | CONDUCT
- fire_resist = T0C+5200
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/suit/greatcoat
- name = "great coat"
- desc = "A Nazi great coat"
- icon_state = "nazi"
- item_state = "nazi"
- flags = FPRINT | TABLEPASS
-
-/obj/item/clothing/under/johnny
- name = "johnny~~ jumpsuit"
- desc = "Johnny~~"
- icon_state = "johnny"
- color = "johnny"
-
-/obj/item/clothing/suit/johnny_coat
- name = "johnny~~ coat"
- desc = "Johnny~~"
- icon_state = "johnny"
- item_state = "johnny"
- flags = FPRINT | TABLEPASS
-
-/obj/item/clothing/suit/ianshirt
- name = "worn shirt"
- desc = "A worn out, curiously comfortable t-shirt with a picture of Ian. You wouldn't go so far as to say it feels like being hugged when you wear it but it's pretty close. Good for sleeping in."
- icon_state = "ianshirt"
- item_state = "ianshirt"
-
-/obj/item/clothing/under/rainbow
- name = "rainbow"
- desc = "rainbow"
- icon_state = "rainbow"
- item_state = "rainbow"
- color = "rainbow"
-
-/obj/item/clothing/under/cloud
- name = "cloud"
- desc = "cloud"
- icon_state = "cloud"
- color = "cloud"
-
-// STEAMPUNK STATION
-
-/obj/item/clothing/glasses/monocle
- name = "monocle"
- desc = "Such a dapper eyepiece!"
- icon_state = "monocle"
- item_state = "headset" // lol
-
-/obj/item/clothing/under/gimmick/rank/captain/suit
- name = "captain's suit"
- desc = "A green suit and yellow necktie. Exemplifies authority."
- icon_state = "green_suit"
- item_state = "dg_suit"
- color = "green_suit"
-
-/obj/item/clothing/under/gimmick/rank/head_of_personnel/suit
- name = "head of personnel's suit"
- desc = "A teal suit and yellow necktie. An authoritative yet tacky ensemble."
- icon_state = "teal_suit"
- item_state = "g_suit"
- color = "teal_suit"
-
-/obj/item/clothing/under/suit_jacket
- name = "black suit"
- desc = "A black suit and red tie. Very formal."
- icon_state = "black_suit"
- item_state = "bl_suit"
- color = "black_suit"
-
-/obj/item/clothing/under/suit_jacket/really_black
- name = "executive suit"
- desc = "A formal black suit and red tie, intended for the station's finest."
- icon_state = "really_black_suit"
- item_state = "bl_suit"
- color = "black_suit"
-
-/obj/item/clothing/under/suit_jacket/female
- name = "executive suit"
- desc = "A formal trouser suit for women, intended for the station's finest."
- icon_state = "black_suit_fem"
- item_state = "black_suit_fem"
- color = "black_suit_fem"
-
-/obj/item/clothing/under/suit_jacket/red
- name = "red suit"
- desc = "A red suit and blue tie. Somewhat formal."
- icon_state = "red_suit"
- item_state = "r_suit"
- color = "red_suit"
-
-/obj/item/clothing/under/blackskirt
- name = "black skirt"
- desc = "A black skirt, very fancy!"
- icon_state = "blackskirt"
- color = "blackskirt"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
-
-/obj/item/clothing/under/schoolgirl
- name = "schoolgirl uniform"
- desc = "It's just like one of my Japanese animes!"
- icon_state = "schoolgirl"
- item_state = "schoolgirl"
- color = "schoolgirl"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
-
-/obj/item/clothing/head/flatcap
- name = "flat cap"
- desc = "A working man's cap."
- icon_state = "flat_cap"
- item_state = "detective"
-
-/obj/item/clothing/under/overalls
- name = "laborer's overalls"
- desc = "A set of durable overalls for getting the job done."
- icon_state = "overalls"
- item_state = "lb_suit"
- color = "overalls"
-
-/obj/item/weapon/melee/classic_baton
- name = "police baton"
- desc = "A wooden truncheon for beating criminal scum."
- icon = 'icons/obj/weapons.dmi'
- icon_state = "baton"
- item_state = "classic_baton"
- flags = FPRINT | TABLEPASS
- slot_flags = SLOT_BELT
- force = 10
-
-/obj/item/clothing/under/pirate
- name = "pirate outfit"
- desc = "Yarr."
- icon_state = "pirate"
- item_state = "pirate"
- color = "pirate"
-
-/obj/item/clothing/head/pirate
- name = "pirate hat"
- desc = "Yarr."
- icon_state = "pirate"
- item_state = "pirate"
-
-/obj/item/clothing/head/hgpiratecap
- name = "pirate hat"
- desc = "Yarr."
- icon_state = "hgpiratecap"
- item_state = "hgpiratecap"
-
-/obj/item/clothing/suit/pirate
- name = "pirate coat"
- desc = "Yarr."
- icon_state = "pirate"
- item_state = "pirate"
- flags = FPRINT | TABLEPASS
-
-
-/obj/item/clothing/suit/hgpirate
- name = "pirate captain coat"
- desc = "Yarr."
- icon_state = "hgpirate"
- item_state = "hgpirate"
- flags = FPRINT | TABLEPASS
- flags_inv = HIDEJUMPSUIT
-
-/obj/item/clothing/glasses/eyepatch
- name = "eyepatch"
- desc = "Yarr."
- icon_state = "eyepatch"
- item_state = "eyepatch"
-
-/obj/item/clothing/head/bandana
- name = "pirate bandana"
- desc = "Yarr."
- icon_state = "bandana"
- item_state = "bandana"
-
-/obj/item/clothing/under/soviet
- name = "soviet uniform"
- desc = "For the Motherland!"
- icon_state = "soviet"
- item_state = "soviet"
- color = "soviet"
-
-/obj/item/clothing/under/redcoat
- name = "redcoat uniform"
- desc = "Looks old."
- icon_state = "redcoat"
- item_state = "redcoat"
- color = "redcoat"
-
-/obj/item/clothing/head/ushanka
- name = "ushanka"
- desc = "Perfect for winter in Siberia, da?"
- icon_state = "ushankadown"
- item_state = "ushankadown"
- flags_inv = HIDEEARS
-
-/obj/item/clothing/head/collectable //Hat Station 13
- name = "collectable hat"
- desc = "A rare collectable hat."
-
-/obj/item/clothing/head/collectable/petehat
- name = "ultra rare Pete's hat!"
- desc = "It smells faintly of plasma"
- icon_state = "petehat"
-
-/obj/item/clothing/head/collectable/metroid
- name = "collectable metroid cap!"
- desc = "It just latches right in place!"
- icon_state = "metroid"
-
-/obj/item/clothing/head/collectable/xenom
- name = "collectable xenomorph helmet!"
- desc = "Hiss hiss hiss!"
- icon_state = "xenom"
-
-/obj/item/clothing/head/collectable/chef
- name = "collectable chef's hat"
- desc = "A rare Chef's Hat meant for hat collectors!"
- icon_state = "chef"
- item_state = "chef"
-
-/obj/item/clothing/head/collectable/paper
- name = "collectable paper hat"
- desc = "What looks like an ordinary paper hat, is actually a rare and valuable collector's edition paper hat. Keep away from water, fire and Librarians."
- icon_state = "paper"
-
-/obj/item/clothing/head/collectable/tophat
- name = "collectable top hat"
- desc = "A top hat worn by only the most prestigious hat collectors."
- icon_state = "tophat"
- item_state = "that"
-
-/obj/item/clothing/head/collectable/captain
- name = "collectable captain's hat"
- desc = "A Collectable Hat that'll make you look just like a real comdom!"
- icon_state = "captain"
- item_state = "caphat"
-
-/obj/item/clothing/head/collectable/police
- name = "collectable police officer's hat"
- desc = "A Collectable Police Officer's Hat. This hat emphasizes that you are THE LAW."
- icon_state = "policehelm"
-
-/obj/item/clothing/head/collectable/beret
- name = "collectable beret"
- desc = "A Collectable red Beret. It smells faintly of Garlic."
- icon_state = "beret"
-
-/obj/item/clothing/head/collectable/welding
- name = "collectable welding helmet"
- desc = "A Collectable Welding Helmet. Now with 80% less lead! Not for actual welding. Any welding done while wearing this Helmet is done so at the owner's own risk!"
- icon_state = "welding"
- item_state = "welding"
-
-/obj/item/clothing/head/collectable/slime
- name = "collectable slime hat"
- desc = "Just like a real Brain Slug!"
- icon_state = "headslime"
- item_state = "headslime"
-
-/obj/item/clothing/head/collectable/flatcap
- name = "collectable flat cap"
- desc = "A Collectible farmer's Flat Cap!"
- icon_state = "flat_cap"
- item_state = "detective"
-
-/obj/item/clothing/head/collectable/pirate
- name = "collectable pirate hat"
- desc = "You'd make a great Dread Syndie Roberts!"
- icon_state = "pirate"
- item_state = "pirate"
-
-/obj/item/clothing/head/collectable/kitty
- name = "collectable kitty ears"
- desc = "The fur feels.....a bit too realistic."
- icon_state = "kitty"
- item_state = "kitty"
-
-/obj/item/clothing/head/collectable/rabbitears
- name = "collectable rabbit ears"
- desc = "Not as lucky as the feet!"
- icon_state = "bunny"
- item_state = "bunny"
-
-/obj/item/clothing/head/collectable/wizard
- name = "collectable wizard's hat"
- desc = "NOTE:Any magical powers gained from wearing this hat are purely coincidental."
- icon_state = "wizard"
-
-/obj/item/clothing/head/collectable/hardhat
- name = "collectable hard hat"
- desc = "WARNING! Offers no real protection, or luminosity, but it is damn fancy!"
- icon_state = "hardhat0_yellow"
- item_state = "hardhat0_yellow"
-
-/obj/item/clothing/head/collectable/HoS
- name = "collectable HoS hat"
- desc = "Now you can beat prisoners, set silly sentences and arrest for no reason too!"
- icon_state = "hoscap"
-
-/obj/item/clothing/head/collectable/thunderdome
- name = "collectable Thunderdome helmet"
- desc = "Go Red! I mean Green! I mean Red! No Green!"
- icon_state = "thunderdome"
- item_state = "thunderdome"
-
-/obj/item/clothing/head/collectable/swat
- name = "collectable SWAT helmet"
- desc = "Now you can be in the Deathsquad too!"
- icon_state = "swat"
- item_state = "swat"
-
-/obj/item/clothing/under/kilt
- name = "kilt"
- desc = "Includes shoes and plaid"
- icon_state = "kilt"
- item_state = "kilt"
- color = "kilt"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET
-
-/obj/item/clothing/under/sexymime
- name = "sexy mime outfit"
- desc = "The only time when you DON'T enjoy looking at someone's rack."
- icon_state = "sexymime"
- item_state = "sexymime"
- color = "sexymime"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
-
-/obj/item/clothing/head/bowler
- name = "bowler-hat"
- desc = "Gentleman, elite aboard!"
- icon_state = "bowler"
- item_state = "bowler"
- flags = FPRINT | TABLEPASS
-
-/obj/item/clothing/head/justice
- name = "justice hat"
- desc = "fight for what's righteous!"
- icon_state = "justicered"
- item_state = "justicered"
- flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
-
-/obj/item/clothing/head/justice/blue
- icon_state = "justiceblue"
- item_state = "justiceblue"
-
-/obj/item/clothing/head/justice/yellow
- icon_state = "justiceyellow"
- item_state = "justiceyellow"
-
-/obj/item/clothing/head/justice/green
- icon_state = "justicegreen"
- item_state = "justicegreen"
-
-/obj/item/clothing/head/justice/pink
- icon_state = "justicepink"
- item_state = "justicepink"
-
-obj/item/clothing/suit/justice
- name = "justice suit"
- desc = "this pretty much looks ridiculous"
- icon_state = "justice"
- item_state = "justice"
- flags = FPRINT | TABLEPASS
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/under/gladiator
- name = "gladiator uniform"
- desc = "Are you not entertained? Is that not why you are here?"
- icon_state = "gladiator"
- item_state = "gladiator"
- color = "gladiator"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
-
-/obj/item/clothing/head/helmet/gladiator
- name = "gladiator helmet"
- desc = "Ave, Imperator, morituri te salutant."
- icon_state = "gladiator"
- flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
- item_state = "gladiator"
- flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
\ No newline at end of file
diff --git a/code/modules/clothing/shoes.dm b/code/modules/clothing/shoes.dm
deleted file mode 100644
index fc3d8123289..00000000000
--- a/code/modules/clothing/shoes.dm
+++ /dev/null
@@ -1,14 +0,0 @@
-/obj/item/clothing/shoes
- name = "shoes"
- icon = 'icons/obj/clothing/shoes.dmi'
- desc = "Comfortable-looking shoes."
- gender = PLURAL //Carn: for grammarically correct text-parsing
-
- body_parts_covered = FEET
- slot_flags = SLOT_FEET
-
- protective_temperature = 500
- heat_transfer_coefficient = 0.10
- permeability_coefficient = 0.50
- slowdown = SHOES_SLOWDOWN
-
diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm
new file mode 100644
index 00000000000..616214d3dbf
--- /dev/null
+++ b/code/modules/clothing/shoes/colour.dm
@@ -0,0 +1,94 @@
+/obj/item/clothing/shoes/black
+ name = "black shoes"
+ icon_state = "black"
+ color = "black"
+ desc = "A pair of black shoes."
+
+ redcoat
+ color = "redcoat" //Exists for washing machines. Is not different from black shoes in any way.
+
+/obj/item/clothing/shoes/brown
+ name = "brown shoes"
+ desc = "A pair of brown shoes."
+ icon_state = "brown"
+ color = "brown"
+
+ captain
+ color = "captain" //Exists for washing machines. Is not different from brown shoes in any way.
+ hop
+ color = "hop" //Exists for washing machines. Is not different from brown shoes in any way.
+ ce
+ color = "chief" //Exists for washing machines. Is not different from brown shoes in any way.
+ rd
+ color = "director" //Exists for washing machines. Is not different from brown shoes in any way.
+ cmo
+ color = "medical" //Exists for washing machines. Is not different from brown shoes in any way.
+ cmo
+ color = "cargo" //Exists for washing machines. Is not different from brown shoes in any way.
+
+/obj/item/clothing/shoes/blue
+ name = "blue shoes"
+ icon_state = "blue"
+ color = "blue"
+
+/obj/item/clothing/shoes/green
+ name = "green shoes"
+ icon_state = "green"
+ color = "green"
+
+/obj/item/clothing/shoes/yellow
+ name = "yellow shoes"
+ icon_state = "yellow"
+ color = "yellow"
+
+/obj/item/clothing/shoes/purple
+ name = "purple shoes"
+ icon_state = "purple"
+ color = "purple"
+
+/obj/item/clothing/shoes/brown
+ name = "brown shoes"
+ icon_state = "brown"
+ color = "brown"
+
+/obj/item/clothing/shoes/red
+ name = "red shoes"
+ desc = "Stylish red shoes."
+ icon_state = "red"
+ color = "red"
+
+/obj/item/clothing/shoes/white
+ name = "white shoes"
+ icon_state = "white"
+ permeability_coefficient = 0.25
+ color = "white"
+
+/obj/item/clothing/shoes/rainbow
+ name = "rainbow shoes"
+ desc = "Very gay shoes."
+ icon_state = "rain_bow"
+ color = "rainbow"
+
+/obj/item/clothing/shoes/orange
+ name = "orange shoes"
+ icon_state = "orange"
+ var/chained = 0
+ color = "orange"
+
+/obj/item/clothing/shoes/orange/attack_self(mob/user as mob)
+ if (src.chained)
+ src.chained = null
+ src.slowdown = SHOES_SLOWDOWN
+ new /obj/item/weapon/handcuffs( user.loc )
+ src.icon_state = "orange"
+ return
+
+/obj/item/clothing/shoes/orange/attackby(H as obj, loc)
+ ..()
+ if ((istype(H, /obj/item/weapon/handcuffs) && !( src.chained )))
+ //H = null
+ del(H)
+ src.chained = 1
+ src.slowdown = 15
+ src.icon_state = "orange1"
+ return
\ No newline at end of file
diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm
index 131707313ef..529ba7f464c 100644
--- a/code/modules/clothing/shoes/miscellaneous.dm
+++ b/code/modules/clothing/shoes/miscellaneous.dm
@@ -1,5 +1,3 @@
-
-//These still need to be broken down into other files or such
/obj/item/clothing/shoes/syndigaloshes
desc = "A pair of brown shoes. They seem to have extra grip."
name = "brown shoes"
@@ -10,84 +8,11 @@
origin_tech = "syndicate=3"
var/list/clothing_choices = list()
-/obj/item/clothing/shoes/syndigaloshes/all
-
-/obj/item/clothing/shoes/black
- name = "black shoes"
- icon_state = "black"
- color = "black"
- desc = "A pair of black shoes."
-
- redcoat
- color = "redcoat" //Exists for washing machines. Is not different from black shoes in any way.
-
-/obj/item/clothing/shoes/brown
- name = "brown shoes"
- desc = "A pair of brown shoes."
- icon_state = "brown"
- color = "brown"
-
- captain
- color = "captain" //Exists for washing machines. Is not different from brown shoes in any way.
- hop
- color = "hop" //Exists for washing machines. Is not different from brown shoes in any way.
- ce
- color = "chief" //Exists for washing machines. Is not different from brown shoes in any way.
- rd
- color = "director" //Exists for washing machines. Is not different from brown shoes in any way.
- cmo
- color = "medical" //Exists for washing machines. Is not different from brown shoes in any way.
- cmo
- color = "cargo" //Exists for washing machines. Is not different from brown shoes in any way.
-
-/obj/item/clothing/shoes/blue
- name = "blue shoes"
- icon_state = "blue"
- color = "blue"
-
-/obj/item/clothing/shoes/green
- name = "green shoes"
- icon_state = "green"
- color = "green"
-
-/obj/item/clothing/shoes/yellow
- name = "yellow shoes"
- icon_state = "yellow"
- color = "yellow"
-
/obj/item/clothing/shoes/mime
name = "mime shoes"
icon_state = "mime"
color = "mime"
-/obj/item/clothing/shoes/purple
- name = "purple shoes"
- icon_state = "purple"
- color = "purple"
-
-/obj/item/clothing/shoes/brown
- name = "brown shoes"
- icon_state = "brown"
- color = "brown"
-
-/obj/item/clothing/shoes/orange
- name = "orange shoes"
- icon_state = "orange"
- var/chained = 0
- color = "orange"
-
-/obj/item/clothing/shoes/red
- name = "red shoes"
- desc = "Stylish red shoes."
- icon_state = "red"
- color = "red"
-
-/obj/item/clothing/shoes/rainbow
- name = "rainbow shoes"
- desc = "Very gay shoes."
- icon_state = "rain_bow"
- color = "rainbow"
-
/obj/item/clothing/shoes/swat
name = "\improper SWAT shoes"
desc = "When you want to turn up the heat."
@@ -111,12 +36,6 @@
flags = NOSLIP
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
-/obj/item/clothing/shoes/white
- name = "white shoes"
- icon_state = "white"
- permeability_coefficient = 0.25
- color = "white"
-
/obj/item/clothing/shoes/sandal
desc = "A pair of rather plain, wooden sandals."
name = "sandals"
@@ -155,4 +74,9 @@
desc = "A pair of boots worn by the followers of Nar-Sie."
icon_state = "cult"
item_state = "cult"
- color = "cult"
\ No newline at end of file
+ color = "cult"
+
+/obj/item/clothing/shoes/cyborg
+ name = "cyborg boots"
+ desc = "Shoes for a cyborg costume"
+ icon_state = "boots"
\ No newline at end of file
diff --git a/code/modules/clothing/spacesuit.dm b/code/modules/clothing/spacesuit.dm
deleted file mode 100644
index 3feec00d30a..00000000000
--- a/code/modules/clothing/spacesuit.dm
+++ /dev/null
@@ -1,34 +0,0 @@
-/*Contains
-Space suit parts
-/helmet/space*
-/suit/space*
-*/
-
-/obj/item/clothing/head/helmet/space
- name = "Space helmet"
- icon_state = "space"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment."
- flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | BLOCKHAIR
- item_state = "space"
- permeability_coefficient = 0.01
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
- flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
-
-
-/obj/item/clothing/suit/space
- name = "Space suit"
- desc = "A suit that protects against low pressure environments. Has a big 13 on the back."
- icon_state = "space"
- item_state = "s_suit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.01
- permeability_coefficient = 0.02
- heat_transfer_coefficient = 0.02
- protective_temperature = 1000
- flags = FPRINT | TABLEPASS | SUITSPACE
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 3
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
index e24a2df3f69..f47345f3aaa 100644
--- a/code/modules/clothing/spacesuits/miscellaneous.dm
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -1,3 +1,34 @@
+//Captain's Spacesuit
+/obj/item/clothing/head/helmet/space/capspace
+ name = "space helmet"
+ icon_state = "capspace"
+ item_state = "capspacehelmet"
+ desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
+ flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | BLOCKHAIR
+ flags_inv = HIDEFACE
+ permeability_coefficient = 0.01
+ armor = list(melee = 65, bullet = 50, laser = 50,energy = 25, bomb = 50, bio = 100, rad = 50)
+
+//Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it.
+/obj/item/clothing/suit/armor/captain
+ name = "Captain's armor"
+ desc = "A bulky, heavy-duty piece of exclusive Nanotrasen armor. YOU are in charge!"
+ icon_state = "caparmor"
+ item_state = "capspacesuit"
+ w_class = 4
+ gas_transfer_coefficient = 0.01
+ permeability_coefficient = 0.02
+ heat_transfer_coefficient = 0.02
+ protective_temperature = 1000
+ flags = FPRINT | TABLEPASS | SUITSPACE
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS
+ allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
+ slowdown = 1.5
+ armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+
+//Deathsquad suit
/obj/item/clothing/head/helmet/space/deathsquad
name = "deathsquad helmet"
desc = "That's not red paint. That's real blood."
@@ -5,8 +36,6 @@
item_state = "deathsquad"
armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30)
-
-
/obj/item/clothing/head/helmet/space/deathsquad/beret
name = "officer's beret"
desc = "An armored beret commonly used by special operations officers."
@@ -14,13 +43,27 @@
armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30)
+//NASA Voidsuit
+/obj/item/clothing/head/helmet/space/nasavoid
+ name = "NASA Void Helmet"
+ desc = "A high tech, NASA Centcom branch designed, dark red space suit helmet. Used for AI satellite maintenance."
+ icon_state = "void"
+ item_state = "void"
+/obj/item/clothing/suit/space/nasavoid
+ name = "NASA Voidsuit"
+ icon_state = "void"
+ item_state = "void"
+ desc = "A high tech, NASA Centcom branch designed, dark red Space suit. Used for AI satellite maintenance."
+ slowdown = 1
+
+
+//Space santa outfit suit
/obj/item/clothing/head/helmet/space/santahat
name = "Santa's hat"
desc = "Ho ho ho. Merrry X-mas!"
icon_state = "santahat"
-
/obj/item/clothing/suit/space/santa
name = "Santa's suit"
desc = "Festive!"
@@ -31,6 +74,7 @@
allowed = list(/obj/item) //for stuffing exta special presents
+//Space pirate outfit
/obj/item/clothing/head/helmet/space/pirate
name = "pirate hat"
desc = "Yarr."
@@ -38,7 +82,6 @@
item_state = "pirate"
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
-
/obj/item/clothing/suit/space/pirate
name = "pirate coat"
desc = "Yarr."
diff --git a/code/modules/clothing/spacesuits/rig.dm b/code/modules/clothing/spacesuits/rig.dm
index 86ba253dfc4..d022d3bcdf7 100644
--- a/code/modules/clothing/spacesuits/rig.dm
+++ b/code/modules/clothing/spacesuits/rig.dm
@@ -1,3 +1,4 @@
+//Regular rig suits
/obj/item/clothing/head/helmet/space/rig
name = "engineering hardsuit helmet"
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
@@ -35,29 +36,6 @@
user.UpdateLuminosity()
src.sd_SetLuminosity(brightness_on)
-
-/obj/item/clothing/head/helmet/space/rig/mining
- name = "mining hardsuit helmet"
- icon_state = "rig0-mining"
- item_state = "mining_helm"
- color = "mining"
-
-
-/obj/item/clothing/head/helmet/space/rig/elite
- name = "advanced hardsuit helmet"
- icon_state = "rig0-white"
- item_state = "ce_helm"
- color = "white"
-
-/obj/item/clothing/head/helmet/space/rig/syndi
- name = "blood-red hardsuit helmet"
- icon_state = "rig0-syndi"
- item_state = "syndie_helm"
- color = "syndi"
- armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 35, bio = 100, rad = 60)
-
-////////////////////Suits
-
/obj/item/clothing/suit/space/rig
name = "engineering hardsuit"
desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding."
@@ -68,10 +46,13 @@
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 60)
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/satchel,/obj/item/device/t_scanner,/obj/item/weapon/pickaxe, /obj/item/weapon/rcd)
-/obj/item/clothing/suit/space/rig/mining
- icon_state = "rig-mining"
- name = "mining hardsuit"
- item_state = "mining_hardsuit"
+
+//Chief Engineer's rig
+/obj/item/clothing/head/helmet/space/rig/elite
+ name = "advanced hardsuit helmet"
+ icon_state = "rig0-white"
+ item_state = "ce_helm"
+ color = "white"
/obj/item/clothing/suit/space/rig/elite
icon_state = "rig-white"
@@ -79,6 +60,28 @@
item_state = "ce_hardsuit"
protective_temperature = 10000
+
+//Mining rig
+/obj/item/clothing/head/helmet/space/rig/mining
+ name = "mining hardsuit helmet"
+ icon_state = "rig0-mining"
+ item_state = "mining_helm"
+ color = "mining"
+
+/obj/item/clothing/suit/space/rig/mining
+ icon_state = "rig-mining"
+ name = "mining hardsuit"
+ item_state = "mining_hardsuit"
+
+
+//Syndicate rig
+/obj/item/clothing/head/helmet/space/rig/syndi
+ name = "blood-red hardsuit helmet"
+ icon_state = "rig0-syndi"
+ item_state = "syndie_helm"
+ color = "syndi"
+ armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 35, bio = 100, rad = 60)
+
/obj/item/clothing/suit/space/rig/syndi
icon_state = "rig-syndi"
name = "blood-red hardsuit"
diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm
index 85286055fe1..c0f44c39cd8 100644
--- a/code/modules/clothing/spacesuits/syndi.dm
+++ b/code/modules/clothing/spacesuits/syndi.dm
@@ -1,3 +1,4 @@
+//Regular syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate
name = "red space helmet"
desc = "Top secret Spess Helmet."
@@ -6,7 +7,6 @@
desc = "Has a tag: Totally not property of an enemy corporation, honest."
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
-
/obj/item/clothing/suit/space/syndicate
name = "red space suit"
icon_state = "syndicate"
@@ -18,184 +18,133 @@
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
-
+//Green syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/green
name = "Green Space Helmet"
icon_state = "syndicate-helm-green"
item_state = "syndicate-helm-green"
-
/obj/item/clothing/suit/space/syndicate/green
name = "Green Space Suit"
icon_state = "syndicate-green"
item_state = "syndicate-green"
-
+//Dark green syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/green/dark
name = "Dark Green Space Helmet"
icon_state = "syndicate-helm-green-dark"
item_state = "syndicate-helm-green-dark"
-
/obj/item/clothing/suit/space/syndicate/green/dark
name = "Dark Green Space Suit"
icon_state = "syndicate-green-dark"
item_state = "syndicate-green-dark"
-
+//Orange syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/orange
name = "Orange Space Helmet"
icon_state = "syndicate-helm-orange"
item_state = "syndicate-helm-orange"
-
/obj/item/clothing/suit/space/syndicate/orange
name = "Orange Space Suit"
icon_state = "syndicate-orange"
item_state = "syndicate-orange"
-
+//Blue syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/blue
name = "Blue Space Helmet"
icon_state = "syndicate-helm-blue"
item_state = "syndicate-helm-blue"
-
/obj/item/clothing/suit/space/syndicate/blue
name = "Blue Space Suit"
icon_state = "syndicate-blue"
item_state = "syndicate-blue"
-
+//Black syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black
name = "Black Space Helmet"
icon_state = "syndicate-helm-black"
item_state = "syndicate-helm-black"
-
/obj/item/clothing/suit/space/syndicate/black
name = "Black Space Suit"
icon_state = "syndicate-black"
item_state = "syndicate-black"
-
+//Black-green syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/green
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-green"
item_state = "syndicate-helm-black-green"
-
/obj/item/clothing/suit/space/syndicate/black/green
name = "Black and Green Space Suit"
icon_state = "syndicate-black-green"
item_state = "syndicate-black-green"
-
+//Black-blue syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/blue
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-blue"
item_state = "syndicate-helm-black-blue"
-
/obj/item/clothing/suit/space/syndicate/black/blue
name = "Black and Blue Space Suit"
icon_state = "syndicate-black-blue"
item_state = "syndicate-black-blue"
+
+//Black medical syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/med
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-med"
item_state = "syndicate-helm-black"
-
/obj/item/clothing/suit/space/syndicate/black/med
name = "Green Space Suit"
icon_state = "syndicate-black-med"
item_state = "syndicate-black"
-
+//Black-orange syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/orange
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-orange"
item_state = "syndicate-helm-black"
-
/obj/item/clothing/suit/space/syndicate/black/orange
name = "Black and Orange Space Suit"
icon_state = "syndicate-black-orange"
item_state = "syndicate-black"
-
+//Black-red syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/red
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-red"
item_state = "syndicate-helm-black-red"
-
/obj/item/clothing/suit/space/syndicate/black/red
name = "Black and Red Space Suit"
icon_state = "syndicate-black-red"
item_state = "syndicate-black-red"
-
+//Black with yellow/red engineering syndicate space suit
/obj/item/clothing/head/helmet/space/syndicate/black/engie
name = "Black Space Helmet"
icon_state = "syndicate-helm-black-engie"
item_state = "syndicate-helm-black"
-
/obj/item/clothing/suit/space/syndicate/black/engie
name = "Black Engineering Space Suit"
icon_state = "syndicate-black-engie"
- item_state = "syndicate-black"
-
-
-
-/obj/item/clothing/head/helmet/space/syndicate/elite
- name = "black space helmet"
- desc = "Professionals Have Standards, Be Polite, Be Efficient, Have a plan to kill everyone you meet."
- icon_state = "syndicate-helm-black"
- item_state = "syndicate-helm-black"
- armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30)
-
-
-/obj/item/clothing/suit/space/syndicate/elite
- name = "black space suit"
- desc = "A space ready suit with special armor inside designed to allow the wearer to take quite a beating."
- icon_state = "syndicate-black"
- item_state = "syndicate-black"
- slowdown = 1
- armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 10, rad = 0)
-
-
-
-/obj/item/clothing/head/helmet/space/syndicate/elite/leader
- name = "black space helmet"
- icon_state = "syndicate-helm-black-red"
- item_state = "syndicate-helm-black-red"
-
-
-/obj/item/clothing/suit/space/syndicate/elite/leader
- name = "black space suit"
- icon_state = "syndicate-black-red"
- item_state = "syndicate-black-red"
-
-
-
-
-
-
-
-
-
-
-
+ item_state = "syndicate-black"
\ No newline at end of file
diff --git a/code/modules/clothing/spacesuits/void.dm b/code/modules/clothing/spacesuits/void.dm
deleted file mode 100644
index 51c20c7d176..00000000000
--- a/code/modules/clothing/spacesuits/void.dm
+++ /dev/null
@@ -1,13 +0,0 @@
-/obj/item/clothing/head/helmet/space/nasavoid
- name = "NASA Void Helmet"
- desc = "A high tech, NASA Centcom branch designed, dark red space suit helmet. Used for AI satellite maintenance."
- icon_state = "void"
- item_state = "void"
-
-
-/obj/item/clothing/suit/space/nasavoid
- name = "NASA Voidsuit"
- icon_state = "void"
- item_state = "void"
- desc = "A high tech, NASA Centcom branch designed, dark red Space suit. Used for AI satellite maintenance."
- slowdown = 1
diff --git a/code/modules/clothing/suit.dm b/code/modules/clothing/suit.dm
deleted file mode 100644
index f6917ff5880..00000000000
--- a/code/modules/clothing/suit.dm
+++ /dev/null
@@ -1,8 +0,0 @@
-/obj/item/clothing/suit
- icon = 'icons/obj/clothing/suits.dmi'
- name = "suit"
- var/fire_resist = T0C+100
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL
- allowed = list(/obj/item/weapon/tank/emergency_oxygen)
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
- slot_flags = SLOT_OCLOTHING
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index f188ad0aa7c..825725c2284 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -1,11 +1,10 @@
+
/obj/item/clothing/suit/armor
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/pepperspray,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
body_parts_covered = UPPER_TORSO|LOWER_TORSO
flags = FPRINT | TABLEPASS
-
-
/obj/item/clothing/suit/armor/vest
name = "armor"
desc = "An armored vest that protects against some damage."
@@ -14,12 +13,14 @@
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
+
/obj/item/clothing/suit/armor/vest/warden
name = "Warden's jacket"
desc = "An armoured jacket with silver rank pips and livery."
icon_state = "warden_jacket"
item_state = "armor"
+
/obj/item/clothing/suit/armor/riot
name = "Riot Suit"
desc = "A suit of armor with heavy padding to protect against melee attacks. Looks like it might impair movement."
@@ -47,6 +48,43 @@
armor = list(melee = 10, bullet = 10, laser = 80, energy = 50, bomb = 0, bio = 0, rad = 0)
+/obj/item/clothing/suit/armor/swat
+ name = "swat suit"
+ desc = "A heavily armored suit that protects against moderate damage. Used in special operations."
+ icon_state = "deathsquad"
+ item_state = "swat_suit"
+ gas_transfer_coefficient = 0.01
+ permeability_coefficient = 0.01
+ heat_transfer_coefficient = 0.02
+ protective_temperature = 1000
+ flags = FPRINT | TABLEPASS | SUITSPACE
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 1
+ armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 0, rad = 0)
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+
+/obj/item/clothing/suit/armor/swat/officer
+ name = "officer jacket"
+ desc = "An armored jacket used in special operations."
+ icon_state = "detective"
+ item_state = "det_suit"
+ flags_inv = 0
+
+
+/obj/item/clothing/suit/armor/det_suit
+ name = "armor"
+ desc = "An armored vest with a detective's badge on it."
+ icon_state = "detective-armor"
+ item_state = "armor"
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+ armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
+
+
+//Reactive armor
+//When the wearer gets hit, this armor will teleport the user a short distance away (to safety or to more danger, no one knows. That's the fun of it!)
/obj/item/clothing/suit/armor/reactive
name = "Reactive Teleport Armor"
desc = "Someone seperated our Research Director from his own head!"
@@ -62,7 +100,6 @@
return 1
return 0
-
/obj/item/clothing/suit/armor/reactive/attack_self(mob/user as mob)
src.active = !( src.active )
if (src.active)
@@ -83,4 +120,42 @@
..()
+//All of the armor below is mostly unused
+
+/obj/item/clothing/suit/armor/centcomm
+ name = "Cent. Com. armor"
+ desc = "A suit that protects against some damage."
+ icon_state = "centcom"
+ item_state = "centcom"
+ w_class = 4//bulky item
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+/obj/item/clothing/suit/armor/heavy
+ name = "heavy armor"
+ desc = "A heavily armored suit that protects against moderate damage."
+ icon_state = "heavy"
+ item_state = "swat_suit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.90
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ slowdown = 3
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+/obj/item/clothing/suit/armor/tdome
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+/obj/item/clothing/suit/armor/tdome/red
+ name = "Thunderdome suit (red)"
+ desc = "Reddish armor."
+ icon_state = "tdred"
+ item_state = "tdred"
+
+/obj/item/clothing/suit/armor/tdome/green
+ name = "Thunderdome suit (green)"
+ desc = "Pukish armor."
+ icon_state = "tdgreen"
+ item_state = "tdgreen"
\ No newline at end of file
diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm
index 86c44a3c2d9..e343ba50992 100644
--- a/code/modules/clothing/suits/bio.dm
+++ b/code/modules/clothing/suits/bio.dm
@@ -1,3 +1,4 @@
+//Biosuit complete with shoes (in the item sprite)
/obj/item/clothing/head/bio_hood
name = "bio hood"
icon_state = "bio"
@@ -24,6 +25,7 @@
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+//Standard biosuit, orange stripe
/obj/item/clothing/head/bio_hood/general
icon_state = "bio_general"
@@ -31,6 +33,7 @@
icon_state = "bio_general"
+//Virology biosuit, green stripe
/obj/item/clothing/head/bio_hood/virology
icon_state = "bio_virology"
@@ -38,6 +41,7 @@
icon_state = "bio_virology"
+//Security biosuit, grey with red stripe across the chest
/obj/item/clothing/head/bio_hood/security
icon_state = "bio_security"
@@ -45,6 +49,7 @@
icon_state = "bio_security"
+//Janitor's biosuit, grey with purple arms
/obj/item/clothing/head/bio_hood/janitor
icon_state = "bio_janitor"
@@ -52,6 +57,7 @@
icon_state = "bio_janitor"
+//Scientist's biosuit, white with a pink-ish hue
/obj/item/clothing/head/bio_hood/scientist
icon_state = "bio_scientist"
@@ -59,6 +65,7 @@
icon_state = "bio_scientist"
+//CMO's biosuit, blue stripe
/obj/item/clothing/suit/bio_suit/cmo
icon_state = "bio_cmo"
@@ -66,6 +73,7 @@
icon_state = "bio_cmo"
+//Plague Dr mask can be found in clothing/masks/gasmask.dm
/obj/item/clothing/suit/bio_suit/plaguedoctorsuit
name = "Plague doctor suit"
desc = "It protected doctors from the Black Death, back then. You bet your arse it's gonna help you against viruses."
diff --git a/code/modules/clothing/suits/bomb.dm b/code/modules/clothing/suits/bomb.dm
deleted file mode 100644
index 07329b71fbe..00000000000
--- a/code/modules/clothing/suits/bomb.dm
+++ /dev/null
@@ -1,32 +0,0 @@
-/obj/item/clothing/head/bomb_hood
- name = "bomb hood"
- desc = "Use in case of bomb."
- icon_state = "bombsuit"
- flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0)
- flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
-
-/obj/item/clothing/suit/bomb_suit
- name = "bomb suit"
- desc = "A suit designed for safety when handling explosives."
- icon_state = "bombsuit"
- item_state = "bombsuit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.01
- permeability_coefficient = 0.01
- heat_transfer_coefficient = 0.30
- flags = FPRINT | TABLEPASS
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- slowdown = 2
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0)
- flags_inv = HIDEJUMPSUIT
-
-
-/obj/item/clothing/head/bomb_hood/security
- icon_state = "bombsuitsec"
- item_state = "bombsuitsec"
-
-/obj/item/clothing/suit/bomb_suit/security
- icon_state = "bombsuitsec"
- item_state = "bombsuitsec"
- allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
diff --git a/code/modules/clothing/suits/fire.dm b/code/modules/clothing/suits/fire.dm
deleted file mode 100644
index 13c88c93e40..00000000000
--- a/code/modules/clothing/suits/fire.dm
+++ /dev/null
@@ -1,32 +0,0 @@
-/obj/item/clothing/suit/fire
- name = "firesuit"
- desc = "A suit that protects against fire and heat."
- icon_state = "fire"
- item_state = "fire_suit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.90
- permeability_coefficient = 0.50
- heat_transfer_coefficient = 0.01
- protective_temperature = 10000
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/extinguisher)
- slowdown = 1.0
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL | STOPSPRESSUREDMAGE
-
-
-/obj/item/clothing/suit/fire/firefighter
- icon_state = "firesuit"
- item_state = "firefighter"
-
-
-/obj/item/clothing/suit/fire/heavy
- name = "firesuit"
- desc = "A suit that protects against extreme fire and heat."
- //icon_state = "thermal"
- item_state = "ro_suit"
- w_class = 4//bulky item
- protective_temperature = 10000
- slowdown = 1.5
-
-
diff --git a/code/modules/clothing/suits/heavy.dm b/code/modules/clothing/suits/heavy.dm
deleted file mode 100644
index 2ed8250813e..00000000000
--- a/code/modules/clothing/suits/heavy.dm
+++ /dev/null
@@ -1,64 +0,0 @@
-//These hardly ever get spawned in and should likely be changed be children of heavy
-/obj/item/clothing/suit/armor/centcomm
- name = "Cent. Com. armor"
- desc = "A suit that protects against some damage."
- icon_state = "centcom"
- item_state = "centcom"
- w_class = 4//bulky item
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/suit/armor/heavy
- name = "heavy armor"
- desc = "A heavily armored suit that protects against moderate damage."
- icon_state = "heavy"
- item_state = "swat_suit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.90
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- slowdown = 3
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/suit/armor/tdome
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/suit/armor/tdome/red
- name = "Thunderdome suit (red)"
- desc = "Reddish armor."
- icon_state = "tdred"
- item_state = "tdred"
-
-/obj/item/clothing/suit/armor/tdome/green
- name = "Thunderdome suit (green)"
- desc = "Pukish armor."
- icon_state = "tdgreen"
- item_state = "tdgreen"
-
-/obj/item/clothing/suit/armor/swat
- name = "swat suit"
- desc = "A heavily armored suit that protects against moderate damage. Used in special operations."
- icon_state = "deathsquad"
- item_state = "swat_suit"
- gas_transfer_coefficient = 0.01
- permeability_coefficient = 0.01
- heat_transfer_coefficient = 0.02
- protective_temperature = 1000
- flags = FPRINT | TABLEPASS | SUITSPACE
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 1
- armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 0, rad = 0)
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-/obj/item/clothing/suit/armor/swat/officer
- name = "officer jacket"
- desc = "An armored jacket used in special operations."
- icon_state = "detective"
- item_state = "det_suit"
- flags_inv = 0
-
-
-
-
diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm
new file mode 100644
index 00000000000..a4c0cd0f9bd
--- /dev/null
+++ b/code/modules/clothing/suits/jobs.dm
@@ -0,0 +1,98 @@
+/*
+ * Job related
+ */
+
+//Botonist
+/obj/item/clothing/suit/apron
+ name = "apron"
+ desc = "A basic blue apron."
+ icon_state = "apron"
+ item_state = "apron"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+ allowed = list (/obj/item/weapon/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/nutrient,/obj/item/weapon/minihoe)
+
+//Captain
+/obj/item/clothing/suit/captunic
+ name = "captain's parade tunic"
+ desc = "Worn by a Captain to show their class."
+ icon_state = "captunic"
+ item_state = "bio_suit"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ flags_inv = HIDEJUMPSUIT
+
+//Chaplain
+/obj/item/clothing/suit/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
+
+//Chaplain
+/obj/item/clothing/suit/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
+
+//Chef
+/obj/item/clothing/suit/chef
+ name = "Chef's apron"
+ desc = "An apron used by a high class chef."
+ icon_state = "chef"
+ item_state = "chef"
+ gas_transfer_coefficient = 0.90
+ permeability_coefficient = 0.50
+ heat_transfer_coefficient = 0.50
+ protective_temperature = 1000
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+ allowed = list (/obj/item/weapon/kitchenknife,/obj/item/weapon/butch)
+
+//Chef
+/obj/item/clothing/suit/chef/classic
+ name = "A classic chef's apron."
+ desc = "A basic, dull, white chef's apron."
+ icon_state = "apronchef"
+ item_state = "apronchef"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+
+//Detective
+/obj/item/clothing/suit/det_suit
+ name = "coat"
+ desc = "An 18th-century multi-purpose trenchcoat. Someone who wears this means serious business."
+ icon_state = "detective"
+ item_state = "det_suit"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/cigpacket,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder)
+ armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0)
+
+//Engineering
+/obj/item/clothing/suit/hazardvest
+ name = "hazard vest"
+ desc = "A high-visibility vest used in work zones."
+ icon_state = "hazard"
+ item_state = "hazard"
+
+//Lawyer
+/obj/item/clothing/suit/lawyer/bluejacket
+ name = "Blue Suit Jacket"
+ desc = "A snappy dress jacket."
+ icon_state = "suitjacket_blue_open"
+ item_state = "suitjacket_blue_open"
+ body_parts_covered = UPPER_TORSO|ARMS
+
+/obj/item/clothing/suit/lawyer/purpjacket
+ name = "Purple Suit Jacket"
+ desc = "A snappy dress jacket."
+ icon_state = "suitjacket_purp"
+ item_state = "suitjacket_purp"
+ body_parts_covered = UPPER_TORSO|ARMS
+
+//Mime
+/obj/item/clothing/suit/suspenders
+ name = "suspenders"
+ desc = "They suspend the illusion of the mime's play."
+ icon = 'icons/obj/clothing/belts.dmi'
+ icon_state = "suspenders"
\ No newline at end of file
diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm
index 4775477e71e..89eddc1aad1 100644
--- a/code/modules/clothing/suits/labcoat.dm
+++ b/code/modules/clothing/suits/labcoat.dm
@@ -1,4 +1,3 @@
-
/obj/item/clothing/suit/labcoat
name = "labcoat"
desc = "A suit that protects against minor chemical spills."
diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm
index 427ef0cc2e5..ecf12943e4b 100644
--- a/code/modules/clothing/suits/miscellaneous.dm
+++ b/code/modules/clothing/suits/miscellaneous.dm
@@ -1,12 +1,95 @@
-/obj/item/clothing/suit/straight_jacket
- name = "straight jacket"
- desc = "A suit that completely restrains the wearer."
- icon_state = "straight_jacket"
- item_state = "straight_jacket"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS
+/*
+ * Contains:
+ * Lasertag
+ * Costume
+ * Misc
+ */
+
+/*
+ * Lasertag
+ */
+/obj/item/clothing/suit/bluetag
+ name = "blue laser tag armour"
+ desc = "Blue Pride, Station Wide"
+ icon_state = "bluetag"
+ item_state = "bluetag"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+ allowed = list (/obj/item/weapon/gun/energy/laser/bluetag)
+
+/obj/item/clothing/suit/redtag
+ name = "red laser tag armour"
+ desc = "Pew pew pew"
+ icon_state = "redtag"
+ item_state = "redtag"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+ allowed = list (/obj/item/weapon/gun/energy/laser/redtag)
+
+/*
+ * Costume
+ */
+/obj/item/clothing/suit/pirate
+ name = "pirate coat"
+ desc = "Yarr."
+ icon_state = "pirate"
+ item_state = "pirate"
+ flags = FPRINT | TABLEPASS
+
+
+/obj/item/clothing/suit/hgpirate
+ name = "pirate captain coat"
+ desc = "Yarr."
+ icon_state = "hgpirate"
+ item_state = "hgpirate"
+ flags = FPRINT | TABLEPASS
+ flags_inv = HIDEJUMPSUIT
+
+
+/obj/item/clothing/suit/cyborg_suit
+ name = "cyborg suit"
+ desc = "Suit for a cyborg costume."
+ icon_state = "death"
+ item_state = "death"
+ flags = FPRINT | TABLEPASS | CONDUCT
+ fire_resist = T0C+5200
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+/obj/item/clothing/suit/greatcoat
+ name = "great coat"
+ desc = "A Nazi great coat"
+ icon_state = "nazi"
+ item_state = "nazi"
+ flags = FPRINT | TABLEPASS
+
+
+/obj/item/clothing/suit/johnny_coat
+ name = "johnny~~ coat"
+ desc = "Johnny~~"
+ icon_state = "johnny"
+ item_state = "johnny"
+ flags = FPRINT | TABLEPASS
+
+
+/obj/item/clothing/suit/justice
+ name = "justice suit"
+ desc = "this pretty much looks ridiculous"
+ icon_state = "justice"
+ item_state = "justice"
+ flags = FPRINT | TABLEPASS
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+
+/obj/item/clothing/suit/judgerobe
+ name = "judge's robe"
+ desc = "This robe commands authority."
+ icon_state = "judge"
+ item_state = "judge"
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+ allowed = list(/obj/item/weapon/cigpacket,/obj/item/weapon/spacecash)
+ flags_inv = HIDEJUMPSUIT
+
+
/obj/item/clothing/suit/wcoat
name = "waistcoat"
desc = "For some classy, murderous fun."
@@ -15,32 +98,6 @@
body_parts_covered = UPPER_TORSO|LOWER_TORSO
-/obj/item/clothing/suit/bluetag
- name = "blue laser tag armour"
- desc = "Blue Pride, Station Wide"
- icon_state = "bluetag"
- item_state = "bluetag"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
- allowed = list (/obj/item/weapon/gun/energy/laser/bluetag)
-
-
-/obj/item/clothing/suit/redtag
- name = "red laser tag armour"
- desc = "Pew pew pew"
- icon_state = "redtag"
- item_state = "redtag"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
- allowed = list (/obj/item/weapon/gun/energy/laser/redtag)
-
-
-/obj/item/clothing/suit/apron
- name = "apron"
- desc = "A basic blue apron."
- icon_state = "apron"
- item_state = "apron"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
- allowed = list (/obj/item/weapon/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/nutrient,/obj/item/weapon/minihoe)
-
/obj/item/clothing/suit/apron/overalls
name = "coveralls"
desc = "A set of denim overalls."
@@ -48,40 +105,6 @@
item_state = "overalls"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS
-/obj/item/clothing/suit/chef
- name = "Chef's apron"
- desc = "An apron used by a high class chef."
- icon_state = "chef"
- item_state = "chef"
- gas_transfer_coefficient = 0.90
- permeability_coefficient = 0.50
- heat_transfer_coefficient = 0.50
- protective_temperature = 1000
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
- allowed = list (/obj/item/weapon/kitchenknife,/obj/item/weapon/butch)
-
-
-/obj/item/clothing/suit/chef/classic
- name = "A classic chef's apron."
- desc = "A basic, dull, white chef's apron."
- icon_state = "apronchef"
- item_state = "apronchef"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
-
-
-/obj/item/clothing/suit/hazardvest
- name = "hazard vest"
- desc = "A high-visibility vest used in work zones."
- icon_state = "hazard"
- item_state = "hazard"
-
-
-/obj/item/clothing/suit/suspenders
- name = "suspenders"
- desc = "They suspend the illusion of the mime's play."
- icon = 'icons/obj/clothing/belts.dmi'
- icon_state = "suspenders"
-
/obj/item/clothing/suit/syndicatefake
name = "red space suit replica"
@@ -94,32 +117,6 @@
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-/obj/item/clothing/suit/captunic
- name = "captain's parade tunic"
- desc = "Worn by a Captain to show their class."
- icon_state = "captunic"
- item_state = "bio_suit"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
- flags_inv = HIDEJUMPSUIT
-
-
-/obj/item/clothing/suit/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
-
-
-/obj/item/clothing/suit/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
-
-
/obj/item/clothing/suit/hastur
name = "Hastur's Robes"
desc = "Robes not meant to be worn by man"
@@ -165,8 +162,6 @@
flags_inv = HIDEJUMPSUIT
-// BubbleWrap - Nothing to see here
-
/obj/item/clothing/suit/cardborg
name = "cardborg suit"
desc = "An ordinary cardboard box with holes cut in the sides."
@@ -175,3 +170,42 @@
body_parts_covered = UPPER_TORSO|LOWER_TORSO
flags_inv = HIDEJUMPSUIT
+/*
+ * Misc
+ */
+
+/obj/item/clothing/suit/straight_jacket
+ name = "straight jacket"
+ desc = "A suit that completely restrains the wearer."
+ icon_state = "straight_jacket"
+ item_state = "straight_jacket"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+
+/obj/item/clothing/suit/ianshirt
+ name = "worn shirt"
+ desc = "A worn out, curiously comfortable t-shirt with a picture of Ian. You wouldn't go so far as to say it feels like being hugged when you wear it but it's pretty close. Good for sleeping in."
+ icon_state = "ianshirt"
+ item_state = "ianshirt"
+
+//Blue suit jacket toggle
+/obj/item/clothing/suit/suit/verb/toggle()
+ set name = "Toggle Jacket Buttons"
+ set category = "Object"
+ set src in usr
+
+ if(!usr.canmove || usr.stat || usr.restrained())
+ return 0
+
+ if(src.icon_state == "suitjacket_blue_open")
+ src.icon_state = "suitjacket_blue"
+ src.item_state = "suitjacket_blue"
+ usr << "You button up the suit jacket."
+ else if(src.icon_state == "suitjacket_blue")
+ src.icon_state = "suitjacket_blue_open"
+ src.item_state = "suitjacket_blue_open"
+ usr << "You unbutton the suit jacket."
+ else
+ usr << "You button-up some imaginary buttons on your [src]."
+ return
+ usr.update_inv_wear_suit()
\ No newline at end of file
diff --git a/code/modules/clothing/suits/radiation.dm b/code/modules/clothing/suits/radiation.dm
deleted file mode 100644
index 36d2493f652..00000000000
--- a/code/modules/clothing/suits/radiation.dm
+++ /dev/null
@@ -1,22 +0,0 @@
-/obj/item/clothing/head/radiation
- name = "Radiation Hood"
- icon_state = "rad"
- desc = "A hood with radiation protective properties. Label: Made with lead, do not eat insulation"
- flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
-
-/obj/item/clothing/suit/radiation
- name = "Radiation suit"
- desc = "A suit that protects against radiation. Label: Made with lead, do not eat insulation."
- icon_state = "rad"
- item_state = "rad_suit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.90
- permeability_coefficient = 0.50
- heat_transfer_coefficient = 0.30
- protective_temperature = 1000
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 1.5
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
- flags_inv = HIDEJUMPSUIT
diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm
new file mode 100644
index 00000000000..3e2a1946147
--- /dev/null
+++ b/code/modules/clothing/suits/utility.dm
@@ -0,0 +1,106 @@
+/*
+ * Contains:
+ * Fire protection
+ * Bomb protection
+ * Radiation protection
+ */
+
+/*
+ * Fire protection
+ */
+
+/obj/item/clothing/suit/fire
+ name = "firesuit"
+ desc = "A suit that protects against fire and heat."
+ icon_state = "fire"
+ item_state = "fire_suit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.90
+ permeability_coefficient = 0.50
+ heat_transfer_coefficient = 0.01
+ protective_temperature = 10000
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/extinguisher)
+ slowdown = 1.0
+ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL | STOPSPRESSUREDMAGE
+
+
+/obj/item/clothing/suit/fire/firefighter
+ icon_state = "firesuit"
+ item_state = "firefighter"
+
+
+/obj/item/clothing/suit/fire/heavy
+ name = "firesuit"
+ desc = "A suit that protects against extreme fire and heat."
+ //icon_state = "thermal"
+ item_state = "ro_suit"
+ w_class = 4//bulky item
+ protective_temperature = 10000
+ slowdown = 1.5
+
+/*
+ * Bomb protection
+ */
+/obj/item/clothing/head/bomb_hood
+ name = "bomb hood"
+ desc = "Use in case of bomb."
+ icon_state = "bombsuit"
+ flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0)
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
+
+
+/obj/item/clothing/suit/bomb_suit
+ name = "bomb suit"
+ desc = "A suit designed for safety when handling explosives."
+ icon_state = "bombsuit"
+ item_state = "bombsuit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.01
+ permeability_coefficient = 0.01
+ heat_transfer_coefficient = 0.30
+ flags = FPRINT | TABLEPASS
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ slowdown = 2
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0)
+ flags_inv = HIDEJUMPSUIT
+
+
+/obj/item/clothing/head/bomb_hood/security
+ icon_state = "bombsuitsec"
+ item_state = "bombsuitsec"
+
+
+/obj/item/clothing/suit/bomb_suit/security
+ icon_state = "bombsuitsec"
+ item_state = "bombsuitsec"
+ allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
+
+/*
+ * Radiation protection
+ */
+/obj/item/clothing/head/radiation
+ name = "Radiation Hood"
+ icon_state = "rad"
+ desc = "A hood with radiation protective properties. Label: Made with lead, do not eat insulation"
+ flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
+
+
+/obj/item/clothing/suit/radiation
+ name = "Radiation suit"
+ desc = "A suit that protects against radiation. Label: Made with lead, do not eat insulation."
+ icon_state = "rad"
+ item_state = "rad_suit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.90
+ permeability_coefficient = 0.50
+ heat_transfer_coefficient = 0.30
+ protective_temperature = 1000
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 1.5
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
+ flags_inv = HIDEJUMPSUIT
diff --git a/code/modules/clothing/suits/robe.dm b/code/modules/clothing/suits/wiz_robe.dm
similarity index 100%
rename from code/modules/clothing/suits/robe.dm
rename to code/modules/clothing/suits/wiz_robe.dm
diff --git a/code/modules/clothing/under.dm b/code/modules/clothing/under.dm
deleted file mode 100644
index 45a2cadaaf0..00000000000
--- a/code/modules/clothing/under.dm
+++ /dev/null
@@ -1,64 +0,0 @@
-/obj/item/clothing/under
- icon = 'icons/obj/clothing/uniforms.dmi'
- name = "under"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
- protective_temperature = T0C + 50
- heat_transfer_coefficient = 0.30
- permeability_coefficient = 0.90
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL
- slot_flags = SLOT_ICLOTHING
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
- var/has_sensor = 1//For the crew computer 2 = unable to change mode
- var/sensor_mode = 0
- /*
- 1 = Report living/dead
- 2 = Report detailed damages
- 3 = Report location
- */
-
-
- examine()
- set src in view()
- ..()
- switch(src.sensor_mode)
- if(0)
- usr << "Its sensors appear to be disabled."
- if(1)
- usr << "Its binary life sensors appear to be enabled."
- if(2)
- usr << "Its vital tracker appears to be enabled."
- if(3)
- usr << "Its vital tracker and tracking beacon appear to be enabled."
-
-
- verb/toggle()
- set name = "Toggle Suit Sensors"
- set category = "Object"
- set src in usr
- var/mob/M = usr
- if (istype(M, /mob/dead/)) return
- if (usr.stat) return
- if(src.has_sensor >= 2)
- usr << "The controls are locked."
- return 0
- if(src.has_sensor <= 0)
- usr << "This suit does not have any sensors"
- return 0
- src.sensor_mode += 1
- if(src.sensor_mode > 3)
- src.sensor_mode = 0
- switch(src.sensor_mode)
- if(0)
- usr << "You disable your suit's remote sensing equipment."
- if(1)
- usr << "Your suit will now report whether you are live or dead."
- if(2)
- usr << "Your suit will now report your vital lifesigns."
- if(3)
- usr << "Your suit will now report your vital lifesigns as well as your coordinate position."
- ..()
-
-
-/obj/item/clothing/under/rank/New()
- sensor_mode = pick(0,1,2,3)
- ..()
diff --git a/code/modules/clothing/under/cargo.dm b/code/modules/clothing/under/cargo.dm
deleted file mode 100644
index 0ba3c91a9b2..00000000000
--- a/code/modules/clothing/under/cargo.dm
+++ /dev/null
@@ -1,20 +0,0 @@
-/obj/item/clothing/under/rank/cargo
- name = "quartermaster's jumpsuit"
- desc = "It's a jumpsuit worn by the quartermaster. It's specially designed to prevent back injuries caused by pushing paper."
- icon_state = "qm"
- item_state = "lb_suit"
- color = "qm"
-
-/obj/item/clothing/under/rank/cargotech
- name = "cargo technician's jumpsuit"
- desc = "Shooooorts! They're comfy and easy to wear!"
- icon_state = "cargotech"
- item_state = "lb_suit"
- color = "cargo"
-
-/obj/item/clothing/under/rank/miner
- desc = "It's a snappy jumpsuit with a sturdy set of overalls. It is very dirty."
- name = "shaft miner's jumpsuit"
- icon_state = "miner"
- item_state = "miner"
- color = "miner"
diff --git a/code/modules/clothing/under/civilian.dm b/code/modules/clothing/under/civilian.dm
deleted file mode 100644
index f853977ca6a..00000000000
--- a/code/modules/clothing/under/civilian.dm
+++ /dev/null
@@ -1,62 +0,0 @@
-/obj/item/clothing/under/rank/head_of_personnel
- desc = "It's a jumpsuit worn by someone who works in the position of \"Head of Personnel\"."
- name = "head of personnel's jumpsuit"
- icon_state = "hop"
- item_state = "b_suit"
- color = "hop"
-
-/obj/item/clothing/under/rank/chaplain
- desc = "It's a black jumpsuit, often worn by religious folk."
- name = "chaplain's jumpsuit"
- icon_state = "chaplain"
- item_state = "bl_suit"
- color = "chapblack"
-
-/obj/item/clothing/under/rank/bartender
- desc = "It looks like it could use some more flair."
- name = "bartender's uniform"
- icon_state = "ba_suit"
- item_state = "ba_suit"
- color = "ba_suit"
-
-/obj/item/clothing/under/rank/clown
- name = "clown suit"
- desc = "'HONK!'"
- icon_state = "clown"
- item_state = "clown"
- color = "clown"
-
-/obj/item/clothing/under/rank/chef
- desc = "It's an apron which is given only to the most hardcore chefs in space."
- name = "chef's uniform"
- icon_state = "chef"
- color = "chef"
-
-/obj/item/clothing/under/librarian
- name = "sensible suit"
- desc = "It's very... sensible."
- icon_state = "red_suit"
- item_state = "red_suit"
- color = "red_suit"
-
-/obj/item/clothing/under/mime
- name = "mime's outfit"
- desc = "It's not very colourful."
- icon_state = "mime"
- item_state = "mime"
- color = "mime"
-
-/obj/item/clothing/under/rank/janitor
- desc = "It's the official uniform of the station's janitor. It has minor protection from biohazards."
- name = "janitor's jumpsuit"
- icon_state = "janitor"
- color = "janitor"
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/hydroponics
- desc = "It's a jumpsuit designed to protect against minor plant-related hazards."
- name = "botanist's jumpsuit"
- icon_state = "hydroponics"
- item_state = "g_suit"
- color = "hydroponics"
- permeability_coefficient = 0.50
diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm
index 8afe03e6bf2..27e3eaaca7a 100644
--- a/code/modules/clothing/under/color.dm
+++ b/code/modules/clothing/under/color.dm
@@ -139,4 +139,4 @@
name = "darkred"
desc = "darkred"
icon_state = "darkred"
- color = "darkred"
+ color = "darkred"
\ No newline at end of file
diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm
new file mode 100644
index 00000000000..f07f6ca78d3
--- /dev/null
+++ b/code/modules/clothing/under/jobs/civilian.dm
@@ -0,0 +1,147 @@
+//Alphabetical order of civilian jobs.
+
+/obj/item/clothing/under/rank/bartender
+ desc = "It looks like it could use some more flair."
+ name = "bartender's uniform"
+ icon_state = "ba_suit"
+ item_state = "ba_suit"
+ color = "ba_suit"
+
+
+/obj/item/clothing/under/rank/captain //Alright, technically not a 'civilian' but its better then giving a .dm file for a single define.
+ desc = "It's a blue jumpsuit with some gold markings denoting the rank of \"Captain\"."
+ name = "captain's jumpsuit"
+ icon_state = "captain"
+ item_state = "caparmor"
+ color = "captain"
+
+
+/obj/item/clothing/under/rank/cargo
+ name = "quartermaster's jumpsuit"
+ desc = "It's a jumpsuit worn by the quartermaster. It's specially designed to prevent back injuries caused by pushing paper."
+ icon_state = "qm"
+ item_state = "lb_suit"
+ color = "qm"
+
+
+/obj/item/clothing/under/rank/cargotech
+ name = "cargo technician's jumpsuit"
+ desc = "Shooooorts! They're comfy and easy to wear!"
+ icon_state = "cargotech"
+ item_state = "lb_suit"
+ color = "cargo"
+
+
+/obj/item/clothing/under/rank/chaplain
+ desc = "It's a black jumpsuit, often worn by religious folk."
+ name = "chaplain's jumpsuit"
+ icon_state = "chaplain"
+ item_state = "bl_suit"
+ color = "chapblack"
+
+
+/obj/item/clothing/under/rank/chef
+ desc = "It's an apron which is given only to the most hardcore chefs in space."
+ name = "chef's uniform"
+ icon_state = "chef"
+ color = "chef"
+
+
+/obj/item/clothing/under/rank/clown
+ name = "clown suit"
+ desc = "'HONK!'"
+ icon_state = "clown"
+ item_state = "clown"
+ color = "clown"
+
+
+/obj/item/clothing/under/rank/head_of_personnel
+ desc = "It's a jumpsuit worn by someone who works in the position of \"Head of Personnel\"."
+ name = "head of personnel's jumpsuit"
+ icon_state = "hop"
+ item_state = "b_suit"
+ color = "hop"
+
+
+/obj/item/clothing/under/rank/hydroponics
+ desc = "It's a jumpsuit designed to protect against minor plant-related hazards."
+ name = "botanist's jumpsuit"
+ icon_state = "hydroponics"
+ item_state = "g_suit"
+ color = "hydroponics"
+ permeability_coefficient = 0.50
+
+
+/obj/item/clothing/under/rank/janitor
+ desc = "It's the official uniform of the station's janitor. It has minor protection from biohazards."
+ name = "janitor's jumpsuit"
+ icon_state = "janitor"
+ color = "janitor"
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+
+/obj/item/clothing/under/lawyer
+ desc = "Slick threads."
+ name = "Lawyer suit"
+ flags = FPRINT | TABLEPASS
+
+
+/obj/item/clothing/under/lawyer/black
+ icon_state = "lawyer_black"
+ item_state = "lawyer_black"
+ color = "lawyer_black"
+
+
+/obj/item/clothing/under/lawyer/female
+ icon_state = "black_suit_fem"
+ item_state = "black_suit_fem"
+ color = "black_suit_fem"
+
+
+/obj/item/clothing/under/lawyer/red
+ icon_state = "lawyer_red"
+ item_state = "lawyer_red"
+ color = "lawyer_red"
+
+
+/obj/item/clothing/under/lawyer/blue
+ icon_state = "lawyer_blue"
+ item_state = "lawyer_blue"
+ color = "lawyer_blue"
+
+
+/obj/item/clothing/under/lawyer/bluesuit
+ name = "Blue Suit"
+ desc = "A classy suit and tie"
+ icon_state = "bluesuit"
+ item_state = "bluesuit"
+ color = "bluesuit"
+
+
+/obj/item/clothing/under/lawyer/purpsuit
+ name = "Purple Suit"
+ icon_state = "lawyer_purp"
+ item_state = "lawyer_purp"
+ color = "lawyer_purp"
+
+
+/obj/item/clothing/under/librarian
+ name = "sensible suit"
+ desc = "It's very... sensible."
+ icon_state = "red_suit"
+ item_state = "red_suit"
+ color = "red_suit"
+
+/obj/item/clothing/under/mime
+ name = "mime's outfit"
+ desc = "It's not very colourful."
+ icon_state = "mime"
+ item_state = "mime"
+ color = "mime"
+
+/obj/item/clothing/under/rank/miner
+ desc = "It's a snappy jumpsuit with a sturdy set of overalls. It is very dirty."
+ name = "shaft miner's jumpsuit"
+ icon_state = "miner"
+ item_state = "miner"
+ color = "miner"
\ No newline at end of file
diff --git a/code/modules/clothing/under/engineering.dm b/code/modules/clothing/under/jobs/engineering.dm
similarity index 100%
rename from code/modules/clothing/under/engineering.dm
rename to code/modules/clothing/under/jobs/engineering.dm
diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm
new file mode 100644
index 00000000000..2e2fbcb7c97
--- /dev/null
+++ b/code/modules/clothing/under/jobs/medsci.dm
@@ -0,0 +1,137 @@
+/*
+ * Science
+ */
+/obj/item/clothing/under/rank/research_director
+ desc = "It's a jumpsuit worn by those with the know-how to achieve the position of \"Research Director\". Its fabric provides minor protection from biological contaminants."
+ name = "research director's jumpsuit"
+ icon_state = "director"
+ item_state = "g_suit"
+ color = "director"
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/scientist
+ desc = "It's made of a special fiber that provides minor protection against biohazards. It has markings that denote the wearer as a scientist."
+ name = "scientist's jumpsuit"
+ icon_state = "toxins"
+ item_state = "w_suit"
+ color = "toxinswhite"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
+
+
+/obj/item/clothing/under/rank/chemist
+ desc = "It's made of a special fiber that gives special protection against biohazards. It has a chemist rank stripe on it."
+ name = "chemist's jumpsuit"
+ icon_state = "chemistry"
+ item_state = "w_suit"
+ color = "chemistrywhite"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/*
+ * Medical
+ */
+/obj/item/clothing/under/rank/chief_medical_officer
+ desc = "It's a jumpsuit worn by those with the experience to be \"Chief Medical Officer\". It provides minor biological protection."
+ name = "chief medical officer's jumpsuit"
+ icon_state = "cmo"
+ item_state = "w_suit"
+ color = "cmo"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/geneticist
+ desc = "It's made of a special fiber that gives special protection against biohazards. It has a genetics rank stripe on it."
+ name = "geneticist's jumpsuit"
+ icon_state = "genetics"
+ item_state = "w_suit"
+ color = "geneticswhite"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/virologist
+ desc = "It's made of a special fiber that gives special protection against biohazards. It has a virologist rank stripe on it."
+ name = "virologist's jumpsuit"
+ icon_state = "virology"
+ item_state = "w_suit"
+ color = "virologywhite"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/nursesuit
+ desc = "It's a jumpsuit commonly worn by nursing staff in the medical department."
+ name = "nurse's suit"
+ icon_state = "nursesuit"
+ item_state = "nursesuit"
+ color = "nursesuit"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/medical
+ desc = "It's made of a special fiber that provides minor protection against biohazards. It has a cross on the chest denoting that the wearer is trained medical personnel."
+ name = "medical doctor's jumpsuit"
+ icon_state = "medical"
+ item_state = "w_suit"
+ color = "medical"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/medical/blue
+ name = "medical scrubs"
+ desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in baby blue."
+ icon_state = "scrubsblue"
+ color = "scrubsblue"
+
+/obj/item/clothing/under/rank/medical/green
+ name = "medical scrubs"
+ desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in dark green."
+ icon_state = "scrubsgreen"
+ color = "scrubsgreen"
+
+/obj/item/clothing/under/rank/medical/purple
+ name = "medical scrubs"
+ desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in deep purple."
+ icon_state = "scrubspurple"
+ color = "scrubspurple"
+
+
+
+
+/*
+ * Medsci, unused (i think) stuff
+ */
+/obj/item/clothing/under/rank/geneticist_new
+ desc = "It's made of a special fiber which provides minor protection against biohazards."
+ name = "geneticist's jumpsuit"
+ icon_state = "genetics_new"
+ item_state = "w_suit"
+ color = "genetics_new"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/chemist_new
+ desc = "It's made of a special fiber which provides minor protection against biohazards."
+ name = "chemist's jumpsuit"
+ icon_state = "chemist_new"
+ item_state = "w_suit"
+ color = "chemist_new"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
+
+/obj/item/clothing/under/rank/scientist_new
+ desc = "Made of a special fiber that gives special protection against biohazards and small explosions."
+ name = "scientist's jumpsuit"
+ icon_state = "scientist_new"
+ item_state = "w_suit"
+ color = "scientist_new"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
+
+/obj/item/clothing/under/rank/virologist_new
+ desc = "Made of a special fiber that gives increased protection against biohazards."
+ name = "virologist's jumpsuit"
+ icon_state = "virologist_new"
+ item_state = "w_suit"
+ color = "virologist_new"
+ permeability_coefficient = 0.50
+ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
\ No newline at end of file
diff --git a/code/modules/clothing/uniforms/hos.dm b/code/modules/clothing/under/jobs/security.dm
similarity index 54%
rename from code/modules/clothing/uniforms/hos.dm
rename to code/modules/clothing/under/jobs/security.dm
index b1a056f931c..c0d89aa5074 100644
--- a/code/modules/clothing/uniforms/hos.dm
+++ b/code/modules/clothing/under/jobs/security.dm
@@ -1,4 +1,51 @@
-//Contains: Head of Security clothing
+/*
+ * Contains:
+ * Security
+ * Detective
+ * Head of Security
+ */
+
+/*
+ * Security
+ */
+/obj/item/clothing/under/rank/warden
+ desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for more robust protection. It has the word \"Warden\" written on the shoulders."
+ name = "warden's jumpsuit"
+ icon_state = "warden"
+ item_state = "r_suit"
+ color = "warden"
+ armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+
+/obj/item/clothing/under/rank/security
+ name = "security officer's jumpsuit"
+ desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for robust protection."
+ icon_state = "security"
+ item_state = "r_suit"
+ color = "secred"
+ armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+
+/*
+ * Detective
+ */
+/obj/item/clothing/under/det
+ name = "hard-worn suit"
+ desc = "Someone who wears this means business."
+ icon_state = "detective"
+ item_state = "det"
+ color = "detective"
+ armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+
+
+/obj/item/clothing/head/det_hat
+ name = "hat"
+ desc = "Someone who wears this will look very smart."
+ icon_state = "detective"
+ allowed = list(/obj/item/weapon/reagent_containers/food/snacks/candy_corn, /obj/item/weapon/pen)
+ armor = list(melee = 50, bullet = 5, laser = 25,energy = 10, bomb = 0, bio = 0, rad = 0)
+
+/*
+ * Head of Security
+ */
/obj/item/clothing/under/rank/head_of_security
desc = "It's a jumpsuit worn by those few with the dedication to achieve the position of \"Head of Security\". It has additional armor to protect the wearer."
name = "head of security's jumpsuit"
@@ -28,6 +75,12 @@
flags_inv = HIDEJUMPSUIT
+/obj/item/clothing/head/helmet/HoS/dermal
+ name = "Dermal Armour Patch"
+ desc = "You're not quite sure how you manage to take it on and off, but it implants nicely in your head."
+ icon_state = "dermal"
+ item_state = "dermal"
+
//Jensen cosplay gear
/obj/item/clothing/under/jensen
desc = "You never asked for anything that stylish."
@@ -37,14 +90,6 @@
color = "jensen"
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
-
-/obj/item/clothing/head/helmet/HoS/dermal
- name = "Dermal Armour Patch"
- desc = "You're not quite sure how you manage to take it on and off, but it implants nicely in your head."
- icon_state = "dermal"
- item_state = "dermal"
-
-
/obj/item/clothing/suit/armor/hos/jensen
name = "armored trenchoat"
desc = "A trenchoat augmented with a special alloy for some protection and style"
diff --git a/code/modules/clothing/under/medical.dm b/code/modules/clothing/under/medical.dm
deleted file mode 100644
index d6c26ab2247..00000000000
--- a/code/modules/clothing/under/medical.dm
+++ /dev/null
@@ -1,78 +0,0 @@
-/obj/item/clothing/under/rank/chief_medical_officer
- desc = "It's a jumpsuit worn by those with the experience to be \"Chief Medical Officer\". It provides minor biological protection."
- name = "chief medical officer's jumpsuit"
- icon_state = "cmo"
- item_state = "w_suit"
- color = "cmo"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/geneticist
- desc = "It's made of a special fiber that gives special protection against biohazards. It has a genetics rank stripe on it."
- name = "geneticist's jumpsuit"
- icon_state = "genetics"
- item_state = "w_suit"
- color = "geneticswhite"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/virologist
- desc = "It's made of a special fiber that gives special protection against biohazards. It has a virologist rank stripe on it."
- name = "virologist's jumpsuit"
- icon_state = "virology"
- item_state = "w_suit"
- color = "virologywhite"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/nursesuit
- desc = "It's a jumpsuit commonly worn by nursing staff in the medical department."
- name = "nurse's suit"
- icon_state = "nursesuit"
- item_state = "nursesuit"
- color = "nursesuit"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/medical
- desc = "It's made of a special fiber that provides minor protection against biohazards. It has a cross on the chest denoting that the wearer is trained medical personnel."
- name = "medical doctor's jumpsuit"
- icon_state = "medical"
- item_state = "w_suit"
- color = "medical"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/medical/blue
- name = "medical scrubs"
- desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in baby blue."
- icon_state = "scrubsblue"
- color = "scrubsblue"
-
-/obj/item/clothing/under/rank/medical/green
- name = "medical scrubs"
- desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in dark green."
- icon_state = "scrubsgreen"
- color = "scrubsgreen"
-
-/obj/item/clothing/under/rank/medical/purple
- name = "medical scrubs"
- desc = "It's made of a special fiber that provides minor protection against biohazards. This one is in deep purple."
- icon_state = "scrubspurple"
- color = "scrubspurple"
-
-//pj's
-
-/obj/item/clothing/under/pj/red
- name = "red pj's"
- desc = "Sleepwear."
- icon_state = "red_pyjamas"
- color = "red_pyjamas"
- item_state = "w_suit"
-
-/obj/item/clothing/under/pj/blue
- name = "blue pj's"
- desc = "Sleepwear."
- icon_state = "blue_pyjamas"
- color = "blue_pyjamas"
- item_state = "w_suit"
\ No newline at end of file
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index 5376373b9a4..1a76ac90266 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -1,3 +1,17 @@
+/obj/item/clothing/under/pj/red
+ name = "red pj's"
+ desc = "Sleepwear."
+ icon_state = "red_pyjamas"
+ color = "red_pyjamas"
+ item_state = "w_suit"
+
+/obj/item/clothing/under/pj/blue
+ name = "blue pj's"
+ desc = "Sleepwear."
+ icon_state = "blue_pyjamas"
+ color = "blue_pyjamas"
+ item_state = "w_suit"
+
/obj/item/clothing/under/scratch
name = "white suit"
desc = "A white suit, suitable for an excellent host"
@@ -80,4 +94,138 @@
protective_temperature = 100000
flags = FPRINT | TABLEPASS | SUITSPACE
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- armor = list(melee = 100, bullet = 100, laser = 100,energy = 100, bomb = 100, bio = 100, rad = 100)
\ No newline at end of file
+ armor = list(melee = 100, bullet = 100, laser = 100,energy = 100, bomb = 100, bio = 100, rad = 100)
+
+/obj/item/clothing/under/owl
+ name = "owl uniform"
+ desc = "A jumpsuit with owl wings. Photorealistic owl feathers! Twooooo!"
+ icon_state = "owl"
+ color = "owl"
+
+/obj/item/clothing/under/johnny
+ name = "johnny~~ jumpsuit"
+ desc = "Johnny~~"
+ icon_state = "johnny"
+ color = "johnny"
+
+/obj/item/clothing/under/rainbow
+ name = "rainbow"
+ desc = "rainbow"
+ icon_state = "rainbow"
+ item_state = "rainbow"
+ color = "rainbow"
+
+/obj/item/clothing/under/cloud
+ name = "cloud"
+ desc = "cloud"
+ icon_state = "cloud"
+ color = "cloud"
+
+/obj/item/clothing/under/gimmick/rank/captain/suit
+ name = "captain's suit"
+ desc = "A green suit and yellow necktie. Exemplifies authority."
+ icon_state = "green_suit"
+ item_state = "dg_suit"
+ color = "green_suit"
+
+/obj/item/clothing/under/gimmick/rank/head_of_personnel/suit
+ name = "head of personnel's suit"
+ desc = "A teal suit and yellow necktie. An authoritative yet tacky ensemble."
+ icon_state = "teal_suit"
+ item_state = "g_suit"
+ color = "teal_suit"
+
+/obj/item/clothing/under/suit_jacket
+ name = "black suit"
+ desc = "A black suit and red tie. Very formal."
+ icon_state = "black_suit"
+ item_state = "bl_suit"
+ color = "black_suit"
+
+/obj/item/clothing/under/suit_jacket/really_black
+ name = "executive suit"
+ desc = "A formal black suit and red tie, intended for the station's finest."
+ icon_state = "really_black_suit"
+ item_state = "bl_suit"
+ color = "black_suit"
+
+/obj/item/clothing/under/suit_jacket/female
+ name = "executive suit"
+ desc = "A formal trouser suit for women, intended for the station's finest."
+ icon_state = "black_suit_fem"
+ item_state = "black_suit_fem"
+ color = "black_suit_fem"
+
+/obj/item/clothing/under/suit_jacket/red
+ name = "red suit"
+ desc = "A red suit and blue tie. Somewhat formal."
+ icon_state = "red_suit"
+ item_state = "r_suit"
+ color = "red_suit"
+
+/obj/item/clothing/under/blackskirt
+ name = "black skirt"
+ desc = "A black skirt, very fancy!"
+ icon_state = "blackskirt"
+ color = "blackskirt"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+
+/obj/item/clothing/under/schoolgirl
+ name = "schoolgirl uniform"
+ desc = "It's just like one of my Japanese animes!"
+ icon_state = "schoolgirl"
+ item_state = "schoolgirl"
+ color = "schoolgirl"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+
+/obj/item/clothing/under/overalls
+ name = "laborer's overalls"
+ desc = "A set of durable overalls for getting the job done."
+ icon_state = "overalls"
+ item_state = "lb_suit"
+ color = "overalls"
+
+/obj/item/clothing/under/pirate
+ name = "pirate outfit"
+ desc = "Yarr."
+ icon_state = "pirate"
+ item_state = "pirate"
+ color = "pirate"
+
+/obj/item/clothing/under/soviet
+ name = "soviet uniform"
+ desc = "For the Motherland!"
+ icon_state = "soviet"
+ item_state = "soviet"
+ color = "soviet"
+
+/obj/item/clothing/under/redcoat
+ name = "redcoat uniform"
+ desc = "Looks old."
+ icon_state = "redcoat"
+ item_state = "redcoat"
+ color = "redcoat"
+
+/obj/item/clothing/under/kilt
+ name = "kilt"
+ desc = "Includes shoes and plaid"
+ icon_state = "kilt"
+ item_state = "kilt"
+ color = "kilt"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET
+
+/obj/item/clothing/under/sexymime
+ name = "sexy mime outfit"
+ desc = "The only time when you DON'T enjoy looking at someone's rack."
+ icon_state = "sexymime"
+ item_state = "sexymime"
+ color = "sexymime"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+
+/obj/item/clothing/under/gladiator
+ name = "gladiator uniform"
+ desc = "Are you not entertained? Is that not why you are here?"
+ icon_state = "gladiator"
+ item_state = "gladiator"
+ color = "gladiator"
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
\ No newline at end of file
diff --git a/code/modules/clothing/under/rank.dm b/code/modules/clothing/under/rank.dm
deleted file mode 100644
index e69de29bb2d..00000000000
diff --git a/code/modules/clothing/under/science.dm b/code/modules/clothing/under/science.dm
deleted file mode 100644
index 02512b85d4a..00000000000
--- a/code/modules/clothing/under/science.dm
+++ /dev/null
@@ -1,27 +0,0 @@
-/obj/item/clothing/under/rank/research_director
- desc = "It's a jumpsuit worn by those with the know-how to achieve the position of \"Research Director\". Its fabric provides minor protection from biological contaminants."
- name = "research director's jumpsuit"
- icon_state = "director"
- item_state = "g_suit"
- color = "director"
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/scientist
- desc = "It's made of a special fiber that provides minor protection against biohazards. It has markings that denote the wearer as a scientist."
- name = "scientist's jumpsuit"
- icon_state = "toxins"
- item_state = "w_suit"
- color = "toxinswhite"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
-
-
-/obj/item/clothing/under/rank/chemist
- desc = "It's made of a special fiber that gives special protection against biohazards. It has a chemist rank stripe on it."
- name = "chemist's jumpsuit"
- icon_state = "chemistry"
- item_state = "w_suit"
- color = "chemistrywhite"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
diff --git a/code/modules/clothing/under/security.dm b/code/modules/clothing/under/security.dm
deleted file mode 100644
index e4b268c5e3a..00000000000
--- a/code/modules/clothing/under/security.dm
+++ /dev/null
@@ -1,15 +0,0 @@
-/obj/item/clothing/under/rank/warden
- desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for more robust protection. It has the word \"Warden\" written on the shoulders."
- name = "warden's jumpsuit"
- icon_state = "warden"
- item_state = "r_suit"
- color = "warden"
- armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
-
-/obj/item/clothing/under/rank/security
- name = "security officer's jumpsuit"
- desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for robust protection."
- icon_state = "security"
- item_state = "r_suit"
- color = "secred"
- armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
\ No newline at end of file
diff --git a/code/modules/clothing/under/under.dm b/code/modules/clothing/under/under.dm
deleted file mode 100644
index 324ce1203bd..00000000000
--- a/code/modules/clothing/under/under.dm
+++ /dev/null
@@ -1,36 +0,0 @@
-
-/obj/item/clothing/under/rank/geneticist_new
- desc = "It's made of a special fiber which provides minor protection against biohazards."
- name = "geneticist's jumpsuit"
- icon_state = "genetics_new"
- item_state = "w_suit"
- color = "genetics_new"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/chemist_new
- desc = "It's made of a special fiber which provides minor protection against biohazards."
- name = "chemist's jumpsuit"
- icon_state = "chemist_new"
- item_state = "w_suit"
- color = "chemist_new"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
-
-/obj/item/clothing/under/rank/scientist_new
- desc = "Made of a special fiber that gives special protection against biohazards and small explosions."
- name = "scientist's jumpsuit"
- icon_state = "scientist_new"
- item_state = "w_suit"
- color = "scientist_new"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
-
-/obj/item/clothing/under/rank/virologist_new
- desc = "Made of a special fiber that gives increased protection against biohazards."
- name = "virologist's jumpsuit"
- icon_state = "virologist_new"
- item_state = "w_suit"
- color = "virologist_new"
- permeability_coefficient = 0.50
- armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
diff --git a/code/modules/clothing/uniforms/captain.dm b/code/modules/clothing/uniforms/captain.dm
deleted file mode 100644
index abb9931f448..00000000000
--- a/code/modules/clothing/uniforms/captain.dm
+++ /dev/null
@@ -1,59 +0,0 @@
-//Contains: Captains clothing
-/obj/item/clothing/under/rank/captain
- desc = "It's a blue jumpsuit with some gold markings denoting the rank of \"Captain\"."
- name = "captain's jumpsuit"
- icon_state = "captain"
- item_state = "caparmor"
- color = "captain"
-
-
-//Spacesuit
-/obj/item/clothing/head/helmet/space/capspace
- name = "space helmet"
- icon_state = "capspace"
- item_state = "capspacehelmet"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
- flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | BLOCKHAIR
- flags_inv = HIDEFACE
- permeability_coefficient = 0.01
- armor = list(melee = 65, bullet = 50, laser = 50,energy = 25, bomb = 50, bio = 100, rad = 50)
-
-
-/obj/item/clothing/suit/armor/captain
- name = "Captain's armor"
- desc = "A bulky, heavy-duty piece of exclusive Nanotrasen armor. YOU are in charge!"
- icon_state = "caparmor"
- item_state = "capspacesuit"
- w_class = 4
- gas_transfer_coefficient = 0.01
- permeability_coefficient = 0.02
- heat_transfer_coefficient = 0.02
- protective_temperature = 1000
- flags = FPRINT | TABLEPASS | SUITSPACE
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS
- allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
- slowdown = 1.5
- armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
- flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
-
-/obj/item/clothing/head/caphat
- name = "captain's hat"
- icon_state = "captain"
- desc = "It's good being the king."
- flags = FPRINT|TABLEPASS|SUITSPACE
- item_state = "caphat"
-
-/obj/item/clothing/head/helmet/cap
- name = "captain's cap"
- desc = "You fear to wear it for the negligence it brings."
- icon_state = "capcap"
- flags = FPRINT|TABLEPASS|SUITSPACE
- flags_inv = 0
-
-/obj/item/clothing/gloves/captain
- desc = "Regal blue gloves, with a nice gold trim. Swanky."
- name = "captain's gloves"
- icon_state = "captain"
- item_state = "egloves"
- color = "captain"
\ No newline at end of file
diff --git a/code/modules/clothing/uniforms/detective.dm b/code/modules/clothing/uniforms/detective.dm
deleted file mode 100644
index d5a6676d779..00000000000
--- a/code/modules/clothing/uniforms/detective.dm
+++ /dev/null
@@ -1,37 +0,0 @@
-//Contains: Detective clothing
-/obj/item/clothing/under/det
- name = "hard-worn suit"
- desc = "Someone who wears this means business."
- icon_state = "detective"
- item_state = "det"
- color = "detective"
- armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
-
-
-/obj/item/clothing/head/det_hat
- name = "hat"
- desc = "Someone who wears this will look very smart."
- icon_state = "detective"
- allowed = list(/obj/item/weapon/reagent_containers/food/snacks/candy_corn, /obj/item/weapon/pen)
- armor = list(melee = 50, bullet = 5, laser = 25,energy = 10, bomb = 0, bio = 0, rad = 0)
-
-
-/obj/item/clothing/suit/det_suit
- name = "coat"
- desc = "An 18th-century multi-purpose trenchcoat. Someone who wears this means serious business."
- icon_state = "detective"
- item_state = "det_suit"
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
- allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/cigpacket,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder)
- armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0)
-
-
-/obj/item/clothing/suit/det_suit/armor
- name = "armor"
- desc = "An armored vest with a detective's badge on it."
- icon_state = "detective-armor"
- item_state = "armor"
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL
- body_parts_covered = UPPER_TORSO|LOWER_TORSO
- allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
- armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
diff --git a/code/modules/clothing/uniforms/lawyer.dm b/code/modules/clothing/uniforms/lawyer.dm
deleted file mode 100644
index 4fd4b3afd24..00000000000
--- a/code/modules/clothing/uniforms/lawyer.dm
+++ /dev/null
@@ -1,70 +0,0 @@
-/*Contains most of the "Law" uniforms*/
-
-
-/obj/item/clothing/under/lawyer
- desc = "Slick threads."
- name = "Lawyer suit"
- flags = FPRINT | TABLEPASS
-
-
-/obj/item/clothing/under/lawyer/black
- icon_state = "lawyer_black"
- item_state = "lawyer_black"
- color = "lawyer_black"
-
-
-/obj/item/clothing/under/lawyer/female
- icon_state = "black_suit_fem"
- item_state = "black_suit_fem"
- color = "black_suit_fem"
-
-
-/obj/item/clothing/under/lawyer/red
- icon_state = "lawyer_red"
- item_state = "lawyer_red"
- color = "lawyer_red"
-
-
-/obj/item/clothing/under/lawyer/blue
- icon_state = "lawyer_blue"
- item_state = "lawyer_blue"
- color = "lawyer_blue"
-
-
-/obj/item/clothing/under/lawyer/bluesuit
- name = "Blue Suit"
- desc = "A classy suit and tie"
- icon_state = "bluesuit"
- item_state = "bluesuit"
- color = "bluesuit"
-
-/obj/item/clothing/under/lawyer/purpsuit
- name = "Purple Suit"
- icon_state = "lawyer_purp"
- item_state = "lawyer_purp"
- color = "lawyer_purp"
-
-/obj/item/clothing/suit/lawyer/bluejacket
- name = "Blue Suit Jacket"
- desc = "A snappy dress jacket."
- icon_state = "suitjacket_blue_open"
- item_state = "suitjacket_blue_open"
- body_parts_covered = UPPER_TORSO|ARMS
-
-/obj/item/clothing/suit/lawyer/purpjacket
- name = "Purple Suit Jacket"
- desc = "A snappy dress jacket."
- icon_state = "suitjacket_purp"
- item_state = "suitjacket_purp"
- body_parts_covered = UPPER_TORSO|ARMS
-
-
-/obj/item/clothing/suit/judgerobe
- name = "judge's robe"
- desc = "This robe commands authority."
- icon_state = "judge"
- item_state = "judge"
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
- allowed = list(/obj/item/weapon/cigpacket,/obj/item/weapon/spacecash)
- flags_inv = HIDEJUMPSUIT
diff --git a/tgstation.dme b/tgstation.dme
index d22ca7c0f59..a11f709b157 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -5,6 +5,203 @@
// END_INTERNALS
// BEGIN_FILE_DIR
#define FILE_DIR .
+#define FILE_DIR "code"
+#define FILE_DIR "code/ATMOSPHERICS"
+#define FILE_DIR "code/ATMOSPHERICS/components"
+#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices"
+#define FILE_DIR "code/ATMOSPHERICS/components/trinary_devices"
+#define FILE_DIR "code/ATMOSPHERICS/components/unary"
+#define FILE_DIR "code/datums"
+#define FILE_DIR "code/datums/diseases"
+#define FILE_DIR "code/datums/helper_datums"
+#define FILE_DIR "code/datums/spells"
+#define FILE_DIR "code/defines"
+#define FILE_DIR "code/defines/area"
+#define FILE_DIR "code/defines/mob"
+#define FILE_DIR "code/defines/mob/dead"
+#define FILE_DIR "code/defines/mob/living"
+#define FILE_DIR "code/defines/mob/living/carbon"
+#define FILE_DIR "code/defines/mob/living/silicon"
+#define FILE_DIR "code/defines/obj"
+#define FILE_DIR "code/defines/procs"
+#define FILE_DIR "code/defines/tanning"
+#define FILE_DIR "code/FEA"
+#define FILE_DIR "code/game"
+#define FILE_DIR "code/game/area"
+#define FILE_DIR "code/game/asteroid"
+#define FILE_DIR "code/game/gamemodes"
+#define FILE_DIR "code/game/gamemodes/blob"
+#define FILE_DIR "code/game/gamemodes/blob/blobs"
+#define FILE_DIR "code/game/gamemodes/changeling"
+#define FILE_DIR "code/game/gamemodes/cult"
+#define FILE_DIR "code/game/gamemodes/events"
+#define FILE_DIR "code/game/gamemodes/events/holidays"
+#define FILE_DIR "code/game/gamemodes/extended"
+#define FILE_DIR "code/game/gamemodes/malfunction"
+#define FILE_DIR "code/game/gamemodes/meteor"
+#define FILE_DIR "code/game/gamemodes/nuclear"
+#define FILE_DIR "code/game/gamemodes/revolution"
+#define FILE_DIR "code/game/gamemodes/sandbox"
+#define FILE_DIR "code/game/gamemodes/traitor"
+#define FILE_DIR "code/game/gamemodes/wizard"
+#define FILE_DIR "code/game/jobs"
+#define FILE_DIR "code/game/jobs/job"
+#define FILE_DIR "code/game/machinery"
+#define FILE_DIR "code/game/machinery/atmoalter"
+#define FILE_DIR "code/game/machinery/bots"
+#define FILE_DIR "code/game/machinery/computer"
+#define FILE_DIR "code/game/machinery/doors"
+#define FILE_DIR "code/game/machinery/embedded_controller"
+#define FILE_DIR "code/game/machinery/kitchen"
+#define FILE_DIR "code/game/machinery/pipe"
+#define FILE_DIR "code/game/machinery/telecomms"
+#define FILE_DIR "code/game/magic"
+#define FILE_DIR "code/game/magic/cultist"
+#define FILE_DIR "code/game/mecha"
+#define FILE_DIR "code/game/mecha/combat"
+#define FILE_DIR "code/game/mecha/equipment"
+#define FILE_DIR "code/game/mecha/equipment/tools"
+#define FILE_DIR "code/game/mecha/equipment/weapons"
+#define FILE_DIR "code/game/mecha/medical"
+#define FILE_DIR "code/game/mecha/working"
+#define FILE_DIR "code/game/objects"
+#define FILE_DIR "code/game/objects/alien"
+#define FILE_DIR "code/game/objects/closets"
+#define FILE_DIR "code/game/objects/closets/secure"
+#define FILE_DIR "code/game/objects/devices"
+#define FILE_DIR "code/game/objects/devices/PDA"
+#define FILE_DIR "code/game/objects/grenades"
+#define FILE_DIR "code/game/objects/items"
+#define FILE_DIR "code/game/objects/items/weapons"
+#define FILE_DIR "code/game/objects/items/weapons/implants"
+#define FILE_DIR "code/game/objects/radio"
+#define FILE_DIR "code/game/objects/secstorage"
+#define FILE_DIR "code/game/objects/stacks"
+#define FILE_DIR "code/game/objects/storage"
+#define FILE_DIR "code/game/objects/tanks"
+#define FILE_DIR "code/game/vehicles"
+#define FILE_DIR "code/game/vehicles/airtight"
+#define FILE_DIR "code/game/verbs"
+#define FILE_DIR "code/js"
+#define FILE_DIR "code/modules"
+#define FILE_DIR "code/modules/admin"
+#define FILE_DIR "code/modules/admin/DB ban"
+#define FILE_DIR "code/modules/admin/verbs"
+#define FILE_DIR "code/modules/assembly"
+#define FILE_DIR "code/modules/chemical"
+#define FILE_DIR "code/modules/client"
+#define FILE_DIR "code/modules/clothing"
+#define FILE_DIR "code/modules/clothing/glasses"
+#define FILE_DIR "code/modules/clothing/gloves"
+#define FILE_DIR "code/modules/clothing/head"
+#define FILE_DIR "code/modules/clothing/masks"
+#define FILE_DIR "code/modules/clothing/shoes"
+#define FILE_DIR "code/modules/clothing/spacesuits"
+#define FILE_DIR "code/modules/clothing/suits"
+#define FILE_DIR "code/modules/clothing/under"
+#define FILE_DIR "code/modules/clothing/under/jobs"
+#define FILE_DIR "code/modules/critters"
+#define FILE_DIR "code/modules/critters/hivebots"
+#define FILE_DIR "code/modules/detectivework"
+#define FILE_DIR "code/modules/flufftext"
+#define FILE_DIR "code/modules/food"
+#define FILE_DIR "code/modules/maps"
+#define FILE_DIR "code/modules/mining"
+#define FILE_DIR "code/modules/mob"
+#define FILE_DIR "code/modules/mob/dead"
+#define FILE_DIR "code/modules/mob/dead/observer"
+#define FILE_DIR "code/modules/mob/living"
+#define FILE_DIR "code/modules/mob/living/blob"
+#define FILE_DIR "code/modules/mob/living/carbon"
+#define FILE_DIR "code/modules/mob/living/carbon/alien"
+#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid"
+#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste"
+#define FILE_DIR "code/modules/mob/living/carbon/alien/larva"
+#define FILE_DIR "code/modules/mob/living/carbon/brain"
+#define FILE_DIR "code/modules/mob/living/carbon/human"
+#define FILE_DIR "code/modules/mob/living/carbon/metroid"
+#define FILE_DIR "code/modules/mob/living/carbon/monkey"
+#define FILE_DIR "code/modules/mob/living/silicon"
+#define FILE_DIR "code/modules/mob/living/silicon/ai"
+#define FILE_DIR "code/modules/mob/living/silicon/decoy"
+#define FILE_DIR "code/modules/mob/living/silicon/pai"
+#define FILE_DIR "code/modules/mob/living/silicon/robot"
+#define FILE_DIR "code/modules/mob/living/simple_animal"
+#define FILE_DIR "code/modules/mob/new_player"
+#define FILE_DIR "code/modules/mob/organ"
+#define FILE_DIR "code/modules/paperwork"
+#define FILE_DIR "code/modules/power"
+#define FILE_DIR "code/modules/power/antimatter"
+#define FILE_DIR "code/modules/power/singularity"
+#define FILE_DIR "code/modules/power/singularity/particle_accelerator"
+#define FILE_DIR "code/modules/projectiles"
+#define FILE_DIR "code/modules/projectiles/ammunition"
+#define FILE_DIR "code/modules/projectiles/guns"
+#define FILE_DIR "code/modules/projectiles/guns/energy"
+#define FILE_DIR "code/modules/projectiles/guns/projectile"
+#define FILE_DIR "code/modules/projectiles/projectile"
+#define FILE_DIR "code/modules/recycling"
+#define FILE_DIR "code/modules/research"
+#define FILE_DIR "code/modules/scripting"
+#define FILE_DIR "code/modules/scripting/AST"
+#define FILE_DIR "code/modules/scripting/AST/Operators"
+#define FILE_DIR "code/modules/scripting/Implementations"
+#define FILE_DIR "code/modules/scripting/Interpreter"
+#define FILE_DIR "code/modules/scripting/Parser"
+#define FILE_DIR "code/modules/scripting/Scanner"
+#define FILE_DIR "code/modules/security levels"
+#define FILE_DIR "code/unused"
+#define FILE_DIR "code/unused/beast"
+#define FILE_DIR "code/unused/computer2"
+#define FILE_DIR "code/unused/disease2"
+#define FILE_DIR "code/unused/gamemodes"
+#define FILE_DIR "code/unused/hivebot"
+#define FILE_DIR "code/unused/mining"
+#define FILE_DIR "code/unused/optics"
+#define FILE_DIR "code/unused/pda2"
+#define FILE_DIR "code/unused/powerarmor"
+#define FILE_DIR "code/unused/spacecraft"
+#define FILE_DIR "code/WorkInProgress"
+#define FILE_DIR "code/WorkInProgress/carn"
+#define FILE_DIR "code/WorkInProgress/mapload"
+#define FILE_DIR "code/WorkInProgress/organs"
+#define FILE_DIR "code/WorkInProgress/virus2"
+#define FILE_DIR "html"
+#define FILE_DIR "icons"
+#define FILE_DIR "icons/effects"
+#define FILE_DIR "icons/mecha"
+#define FILE_DIR "icons/misc"
+#define FILE_DIR "icons/mob"
+#define FILE_DIR "icons/obj"
+#define FILE_DIR "icons/obj/assemblies"
+#define FILE_DIR "icons/obj/atmospherics"
+#define FILE_DIR "icons/obj/clothing"
+#define FILE_DIR "icons/obj/doors"
+#define FILE_DIR "icons/obj/machines"
+#define FILE_DIR "icons/obj/pipes"
+#define FILE_DIR "icons/pda_icons"
+#define FILE_DIR "icons/spideros_icons"
+#define FILE_DIR "icons/Testing"
+#define FILE_DIR "icons/turf"
+#define FILE_DIR "icons/vehicles"
+#define FILE_DIR "icons/vending_icons"
+#define FILE_DIR "interface"
+#define FILE_DIR "maps"
+#define FILE_DIR "maps/RandomZLevels"
+#define FILE_DIR "sound"
+#define FILE_DIR "sound/AI"
+#define FILE_DIR "sound/ambience"
+#define FILE_DIR "sound/effects"
+#define FILE_DIR "sound/hallucinations"
+#define FILE_DIR "sound/items"
+#define FILE_DIR "sound/machines"
+#define FILE_DIR "sound/mecha"
+#define FILE_DIR "sound/misc"
+#define FILE_DIR "sound/piano"
+#define FILE_DIR "sound/voice"
+#define FILE_DIR "sound/weapons"
+#define FILE_DIR "tools"
+#define FILE_DIR "tools/Redirector"
// END_FILE_DIR
// BEGIN_PREFERENCES
@@ -485,7 +682,6 @@
#include "code\game\objects\items\apc_frame.dm"
#include "code\game\objects\items\blueprints.dm"
#include "code\game\objects\items\candle.dm"
-#include "code\game\objects\items\clothing.dm"
#include "code\game\objects\items\food.dm"
#include "code\game\objects\items\helper_procs.dm"
#include "code\game\objects\items\item.dm"
@@ -624,65 +820,46 @@
#include "code\modules\chemical\Chemistry-Tools.dm"
#include "code\modules\client\client defines.dm"
#include "code\modules\client\client procs.dm"
-#include "code\modules\clothing\ears.dm"
-#include "code\modules\clothing\glasses.dm"
-#include "code\modules\clothing\gloves.dm"
-#include "code\modules\clothing\head.dm"
-#include "code\modules\clothing\mask.dm"
-#include "code\modules\clothing\random.dm"
-#include "code\modules\clothing\shoes.dm"
-#include "code\modules\clothing\spacesuit.dm"
-#include "code\modules\clothing\suit.dm"
-#include "code\modules\clothing\under.dm"
+#include "code\modules\clothing\clothing.dm"
#include "code\modules\clothing\glasses\glasses.dm"
#include "code\modules\clothing\glasses\hud.dm"
#include "code\modules\clothing\gloves\boxing.dm"
#include "code\modules\clothing\gloves\color.dm"
#include "code\modules\clothing\gloves\miscellaneous.dm"
-#include "code\modules\clothing\head\cargo.dm"
+#include "code\modules\clothing\head\collectable.dm"
#include "code\modules\clothing\head\hardhat.dm"
#include "code\modules\clothing\head\helmet.dm"
-#include "code\modules\clothing\head\miscellaneous.dm"
-#include "code\modules\clothing\head\pumpkin.dm"
-#include "code\modules\clothing\head\security.dm"
-#include "code\modules\clothing\head\welding.dm"
+#include "code\modules\clothing\head\jobs.dm"
+#include "code\modules\clothing\head\misc.dm"
+#include "code\modules\clothing\head\misc_special.dm"
+#include "code\modules\clothing\head\soft_caps.dm"
#include "code\modules\clothing\masks\boxing.dm"
#include "code\modules\clothing\masks\breath.dm"
#include "code\modules\clothing\masks\gasmask.dm"
#include "code\modules\clothing\masks\miscellaneous.dm"
+#include "code\modules\clothing\shoes\colour.dm"
#include "code\modules\clothing\shoes\magboots.dm"
#include "code\modules\clothing\shoes\miscellaneous.dm"
#include "code\modules\clothing\spacesuits\miscellaneous.dm"
#include "code\modules\clothing\spacesuits\ninja.dm"
#include "code\modules\clothing\spacesuits\rig.dm"
#include "code\modules\clothing\spacesuits\syndi.dm"
-#include "code\modules\clothing\spacesuits\void.dm"
#include "code\modules\clothing\suits\armor.dm"
#include "code\modules\clothing\suits\bio.dm"
-#include "code\modules\clothing\suits\bomb.dm"
-#include "code\modules\clothing\suits\fire.dm"
-#include "code\modules\clothing\suits\heavy.dm"
+#include "code\modules\clothing\suits\jobs.dm"
#include "code\modules\clothing\suits\labcoat.dm"
#include "code\modules\clothing\suits\miscellaneous.dm"
-#include "code\modules\clothing\suits\radiation.dm"
-#include "code\modules\clothing\suits\robe.dm"
-#include "code\modules\clothing\under\cargo.dm"
+#include "code\modules\clothing\suits\utility.dm"
+#include "code\modules\clothing\suits\wiz_robe.dm"
#include "code\modules\clothing\under\chameleon.dm"
-#include "code\modules\clothing\under\civilian.dm"
#include "code\modules\clothing\under\color.dm"
-#include "code\modules\clothing\under\engineering.dm"
-#include "code\modules\clothing\under\medical.dm"
#include "code\modules\clothing\under\miscellaneous.dm"
-#include "code\modules\clothing\under\rank.dm"
-#include "code\modules\clothing\under\science.dm"
-#include "code\modules\clothing\under\security.dm"
#include "code\modules\clothing\under\shorts.dm"
#include "code\modules\clothing\under\syndicate.dm"
-#include "code\modules\clothing\under\under.dm"
-#include "code\modules\clothing\uniforms\captain.dm"
-#include "code\modules\clothing\uniforms\detective.dm"
-#include "code\modules\clothing\uniforms\hos.dm"
-#include "code\modules\clothing\uniforms\lawyer.dm"
+#include "code\modules\clothing\under\jobs\civilian.dm"
+#include "code\modules\clothing\under\jobs\engineering.dm"
+#include "code\modules\clothing\under\jobs\medsci.dm"
+#include "code\modules\clothing\under\jobs\security.dm"
#include "code\modules\critters\critter.dm"
#include "code\modules\critters\critter_AI.dm"
#include "code\modules\critters\critter_defenses.dm"