From 875a4fd8939de8697fb672ed1da9797e1847ea31 Mon Sep 17 00:00:00 2001 From: Techhead0 Date: Wed, 13 May 2015 04:07:01 -0400 Subject: [PATCH] Moves equip_survival_gear into job controller, species gear into datums. --- code/game/jobs/job/assistant.dm | 1 - code/game/jobs/job/captain.dm | 2 -- code/game/jobs/job/civilian.dm | 11 ----------- code/game/jobs/job/civilian_chaplain.dm | 1 - code/game/jobs/job/engineering.dm | 3 --- code/game/jobs/job/medical.dm | 6 ------ code/game/jobs/job/science.dm | 4 ---- code/game/jobs/job/security.dm | 4 ---- code/game/jobs/job_controller.dm | 19 ++----------------- .../carbon/human/species/outsider/vox.dm | 13 +++++++++++++ .../carbon/human/species/station/station.dm | 8 ++++++++ 11 files changed, 23 insertions(+), 49 deletions(-) diff --git a/code/game/jobs/job/assistant.dm b/code/game/jobs/job/assistant.dm index a5a4a4db0d..def0a007f7 100644 --- a/code/game/jobs/job/assistant.dm +++ b/code/game/jobs/job/assistant.dm @@ -16,7 +16,6 @@ if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - H.species.equip_survival_gear(H) return 1 /datum/job/assistant/get_access() diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index cc9f3fb4d3..28240dbb5b 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -32,7 +32,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/caphat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else @@ -88,7 +87,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hop(H), slot_belt) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand) else diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index f42e27dbde..e5ef21856e 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -23,7 +23,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/bartender(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/bar(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -51,7 +50,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/pda/chef(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -84,7 +82,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/hydroponics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_hyd(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) return 1 @@ -113,7 +110,6 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/clipboard(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 @@ -139,7 +135,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/cargo(H), slot_belt) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) return 1 @@ -169,7 +164,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/crowbar(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/weapon/storage/bag/ore(H), slot_l_store) @@ -198,7 +192,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/clown(H), slot_back) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/clown(H), slot_belt) @@ -238,7 +231,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/mime(H), slot_wear_mask) H.equip_to_slot_or_del(new /obj/item/clothing/head/beret(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/suit/suspenders(H), slot_wear_suit) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing(H), slot_l_hand) @@ -274,7 +266,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/janitor(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/janitor(H), slot_belt) - H.species.equip_survival_gear(H) return 1 @@ -301,7 +292,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/librarian(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/weapon/barcodescanner(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 @@ -334,7 +324,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/big(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/device/pda/lawyer(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_l_hand) - H.species.equip_survival_gear(H) H.implant_loyalty(H) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index d85d1d5e40..a9f441dd22 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -22,7 +22,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chaplain(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/device/pda/chaplain(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) - H.species.equip_survival_gear(H) spawn(0) var/religion_name = "Christianity" var/new_religion = sanitize(input(H, "You are the crew services officer. Would you like to change your religion? Default is Christianity, in SPACE.", "Name change", religion_name), MAX_NAME_LEN) diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 2d47694b03..644c2fc1f8 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -35,7 +35,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/white(H), slot_head) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) - H.species.equip_survival_gear(H) return 1 @@ -68,7 +67,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/device/t_scanner(H), slot_r_store) H.equip_to_slot_or_del(new /obj/item/device/pda/engineering(H), slot_l_store) - H.species.equip_survival_gear(H) return 1 @@ -98,5 +96,4 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/atmos(H), slot_l_store) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/atmostech/(H), slot_belt) - H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index f96494d5e7..5b6fca11b6 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -30,7 +30,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/cmo(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) - H.species.equip_survival_gear(H) return 1 H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) @@ -90,7 +89,6 @@ else H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -123,7 +121,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/chemistry(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_chem(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/chemist(H), slot_wear_suit) return 1 @@ -153,7 +150,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/genetics(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_gen(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/genetics(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -189,7 +185,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) @@ -228,5 +223,4 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/medical/emt(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_l_store) - H.species.equip_survival_gear(H) return 1 diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 1f662c1ad0..dc0252de53 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -32,7 +32,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 @@ -64,7 +63,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -96,7 +94,6 @@ if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_tox(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat/science(H), slot_wear_suit) return 1 @@ -125,6 +122,5 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/roboticist(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/storage/toolbox/mechanical(H), slot_l_hand) - H.species.equip_survival_gear(H) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) return 1 \ No newline at end of file diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index f3881ebb6d..e16a6af247 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -35,7 +35,6 @@ // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/gun(H), slot_s_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_store) else @@ -73,7 +72,6 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), slot_glasses) // H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else @@ -110,7 +108,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/detective(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/weapon/flame/lighter/zippo(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1)//Why cant some of these things spawn in his office? H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_l_hand) H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_r_store) @@ -151,7 +148,6 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/security(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_s_store) H.equip_to_slot_or_del(new /obj/item/device/flash(H), slot_l_store) - H.species.equip_survival_gear(H) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_hand) else diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index e2b87c6dc0..deab7e2e61 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -394,6 +394,8 @@ var/global/datum/controller/occupations/job_master //Equip job items. job.equip(H) job.apply_fingerprints(H) + H.species.equip_survival_gear(H) + //If some custom items could not be equipped before, try again now. for(var/thing in custom_equip_leftovers) var/datum/gear/G = gear_datums[thing] @@ -499,23 +501,6 @@ var/global/datum/controller/occupations/job_master else H << "\red Failed to locate a storage object on your mob, either you spawned with no arms and no backpack or this is a bug." - //TODO: Generalize this by-species - if(H.species) - if(H.species.name == "Tajara" || H.species.name == "Unathi") - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) - else if(H.species.name == "Vox") - H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask) - if(!H.back) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_back) - H.internal = H.back - else if(!H.r_hand) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_r_hand) - H.internal = H.r_hand - else if (!H.l_hand) - H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_l_hand) - H.internal = H.l_hand - H.internals.icon_state = "internal1" - if(istype(H)) //give humans wheelchairs, if they need them. var/obj/item/organ/external/l_foot = H.get_organ("l_foot") var/obj/item/organ/external/r_foot = H.get_organ("r_foot") diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index 07b52e6759..53e8dc0b15 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -55,11 +55,24 @@ return species_language.get_random_name(gender) /datum/species/vox/equip_survival_gear(var/mob/living/carbon/human/H) + H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask) + if(!H.back) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_back) + H.internal = H.back + else if(!H.r_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_r_hand) + H.internal = H.r_hand + else if (!H.l_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(H), slot_l_hand) + H.internal = H.l_hand + H.internals.icon_state = "internal1" + if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H), slot_r_hand) else H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival/vox(H.back), slot_in_backpack) + /datum/species/vox/can_shred(var/mob/living/carbon/human/H, var/ignore_intent) if(!H.mind || !H.mind.special_role) // Pariah check. return 0 diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index 3f4d462191..c49bdd5a5d 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -59,6 +59,10 @@ "Your scales bristle against the cold." ) +/datum/species/unathi/equip_survival_gear(var/mob/living/carbon/human/H) + ..() + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) + /datum/species/tajaran name = "Tajara" name_plural = "Tajaran" @@ -100,6 +104,10 @@ ) cold_discomfort_level = 275 +/datum/species/tajaran/equip_survival_gear(var/mob/living/carbon/human/H) + ..() + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H),slot_shoes,1) + /datum/species/skrell name = "Skrell" name_plural = "Skrell"