Skip to content
Draft
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
27 changes: 27 additions & 0 deletions code/__DEFINES/inventory.dm
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,33 @@ DEFINE_BITFIELD(no_equip_flags, list(
/// The index of the entry in 'afk_thefts' with the time it happened
#define AFK_THEFT_TIME 3

/// A list of things that any suit storage can hold
/// Should consist of ubiquitous, non-specialized items
/// or items that are meant to be "suit storage agnostic" as
/// a benefit, which of the time of this commit only applies
/// to the captain's jetpack, here
GLOBAL_LIST_INIT(any_suit_storage, typecacheof(list(
/obj/item/clipboard,
/obj/item/flashlight,
/obj/item/tank/internals/emergency_oxygen,
/obj/item/tank/internals/plasmaman,
/obj/item/lighter,
/obj/item/pen,
/obj/item/modular_computer/pda,
/obj/item/toy,
/obj/item/radio,
/obj/item/storage/bag/books,
/obj/item/storage/fancy/cigarettes,
/obj/item/tank/jetpack/oxygen/captain,
/obj/item/stack/spacecash,
/obj/item/storage/wallet,
/obj/item/folder,
/obj/item/storage/box/matches,
/obj/item/clothing/mask/cigarette,
/obj/item/storage/belt/holster,
/obj/item/storage/pouch,
)))

//Allowed equipment lists for security vests.

GLOBAL_LIST_INIT(detective_vest_allowed, list(
Expand Down
4 changes: 4 additions & 0 deletions code/controllers/subsystem/wardrobe.dm
Original file line number Diff line number Diff line change
Expand Up @@ -313,6 +313,10 @@ SUBSYSTEM_DEF(wardrobe)
play_with[WARDROBE_CALLBACK_REMOVE] = CALLBACK(null, TYPE_PROC_REF(/obj/item/storage/box/survival, wardrobe_removal))
initial_callbacks[/obj/item/storage/box/survival] = play_with

play_with = new /list(WARDROBE_CALLBACK_REMOVE)
play_with[WARDROBE_CALLBACK_REMOVE] = CALLBACK(null, TYPE_PROC_REF(/obj/item/storage/pouch/survival, wardrobe_removal))
initial_callbacks[/obj/item/storage/pouch/survival] = play_with

/datum/controller/subsystem/wardrobe/proc/load_outfits()
for(var/datum/outfit/to_stock as anything in subtypesof(/datum/outfit))
if(!initial(to_stock.preload)) // Clearly not interested
Expand Down
2 changes: 1 addition & 1 deletion code/datums/storage/storage.dm
Original file line number Diff line number Diff line change
Expand Up @@ -437,7 +437,7 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches)
if(!can_insert(to_insert, user, messages = messages, force = force))
return FALSE

SEND_SIGNAL(parent, COMSIG_STORAGE_STORED_ITEM, to_insert, user, force)
SEND_SIGNAL(parent, COMSIG_ATOM_STORED_ITEM, to_insert, user, force)
SEND_SIGNAL(src, COMSIG_STORAGE_STORED_ITEM, to_insert, user, force)
RegisterSignal(to_insert, COMSIG_MOUSEDROPPED_ONTO, PROC_REF(mousedrop_receive))
to_insert.forceMove(real_location)
Expand Down
2 changes: 2 additions & 0 deletions code/game/objects/items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@

///Icon file for mob worn overlays.
var/icon/worn_icon
///Icon file used in occasional cases where the item must be mirrored
var/mirror_icon
///Icon state for mob worn overlays, if null the normal icon_state will be used.
var/worn_icon_state
///Icon state for the belt overlay, if null the normal icon_state will be used.
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/devices/laserpointer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
item_flags = NOBLUDGEON
slot_flags = ITEM_SLOT_BELT
custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 5)
w_class = WEIGHT_CLASS_SMALL
w_class = WEIGHT_CLASS_TINY
///Currently stored blulespace crystal, if any. Required to use the pointer through walls
var/obj/item/stack/ore/bluespace_crystal/crystal_lens
///Currently stored micro-laser diode
Expand Down
3 changes: 2 additions & 1 deletion code/game/objects/items/devices/scanners/health_analyzer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
item_flags = NOBLUDGEON
slot_flags = ITEM_SLOT_BELT
throwforce = 3
w_class = WEIGHT_CLASS_TINY
w_class = WEIGHT_CLASS_SMALL
throw_speed = 3
throw_range = 7
custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT *2)
Expand Down Expand Up @@ -604,6 +604,7 @@
desc = "A helpful, child-proofed, and most importantly, extremely cheap MeLo-Tech medical scanner used to diagnose injuries and recommend treatment for serious wounds. While it might not sound very informative for it to be able to tell you if you have a gaping hole in your body or not, it applies a temporary holoimage near the wound with information that is guaranteed to double the efficacy and speed of treatment."
mode = SCANNER_NO_MODE
give_wound_treatment_bonus = TRUE
w_class = WEIGHT_CLASS_TINY

/// Cooldown for when the analyzer will allow you to ask it for encouragement. Don't get greedy!
var/next_encouragement
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
item_flags = NOBLUDGEON
slot_flags = ITEM_SLOT_BELT
throwforce = 3
w_class = WEIGHT_CLASS_TINY
w_class = WEIGHT_CLASS_SMALL
throw_speed = 3
throw_range = 7
custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*2)
Expand Down
2 changes: 2 additions & 0 deletions code/game/objects/items/storage/bags.dm
Original file line number Diff line number Diff line change
Expand Up @@ -496,6 +496,7 @@
/obj/item/reagent_containers/cup/tube,
/obj/item/reagent_containers/hypospray/medipen,
/obj/item/reagent_containers/syringe,
/obj/item/food/meat/slab,
))

