From 599c2c8c5757b8ca2cef0cc87b704962ce67897d Mon Sep 17 00:00:00 2001 From: Cerebulon Date: Mon, 11 Apr 2022 10:07:58 +0100 Subject: [PATCH] Adds a bunch of new bags and replaces nearly all bag sprites --- code/_helpers/global_lists.dm | 2 +- code/datums/outfits/jobs/civilian.dm | 1 + code/datums/outfits/jobs/medical.dm | 1 + code/datums/outfits/jobs/science.dm | 1 + code/datums/outfits/jobs/security.dm | 1 + code/datums/outfits/outfit.dm | 4 +- .../objects/items/weapons/storage/backpack.dm | 106 +++++++++++++++--- .../items/weapons/storage/briefcase.dm | 11 +- code/modules/antagonist/outsider/mercenary.dm | 1 + code/modules/antagonist/outsider/wizard.dm | 1 + .../preference_setup/general/04_equipment.dm | 4 +- .../mob/new_player/preferences_setup.dm | 2 +- icons/mob/back.dmi | Bin 120558 -> 130562 bytes icons/mob/items/lefthand_storage.dmi | Bin 24325 -> 35736 bytes icons/mob/items/righthand_storage.dmi | Bin 24359 -> 35811 bytes icons/obj/clothing/backpack.dmi | Bin 26256 -> 27707 bytes icons/obj/device.dmi | Bin 96239 -> 95994 bytes icons/obj/storage.dmi | Bin 63240 -> 63129 bytes 18 files changed, 113 insertions(+), 22 deletions(-) diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 8b578c760f..d9660d0195 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -53,7 +53,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 722a3fefb6..31daf876a1 100644 --- a/code/datums/outfits/jobs/civilian.dm +++ b/code/datums/outfits/jobs/civilian.dm @@ -54,6 +54,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 + /obj/item/weapon/storage/backpack/sport/hyd id_type = /obj/item/weapon/card/id/civilian/botanist 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 4a6392d61f..fcccfb8f8c 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 b1976b7f04..65388a7902 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 8cdcf117ee..7b74bc448b 100644 --- a/code/datums/outfits/outfit.dm +++ b/code/datums/outfits/outfit.dm @@ -41,7 +41,7 @@ var/list/outfits_decls_by_type_ var/l_hand = null // In the list(path=count,otherpath=count) format var/list/uniform_accessories = list() // webbing, armbands etc - fits in slot_tie - var/list/backpack_contents = list() + var/list/backpack_contents = list() var/id_type var/id_desc @@ -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/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index b296c58b96..f131909367 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -127,6 +127,18 @@ desc = "It's an orange backpack which was designed to hold beakers, pill bottles and bottles." icon_state = "chempack" +/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" + /* * Duffle Types */ @@ -184,6 +196,16 @@ desc = "A large dufflebag for holding circuits and beakers." icon_state = "duffle_sci" +/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 */ @@ -206,43 +228,36 @@ 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") /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") /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") /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") /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") /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") /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") /obj/item/weapon/storage/backpack/satchel/hyd name = "hydroponics satchel" @@ -253,7 +268,18 @@ 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") + +/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" //ERT backpacks. /obj/item/weapon/storage/backpack/ert @@ -293,56 +319,104 @@ 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") + item_state_slots = list(slot_r_hand_str = "satchel-norm", slot_l_hand_str = "satchel-norm") /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") + item_state_slots = list(slot_r_hand_str = "satchel-chem", slot_l_hand_str = "satchel-chem") /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") + item_state_slots = list(slot_r_hand_str = "satchel-med", slot_l_hand_str = "satchel-med") /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") + item_state_slots = list(slot_r_hand_str = "satchel-vir", slot_l_hand_str = "satchel-vir") /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") + item_state_slots = list(slot_r_hand_str = "satchel-tox", slot_l_hand_str = "satchel-tox") /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") + item_state_slots = list(slot_r_hand_str = "satchel-cap", slot_l_hand_str = "satchel-cap") /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") + item_state_slots = list(slot_r_hand_str = "satchel-eng", slot_l_hand_str = "satchel-eng") /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" + item_state_slots = list(slot_r_hand_str = "satchel_hyd", slot_l_hand_str = "satchel_hyd") /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") + item_state_slots = list(slot_r_hand_str = "satchel-sec", slot_l_hand_str = "satchel-sec") /obj/item/weapon/storage/backpack/messenger/black icon_state = "courierbagblk" + item_state_slots = list(slot_r_hand_str = "satchel-sec", slot_l_hand_str = "satchel-sec") + +/* + * 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 diff --git a/code/game/objects/items/weapons/storage/briefcase.dm b/code/game/objects/items/weapons/storage/briefcase.dm index ed4d8fdbbe..a3cc27d926 100644 --- a/code/game/objects/items/weapons/storage/briefcase.dm +++ b/code/game/objects/items/weapons/storage/briefcase.dm @@ -20,4 +20,13 @@ force = 0 w_class = ITEMSIZE_NORMAL max_w_class = ITEMSIZE_SMALL - max_storage_space = ITEMSIZE_COST_SMALL * 4 \ No newline at end of file + max_storage_space = ITEMSIZE_COST_SMALL * 4 + +/obj/item/weapon/storage/briefcase/bookbag + name = "bookbag" + desc = "A small bookbag for holding... things other than books?" + icon_state = "bookbag" + force = 4.0 + w_class = ITEMSIZE_LARGE + max_w_class = ITEMSIZE_NORMAL + max_storage_space = ITEMSIZE_COST_NORMAL * 4 \ No newline at end of file diff --git a/code/modules/antagonist/outsider/mercenary.dm b/code/modules/antagonist/outsider/mercenary.dm index 94b362fca8..623291dde7 100644 --- a/code/modules/antagonist/outsider/mercenary.dm +++ b/code/modules/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/modules/antagonist/outsider/wizard.dm b/code/modules/antagonist/outsider/wizard.dm index f362f6b3a8..6a3aea1f9e 100644 --- a/code/modules/antagonist/outsider/wizard.dm +++ b/code/modules/antagonist/outsider/wizard.dm @@ -84,6 +84,7 @@ var/datum/antagonist/wizard/wizards 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 == 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/modules/client/preference_setup/general/04_equipment.dm b/code/modules/client/preference_setup/general/04_equipment.dm index c5a940e868..13d079c60a 100644 --- a/code/modules/client/preference_setup/general/04_equipment.dm +++ b/code/modules/client/preference_setup/general/04_equipment.dm @@ -36,8 +36,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 9ac1263238..7796c86ea1 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 88f6dbf0288eb8f3e01ff99ba45d8a420fad1177..58cbf3f8faabe538a2fe83b948d26a62903ea489 100644 GIT binary patch literal 130562 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