|
Torch
|
#include <MapFactory.h>
Public Attributes | |
| uint32_t | word0 |
| int16_t | unk4 [3] |
| uint16_t | wordA |
SpriteProp: 2D billboard sprite (is_actor=0, is_3d=0) - 12 bytes Decomp: sprite_prop_s from props.h
Complete Structure Layout (12 bytes): Offset 0x00-0x03: word0 (32-bit packed) - sprite appearance/rendering parameters Offset 0x04-0x09: unk4[3] (s16[3]) - X, Y, Z world position Offset 0x0A-0x0B: wordA (16-bit packed) - animation frame + discriminator flags
Packed Field Layout (word0 - 32-bit big-endian at offset 0x00): Bits 31-20: spriteId (12 bits) → Asset ID = spriteId + SPRITE_ASSET_OFFSET (0x572) Bit 19: unk0_19 (1 bit) Bits 18-16: rgb_remove_red (3 bits, 0-7 color removal value) Bits 15-13: rgb_remove_green (3 bits, 0-7 color removal value) Bits 12-10: rgb_remove_blue (3 bits, 0-7 color removal value) Bits 9-2: scale (8 bits) Bit 1: isMirrored (1 bit, horizontal flip) Bit 0: pad0_0 (1 bit)
Packed Field Layout (wordA - 16-bit big-endian at offset 0x0A): Bits 15-11: frame (5 bits, animation frame index) Bits 10-6: unk8_10 (5 bits) Bit 5: unk8_5 (1 bit) Bit 4: isNotFeatherEggOrNote (1 bit) Bit 3: unk8_3 (1 bit) Bit 2: isCollisionResolved (1 bit) Bit 1: isModelProp (1 bit, always 0 for sprites) Bit 0: isActorProp (1 bit, always 0 for sprites)