sync ub fix

This commit is contained in:
cawtds 2026-03-18 23:24:00 +01:00
parent 622732cac7
commit e75bd6ea8e

View File

@ -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;