add gExitStairsMovementDisabled

This commit is contained in:
ghoulslash 2022-07-29 11:26:21 -04:00
parent bed5472014
commit 906622f04d
3 changed files with 7 additions and 1 deletions

View File

@ -51,6 +51,7 @@ extern void (*gFieldCallback)(void);
extern bool8 (*gFieldCallback2)(void);
extern u8 gLocalLinkPlayerId;
extern u8 gFieldLinkPlayerCount;
extern bool8 gExitStairsMovementDisabled;
extern const struct UCoords32 gDirectionToVectors[];

View File

@ -264,12 +264,14 @@ static void SetUpWarpExitTask(void)
behavior = MapGridGetMetatileBehaviorAt(x, y);
if (MetatileBehavior_IsDoor(behavior) == TRUE)
func = Task_ExitDoor;
else if (MetatileBehavior_IsDirectionalStairWarp(behavior) == TRUE)
else if (MetatileBehavior_IsDirectionalStairWarp(behavior) == TRUE && !gExitStairsMovementDisabled)
func = Task_ExitStairs;
else if (MetatileBehavior_IsNonAnimDoor(behavior) == TRUE)
func = Task_ExitNonAnimDoor;
else
func = Task_ExitNonDoor;
gExitStairsMovementDisabled = FALSE;
CreateTask(func, 10);
}

View File

@ -202,6 +202,7 @@ EWRAM_DATA static struct InitialPlayerAvatarState sInitialPlayerAvatarState = {0
EWRAM_DATA static u16 sAmbientCrySpecies = 0;
EWRAM_DATA static bool8 sIsAmbientCryWaterMon = FALSE;
EWRAM_DATA struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4] = {0};
EWRAM_DATA bool8 gExitStairsMovementDisabled = FALSE;
static const struct WarpData sDummyWarpData =
{
@ -1729,6 +1730,7 @@ void CB2_ContinueSavedGame(void)
PlayTimeCounter_Start();
ScriptContext1_Init();
ScriptContext2_Disable();
gExitStairsMovementDisabled = TRUE;
InitMatchCallCounters();
if (UseContinueGameWarp() == TRUE)
{
@ -1814,6 +1816,7 @@ static bool32 LoadMapInStepsLink(u8 *state)
(*state)++;
break;
case 1:
gExitStairsMovementDisabled = FALSE;
LoadMapFromWarp(TRUE);
(*state)++;
break;