Fixed collision and surfing bugs

- If the player collides with something immediately after exiting a door, the follower will no longer exit the door, walking into the player.

- If the player surfs immediately after exiting a door, the follower will no longer exit the door and walk out of sync.
This commit is contained in:
W1serV1ser committed 2023-03-29 12:20:59 -07:00
1 parent 3c8ba61913
commit 872d06ce9a
2 files changed
+13 -1

No files matched your search

+9 -1
View File
@@ -3064,7 +3064,15 @@ static void SurfFieldEffect_FieldMovePose(struct Task *task)
SetPlayerAvatarFieldMove();
ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
task->tState++;
FollowerIntoPokeball();
if (gSaveBlock2Ptr->follower.inProgress)
{
// in case the follower hasn't left a warp yet
gSaveBlock2Ptr->follower.comeOutDoorStairs = 0;
gSaveBlock2Ptr->follower.warpEnd = 0;
FollowerIntoPokeball();
}
}
}
+4
View File
@@ -554,6 +554,10 @@ static bool8 IsStateMovement(u8 state)
//case MOVEMENT_ACTION_EMOTE_CROSS:
//case MOVEMENT_ACTION_EMOTE_DOUBLE_EXCLAMATION_MARK:
//case MOVEMENT_ACTION_EMOTE_HAPPY:
case MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_DOWN:
case MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_UP:
case MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_LEFT:
case MOVEMENT_ACTION_WALK_IN_PLACE_SLOW_RIGHT:
case MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_DOWN:
case MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_UP:
case MOVEMENT_ACTION_WALK_IN_PLACE_NORMAL_LEFT: