Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Skyrat Mirror] pouch stuff - mild first aid pouch buff, repathing the medpen/CIN-replicator kit, casing pouch #18

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions modular_skyrat/modules/clock_cult/code/items/weaponry.dm
Original file line number Diff line number Diff line change
Expand Up @@ -291,6 +291,7 @@
icon = 'modular_skyrat/modules/clock_cult/icons/weapons/ammo.dmi'
icon_state = "762_brass"
ammo_type = /obj/item/ammo_casing/strilka310/lionhunter/clock
unique_reskin = NONE
max_ammo = 3
multiple_sprites = AMMO_BOX_PER_BULLET

Expand Down
1 change: 1 addition & 0 deletions modular_skyrat/modules/exp_corps/code/gear.dm
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@

/obj/item/storage/pouch/ammo/marksman
name = "marksman's knife pouch"
unique_reskin = NONE

/obj/item/storage/pouch/ammo/marksman/Initialize(mapload)
. = ..()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
id = "slavic_cfap"
build_type = BIOGENERATOR
materials = list(/datum/material/biomass = 250)
build_path = /obj/item/storage/bag/pocket_medkit
build_path = /obj/item/storage/pouch/cin_medkit
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_NRI_MEDICAL,
Expand All @@ -14,7 +14,7 @@
id = "slavic_medipouch"
build_type = BIOGENERATOR
materials = list(/datum/material/biomass = 250)
build_path = /obj/item/storage/bag/medipen
build_path = /obj/item/storage/pouch/cin_medipens
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_NRI_MEDICAL,
Expand Down
23 changes: 10 additions & 13 deletions modular_skyrat/modules/food_replicator/code/storage.dm
Original file line number Diff line number Diff line change
@@ -1,39 +1,36 @@
/obj/item/storage/bag/medipen
/obj/item/storage/pouch/cin_medipens
name = "colonial medipen pouch"
desc = "A pouch for your (medi-)pens that goes in your pocket."
icon = 'modular_skyrat/modules/food_replicator/icons/pouch.dmi'
icon_state = "medipen_pouch"
slot_flags = ITEM_SLOT_POCKETS
w_class = WEIGHT_CLASS_BULKY
resistance_flags = FLAMMABLE
w_class = WEIGHT_CLASS_NORMAL

/obj/item/storage/bag/medipen/update_icon_state()
/obj/item/storage/pouch/cin_medipens/update_icon_state()
icon_state = "[initial(icon_state)]_[contents.len]"
return ..()

/obj/item/storage/bag/medipen/Initialize(mapload)
/obj/item/storage/pouch/cin_medipens/Initialize(mapload)
. = ..()
update_appearance()

/obj/item/storage/bag/medipen/Initialize(mapload)
/obj/item/storage/pouch/cin_medipens/Initialize(mapload)
. = ..()
atom_storage.max_specific_storage = WEIGHT_CLASS_TINY
atom_storage.max_total_storage = 4
atom_storage.max_slots = 4
atom_storage.numerical_stacking = FALSE
atom_storage.can_hold = typecacheof(list(/obj/item/reagent_containers/hypospray/medipen, /obj/item/pen, /obj/item/flashlight/pen))

/obj/item/storage/bag/pocket_medkit
/obj/item/storage/pouch/cin_medkit
name = "colonial first aid kit"
desc = "A medical pouch that goes in your pocket. Can be used to store things unrelated to medicine, except for guns, ammo and raw materials."
desc = "A medical case that goes in your pocket. Can be used to store things unrelated to medicine, except for guns, ammo and raw materials."
icon = 'modular_skyrat/modules/food_replicator/icons/pouch.dmi'
icon_state = "cfak"
slot_flags = ITEM_SLOT_POCKETS
w_class = WEIGHT_CLASS_BULKY
resistance_flags = FLAMMABLE
w_class = WEIGHT_CLASS_NORMAL

/obj/item/storage/bag/pocket_medkit/Initialize(mapload)
/obj/item/storage/pouch/cin_medkit/Initialize(mapload)
. = ..()
atom_storage.numerical_stacking = TRUE
atom_storage.max_specific_storage = WEIGHT_CLASS_SMALL
atom_storage.max_total_storage = 4
atom_storage.max_slots = 4
Expand Down
47 changes: 38 additions & 9 deletions modular_skyrat/modules/modular_items/code/bags.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
desc = "It's a nondescript pouch made with dark fabric. It has a clip, for fitting in pockets."
icon = 'modular_skyrat/modules/modular_items/icons/storage.dmi'
icon_state = "survival"
w_class = WEIGHT_CLASS_NORMAL
resistance_flags = FLAMMABLE
slot_flags = ITEM_SLOT_POCKETS

Expand All @@ -19,15 +20,35 @@
icon_state = "ammopouch"
w_class = WEIGHT_CLASS_BULKY
custom_price = PAYCHECK_CREW * 4
// this is just to have post_reskin called later
uses_advanced_reskins = TRUE
unique_reskin = list(
"Ammo Pouch" = list(
RESKIN_ICON_STATE = "ammopouch"
),
"Casing Pouch" = list(
RESKIN_ICON_STATE = "casingpouch"
),
)

