From e75bd6ea8eb357ee1b9e1762ff91a3df3ec1f4fa Mon Sep 17 00:00:00 2001 From: cawtds <38510667+cawtds@users.noreply.github.com> Date: Wed, 18 Mar 2026 23:24:00 +0100 Subject: [PATCH] sync ub fix --- src/overworld.c | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/src/overworld.c b/src/overworld.c index 102bd712d..362943fac 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -76,19 +76,19 @@ #define PLAYER_LINK_STATE_READY 0x82 #define PLAYER_LINK_STATE_EXITING_ROOM 0x83 -enum FacingDirection +enum LinkFacing { - FACING_NONE = 0, - FACING_UP = 1, - FACING_DOWN = 2, - FACING_LEFT = 3, - FACING_RIGHT = 4, - FACING_NONE_2 = 5, - FACING_NONE_3 = 6, - FACING_FORCED_UP = 7, - FACING_FORCED_DOWN = 8, - FACING_FORCED_LEFT = 9, - FACING_FORCED_RIGHT = 10, + FACING_NONE, + FACING_UP, + FACING_DOWN, + FACING_LEFT, + FACING_RIGHT, + FACING_UNUSED1, + FACING_UNUSED2, + FACING_FORCED_UP, + FACING_FORCED_DOWN, + FACING_FORCED_LEFT, + FACING_FORCED_RIGHT, }; typedef u16 (*KeyInterCB)(u32 key); @@ -2784,16 +2784,16 @@ static u8 (*const sLinkPlayerMovementModes[])(struct LinkPlayerObjectEvent *, st // These handlers return TRUE if the movement was scripted and successful, and FALSE otherwise. static bool8 (*const sLinkPlayerFacingHandlers[])(struct LinkPlayerObjectEvent *, struct ObjectEvent *, u8) = { - [FACING_NONE] = FacingHandler_DoNothing, - [FACING_UP] = FacingHandler_DpadMovement, - [FACING_DOWN] = FacingHandler_DpadMovement, - [FACING_LEFT] = FacingHandler_DpadMovement, - [FACING_RIGHT] = FacingHandler_DpadMovement, - [FACING_NONE_2] = FacingHandler_DoNothing, - [FACING_NONE_3] = FacingHandler_DoNothing, - [FACING_FORCED_UP] = FacingHandler_ForcedFacingChange, - [FACING_FORCED_DOWN] = FacingHandler_ForcedFacingChange, - [FACING_FORCED_LEFT] = FacingHandler_ForcedFacingChange, + [FACING_NONE] = FacingHandler_DoNothing, + [FACING_UP] = FacingHandler_DpadMovement, + [FACING_DOWN] = FacingHandler_DpadMovement, + [FACING_LEFT] = FacingHandler_DpadMovement, + [FACING_RIGHT] = FacingHandler_DpadMovement, + [FACING_UNUSED1] = FacingHandler_DoNothing, + [FACING_UNUSED2] = FacingHandler_DoNothing, + [FACING_FORCED_UP] = FacingHandler_ForcedFacingChange, + [FACING_FORCED_DOWN] = FacingHandler_ForcedFacingChange, + [FACING_FORCED_LEFT] = FacingHandler_ForcedFacingChange, [FACING_FORCED_RIGHT] = FacingHandler_ForcedFacingChange, }; @@ -3290,7 +3290,8 @@ static bool32 CanCableClubPlayerPressStart(struct CableClubPlayer *player) static const u8 *TryGetTileEventScript(struct CableClubPlayer *player) { if (player->movementMode != MOVEMENT_MODE_SCRIPTED) - return FACING_NONE; + return NULL; + return GetCoordEventScriptAtMapPosition(&player->pos); } @@ -3312,7 +3313,7 @@ static const u8 *TryInteractWithPlayer(struct CableClubPlayer *player) u8 linkPlayerId; if (player->movementMode != MOVEMENT_MODE_FREE && player->movementMode != MOVEMENT_MODE_SCRIPTED) - return FACING_NONE; + return NULL; otherPlayerPos = player->pos; otherPlayerPos.x += gDirectionToVectors[player->facing].x;