mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2026-08-24 05:07:18 +01:00
Belts & Trashbags (#7443)
requires #6644 Entirely replaces how (most) belts perform insertion checks. This pretty much allows belts to hold most things. Armor vests are next. Trashbags will also use the systems we use on main. Closes #7256 and #7435 --------- Co-authored-by: silicons <silicons@silicons.dev>
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
pickup_sound = 'sound/items/pickup/gun.ogg'
|
||||
worn_render_flags = NONE
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR | SUIT_STORAGE_CLASS_HARDWEAR
|
||||
belt_storage_class = BELT_CLASS_MEDIUM
|
||||
|
||||
/// loaded vial
|
||||
var/obj/item/reagent_containers/glass/hypovial/loaded
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
/// how many [state][#] overlays we have for reagents remaining
|
||||
var/overlay_count = 3
|
||||
item_flags = ITEM_CAREFUL_BLUDGEON | ITEM_ENCUMBERS_WHILE_HELD | ITEM_EASY_LATHE_DECONSTRUCT
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
|
||||
/obj/item/reagent_containers/glass/hypovial/update_icon(updates)
|
||||
cut_overlays()
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(5,10) //Set to null instead of list, if there is only one.
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR | SUIT_STORAGE_CLASS_HARDWEAR
|
||||
belt_storage_class = BELT_CLASS_MEDIUM
|
||||
var/spray_size = 3
|
||||
var/list/spray_sizes = list(1,3)
|
||||
volume = 250
|
||||
@@ -123,6 +124,7 @@
|
||||
icon_state = "pepperspray"
|
||||
item_state = "pepperspray"
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
possible_transfer_amounts = null
|
||||
volume = 40
|
||||
worth_intrinsic = 85
|
||||
|
||||
@@ -235,7 +235,7 @@
|
||||
data["is_pill_bottle_loaded"] = pill_bottle ? TRUE : FALSE
|
||||
if(pill_bottle)
|
||||
data["pill_bottle_current_amount"] = pill_bottle.contents.len
|
||||
data["pill_bottle_max_amount"] = pill_bottle.max_combined_volume
|
||||
data["pill_bottle_max_amount"] = pill_bottle.obj_storage?.max_combined_volume / ITEM_VOLUME_PILL
|
||||
|
||||
data["is_beaker_loaded"] = beaker ? TRUE : FALSE
|
||||
data["beaker_current_volume"] = beaker ? round(beaker.reagents.total_volume, 0.01) : null
|
||||
@@ -402,8 +402,8 @@
|
||||
var/target_loc = drop_location()
|
||||
var/drop_threshold = INFINITY
|
||||
if(pill_bottle)
|
||||
if(pill_bottle.max_combined_volume)
|
||||
drop_threshold = pill_bottle.max_combined_volume - pill_bottle.contents.len
|
||||
if(pill_bottle.obj_storage)
|
||||
drop_threshold = (pill_bottle.obj_storage.max_combined_volume - pill_bottle.contents.len * ITEM_VOLUME_PILL) / ITEM_VOLUME_PILL
|
||||
target_loc = pill_bottle
|
||||
for(var/i in 1 to amount)
|
||||
if(i-1 < drop_threshold)
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
pickup_sound = 'sound/items/pickup/glass.ogg'
|
||||
integrity_flags = INTEGRITY_ACIDPROOF
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
|
||||
/obj/item/reagent_containers/dropper/examine(mob/user, dist)
|
||||
. = ..()
|
||||
|
||||
@@ -153,6 +153,7 @@
|
||||
item_state = "beaker"
|
||||
materials_base = list(MAT_GLASS = 500)
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
drop_sound = 'sound/items/drop/glass.ogg'
|
||||
pickup_sound = 'sound/items/pickup/glass.ogg'
|
||||
@@ -160,7 +161,6 @@
|
||||
var/rped_rating = 0
|
||||
item_flags = ITEM_CAREFUL_BLUDGEON | ITEM_ENCUMBERS_WHILE_HELD | ITEM_EASY_LATHE_DECONSTRUCT
|
||||
|
||||
|
||||
/obj/item/reagent_containers/glass/beaker/Initialize(mapload)
|
||||
. = ..()
|
||||
desc += " Can hold up to [volume] units."
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
pickup_sound = 'sound/items/pickup/gun.ogg'
|
||||
preserve_item = 1
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
var/filled = 0
|
||||
var/list/filled_reagents = list()
|
||||
var/hyposound // What sound do we play on use?
|
||||
|
||||
@@ -12,9 +12,12 @@
|
||||
pickup_sound = 'sound/items/pickup/food.ogg'
|
||||
rad_flags = RAD_NO_CONTAMINATE
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
belt_storage_size = BELT_SIZE_FOR_PILL
|
||||
|
||||
possible_transfer_amounts = null
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
weight_volume = ITEM_VOLUME_PILL
|
||||
slot_flags = SLOT_EARS
|
||||
volume = 60
|
||||
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
rad_flags = RAD_NO_CONTAMINATE
|
||||
item_flags = ITEM_NO_BLUDGEON | ITEM_ENCUMBERS_WHILE_HELD | ITEM_EASY_LATHE_DECONSTRUCT
|
||||
suit_storage_class = SUIT_STORAGE_CLASS_SOFTWEAR
|
||||
belt_storage_class = BELT_CLASS_SMALL
|
||||
belt_storage_size = BELT_SIZE_FOR_SYRINGE
|
||||
var/mode = SYRINGE_DRAW
|
||||
var/image/filling //holds a reference to the current filling overlay
|
||||
var/visible_name = "a syringe"
|
||||
|
||||
Reference in New Issue
Block a user