diff --git a/code/datums/outfits/plasmamen.dm b/code/datums/outfits/plasmamen.dm
index 51bbf5a0f2f..ac6a53476fe 100644
--- a/code/datums/outfits/plasmamen.dm
+++ b/code/datums/outfits/plasmamen.dm
@@ -3,8 +3,6 @@
head = /obj/item/clothing/head/helmet/space/plasmaman
uniform = /obj/item/clothing/under/plasmaman
- r_hand = /obj/item/tank/internals/plasmaman/belt/full
- mask = /obj/item/clothing/mask/breath
/datum/outfit/plasmaman/bar
name = "Plasmaman Bartender"
diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm
index b9fdb805cb2..9f77a378a8b 100644
--- a/code/modules/client/preference/preferences.dm
+++ b/code/modules/client/preference/preferences.dm
@@ -199,6 +199,8 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts
dat += "Species: [active_character.species]
"
if(active_character.species == "Vox") // Purge these bastards
dat += "N2 Tank: [active_character.speciesprefs ? "Large N2 Tank" : "Specialized N2 Tank"]
"
+ if(active_character.species == "Plasmaman")
+ dat += "Plasma Tank: [active_character.speciesprefs ? "Large Plasma Tank" : "Specialized Plasma Tank"]
"
if(active_character.species == "Grey")
dat += "Wingdings: Set in disabilities
"
dat += "Voice Translator: [active_character.speciesprefs ? "Yes" : "No"]
"
diff --git a/code/modules/mob/living/carbon/human/species/plasmaman.dm b/code/modules/mob/living/carbon/human/species/plasmaman.dm
index 6ce6a5ed6af..671fec6055a 100644
--- a/code/modules/mob/living/carbon/human/species/plasmaman.dm
+++ b/code/modules/mob/living/carbon/human/species/plasmaman.dm
@@ -171,3 +171,23 @@
return FALSE //Handling reagent removal on our own. Prevents plasma from dealing toxin damage to Plasmamen.
return ..()
+
+/datum/species/plasmaman/after_equip_job(datum/job/J, mob/living/carbon/human/H)
+ if(!H.mind || !H.mind.assigned_role || H.mind.assigned_role != "Clown" && H.mind.assigned_role != "Mime")
+ H.unEquip(H.wear_mask)
+
+ H.equip_or_collect(new /obj/item/clothing/mask/breath(H), slot_wear_mask)
+ var/tank_pref = H.client && H.client.prefs ? H.client.prefs.active_character.speciesprefs : null
+ var/obj/item/tank/internal_tank
+ if(tank_pref) //Diseasel, here you go
+ internal_tank = new /obj/item/tank/internals/plasmaman/full(H)
+ else
+ internal_tank = new /obj/item/tank/internals/plasmaman/belt/full(H)
+ if(!H.equip_to_appropriate_slot(internal_tank) && !H.put_in_any_hand_if_possible(internal_tank))
+ H.unEquip(H.l_hand)
+ H.equip_or_collect(internal_tank, slot_l_hand)
+ to_chat(H, "Could not find an empty slot for internals! Please report this as a bug.")
+ stack_trace("Failed to equip plasmaman with a tank, with the job [J.type]")
+ H.internal = internal_tank
+ to_chat(H, "You are now running on plasma internals from [internal_tank]. Oxygen is toxic to your species, so you must breathe plasma only.")
+ H.update_action_buttons_icon()