diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index a71515643b..2c22234d68 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -51,7 +51,7 @@ GLOBAL_LIST_INIT(custom_species_bases, new) // Species that can be used for a Cu var/datum/category_collection/underwear/global_underwear = new() //Backpacks -var/global/list/backbaglist = list("Nothing", "Backpack", "Satchel", "Satchel Alt", "Messenger Bag") +var/global/list/backbaglist = list("Nothing", "Backpack", "Satchel", "Satchel Alt", "Messenger Bag", "Sports Bag") var/global/list/pdachoicelist = list("Default", "Slim", "Old", "Rugged", "Holographic", "Wrist-Bound") var/global/list/exclude_jobs = list(/datum/job/ai,/datum/job/cyborg) diff --git a/code/datums/outfits/jobs/civilian.dm b/code/datums/outfits/jobs/civilian.dm index cda81f977f..1d299a81db 100644 --- a/code/datums/outfits/jobs/civilian.dm +++ b/code/datums/outfits/jobs/civilian.dm @@ -68,6 +68,7 @@ backpack = /obj/item/weapon/storage/backpack/hydroponics satchel_one = /obj/item/weapon/storage/backpack/satchel/hyd messenger_bag = /obj/item/weapon/storage/backpack/messenger/hyd + sports_bag = /obj/item/weapon/storage/backpack/sport/hyd id_type = /obj/item/weapon/card/id/civilian/service/botanist //VOREStation Edit pda_type = /obj/item/device/pda/botanist diff --git a/code/datums/outfits/jobs/medical.dm b/code/datums/outfits/jobs/medical.dm index 6622d3b285..dd5cb7fbcb 100644 --- a/code/datums/outfits/jobs/medical.dm +++ b/code/datums/outfits/jobs/medical.dm @@ -65,6 +65,7 @@ suit = /obj/item/clothing/suit/storage/toggle/labcoat/chemist backpack = /obj/item/weapon/storage/backpack/chemistry satchel_one = /obj/item/weapon/storage/backpack/satchel/chem + sports_bag = /obj/item/weapon/storage/backpack/sport/chem id_type = /obj/item/weapon/card/id/medical/chemist pda_type = /obj/item/device/pda/chemist diff --git a/code/datums/outfits/jobs/science.dm b/code/datums/outfits/jobs/science.dm index 8920db9b7b..a7b7a71478 100644 --- a/code/datums/outfits/jobs/science.dm +++ b/code/datums/outfits/jobs/science.dm @@ -7,6 +7,7 @@ backpack = /obj/item/weapon/storage/backpack/toxins satchel_one = /obj/item/weapon/storage/backpack/satchel/tox messenger_bag = /obj/item/weapon/storage/backpack/messenger/tox + sports_bag = /obj/item/weapon/storage/backpack/sport/tox /decl/hierarchy/outfit/job/science/rd name = OUTFIT_JOB_NAME("Research Director") diff --git a/code/datums/outfits/jobs/security.dm b/code/datums/outfits/jobs/security.dm index 2765882ad6..fa085bf909 100644 --- a/code/datums/outfits/jobs/security.dm +++ b/code/datums/outfits/jobs/security.dm @@ -8,6 +8,7 @@ satchel_one = /obj/item/weapon/storage/backpack/satchel/sec backpack_contents = list(/obj/item/weapon/handcuffs = 1) messenger_bag = /obj/item/weapon/storage/backpack/messenger/sec + sports_bag = /obj/item/weapon/storage/backpack/sport/sec /decl/hierarchy/outfit/job/security/hos name = OUTFIT_JOB_NAME("Head of security") diff --git a/code/datums/outfits/outfit.dm b/code/datums/outfits/outfit.dm index e859a93983..7bc09b0cc7 100644 --- a/code/datums/outfits/outfit.dm +++ b/code/datums/outfits/outfit.dm @@ -56,6 +56,7 @@ var/list/outfits_decls_by_type_ var/satchel_one = /obj/item/weapon/storage/backpack/satchel/norm var/satchel_two = /obj/item/weapon/storage/backpack/satchel var/messenger_bag = /obj/item/weapon/storage/backpack/messenger + var/sports_bag = /obj/item/weapon/storage/backpack/sport var/flags // Specific flags @@ -76,6 +77,7 @@ var/list/outfits_decls_by_type_ if(3) back = satchel_one if(4) back = satchel_two if(5) back = messenger_bag + if(6) back = sports_bag else back = null /decl/hierarchy/outfit/proc/post_equip(mob/living/carbon/human/H) diff --git a/code/game/antagonist/outsider/mercenary.dm b/code/game/antagonist/outsider/mercenary.dm index 94b362fca8..623291dde7 100644 --- a/code/game/antagonist/outsider/mercenary.dm +++ b/code/game/antagonist/outsider/mercenary.dm @@ -42,6 +42,7 @@ var/datum/antagonist/mercenary/mercs if(player.backbag == 3) player.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel/norm(player), slot_back) if(player.backbag == 4) player.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(player), slot_back) if(player.backbag == 5) player.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/messenger(player), slot_back) + if(player.backbag == 6) player.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/sport(player), slot_back) player.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/pill/cyanide(player), slot_in_backpack) player.mind.tcrystals = DEFAULT_TELECRYSTAL_AMOUNT diff --git a/code/game/antagonist/outsider/wizard.dm b/code/game/antagonist/outsider/wizard.dm index f362f6b3a8..0fcded12c6 100644 --- a/code/game/antagonist/outsider/wizard.dm +++ b/code/game/antagonist/outsider/wizard.dm @@ -83,7 +83,8 @@ var/datum/antagonist/wizard/wizards if(wizard_mob.backbag == 2) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(wizard_mob), slot_back) if(wizard_mob.backbag == 3) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel/norm(wizard_mob), slot_back) if(wizard_mob.backbag == 4) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(wizard_mob), slot_back) - if(wizard_mob.backbag == 5) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(wizard_mob), slot_back) + if(wizard_mob.backbag == 5) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/messenger(wizard_mob), slot_back) + if(wizard_mob.backbag == 6) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/sport(wizard_mob), slot_back) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/box(wizard_mob), slot_in_backpack) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/teleportation_scroll(wizard_mob), slot_r_store) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/spellbook(wizard_mob), slot_r_hand) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index b296c58b96..1bada80a03 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -75,57 +75,69 @@ /obj/item/weapon/storage/backpack/cultpack name = "trophy rack" desc = "It's useful for both carrying extra gear and proudly declaring your insanity." - icon_state = "cultpack" + icon_state = "backpack_cult" /obj/item/weapon/storage/backpack/clown name = "Giggles von Honkerton" desc = "It's a backpack made by Honk! Co." - icon_state = "clownpack" + icon_state = "backpack_clown" + +/obj/item/weapon/storage/backpack/white + name = "white backpack" + icon_state = "backpack_white" + +/obj/item/weapon/storage/backpack/fancy + name = "fancy backpack" + icon_state = "backpack_fancy" + +/obj/item/weapon/storage/backpack/military + name = "military backpack" + icon_state = "backpack_military" /obj/item/weapon/storage/backpack/medic name = "medical backpack" desc = "It's a backpack especially designed for use in a sterile environment." - icon_state = "medicalpack" + icon_state = "backpack_medical" /obj/item/weapon/storage/backpack/security name = "security backpack" desc = "It's a very robust backpack." - icon_state = "securitypack" + icon_state = "backpack_security" /obj/item/weapon/storage/backpack/captain name = "site manager's backpack" desc = "It's a special backpack made exclusively for officers." - icon_state = "captainpack" + icon_state = "backpack_captain" /obj/item/weapon/storage/backpack/industrial name = "industrial backpack" desc = "It's a tough backpack for the daily grind of station life." - icon_state = "engiepack" + icon_state = "backpack_industrial" /obj/item/weapon/storage/backpack/toxins name = "laboratory backpack" desc = "It's a light backpack modeled for use in laboratories and other scientific institutions." - icon_state = "toxpack" + icon_state = "backpack_purple" /obj/item/weapon/storage/backpack/hydroponics name = "herbalist's backpack" desc = "It's a green backpack with many pockets to store plants and tools in." - icon_state = "hydpack" + icon_state = "backpack_hydro" /obj/item/weapon/storage/backpack/genetics name = "geneticist backpack" desc = "It's a backpack fitted with slots for diskettes and other workplace tools." - icon_state = "genpack" + icon_state = "backpack_blue" /obj/item/weapon/storage/backpack/virology name = "sterile backpack" desc = "It's a sterile backpack able to withstand different pathogens from entering its fabric." - icon_state = "viropack" + icon_state = "backpack_green" /obj/item/weapon/storage/backpack/chemistry name = "chemistry backpack" desc = "It's an orange backpack which was designed to hold beakers, pill bottles and bottles." - icon_state = "chempack" + icon_state = "backpack_orange" /* * Duffle Types @@ -162,7 +174,7 @@ /obj/item/weapon/storage/backpack/dufflebag/med name = "medical dufflebag" desc = "A large dufflebag for holding extra medical supplies." - icon_state = "duffle_med" + icon_state = "duffle_medical" /obj/item/weapon/storage/backpack/dufflebag/emt name = "EMT dufflebag" @@ -172,17 +184,27 @@ /obj/item/weapon/storage/backpack/dufflebag/sec name = "security dufflebag" desc = "A large dufflebag for holding extra security supplies and ammunition." - icon_state = "duffle_sec" + icon_state = "duffle_security" /obj/item/weapon/storage/backpack/dufflebag/eng name = "industrial dufflebag" desc = "A large dufflebag for holding extra tools and supplies." - icon_state = "duffle_eng" + icon_state = "duffle_industrial" /obj/item/weapon/storage/backpack/dufflebag/sci name = "science dufflebag" desc = "A large dufflebag for holding circuits and beakers." - icon_state = "duffle_sci" + icon_state = "duffle_science" + +/obj/item/weapon/storage/backpack/dufflebag/drone + name = "drone dufflebag" + desc = "A large dufflebag for holding small robots? Or maybe it's one used by robots!" + icon_state = "duffle_drone" + +/obj/item/weapon/storage/backpack/dufflebag/cursed + name = "cursed dufflebag" + desc = "That probably shouldn't be moving..." + icon_state = "duffle_cursed" /* * Satchel Types @@ -192,7 +214,6 @@ name = "leather satchel" desc = "It's a very fancy satchel made with fine leather." icon_state = "satchel" - item_state_slots = list(slot_r_hand_str = "briefcase", slot_l_hand_str = "briefcase") /obj/item/weapon/storage/backpack/satchel/withwallet starts_with = list(/obj/item/weapon/storage/wallet/random) @@ -200,67 +221,70 @@ /obj/item/weapon/storage/backpack/satchel/norm name = "satchel" desc = "A trendy looking satchel." - icon_state = "satchel-norm" + icon_state = "satchel_grey" + +/obj/item/weapon/storage/backpack/satchel/white + name = "white satchel" + icon_state = "satchel_white" + +/obj/item/weapon/storage/backpack/satchel/fancy + name = "fancy satchel" + icon_state = "satchel_fancy" + +/obj/item/weapon/storage/backpack/satchel/military + name = "military satchel" + icon_state = "satchel_military" /obj/item/weapon/storage/backpack/satchel/eng name = "industrial satchel" desc = "A tough satchel with extra pockets." - icon_state = "satchel-eng" - item_state_slots = list(slot_r_hand_str = "engiepack", slot_l_hand_str = "engiepack") + icon_state = "satchel_industrial" /obj/item/weapon/storage/backpack/satchel/med name = "medical satchel" desc = "A sterile satchel used in medical departments." - icon_state = "satchel-med" - item_state_slots = list(slot_r_hand_str = "medicalpack", slot_l_hand_str = "medicalpack") + icon_state = "satchel_medical" /obj/item/weapon/storage/backpack/satchel/vir name = "virologist satchel" desc = "A sterile satchel with virologist colours." - icon_state = "satchel-vir" - item_state_slots = list(slot_r_hand_str = "viropack", slot_l_hand_str = "viropack") + icon_state = "satchel_green" /obj/item/weapon/storage/backpack/satchel/chem name = "chemist satchel" desc = "A sterile satchel with chemist colours." - icon_state = "satchel-chem" - item_state_slots = list(slot_r_hand_str = "chempack", slot_l_hand_str = "chempack") + icon_state = "satchel_orange" /obj/item/weapon/storage/backpack/satchel/gen name = "geneticist satchel" desc = "A sterile satchel with geneticist colours." - icon_state = "satchel-gen" - item_state_slots = list(slot_r_hand_str = "genpack", slot_l_hand_str = "genpack") + icon_state = "satchel_blue" /obj/item/weapon/storage/backpack/satchel/tox name = "scientist satchel" desc = "Useful for holding research materials." - icon_state = "satchel-tox" - item_state_slots = list(slot_r_hand_str = "toxpack", slot_l_hand_str = "toxpack") + icon_state = "satchel_purple" /obj/item/weapon/storage/backpack/satchel/sec name = "security satchel" desc = "A robust satchel for security related needs." - icon_state = "satchel-sec" - item_state_slots = list(slot_r_hand_str = "securitypack", slot_l_hand_str = "securitypack") + icon_state = "satchel_security" /obj/item/weapon/storage/backpack/satchel/hyd name = "hydroponics satchel" desc = "A green satchel for plant related work." - icon_state = "satchel_hyd" + icon_state = "satchel_hydro" /obj/item/weapon/storage/backpack/satchel/cap name = "site manager's satchel" desc = "An exclusive satchel for officers." - icon_state = "satchel-cap" - item_state_slots = list(slot_r_hand_str = "captainpack", slot_l_hand_str = "captainpack") + icon_state = "satchel_captain" //ERT backpacks. /obj/item/weapon/storage/backpack/ert name = "emergency response team backpack" desc = "A spacious backpack with lots of pockets, used by members of the Emergency Response Team." icon_state = "ert_commander" - item_state_slots = list(slot_r_hand_str = "securitypack", slot_l_hand_str = "securitypack") //Commander /obj/item/weapon/storage/backpack/ert/commander @@ -292,59 +316,106 @@ /obj/item/weapon/storage/backpack/messenger name = "messenger bag" desc = "A sturdy backpack worn over one shoulder." - icon_state = "courierbag" - item_state_slots = list(slot_r_hand_str = "backpack", slot_l_hand_str = "backpack") + icon_state = "courier" + item_state_slots = list(slot_r_hand_str = "satchel_grey", slot_l_hand_str = "satchel_grey") /obj/item/weapon/storage/backpack/messenger/chem name = "chemistry messenger bag" desc = "A serile backpack worn over one shoulder. This one is in Chemsitry colors." - icon_state = "courierbagchem" - item_state_slots = list(slot_r_hand_str = "chempack", slot_l_hand_str = "chempack") + icon_state = "courier_chemistry" + item_state_slots = list(slot_r_hand_str = "satchel_orange", slot_l_hand_str = "satchel_orange") /obj/item/weapon/storage/backpack/messenger/med name = "medical messenger bag" desc = "A sterile backpack worn over one shoulder used in medical departments." - icon_state = "courierbagmed" - item_state_slots = list(slot_r_hand_str = "medicalpack", slot_l_hand_str = "medicalpack") + icon_state = "courier_medical" + item_state_slots = list(slot_r_hand_str = "satchel_medical", slot_l_hand_str = "satchel_medical") /obj/item/weapon/storage/backpack/messenger/viro name = "virology messenger bag" desc = "A sterile backpack worn over one shoulder. This one is in Virology colors." - icon_state = "courierbagviro" - item_state_slots = list(slot_r_hand_str = "viropack", slot_l_hand_str = "viropack") + icon_state = "courier_virology" + item_state_slots = list(slot_r_hand_str = "satchel_green", slot_l_hand_str = "satchel_green") /obj/item/weapon/storage/backpack/messenger/tox name = "research messenger bag" desc = "A backpack worn over one shoulder. Useful for holding science materials." - icon_state = "courierbagtox" - item_state_slots = list(slot_r_hand_str = "toxpack", slot_l_hand_str = "toxpack") + icon_state = "courier_toxins" + item_state_slots = list(slot_r_hand_str = "satchel_purple", slot_l_hand_str = "satchel_purple") /obj/item/weapon/storage/backpack/messenger/com name = "command messenger bag" desc = "A special backpack worn over one shoulder. This one is made specifically for officers." - icon_state = "courierbagcom" - item_state_slots = list(slot_r_hand_str = "captainpack", slot_l_hand_str = "captainpack") + icon_state = "courier_captain" + item_state_slots = list(slot_r_hand_str = "satchel_captain", slot_l_hand_str = "satchel_captain") /obj/item/weapon/storage/backpack/messenger/engi name = "engineering messenger bag" - icon_state = "courierbagengi" - item_state_slots = list(slot_r_hand_str = "engiepack", slot_l_hand_str = "engiepack") + icon_state = "courier_industrial" + item_state_slots = list(slot_r_hand_str = "satchel_industrial", slot_l_hand_str = "satchel_industrial") /obj/item/weapon/storage/backpack/messenger/hyd name = "hydroponics messenger bag" desc = "A backpack worn over one shoulder. This one is designed for plant-related work." - icon_state = "courierbaghyd" + icon_state = "courier_hydro" + item_state_slots = list(slot_r_hand_str = "satchel_hydro", slot_l_hand_str = "satchel_hydro") /obj/item/weapon/storage/backpack/messenger/sec name = "security messenger bag" desc = "A tactical backpack worn over one shoulder. This one is in Security colors." - icon_state = "courierbagsec" - item_state_slots = list(slot_r_hand_str = "securitypack", slot_l_hand_str = "securitypack") + icon_state = "courier_security" + item_state_slots = list(slot_r_hand_str = "satchel_security", slot_l_hand_str = "satchel_security") /obj/item/weapon/storage/backpack/messenger/black - icon_state = "courierbagblk" + icon_state = "courier_black" +/* + * Sport Bags + */ + +/obj/item/weapon/storage/backpack/sport + name = "sports backpack" + icon_state = "backsport" + +/obj/item/weapon/storage/backpack/sport/white + name = "white sports backpack" + icon_state = "backsport_white" + +/obj/item/weapon/storage/backpack/sport/fancy + name = "fancy sports backpack" + icon_state = "backsport_fancy" + +/obj/item/weapon/storage/backpack/sport/vir + name = "virologist sports backpack" + desc = "A sterile sports backpack with virologist colours." + icon_state = "backsport_green" + +/obj/item/weapon/storage/backpack/sport/chem + name = "chemist sports backpack" + desc = "A sterile sports backpack with chemist colours." + icon_state = "backsport_orange" + +/obj/item/weapon/storage/backpack/sport/gen + name = "geneticist sports backpack" + desc = "A sterile sports backpack with geneticist colours." + icon_state = "backsport_blue" + +/obj/item/weapon/storage/backpack/sport/tox + name = "scientist sports backpack" + desc = "Useful for holding research materials." + icon_state = "backsport_purple" + +/obj/item/weapon/storage/backpack/sport/sec + name = "security sports backpack" + desc = "A robust sports backpack for security related needs." + icon_state = "backsport_security" + +/obj/item/weapon/storage/backpack/sport/hyd + name = "hydroponics sports backpack" + desc = "A green sports backpack for plant related work." + icon_state = "backsport_hydro" + //Purses /obj/item/weapon/storage/backpack/purse name = "purse" diff --git a/code/modules/client/preference_setup/general/04_equipment.dm b/code/modules/client/preference_setup/general/04_equipment.dm index 6b4e7a9820..455b55b622 100644 --- a/code/modules/client/preference_setup/general/04_equipment.dm +++ b/code/modules/client/preference_setup/general/04_equipment.dm @@ -38,8 +38,8 @@ pref.all_underwear -= underwear_category_name // TODO - Looks like this is duplicating the work of sanitize_character() if so, remove - if(pref.backbag > 5 || pref.backbag < 1) - pref.backbag = 1 //Same as above + if(pref.backbag > backbaglist.len || pref.backbag < 1) + pref.backbag = 2 //Same as above character.backbag = pref.backbag if(pref.pdachoice > 6 || pref.pdachoice < 1) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 2cbf9a74f8..651ed85b14 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -29,7 +29,7 @@ all_underwear[WRC.name] = WRI.name - backbag = rand(1,5) + backbag = rand(1,6) pdachoice = rand(1,5) age = rand(current_species.min_age, current_species.max_age) b_type = RANDOM_BLOOD_TYPE diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 88f6dbf028..b17ccaec61 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/items/lefthand_storage.dmi b/icons/mob/items/lefthand_storage.dmi index 6b5a4defb8..d69025101e 100644 Binary files a/icons/mob/items/lefthand_storage.dmi and b/icons/mob/items/lefthand_storage.dmi differ diff --git a/icons/mob/items/righthand_storage.dmi b/icons/mob/items/righthand_storage.dmi index 783540cefc..b2160603b8 100644 Binary files a/icons/mob/items/righthand_storage.dmi and b/icons/mob/items/righthand_storage.dmi differ