diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index e32395d1079..36098f5ffa9 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -1236,7 +1236,8 @@
icon_state = "artvend"
products = list(/obj/item/stack/cable_coil/random = 10,/obj/item/device/camera = 4,/obj/item/device/camera_film = 6,
/obj/item/weapon/storage/photo_album = 2,/obj/item/stack/wrapping_paper = 4,/obj/item/stack/packageWrap = 4,
- /obj/item/weapon/storage/fancy/crayons = 4,/obj/item/weapon/paper = 10,/obj/item/weapon/c_tube = 10,
- /obj/item/weapon/pen = 5,/obj/item/weapon/pen/blue = 5,/obj/item/weapon/pen/red = 5)
+ /obj/item/weapon/storage/fancy/crayons = 4,/obj/item/weapon/hand_labeler = 4,/obj/item/weapon/paper = 10,
+ /obj/item/weapon/c_tube = 10,/obj/item/weapon/pen = 5,/obj/item/weapon/pen/blue = 5,
+ /obj/item/weapon/pen/red = 5)
contraband = list(/obj/item/toy/crayon/mime = 1,/obj/item/toy/crayon/rainbow = 1)
premium = list(/obj/item/weapon/contraband/poster = 5)
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm
index 7c39f530ace..1533b5d2c51 100644
--- a/code/game/objects/items/weapons/tanks/tank_types.dm
+++ b/code/game/objects/items/weapons/tanks/tank_types.dm
@@ -125,6 +125,7 @@
/obj/item/weapon/tank/plasma/plasmaman
desc = "The lifeblood of plasmamen. Warning: Extremely flammable, do not inhale (unless you're a plasman)."
icon_state = "plasma_fr"
+ distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
/obj/item/weapon/tank/plasma/plasmaman/examine()
set src in usr
diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm
index cd646e76e77..43d9569ea39 100644
--- a/code/modules/client/client procs.dm
+++ b/code/modules/client/client procs.dm
@@ -157,6 +157,13 @@
else
src.DB_species_unlock("Slime People",45)
return
+ if("6")
+ if(karma <100)
+ usr << "You do not have enough karma!"
+ return
+ else
+ src.DB_species_unlock("Plasmaman",100)
+ return
if(href_list["KarmaRefund"])
var/type = href_list["KarmaRefundType"]
var/job = href_list["KarmaRefund"]
diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm
index 6c20fbae7ee..446d7ef13ec 100644
--- a/code/modules/clothing/spacesuits/plasmamen.dm
+++ b/code/modules/clothing/spacesuits/plasmamen.dm
@@ -1,8 +1,10 @@
// PLASMEN SHIT
// CAN'T WEAR UNLESS YOU'RE A PINK SKELLINGTON
/obj/item/clothing/suit/space/eva/plasmaman
+ name = "plasmaman suit"
+ desc = "A special containment suit designed to protect a plasmaman's volatile body from outside exposure and quickly extinguish it in emergencies."
w_class = 3
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank)
+ allowed = list(/obj/item/weapon/gun,/obj/item/ammo_casing,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank)
slowdown = 2
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 0)
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
@@ -10,7 +12,8 @@
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE
species_restricted = list("Plasmaman")
- flags = STOPSPRESSUREDMAGE | PLASMAGUARD
+ flags = STOPSPRESSUREDMAGE | PLASMAGUARD
+ pressure_resistance = 40 * ONE_ATMOSPHERE //we can't change, so some resistance is needed
icon_state = "plasmaman_suit"
item_state = "plasmaman_suit"
@@ -19,10 +22,10 @@
var/extinguish_cooldown=10 SECONDS
var/extinguishes_left=10 // Yeah yeah, reagents, blah blah blah. This should be simple.
-/obj/item/clothing/suit/space/eva/plasmaman/examine()
- set src in view()
+/obj/item/clothing/suit/space/eva/plasmaman/examine(mob/user)
..()
- usr << "There are [extinguishes_left] extinguisher canisters left in this suit."
+ user << "There are [extinguishes_left] extinguisher canisters left in this suit."
+
/obj/item/clothing/suit/space/eva/plasmaman/proc/Extinguish(var/mob/user)
var/mob/living/carbon/human/H=user
if(extinguishes_left)
@@ -35,7 +38,10 @@
H.ExtinguishMob()
/obj/item/clothing/head/helmet/space/eva/plasmaman
- flags = HEADCOVERSEYES | BLOCKHAIR | STOPSPRESSUREDMAGE | PLASMAGUARD
+ name = "plasmaman helmet"
+ desc = "A special containment helmet designed to protect a plasmaman's volatile body from outside exposure and quickly extinguish it in emergencies."
+ flags = STOPSPRESSUREDMAGE | PLASMAGUARD
+ pressure_resistance = 40 * ONE_ATMOSPHERE
species_restricted = list("Plasmaman")
icon_state = "plasmaman_helmet0"
@@ -54,9 +60,9 @@
return
on = !on
icon_state = "[base_state][on]"
-// item_state = "rig[on]-[_color]"
if(on) user.SetLuminosity(user.luminosity + brightness_on)
else user.SetLuminosity(user.luminosity - brightness_on)
+ user.update_inv_head()
/obj/item/clothing/head/helmet/space/eva/plasmaman/pickup(mob/user)
if(on)
@@ -74,54 +80,113 @@
// ENGINEERING
/obj/item/clothing/suit/space/eva/plasmaman/assistant
+ name = "plasmaman assistant suit"
icon_state = "plasmamanAssistant_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/assistant
+ name = "plasmaman assistant helmet"
icon_state = "plasmamanAssistant_helmet0"
base_state = "plasmamanAssistant_helmet"
/obj/item/clothing/suit/space/eva/plasmaman/atmostech
+ name = "plasmaman atmospheric suit"
icon_state = "plasmamanAtmos_suit"
+ armor = list(melee = 20, bullet = 0, laser = 0,energy = 0, bomb = 25, bio = 100, rad = 0)
+ max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/head/helmet/space/eva/plasmaman/atmostech
+ name = "plasmaman atmospheric helmet"
icon_state = "plasmamanAtmos_helmet0"
base_state = "plasmamanAtmos_helmet"
+ armor = list(melee = 20, bullet = 0, laser = 0,energy = 0, bomb = 25, bio = 100, rad = 0)
+ max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/suit/space/eva/plasmaman/engineer
+ name = "plasmaman engineer suit"
icon_state = "plasmamanEngineer_suit"
+ armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 80)
+ pressure_resistance = 200 * ONE_ATMOSPHERE
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/engineer
+ name = "plasmaman engineer helmet"
icon_state = "plasmamanEngineer_helmet0"
base_state = "plasmamanEngineer_helmet"
+ armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 80)
+ pressure_resistance = 200 * ONE_ATMOSPHERE
+
+/obj/item/clothing/suit/space/eva/plasmaman/engineer/ce
+ name = "plasmaman chief engineer suit"
+ icon_state = "plasmaman_CE"
+ max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/engineer/ce
+ name = "plasmaman chief engineer helmet"
+ icon_state = "plasmaman_CE_helmet0"
+ base_state = "plasmaman_CE_helmet"
+ max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
//SERVICE
/obj/item/clothing/suit/space/eva/plasmaman/botanist
+ name = "plasmaman botanist suit"
icon_state = "plasmamanBotanist_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/botanist
+ name = "plasmaman botanist helmet"
icon_state = "plasmamanBotanist_helmet0"
base_state = "plasmamanBotanist_helmet"
/obj/item/clothing/suit/space/eva/plasmaman/chaplain
+ name = "plasmaman chaplain suit"
icon_state = "plasmamanChaplain_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/chaplain
+ name = "plasmaman chaplain helmet"
icon_state = "plasmamanChaplain_helmet0"
base_state = "plasmamanChaplain_helmet"
+/obj/item/clothing/suit/space/eva/plasmaman/clown
+ name = "plasmaman clown suit"
+ icon_state = "plasmaman_Clown"
+ slowdown = 1
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/clown
+ name = "plasmaman clown helmet"
+ icon_state = "plasmaman_Clown_helmet0"
+ base_state = "plasmaman_Clown_helmet"
+
+/obj/item/clothing/suit/space/eva/plasmaman/mime
+ name = "plasmaman mime suit"
+ icon_state = "plasmaman_Mime"
+ slowdown = 1
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/mime
+ name = "plasmaman mime helmet"
+ icon_state = "plasmaman_Mime_helmet0"
+ base_state = "plasmaman_Mime_helmet"
+
/obj/item/clothing/suit/space/eva/plasmaman/service
+ name = "plasmaman service suit"
icon_state = "plasmamanService_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/service
+ name = "plasmaman service helmet"
icon_state = "plasmamanService_helmet0"
base_state = "plasmamanService_helmet"
/obj/item/clothing/suit/space/eva/plasmaman/janitor
+ name = "plasmaman janitor suit"
icon_state = "plasmamanJanitor_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/janitor
+ name = "plasmaman janitor helmet"
icon_state = "plasmamanJanitor_helmet0"
base_state = "plasmamanJanitor_helmet"
@@ -129,42 +194,158 @@
//CARGO
/obj/item/clothing/suit/space/eva/plasmaman/cargo
+ name = "plasmaman cargo suit"
icon_state = "plasmamanCargo_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/cargo
+ name = "plasmaman cargo helmet"
icon_state = "plasmamanCargo_helmet0"
base_state = "plasmamanCargo_helmet"
/obj/item/clothing/suit/space/eva/plasmaman/miner
+ name = "plasmaman miner suit"
icon_state = "plasmamanMiner_suit"
+ armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20)
/obj/item/clothing/head/helmet/space/eva/plasmaman/miner
+ name = "plasmaman miner helmet"
icon_state = "plasmamanMiner_helmet0"
base_state = "plasmamanMiner_helmet"
+ armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20)
// MEDSCI
/obj/item/clothing/suit/space/eva/plasmaman/medical
+ name = "plasmaman medical suit"
icon_state = "plasmamanMedical_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/medical
+ name = "plasmaman medical helmet"
icon_state = "plasmamanMedical_helmet0"
base_state = "plasmamanMedical_helmet"
+/obj/item/clothing/suit/space/eva/plasmaman/medical/paramedic
+ name = "plasmaman paramedic suit"
+ icon_state = "plasmaman_Paramedic"
+ slowdown = 1
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/paramedic
+ name = "plasmaman paramedic helmet"
+ icon_state = "plasmaman_Paramedic_helmet0"
+ base_state = "plasmaman_Paramedic_helmet"
+
+/obj/item/clothing/suit/space/eva/plasmaman/medical/chemist
+ name = "plasmaman chemist suit"
+ icon_state = "plasmaman_Chemist"
+ slowdown = 1
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/chemist
+ name = "plasmaman chemist helmet"
+ icon_state = "plasmaman_Chemist_helmet0"
+ base_state = "plasmaman_Chemist_helmet"
+
+/obj/item/clothing/suit/space/eva/plasmaman/medical/cmo
+ name = "plasmaman chief medical officer suit"
+ icon_state = "plasmaman_CMO"
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/cmo
+ name = "plasmaman chief medical officer helmet"
+ icon_state = "plasmaman_CMO_helmet0"
+ base_state = "plasmaman_CMO_helmet"
+
/obj/item/clothing/suit/space/eva/plasmaman/science
+ name = "plasmaman scientist suit"
icon_state = "plasmamanScience_suit"
+ slowdown = 1
/obj/item/clothing/head/helmet/space/eva/plasmaman/science
+ name = "plasmaman scientist helmet"
icon_state = "plasmamanScience_helmet0"
base_state = "plasmamanScience_helmet"
+/obj/item/clothing/suit/space/eva/plasmaman/science/rd
+ name = "plasmaman research director suit"
+ icon_state = "plasmaman_RD"
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/science/rd
+ name = "plasmaman research director helmet"
+ icon_state = "plasmaman_RD_helmet0"
+ base_state = "plasmaman_RD_helmet"
+
//SECURITY
/obj/item/clothing/suit/space/eva/plasmaman/security
+ name = "plasmaman security suit"
icon_state = "plasmamanSecurity_suit"
+ slowdown = 1
+ armor = list(melee = 40, bullet = 15, laser = 35,energy = 5, bomb = 35, bio = 100, rad = 20)
/obj/item/clothing/head/helmet/space/eva/plasmaman/security
+ name = "plasmaman security helmet"
icon_state = "plasmamanSecurity_helmet0"
- base_state = "plasmamanSecurity_helmet"
\ No newline at end of file
+ base_state = "plasmamanSecurity_helmet"
+ armor = list(melee = 40, bullet = 15, laser = 35,energy = 5, bomb = 35, bio = 100, rad = 20)
+
+/obj/item/clothing/suit/space/eva/plasmaman/security/hos
+ name = "plasmaman head of security suit"
+ icon_state = "plasmaman_HoS"
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/security/hos
+ name = "plasmaman head of security helmet"
+ icon_state = "plasmaman_HoS_helmet0"
+ base_state = "plasmaman_HoS_helmet"
+
+/obj/item/clothing/suit/space/eva/plasmaman/security/hop
+ name = "plasmaman head of personnel suit"
+ icon_state = "plasmaman_HoP"
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/security/hop
+ name = "plasmaman head of personnel helmet"
+ icon_state = "plasmaman_HoP_helmet0"
+ base_state = "plasmaman_HoP_helmet"
+
+/obj/item/clothing/suit/space/eva/plasmaman/security/captain
+ name = "plasmaman captain suit"
+ icon_state = "plasmaman_Captain"
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/security/captain
+ name = "plasmaman captain helmet"
+ icon_state = "plasmaman_Captain_helmet0"
+ base_state = "plasmaman_Captain_helmet"
+
+//NUKEOPS
+
+/obj/item/clothing/suit/space/eva/plasmaman/nuclear
+ name = "blood red plasmaman suit"
+ icon_state = "plasmaman_Nukeops"
+ slowdown = 1
+ armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 60)
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/gun,/obj/item/ammo_casing,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/restraints/handcuffs)
+ siemens_coefficient = 0.6
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/nuclear
+ name = "blood red plasmaman helmet"
+ icon_state = "plasmaman_Nukeops_helmet0"
+ base_state = "plasmaman_Nukeops_helmet"
+ armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 35, bio = 100, rad = 60)
+ siemens_coefficient = 0.6
+ var/obj/machinery/camera/camera
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/nuclear/attack_self(mob/user)
+ if(camera)
+ ..(user)
+ else
+ camera = new /obj/machinery/camera(src)
+ camera.network = list("NUKE")
+ cameranet.removeCamera(camera)
+ camera.c_tag = user.name
+ user << "User scanned as [camera.c_tag]. Camera activated."
+
+/obj/item/clothing/head/helmet/space/eva/plasmaman/nuclear/examine(mob/user)
+ ..()
+ if(get_dist(user,src) <= 1)
+ user << "This helmet has a built-in camera. It's [camera ? "" : "in"]active."
\ No newline at end of file
diff --git a/code/modules/karma/karma.dm b/code/modules/karma/karma.dm
index 38c101b4370..feab27efbbc 100644
--- a/code/modules/karma/karma.dm
+++ b/code/modules/karma/karma.dm
@@ -201,6 +201,7 @@ You've gained [totalkarma] total karma in your time here.
"}
Unlock Grey -- 30KP
Unlock Vox -- 45KP
Unlock Slime People -- 45KP
+ Unlock Plasmaman -- 100KP
"}
if (2) // Karma Refunds
diff --git a/code/modules/mob/living/carbon/human/plasmaman/species.dm b/code/modules/mob/living/carbon/human/plasmaman/species.dm
index 29e54e8ab8f..53a0b839a88 100644
--- a/code/modules/mob/living/carbon/human/plasmaman/species.dm
+++ b/code/modules/mob/living/carbon/human/plasmaman/species.dm
@@ -2,10 +2,10 @@
name = "Plasmaman"
icobase = 'icons/mob/human_races/r_plasmaman_sb.dmi'
deform = 'icons/mob/human_races/r_plasmaman_pb.dmi' // TODO: Need deform.
- language = "Clatter"
+ //language = "Clatter"
unarmed_type = /datum/unarmed_attack/punch
- flags = IS_WHITELISTED /*| HAS_LIPS | HAS_TAIL | NO_EAT | NO_BREATHE | NON_GENDERED*/ | NO_BLOOD
+ flags = IS_WHITELISTED | NO_BLOOD
//default_mutations=list(SKELETON) // This screws things up
@@ -36,21 +36,45 @@
var/tank_slot_name = "suit storage"
switch(H.mind.assigned_role)
- if("Research Director","Scientist","Geneticist","Roboticist")
+ if("Scientist","Geneticist","Roboticist")
suit=/obj/item/clothing/suit/space/eva/plasmaman/science
helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/science
- if("Chief Engineer","Station Engineer")
- suit=/obj/item/clothing/suit/space/eva/plasmaman/engineer
- helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/engineer
+ if("Research Director")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/science/rd
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/science/rd
+ if("Station Engineer", "Mechanic")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/engineer/
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/engineer/
+ if("Chief Engineer")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/engineer/ce
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/engineer/ce
if("Atmospheric Technician")
suit=/obj/item/clothing/suit/space/eva/plasmaman/atmostech
helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/atmostech
- if("Head of Security","Warden","Detective","Security Officer")
- suit=/obj/item/clothing/suit/space/eva/plasmaman/security
- helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/security
- if("Chief Medical Officer","Medical Doctor","Paramedic","Chemist")
+ if("Warden","Detective","Security Officer")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/security/
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/security/
+ if("Head of Security")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/security/hos
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/security/hos
+ if("Captain")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/security/captain
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/security/captain
+ if("Head of Personnel")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/security/hop
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/security/hop
+ if("Medical Doctor")
suit=/obj/item/clothing/suit/space/eva/plasmaman/medical
helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/medical
+ if("Paramedic")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/medical/paramedic
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/paramedic
+ if("Chemist")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/medical/chemist
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/chemist
+ if("Chief Medical Officer")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/medical/cmo
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/medical/cmo
if("Bartender", "Chef")
suit=/obj/item/clothing/suit/space/eva/plasmaman/service
helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/service
@@ -72,9 +96,12 @@
if("Assistant")
suit=/obj/item/clothing/suit/space/eva/plasmaman/assistant
helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/assistant
- if("Clown","Mime")
- tank_slot=slot_r_hand
- tank_slot_name = "hand"
+ if("Clown")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/clown
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/clown
+ if("Mime")
+ suit=/obj/item/clothing/suit/space/eva/plasmaman/mime
+ helm=/obj/item/clothing/head/helmet/space/eva/plasmaman/mime
H.equip_or_collect(new suit(H), slot_wear_suit)
H.equip_or_collect(new helm(H), slot_head)
H.equip_or_collect(new/obj/item/weapon/tank/plasma/plasmaman(H), tank_slot) // Bigger plasma tank from Raggy.
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index 84718a73b4b..6b6be613a65 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index 29fb0e9ca57..c867306c98c 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index 44fc4719b5a..b6d1345cea5 100644
Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ
diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi
index 3a0bb886ef3..76128e4066f 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ
diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm
index 225e41432f2..8b414ee5ac4 100644
--- a/maps/cyberiad.dmm
+++ b/maps/cyberiad.dmm
@@ -2535,7 +2535,7 @@
"aWM" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker)
"aWN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/port)
"aWO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock{name = "Port Emergency Storage"; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/storage/emergency2)
-"aWP" = (/obj/structure/table,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/item/device/camera_film,/obj/item/device/camera,/turf/simulated/floor,/area/hallway/primary/port)
+"aWP" = (/obj/structure/table,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor,/area/hallway/primary/port)
"aWQ" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/hallway/primary/port)
"aWR" = (/obj/structure/table,/turf/simulated/floor,/area/hallway/primary/port)
"aWS" = (/obj/machinery/vending/cola,/turf/simulated/floor,/area/crew_quarters/locker)
@@ -2618,7 +2618,7 @@
"aYr" = (/turf/simulated/wall,/area/crew_quarters/locker)
"aYs" = (/obj/structure/closet/wardrobe/xenos,/turf/simulated/floor,/area/crew_quarters/locker)
"aYt" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/crew_quarters/locker)
-"aYu" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area/crew_quarters/locker)
+"aYu" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/vending/artvend,/turf/simulated/floor,/area/crew_quarters/locker)
"aYv" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/port)
"aYw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/storage/emergency2)
"aYx" = (/turf/simulated/floor,/area/crew_quarters/locker)
@@ -2773,11 +2773,11 @@
"bbq" = (/obj/structure/table,/turf/simulated/floor,/area/crew_quarters/locker)
"bbr" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker)
"bbs" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Locker Room East"; dir = 8; network = list("SS13")},/obj/machinery/light{dir = 4},/turf/simulated/floor,/area/crew_quarters/locker)
-"bbt" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/simulated/floor,/area/crew_quarters/locker)
+"bbt" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/crew_quarters/locker)
"bbu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/storage/emergency2)
"bbv" = (/obj/item/clothing/gloves/color/rainbow,/obj/item/clothing/shoes/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/under/rainbow,/turf/simulated/floor/plating,/area/maintenance/port)
"bbw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 4},/obj/effect/decal/cleanable/blood/oil,/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/port)
-"bbx" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/storage/fancy/crayons,/obj/item/weapon/storage/fancy/crayons,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker)
+"bbx" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/crew_quarters/locker)
"bby" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency2)
"bbz" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/simulated/floor/plating,/area/storage/emergency2)
"bbA" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor,/area/storage/tools)
@@ -4947,7 +4947,6 @@
"bRg" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/quartermaster/miningdock)
"bRh" = (/obj/item/weapon/beach_ball/holoball,/turf/simulated/floor/plating,/area/maintenance/apmaint)
"bRi" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/apmaint)
-"bRj" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor,/area/crew_quarters/locker)
"bRk" = (/turf/simulated/floor{icon_state = "bcarpet05"},/area/blueshield)
"bRl" = (/turf/simulated/floor/wood,/area/blueshield)
"bRm" = (/obj/machinery/photocopier,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/wood,/area/blueshield)
@@ -13145,7 +13144,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCyaTuaTvaHcaHcaHcaHcaTwaTuaCyaHeayaaTxaTyaTzaTAaTBaTCaTCaTDaySaTEaRHaTFaTGaRJaTHaTIaTJaTKaTKaYgaTLaTLaTLaTMaTNaTNaTOaTPaTQaTKaTKaTRaTSaTTaTUaTVaTVaTWaTVaTXaTSaTSaTSaTYaSbaScaSdaSeaSeaSeaSeaTZaSeaSeaSeaSeaSeaSeaUaaUbaUcaUdaUeaUfaUgaUhaUiaUjaUkaUkaUkaUlaUmaUmaUmaUnaSEaSEaSEaUoaUpaSEaPjaUqaUraSJaSJaUsaSJaUtaUuaSMaUvbTcaUwaUxaUyaUzaUAbTcaUBaUCaUDaUEaUFaUGbTYbWQaUIbWQbTYbTYbTYbUmbTYbTYaPvaJubLLaUJaNRaNRaNRaUKaNRaULbLNbLNbLNbLNbLNbLNbLNaUMbLNaMvaMvaMuaMvaUNaUOaOeaUPaUQaURaUSaUTaUUaUVaUWaUXaaaaaaaaaaaaaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaGbayaaTzaAPaGdaUYaUZaVaaVbaGdaAPaVcaVdayaaVeaPTaTzaVfaVgaTCaTCaTDaySaVhaRHaDyaTGaRJaViaVjaVkaRLaRLaVlaVmaVnaRLaVoaVpaVqaVpaVraVsaVpaVpaVtaVpaVpaVuaVvaVpaVwaVpaVxaRLaRLaRLaVyaVzaVAaVBaVCaVDaVCaVEaVFaVEaVEaVEaVEaVEaVEaVGaVHaVIaVIaVIaVIaVJaVIaVKaVLaVIaVIaVMaVNaVOaVOaVOaVOaVOaVOaVOaVPaSEaSEaPjaVQaVRaVSaVTaVTaVUaVVaUuaSMaVWbTcbTcbTcbTcbTcaVXbTcaVYaVZaWaaWbaQVaWcbTYaWdaWeaWfaWgaWhaWiaWjaWkbTYaPvaJubLLaWlaWmaNRaWnaWoaNRaWpaWpbLLaWqaWraWsaOeaWtaWuaWvaMvaMvaWwaWxaOeaWyaOeaWzaUQaURaWAaWBaUQaUQaWCaWDaaaaaaaaaaaaaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaySaDwaTuaPSaERaDyaDyaESaPSaTuaPSaWEaWFaWGaWHaDwaWIaWIaREaWIaRFaySaWJaRHaDyaySaPYaPYaWKaYraYraYraYraYraYraWLaWMaYraYraYraYraYraYraWNberaZYaZYaWOaZYaZYaZYaWRaWPaWTaWUaWQaWVaPYaWWaWWaWXaWXaWXbXMbXNbXNbXNbXNbXNbXNbXNbXObYMbYmcbAbYmcbBcbBcbGcbDcbZcbYccwbXOccIbVYbVYbVYbVYbVYbVYccJaXkaXkaXkaPjaXlaXmaXnaXnaXnaXnaXoaKyaXpaXqaXraXsaXtaXuaXvaXwbTcbTcaXxccOcencdjcfnbTYaXAaXBaXCaXCaXCaXCaXDaXEbTYaXFaJubLLaXGaNRaWnaWnaWoaWnaNRaXHbLLaXIaXJaXKaOeaMvaXLaXMaXNaXNaXOaXPaXQaXRcfoaXSaXTaXUaXVaUSaUQaUQaXWaWDaaaaaaaaaaaaaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCyaXXaDyaXYaXZaYaaYbaYcaYdaYbaYeaYfaYbaYbbcOaYhaYiaYjaYkaYkaYkaYlaYkaYmaYnaySaYoaYpaYqaYraYsaYtaYuaWSbRjaYxaYyaYzaYAaYBaYCaYDaYrbblaYvaZYbbzaYwaYFaYEaZYaZYaZYaYMaYMaYKaYLaYMaYMaYMaYNaSeaSjcfsaaaaaaaaaaaaaaaaaaaaabXOaYPaYQaYRaYSaYTaYUaYVaYWaYXaYYaYZbXOaaaaaaaaaaaaaaaaaaaaacftaZaaSEaZbaPjaZcaXmaXqaXqaXqaXqaXqaZdaZeaXqaXqaXqaXtaZfaZfaZgaZhaZiaZjaZkaZlaZmaZnbTYaZoaZpaZqaZraZraZqaZsaZtbTYaPvaZubLLaZvaZwaNRaWnaWoaNRaZxaZxbLLbLLaZybLLaOeaZzaWuaWxaZAaZAaZBaWxaOeaOeaOeaZCaUQaZDaZDaZEaZDaUQaZFaWDaaaaaaaaaaZGaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCyaXXaDyaXYaXZaYaaYbaYcaYdaYbaYeaYfaYbaYbbcOaYhaYiaYjaYkaYkaYkaYlaYkaYmaYnaySaYoaYpaYqaYraYsaYtaWSaYuaYxaYxaYyaYzaYAaYBaYCaYDaYrbblaYvaZYbbzaYwaYFaYEaZYaZYaZYaYMaYMaYKaYLaYMaYMaYMaYNaSeaSjcfsaaaaaaaaaaaaaaaaaaaaabXOaYPaYQaYRaYSaYTaYUaYVaYWaYXaYYaYZbXOaaaaaaaaaaaaaaaaaaaaacftaZaaSEaZbaPjaZcaXmaXqaXqaXqaXqaXqaZdaZeaXqaXqaXqaXtaZfaZfaZgaZhaZiaZjaZkaZlaZmaZnbTYaZoaZpaZqaZraZraZqaZsaZtbTYaPvaZubLLaZvaZwaNRaWnaWoaNRaZxaZxbLLbLLaZybLLaOeaZzaWuaWxaZAaZAaZBaWxaOeaOeaOeaZCaUQaZDaZDaZEaZDaUQaZFaWDaaaaaaaaaaZGaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDwaZHaZIaZHaZHaZHaZHaZHaZHaZIaZHaZHaZJaDyaZKaZLaDyaDyaZMaDyaZNaZOaZPaZQaZRaySaYpaYpaZSaYraZTaYxaYxaYxaYxaYxaYyaZUaYxaYxaYxaYxaYrbblaYGaZYaYIaYHaYJaYJbabbbyaZVaYMbadbaebafbagbahbaiaYNaSeaSjcfsaaaaaaaaaaaabXObXObXObXObajbakbalbambanbaobapbaqbarbasbatbXObXObXObXOaaaaaaaaaaaacftaZaaSEaSEbauaXqbavbawbaxaXqbaybazaJabaAbaBbaCaXqaXtdqXaZfbaDbaEaZfbaFbaGbaHbaIaZfcfubaKbaLaZqaZraZraZqbaMbaNbTYaPvbaObLLaXGaNRaWnaWnaWoaWnaNRaNRbaPbaQaNRbaRaOebaSbaTbaUaZAaZAbaVbaUbaWaOebaXbaYaUQbaZbaZbbabaZaUQaXWbbbbbcbbdbbdbbeaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaayabbfbbgbbgbbgbbgbbgbbgbbgaGjayaaySbbhbbibbjbbjbbjbbjbbjbbjcfvbbjbbjbbjaySaYpbblbbmaYrbbnaYxaYxbbobbpbbqbbrbboaYxaYxaYxbbsaYrbblaYvaZYaZXaZWaZZaZZbacbaaaZVaYMbbAbbBbbCbbDbbEbbFbbGbbHaSjcfwcgtaQqbXObXObXObbJbbKbbLbbMbbNbbNbbObbPbbNbbQbbNbbRbbSbbTbbUbbVbbWbXObXObXOaQqccIcgIaZaaSEaSEaPjbbYbavbaBbaxaXqbbZbcaaXqbcbbccbaCaXqaXtaZfaZfbcdbcebcfbcgbchbcibcjaZfcgVbaKbclaZqaZraZrbcmbcnbaNbTYaPvbcobLLbcpbcqbcraWnaWobcsaNRaNRbctaNRbcubcvaOebcwbcxbcyaZAaZAbczbcybcAaOebcBbaYaUQaUQaUQaUSaUQaUQbcCbcDbcEbcFbcGbcHaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcIbcIbcIbcIbcIbcIbcIbcIbcIbcIbcIbcIaabbcJaGeaDAbcKbbjbcLbcMbcNbcRbcPbcQbhlbcSbbjbcTbcUbcVbcWaYrbcXaYxaYxbbobbqbcYbbtbboaYxaYxbdabdbaYrbblaYvaZYaZYbbuaZYaZYaZYaZYaZYaYMbdcbbDbddbbDbdebbFaYNbdfaSjaSkaSkbdgcgWbdibXObdjbalbdkbbNbbNbbNbdlbdmbdnbdmbdobdpbdqbdmbdrbdsbdtbXObducgWbdvbdwbdxaZaaSEaSEbauaXqbdyaXqaXqaXqbdzbdAaXqbcbbdBbaCaXqaXtaZfaZfbdCbdDbdEbdFbdGbdHbcjbdIbTYbdJbclaZqaZraZraZqbcnbdKbTYbdLchpbLLchqbLLbLLbdMaWobdNbdOaNRbdPbdQaRlbdRcfobdSbdTbdUbdVbdVbdWbdXbdYcfobdZbeaaUQbebaUQaUSaUQaUQbecbedbbcbbdbbdbeeaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaKPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa