Files
GS13NG/code/__DEFINES/storage/volumetrics.dm
T
kevinz000andGitHub 10944d1b52 The bag of holding (and I guess backpack) balancing pass no one asked for (#11864)
* Ok

* whew

* ok

* fix

* ehh

* fix

* buff disks

* Update _compile_options.dm

* Update tgstation.dme
2020-05-15 03:44:56 +02:00

40 lines
1.6 KiB
Plaintext

// PLEASE KEEP ALL VOLUME DEFINES IN THIS FILE, it's going to be hell to keep track of them later.
#define DEFAULT_VOLUME_TINY 2
#define DEFAULT_VOLUME_SMALL 3
#define DEFAULT_VOLUME_NORMAL 4
#define DEFAULT_VOLUME_BULKY 8
#define DEFAULT_VOLUME_HUGE 16
#define DEFAULT_VOLUME_GIGANTIC 32
GLOBAL_LIST_INIT(default_weight_class_to_volume, list(
"[WEIGHT_CLASS_TINY]" = DEFAULT_VOLUME_TINY,
"[WEIGHT_CLASS_SMALL]" = DEFAULT_VOLUME_SMALL,
"[WEIGHT_CLASS_NORMAL]" = DEFAULT_VOLUME_NORMAL,
"[WEIGHT_CLASS_BULKY]" = DEFAULT_VOLUME_BULKY,
"[WEIGHT_CLASS_HUGE]" = DEFAULT_VOLUME_HUGE,
"[WEIGHT_CLASS_GIGANTIC]" = DEFAULT_VOLUME_GIGANTIC
))
/// Macro for automatically getting the volume of an item from its w_class.
#define AUTO_SCALE_VOLUME(w_class) (GLOB.default_weight_class_to_volume["[w_class]"])
/// Macro for automatically getting the volume of a storage item from its max_w_class and max_combined_w_class.
#define AUTO_SCALE_STORAGE_VOLUME(w_class, max_combined_w_class) (AUTO_SCALE_VOLUME(w_class) * (max_combined_w_class / w_class))
// Let's keep all of this in one place. given what we put above anyways..
// volume amount for items
#define ITEM_VOLUME_DISK DEFAULT_VOLUME_TINY
// #define SAMPLE_VOLUME_AMOUNT 2
// max_weight_class for storages
#define MAX_WEIGHT_CLASS_BACKPACK WEIGHT_CLASS_NORMAL
#define MAX_WEIGHT_CLASS_BAG_OF_HOLDING WEIGHT_CLASS_BULKY
// max_volume for storages
#define STORAGE_VOLUME_BACKPACK (DEFAULT_VOLUME_NORMAL * 7)
#define STORAGE_VOLUME_DUFFLEBAG (DEFAULT_VOLUME_NORMAL * 10)
#define STORAGE_VOLUME_BAG_OF_HOLDING (DEFAULT_VOLUME_NORMAL * 20)