Decompile/port event_object_movement
This commit is contained in:
+65
-44
@@ -169,61 +169,61 @@ struct MapHeader
|
||||
struct ObjectEvent
|
||||
{
|
||||
/*0x00*/ u32 active:1;
|
||||
u32 mapobj_bit_1:1;
|
||||
u32 mapobj_bit_2:1;
|
||||
u32 mapobj_bit_3:1;
|
||||
u32 mapobj_bit_4:1;
|
||||
u32 mapobj_bit_5:1;
|
||||
u32 mapobj_bit_6:1;
|
||||
u32 mapobj_bit_7:1;
|
||||
/*0x01*/ u32 mapobj_bit_8:1;
|
||||
u32 mapobj_bit_9:1;
|
||||
u32 mapobj_bit_10:1;
|
||||
u32 mapobj_bit_11:1;
|
||||
u32 mapobj_bit_12:1;
|
||||
u32 mapobj_bit_13:1;
|
||||
u32 mapobj_bit_14:1;
|
||||
u32 mapobj_bit_15:1;
|
||||
/*0x02*/ u32 mapobj_bit_16:1;
|
||||
u32 mapobj_bit_17:1;
|
||||
u32 mapobj_bit_18:1;
|
||||
u32 mapobj_bit_19:1;
|
||||
u32 mapobj_bit_20:1;
|
||||
u32 mapobj_bit_21:1;
|
||||
u32 mapobj_bit_22:1;
|
||||
u32 mapobj_bit_23:1;
|
||||
/*0x03*/ u32 mapobj_bit_24:1;
|
||||
u32 mapobj_bit_25:1;
|
||||
u32 mapobj_bit_26:1;
|
||||
u32 mapobj_bit_27:1;
|
||||
u32 singleMovementActive:1;
|
||||
u32 triggerGroundEffectsOnMove:1;
|
||||
u32 triggerGroundEffectsOnStop:1;
|
||||
u32 disableCoveringGroundEffects:1;
|
||||
u32 landingJump:1;
|
||||
u32 heldMovementActive:1;
|
||||
u32 heldMovementFinished:1;
|
||||
/*0x01*/ u32 frozen:1;
|
||||
u32 facingDirectionLocked:1;
|
||||
u32 disableAnim:1;
|
||||
u32 enableAnim:1;
|
||||
u32 inanimate:1;
|
||||
u32 invisible:1;
|
||||
u32 offScreen:1;
|
||||
u32 trackedByCamera:1;
|
||||
/*0x02*/ u32 isPlayer:1;
|
||||
u32 hasReflection:1;
|
||||
u32 inShortGrass:1;
|
||||
u32 inShallowFlowingWater:1;
|
||||
u32 inSandPile:1;
|
||||
u32 inHotSprings:1;
|
||||
u32 hasShadow:1;
|
||||
u32 spriteAnimPausedBackup:1;
|
||||
/*0x03*/ u32 spriteAffineAnimPausedBackup:1;
|
||||
u32 disableJumpLandingGroundEffect:1;
|
||||
u32 fixedPriority:1;
|
||||
u32 hideReflection:1;
|
||||
u32 mapobj_bit_28:1;
|
||||
u32 mapobj_bit_29:1;
|
||||
u32 mapobj_bit_30:1;
|
||||
u32 mapobj_bit_31:1;
|
||||
/*0x04*/ u8 spriteId;
|
||||
/*0x05*/ u8 graphicsId;
|
||||
/*0x06*/ u8 animPattern;
|
||||
/*0x06*/ u8 movementType;
|
||||
/*0x07*/ u8 trainerType;
|
||||
/*0x08*/ u8 localId;
|
||||
/*0x09*/ u8 mapNum;
|
||||
/*0x0A*/ u8 mapGroup;
|
||||
/*0x0B*/ u8 mapobj_unk_0B_0:4;
|
||||
u8 elevation:4;
|
||||
/*0x0C*/ struct Coords16 coords1;
|
||||
/*0x10*/ struct Coords16 coords2;
|
||||
/*0x14*/ struct Coords16 coords3;
|
||||
/*0x18*/ u8 facingDirection:4; //current direction?
|
||||
/*0x18*/ u8 placeholder18:4;
|
||||
/*0x0B*/ u8 currentElevation:4;
|
||||
u8 previousElevation:4;
|
||||
/*0x0C*/ struct Coords16 initialCoords;
|
||||
/*0x10*/ struct Coords16 currentCoords;
|
||||
/*0x14*/ struct Coords16 previousCoords;
|
||||
/*0x18*/ u8 facingDirection:4; // current direction?
|
||||
/*0x18*/ u8 movementDirection:4;
|
||||
/*0x19*/ union ObjectEventRange range;
|
||||
/*0x1A*/ u8 mapobj_unk_1A;
|
||||
/*0x1B*/ u8 mapobj_unk_1B;
|
||||
/*0x1C*/ u8 mapobj_unk_1C;
|
||||
/*0x1A*/ u8 fieldEffectSpriteId;
|
||||
/*0x1B*/ u8 warpArrowSpriteId;
|
||||
/*0x1C*/ u8 movementActionId;
|
||||
/*0x1D*/ u8 trainerRange_berryTreeId;
|
||||
/*0x1E*/ u8 mapobj_unk_1E;
|
||||
/*0x1F*/ u8 mapobj_unk_1F;
|
||||
/*0x20*/ u8 mapobj_unk_20;
|
||||
/*0x21*/ u8 mapobj_unk_21;
|
||||
/*0x22*/ u8 animId;
|
||||
/*0x1E*/ u8 currentMetatileBehavior;
|
||||
/*0x1F*/ u8 previousMetatileBehavior;
|
||||
/*0x20*/ u8 previousMovementDirection;
|
||||
/*0x21*/ u8 directionSequenceIndex;
|
||||
/*0x22*/ u8 playerCopyableMovement;
|
||||
/*size = 0x24*/
|
||||
};
|
||||
|
||||
@@ -269,7 +269,28 @@ enum
|
||||
|
||||
enum
|
||||
{
|
||||
COLLISION_LEDGE_JUMP = 6
|
||||
COLLISION_NONE,
|
||||
COLLISION_OUTSIDE_RANGE,
|
||||
COLLISION_IMPASSABLE,
|
||||
COLLISION_ELEVATION_MISMATCH,
|
||||
COLLISION_OBJECT_EVENT,
|
||||
COLLISION_STOP_SURFING,
|
||||
COLLISION_LEDGE_JUMP,
|
||||
COLLISION_PUSHED_BOULDER,
|
||||
COLLISION_ROTATING_GATE,
|
||||
COLLISION_WHEELIE_HOP,
|
||||
COLLISION_ISOLATED_VERTICAL_RAIL,
|
||||
COLLISION_ISOLATED_HORIZONTAL_RAIL,
|
||||
COLLISION_VERTICAL_RAIL,
|
||||
COLLISION_HORIZONTAL_RAIL,
|
||||
};
|
||||
|
||||
// player tile transition states
|
||||
enum
|
||||
{
|
||||
T_NOT_MOVING,
|
||||
T_TILE_TRANSITION,
|
||||
T_TILE_CENTER, // player is on a frame in which they are centered on a tile during which the player either stops or keeps their momentum and keeps going, changing direction if necessary.
|
||||
};
|
||||
|
||||
struct PlayerAvatar /* 0x202E858 */
|
||||
|
||||
Reference in New Issue
Block a user