Chest pouch bag and new storage belts. (#21233)

Adds a new type of bag and two new storage belts. Also fixes being
unable to flip belts.
<img width="89" height="111" alt="image"
src="https://github.com/user-attachments/assets/6b1ec387-2f8d-4f70-a8f1-ab1d8e4b5ed8"
/>
<img width="88" height="87" alt="image"
src="https://github.com/user-attachments/assets/35a04494-7d83-4804-b1b8-9ac1be538e34"
/>
<img width="75" height="95" alt="image"
src="https://github.com/user-attachments/assets/7d1e97e4-f1e8-4e0e-8d4f-6ec0cb8e1253"
/>
<img width="89" height="86" alt="image"
src="https://github.com/user-attachments/assets/402451e7-42fc-4ed1-a73f-23dfafc0a360"
/>



### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

Sprites are by RatFromTheJungle, from this PR
https://github.com/NovaSector/NovaSector/pull/4651

---------

Signed-off-by: Greenjoe12345 <33647525+Greenjoe12345@users.noreply.github.com>
This commit is contained in:
Greenjoe12345
2025-09-06 10:36:14 +00:00
committed by GitHub
parent 69e331e64a
commit 5e0866aa82
10 changed files with 116 additions and 10 deletions
@@ -907,6 +907,20 @@
icon_state = "rucksack_tan"
item_state = "rucksack_tan"
/*
* Chest pouch
*/
/obj/item/storage/backpack/chestpouch
name = "chest pouch"
desc = "A small pouch that straps across your chest."
icon = 'icons/obj/storage/chestpouch.dmi'
icon_state = "chestpouch"
item_state = "chestpouch"
w_class = WEIGHT_CLASS_HUGE // to avoid recursive backpacks
max_w_class = WEIGHT_CLASS_NORMAL
max_storage_space = DEFAULT_LARGEBOX_STORAGE
// Vaurca stuff.
/obj/item/storage/backpack/typec
@@ -70,22 +70,18 @@
if(("[initial(icon_state)]_flip") in icon_states(icon)) // Check for whether it has a flipped icon. Prevents invisible sprites.
verbs += /obj/item/storage/belt/proc/flipbelt
/obj/item/storage/belt/proc/flipbelt(mob/user, var/self = TRUE)
/obj/item/storage/belt/proc/flipbelt()
set category = "Object.Equipped"
set name = "Flip Belt"
set src in usr
if(self)
if(use_check_and_message(user))
return
else
if(use_check_and_message(user, self ? USE_ALLOW_NON_ADJACENT : 0))
return
if(use_check_and_message(usr))
return
flipped = !flipped
icon_state = "[initial(icon_state)][flipped ? "_flip" : ""]"
item_state = "[initial(item_state)][flipped ? "_flip" : ""]"
to_chat(usr, SPAN_NOTICE("You change \the [src] to be [src.flipped ? "behind" : "in front of"] you."))
to_chat(usr, SPAN_NOTICE("You adjust \the [src] [src.flipped ? "to the other side" : "back"]."))
update_clothing_icon()
/obj/item/storage/belt/utility
@@ -664,10 +660,24 @@
icon_state = "fannypack"
item_state = "fannypack"
max_w_class = WEIGHT_CLASS_SMALL
w_class = WEIGHT_CLASS_HUGE
contained_sprite = TRUE
storage_slots = null
max_storage_space = 8
/obj/item/storage/belt/fannypack/waistpack
name = "waist pack"
desc = "A small, waist-mounted pack for... well, storing stuff!"
icon_state = "waistpack"
item_state = "waistpack"
/obj/item/storage/belt/fannypack/pouchbelt
name = "belt with pouches"
desc = "A belt coated from front to back in pouches."
icon_state = "pouchbelt"
item_state = "pouchbelt"
max_storage_space = 10
/obj/item/storage/belt/fannypack/recolorable
icon_state = "fannypack_colorable"
item_state = "fannypack_colorable"