Cstat (wall)
Jump to navigation
Jump to search
A bitfield for how to draw a wall, as well as a few flags for interaction. Add all together all wanted flag values.
Unused bits are NOT free for user programming, but are rather reserved for potential future EDuke32 features.
Not to be confused with sprite cstat.
If the wall has cstat 2 applied to it (CSTAT_WALL_BOTTOM_SWAP) than the bottom half's attributes are applied to the current wall's nextwall
Flags
The following values are used with wall cstat.
Exposed | Value | Label | Description | |
---|---|---|---|---|
No | 1 | CSTAT_WALL_BLOCK | Make wall blockable | |
No | 2 | CSTAT_WALL_BOTTOM_SWAP | Make bottoms of invisible walls swapped | |
No | 4 | CSTAT_WALL_ALIGN_BOTTOM | Align picture on bottom | |
No | 8 | CSTAT_WALL_XFLIP | Flip wall around x-axis | |
No | 16 | CSTAT_WALL_MASKED | Make wall masking, two-sided | |
No | 32 | CSTAT_WALL_1WAY | Make wall masking, one-sided. This disables rendering on the other side, meaning it can be used to avoid SOS glitches. However it also disables transparency on the masked wall. | |
No | 64 | CSTAT_WALL_BLOCK_HITSCAN | Make wall able to be hit by weapons | |
No | 128 | CSTAT_WALL_TRANSLUCENT | Make wall transparent | |
No | 256 | CSTAT_WALL_YFLIP | Flip wall around y-axis | |
No | 512 | CSTAT_WALL_TRANS_FLIP | Second transparency level (combine with cstat 128) | |
No | 1024 | CSTAT_WALL_YAX_UPWALL | ||
No | 2048 | CSTAT_WALL_YAX_DOWNWALL | ||
No | 4096 | CSTAT_WALL_ROTATE_90 | Rotate texture by 90 degrees counter-clockwise. (3D-mode hotkey 'R' in mapster32) | |
No | 16384 | CSTAT_WALL_BLOCK_ACTOR | Only used in Shadow Warrior | |
No | 32768 | CSTAT_WALL_WARP_HITSCAN | Only used in Shadow Warrior |
Defines |
define CSTAT_WALL_BLOCK 0x00000001 define CSTAT_WALL_BOTTOM_SWAP 0x00000002 define CSTAT_WALL_ALIGN_BOTTOM 0x00000004 define CSTAT_WALL_XFLIP 0x00000008 define CSTAT_WALL_MASKED 0x00000010 define CSTAT_WALL_1WAY 0x00000020 define CSTAT_WALL_BLOCK_HITSCAN 0x00000040 define CSTAT_WALL_TRANSLUCENT 0x00000080 define CSTAT_WALL_YFLIP 0x00000100 define CSTAT_WALL_TRANS_FLIP 0x00000200 define CSTAT_WALL_YAX_UPWALL 0x00000400 define CSTAT_WALL_YAX_DOWNWALL 0x00000800 define CSTAT_WALL_ROTATE_90 0x00001000 define CSTAT_WALL_BLOCK_ACTOR 0x00004000 define CSTAT_WALL_WARP_HITSCAN 0x00008000 |