mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-05-17 12:20:09 +01:00
bf29ca396f
* fixes per pile lootable counts * shovel digging element * retooled to flag * take two * proc that * sand digging * collapse that system in too * allow base loot * desc * potat * fix that * no making that on rocks * oops * var version * prevent that dupe * fixes --------- Co-authored-by: Cameron Lennox <killer65311@gmail.com>
58 lines
2.3 KiB
Plaintext
58 lines
2.3 KiB
Plaintext
#define TURF_REMOVE_CROWBAR 1
|
|
#define TURF_REMOVE_SCREWDRIVER 2
|
|
#define TURF_REMOVE_SHOVEL 4
|
|
#define TURF_REMOVE_WRENCH 8
|
|
#define TURF_CAN_BREAK 16
|
|
#define TURF_CAN_BURN 32
|
|
#define TURF_HAS_EDGES 64
|
|
#define TURF_HAS_CORNERS 128
|
|
#define TURF_IS_FRAGILE 256
|
|
#define TURF_ACID_IMMUNE 512
|
|
#define TURF_UNSHIELDABLE 1024
|
|
#define TURF_CAN_DIG_SHOVEL 2048
|
|
// The 0x800000 is blocked by INITIALIZED, do NOT use it!
|
|
|
|
//Used for floor/wall smoothing
|
|
#define SMOOTH_NONE 0 //Smooth only with itself
|
|
#define SMOOTH_ALL 1 //Smooth with all of type
|
|
#define SMOOTH_WHITELIST 2 //Smooth with a whitelist of subtypes
|
|
#define SMOOTH_BLACKLIST 3 //Smooth with all but a blacklist of subtypes
|
|
#define SMOOTH_GREYLIST 4 // Use a whitelist and a blacklist at the same time. atom smoothing only
|
|
|
|
#define isCardinal(x) (x == NORTH || x == SOUTH || x == EAST || x == WEST)
|
|
#define isDiagonal(x) (x == NORTHEAST || x == SOUTHEAST || x == NORTHWEST || x == SOUTHWEST)
|
|
|
|
#define IS_OPAQUE_TURF(turf) (turf.directional_opacity == ALL_CARDINALS)
|
|
#define IS_OPAQUE_TURF_DIR(turf, dir) (turf.directional_opacity & dir)
|
|
#define FOOTSTEP_SPRITE_AMT 2
|
|
|
|
// Used to designate if a turf (or its area) should initialize as outdoors or not.
|
|
#define OUTDOORS_YES 1 // This being 1 helps with backwards compatibility.
|
|
#define OUTDOORS_NO 0 // Ditto.
|
|
#define OUTDOORS_AREA -1 // If a turf has this, it will defer to the area's settings on init.
|
|
// Note that after init, it will be either YES or NO.
|
|
|
|
//supposedly the fastest way to do this according to https://gist.github.com/Giacom/be635398926bb463b42a
|
|
///Returns a list of turf in a square
|
|
#define RANGE_TURFS(RADIUS, CENTER) \
|
|
RECT_TURFS(RADIUS, RADIUS, CENTER)
|
|
|
|
#define RECT_TURFS(H_RADIUS, V_RADIUS, CENTER) \
|
|
block( \
|
|
(CENTER).x - (H_RADIUS), (CENTER).y - (V_RADIUS), (CENTER).z, \
|
|
(CENTER).x + (H_RADIUS), (CENTER).y + (V_RADIUS), (CENTER).z \
|
|
)
|
|
|
|
// Wet turfs have different slipping intensities
|
|
#define TURFSLIP_DRY 0
|
|
#define TURFSLIP_WET 1
|
|
#define TURFSLIP_LUBE 2
|
|
#define TURFSLIP_ICE 3
|
|
|
|
///Returns all turfs in a zlevel
|
|
#define Z_TURFS(ZLEVEL) block(1, 1, ZLEVEL, world.maxx, world.maxy, ZLEVEL)
|
|
|
|
/// Digging loot with a shovel
|
|
#define TURF_DIG_LOOT_ENDLESS 0
|
|
#define TURF_DIG_LOOT_EXHAUSTED 100
|