diff --git a/code/game/jobs/job/central.dm b/code/game/jobs/job/central.dm index d5cba5be3d0..98a417dd07c 100644 --- a/code/game/jobs/job/central.dm +++ b/code/game/jobs/job/central.dm @@ -23,7 +23,7 @@ H.equip_or_collect(new /obj/item/device/pda/centcom(H), slot_wear_pda) H.equip_or_collect(new /obj/item/clothing/glasses/hud/security/sunglasses(H), slot_glasses) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_in_backpack) + give_kit(H) H.equip_or_collect(new /obj/item/weapon/gun/energy/pulse/pistol(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/implanter/dust(H), slot_in_backpack) @@ -65,7 +65,7 @@ H.equip_or_collect(new /obj/item/clothing/glasses/hud/security/sunglasses(H), slot_glasses) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_or_collect(new /obj/item/clothing/suit/space/deathsquad/officer(H), slot_wear_suit) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_in_backpack) + give_kit(H) H.equip_or_collect(new /obj/item/weapon/implanter/dust(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/gun/energy/pulse/pistol/m1911(H), slot_belt) H.equip_or_collect(new /obj/item/weapon/implanter/death_alarm(H), slot_in_backpack) diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index 0f33f91769e..09fccf6566a 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -18,14 +18,11 @@ if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_or_collect(new /obj/item/clothing/under/color/random(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/civilian/get_access() if(config.assistant_maint) return list(access_maint_tunnels) else - return list() \ No newline at end of file + return list() diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 2217daf0c0e..d7b2b3aaf6c 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -32,11 +32,8 @@ H.equip_or_collect(new /obj/item/clothing/head/hardhat/white(H), slot_head) H.equip_or_collect(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) H.equip_or_collect(new /obj/item/clothing/gloves/color/black/ce(H), slot_gloves) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) - H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) + give_kit(H) + H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) return 1 @@ -68,10 +65,7 @@ H.equip_or_collect(new /obj/item/clothing/head/hardhat(H), slot_head) H.equip_or_collect(new /obj/item/device/t_scanner(H), slot_r_store) H.equip_or_collect(new /obj/item/device/pda/engineering(H), slot_wear_pda) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -101,10 +95,7 @@ H.equip_or_collect(new /obj/item/clothing/shoes/workboots(H), slot_shoes) H.equip_or_collect(new /obj/item/weapon/storage/belt/utility/atmostech/(H), slot_belt) H.equip_or_collect(new /obj/item/device/pda/atmos(H), slot_wear_pda) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/mechanic @@ -133,10 +124,9 @@ H.equip_or_collect(new /obj/item/clothing/head/hardhat(H), slot_head) H.equip_or_collect(new /obj/item/device/t_scanner(H), slot_r_store) H.equip_or_collect(new /obj/item/device/pda/engineering(H), slot_wear_pda) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/pod_paint_bucket(H),slot_l_hand) else - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/pod_paint_bucket(H.back), slot_in_backpack) return 1 diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index b8e7f44ecb4..07ab4f9bc23 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -121,4 +121,10 @@ return 1 /datum/job/proc/is_position_available() - return (current_positions < total_positions) || (total_positions == -1) \ No newline at end of file + return (current_positions < total_positions) || (total_positions == -1) + +/datum/job/proc/give_kit(var/mob/living/carbon/human/H)//equips person with a survival kit depending on their species + var/obj/item/weapon/storage/box/kit = new + for(var/I in H.species.starting_gear) + new I(kit) + H.equip_or_collect(kit, slot_in_backpack) diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index a064f0247f5..4412640ca0d 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -29,11 +29,8 @@ H.equip_or_collect(new /obj/item/clothing/suit/storage/labcoat/cmo(H), slot_wear_suit) H.equip_or_collect(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) - H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) + give_kit(H) + H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) return 1 @@ -92,10 +89,7 @@ H.equip_or_collect(new /obj/item/device/pda/medical(H), slot_wear_pda) H.equip_or_collect(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -119,7 +113,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) 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) @@ -129,7 +122,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/chemist(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat/chemist(H), slot_wear_suit) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -150,7 +143,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) 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) @@ -160,7 +152,7 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/geneticist(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat/genetics(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/virologist @@ -190,10 +182,7 @@ H.equip_or_collect(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_or_collect(new /obj/item/clothing/suit/storage/labcoat/virologist(H), slot_wear_suit) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/psychiatrist @@ -230,10 +219,7 @@ 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_wear_pda) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/paramedic @@ -261,10 +247,9 @@ H.equip_or_collect(new /obj/item/clothing/mask/cigarette(H), slot_wear_mask) H.equip_or_collect(new /obj/item/clothing/head/soft/blue(H), slot_head) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H), slot_r_hand) H.equip_or_collect(new /obj/item/device/healthanalyzer(H), slot_l_hand) else - H.equip_or_collect(new /obj/item/weapon/storage/box/engineer(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/device/healthanalyzer(H.back), slot_in_backpack) return 1 diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index eb23d9a2427..6b6c96bacdd 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -26,7 +26,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/science(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) @@ -36,7 +35,7 @@ H.equip_to_slot_or_del(new /obj/item/device/pda/heads/rd(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/weapon/clipboard(H), slot_l_hand) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) return 1 @@ -64,7 +63,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 switch(H.backbag) - if(1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/science(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) @@ -73,7 +71,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/toxins(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat/science(H), slot_wear_suit) - H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -109,8 +107,5 @@ H.equip_or_collect(new /obj/item/device/pda/roboticist(H), slot_wear_pda) H.equip_or_collect(new /obj/item/clothing/suit/storage/labcoat(H), slot_wear_suit) H.equip_or_collect(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index b858225caf5..675b5fed346 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -33,11 +33,10 @@ H.equip_or_collect(new /obj/item/clothing/head/HoS(H), slot_head) H.equip_or_collect(new /obj/item/clothing/glasses/hud/security/sunglasses(H), slot_glasses) H.equip_or_collect(new /obj/item/weapon/gun/energy/gun(H), slot_s_store) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_l_store) else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) @@ -78,11 +77,10 @@ // H.equip_or_collect(new /obj/item/clothing/mask/gas(H), slot_wear_mask) //Grab one from the armory you donk H.equip_or_collect(new /obj/item/device/flash(H), slot_l_store) H.equip_or_collect(new /obj/item/weapon/gun/energy/gun/advtaser(H), slot_s_store) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_l_hand) else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_in_backpack) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H @@ -128,13 +126,11 @@ H.equip_or_collect(new /obj/item/clothing/suit/storage/det_suit(H), slot_wear_suit) H.equip_or_collect(new /obj/item/clothing/head/det_hat(H), slot_head) H.equip_or_collect(new /obj/item/weapon/lighter/zippo(H), slot_l_store) - + give_kit(H) if(H.backbag == 1)//Why cant some of these things spawn in his office? - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/storage/box/evidence(H), slot_l_hand) H.equip_or_collect(new /obj/item/device/detective_scanner(H), slot_r_store) else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/storage/box/evidence(H), slot_in_backpack) H.equip_or_collect(new /obj/item/device/detective_scanner(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) @@ -177,11 +173,10 @@ H.equip_or_collect(new /obj/item/clothing/gloves/color/black(H), slot_gloves) H.equip_or_collect(new /obj/item/weapon/gun/energy/gun/advtaser(H), slot_s_store) H.equip_or_collect(new /obj/item/device/flash(H), slot_l_store) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_l_hand) else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_in_backpack) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H @@ -215,10 +210,7 @@ H.equip_or_collect(new /obj/item/device/pda/medical(H), slot_wear_pda) H.equip_or_collect(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) H.equip_or_collect(new /obj/item/device/flashlight/pen(H), slot_s_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H L.implanted = 1 @@ -251,11 +243,10 @@ H.equip_or_collect(new /obj/item/clothing/gloves/color/black(H), slot_gloves) H.equip_or_collect(new /obj/item/weapon/gun/energy/gun/advtaser(H), slot_s_store) H.equip_or_collect(new /obj/item/device/flash(H), slot_l_store) + give_kit(H) if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_l_hand) else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/restraints/handcuffs(H), slot_in_backpack) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm index 22c114a0f2c..b72789c5ef1 100644 --- a/code/game/jobs/job/supervisor.dm +++ b/code/game/jobs/job/supervisor.dm @@ -19,7 +19,10 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack/captain(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_cap(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + var/obj/item/weapon/storage/box/kit = new + for(var/I in H.species.starting_gear) + new I(kit) + H.equip_or_collect(kit, slot_in_backpack) var/obj/item/clothing/under/U = new /obj/item/clothing/under/rank/captain(H) var/obj/item/clothing/accessory/medal/gold/captain/M = new /obj/item/clothing/accessory/medal/gold/captain(U) U.accessories += M @@ -80,7 +83,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/head/hopcap(H), slot_head) H.equip_or_collect(new /obj/item/clothing/shoes/brown(H), slot_shoes) @@ -90,6 +92,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) else H.equip_or_collect(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -124,13 +127,13 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/ntcane(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/lighter/zippo/nt_rep(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/clothing/under/rank/ntrep(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/suit/storage/ntrep(H), slot_wear_suit) H.equip_or_collect(new /obj/item/clothing/shoes/centcom(H), slot_shoes) H.equip_or_collect(new /obj/item/device/pda/heads/ntrep(H), slot_wear_pda) + give_kit(H) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H L.implanted = 1 @@ -164,14 +167,13 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack/security(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/clothing/gloves/combat(H), slot_gloves) H.equip_or_collect(new /obj/item/clothing/shoes/jackboots(H), slot_shoes) H.equip_or_collect(new /obj/item/clothing/glasses/hud/health/health_advanced, slot_glasses) H.equip_or_collect(new /obj/item/clothing/under/rank/blueshield(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/suit/armor/vest/blueshield(H), slot_wear_suit) H.equip_or_collect(new /obj/item/device/pda/heads/blueshield(H), slot_wear_pda) - + give_kit(H) if(H.backbag == 1) H.equip_or_collect(new /obj/item/weapon/storage/box/deathimp(H), slot_r_hand) H.equip_or_collect(new /obj/item/weapon/gun/energy/gun/blueshield(H), slot_l_hand) @@ -210,7 +212,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/clothing/under/suit_jacket/really_black(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/suit/judgerobe(H), slot_wear_suit) H.equip_or_collect(new /obj/item/clothing/shoes/centcom(H), slot_shoes) @@ -219,6 +220,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_or_collect(new /obj/item/device/pda/heads/magistrate(H), slot_wear_pda) H.equip_or_collect(new /obj/item/weapon/melee/classic_baton/telescopic(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/device/flash(H), slot_r_store) + give_kit(H) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H L.implanted = 1 @@ -255,10 +257,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) H.equip_or_collect(new /obj/item/weapon/storage/briefcase(H), slot_l_hand) H.equip_or_collect(new /obj/item/device/laser_pointer(H), slot_l_store) H.equip_or_collect(new /obj/item/device/flash(H), slot_r_store) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H) L.imp_in = H L.implanted = 1 diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm index 982d2be445f..7c149252cc9 100644 --- a/code/game/jobs/job/support.dm +++ b/code/game/jobs/job/support.dm @@ -24,13 +24,8 @@ H.equip_or_collect(new /obj/item/clothing/under/rank/bartender(H), slot_w_uniform) H.equip_or_collect(new /obj/item/device/pda/bar(H), slot_wear_pda) H.equip_or_collect(new /obj/item/weapon/storage/belt/bandolier/full(H), slot_in_backpack) - - if(H.backbag == 1) - var/obj/item/weapon/storage/box/survival/Barpack = new /obj/item/weapon/storage/box/survival(H) - H.equip_or_collect(Barpack, slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_in_backpack) - H.equip_or_collect(new /obj/item/toy/russian_revolver(H.back), slot_in_backpack) + give_kit(H) + H.equip_or_collect(new /obj/item/toy/russian_revolver(H.back), slot_in_backpack) H.dna.SetSEState(SOBERBLOCK,1) H.mutations += SOBER @@ -65,10 +60,7 @@ H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_or_collect(new /obj/item/clothing/head/chefhat(H), slot_head) H.equip_or_collect(new /obj/item/device/pda/chef(H), slot_wear_pda) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -89,7 +81,6 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 switch(H.backbag) - if(1) H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) if(2) H.equip_or_collect(new /obj/item/weapon/storage/backpack/botany(H), slot_back) if(3) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel_hyd(H), slot_back) if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) @@ -100,7 +91,7 @@ H.equip_or_collect(new /obj/item/clothing/suit/apron(H), slot_wear_suit) H.equip_or_collect(new /obj/item/device/analyzer/plant_analyzer(H), slot_s_store) H.equip_or_collect(new /obj/item/device/pda/botanist(H), slot_wear_pda) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -131,10 +122,7 @@ H.equip_or_collect(new /obj/item/device/pda/quartermaster(H), slot_wear_pda) H.equip_or_collect(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses) H.equip_or_collect(new /obj/item/weapon/clipboard(H), slot_l_hand) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -162,10 +150,7 @@ H.equip_or_collect(new /obj/item/clothing/under/rank/cargotech(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_or_collect(new /obj/item/device/pda/cargo(H), slot_wear_pda) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -200,9 +185,9 @@ H.equip_or_collect(new /obj/item/clothing/shoes/workboots(H), slot_shoes) H.equip_or_collect(new /obj/item/weapon/reagent_containers/food/pill/patch/styptic(H), slot_l_store) H.equip_or_collect(new /obj/item/device/flashlight/seclite(H), slot_r_store) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival_mining(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/mining_voucher(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/storage/bag/ore(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -224,8 +209,11 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 + var/obj/item/weapon/storage/box/kit = new + for(var/I in H.species.starting_gear) + new I(kit) H.equip_or_collect(new /obj/item/weapon/storage/backpack/clown(H), slot_back) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + H.equip_or_collect(kit, slot_in_backpack) if(H.gender == FEMALE) H.equip_or_collect(new /obj/item/clothing/mask/gas/sexyclown(H), slot_wear_mask) H.equip_or_collect(new /obj/item/clothing/under/sexyclown(H), slot_w_uniform) @@ -281,10 +269,10 @@ H.equip_or_collect(new /obj/item/clothing/gloves/color/white(H), slot_gloves) H.equip_or_collect(new /obj/item/clothing/head/beret(H), slot_head) H.equip_or_collect(new /obj/item/clothing/suit/suspenders(H), slot_wear_suit) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/toy/crayon/mime(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing(H), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/cane(H), slot_in_backpack) + give_kit(H) if(H.mind) H.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/conjure/mime_wall(null)) H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/mime/speak(null)) @@ -316,10 +304,7 @@ H.equip_or_collect(new /obj/item/clothing/under/rank/janitor(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) H.equip_or_collect(new /obj/item/device/pda/janitor(H), slot_wear_pda) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 @@ -352,7 +337,7 @@ H.equip_or_collect(new /obj/item/weapon/storage/bag/books(H), slot_l_hand) H.equip_or_collect(new /obj/item/weapon/barcodescanner(H), slot_r_store) H.equip_or_collect(new /obj/item/device/laser_pointer(H), slot_l_store) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) return 1 /datum/job/barber @@ -377,10 +362,7 @@ H.equip_or_collect(new /obj/item/device/radio/headset/headset_service(H), slot_l_ear) H.equip_or_collect(new /obj/item/clothing/under/barber(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) + give_kit(H) H.equip_or_collect(new /obj/item/weapon/storage/box/barber(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/weapon/storage/box/lip_stick(H.back), slot_in_backpack) return 1 diff --git a/code/game/jobs/job/support_chaplain.dm b/code/game/jobs/job/support_chaplain.dm index cec48fd834b..3716dc4cad0 100644 --- a/code/game/jobs/job/support_chaplain.dm +++ b/code/game/jobs/job/support_chaplain.dm @@ -23,11 +23,8 @@ H.equip_or_collect(new /obj/item/clothing/under/rank/chaplain(H), slot_w_uniform) H.equip_or_collect(new /obj/item/device/pda/chaplain(H), slot_wear_pda) H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes) - if(H.backbag == 1) - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand) - else - H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) - H.equip_or_collect(new /obj/item/device/camera/spooky(H.back), slot_in_backpack) + give_kit(H) + H.equip_or_collect(new /obj/item/device/camera/spooky(H.back), slot_in_backpack) spawn(0) var/religion_name = "Christianity" var/new_religion = sanitize(copytext(input(H, "You are the crew services officer. Would you like to change your religion? Default is Christianity, in SPACE.", "Name change", religion_name),1,MAX_NAME_LEN)) diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm index 12ba6cbce25..563e6ddd0b5 100644 --- a/code/game/objects/items/weapons/tanks/tank_types.dm +++ b/code/game/objects/items/weapons/tanks/tank_types.dm @@ -19,7 +19,7 @@ New() ..() - src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -51,12 +51,12 @@ /obj/item/weapon/tank/anesthetic/New() ..() - src.air_contents.oxygen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD + air_contents.oxygen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD var/datum/gas/sleeping_agent/trace_gas = new() trace_gas.moles = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD - src.air_contents.trace_gases += trace_gas + air_contents.trace_gases += trace_gas return /* @@ -77,8 +77,8 @@ /obj/item/weapon/tank/air/New() ..() - src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD - src.air_contents.nitrogen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD + air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD + air_contents.nitrogen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD return /* @@ -93,7 +93,7 @@ /obj/item/weapon/tank/plasma/New() ..() - src.air_contents.toxins = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.toxins = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) return @@ -103,16 +103,16 @@ if(istype(W, /obj/item/weapon/flamethrower)) var/obj/item/weapon/flamethrower/F = W if((!F.status)||(F.ptank)) return - src.master = F + master = F F.ptank = src user.unEquip(src) - src.loc = F + loc = F F.update_icon() return /obj/item/weapon/tank/plasma/full/New() ..() - src.air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return /obj/item/weapon/tank/plasma/plasmaman @@ -143,7 +143,7 @@ New() ..() - src.air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -169,7 +169,7 @@ New() ..() - src.air_contents.oxygen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.oxygen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return /* @@ -185,7 +185,7 @@ /obj/item/weapon/tank/nitrogen/New() ..() - src.air_contents.nitrogen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.nitrogen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) return /obj/item/weapon/tank/nitrogen/examine(mob/user) @@ -202,9 +202,30 @@ item_state = "emergency_vox" volume = 25 + New() + ..() + air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + return + +/obj/item/weapon/tank/emergency_oxygen/nitrogen + name = "emergency nitrogen tank" + desc = "An emergency tank designed specifically for Vox." + icon_state = "emergency_nitrogen" + volume = 3 New() ..() - src.air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) - src.air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) - return \ No newline at end of file + air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + +/obj/item/weapon/tank/emergency_oxygen/plasma + name = "emergency plasma tank" + desc = "An emergency tank designed specifically for Plasmamen." + icon_state = "emergency_p" + volume = 3 + + New() + ..() + air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) diff --git a/code/modules/mob/living/carbon/human/species/plasmaman.dm b/code/modules/mob/living/carbon/human/species/plasmaman.dm index bae949dd9af..2521371720a 100644 --- a/code/modules/mob/living/carbon/human/species/plasmaman.dm +++ b/code/modules/mob/living/carbon/human/species/plasmaman.dm @@ -26,6 +26,8 @@ "realizes the existential problem of being made out of plasma!", "shows their true colors, which happens to be the color of plasma!") + starting_gear = list(/obj/item/weapon/tank/emergency_oxygen/plasma, /obj/item/clothing/mask/breath, /obj/item/weapon/reagent_containers/hypospray/autoinjector) + /datum/species/plasmaman/say_filter(mob/M, message, datum/language/speaking) if(copytext(message, 1, 2) != "*") message = replacetext(message, "s", stutter("ss")) @@ -236,4 +238,4 @@ H.adjust_fire_stacks(0.5) H.IgniteMob() - return 1 \ No newline at end of file + return 1 diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 33aa58b94d4..7765fa97813 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -156,6 +156,7 @@ ) var/cyborg_type = "Cyborg" var/list/proc/species_abilities = list() + var/list/starting_gear = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/clothing/mask/breath, /obj/item/weapon/reagent_containers/hypospray/autoinjector) //for emergency box content at roundstart /datum/species/New() //If the species has eyes, they are the default vision organ diff --git a/code/modules/mob/living/carbon/human/species/station.dm b/code/modules/mob/living/carbon/human/species/station.dm index 0cef74044ce..798f5935d4c 100644 --- a/code/modules/mob/living/carbon/human/species/station.dm +++ b/code/modules/mob/living/carbon/human/species/station.dm @@ -328,6 +328,8 @@ "is holding their breath!", "is deeply inhaling oxygen!") + starting_gear = list(/obj/item/weapon/tank/emergency_oxygen/nitrogen, /obj/item/clothing/mask/breath, /obj/item/weapon/reagent_containers/hypospray/autoinjector) + /datum/species/vox/handle_death(var/mob/living/carbon/human/H) H.stop_tail_wagging(1) @@ -526,6 +528,8 @@ "is ripping out their own core!", "is turning a dull, brown color and melting into a puddle!") + starting_gear = list(/obj/item/weapon/reagent_containers/hypospray/autoinjector) + var/list/mob/living/carbon/human/recolor_list = list() species_abilities = list( @@ -793,6 +797,8 @@ "pulls out a secret stash of herbicide and takes a hearty swig!", "is pulling themselves apart!") + starting_gear = list(/obj/item/weapon/reagent_containers/hypospray/autoinjector) + /datum/species/diona/can_understand(var/mob/other) if(istype(other, /mob/living/simple_animal/diona)) return 1 @@ -897,6 +903,8 @@ "is frying their own circuits!", "is blocking their ventilation port!") + starting_gear = list(/obj/item/stack/cable_coil, /obj/item/weapon/weldingtool/mini) + species_abilities = list( /mob/living/carbon/human/proc/change_monitor ) diff --git a/icons/obj/tank.dmi b/icons/obj/tank.dmi index 6322fe65d12..66ad2ba488c 100644 Binary files a/icons/obj/tank.dmi and b/icons/obj/tank.dmi differ