summaryrefslogtreecommitdiff
path: root/src/event_object_movement.c
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2021-11-02 15:07:59 -0400
committerGitHub <noreply@github.com>2021-11-02 15:07:59 -0400
commitc98fbb5ca6edf4f2bb3d2eada318082051f0849d (patch)
tree1a15ec3e4110f619cbd345779ff09afbc5562359 /src/event_object_movement.c
parent47286d1ecb526c989d38e6e2e1c5cf80b2c5ec3f (diff)
parent510ccbdf4cdc380594d9ee253fc209cb477d9df4 (diff)
Merge pull request #1538 from cbt6/move-speed
Rename some player movement speed functions
Diffstat (limited to 'src/event_object_movement.c')
-rw-r--r--src/event_object_movement.c100
1 files changed, 54 insertions, 46 deletions
diff --git a/src/event_object_movement.c b/src/event_object_movement.c
index 074fa2386..1bb4991ab 100644
--- a/src/event_object_movement.c
+++ b/src/event_object_movement.c
@@ -32,6 +32,14 @@
// this file was known as evobjmv.c in Game Freak's original source
+enum {
+ MOVE_SPEED_NORMAL, // walking
+ MOVE_SPEED_FAST_1, // running / surfing / sliding (ice tile)
+ MOVE_SPEED_FAST_2, // water current / acro bike
+ MOVE_SPEED_FASTER, // mach bike's max speed
+ MOVE_SPEED_FASTEST,
+};
+
// Sprite data used throughout
#define sObjEventId data[0]
#define sTypeFuncId data[1] // Index into corresponding gMovementTypeFuncs_* table
@@ -941,12 +949,12 @@ const u8 gRideWaterCurrentMovementActions[] = {
MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT,
MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT,
};
-const u8 gWalkFastestMovementActions[] = {
- MOVEMENT_ACTION_WALK_FASTEST_DOWN,
- MOVEMENT_ACTION_WALK_FASTEST_DOWN,
- MOVEMENT_ACTION_WALK_FASTEST_UP,
- MOVEMENT_ACTION_WALK_FASTEST_LEFT,
- MOVEMENT_ACTION_WALK_FASTEST_RIGHT,
+const u8 gWalkFasterMovementActions[] = {
+ MOVEMENT_ACTION_WALK_FASTER_DOWN,
+ MOVEMENT_ACTION_WALK_FASTER_DOWN,
+ MOVEMENT_ACTION_WALK_FASTER_UP,
+ MOVEMENT_ACTION_WALK_FASTER_LEFT,
+ MOVEMENT_ACTION_WALK_FASTER_RIGHT,
};
const u8 gSlideMovementActions[] = {
MOVEMENT_ACTION_SLIDE_DOWN,
@@ -4314,7 +4322,7 @@ bool8 CopyablePlayerMovement_GoSpeed2(struct ObjectEvent *objectEvent, struct Sp
direction = playerDirection;
direction = state_to_direction(gInitialMovementTypeFacingDirections[objectEvent->movementType], objectEvent->directionSequenceIndex, direction);
ObjectEventMoveDestCoords(objectEvent, direction, &x, &y);
- ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFastestMovementAction(direction));
+ ObjectEventSetSingleMovement(objectEvent, sprite, GetWalkFasterMovementAction(direction));
if (GetCollisionAtCoords(objectEvent, x, y, direction) || (tileCallback != NULL && !tileCallback(MapGridGetMetatileBehaviorAt(x, y))))
{
ObjectEventSetSingleMovement(objectEvent, sprite, GetFaceDirectionMovementAction(direction));
@@ -5025,7 +5033,7 @@ dirn_to_anim(GetWalkSlowMovementAction, gWalkSlowMovementActions);
dirn_to_anim(GetWalkNormalMovementAction, gWalkNormalMovementActions);
dirn_to_anim(GetWalkFastMovementAction, gWalkFastMovementActions);
dirn_to_anim(GetRideWaterCurrentMovementAction, gRideWaterCurrentMovementActions);
-dirn_to_anim(GetWalkFastestMovementAction, gWalkFastestMovementActions);
+dirn_to_anim(GetWalkFasterMovementAction, gWalkFasterMovementActions);
dirn_to_anim(GetSlideMovementAction, gSlideMovementActions);
dirn_to_anim(GetPlayerRunMovementAction, gPlayerRunMovementActions);
dirn_to_anim(GetJump2MovementAction, gJump2MovementActions);
@@ -5356,7 +5364,7 @@ bool8 MovementAction_WalkSlowRight_Step1(struct ObjectEvent *objectEvent, struct
bool8 MovementAction_WalkNormalDiagonalUpLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTHWEST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTHWEST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalDiagonalUpLeft_Step1(objectEvent, sprite);
}
@@ -5372,7 +5380,7 @@ bool8 MovementAction_WalkNormalDiagonalUpLeft_Step1(struct ObjectEvent *objectEv
bool8 MovementAction_WalkNormalDiagonalUpRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTHEAST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTHEAST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalDiagonalUpRight_Step1(objectEvent, sprite);
}
@@ -5388,7 +5396,7 @@ bool8 MovementAction_WalkNormalDiagonalUpRight_Step1(struct ObjectEvent *objectE
bool8 MovementAction_WalkNormalDiagonalDownLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTHWEST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTHWEST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalDiagonalDownLeft_Step1(objectEvent, sprite);
}
@@ -5404,7 +5412,7 @@ bool8 MovementAction_WalkNormalDiagonalDownLeft_Step1(struct ObjectEvent *object
bool8 MovementAction_WalkNormalDiagonalDownRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTHEAST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTHEAST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalDiagonalDownRight_Step1(objectEvent, sprite);
}
@@ -5420,7 +5428,7 @@ bool8 MovementAction_WalkNormalDiagonalDownRight_Step1(struct ObjectEvent *objec
bool8 MovementAction_WalkNormalDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalDown_Step1(objectEvent, sprite);
}
@@ -5436,7 +5444,7 @@ bool8 MovementAction_WalkNormalDown_Step1(struct ObjectEvent *objectEvent, struc
bool8 MovementAction_WalkNormalUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTH, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalUp_Step1(objectEvent, sprite);
}
@@ -5452,7 +5460,7 @@ bool8 MovementAction_WalkNormalUp_Step1(struct ObjectEvent *objectEvent, struct
bool8 MovementAction_WalkNormalLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalLeft_Step1(objectEvent, sprite);
}
@@ -5468,7 +5476,7 @@ bool8 MovementAction_WalkNormalLeft_Step1(struct ObjectEvent *objectEvent, struc
bool8 MovementAction_WalkNormalRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 0);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_NORMAL);
return MovementAction_WalkNormalRight_Step1(objectEvent, sprite);
}
@@ -5701,7 +5709,7 @@ bool8 MovementAction_Delay16_Step0(struct ObjectEvent *objectEvent, struct Sprit
bool8 MovementAction_WalkFastDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_1);
return MovementAction_WalkFastDown_Step1(objectEvent, sprite);
}
@@ -5717,7 +5725,7 @@ bool8 MovementAction_WalkFastDown_Step1(struct ObjectEvent *objectEvent, struct
bool8 MovementAction_WalkFastUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTH, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_1);
return MovementAction_WalkFastUp_Step1(objectEvent, sprite);
}
@@ -5733,7 +5741,7 @@ bool8 MovementAction_WalkFastUp_Step1(struct ObjectEvent *objectEvent, struct Sp
bool8 MovementAction_WalkFastLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1);
return MovementAction_WalkFastLeft_Step1(objectEvent, sprite);
}
@@ -5749,7 +5757,7 @@ bool8 MovementAction_WalkFastLeft_Step1(struct ObjectEvent *objectEvent, struct
bool8 MovementAction_WalkFastRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1);
return MovementAction_WalkFastRight_Step1(objectEvent, sprite);
}
@@ -5891,7 +5899,7 @@ bool8 MovementAction_WalkInPlaceFastestRight_Step0(struct ObjectEvent *objectEve
bool8 MovementAction_RideWaterCurrentDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FAST_2);
return MovementAction_RideWaterCurrentDown_Step1(objectEvent, sprite);
}
@@ -5907,7 +5915,7 @@ bool8 MovementAction_RideWaterCurrentDown_Step1(struct ObjectEvent *objectEvent,
bool8 MovementAction_RideWaterCurrentUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTH, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FAST_2);
return MovementAction_RideWaterCurrentUp_Step1(objectEvent, sprite);
}
@@ -5923,7 +5931,7 @@ bool8 MovementAction_RideWaterCurrentUp_Step1(struct ObjectEvent *objectEvent, s
bool8 MovementAction_RideWaterCurrentLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_2);
return MovementAction_RideWaterCurrentLeft_Step1(objectEvent, sprite);
}
@@ -5939,7 +5947,7 @@ bool8 MovementAction_RideWaterCurrentLeft_Step1(struct ObjectEvent *objectEvent,
bool8 MovementAction_RideWaterCurrentRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 2);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_2);
return MovementAction_RideWaterCurrentRight_Step1(objectEvent, sprite);
}
@@ -5953,13 +5961,13 @@ bool8 MovementAction_RideWaterCurrentRight_Step1(struct ObjectEvent *objectEvent
return FALSE;
}
-bool8 MovementAction_WalkFastestDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 3);
- return MovementAction_WalkFastestDown_Step1(objectEvent, sprite);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FASTER);
+ return MovementAction_WalkFasterDown_Step1(objectEvent, sprite);
}
-bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (UpdateMovementNormal(objectEvent, sprite))
{
@@ -5969,13 +5977,13 @@ bool8 MovementAction_WalkFastestDown_Step1(struct ObjectEvent *objectEvent, stru
return FALSE;
}
-bool8 MovementAction_WalkFastestUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTH, 3);
- return MovementAction_WalkFastestUp_Step1(objectEvent, sprite);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FASTER);
+ return MovementAction_WalkFasterUp_Step1(objectEvent, sprite);
}
-bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (UpdateMovementNormal(objectEvent, sprite))
{
@@ -5985,13 +5993,13 @@ bool8 MovementAction_WalkFastestUp_Step1(struct ObjectEvent *objectEvent, struct
return FALSE;
}
-bool8 MovementAction_WalkFastestLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 3);
- return MovementAction_WalkFastestLeft_Step1(objectEvent, sprite);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FASTER);
+ return MovementAction_WalkFasterLeft_Step1(objectEvent, sprite);
}
-bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (UpdateMovementNormal(objectEvent, sprite))
{
@@ -6001,13 +6009,13 @@ bool8 MovementAction_WalkFastestLeft_Step1(struct ObjectEvent *objectEvent, stru
return FALSE;
}
-bool8 MovementAction_WalkFastestRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 3);
- return MovementAction_WalkFastestRight_Step1(objectEvent, sprite);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FASTER);
+ return MovementAction_WalkFasterRight_Step1(objectEvent, sprite);
}
-bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
+bool8 MovementAction_WalkFasterRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (UpdateMovementNormal(objectEvent, sprite))
{
@@ -6019,7 +6027,7 @@ bool8 MovementAction_WalkFastestRight_Step1(struct ObjectEvent *objectEvent, str
bool8 MovementAction_SlideDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_SOUTH, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_SOUTH, MOVE_SPEED_FASTEST);
return MovementAction_SlideDown_Step1(objectEvent, sprite);
}
@@ -6035,7 +6043,7 @@ bool8 MovementAction_SlideDown_Step1(struct ObjectEvent *objectEvent, struct Spr
bool8 MovementAction_SlideUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_NORTH, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_NORTH, MOVE_SPEED_FASTEST);
return MovementAction_SlideUp_Step1(objectEvent, sprite);
}
@@ -6051,7 +6059,7 @@ bool8 MovementAction_SlideUp_Step1(struct ObjectEvent *objectEvent, struct Sprit
bool8 MovementAction_SlideLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FASTEST);
return MovementAction_SlideLeft_Step1(objectEvent, sprite);
}
@@ -6067,7 +6075,7 @@ bool8 MovementAction_SlideLeft_Step1(struct ObjectEvent *objectEvent, struct Spr
bool8 MovementAction_SlideRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 4);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FASTEST);
return MovementAction_SlideRight_Step1(objectEvent, sprite);
}
@@ -6728,7 +6736,7 @@ bool8 MovementAction_WalkDownAffine_Step1(struct ObjectEvent *objectEvent, struc
bool8 MovementAction_WalkLeftAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_WEST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_WEST, MOVE_SPEED_FAST_1);
sprite->affineAnimPaused = FALSE;
ChangeSpriteAffineAnimIfDifferent(sprite, 2);
return MovementAction_WalkLeftAffine_Step1(objectEvent, sprite);
@@ -6747,7 +6755,7 @@ bool8 MovementAction_WalkLeftAffine_Step1(struct ObjectEvent *objectEvent, struc
bool8 MovementAction_WalkRightAffine_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- InitMovementNormal(objectEvent, sprite, DIR_EAST, 1);
+ InitMovementNormal(objectEvent, sprite, DIR_EAST, MOVE_SPEED_FAST_1);
sprite->affineAnimPaused = FALSE;
ChangeSpriteAffineAnimIfDifferent(sprite, 3);
return MovementAction_WalkRightAffine_Step1(objectEvent, sprite);