diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index 3b85dd5299b..d367671e34f 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -256,54 +256,3 @@ "Vox" = 'icons/mob/species/vox/head.dmi', "Vox Armalis" = 'icons/mob/species/armalis/head.dmi', ) - -/obj/item/clothing/suit/space/plasmaman - w_class = 3 - allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box/magazine,/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 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT - max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE - species_restricted = list("Plasmaman") - flags = STOPSPRESSUREDMAGE | PLASMAGUARD - - icon_state = "plasmaman_suit" - item_state = "plasmaman_suit" - -/obj/item/clothing/head/helmet/space/plasmaman - flags = HEADCOVERSEYES | BLOCKHAIR | STOPSPRESSUREDMAGE | PLASMAGUARD - species_restricted = list("Plasmaman") - - icon_state = "plasmaman_helmet0" - item_state = "plasmaman_helmet0" - var/brightness_on = 4 //luminosity when on - var/on = 0 - var/no_light=0 // Disable the light on the atmos suit - action_button_name = "Toggle Helmet Light" - - 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 - if(no_light) - return - on = !on - icon_state = "plasmaman_helmet[on]" -// item_state = "rig[on]-[_color]" - - if(on) user.SetLuminosity(user.luminosity + brightness_on) - else user.SetLuminosity(user.luminosity - brightness_on) - - pickup(mob/user) - if(on) - user.SetLuminosity(user.luminosity + brightness_on) -// user.UpdateLuminosity() - SetLuminosity(0) - - dropped(mob/user) - if(on) - user.SetLuminosity(user.luminosity - brightness_on) -// user.UpdateLuminosity() - SetLuminosity(brightness_on) \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm new file mode 100644 index 00000000000..69809cbaaf6 --- /dev/null +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -0,0 +1,170 @@ +// PLASMEN SHIT +// CAN'T WEAR UNLESS YOU'RE A PINK SKELLINGTON +/obj/item/clothing/suit/space/plasmaman + 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) + 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 + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT + max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE + species_restricted = list("Plasmaman") + flags = STOPSPRESSUREDMAGE | PLASMAGUARD + + icon_state = "plasmaman_suit" + item_state = "plasmaman_suit" + + var/next_extinguish=0 + var/extinguish_cooldown=10 SECONDS + var/extinguishes_left=10 // Yeah yeah, reagents, blah blah blah. This should be simple. + +/obj/item/clothing/suit/space/plasmaman/examine() + set src in view() + ..() + usr << "There are [extinguishes_left] extinguisher canisters left in this suit." +/obj/item/clothing/suit/space/plasmaman/proc/Extinguish(var/mob/user) + var/mob/living/carbon/human/H=user + if(extinguishes_left) + if(next_extinguish > world.time) + return + + next_extinguish = world.time + extinguish_cooldown + extinguishes_left-- + H << "Your suit automatically extinguishes the fire." + H.ExtinguishMob() + +/obj/item/clothing/head/helmet/space/plasmaman + flags = HEADCOVERSEYES | BLOCKHAIR | STOPSPRESSUREDMAGE | PLASMAGUARD + species_restricted = list("Plasmaman") + + icon_state = "plasmaman_helmet0" + item_state = "plasmaman_helmet0" + var/base_state = "plasmaman_helmet" + var/brightness_on = 4 //luminosity when on + var/on = 0 + var/no_light=0 // Disable the light on the atmos suit + action_button_name = "Toggle Helmet Light" + +/obj/item/clothing/head/helmet/space/plasmaman/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 + if(no_light) + 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) + +/obj/item/clothing/head/helmet/space/plasmaman/pickup(mob/user) + if(on) + user.SetLuminosity(user.luminosity + brightness_on) +// user.UpdateLuminosity() + SetLuminosity(0) + +/obj/item/clothing/head/helmet/space/plasmaman/dropped(mob/user) + if(on) + user.SetLuminosity(user.luminosity - brightness_on) +// user.UpdateLuminosity() + SetLuminosity(brightness_on) + + + +// ENGINEERING +/obj/item/clothing/suit/space/plasmaman/assistant + icon_state = "plasmamanAssistant_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/assistant + icon_state = "plasmamanAssistant_helmet0" + base_state = "plasmamanAssistant_helmet" + +/obj/item/clothing/suit/space/plasmaman/atmostech + icon_state = "plasmamanAtmos_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/atmostech + icon_state = "plasmamanAtmos_helmet0" + base_state = "plasmamanAtmos_helmet" + +/obj/item/clothing/suit/space/plasmaman/engineer + icon_state = "plasmamanEngineer_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/engineer + icon_state = "plasmamanEngineer_helmet0" + base_state = "plasmamanEngineer_helmet" + + +//SERVICE + +/obj/item/clothing/suit/space/plasmaman/botanist + icon_state = "plasmamanBotanist_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/botanist + icon_state = "plasmamanBotanist_helmet0" + base_state = "plasmamanBotanist_helmet" + +/obj/item/clothing/suit/space/plasmaman/chaplain + icon_state = "plasmamanChaplain_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/chaplain + icon_state = "plasmamanChaplain_helmet0" + base_state = "plasmamanChaplain_helmet" + +/obj/item/clothing/suit/space/plasmaman/service + icon_state = "plasmamanService_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/service + icon_state = "plasmamanService_helmet0" + base_state = "plasmamanService_helmet" + +/obj/item/clothing/suit/space/plasmaman/janitor + icon_state = "plasmamanJanitor_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/janitor + icon_state = "plasmamanJanitor_helmet0" + base_state = "plasmamanJanitor_helmet" + + +//CARGO + +/obj/item/clothing/suit/space/plasmaman/cargo + icon_state = "plasmamanCargo_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/cargo + icon_state = "plasmamanCargo_helmet0" + base_state = "plasmamanCargo_helmet" + +/obj/item/clothing/suit/space/plasmaman/miner + icon_state = "plasmamanMiner_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/miner + icon_state = "plasmamanMiner_helmet0" + base_state = "plasmamanMiner_helmet" + + +// MEDSCI + +/obj/item/clothing/suit/space/plasmaman/medical + icon_state = "plasmamanMedical_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/medical + icon_state = "plasmamanMedical_helmet0" + base_state = "plasmamanMedical_helmet" + +/obj/item/clothing/suit/space/plasmaman/science + icon_state = "plasmamanScience_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/science + icon_state = "plasmamanScience_helmet0" + base_state = "plasmamanScience_helmet" + + +//SECURITY + +/obj/item/clothing/suit/space/plasmaman/security + icon_state = "plasmamanSecurity_suit" + +/obj/item/clothing/head/helmet/space/plasmaman/security + icon_state = "plasmamanSecurity_helmet0" + base_state = "plasmamanSecurity_helmet" \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/plasmaman/species.dm b/code/modules/mob/living/carbon/human/plasmaman/species.dm index edb0a7c8539..e9a9c375777 100644 --- a/code/modules/mob/living/carbon/human/plasmaman/species.dm +++ b/code/modules/mob/living/carbon/human/plasmaman/species.dm @@ -36,20 +36,42 @@ var/tank_slot_name = "suit storage" switch(H.mind.assigned_role) - /* if("Research Director","Scientist","Geneticist","Roboticist") - suit=/obj/item/clothing/suit/space/vox/casual/science - helm=/obj/item/clothing/head/helmet/space/vox/casual/science - if("Chief Engineer","Station Engineer","Atmospheric Technician") - suit=/obj/item/clothing/suit/space/vox/casual/engineer - helm=/obj/item/clothing/head/helmet/space/vox/casual/engineer + suit=/obj/item/clothing/suit/space/plasmaman/science + helm=/obj/item/clothing/head/helmet/space/plasmaman/science + if("Chief Engineer","Station Engineer") + suit=/obj/item/clothing/suit/space/plasmaman/engineer + helm=/obj/item/clothing/head/helmet/space/plasmaman/engineer + if("Atmospheric Technician") + suit=/obj/item/clothing/suit/space/plasmaman/atmostech + helm=/obj/item/clothing/head/helmet/space/plasmaman/atmostech if("Head of Security","Warden","Detective","Security Officer") - suit=/obj/item/clothing/suit/space/vox/casual/security - helm=/obj/item/clothing/head/helmet/space/vox/casual/security + suit=/obj/item/clothing/suit/space/plasmaman/security + helm=/obj/item/clothing/head/helmet/space/plasmaman/security if("Chief Medical Officer","Medical Doctor","Paramedic","Chemist") - suit=/obj/item/clothing/suit/space/vox/casual/medical - helm=/obj/item/clothing/head/helmet/space/vox/casual/medical - */ // For now. + suit=/obj/item/clothing/suit/space/plasmaman/medical + helm=/obj/item/clothing/head/helmet/space/plasmaman/medical + if("Bartender", "Chef") + suit=/obj/item/clothing/suit/space/plasmaman/service + helm=/obj/item/clothing/head/helmet/space/plasmaman/service + if("Cargo Technician", "Quartermaster") + suit=/obj/item/clothing/suit/space/plasmaman/cargo + helm=/obj/item/clothing/head/helmet/space/plasmaman/cargo + if("Shaft Miner") + suit=/obj/item/clothing/suit/space/plasmaman/miner + helm=/obj/item/clothing/head/helmet/space/plasmaman/miner + if("Botanist") + suit=/obj/item/clothing/suit/space/plasmaman/botanist + helm=/obj/item/clothing/head/helmet/space/plasmaman/botanist + if("Chaplain") + suit=/obj/item/clothing/suit/space/plasmaman/chaplain + helm=/obj/item/clothing/head/helmet/space/plasmaman/chaplain + if("Janitor") + suit=/obj/item/clothing/suit/space/plasmaman/janitor + helm=/obj/item/clothing/head/helmet/space/plasmaman/janitor + if("Assistant") + suit=/obj/item/clothing/suit/space/plasmaman/assistant + helm=/obj/item/clothing/head/helmet/space/plasmaman/assistant if("Clown","Mime") tank_slot=slot_r_hand tank_slot_name = "hand" diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index c86825ad8d2..7597231249e 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 08d964794c4..3457e915399 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 8d52f5708b4..fa5a45504c7 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 0c707f21ded..4a318be3e75 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/paradise.dme b/paradise.dme index 40cb30de985..54d9c820841 100644 --- a/paradise.dme +++ b/paradise.dme @@ -994,6 +994,7 @@ #include "code\modules\clothing\spacesuits\ert.dm" #include "code\modules\clothing\spacesuits\miscellaneous.dm" #include "code\modules\clothing\spacesuits\ninja.dm" +#include "code\modules\clothing\spacesuits\plasmamen.dm" #include "code\modules\clothing\spacesuits\rig.dm" #include "code\modules\clothing\spacesuits\syndi.dm" #include "code\modules\clothing\spacesuits\void.dm"