summaryrefslogtreecommitdiff
path: root/src/event_object_movement.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/event_object_movement.c')
-rw-r--r--src/event_object_movement.c805
1 files changed, 393 insertions, 412 deletions
diff --git a/src/event_object_movement.c b/src/event_object_movement.c
index 52fb0c078..bd66b32a4 100644
--- a/src/event_object_movement.c
+++ b/src/event_object_movement.c
@@ -21,7 +21,7 @@
static void MoveCoordsInDirection(u32, s16 *, s16 *, s16, s16);
static bool8 ObjectEventExecSingleMovementAction(struct ObjectEvent *, struct Sprite *);
static u8 GetCollisionInDirection(struct ObjectEvent *, u8);
-static u32 state_to_direction(u8, u32, u32);
+static u32 GetCopyDirection(u8, u32, u32);
static void TryEnableObjectEventAnim(struct ObjectEvent *, struct Sprite *);
static void ObjectEventExecHeldMovementAction(struct ObjectEvent *, struct Sprite *);
static void UpdateObjectEventSpriteAnimPause(struct ObjectEvent *, struct Sprite *);
@@ -71,7 +71,7 @@ static void LoadObjectEventPalette(u16);
static void RemoveObjectEventIfOutsideView(struct ObjectEvent *);
static void ReloadMapObjectWithOffset(u8 objectEventId, s16 x, s16 y);
static void SetPlayerAvatarObjectEventIdAndObjectId(u8, u8);
-static void sub_805EFF4(struct ObjectEvent *);
+static void ResetObjectEventFldEffData(struct ObjectEvent *);
static u8 TryLoadObjectPalette(const struct SpritePalette *spritePalette);
static u8 FindObjectEventPaletteIndexByTag(u16);
static bool8 ObjectEventDoesZCoordMatch(struct ObjectEvent *, u8);
@@ -148,7 +148,7 @@ static void MovementType_Invisible(struct Sprite *);
static void MovementType_VsSeeker4D(struct Sprite *);
static void MovementType_VsSeeker4E(struct Sprite *);
static void MovementType_VsSeeker4F(struct Sprite *);
-static void MovementType_WanderAroundSlowest(struct Sprite *);
+static void MovementType_WanderAroundSlower(struct Sprite *);
#define movement_type_def(setup, table) \
static u8 setup##_callback(struct ObjectEvent *, struct Sprite *); \
@@ -276,7 +276,7 @@ static void (*const sMovementTypeCallbacks[MOVEMENT_TYPES_COUNT])(struct Sprite
[MOVEMENT_TYPE_VS_SEEKER_4D] = MovementType_VsSeeker4D,
[MOVEMENT_TYPE_VS_SEEKER_4E] = MovementType_VsSeeker4E,
[MOVEMENT_TYPE_VS_SEEKER_4F] = MovementType_VsSeeker4F,
- [MOVEMENT_TYPE_WANDER_AROUND_SLOWEST] = MovementType_WanderAroundSlowest,
+ [MOVEMENT_TYPE_WANDER_AROUND_SLOWER] = MovementType_WanderAroundSlower,
};
static const bool8 gRangedMovementTypes[MOVEMENT_TYPES_COUNT] = {
@@ -360,7 +360,7 @@ static const bool8 gRangedMovementTypes[MOVEMENT_TYPES_COUNT] = {
[MOVEMENT_TYPE_VS_SEEKER_4D] = FALSE,
[MOVEMENT_TYPE_VS_SEEKER_4E] = FALSE,
[MOVEMENT_TYPE_VS_SEEKER_4F] = FALSE,
- [MOVEMENT_TYPE_WANDER_AROUND_SLOWEST] = TRUE,
+ [MOVEMENT_TYPE_WANDER_AROUND_SLOWER] = TRUE,
};
static const u8 gInitialMovementTypeFacingDirections[MOVEMENT_TYPES_COUNT] = {
@@ -444,7 +444,7 @@ static const u8 gInitialMovementTypeFacingDirections[MOVEMENT_TYPES_COUNT] = {
[MOVEMENT_TYPE_VS_SEEKER_4D] = DIR_SOUTH,
[MOVEMENT_TYPE_VS_SEEKER_4E] = DIR_SOUTH,
[MOVEMENT_TYPE_VS_SEEKER_4F] = DIR_SOUTH,
- [MOVEMENT_TYPE_WANDER_AROUND_SLOWEST] = DIR_SOUTH,
+ [MOVEMENT_TYPE_WANDER_AROUND_SLOWER] = DIR_SOUTH,
};
#define OBJ_EVENT_PAL_TAG_PLAYER_RED 0x1100
@@ -935,15 +935,7 @@ static const u8 gFaceDirectionFastMovementActions[] = {
[DIR_EAST] = MOVEMENT_ACTION_FACE_RIGHT_FAST,
};
-static const u8 gUnknown_83A64F6[] = {
- [DIR_NONE] = MOVEMENT_ACTION_0x9B,
- [DIR_SOUTH] = MOVEMENT_ACTION_0x9B,
- [DIR_NORTH] = MOVEMENT_ACTION_0x9C,
- [DIR_WEST] = MOVEMENT_ACTION_0x9D,
- [DIR_EAST] = MOVEMENT_ACTION_0x9E,
-};
-
-static const u8 gUnknown_83A64FB[] = {
+static const u8 gWalkSlowestMovementActions[] = {
[DIR_NONE] = MOVEMENT_ACTION_WALK_SLOWEST_DOWN,
[DIR_SOUTH] = MOVEMENT_ACTION_WALK_SLOWEST_DOWN,
[DIR_NORTH] = MOVEMENT_ACTION_WALK_SLOWEST_UP,
@@ -951,6 +943,14 @@ static const u8 gUnknown_83A64FB[] = {
[DIR_EAST] = MOVEMENT_ACTION_WALK_SLOWEST_RIGHT,
};
+static const u8 gUnknown_83A64FB[] = {
+ [DIR_NONE] = MOVEMENT_ACTION_WALK_SLOWER_DOWN,
+ [DIR_SOUTH] = MOVEMENT_ACTION_WALK_SLOWER_DOWN,
+ [DIR_NORTH] = MOVEMENT_ACTION_WALK_SLOWER_UP,
+ [DIR_WEST] = MOVEMENT_ACTION_WALK_SLOWER_LEFT,
+ [DIR_EAST] = MOVEMENT_ACTION_WALK_SLOWER_RIGHT,
+};
+
static const u8 gUnknown_83A6500[] = {
[DIR_NONE] = MOVEMENT_ACTION_WALK_SLOW_DOWN,
[DIR_SOUTH] = MOVEMENT_ACTION_WALK_SLOW_DOWN,
@@ -984,11 +984,11 @@ static const u8 gUnknown_83A650F[] = {
};
static const u8 gUnknown_83A6514[] = {
- [DIR_NONE] = MOVEMENT_ACTION_FACE_DOWN_SLOW,
- [DIR_SOUTH] = MOVEMENT_ACTION_FACE_DOWN_SLOW,
- [DIR_NORTH] = MOVEMENT_ACTION_FACE_UP_SLOW,
- [DIR_WEST] = MOVEMENT_ACTION_FACE_LEFT_SLOW,
- [DIR_EAST] = MOVEMENT_ACTION_FACE_RIGHT_SLOW,
+ [DIR_NONE] = MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN,
+ [DIR_SOUTH] = MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN,
+ [DIR_NORTH] = MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP,
+ [DIR_WEST] = MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT,
+ [DIR_EAST] = MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT,
};
static const u8 gUnknown_83A6519[] = {
@@ -1024,11 +1024,11 @@ static const u8 gUnknown_83A6528[] = {
};
static const u8 gUnknown_83A652D[] = {
- [DIR_NONE] = MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_DOWN,
- [DIR_SOUTH] = MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_DOWN,
- [DIR_NORTH] = MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_UP,
- [DIR_WEST] = MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_LEFT,
- [DIR_EAST] = MOVEMENT_ACTION_ACRO_END_WHEELIE_MOVE_RIGHT,
+ [DIR_NONE] = MOVEMENT_ACTION_SPIN_DOWN,
+ [DIR_SOUTH] = MOVEMENT_ACTION_SPIN_DOWN,
+ [DIR_NORTH] = MOVEMENT_ACTION_SPIN_UP,
+ [DIR_WEST] = MOVEMENT_ACTION_SPIN_LEFT,
+ [DIR_EAST] = MOVEMENT_ACTION_SPIN_RIGHT,
};
static const u8 gUnknown_83A6532[] = {
@@ -1072,11 +1072,11 @@ static const u8 gUnknown_83A6546[] = {
};
static const u8 gUnknown_83A654B[] = {
- [DIR_NONE] = MOVEMENT_ACTION_0xA6,
- [DIR_SOUTH] = MOVEMENT_ACTION_0xA6,
- [DIR_NORTH] = MOVEMENT_ACTION_0xA7,
- [DIR_WEST] = MOVEMENT_ACTION_0xA8,
- [DIR_EAST] = MOVEMENT_ACTION_0xA9,
+ [DIR_NONE] = MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_DOWN,
+ [DIR_SOUTH] = MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_DOWN,
+ [DIR_NORTH] = MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_UP,
+ [DIR_WEST] = MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_LEFT,
+ [DIR_EAST] = MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_RIGHT,
};
static const u8 gUnknown_83A6550[] = {
@@ -1194,14 +1194,14 @@ static const u8 gOppositeDirections[] = {
DIR_SOUTHWEST,
};
-static const u8 gUnknown_83A6599[][4] = {
+static const u8 sPlayerDirectionsForCopy[][4] = {
{2, 1, 4, 3},
{1, 2, 3, 4},
{3, 4, 2, 1},
{4, 3, 1, 2}
};
-static const u8 gUnknown_83A65A9[][4] = {
+static const u8 sPlayerDirectionToCopyDirection[][4] = {
{2, 1, 4, 3},
{1, 2, 3, 4},
{4, 3, 1, 2},
@@ -1973,12 +1973,12 @@ static void ReloadMapObjectWithOffset(u8 objectEventId, s16 x, s16 y)
{
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(objectEvent->facingDirection));
}
- sub_805EFF4(objectEvent);
+ ResetObjectEventFldEffData(objectEvent);
SetObjectSubpriorityByZCoord(objectEvent->previousElevation, sprite, 1);
}
}
-static void sub_805EFF4(struct ObjectEvent *objectEvent)
+static void ResetObjectEventFldEffData(struct ObjectEvent *objectEvent)
{
objectEvent->singleMovementActive = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
@@ -2285,7 +2285,7 @@ u8 sub_805F6D0(u8 var)
return gReflectionEffectPaletteMap[var];
}
-void unref_sub_805F6E0(struct ObjectEvent *objectEvent, s16 x, s16 y)
+void Unused_IncrementObjectEventCoords(struct ObjectEvent *objectEvent, s16 x, s16 y)
{
objectEvent->previousCoords.x = objectEvent->currentCoords.x;
objectEvent->previousCoords.y = objectEvent->currentCoords.y;
@@ -2322,7 +2322,7 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y)
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
- sub_805EFF4(objectEvent);
+ ResetObjectEventFldEffData(objectEvent);
if (objectEvent->trackedByCamera)
CameraObjectReset1();
}
@@ -2575,14 +2575,13 @@ static u16 GetObjectEventFlagIdByObjectEventId(u8 objectEventId)
return GetObjectEventFlagIdByLocalIdAndMap(gObjectEvents[objectEventId].localId, gObjectEvents[objectEventId].mapNum, gObjectEvents[objectEventId].mapGroup);
}
-u8 sub_805FC9C(u8 localId, u8 mapNum, u8 mapGroup)
+u8 Unused_GetObjectTrainerTypeByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{
u8 objectEventId;
if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId))
- {
return 0xFF;
- }
+
return gObjectEvents[objectEventId].trainerType;
}
@@ -2591,23 +2590,22 @@ u16 GetObjectEventFlagByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
return GetObjectEventTemplateByLocalIdAndMap(localId, mapNum, mapGroup)->trainerType;
}
-u8 sub_808F0BC(u8 objectEventId)
+u8 Unused_GetObjectTrainerTypeByObjectEventId(u8 objectEventId)
{
return gObjectEvents[objectEventId].trainerType;
}
-u8 sub_805FD08(u8 localId, u8 mapNum, u8 mapGroup)
+u8 Unused_GetObjectEventBerryTreeIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{
u8 objectEventId;
if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId))
- {
return 0xFF;
- }
+
return gObjectEvents[objectEventId].trainerRange_berryTreeId;
}
-u8 ObjectEventGetBerryTreeId(u8 objectEventId)
+u8 Unused_GetObjectEventBerryTreeId(u8 objectEventId)
{
return gObjectEvents[objectEventId].trainerRange_berryTreeId;
}
@@ -2730,7 +2728,7 @@ u16 GetObjectPaletteTag(u8 palSlot)
movement_type_empty_callback(MovementType_None)
movement_type_def(MovementType_WanderAround, gMovementTypeFuncs_WanderAround)
-movement_type_def(MovementType_WanderAroundSlowest, gMovementTypeFuncs_WanderAroundSlowest)
+movement_type_def(MovementType_WanderAroundSlower, gMovementTypeFuncs_WanderAroundSlower)
static bool8 MovementType_WanderAround_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
@@ -2790,9 +2788,9 @@ static bool8 MovementType_WanderAround_Step5(struct ObjectEvent *objectEvent, st
return TRUE;
}
-static bool8 MovementType_WanderAround_Step5Slowest(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+static bool8 MovementType_WanderAround_Step5Slower(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkSlowestMovementAction(objectEvent->movementDirection));
+ ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkSlowerMovementAction(objectEvent->movementDirection));
objectEvent->singleMovementActive = TRUE;
sprite->data[1] = 6;
return TRUE;
@@ -4338,7 +4336,7 @@ static bool8 CopyablePlayerMovement_None(struct ObjectEvent *objectEvent, struct
static bool8 CopyablePlayerMovement_FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8))
{
- ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, playerDirection)));
+ ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, playerDirection)));
objectEvent->singleMovementActive = TRUE;
sprite->data[1] = 2;
return TRUE;
@@ -4351,7 +4349,7 @@ static bool8 CopyablePlayerMovement_GoSpeed0(struct ObjectEvent *objectEvent, st
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkNormalMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
@@ -4370,7 +4368,7 @@ static bool8 CopyablePlayerMovement_GoSpeed1(struct ObjectEvent *objectEvent, st
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFastMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
@@ -4389,7 +4387,7 @@ static bool8 CopyablePlayerMovement_GoSpeed2(struct ObjectEvent *objectEvent, st
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFastestMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
@@ -4408,7 +4406,7 @@ static bool8 CopyablePlayerMovement_Slide(struct ObjectEvent *objectEvent, struc
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
ObjectEventSetSingleMovement(objectEvent, sprite, GetSlideMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
@@ -4425,7 +4423,7 @@ static bool8 cph_IM_DIFFERENT(struct ObjectEvent *objectEvent, struct Sprite *sp
u32 direction;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventSetSingleMovement(objectEvent, sprite, GetJumpInPlaceMovementAction(direction));
objectEvent->singleMovementActive = TRUE;
sprite->data[1] = 2;
@@ -4439,7 +4437,7 @@ static bool8 CopyablePlayerMovement_GoSpeed4(struct ObjectEvent *objectEvent, st
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
ObjectEventSetSingleMovement(objectEvent, sprite, GetJumpMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
@@ -4458,7 +4456,7 @@ static bool8 CopyablePlayerMovement_Jump(struct ObjectEvent *objectEvent, struct
s16 y;
direction = playerDirection;
- direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
+ direction = GetCopyDirection(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
x = objectEvent->currentCoords.x;
y = objectEvent->currentCoords.y;
MoveCoordsInDirection(direction, &x, &y, 2, 2);
@@ -4741,7 +4739,7 @@ u8 GetAcroEndWheelieDirectionAnimNum(u8 direction)
return gAcroEndWheelieDirectionAnimNums[direction];
}
-u8 sub_80634C0(u8 direction)
+u8 GetSpinDirectionAnimNum(u8 direction)
{
return gUnknown_83A6465[direction];
}
@@ -4776,60 +4774,52 @@ u8 GetRunningDirectionAnimNum(u8 direction)
return gRunningDirectionAnimNums[direction];
}
-static const struct UnkStruct_083A3698 *sub_8063530(const union AnimCmd *const *anims)
+static const struct UnkStruct_083A3698 *GetStepAnimTable(const union AnimCmd *const *anims)
{
- const struct UnkStruct_083A3698 *retval;
+ const struct UnkStruct_083A3698 *stepTable;
+
+ for (stepTable = gUnknown_83A3698; stepTable->anims != NULL; stepTable++)
+ if (stepTable->anims == anims)
+ return stepTable;
- for (retval = gUnknown_83A3698; retval->anims != NULL; retval++)
- {
- if (retval->anims == anims)
- {
- return retval;
- }
- }
return NULL;
}
-void npc_apply_anim_looping(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum)
+void SetStepAnimHandleAlternation(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum)
{
- const struct UnkStruct_083A3698 *unk83A3698;
+ const struct UnkStruct_083A3698 *stepTable;
if (!objectEvent->inanimate)
{
sprite->animNum = animNum;
- unk83A3698 = sub_8063530(sprite->anims);
- if (unk83A3698 != NULL)
+ stepTable = GetStepAnimTable(sprite->anims);
+ if (stepTable != NULL)
{
- if (sprite->animCmdIndex == unk83A3698->animPos[0])
- {
- sprite->animCmdIndex = unk83A3698->animPos[3];
- }
- else if (sprite->animCmdIndex == unk83A3698->animPos[1])
- {
- sprite->animCmdIndex = unk83A3698->animPos[2];
- }
+ if (sprite->animCmdIndex == stepTable->animPos[0])
+ sprite->animCmdIndex = stepTable->animPos[3];
+ else if (sprite->animCmdIndex == stepTable->animPos[1])
+ sprite->animCmdIndex = stepTable->animPos[2];
}
SeekSpriteAnim(sprite, sprite->animCmdIndex);
}
}
-void obj_npc_animation_step(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum)
+void SetStepAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 animNum)
{
- const struct UnkStruct_083A3698 *unk83A3698;
+ const struct UnkStruct_083A3698 *stepTable;
if (!objectEvent->inanimate)
{
u8 animPos;
sprite->animNum = animNum;
- unk83A3698 = sub_8063530(sprite->anims);
- if (unk83A3698 != NULL)
+ stepTable = GetStepAnimTable(sprite->anims);
+ if (stepTable != NULL)
{
- animPos = unk83A3698->animPos[1];
- if (sprite->animCmdIndex <= unk83A3698->animPos[0])
- {
- animPos = unk83A3698->animPos[0];
- }
+ animPos = stepTable->animPos[1];
+ if (sprite->animCmdIndex <= stepTable->animPos[0])
+ animPos = stepTable->animPos[0];
+
SeekSpriteAnim(sprite, animPos);
}
}
@@ -5216,18 +5206,16 @@ u8 name(u32 idx) \
dirn_to_anim(GetFaceDirectionMovementAction, gFaceDirectionMovementActions);
dirn_to_anim(GetFaceDirectionFastMovementAction, gFaceDirectionFastMovementActions);
-u8 sub_8063F10(u32 idx)
+u8 GetWalkSlowestMovementAction(u32 idx)
{
- u8 direction;
-
- direction = idx;
-
+ u8 direction = idx;
if (direction > DIR_EAST)
direction = DIR_NONE;
- return gUnknown_83A64F6[direction];
+
+ return gWalkSlowestMovementActions[direction];
}
-dirn_to_anim(GetWalkSlowestMovementAction, gUnknown_83A64FB);
+dirn_to_anim(GetWalkSlowerMovementAction, gUnknown_83A64FB);
dirn_to_anim(GetWalkSlowMovementAction, gUnknown_83A6500);
dirn_to_anim(GetWalkNormalMovementAction, gUnknown_83A6505);
dirn_to_anim(GetWalkFastMovementAction, gUnknown_83A650A);
@@ -5243,7 +5231,7 @@ dirn_to_anim(GetJumpInPlaceMovementAction, gUnknown_83A6537);
dirn_to_anim(GetJumpInPlaceTurnAroundMovementAction, gUnknown_83A653C);
dirn_to_anim(GetJumpMovementAction, gUnknown_83A6541);
dirn_to_anim(GetJumpSpecialMovementAction, gUnknown_83A6546);
-dirn_to_anim(sub_80641EC, gUnknown_83A654B);
+dirn_to_anim(GetJumpSpecialWithEffectMovementAction, gUnknown_83A654B);
dirn_to_anim(GetStepInPlaceDelay32AnimId, gUnknown_83A6550);
dirn_to_anim(GetWalkInPlaceNormalMovementAction, gUnknown_83A6555);
dirn_to_anim(GetWalkInPlaceSlowMovementAction, gUnknown_83A655A);
@@ -5276,25 +5264,22 @@ u8 GetOppositeDirection(u8 direction)
return directions[direction - 1];
}
-static u32 zffu_offset_calc(u8 a0, u8 a1)
+static u32 GetPlayerDirectionForCopy(u8 initDir, u8 moveDir)
{
- return gUnknown_83A6599[a0 - 1][a1 - 1];
+ return sPlayerDirectionsForCopy[initDir - 1][moveDir - 1];
}
-static u32 state_to_direction(u8 a0, u32 a1, u32 a2)
+static u32 GetCopyDirection(u8 copyInitDir, u32 playerInitDir, u32 playerMoveDir)
{
- u32 zffuOffset;
- u8 a1_2;
- u8 a2_2;
+ u32 dir;
+ u8 _playerInitDir = playerInitDir;
+ u8 _playerMoveDir = playerMoveDir;
+ if (_playerInitDir == DIR_NONE || _playerMoveDir == DIR_NONE
+ || _playerInitDir > DIR_EAST || _playerMoveDir > DIR_EAST)
+ return DIR_NONE;
- a1_2 = a1;
- a2_2 = a2;
- if (a1_2 == 0 || a2_2 == 0 || a1_2 > DIR_EAST || a2_2 > DIR_EAST)
- {
- return 0;
- }
- zffuOffset = zffu_offset_calc(a1_2, a2);
- return gUnknown_83A65A9[a0 - 1][zffuOffset - 1];
+ dir = GetPlayerDirectionForCopy(_playerInitDir, playerMoveDir);
+ return sPlayerDirectionToCopyDirection[copyInitDir - 1][dir - 1];
}
static void ObjectEventExecHeldMovementAction(struct ObjectEvent *objectEvent, struct Sprite *sprite)
@@ -5341,7 +5326,7 @@ static void FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite
{
SetObjectEventDirection(objectEvent, direction);
ShiftStillObjectEventCoords(objectEvent);
- obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ SetStepAnim(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
sprite->animPaused = TRUE;
sprite->data[2] = 1;
}
@@ -5370,7 +5355,7 @@ static bool8 MovementAction_FaceRight_Step0(struct ObjectEvent *objectEvent, str
return TRUE;
}
-void npc_apply_direction(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
+void InitNpcForMovement(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
{
s16 x;
s16 y;
@@ -5380,30 +5365,30 @@ void npc_apply_direction(struct ObjectEvent *objectEvent, struct Sprite *sprite,
SetObjectEventDirection(objectEvent, direction);
MoveCoords(direction, &x, &y);
ShiftObjectEventCoords(objectEvent, x, y);
- oamt_npc_ministep_reset(sprite, direction, speed);
+ SetSpriteDataForNormalStep(sprite, direction, speed);
sprite->animPaused = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
-void do_go_anim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
+void InitMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
{
u8 (*functions[NELEMS(gUnknown_83A6884)])(u8);
memcpy(functions, gUnknown_83A6884, sizeof gUnknown_83A6884);
- npc_apply_direction(objectEvent, sprite, direction, speed);
- npc_apply_anim_looping(objectEvent, sprite, functions[speed](objectEvent->facingDirection));
+ InitNpcForMovement(objectEvent, sprite, direction, speed);
+ SetStepAnimHandleAlternation(objectEvent, sprite, functions[speed](objectEvent->facingDirection));
}
void StartRunningAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- npc_apply_direction(objectEvent, sprite, direction, 1);
- npc_apply_anim_looping(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForMovement(objectEvent, sprite, direction, 1);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection));
}
-bool8 npc_obj_ministep_stop_on_arrival(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 UpdateMovementNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (obj_npc_ministep(sprite))
+ if (NpcTakeStep(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -5413,7 +5398,7 @@ bool8 npc_obj_ministep_stop_on_arrival(struct ObjectEvent *objectEvent, struct S
return FALSE;
}
-void InitNpcForWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitNpcForWalkSlower(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
s16 x;
s16 y;
@@ -5423,21 +5408,21 @@ void InitNpcForWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite,
SetObjectEventDirection(objectEvent, direction);
MoveCoords(direction, &x, &y);
ShiftObjectEventCoords(objectEvent, x, y);
- SetSpriteDataForNormalStep(sprite, direction);
+ SetWalkSlowerSpriteData(sprite, direction);
sprite->animPaused = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
-void InitWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitWalkSlower(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- InitNpcForWalkSlow(objectEvent, sprite, direction);
- npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForWalkSlower(objectEvent, sprite, direction);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
}
-bool8 an_walk_any_2(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 UpdateWalkSlower(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (NpcTakeStep(sprite))
+ if (UpdateWalkSlowerAnim(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -5447,7 +5432,7 @@ bool8 an_walk_any_2(struct ObjectEvent *objectEvent, struct Sprite *sprite)
return FALSE;
}
-void InitNpcForWalkSlow2(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitNpcForWalkSlowest(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
s16 x;
s16 y;
@@ -5457,21 +5442,21 @@ void InitNpcForWalkSlow2(struct ObjectEvent *objectEvent, struct Sprite *sprite,
SetObjectEventDirection(objectEvent, direction);
MoveCoords(direction, &x, &y);
ShiftObjectEventCoords(objectEvent, x, y);
- SetSpriteDataForNormalStep2(sprite, direction);
+ SetWalkSlowestSpriteData(sprite, direction);
sprite->animPaused = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
-void InitWalkSlow2(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitWalkSlowest(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- InitNpcForWalkSlow2(objectEvent, sprite, direction);
- npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForWalkSlowest(objectEvent, sprite, direction);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
}
-bool8 UpdateWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 UpdateWalkSlowest(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (UpdateWalkSlowAnim(sprite))
+ if (UpdateWalkSlowestAnim(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -5483,13 +5468,13 @@ bool8 UpdateWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite)
static bool8 MovementActionFunc_x9B_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow2(objectEvent, sprite, DIR_SOUTH);
+ InitWalkSlowest(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_x9B_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x9B_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (UpdateWalkSlow(objectEvent, sprite))
+ if (UpdateWalkSlowest(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5499,13 +5484,13 @@ static bool8 MovementActionFunc_x9B_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x9C_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow2(objectEvent, sprite, DIR_NORTH);
+ InitWalkSlowest(objectEvent, sprite, DIR_NORTH);
return MovementActionFunc_x9C_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x9C_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (UpdateWalkSlow(objectEvent, sprite))
+ if (UpdateWalkSlowest(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5515,13 +5500,13 @@ static bool8 MovementActionFunc_x9C_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x9D_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow2(objectEvent, sprite, DIR_WEST);
+ InitWalkSlowest(objectEvent, sprite, DIR_WEST);
return MovementActionFunc_x9D_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x9D_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (UpdateWalkSlow(objectEvent, sprite))
+ if (UpdateWalkSlowest(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5531,13 +5516,13 @@ static bool8 MovementActionFunc_x9D_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x9E_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow2(objectEvent, sprite, DIR_EAST);
+ InitWalkSlowest(objectEvent, sprite, DIR_EAST);
return MovementActionFunc_x9E_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x9E_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (UpdateWalkSlow(objectEvent, sprite))
+ if (UpdateWalkSlowest(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5547,13 +5532,13 @@ static bool8 MovementActionFunc_x9E_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x08_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_SOUTH);
+ InitWalkSlower(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_x08_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x08_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5563,13 +5548,13 @@ static bool8 MovementActionFunc_x08_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x09_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_NORTH);
+ InitWalkSlower(objectEvent, sprite, DIR_NORTH);
return MovementActionFunc_x09_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x09_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5579,13 +5564,13 @@ static bool8 MovementActionFunc_x09_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x0A_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_WEST);
+ InitWalkSlower(objectEvent, sprite, DIR_WEST);
return MovementActionFunc_x0A_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0A_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5595,13 +5580,13 @@ static bool8 MovementActionFunc_x0A_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x0B_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_EAST);
+ InitWalkSlower(objectEvent, sprite, DIR_EAST);
return MovementActionFunc_x0B_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0B_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5609,7 +5594,9 @@ static bool8 MovementActionFunc_x0B_1(struct ObjectEvent *objectEvent, struct Sp
return FALSE;
}
-void sub_8064B68(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+// InitNpcForWalkSlow, InitNpcForWalkSlower, InitNpcForWalkSlowest, and
+// InitNpcForRunSlow are functionally equivalent
+void InitNpcForWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
s16 x;
s16 y;
@@ -5619,21 +5606,23 @@ void sub_8064B68(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire
SetObjectEventDirection(objectEvent, direction);
MoveCoords(direction, &x, &y);
ShiftObjectEventCoords(objectEvent, x, y);
- SetSpriteDataForNormalStep3(sprite, direction);
+ SetWalkSlowSpriteData(sprite, direction);
sprite->animPaused = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
-void sub_8064BD8(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+// InitWalkSlow, InitWalkSlower, InitWalkSlowest, and InitRunSlow are
+// functionally equivalent
+void InitWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- sub_8064B68(objectEvent, sprite, direction);
- npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForWalkSlow(objectEvent, sprite, direction);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
}
-bool8 sub_8064C04(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 UpdateWalkSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8068C18(sprite))
+ if (UpdateWalkSlowAnim(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -5645,13 +5634,13 @@ bool8 sub_8064C04(struct ObjectEvent *objectEvent, struct Sprite *sprite)
static bool8 MovementActionFunc_x0D_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8064BD8(objectEvent, sprite, DIR_NORTH);
+ InitWalkSlow(objectEvent, sprite, DIR_NORTH);
return MovementActionFunc_x0D_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0D_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8064C04(objectEvent, sprite))
+ if (UpdateWalkSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5661,13 +5650,13 @@ static bool8 MovementActionFunc_x0D_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x0C_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8064BD8(objectEvent, sprite, DIR_SOUTH);
+ InitWalkSlow(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_x0C_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0C_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8064C04(objectEvent, sprite))
+ if (UpdateWalkSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5677,13 +5666,13 @@ static bool8 MovementActionFunc_x0C_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x0E_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8064BD8(objectEvent, sprite, DIR_WEST);
+ InitWalkSlow(objectEvent, sprite, DIR_WEST);
return MovementActionFunc_x0E_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0E_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8064C04(objectEvent, sprite))
+ if (UpdateWalkSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5693,13 +5682,13 @@ static bool8 MovementActionFunc_x0E_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x0F_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8064BD8(objectEvent, sprite, DIR_EAST);
+ InitWalkSlow(objectEvent, sprite, DIR_EAST);
return MovementActionFunc_x0F_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x0F_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8064C04(objectEvent, sprite))
+ if (UpdateWalkSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5709,13 +5698,13 @@ static bool8 MovementActionFunc_x0F_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementAction_WalkNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_SOUTH, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 0);
return MovementAction_WalkNormalDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5725,13 +5714,13 @@ static bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent
static bool8 MovementAction_WalkNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_NORTH, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, 0);
return MovementAction_WalkNormalUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5741,13 +5730,13 @@ static bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_WalkNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_WEST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, 0);
return MovementAction_WalkNormalLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5757,13 +5746,13 @@ static bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent
static bool8 MovementAction_WalkNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_EAST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, 0);
return MovementAction_WalkNormalRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkNormalRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5771,7 +5760,7 @@ static bool8 MovementAction_WalkNormalRight_Step1(struct ObjectEvent *objectEven
return FALSE;
}
-void sub_8064E3C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a5)
+void InitJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a5)
{
s16 displacements[NELEMS(gUnknown_83A6958)];
s16 x;
@@ -5790,14 +5779,14 @@ void sub_8064E3C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 dire
objectEvent->disableCoveringGroundEffects = 1;
}
-void maybe_shadow_1(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4)
+void InitJumpRegular(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4)
{
- sub_8064E3C(objectEvent, sprite, direction, speed, a4);
- npc_apply_anim_looping(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ InitJump(objectEvent, sprite, direction, speed, a4);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
DoShadowFieldEffect(objectEvent);
}
-u8 sub_8064F3C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *))
+u8 UpdateJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callback(struct Sprite *))
{
s16 displacements[NELEMS(gUnknown_83A695E)];
s16 x;
@@ -5825,43 +5814,41 @@ u8 sub_8064F3C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 callba
return result;
}
-u8 sub_8065000(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+u8 DoJumpAnimStep(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- return sub_8064F3C(objectEvent, sprite, DoJumpSpriteMovement);
+ return UpdateJumpAnim(objectEvent, sprite, DoJumpSpriteMovement);
}
-u8 sub_8065014(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+u8 DoJumpSpecialAnimStep(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- return sub_8064F3C(objectEvent, sprite, DoJumpSpecialSpriteMovement);
+ return UpdateJumpAnim(objectEvent, sprite, DoJumpSpecialSpriteMovement);
}
-bool8 sub_8065028(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 DoJumpAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065000(objectEvent, sprite) == 0xFF)
- {
+ if (DoJumpAnimStep(objectEvent, sprite) == 0xFF)
return TRUE;
- }
+
return FALSE;
}
-bool8 sub_8065040(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 DoJumpSpecialAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065014(objectEvent, sprite) == 0xFF)
- {
+ if (DoJumpSpecialAnimStep(objectEvent, sprite) == 0xFF)
return TRUE;
- }
+
return FALSE;
}
-bool8 sub_8065058(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 DoJumpInPlaceAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- switch (sub_8065000(objectEvent, sprite))
+ switch (DoJumpAnimStep(objectEvent, sprite))
{
case 0xFF:
return TRUE;
case 1:
SetObjectEventDirection(objectEvent, GetOppositeDirection(objectEvent->movementDirection));
- obj_npc_animation_step(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
+ SetStepAnim(objectEvent, sprite, GetMoveDirectionAnimNum(objectEvent->facingDirection));
default:
return FALSE;
}
@@ -5869,13 +5856,13 @@ bool8 sub_8065058(struct ObjectEvent *objectEvent, struct Sprite *sprite)
static bool8 MovementAction_Jump2Down_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 2, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 2, 0);
return MovementAction_Jump2Down_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -5886,13 +5873,13 @@ static bool8 MovementAction_Jump2Down_Step1(struct ObjectEvent *objectEvent, str
static bool8 MovementAction_Jump2Up_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 2, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_NORTH, 2, 0);
return MovementAction_Jump2Up_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -5903,13 +5890,13 @@ static bool8 MovementAction_Jump2Up_Step1(struct ObjectEvent *objectEvent, struc
static bool8 MovementAction_Jump2Left_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_WEST, 2, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_WEST, 2, 0);
return MovementAction_Jump2Left_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -5920,13 +5907,13 @@ static bool8 MovementAction_Jump2Left_Step1(struct ObjectEvent *objectEvent, str
static bool8 MovementAction_Jump2Right_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_EAST, 2, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_EAST, 2, 0);
return MovementAction_Jump2Right_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Jump2Right_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -5935,7 +5922,7 @@ static bool8 MovementAction_Jump2Right_Step1(struct ObjectEvent *objectEvent, st
return FALSE;
}
-void sub_8065208(struct Sprite *sprite, u16 duration)
+void InitMovementDelay(struct Sprite *sprite, u16 duration)
{
sprite->data[2] = 1;
sprite->data[3] = duration;
@@ -5953,43 +5940,43 @@ static bool8 MovementAction_Delay_Step1(struct ObjectEvent *objectEvent, struct
static bool8 MovementAction_Delay1_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065208(sprite, 1);
+ InitMovementDelay(sprite, 1);
return MovementAction_Delay_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Delay2_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065208(sprite, 2);
+ InitMovementDelay(sprite, 2);
return MovementAction_Delay_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Delay4_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065208(sprite, 4);
+ InitMovementDelay(sprite, 4);
return MovementAction_Delay_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Delay8_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065208(sprite, 8);
+ InitMovementDelay(sprite, 8);
return MovementAction_Delay_Step1(objectEvent, sprite);
}
static bool8 MovementAction_Delay16_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065208(sprite, 16);
+ InitMovementDelay(sprite, 16);
return MovementAction_Delay_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_SOUTH, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 1);
return MovementAction_WalkFastDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -5999,13 +5986,13 @@ static bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_WalkFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_NORTH, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, 1);
return MovementAction_WalkFastUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6015,13 +6002,13 @@ static bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, st
static bool8 MovementAction_WalkFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_WEST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, 1);
return MovementAction_WalkFastLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6031,13 +6018,13 @@ static bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_WalkFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_EAST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, 1);
return MovementAction_WalkFastRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6047,7 +6034,7 @@ static bool8 MovementAction_WalkFastRight_Step1(struct ObjectEvent *objectEvent,
bool8 sub_80653CC(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (obj_npc_ministep(sprite))
+ if (NpcTakeStep(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -6061,7 +6048,7 @@ u8 MovementActionFunc_xA0_0(struct ObjectEvent *objectEvent, struct Sprite *spri
if(objectEvent->facingDirection != DIR_SOUTH)
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(DIR_SOUTH));
- npc_apply_direction(objectEvent, sprite, DIR_SOUTH, 1);
+ InitNpcForMovement(objectEvent, sprite, DIR_SOUTH, 1);
return MovementActionFunc_xA0_1(objectEvent, sprite);
}
@@ -6081,7 +6068,7 @@ u8 MovementActionFunc_xA1_0(struct ObjectEvent *objectEvent, struct Sprite *spri
if(objectEvent->facingDirection != DIR_NORTH)
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(DIR_NORTH));
- npc_apply_direction(objectEvent, sprite, DIR_NORTH, 1);
+ InitNpcForMovement(objectEvent, sprite, DIR_NORTH, 1);
return MovementActionFunc_xA1_1(objectEvent, sprite);
}
@@ -6101,7 +6088,7 @@ u8 MovementActionFunc_xA2_0(struct ObjectEvent *objectEvent, struct Sprite *spri
if(objectEvent->facingDirection != DIR_WEST)
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(DIR_WEST));
- npc_apply_direction(objectEvent, sprite, DIR_WEST, 1);
+ InitNpcForMovement(objectEvent, sprite, DIR_WEST, 1);
return MovementActionFunc_xA2_1(objectEvent, sprite);
}
@@ -6121,7 +6108,7 @@ u8 MovementActionFunc_xA3_0(struct ObjectEvent *objectEvent, struct Sprite *spri
if(objectEvent->facingDirection != DIR_EAST)
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(DIR_EAST));
- npc_apply_direction(objectEvent, sprite, DIR_EAST, 1);
+ InitNpcForMovement(objectEvent, sprite, DIR_EAST, 1);
return MovementActionFunc_xA3_1(objectEvent, sprite);
}
@@ -6184,10 +6171,10 @@ u8 MovementActionFunc_x07_0(struct ObjectEvent *objectEvent, struct Sprite *spri
return TRUE;
}
-void sub_80656C4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 animNum, u16 duration)
+void InitMoveInPlace(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 animNum, u16 duration)
{
SetObjectEventDirection(objectEvent, direction);
- npc_apply_anim_looping(objectEvent, sprite, animNum);
+ SetStepAnimHandleAlternation(objectEvent, sprite, animNum);
sprite->animPaused = FALSE;
sprite->data[2] = 1;
sprite->data[3] = duration;
@@ -6207,117 +6194,116 @@ static bool8 MovementAction_WalkInPlace_Step1(struct ObjectEvent *objectEvent, s
static bool8 MovementAction_WalkInPlaceSlow_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (sprite->data[3] & 1)
- {
sprite->animDelayCounter++;
- }
+
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceSlowDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 32);
+ InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 32);
return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceSlowUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 32);
+ InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 32);
return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceSlowLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 32);
+ InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 32);
return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceSlowRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 32);
+ InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 32);
return MovementAction_WalkInPlaceSlow_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 16);
+ InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionAnimNum(DIR_SOUTH), 16);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 16);
+ InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionAnimNum(DIR_NORTH), 16);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 16);
+ InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionAnimNum(DIR_WEST), 16);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 16);
+ InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionAnimNum(DIR_EAST), 16);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFastAnimNum(DIR_SOUTH), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFastAnimNum(DIR_SOUTH), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFastAnimNum(DIR_NORTH), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFastAnimNum(DIR_NORTH), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_WEST, GetMoveDirectionFastAnimNum(DIR_WEST), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionFastAnimNum(DIR_WEST), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_EAST, GetMoveDirectionFastAnimNum(DIR_EAST), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionFastAnimNum(DIR_EAST), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFasterAnimNum(DIR_SOUTH), 4);
+ InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetMoveDirectionFasterAnimNum(DIR_SOUTH), 4);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFasterAnimNum(DIR_NORTH), 4);
+ InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetMoveDirectionFasterAnimNum(DIR_NORTH), 4);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_WEST, GetMoveDirectionFasterAnimNum(DIR_WEST), 4);
+ InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetMoveDirectionFasterAnimNum(DIR_WEST), 4);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_EAST, GetMoveDirectionFasterAnimNum(DIR_EAST), 4);
+ InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetMoveDirectionFasterAnimNum(DIR_EAST), 4);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementAction_RideWaterCurrentDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_SOUTH, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 2);
return MovementAction_RideWaterCurrentDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6327,13 +6313,13 @@ static bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objec
static bool8 MovementAction_RideWaterCurrentUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_NORTH, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, 2);
return MovementAction_RideWaterCurrentUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6343,13 +6329,13 @@ static bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectE
static bool8 MovementAction_RideWaterCurrentLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_WEST, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, 2);
return MovementAction_RideWaterCurrentLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6359,13 +6345,13 @@ static bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objec
static bool8 MovementAction_RideWaterCurrentRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_EAST, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, 2);
return MovementAction_RideWaterCurrentRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6375,13 +6361,13 @@ static bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *obje
static bool8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_SOUTH, 3);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 3);
return MovementAction_WalkFastestDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6391,13 +6377,13 @@ static bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_NORTH, 3);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, 3);
return MovementAction_WalkFastestUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6407,13 +6393,13 @@ static bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_WEST, 3);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, 3);
return MovementAction_WalkFastestLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6423,13 +6409,13 @@ static bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_EAST, 3);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, 3);
return MovementAction_WalkFastestRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6439,13 +6425,13 @@ static bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEve
static bool8 MovementAction_SlideDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_SOUTH, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 4);
return MovementAction_SlideDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6455,13 +6441,13 @@ static bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, str
static bool8 MovementAction_SlideUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_NORTH, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, 4);
return MovementAction_SlideUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6471,13 +6457,13 @@ static bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struc
static bool8 MovementAction_SlideLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_WEST, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, 4);
return MovementAction_SlideLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6487,13 +6473,13 @@ static bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, str
static bool8 MovementAction_SlideRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- do_go_anim(objectEvent, sprite, DIR_EAST, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, 4);
return MovementAction_SlideRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_SlideRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6509,7 +6495,7 @@ static bool8 MovementAction_PlayerRunDown_Step0(struct ObjectEvent *objectEvent,
static bool8 MovementAction_PlayerRunDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6525,7 +6511,7 @@ static bool8 MovementAction_PlayerRunUp_Step0(struct ObjectEvent *objectEvent, s
static bool8 MovementAction_PlayerRunUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6541,7 +6527,7 @@ static bool8 MovementAction_PlayerRunLeft_Step0(struct ObjectEvent *objectEvent,
static bool8 MovementAction_PlayerRunLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6557,7 +6543,7 @@ static bool8 MovementAction_PlayerRunRight_Step0(struct ObjectEvent *objectEvent
static bool8 MovementAction_PlayerRunRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6565,7 +6551,7 @@ static bool8 MovementAction_PlayerRunRight_Step1(struct ObjectEvent *objectEvent
return FALSE;
}
-void InitNpcForWalkSlow3(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitNpcForRunSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
s16 x;
s16 y;
@@ -6575,21 +6561,21 @@ void InitNpcForWalkSlow3(struct ObjectEvent *objectEvent, struct Sprite *sprite,
SetObjectEventDirection(objectEvent, direction);
MoveCoords(direction, &x, &y);
ShiftObjectEventCoords(objectEvent, x, y);
- SetSpriteDataForNormalStep4(sprite, direction);
+ SetRunSlowSpriteData(sprite, direction);
sprite->animPaused = FALSE;
objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
-void sub_8065F60(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitRunSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- InitNpcForWalkSlow3(objectEvent, sprite, direction);
- npc_apply_anim_looping(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForRunSlow(objectEvent, sprite, direction);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetRunningDirectionAnimNum(objectEvent->facingDirection));
}
-bool8 sub_8065F8C(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 UpdateRunSlow(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8068CB4(sprite))
+ if (UpdateRunSlowAnim(sprite))
{
ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE;
@@ -6601,13 +6587,13 @@ bool8 sub_8065F8C(struct ObjectEvent *objectEvent, struct Sprite *sprite)
static bool8 MovementActionFunc_x41_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065F60(objectEvent, sprite, DIR_SOUTH);
+ InitRunSlow(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_x41_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x41_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065F8C(objectEvent, sprite))
+ if (UpdateRunSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6617,13 +6603,13 @@ static bool8 MovementActionFunc_x41_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x42_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065F60(objectEvent, sprite, DIR_NORTH);
+ InitRunSlow(objectEvent, sprite, DIR_NORTH);
return MovementActionFunc_x42_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x42_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065F8C(objectEvent, sprite))
+ if (UpdateRunSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6633,13 +6619,13 @@ static bool8 MovementActionFunc_x42_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x43_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065F60(objectEvent, sprite, DIR_WEST);
+ InitRunSlow(objectEvent, sprite, DIR_WEST);
return MovementActionFunc_x43_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x43_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065F8C(objectEvent, sprite))
+ if (UpdateRunSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6649,13 +6635,13 @@ static bool8 MovementActionFunc_x43_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x44_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8065F60(objectEvent, sprite, DIR_SOUTH);
+ InitRunSlow(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_x44_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x44_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065F8C(objectEvent, sprite))
+ if (UpdateRunSlow(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6686,21 +6672,21 @@ static bool8 MovementAction_WaitSpriteAnim(struct ObjectEvent *objectEvent, stru
return FALSE;
}
-void sub_8066128(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void InitJumpSpecial(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
- sub_8064E3C(objectEvent, sprite, direction, 1, 0);
+ InitJump(objectEvent, sprite, direction, 1, 0);
StartSpriteAnim(sprite, GetJumpSpecialDirectionAnimNum(direction));
}
static bool8 MovementAction_JumpSpecialDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_SOUTH);
+ InitJumpSpecial(objectEvent, sprite, DIR_SOUTH);
return MovementAction_JumpSpecialDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpSpecialDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
objectEvent->landingJump = FALSE;
@@ -6711,13 +6697,13 @@ static bool8 MovementAction_JumpSpecialDown_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_JumpSpecialUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_NORTH);
+ InitJumpSpecial(objectEvent, sprite, DIR_NORTH);
return MovementAction_JumpSpecialUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpSpecialUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
objectEvent->landingJump = FALSE;
@@ -6728,13 +6714,13 @@ static bool8 MovementAction_JumpSpecialUp_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_JumpSpecialLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_WEST);
+ InitJumpSpecial(objectEvent, sprite, DIR_WEST);
return MovementAction_JumpSpecialLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpSpecialLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
objectEvent->landingJump = FALSE;
@@ -6745,13 +6731,13 @@ static bool8 MovementAction_JumpSpecialLeft_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_JumpSpecialRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_EAST);
+ InitJumpSpecial(objectEvent, sprite, DIR_EAST);
return MovementAction_JumpSpecialRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpSpecialRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
objectEvent->landingJump = FALSE;
@@ -6762,13 +6748,13 @@ static bool8 MovementAction_JumpSpecialRight_Step1(struct ObjectEvent *objectEve
static bool8 MovementActionFunc_xA6_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_SOUTH);
+ InitJumpSpecial(objectEvent, sprite, DIR_SOUTH);
return MovementActionFunc_xA6_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_xA6_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6778,13 +6764,13 @@ static bool8 MovementActionFunc_xA6_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_xA7_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_NORTH);
+ InitJumpSpecial(objectEvent, sprite, DIR_NORTH);
return MovementActionFunc_xA7_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_xA7_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6794,13 +6780,13 @@ static bool8 MovementActionFunc_xA7_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_xA8_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_WEST);
+ InitJumpSpecial(objectEvent, sprite, DIR_WEST);
return MovementActionFunc_xA8_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_xA8_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6810,13 +6796,13 @@ static bool8 MovementActionFunc_xA8_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_xA9_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066128(objectEvent, sprite, DIR_EAST);
+ InitJumpSpecial(objectEvent, sprite, DIR_EAST);
return MovementActionFunc_xA9_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_xA9_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065040(objectEvent, sprite))
+ if (DoJumpSpecialAnim(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -6864,13 +6850,13 @@ static bool8 MovementAction_UnlockFacingDirection_Step0(struct ObjectEvent *obje
static bool8 MovementAction_JumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 1, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 1, 2);
return MovementAction_JumpDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6881,13 +6867,13 @@ static bool8 MovementAction_JumpDown_Step1(struct ObjectEvent *objectEvent, stru
static bool8 MovementAction_JumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 1, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_NORTH, 1, 2);
return MovementAction_JumpUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6898,13 +6884,13 @@ static bool8 MovementAction_JumpUp_Step1(struct ObjectEvent *objectEvent, struct
static bool8 MovementAction_JumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_WEST, 1, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_WEST, 1, 2);
return MovementAction_JumpLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6915,13 +6901,13 @@ static bool8 MovementAction_JumpLeft_Step1(struct ObjectEvent *objectEvent, stru
static bool8 MovementAction_JumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_EAST, 1, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_EAST, 1, 2);
return MovementAction_JumpRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6932,13 +6918,13 @@ static bool8 MovementAction_JumpRight_Step1(struct ObjectEvent *objectEvent, str
static bool8 MovementAction_JumpInPlaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 0, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, 0);
return MovementAction_JumpInPlaceDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6949,13 +6935,13 @@ static bool8 MovementAction_JumpInPlaceDown_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_JumpInPlaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 0, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, 0);
return MovementAction_JumpInPlaceUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6966,13 +6952,13 @@ static bool8 MovementAction_JumpInPlaceUp_Step1(struct ObjectEvent *objectEvent,
static bool8 MovementAction_JumpInPlaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_WEST, 0, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, 0);
return MovementAction_JumpInPlaceLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -6983,13 +6969,13 @@ static bool8 MovementAction_JumpInPlaceLeft_Step1(struct ObjectEvent *objectEven
static bool8 MovementAction_JumpInPlaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_EAST, 0, 0);
+ InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, 0);
return MovementAction_JumpInPlaceRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7000,13 +6986,13 @@ static bool8 MovementAction_JumpInPlaceRight_Step1(struct ObjectEvent *objectEve
static bool8 MovementAction_JumpInPlaceDownUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_SOUTH, 0, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_SOUTH, 0, 2);
return MovementAction_JumpInPlaceDownUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065058(objectEvent, sprite))
+ if (DoJumpInPlaceAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7017,13 +7003,13 @@ static bool8 MovementAction_JumpInPlaceDownUp_Step1(struct ObjectEvent *objectEv
static bool8 MovementAction_JumpInPlaceUpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_NORTH, 0, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_NORTH, 0, 2);
return MovementAction_JumpInPlaceUpDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065058(objectEvent, sprite))
+ if (DoJumpInPlaceAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7034,13 +7020,13 @@ static bool8 MovementAction_JumpInPlaceUpDown_Step1(struct ObjectEvent *objectEv
static bool8 MovementAction_JumpInPlaceLeftRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_WEST, 0, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_WEST, 0, 2);
return MovementAction_JumpInPlaceLeftRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065058(objectEvent, sprite))
+ if (DoJumpInPlaceAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7051,13 +7037,13 @@ static bool8 MovementAction_JumpInPlaceLeftRight_Step1(struct ObjectEvent *objec
static bool8 MovementAction_JumpInPlaceRightLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- maybe_shadow_1(objectEvent, sprite, DIR_EAST, 0, 2);
+ InitJumpRegular(objectEvent, sprite, DIR_EAST, 0, 2);
return MovementAction_JumpInPlaceRightLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_JumpInPlaceRightLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065058(objectEvent, sprite))
+ if (DoJumpInPlaceAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7276,7 +7262,7 @@ static bool8 MovementAction_ClearAffineAnim_Step0(struct ObjectEvent *objectEven
static bool8 MovementAction_WalkDownStartAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_SOUTH);
+ InitWalkSlower(objectEvent, sprite, DIR_SOUTH);
sprite->affineAnimPaused = FALSE;
StartSpriteAffineAnimIfDifferent(sprite, 0);
return MovementAction_WalkDownStartAffine_Step1(objectEvent, sprite);
@@ -7284,7 +7270,7 @@ static bool8 MovementAction_WalkDownStartAffine_Step0(struct ObjectEvent *object
static bool8 MovementAction_WalkDownStartAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->affineAnimPaused = TRUE;
sprite->data[2] = 2;
@@ -7295,7 +7281,7 @@ static bool8 MovementAction_WalkDownStartAffine_Step1(struct ObjectEvent *object
static bool8 MovementAction_WalkDownAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitWalkSlow(objectEvent, sprite, DIR_SOUTH);
+ InitWalkSlower(objectEvent, sprite, DIR_SOUTH);
sprite->affineAnimPaused = FALSE;
ChangeSpriteAffineAnimIfDifferent(sprite, 1);
return MovementAction_WalkDownAffine_Step1(objectEvent, sprite);
@@ -7303,7 +7289,7 @@ static bool8 MovementAction_WalkDownAffine_Step0(struct ObjectEvent *objectEvent
static bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (an_walk_any_2(objectEvent, sprite))
+ if (UpdateWalkSlower(objectEvent, sprite))
{
sprite->affineAnimPaused = TRUE;
sprite->data[2] = 2;
@@ -7312,36 +7298,36 @@ static bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent
return FALSE;
}
-void sub_8066C70(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
+void AcroWheelieFaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction)
{
SetObjectEventDirection(objectEvent, direction);
ShiftStillObjectEventCoords(objectEvent);
- obj_npc_animation_step(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(direction));
+ SetStepAnim(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(direction));
sprite->animPaused = TRUE;
sprite->data[2] = 1;
}
static bool8 MovementActionFunc_x70_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066C70(objectEvent, sprite, DIR_SOUTH);
+ AcroWheelieFaceDirection(objectEvent, sprite, DIR_SOUTH);
return TRUE;
}
static bool8 MovementActionFunc_x71_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066C70(objectEvent, sprite, DIR_NORTH);
+ AcroWheelieFaceDirection(objectEvent, sprite, DIR_NORTH);
return TRUE;
}
static bool8 MovementActionFunc_x72_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066C70(objectEvent, sprite, DIR_WEST);
+ AcroWheelieFaceDirection(objectEvent, sprite, DIR_WEST);
return TRUE;
}
static bool8 MovementActionFunc_x73_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066C70(objectEvent, sprite, DIR_EAST);
+ AcroWheelieFaceDirection(objectEvent, sprite, DIR_EAST);
return TRUE;
}
@@ -7417,22 +7403,22 @@ static bool8 MovementAction_UnusedAcroActionRight_Step0(struct ObjectEvent *obje
return FALSE;
}
-void sub_8066EA0(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4)
+void InitAcroWheelieJump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed, u8 a4)
{
- sub_8064E3C(objectEvent, sprite, direction, speed, a4);
+ InitJump(objectEvent, sprite, direction, speed, a4);
StartSpriteAnimIfDifferent(sprite, GetAcroWheelieDirectionAnimNum(direction));
DoShadowFieldEffect(objectEvent);
}
static bool8 MovementAction_AcroWheelieHopFaceDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_SOUTH, 0, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 0, 1);
return MovementAction_AcroWheelieHopFaceDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7443,13 +7429,13 @@ static bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct ObjectEvent *obj
static bool8 MovementAction_AcroWheelieHopFaceUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_NORTH, 0, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 0, 1);
return MovementAction_AcroWheelieHopFaceUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7460,13 +7446,13 @@ static bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct ObjectEvent *objec
static bool8 MovementAction_AcroWheelieHopFaceLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_WEST, 0, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 0, 1);
return MovementAction_AcroWheelieHopFaceLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7477,13 +7463,13 @@ static bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct ObjectEvent *obj
static bool8 MovementAction_AcroWheelieHopFaceRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_EAST, 0, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 0, 1);
return MovementAction_AcroWheelieHopFaceRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7494,13 +7480,13 @@ static bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct ObjectEvent *ob
static bool8 MovementAction_AcroWheelieHopDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_SOUTH, 1, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 1, 1);
return MovementAction_AcroWheelieHopDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7511,13 +7497,13 @@ static bool8 MovementAction_AcroWheelieHopDown_Step1(struct ObjectEvent *objectE
static bool8 MovementAction_AcroWheelieHopUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_NORTH, 1, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 1, 1);
return MovementAction_AcroWheelieHopUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7528,13 +7514,13 @@ static bool8 MovementAction_AcroWheelieHopUp_Step1(struct ObjectEvent *objectEve
static bool8 MovementAction_AcroWheelieHopLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_WEST, 1, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 1, 1);
return MovementAction_AcroWheelieHopLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7545,13 +7531,13 @@ static bool8 MovementAction_AcroWheelieHopLeft_Step1(struct ObjectEvent *objectE
static bool8 MovementAction_AcroWheelieHopRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_EAST, 1, 1);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 1, 1);
return MovementAction_AcroWheelieHopRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7562,13 +7548,13 @@ static bool8 MovementAction_AcroWheelieHopRight_Step1(struct ObjectEvent *object
static bool8 MovementAction_AcroWheelieJumpDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_SOUTH, 2, 0);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_SOUTH, 2, 0);
return MovementAction_AcroWheelieJumpDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7579,13 +7565,13 @@ static bool8 MovementAction_AcroWheelieJumpDown_Step1(struct ObjectEvent *object
static bool8 MovementAction_AcroWheelieJumpUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_NORTH, 2, 0);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_NORTH, 2, 0);
return MovementAction_AcroWheelieJumpUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7596,13 +7582,13 @@ static bool8 MovementAction_AcroWheelieJumpUp_Step1(struct ObjectEvent *objectEv
static bool8 MovementAction_AcroWheelieJumpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_WEST, 2, 0);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_WEST, 2, 0);
return MovementAction_AcroWheelieJumpLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7613,13 +7599,13 @@ static bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct ObjectEvent *object
static bool8 MovementAction_AcroWheelieJumpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_8066EA0(objectEvent, sprite, DIR_EAST, 2, 0);
+ InitAcroWheelieJump(objectEvent, sprite, DIR_EAST, 2, 0);
return MovementAction_AcroWheelieJumpRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieJumpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (sub_8065028(objectEvent, sprite))
+ if (DoJumpAnim(objectEvent, sprite))
{
objectEvent->hasShadow = FALSE;
sprite->data[2] = 2;
@@ -7630,44 +7616,44 @@ static bool8 MovementAction_AcroWheelieJumpRight_Step1(struct ObjectEvent *objec
static bool8 MovementActionFunc_x88_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_SOUTH, GetAcroWheeliePedalDirectionAnimNum(DIR_SOUTH), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_SOUTH, GetAcroWheeliePedalDirectionAnimNum(DIR_SOUTH), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x89_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_NORTH, GetAcroWheeliePedalDirectionAnimNum(DIR_NORTH), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_NORTH, GetAcroWheeliePedalDirectionAnimNum(DIR_NORTH), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x8A_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_WEST, GetAcroWheeliePedalDirectionAnimNum(DIR_WEST), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_WEST, GetAcroWheeliePedalDirectionAnimNum(DIR_WEST), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x8B_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80656C4(objectEvent, sprite, DIR_EAST, GetAcroWheeliePedalDirectionAnimNum(DIR_EAST), 8);
+ InitMoveInPlace(objectEvent, sprite, DIR_EAST, GetAcroWheeliePedalDirectionAnimNum(DIR_EAST), 8);
return MovementAction_WalkInPlace_Step1(objectEvent, sprite);
}
-void sub_80673E4(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
+void InitAcroPopWheelie(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
{
- npc_apply_direction(objectEvent, sprite, direction, speed);
+ InitNpcForMovement(objectEvent, sprite, direction, speed);
StartSpriteAnim(sprite, GetAcroWheelieDirectionAnimNum(objectEvent->facingDirection));
SeekSpriteAnim(sprite, 0);
}
static bool8 MovementAction_AcroPopWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80673E4(objectEvent, sprite, DIR_SOUTH, 1);
+ InitAcroPopWheelie(objectEvent, sprite, DIR_SOUTH, 1);
return MovementAction_AcroPopWheelieMoveDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7677,13 +7663,13 @@ static bool8 MovementAction_AcroPopWheelieMoveDown_Step1(struct ObjectEvent *obj
static bool8 MovementAction_AcroPopWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80673E4(objectEvent, sprite, DIR_NORTH, 1);
+ InitAcroPopWheelie(objectEvent, sprite, DIR_NORTH, 1);
return MovementAction_AcroPopWheelieMoveUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7693,13 +7679,13 @@ static bool8 MovementAction_AcroPopWheelieMoveUp_Step1(struct ObjectEvent *objec
static bool8 MovementAction_AcroPopWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80673E4(objectEvent, sprite, DIR_WEST, 1);
+ InitAcroPopWheelie(objectEvent, sprite, DIR_WEST, 1);
return MovementAction_AcroPopWheelieMoveLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7709,13 +7695,13 @@ static bool8 MovementAction_AcroPopWheelieMoveLeft_Step1(struct ObjectEvent *obj
static bool8 MovementAction_AcroPopWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_80673E4(objectEvent, sprite, DIR_EAST, 1);
+ InitAcroPopWheelie(objectEvent, sprite, DIR_EAST, 1);
return MovementAction_AcroPopWheelieMoveRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroPopWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7723,21 +7709,21 @@ static bool8 MovementAction_AcroPopWheelieMoveRight_Step1(struct ObjectEvent *ob
return FALSE;
}
-void sub_806751C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
+void InitAcroWheelieMove(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
{
- npc_apply_direction(objectEvent, sprite, direction, speed);
- npc_apply_anim_looping(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(objectEvent->facingDirection));
+ InitNpcForMovement(objectEvent, sprite, direction, speed);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetAcroWheeliePedalDirectionAnimNum(objectEvent->facingDirection));
}
static bool8 MovementAction_AcroWheelieMoveDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806751C(objectEvent, sprite, DIR_SOUTH, 1);
+ InitAcroWheelieMove(objectEvent, sprite, DIR_SOUTH, 1);
return MovementAction_AcroWheelieMoveDown_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7747,13 +7733,13 @@ static bool8 MovementAction_AcroWheelieMoveDown_Step1(struct ObjectEvent *object
static bool8 MovementAction_AcroWheelieMoveUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806751C(objectEvent, sprite, DIR_NORTH, 1);
+ InitAcroWheelieMove(objectEvent, sprite, DIR_NORTH, 1);
return MovementAction_AcroWheelieMoveUp_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7763,13 +7749,13 @@ static bool8 MovementAction_AcroWheelieMoveUp_Step1(struct ObjectEvent *objectEv
static bool8 MovementAction_AcroWheelieMoveLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806751C(objectEvent, sprite, DIR_WEST, 1);
+ InitAcroWheelieMove(objectEvent, sprite, DIR_WEST, 1);
return MovementAction_AcroWheelieMoveLeft_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7779,13 +7765,13 @@ static bool8 MovementAction_AcroWheelieMoveLeft_Step1(struct ObjectEvent *object
static bool8 MovementAction_AcroWheelieMoveRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806751C(objectEvent, sprite, DIR_EAST, 1);
+ InitAcroWheelieMove(objectEvent, sprite, DIR_EAST, 1);
return MovementAction_AcroWheelieMoveRight_Step1(objectEvent, sprite);
}
static bool8 MovementAction_AcroWheelieMoveRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7793,22 +7779,22 @@ static bool8 MovementAction_AcroWheelieMoveRight_Step1(struct ObjectEvent *objec
return FALSE;
}
-void sub_806764C(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
+void InitSpin(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 direction, u8 speed)
{
- npc_apply_direction(objectEvent, sprite, direction, speed);
- npc_apply_anim_looping(objectEvent, sprite, sub_80634C0(objectEvent->facingDirection));
+ InitNpcForMovement(objectEvent, sprite, direction, speed);
+ SetStepAnimHandleAlternation(objectEvent, sprite, GetSpinDirectionAnimNum(objectEvent->facingDirection));
SeekSpriteAnim(sprite, 0);
}
static bool8 MovementActionFunc_x94_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806764C(objectEvent, sprite, DIR_SOUTH, 1);
+ InitSpin(objectEvent, sprite, DIR_SOUTH, 1);
return MovementActionFunc_x94_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x94_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7818,13 +7804,13 @@ static bool8 MovementActionFunc_x94_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x95_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806764C(objectEvent, sprite, DIR_NORTH, 1);
+ InitSpin(objectEvent, sprite, DIR_NORTH, 1);
return MovementActionFunc_x95_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x95_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7834,13 +7820,13 @@ static bool8 MovementActionFunc_x95_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x96_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806764C(objectEvent, sprite, DIR_WEST, 1);
+ InitSpin(objectEvent, sprite, DIR_WEST, 1);
return MovementActionFunc_x96_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x96_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -7850,13 +7836,13 @@ static bool8 MovementActionFunc_x96_1(struct ObjectEvent *objectEvent, struct Sp
static bool8 MovementActionFunc_x97_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- sub_806764C(objectEvent, sprite, DIR_EAST, 1);
+ InitSpin(objectEvent, sprite, DIR_EAST, 1);
return MovementActionFunc_x97_1(objectEvent, sprite);
}
static bool8 MovementActionFunc_x97_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- if (npc_obj_ministep_stop_on_arrival(objectEvent, sprite))
+ if (UpdateMovementNormal(objectEvent, sprite))
{
sprite->data[2] = 2;
return TRUE;
@@ -8915,7 +8901,7 @@ static void oct_little_steps(struct Sprite * sprite, u8 direction)
sprite->y += 8 * (u16)sDirectionToVectors[direction].y;
}
-void oamt_npc_ministep_reset(struct Sprite * sprite, u8 direction, u8 speed)
+void SetSpriteDataForNormalStep(struct Sprite * sprite, u8 direction, u8 speed)
{
sprite->tDirection = direction;
sprite->tSpeed = speed;
@@ -8991,7 +8977,7 @@ static const s16 sSpriteStepCountsBySpeed[] = {
NELEMS(sSpeed4)
};
-bool8 obj_npc_ministep(struct Sprite *sprite)
+bool8 NpcTakeStep(struct Sprite *sprite)
{
if (sprite->tStepNo >= sSpriteStepCountsBySpeed[sprite->tSpeed])
return FALSE;
@@ -9006,23 +8992,18 @@ bool8 obj_npc_ministep(struct Sprite *sprite)
return TRUE;
}
-#undef tStepNo
#undef tSpeed
-#undef tDirection
-#define tDirection data[3]
#define tDelay data[4]
-#define tStepNo data[5]
-void SetSpriteDataForNormalStep(struct Sprite *sprite, u8 direction)
+void SetWalkSlowerSpriteData(struct Sprite *sprite, u8 direction)
{
sprite->tDirection = direction;
sprite->tDelay = 0;
sprite->tStepNo = 0;
}
-// used by an_walk_any_2
-bool8 NpcTakeStep(struct Sprite *sprite)
+bool8 UpdateWalkSlowerAnim(struct Sprite *sprite)
{
if (!(sprite->tDelay & 1))
{
@@ -9038,14 +9019,16 @@ bool8 NpcTakeStep(struct Sprite *sprite)
return FALSE;
}
-void SetSpriteDataForNormalStep3(struct Sprite *sprite, u8 direction)
+// SetWalkSlowSpriteData, SetWalkSlowerSpriteData, SetWalkSlowestSpriteData,
+// and SetRunSlowSpriteData are functionally equivalent
+void SetWalkSlowSpriteData(struct Sprite *sprite, u8 direction)
{
sprite->tDirection = direction;
sprite->tDelay = 0;
sprite->tStepNo = 0;
}
-bool8 sub_8068C18(struct Sprite *sprite)
+bool8 UpdateWalkSlowAnim(struct Sprite *sprite)
{
if (++sprite->tDelay < 3)
{
@@ -9061,14 +9044,14 @@ bool8 sub_8068C18(struct Sprite *sprite)
return FALSE;
}
-void SetSpriteDataForNormalStep2(struct Sprite *sprite, u8 direction)
+void SetWalkSlowestSpriteData(struct Sprite *sprite, u8 direction)
{
sprite->tDirection = direction;
sprite->tDelay = 0;
sprite->tStepNo = 0;
}
-bool8 UpdateWalkSlowAnim(struct Sprite *sprite)
+bool8 UpdateWalkSlowestAnim(struct Sprite *sprite)
{
if (++sprite->tDelay > 9)
{
@@ -9083,14 +9066,14 @@ bool8 UpdateWalkSlowAnim(struct Sprite *sprite)
return FALSE;
}
-void SetSpriteDataForNormalStep4(struct Sprite *sprite, u8 direction)
+void SetRunSlowSpriteData(struct Sprite *sprite, u8 direction)
{
sprite->tDirection = direction;
sprite->tDelay = 0;
sprite->tStepNo = 0;
}
-bool8 sub_8068CB4(struct Sprite *sprite)
+bool8 UpdateRunSlowAnim(struct Sprite *sprite)
{
if ((++sprite->tDelay) & 1)
{
@@ -9111,9 +9094,7 @@ bool8 sub_8068CB4(struct Sprite *sprite)
#undef tStepNo
#undef tDelay
-#undef tDirection
-#define tDirection data[3]
#define tJumpSpeed data[4]
#define tJumpHeight data[5]
#define tStepNo data[6]