mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-28 12:44:18 +01:00
Merge pull request #828 from huderlem/reflection_movement
Document hide/show reflection movement actions
This commit is contained in:
commit
00629ad94e
@ -102,8 +102,8 @@
|
||||
create_movement_action clear_fixed_priority
|
||||
create_movement_action init_affine_anim
|
||||
create_movement_action clear_affine_anim
|
||||
create_movement_action unknown_movement_1
|
||||
create_movement_action unknown_movement_2
|
||||
create_movement_action hide_reflection
|
||||
create_movement_action show_reflection
|
||||
create_movement_action walk_down_start_affine
|
||||
create_movement_action walk_down_affine
|
||||
|
||||
|
@ -179,8 +179,8 @@
|
||||
#define MOVEMENT_ACTION_CLEAR_FIXED_PRIORITY 0x5D
|
||||
#define MOVEMENT_ACTION_INIT_AFFINE_ANIM 0x5E
|
||||
#define MOVEMENT_ACTION_CLEAR_AFFINE_ANIM 0x5F
|
||||
#define MOVEMENT_ACTION_UNKNOWN1 0x60
|
||||
#define MOVEMENT_ACTION_UNKNOWN2 0x61
|
||||
#define MOVEMENT_ACTION_HIDE_REFLECTION 0x60
|
||||
#define MOVEMENT_ACTION_SHOW_REFLECTION 0x61
|
||||
#define MOVEMENT_ACTION_WALK_DOWN_START_AFFINE 0x62
|
||||
#define MOVEMENT_ACTION_WALK_DOWN_AFFINE 0x63
|
||||
#define MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN 0x64
|
||||
|
@ -65,7 +65,7 @@ struct EventObjectTemplate
|
||||
/*0x0E*/ u16 trainerRange_berryTreeId;
|
||||
/*0x10*/ const u8 *script;
|
||||
/*0x14*/ u16 flagId;
|
||||
}; /*size = 0x18*/
|
||||
};
|
||||
|
||||
struct WarpEvent
|
||||
{
|
||||
@ -82,7 +82,6 @@ struct CoordEvent
|
||||
u8 elevation;
|
||||
u16 trigger;
|
||||
u16 index;
|
||||
u8 filler_A[0x2];
|
||||
u8 *script;
|
||||
};
|
||||
|
||||
@ -90,20 +89,14 @@ struct BgEvent
|
||||
{
|
||||
u16 x, y;
|
||||
u8 elevation;
|
||||
u8 kind;
|
||||
union { // carried over from diego's FR/LG work, seems to be the same struct
|
||||
// in gen 3, "kind" (0x3 in BgEvent struct) determines the method to read the union.
|
||||
u8 kind; // The "kind" field determines how to access bgUnion union below.
|
||||
union {
|
||||
u8 *script;
|
||||
|
||||
// hidden item type
|
||||
struct {
|
||||
u16 item;
|
||||
u16 hiddenItemId; // flag offset to determine flag lookup
|
||||
u16 hiddenItemId;
|
||||
} hiddenItem;
|
||||
|
||||
// secret base type
|
||||
u32 secretBaseId;
|
||||
|
||||
} bgUnion;
|
||||
};
|
||||
|
||||
@ -113,7 +106,6 @@ struct MapEvents
|
||||
u8 warpCount;
|
||||
u8 coordEventCount;
|
||||
u8 bgEventCount;
|
||||
|
||||
struct EventObjectTemplate *eventObjects;
|
||||
struct WarpEvent *warps;
|
||||
struct CoordEvent *coordEvents;
|
||||
@ -122,10 +114,10 @@ struct MapEvents
|
||||
|
||||
struct MapConnection
|
||||
{
|
||||
/*0x00*/ u8 direction;
|
||||
/*0x01*/ u32 offset;
|
||||
/*0x05*/ u8 mapGroup;
|
||||
/*0x06*/ u8 mapNum;
|
||||
u8 direction;
|
||||
u32 offset;
|
||||
u8 mapGroup;
|
||||
u8 mapNum;
|
||||
};
|
||||
|
||||
struct MapConnections
|
||||
@ -180,7 +172,7 @@ struct EventObject
|
||||
/*0x03*/ u32 spriteAffineAnimPausedBackup:1;
|
||||
u32 disableJumpLandingGroundEffect:1;
|
||||
u32 fixedPriority:1;
|
||||
u32 unk3_3:1;
|
||||
u32 hideReflection:1;
|
||||
/*0x04*/ u8 spriteId;
|
||||
/*0x05*/ u8 graphicsId;
|
||||
/*0x06*/ u8 movementType;
|
||||
|
@ -170,8 +170,8 @@ u8 MovementAction_SetFixedPriority_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_ClearFixedPriority_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_InitAffineAnim_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_ClearAffineAnim_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_Unknown1_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_Unknown2_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_HideReflection_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_ShowReflection_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_WalkDownStartAffine_Step0(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_WalkDownStartAffine_Step1(struct EventObject *, struct Sprite *);
|
||||
u8 MovementAction_WalkDownAffine_Step0(struct EventObject *, struct Sprite *);
|
||||
@ -358,8 +358,8 @@ u8 (*const gMovementActionFuncs_SetFixedPriority[])(struct EventObject *, struct
|
||||
u8 (*const gMovementActionFuncs_ClearFixedPriority[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_InitAffineAnim[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_ClearAffineAnim[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_Unknown1[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_Unknown2[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_HideReflection[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_ShowReflection[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_WalkDownStartAffine[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_WalkDownAffine[])(struct EventObject *, struct Sprite *);
|
||||
u8 (*const gMovementActionFuncs_AcroWheelieFaceDown[])(struct EventObject *, struct Sprite *);
|
||||
@ -518,8 +518,8 @@ u8 (*const *const gMovementActionFuncs[])(struct EventObject *, struct Sprite *)
|
||||
[MOVEMENT_ACTION_CLEAR_FIXED_PRIORITY] = gMovementActionFuncs_ClearFixedPriority,
|
||||
[MOVEMENT_ACTION_INIT_AFFINE_ANIM] = gMovementActionFuncs_InitAffineAnim,
|
||||
[MOVEMENT_ACTION_CLEAR_AFFINE_ANIM] = gMovementActionFuncs_ClearAffineAnim,
|
||||
[MOVEMENT_ACTION_UNKNOWN1] = gMovementActionFuncs_Unknown1,
|
||||
[MOVEMENT_ACTION_UNKNOWN2] = gMovementActionFuncs_Unknown2,
|
||||
[MOVEMENT_ACTION_HIDE_REFLECTION] = gMovementActionFuncs_HideReflection,
|
||||
[MOVEMENT_ACTION_SHOW_REFLECTION] = gMovementActionFuncs_ShowReflection,
|
||||
[MOVEMENT_ACTION_WALK_DOWN_START_AFFINE] = gMovementActionFuncs_WalkDownStartAffine,
|
||||
[MOVEMENT_ACTION_WALK_DOWN_AFFINE] = gMovementActionFuncs_WalkDownAffine,
|
||||
[MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN] = gMovementActionFuncs_AcroWheelieFaceDown,
|
||||
@ -1197,13 +1197,13 @@ u8 (*const gMovementActionFuncs_ClearAffineAnim[])(struct EventObject *, struct
|
||||
MovementAction_Finish,
|
||||
};
|
||||
|
||||
u8 (*const gMovementActionFuncs_Unknown1[])(struct EventObject *, struct Sprite *) = {
|
||||
MovementAction_Unknown1_Step0,
|
||||
u8 (*const gMovementActionFuncs_HideReflection[])(struct EventObject *, struct Sprite *) = {
|
||||
MovementAction_HideReflection_Step0,
|
||||
MovementAction_Finish,
|
||||
};
|
||||
|
||||
u8 (*const gMovementActionFuncs_Unknown2[])(struct EventObject *, struct Sprite *) = {
|
||||
MovementAction_Unknown2_Step0,
|
||||
u8 (*const gMovementActionFuncs_ShowReflection[])(struct EventObject *, struct Sprite *) = {
|
||||
MovementAction_ShowReflection_Step0,
|
||||
MovementAction_Finish,
|
||||
};
|
||||
|
||||
|
@ -6831,15 +6831,15 @@ bool8 MovementAction_ClearAffineAnim_Step0(struct EventObject *eventObject, stru
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 MovementAction_Unknown1_Step0(struct EventObject *eventObject, struct Sprite *sprite)
|
||||
bool8 MovementAction_HideReflection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
|
||||
{
|
||||
eventObject->unk3_3 = TRUE;
|
||||
eventObject->hideReflection = TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 MovementAction_Unknown2_Step0(struct EventObject *eventObject, struct Sprite *sprite)
|
||||
bool8 MovementAction_ShowReflection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
|
||||
{
|
||||
eventObject->unk3_3 = FALSE;
|
||||
eventObject->hideReflection = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -143,7 +143,7 @@ static void UpdateObjectReflectionSprite(struct Sprite *reflectionSprite)
|
||||
reflectionSprite->pos2.y = -mainSprite->pos2.y;
|
||||
reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled;
|
||||
|
||||
if (eventObject->unk3_3 == TRUE)
|
||||
if (eventObject->hideReflection == TRUE)
|
||||
reflectionSprite->invisible = TRUE;
|
||||
|
||||
// Check if the reflection is not still.
|
||||
|
Loading…
Reference in New Issue
Block a user