diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index 839878c098d..2452ac7fbd8 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -23,6 +23,12 @@ /datum/job/proc/equip(var/mob/living/carbon/human/H) return 1 +/datum/job/proc/equip_backpack(var/mob/living/carbon/human/H) + switch(H.backbag) + if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(H), slot_back) + if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) + if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) + /datum/job/proc/equip_survival(var/mob/living/carbon/human/H) if(!H) return 0 H.species.equip_survival_gear(H,0) diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index 2260484e47c..70a1561864d 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -13,11 +13,15 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 return 1 - + equip_survival(var/mob/living/carbon/human/H) if(!H) return 0 return 1 + equip_backpack(var/mob/living/carbon/human/H) + if(!H) return 0 + return 1 + /datum/job/ai/is_position_available() return (empty_playable_ai_cores.len != 0) @@ -41,3 +45,7 @@ equip_survival(var/mob/living/carbon/human/H) if(!H) return 0 return 1 + + equip_backpack(var/mob/living/carbon/human/H) + if(!H) return 0 + return 1 diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index b78b802e911..b83da181b9e 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -393,6 +393,7 @@ var/global/datum/controller/occupations/job_master spawn_in_storage += thing //Equip job items. job.equip(H) + job.equip_backpack(H) job.equip_survival(H) job.apply_fingerprints(H)