From c7141d8e2ec60e301d387bebbece5efbe95b4409 Mon Sep 17 00:00:00 2001 From: BlueNexus Date: Sun, 23 Aug 2015 17:32:10 +0100 Subject: [PATCH 1/5] PDA Slot Currently doesn't actually allow PDA's into the PDA slot --- code/_onclick/hud/_defines.dm | 1 + code/game/jobs/job/captain.dm | 4 ++-- code/game/jobs/job/civilian.dm | 22 +++++++++--------- code/game/jobs/job/civilian_chaplain.dm | 2 +- code/game/jobs/job/engineering.dm | 6 ++--- code/game/jobs/job/medical.dm | 12 +++++----- code/game/jobs/job/science.dm | 8 +++---- code/game/jobs/job/security.dm | 8 +++---- code/game/jobs/job_controller.dm | 2 +- code/game/objects/items.dm | 9 +++++++ code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/modules/admin/verbs/freeze.dm | 4 +--- code/modules/mob/inventory.dm | 1 + .../mob/living/carbon/human/human_defines.dm | 1 + .../mob/living/carbon/human/inventory.dm | 12 ++++++++++ .../carbon/human/species/species_hud.dm | 4 +++- code/modules/mob/update_icons.dm | 3 +++ code/setup.dm | 2 ++ icons/mob/screen1_Midnight.dmi | Bin 138030 -> 138480 bytes 19 files changed, 66 insertions(+), 37 deletions(-) diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 900e89e7e75d1..d76bb5d2d348e 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -38,6 +38,7 @@ #define ui_alien_head "4:12,1:5" //aliens #define ui_alien_oclothing "5:14,1:5" //aliens +#define ui_pda "11:22,1:5" #define ui_inv1 "7,1:5" //borgs #define ui_inv2 "8,1:5" //borgs diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index 4b9d72ff51c0a..d2344f83c408a 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -27,7 +27,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(H.age>49) U.accessories += new /obj/item/clothing/accessory/medal/gold/captain(U) H.equip_to_slot_or_del(U, slot_w_uniform) - H.equip_to_slot_or_del(new /obj/item/device/pda/captain(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/captain(H), slot_wear_pda) 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) @@ -83,7 +83,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) 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.equip_to_slot_or_del(new /obj/item/device/pda/heads/hop(H), slot_wear_pda) 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 26f5c020201ec..e093f564e8c9f 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -22,7 +22,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_service(H), slot_l_ear) 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.equip_to_slot_or_del(new /obj/item/device/pda/bar(H), slot_wear_pda) return 1 @@ -49,7 +49,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/suit/chef(H), slot_wear_suit) 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.equip_to_slot_or_del(new /obj/item/device/pda/chef(H), slot_wear_pda) return 1 @@ -77,7 +77,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/gloves/botanic_leather(H), slot_gloves) H.equip_to_slot_or_del(new /obj/item/clothing/suit/apron(H), slot_wear_suit) H.equip_to_slot_or_del(new /obj/item/device/analyzer/plant_analyzer(H), slot_s_store) - H.equip_to_slot_or_del(new /obj/item/device/pda/botanist(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/botanist(H), slot_wear_pda) switch(H.backbag) 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) @@ -106,7 +106,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_cargo(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/cargo(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/quartermaster(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/quartermaster(H), slot_wear_pda) // 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) @@ -133,7 +133,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_cargo(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/cargotech(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/cargo(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/cargo(H), slot_wear_pda) // H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) return 1 @@ -161,7 +161,7 @@ if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_eng(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/miner(H), slot_w_uniform) - H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_wear_pda) 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) if(H.backbag == 1) @@ -198,7 +198,7 @@ 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/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) + H.equip_to_slot_or_del(new /obj/item/device/pda/clown(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask) H.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/food/snacks/grown/banana(H), slot_in_backpack) H.equip_to_slot_or_del(new /obj/item/weapon/bikehorn(H), slot_in_backpack) @@ -230,7 +230,7 @@ if(H.backbag == 3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/mime(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/mime(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/mime(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(H), slot_gloves) 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) @@ -269,7 +269,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_service(H), slot_l_ear) 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.equip_to_slot_or_del(new /obj/item/device/pda/janitor(H), slot_wear_pda) return 1 @@ -293,7 +293,7 @@ equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_to_slot_or_del(new /obj/item/clothing/under/suit_jacket/red(H), slot_w_uniform) - H.equip_to_slot_or_del(new /obj/item/device/pda/librarian(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/librarian(H), slot_wear_pda) 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) return 1 @@ -326,7 +326,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/internalaffairs(H), slot_wear_suit) 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/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/device/pda/lawyer(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_l_hand) H.implant_loyalty(H) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index a9f441dd2247f..0cd2b2b771c5b 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -20,7 +20,7 @@ var/obj/item/weapon/storage/bible/B = new /obj/item/weapon/storage/bible(H) //BS12 EDIT H.equip_to_slot_or_del(B, slot_l_hand) 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/device/pda/chaplain(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes) spawn(0) var/religion_name = "Christianity" diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 5c86336cb6cf1..fa03ac8a25ecd 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -30,7 +30,7 @@ if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_eng(H), slot_back) if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chief_engineer(H), slot_w_uniform) - H.equip_to_slot_or_del(new /obj/item/device/pda/heads/ce(H), slot_l_store) + H.equip_to_slot_or_del(new /obj/item/device/pda/heads/ce(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/workboots(H), slot_shoes) 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) @@ -70,7 +70,7 @@ 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/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.equip_to_slot_or_del(new /obj/item/device/pda/engineering(H), slot_wear_pda) return 1 equip_survival(var/mob/living/carbon/human/H) @@ -102,7 +102,7 @@ if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/atmospheric_technician(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/workboots(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/device/pda/atmos(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/atmostech/(H), slot_belt) return 1 diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 662db49c19780..bf484de6100df 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -28,7 +28,7 @@ if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chief_medical_officer(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/cmo(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/heads/cmo(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) 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) @@ -89,7 +89,7 @@ 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.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store) return 1 @@ -116,7 +116,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_med(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chemist(H), slot_w_uniform) 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_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/chemist(H), slot_wear_pda) switch(H.backbag) 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) @@ -145,7 +145,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_medsci(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/geneticist(H), slot_w_uniform) 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/geneticist(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/geneticist(H), slot_wear_pda) switch(H.backbag) 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) @@ -184,7 +184,7 @@ 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/shoes/laceup(H), slot_shoes) - 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/pda/medical(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/toggle/labcoat(H), slot_wear_suit) @@ -222,7 +222,7 @@ else H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/paramedic(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.equip_to_slot_or_del(new /obj/item/device/pda/medical(H), slot_wear_pda) return 1 equip_survival(var/mob/living/carbon/human/H) diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index a7d54284bfc3c..b18281f23c1a7 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -26,7 +26,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/rd(H), slot_l_ear) 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/under/rank/research_director(H), slot_w_uniform) - H.equip_to_slot_or_del(new /obj/item/device/pda/heads/rd(H), slot_belt) + 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/weapon/clipboard(H), slot_l_hand) switch(H.backbag) if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/toxins(H), slot_back) @@ -58,7 +58,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sci(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/scientist(H), slot_w_uniform) 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/science(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_wear_pda) switch(H.backbag) 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) @@ -87,7 +87,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sci(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/scientist(H), slot_w_uniform) 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/science(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_wear_pda) switch(H.backbag) 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) @@ -118,7 +118,7 @@ if(H.backbag == 3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_norm(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/roboticist(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/roboticist(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/roboticist(H), slot_wear_pda) H.equip_to_slot_or_del(new /obj/item/weapon/storage/toolbox/mechanical(H), slot_l_hand) 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 cb7a7d23f4c81..c3bab29da74a0 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -30,7 +30,7 @@ H.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/hos(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_security(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(H), slot_shoes) - H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hos(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hos(H), slot_wear_pda) 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/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) @@ -67,7 +67,7 @@ if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/warden(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(H), slot_shoes) - H.equip_to_slot_or_del(new /obj/item/device/pda/warden(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/warden(H), slot_wear_pda) 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/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 @@ -105,7 +105,7 @@ if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/det(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/detective(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/detective(H), slot_wear_pda) 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) if(H.backbag == 1)//Why cant some of these things spawn in his office? @@ -145,7 +145,7 @@ if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/security(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(H), slot_shoes) - H.equip_to_slot_or_del(new /obj/item/device/pda/security(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda/security(H), slot_wear_pda) 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) if(H.backbag == 1) diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 447e82d3b641d..53756edd38a52 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -554,7 +554,7 @@ var/global/datum/controller/occupations/job_master H.equip_to_slot_or_del(C, slot_wear_id) - H.equip_to_slot_or_del(new /obj/item/device/pda(H), slot_belt) + H.equip_to_slot_or_del(new /obj/item/device/pda(H), slot_wear_pda) if(locate(/obj/item/device/pda,H)) var/obj/item/device/pda/pda = locate(/obj/item/device/pda,H) pda.owner = H.real_name diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 2a68cb87f7fd7..845b17addd1df 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -259,6 +259,7 @@ var/list/global/slot_flags_enumeration = list( "[slot_w_uniform]" = SLOT_ICLOTHING, "[slot_wear_id]" = SLOT_ID, "[slot_tie]" = SLOT_TIE, + "[slot_wear_pda]" = SLOT_PDA, ) //the mob M is attempting to equip this item into the slot passed through as 'slot'. Return 1 if it can do this and 0 if it can't. @@ -341,6 +342,14 @@ var/list/global/slot_flags_enumeration = list( allow = 1 if(!allow) return 0 + if(slot_wear_pda) //PDA Slot + if(!istype(src, /obj/item/device/pda)) + return 0 + if(!H.w_uniform && (slot_w_uniform in mob_equip)) + if(!disable_warning) + H << "\red You need a jumpsuit before you can attach this [name]." + return 0 + return 1 if(slot_tie) if(!H.w_uniform && (slot_w_uniform in mob_equip)) if(!disable_warning) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 364392222ab6e..b01ecac27f9bc 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -10,7 +10,7 @@ var/global/list/obj/item/device/pda/PDAs = list() icon_state = "pda" item_state = "electronic" w_class = 2.0 - slot_flags = SLOT_ID | SLOT_BELT + slot_flags = SLOT_ID | SLOT_BELT | SLOT_PDA //Main variables var/owner = null diff --git a/code/modules/admin/verbs/freeze.dm b/code/modules/admin/verbs/freeze.dm index 25a98c3ab6979..dc77ea453cd7b 100644 --- a/code/modules/admin/verbs/freeze.dm +++ b/code/modules/admin/verbs/freeze.dm @@ -25,12 +25,10 @@ log_admin("\blue [key_name(usr)] has unfrozen [key_name(M)].") message_admins("\blue [key_name_admin(usr)] has unfrozen [key_name_admin(M)].") M.Paralyse(0) - M.setParalysis(0) + M.SetParalysis(0) M.blinded = 0 M.lying = 0 M.stat = 0 - M.SetStunned(0) //should fix the issue with slowdown - M.SetWeakened(0) //should fix the issue with slowdown return return diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 1115826be800b..dc3b3277704f8 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -269,6 +269,7 @@ var/list/slot_equipment_priority = list( \ if(hasvar(src,"head")) if(src:head) items += src:head if(hasvar(src,"shoes")) if(src:shoes) items += src:shoes if(hasvar(src,"wear_id")) if(src:wear_id) items += src:wear_id + if(hasvar(src,"wear_pda")) if(src:wear_pda) items += src:wear_pda if(hasvar(src,"wear_mask")) if(src:wear_mask) items += src:wear_mask if(hasvar(src,"wear_suit")) if(src:wear_suit) items += src:wear_suit // if(hasvar(src,"w_radio")) if(src:w_radio) items += src:w_radio commenting this out since headsets go on your ears now PLEASE DON'T BE MAD KEELIN diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index a77a5e3e5eb8f..484e017151419 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -53,6 +53,7 @@ var/obj/item/l_ear = null var/obj/item/r_ear = null var/obj/item/wear_id = null + var/obj/item/wear_pda = null var/obj/item/r_store = null var/obj/item/l_store = null var/obj/item/s_store = null diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index c3b115e4f92ff..e335625389def 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -88,6 +88,8 @@ This saves us from having to call add_fingerprint() any time something is put in return 1 if(slot_tie) return 1 + if(slot_wear_pda) + return 1 /mob/living/carbon/human/u_equip(obj/W as obj) if(!W) return 0 @@ -104,6 +106,8 @@ This saves us from having to call add_fingerprint() any time something is put in drop_from_inventory(l_store) if (wear_id) drop_from_inventory(wear_id) + if (wear_pda) + drop_from_inventory(wear_pda) if (belt) drop_from_inventory(belt) w_uniform = null @@ -155,6 +159,9 @@ This saves us from having to call add_fingerprint() any time something is put in else if (W == wear_id) wear_id = null update_inv_wear_id() + else if (W == wear_pda) + wear_pda = null + update_inv_wear_pda() else if (W == r_store) r_store = null update_inv_pockets() @@ -233,6 +240,10 @@ This saves us from having to call add_fingerprint() any time something is put in src.wear_id = W W.equipped(src, slot) update_inv_wear_id(redraw_mob) + if(slot_wear_pda) + src.wear_pda = W + W.equipped(src, slot) + update_inv_wear_pda(redraw_mob) if(slot_l_ear) src.l_ear = W if(l_ear.slot_flags & SLOT_TWOEARS) @@ -349,6 +360,7 @@ This saves us from having to call add_fingerprint() any time something is put in if(slot_l_hand) return l_hand if(slot_r_hand) return r_hand if(slot_wear_id) return wear_id + if(slot_wear_pda) return wear_pda if(slot_glasses) return glasses if(slot_gloves) return gloves if(slot_head) return head diff --git a/code/modules/mob/living/carbon/human/species/species_hud.dm b/code/modules/mob/living/carbon/human/species/species_hud.dm index 3a8b133f585a4..c34e4810a7853 100644 --- a/code/modules/mob/living/carbon/human/species/species_hud.dm +++ b/code/modules/mob/living/carbon/human/species/species_hud.dm @@ -27,6 +27,7 @@ "head" = list("loc" = ui_head, "name" = "Hat", "slot" = slot_head, "state" = "hair", "toggle" = 1), "shoes" = list("loc" = ui_shoes, "name" = "Shoes", "slot" = slot_shoes, "state" = "shoes", "toggle" = 1), "suit storage" = list("loc" = ui_sstore1, "name" = "Suit Storage", "slot" = slot_s_store, "state" = "belt", "dir" = 8), + "pda" = list("loc" = ui_pda, "name" = "PDA", "slot" = slot_wear_pda, "state" = "pda"), "back" = list("loc" = ui_back, "name" = "Back", "slot" = slot_back, "state" = "back", "dir" = NORTH), "id" = list("loc" = ui_id, "name" = "ID", "slot" = slot_wear_id, "state" = "id", "dir" = NORTH), "storage1" = list("loc" = ui_storage1, "name" = "Left Pocket", "slot" = slot_l_store, "state" = "pocket"), @@ -64,7 +65,8 @@ "id" = list("loc" = ui_id, "name" = "ID", "slot" = slot_wear_id, "state" = "id", "dir" = NORTH), "storage1" = list("loc" = ui_storage1, "name" = "Left Pocket", "slot" = slot_l_store, "state" = "pocket"), "storage2" = list("loc" = ui_storage2, "name" = "Right Pocket", "slot" = slot_r_store, "state" = "pocket"), - "belt" = list("loc" = ui_belt, "name" = "Belt", "slot" = slot_belt, "state" = "belt") + "belt" = list("loc" = ui_belt, "name" = "Belt", "slot" = slot_belt, "state" = "belt"), + "pda" = list("loc" = ui_pda, "name" = "PDA", "slot" = slot_wear_pda, "state" = "pda") ) /datum/hud_data/monkey diff --git a/code/modules/mob/update_icons.dm b/code/modules/mob/update_icons.dm index a6ae6dc4a09d0..bf47bf28d14b6 100644 --- a/code/modules/mob/update_icons.dm +++ b/code/modules/mob/update_icons.dm @@ -13,6 +13,9 @@ /mob/proc/update_inv_handcuffed() return +mob/proc/update_inv_wear_pda() + return + /mob/proc/update_inv_legcuffed() return diff --git a/code/setup.dm b/code/setup.dm index 1ed2beeb8aba0..2d63530b7b4c4 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -190,6 +190,7 @@ #define SLOT_TWOEARS 8192 #define SLOT_TIE 16384 #define SLOT_HOLSTER 32768 //16th bit +#define SLOT_PDA 65536 // Flags bitmasks. #define STOPPRESSUREDAMAGE 1 // This flag is used on the flags variable for SUIT and HEAD items which stop pressure damage. Note that the flag 1 was previous used as ONBACK, so it is possible for some code to use (flags & 1) when checking if something can be put on your back. Replace this code with (inv_flags & SLOT_BACK) if you see it anywhere @@ -266,6 +267,7 @@ #define slot_r_ear 20 #define slot_legs 21 #define slot_tie 22 +#define slot_wear_pda 23 // Inventory slot strings. // since numbers cannot be used as associative list keys. diff --git a/icons/mob/screen1_Midnight.dmi b/icons/mob/screen1_Midnight.dmi index 4ecce6663014bc77914b1244f95bf23b764d6d88..730f27a2941fa2881a40f443f37be77c1b26f554 100644 GIT binary patch delta 17196 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 delta 16743 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 Date: Sun, 23 Aug 2015 21:40:05 +0100 Subject: [PATCH 2/5] PDA slot 2 --- code/_onclick/hud/hud.dm | 4 ++++ code/game/objects/items.dm | 3 +-- code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/modules/mob/inventory.dm | 1 + 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index e1e412a9efe92..77b482fa32737 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -221,6 +221,8 @@ datum/hud/New(mob/owner) if(H.s_store) H.s_store.screen_loc = hud_data["loc"] if(slot_wear_id) if(H.wear_id) H.wear_id.screen_loc = hud_data["loc"] + if(slot_wear_pda) + if(H.wear_pda) H.wear_pda.screen_loc = hud_data["loc"] if(slot_belt) if(H.belt) H.belt.screen_loc = hud_data["loc"] if(slot_back) @@ -235,6 +237,8 @@ datum/hud/New(mob/owner) if(H.s_store) H.s_store.screen_loc = null if(slot_wear_id) if(H.wear_id) H.wear_id.screen_loc = null + if(slot_wear_pda) + if(H.wear_pda) H.wear_pda.screen_loc = hud_data["loc"] if(slot_belt) if(H.belt) H.belt.screen_loc = null if(slot_back) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 845b17addd1df..0928f064b0fe3 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -343,13 +343,12 @@ var/list/global/slot_flags_enumeration = list( if(!allow) return 0 if(slot_wear_pda) //PDA Slot - if(!istype(src, /obj/item/device/pda)) + if(!(slot_flags & SLOT_PDA)) return 0 if(!H.w_uniform && (slot_w_uniform in mob_equip)) if(!disable_warning) H << "\red You need a jumpsuit before you can attach this [name]." return 0 - return 1 if(slot_tie) if(!H.w_uniform && (slot_w_uniform in mob_equip)) if(!disable_warning) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index b01ecac27f9bc..b50aa55f7f20f 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -10,7 +10,7 @@ var/global/list/obj/item/device/pda/PDAs = list() icon_state = "pda" item_state = "electronic" w_class = 2.0 - slot_flags = SLOT_ID | SLOT_BELT | SLOT_PDA + slot_flags = SLOT_ID | SLOT_PDA | SLOT_BELT //Main variables var/owner = null diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index dc3b3277704f8..008cf9ae9d22f 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -42,6 +42,7 @@ var/list/slot_equipment_priority = list( \ slot_back,\ slot_wear_id,\ + slot_wear_pda,\ slot_w_uniform,\ slot_wear_suit,\ slot_wear_mask,\ From c6859c0a0a6f581d7de3c6116afdb2fd86d8d535 Mon Sep 17 00:00:00 2001 From: BlueNexus Date: Mon, 24 Aug 2015 17:01:06 +0100 Subject: [PATCH 3/5] Fixed the Tajaran language name --- code/modules/mob/language/station.dm | 2 +- .../mob/living/carbon/human/species/station/station.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 2 +- code/modules/mob/living/silicon/pai/software_modules.dm | 4 ++-- code/setup.dm | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index 5adf080c7e645..80cb8c49455fd 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -33,7 +33,7 @@ return capitalize(new_name) /datum/language/tajaran - name = "Siik'tajr" + name = "siik'maas" desc = "The traditionally employed tongue of Ahdomai, composed of expressive yowls and chirps. Native to the Tajaran." speech_verb = "mrowls" ask_verb = "mrowls" 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 d23c0836b23d5..1466410e6cc00 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -72,7 +72,7 @@ name_plural = "Tajaran" icobase = 'icons/mob/human_races/r_tajaran.dmi' deform = 'icons/mob/human_races/r_def_tajaran.dmi' - language = "Siik'tajr" + language = "siik'maas" tail = "tajtail" tail_animation = 'icons/mob/species/tajaran/tail.dmi' unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 8762afcfbf3f8..cab24456f463c 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -139,7 +139,7 @@ var/list/ai_verbs_default = list( add_language("Galactic Common", 1) add_language("Sol Common", 0) add_language("Sinta'unathi", 0) - add_language("Siik'tajr", 0) + add_language("siik'maas", 0) add_language("Skrellian", 0) add_language("Tradeband", 1) add_language("Gutter", 0) diff --git a/code/modules/mob/living/silicon/pai/software_modules.dm b/code/modules/mob/living/silicon/pai/software_modules.dm index f7434ebe9150c..b5805ac70ac4a 100644 --- a/code/modules/mob/living/silicon/pai/software_modules.dm +++ b/code/modules/mob/living/silicon/pai/software_modules.dm @@ -469,11 +469,11 @@ user.translator_on = !user.translator_on if(user.translator_on) user.add_language("Sinta'unathi") - user.add_language("Siik'tajr") + user.add_language("siik'maas") user.add_language("Skrellian") else user.remove_language("Sinta'unathi") - user.remove_language("Siik'tajr") + user.remove_language("siik'maas") user.remove_language("Skrellian") is_active(mob/living/silicon/pai/user) diff --git a/code/setup.dm b/code/setup.dm index 2d63530b7b4c4..c967a00e9e5d0 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -956,7 +956,7 @@ var/list/be_special_flags = list( #define LANGUAGE_SOL_COMMON "Sol Common" #define LANGUAGE_UNATHI "Sinta'unathi" #define LANGUAGE_SIIK_MAAS "Siik'maas" -#define LANGUAGE_SIIK_TAJR "Siik'tajr" +#define LANGUAGE_SIIK_TAJR "siik'maas" #define LANGUAGE_SKRELLIAN "Skrellian" #define LANGUAGE_ROOTSPEAK "Rootspeak" #define LANGUAGE_TRADEBAND "Tradeband" From 59c67beb9eeb1001a36e544dddc0cb2dcd0a8ccd Mon Sep 17 00:00:00 2001 From: BlueNexus Date: Mon, 24 Aug 2015 17:02:13 +0100 Subject: [PATCH 4/5] Revert "Fixed the Tajaran language name" This reverts commit c6859c0a0a6f581d7de3c6116afdb2fd86d8d535. --- code/modules/mob/language/station.dm | 2 +- .../mob/living/carbon/human/species/station/station.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 2 +- code/modules/mob/living/silicon/pai/software_modules.dm | 4 ++-- code/setup.dm | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index 80cb8c49455fd..5adf080c7e645 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -33,7 +33,7 @@ return capitalize(new_name) /datum/language/tajaran - name = "siik'maas" + name = "Siik'tajr" desc = "The traditionally employed tongue of Ahdomai, composed of expressive yowls and chirps. Native to the Tajaran." speech_verb = "mrowls" ask_verb = "mrowls" 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 1466410e6cc00..d23c0836b23d5 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -72,7 +72,7 @@ name_plural = "Tajaran" icobase = 'icons/mob/human_races/r_tajaran.dmi' deform = 'icons/mob/human_races/r_def_tajaran.dmi' - language = "siik'maas" + language = "Siik'tajr" tail = "tajtail" tail_animation = 'icons/mob/species/tajaran/tail.dmi' unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index cab24456f463c..8762afcfbf3f8 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -139,7 +139,7 @@ var/list/ai_verbs_default = list( add_language("Galactic Common", 1) add_language("Sol Common", 0) add_language("Sinta'unathi", 0) - add_language("siik'maas", 0) + add_language("Siik'tajr", 0) add_language("Skrellian", 0) add_language("Tradeband", 1) add_language("Gutter", 0) diff --git a/code/modules/mob/living/silicon/pai/software_modules.dm b/code/modules/mob/living/silicon/pai/software_modules.dm index b5805ac70ac4a..f7434ebe9150c 100644 --- a/code/modules/mob/living/silicon/pai/software_modules.dm +++ b/code/modules/mob/living/silicon/pai/software_modules.dm @@ -469,11 +469,11 @@ user.translator_on = !user.translator_on if(user.translator_on) user.add_language("Sinta'unathi") - user.add_language("siik'maas") + user.add_language("Siik'tajr") user.add_language("Skrellian") else user.remove_language("Sinta'unathi") - user.remove_language("siik'maas") + user.remove_language("Siik'tajr") user.remove_language("Skrellian") is_active(mob/living/silicon/pai/user) diff --git a/code/setup.dm b/code/setup.dm index c967a00e9e5d0..2d63530b7b4c4 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -956,7 +956,7 @@ var/list/be_special_flags = list( #define LANGUAGE_SOL_COMMON "Sol Common" #define LANGUAGE_UNATHI "Sinta'unathi" #define LANGUAGE_SIIK_MAAS "Siik'maas" -#define LANGUAGE_SIIK_TAJR "siik'maas" +#define LANGUAGE_SIIK_TAJR "Siik'tajr" #define LANGUAGE_SKRELLIAN "Skrellian" #define LANGUAGE_ROOTSPEAK "Rootspeak" #define LANGUAGE_TRADEBAND "Tradeband" From 4cd690e5134510e0ee2219e1eec2a2f16ea4befa Mon Sep 17 00:00:00 2001 From: BlueNexus Date: Mon, 24 Aug 2015 17:03:15 +0100 Subject: [PATCH 5/5] PDA 3 --- code/modules/client/preferences_gear.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index 5be7e2dcde7c2..df1a5539ad87b 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -8,6 +8,7 @@ var/global/list/gear_datums = list() "[slot_wear_mask]" = list(), "[slot_w_uniform]" = list(), "[slot_tie]" = list(), + "[slot_wear_pda]" = list(), "[slot_wear_suit]" = list(), "[slot_gloves]" = list(), "[slot_shoes]" = list(),