/*
Expand Down Expand Up @@ -556,6 +557,7 @@
/obj/item/stack/ore/bluespace_crystal,
/obj/item/stock_parts,
/obj/item/wallframe/camera,
/obj/item/stack/sheet,
))

/obj/item/storage/bag/harpoon_quiver
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/storage/medkit.dm
Original file line number Diff line number Diff line change
Expand Up @@ -797,7 +797,7 @@
inhand_icon_state = "contsolid"
lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi'
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
w_class = WEIGHT_CLASS_SMALL
w_class = WEIGHT_CLASS_NORMAL

/obj/item/storage/test_tube_rack/Initialize(mapload)
. = ..()
Expand Down
2 changes: 1 addition & 1 deletion code/modules/antagonists/clown_ops/outfits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
/obj/item/reagent_containers/spray/waterflower/lube = 1,
/obj/item/mod/skin_applier/honkerative = 1,
)
box = /obj/item/storage/box/survival/syndie
box = /obj/item/storage/pouch/survival/syndie
implants = list(/obj/item/implant/sad_trombone)

uplink_type = /obj/item/uplink/clownop
Expand Down
2 changes: 1 addition & 1 deletion code/modules/antagonists/nukeop/outfits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
belt = /obj/item/gun/ballistic/automatic/pistol/clandestine

skillchips = list(/obj/item/skillchip/disk_verifier)
box = /obj/item/storage/box/survival/syndie
box = /obj/item/storage/pouch/survival/syndie
/// Amount of TC to automatically store in this outfit's uplink.
var/tc = 25
/// Enables big voice on this outfit's headset, used for nukie leaders.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
id_trim = /datum/id_trim/chameleon/operative

backpack_contents = list(
/obj/item/storage/box/survival,
/obj/item/storage/pouch/survival,
/obj/item/implanter/uplink,
/obj/item/clothing/mask/chameleon,
/obj/item/storage/fancy/cigarettes/cigpack_syndicate,
Expand Down
2 changes: 1 addition & 1 deletion code/modules/bitrunning/server/obj_generation.dm
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
QDEL_LIST(bag.contents)

bag.contents += list(
new /obj/item/storage/box/survival,
new /obj/item/storage/pouch/survival,
new /obj/item/storage/medkit/regular,
new /obj/item/flashlight,
)
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/ears/_ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
resistance_flags = FLAMMABLE
custom_price = PAYCHECK_COMMAND * 1.5
flags_cover = EARS_COVERED
w_class = WEIGHT_CLASS_SMALL

/obj/item/clothing/ears/earmuffs/Initialize(mapload)
. = ..()
Expand Down
22 changes: 11 additions & 11 deletions code/modules/clothing/outfits/ert.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
id = /obj/item/card/id/advanced/centcom/ert
back = /obj/item/mod/control/pre_equipped/responsory/commander
l_hand = /obj/item/gun/energy/e_gun
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/melee/baton/security/loaded = 1,
)
Expand All @@ -66,7 +66,7 @@
id = /obj/item/card/id/advanced/centcom/ert/security
back = /obj/item/mod/control/pre_equipped/responsory/security
l_hand = /obj/item/gun/energy/e_gun/stun
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/melee/baton/security/loaded = 1,
/obj/item/storage/box/handcuffs = 1,
Expand All @@ -90,7 +90,7 @@

id = /obj/item/card/id/advanced/centcom/ert/medical
back = /obj/item/mod/control/pre_equipped/responsory/medic
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/gun/medbeam = 1,
/obj/item/melee/baton/security/loaded = 1,
Expand Down Expand Up @@ -122,7 +122,7 @@
id = /obj/item/card/id/advanced/centcom/ert/engineer
back = /obj/item/mod/control/pre_equipped/responsory/engineer
l_hand = /obj/item/gun/energy/e_gun
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/construction/rcd/loaded/upgraded = 1,
/obj/item/melee/baton/security/loaded = 1,
Expand Down Expand Up @@ -150,7 +150,7 @@
id_trim = /datum/id_trim/centcom/official
uniform = /obj/item/clothing/under/rank/centcom/official
back = /obj/item/storage/backpack/satchel
box = /obj/item/storage/box/survival
box = /obj/item/storage/pouch/survival
backpack_contents = list(
/obj/item/stamp/centcom = 1,
)
Expand Down Expand Up @@ -212,7 +212,7 @@
l_hand = /obj/item/gun/energy/e_gun
belt = /obj/item/storage/belt/soulstone
glasses = /obj/item/clothing/glasses/hud/health
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/nullrod = 1,
)
Expand All @@ -233,7 +233,7 @@

id = /obj/item/card/id/advanced/centcom/ert/janitor
back = /obj/item/mod/control/pre_equipped/responsory/janitor
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/grenade/clusterbuster/cleaner = 1,
/obj/item/melee/baton/security/loaded = 1,
Expand Down Expand Up @@ -263,7 +263,7 @@

id = /obj/item/card/id/advanced/centcom/ert/clown
back = /obj/item/mod/control/pre_equipped/responsory/clown
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/gun/ballistic/revolver/reverse = 1,
/obj/item/melee/energy/sword/bananium = 1,
Expand Down Expand Up @@ -293,7 +293,7 @@
id_trim = /datum/id_trim/centcom/intern
uniform = /obj/item/clothing/under/rank/centcom/intern
back = /obj/item/storage/backpack/satchel
box = /obj/item/storage/box/survival
box = /obj/item/storage/pouch/survival
belt = /obj/item/melee/baton
ears = /obj/item/radio/headset/headset_cent
glasses = /obj/item/clothing/glasses/sunglasses
Expand Down Expand Up @@ -427,7 +427,7 @@
id_trim = /datum/id_trim/centcom/deathsquad
uniform = /obj/item/clothing/under/rank/centcom/commander
back = /obj/item/mod/control/pre_equipped/apocryphal
box = /obj/item/storage/box/survival/centcom
box = /obj/item/storage/pouch/survival/centcom
backpack_contents = list(
/obj/item/ammo_box/a357 = 1,
/obj/item/flashlight = 1,
Expand Down Expand Up @@ -545,7 +545,7 @@
shoes = /obj/item/clothing/shoes/cowboy
gloves = /obj/item/clothing/gloves/combat
back = /obj/item/storage/backpack/satchel/leather
box = /obj/item/storage/box/survival
box = /obj/item/storage/pouch/survival
l_pocket = /obj/item/switchblade
r_pocket = /obj/item/reagent_containers/hypospray/medipen/salacid
ears = /obj/item/radio/headset
Expand Down
2 changes: 1 addition & 1 deletion code/modules/clothing/outfits/event.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
shoes = /obj/item/clothing/shoes/sneakers/red
r_pocket = /obj/item/flashlight

box = /obj/item/storage/box/survival/engineer
box = /obj/item/storage/pouch/survival/engineer

/datum/outfit/santa/post_equip(mob/living/carbon/human/user, visualsOnly = FALSE)
if(visualsOnly)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/clothing/outfits/standard.dm
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@
backpack_contents = list(
/obj/item/spellbook = 1,
)
box = /obj/item/storage/box/survival
box = /obj/item/storage/pouch/survival
ears = /obj/item/radio/headset
head = /obj/item/clothing/head/wizard
shoes = /obj/item/clothing/shoes/sandal/magic
Expand Down
2 changes: 1 addition & 1 deletion code/modules/clothing/outfits/vr.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
id_trim = /datum/id_trim/vr/operative
uniform = /obj/item/clothing/under/syndicate
back = /obj/item/storage/backpack
box = /obj/item/storage/box/survival/syndie
box = /obj/item/storage/pouch/survival/syndie
belt = /obj/item/gun/ballistic/automatic/pistol/clandestine
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/combat
Expand Down
7 changes: 7 additions & 0 deletions code/modules/clothing/under/accessories/badges.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
name = "attorney's badge"
desc = "Fills you with the conviction of JUSTICE. Lawyers tend to want to show it to everyone they meet."
icon_state = "lawyerbadge"
w_class = WEIGHT_CLASS_TINY

/obj/item/clothing/accessory/lawyers_badge/interact(mob/user)
. = ..()
Expand All @@ -28,6 +29,7 @@
name = "\improper Clown Pin"
desc = "A pin to show off your appreciation for clowns and clowning!"
icon_state = "clown_enjoyer_pin"
w_class = WEIGHT_CLASS_TINY

/obj/item/clothing/accessory/clown_enjoyer_pin/can_attach_accessory(obj/item/clothing/under/attach_to, mob/living/user)
. = ..()
Expand Down Expand Up @@ -56,6 +58,7 @@
name = "\improper Mime Pin"
desc = "A pin to show off your appreciation for mimes and miming!"
icon_state = "mime_fan_pin"
w_class = WEIGHT_CLASS_TINY

/obj/item/clothing/accessory/mime_fan_pin/can_attach_accessory(obj/item/clothing/under/attach_to, mob/living/user)
. = ..()
Expand Down Expand Up @@ -198,18 +201,21 @@
name = "deaf personnel pin"
desc = "Indicates that the wearer is deaf."
icon_state = "deaf_pin"
w_class = WEIGHT_CLASS_TINY

///Awarded for being dutiful and extinguishing the debt from the "Indebted" quirk.
/obj/item/clothing/accessory/debt_payer_pin
name = "debt payer pin"
desc = "I've paid my debt and all I've got was this pin."
icon_state = "debt_payer_pin"
w_class = WEIGHT_CLASS_TINY

/// Self-identify as a dangerous subversive
/obj/item/clothing/accessory/anti_sec_pin
name = "subversive pin"
desc = "A badge which loudly and proudly proclaims your hostility to the Nanotrasen Security Team, and authority in general."
icon_state = "anti_sec"
w_class = WEIGHT_CLASS_TINY

/obj/item/clothing/accessory/anti_sec_pin/Initialize(mapload)
. = ..()
Expand Down Expand Up @@ -244,6 +250,7 @@
desc_controls = "Click person with it to show them it"
icon_state = "press_badge"
attachment_slot = NONE // actually NECK but that doesn't make sense
w_class = WEIGHT_CLASS_TINY
/// The name of the person in the badge
var/journalist_name
/// The name of the press person is working for
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/under/accessories/medals.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
icon_state = "bronze"
custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT)
resistance_flags = FIRE_PROOF
w_class = WEIGHT_CLASS_TINY
/// Sprite used for medalbox
var/medaltype = "medal"
/// Has this been use for a commendation?
Expand Down
2 changes: 2 additions & 0 deletions code/modules/clothing/under/accessories/tribal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,12 @@
desc = "A skull shaped ornament, intended to protect the important things in life."
icon_state = "skull"
attachment_slot = GROIN
w_class = WEIGHT_CLASS_NORMAL

/obj/item/clothing/accessory/skilt
name = "Sinew Skirt"
desc = "For the last time. IT'S A KILT not a skirt."
icon_state = "skilt"
minimize_when_attached = FALSE
attachment_slot = GROIN
w_class = WEIGHT_CLASS_NORMAL
4 changes: 4 additions & 0 deletions code/modules/clothing/under/accessories/vests.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
greyscale_config_worn = /datum/greyscale_config/waistcoat/worn
greyscale_colors = "#414344"
flags_1 = IS_PLAYER_COLORABLE_1
w_class = WEIGHT_CLASS_NORMAL

/obj/item/clothing/accessory/vest_sheriff
name = "sheriff vest"
Expand All @@ -22,6 +23,7 @@
inhand_icon_state = "vest_sheriff"
minimize_when_attached = TRUE
attachment_slot = NONE
w_class = WEIGHT_CLASS_NORMAL

/obj/item/clothing/accessory/maidcorset
name = "maid corset"
Expand All @@ -32,6 +34,7 @@
righthand_file = 'icons/mob/inhands/clothing/suits_righthand.dmi'
minimize_when_attached = FALSE
attachment_slot = NONE
w_class = WEIGHT_CLASS_NORMAL

/obj/item/clothing/accessory/maidapron
name = "maid apron"
Expand All @@ -42,3 +45,4 @@
righthand_file = 'icons/mob/inhands/clothing/suits_righthand.dmi'
minimize_when_attached = FALSE
attachment_slot = NONE
w_class = WEIGHT_CLASS_NORMAL
Loading
Loading