/obj/item/storage/pouch/ammo/Initialize(mapload)
. = ..()
atom_storage.max_specific_storage = WEIGHT_CLASS_NORMAL
atom_storage.max_total_storage = 30
atom_storage.max_total_storage = 12
atom_storage.max_slots = 3
atom_storage.numerical_stacking = FALSE
atom_storage.can_hold = typecacheof(list(/obj/item/ammo_box/magazine, /obj/item/ammo_casing, /obj/item/stock_parts/cell/microfusion))

/obj/item/storage/pouch/ammo/post_reskin(mob/our_mob)
if(icon_state == "casingpouch")
name = "casing pouch"
desc = "A pouch for your ammo that goes in your pocket, carefully segmented for holding shell casings and nothing else."
atom_storage.can_hold = typecacheof(list(/obj/item/ammo_casing))
atom_storage.max_specific_storage = WEIGHT_CLASS_TINY
atom_storage.numerical_stacking = TRUE
atom_storage.max_slots = 10
atom_storage.max_total_storage = WEIGHT_CLASS_TINY * 10

/obj/item/storage/pouch/material
name = "material pouch"
desc = "A pouch for sheets and RCD ammunition that manages to hang where you would normally put things in your pocket."
Expand All @@ -47,8 +68,7 @@
/// It's a pocket medkit. Use sparingly?
/obj/item/storage/pouch/medical
name = "medkit pouch"
desc = "A standard medkit pouch compartmentalized for the bare essentials of field medical care, made with fireproof kevlar \
(but hopefully you never have to test that). Cannot, itself, contain a medkit. Comes with a pocket clip."
desc = "A standard medkit pouch compartmentalized for field medical care. Comes with a set of pocket clips."
resistance_flags = FIRE_PROOF
icon_state = "medkit"
/// The list of things that medical pouches can hold. Stolen from what medkits can hold, but modified for things you would probably want at pocket-access.
Expand All @@ -65,6 +85,7 @@
/obj/item/reagent_containers/spray,
/obj/item/reagent_containers/hypospray,
/obj/item/storage/pill_bottle,
/obj/item/storage/box/bandages,
/obj/item/stack/medical,
/obj/item/flashlight/pen,
/obj/item/bonesetter,
Expand Down Expand Up @@ -96,23 +117,31 @@
/// It's... not as egregious as a full pocket medkit.
/obj/item/storage/pouch/medical/firstaid
name = "first aid pouch"
desc = "A standard nondescript first-aid pouch, compartmentalized for the bare essentials of field medical care. Made with fireproof kevlar \
(but hopefully you never have to test that). Slightly smaller than a full-on medkit, \
but has better weight distribution, making it more comfortable to wear. Comes with a pocket-clip."
desc = "A standard nondescript first-aid pouch, compartmentalized for the bare essentials of field medical care. Comes with a pocket clip."
icon_state = "firstaid"

/obj/item/storage/pouch/medical/firstaid/Initialize(mapload)
. = ..()
atom_storage.max_specific_storage = WEIGHT_CLASS_SMALL
atom_storage.max_slots = 4
atom_storage.max_total_storage = 8
/*
hi. you might think this is egregious. five slots? that's a lot!
here's a thought: the pocket first aid kit from the colonial replicator [modular_skyrat\modules\food_replicator\code\storage.dm] has
mostly unrestricted storage, limited by having 4 max total storage, so at best you're only fitting 4 tiny items. but that's 4 of *any* tiny item.
or 2 small items (that aren't guns/mags). so it's basically just turning 1 pocket slot into 2, if you think about it hard enough.
this is a thing you have to buy from cargo's goodies tab. not even an import. and it only fits medical supplies.
i think it can have a lil extra storage as a treat.
*/
atom_storage.max_slots = 5
atom_storage.max_total_storage = 10
atom_storage.numerical_stacking = TRUE

/obj/item/storage/pouch/medical/firstaid/loaded/Initialize(mapload)
. = ..()
desc += " Repackaged with station-standard medical supplies."
var/static/items_inside = list(
/obj/item/stack/medical/suture = 1,
/obj/item/stack/medical/mesh = 1,
/obj/item/storage/box/bandages = 1,
/obj/item/stack/medical/gauze/twelve = 1,
/obj/item/reagent_containers/hypospray/medipen/ekit = 1,
)
Expand All @@ -125,6 +154,6 @@
/obj/item/cautery = 1,
/obj/item/bonesetter = 1,
/obj/item/stack/medical/gauze/twelve = 1,
/obj/item/reagent_containers/hypospray/medipen/ekit = 1,
/obj/item/reagent_containers/hypospray/medipen/ekit = 2,
)
generate_items_inside(items_inside, src)
Binary file modified modular_skyrat/modules/modular_items/icons/storage.dmi
Binary file not shown.