Cstat (sprite)
Jump to navigation
Jump to search
cstat is a bitfield for how to draw an actor, as well as a few flags for interaction.
Not to be confused with wall cstat.
Flags
The following values are used with sprite cstat.
Exposed | Value | Label | Description | |
---|---|---|---|---|
No | 1 | CSTAT_SPRITE_BLOCK | Make sprite blockable | |
No | 2 | CSTAT_SPRITE_TRANSLUCENT | Make sprite transparent | |
No | 4 | CSTAT_SPRITE_XFLIP | Flip sprite around x-axis | |
No | 8 | CSTAT_SPRITE_YFLIP | Flip sprite around y-axis | |
No | 16 | CSTAT_SPRITE_WALL | Draw sprite as vertically flat (wall aligned) | |
No | 32 | CSTAT_SPRITE_FLOOR | Draw sprite as horizontally flat (floor aligned) | |
No | 64 | CSTAT_SPRITE_ONE_SIDE | Make sprite one sided | |
No | 128 | CSTAT_SPRITE_YCENTER | Half submerged | |
No | 256 | CSTAT_SPRITE_BLOCK_HITSCAN | Make sprite able to be hit by weapons | |
No | 512 | CSTAT_SPRITE_TRANS_FLIP | Second transparency level (combine with cstat 2) | |
No | 1024 | Sprite will take priority being drawn over other sprites (may be subject to change) | ||
No | 2048 | CSTAT_SPRITE_NOSHADE | Sprite will not be forced to take shade of sector | |
No | 8192 | Sprite will not cast a Polymer shadow | ||
No | 16384 | Sprite will be invisible but will still cast a Polymer shadow | ||
No | 32768 | CSTAT_SPRITE_INVISIBLE | Invisible (do not render, skip EVENT_ANIMATESPRITES) |
Defines |
define CSTAT_SPRITE_BLOCK 0x00000001 define CSTAT_SPRITE_TRANSLUCENT 0x00000002 define CSTAT_SPRITE_XFLIP 0x00000004 define CSTAT_SPRITE_YFLIP 0x00000008 define CSTAT_SPRITE_WALL 0x00000010 define CSTAT_SPRITE_FLOOR 0x00000020 define CSTAT_SPRITE_ONE_SIDE 0x00000040 define CSTAT_SPRITE_YCENTER 0x00000080 define CSTAT_SPRITE_BLOCK_HITSCAN 0x00000100 define CSTAT_SPRITE_TRANS_FLIP 0x00000200 define CSTAT_SPRITE_NOSHADE 0x00000800 define CSTAT_SPRITE_INVISIBLE 0x00008000 |