1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-04 15:04:31 +00:00

Some doc, some regs, some bulk rename of wip enums, add enum for R_PAUSE_MENU_MODE

This commit is contained in:
Dragorn421 2022-08-28 16:24:40 +02:00
parent 8ddd1c1051
commit 5337eddf3a
No known key found for this signature in database
GPG key ID: 32B53D2D16FC4118
22 changed files with 494 additions and 421 deletions

View file

@ -81,6 +81,8 @@
#define R_C_UP_ICON_X YREG(88)
#define R_C_UP_ICON_Y YREG(89)
#define R_MAGIC_FILL_COLOR(i) ZREG(0 + (i))
#define R_PAUSE_PAGE_CHANGE_FRAME_ADVANCE_ON ZREG(13)
#define R_PAUSE_CURSOR_L_R_SELECTED_PRIM_TIMER ZREG(28)
#define R_C_BTN_COLOR(i) ZREG(39 + (i))
#define R_B_BTN_COLOR(i) ZREG(43 + (i))
#define R_START_LABEL_DD(i) ZREG(48 + (i))
@ -128,6 +130,11 @@
#define R_ENV_LIGHT1_DIR(i) cREG(3 + (i))
#define R_ENV_LIGHT2_DIR(i) cREG(6 + (i))
#define R_B_LABEL_DD WREG(0)
#define R_PAUSE_OFFSET_VERTICAL WREG(2)
#define R_PAUSE_OFFSET_DEPTH WREG(3)
#define R_PAUSE_CURSOR_LEFT_X WREG(16)
#define R_PAUSE_CURSOR_RIGHT_X WREG(17)
#define R_PAUSE_CURSOR_LEFT_RIGHT_Y WREG(18)
#define R_OW_MINIMAP_X WREG(29)
#define R_OW_MINIMAP_Y WREG(30)
#define R_MINIMAP_DISABLED WREG(31)

View file

@ -734,26 +734,26 @@ typedef enum {
#define PAUSE_PLAYER_SEGMENT_GAMEPLAY_KEEP_BUFFER_SIZE 0x5000
typedef enum {
/* 0 */ PAUSECTX_STATE_0,
/* 1 */ PAUSECTX_STATE_1,
/* 2 */ PAUSECTX_STATE_2,
/* 3 */ PAUSECTX_STATE_3,
/* 4 */ PAUSECTX_STATE_4,
/* 5 */ PAUSECTX_STATE_5,
/* 6 */ PAUSECTX_STATE_6, // listen to inputs
/* 7 */ PAUSECTX_STATE_7_SAVE_PROMPT_, // save
/* 8 */ PAUSECTX_STATE_8, // saveGameOver
/* 9 */ PAUSECTX_STATE_9, // saveGameOver
/* 10 */ PAUSECTX_STATE_10, // game over saveGameOver
/* 11 */ PAUSECTX_STATE_11, // game over KaleidoScope_DrawGameOver saveGameOver
/* 12 */ PAUSECTX_STATE_12, // game over KaleidoScope_DrawGameOver saveGameOver
/* 13 */ PAUSECTX_STATE_13, // game over KaleidoScope_DrawGameOver saveGameOver
/* 14 */ PAUSECTX_STATE_14, // game over KaleidoScope_DrawGameOver saveGameOver
/* 15 */ PAUSECTX_STATE_15, // game over KaleidoScope_DrawGameOver saveGameOver
/* 16 */ PAUSECTX_STATE_16, // game over KaleidoScope_DrawGameOver saveGameOver
/* 17 */ PAUSECTX_STATE_17, // game over KaleidoScope_DrawGameOver saveGameOver
/* 18 */ PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE,
/* 19 */ PAUSECTX_STATE_19_UNPAUSE
/* 0 */ PAUSE_STATE_0,
/* 1 */ PAUSE_STATE_1,
/* 2 */ PAUSE_STATE_2,
/* 3 */ PAUSE_STATE_3,
/* 4 */ PAUSE_STATE_4,
/* 5 */ PAUSE_STATE_5,
/* 6 */ PAUSE_STATE_6, // listen to inputs
/* 7 */ PAUSE_STATE_7_SAVE_PROMPT_, // save
/* 8 */ PAUSE_STATE_8, // saveGameOver
/* 9 */ PAUSE_STATE_9, // saveGameOver
/* 10 */ PAUSE_STATE_10, // game over saveGameOver
/* 11 */ PAUSE_STATE_11, // game over KaleidoScope_DrawGameOver saveGameOver
/* 12 */ PAUSE_STATE_12, // game over KaleidoScope_DrawGameOver saveGameOver
/* 13 */ PAUSE_STATE_13, // game over KaleidoScope_DrawGameOver saveGameOver
/* 14 */ PAUSE_STATE_14, // game over KaleidoScope_DrawGameOver saveGameOver
/* 15 */ PAUSE_STATE_15, // game over KaleidoScope_DrawGameOver saveGameOver
/* 16 */ PAUSE_STATE_16, // game over KaleidoScope_DrawGameOver saveGameOver
/* 17 */ PAUSE_STATE_17, // game over KaleidoScope_DrawGameOver saveGameOver
/* 18 */ PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE,
/* 19 */ PAUSE_STATE_19_UNPAUSE
} PauseCtxState;
typedef enum {
@ -770,15 +770,23 @@ typedef enum {
} PauseCtxUnk1E4;
typedef enum {
/* 0 */ PAUSECTX_UNK_1EC_0,
/* 1 */ PAUSECTX_UNK_1EC_1,
/* 2 */ PAUSECTX_UNK_1EC_2,
/* 3 */ PAUSECTX_UNK_1EC_3,
/* 4 */ PAUSECTX_UNK_1EC_4,
/* 5 */ PAUSECTX_UNK_1EC_5,
/* 6 */ PAUSECTX_UNK_1EC_6
/* 0 */ PAUSE_S7_0,
/* 1 */ PAUSE_S7_1,
/* 2 */ PAUSE_S7_2,
/* 3 */ PAUSE_S7_3,
/* 4 */ PAUSE_S7_4,
/* 5 */ PAUSE_S7_5,
/* 6 */ PAUSE_S7_6
} PauseCtxUnk1EC;
typedef enum {
/* 0 */ PAUSE_MENU_REG_MODE_0,
/* 1 */ PAUSE_MENU_REG_MODE_1,
/* 2 */ PAUSE_MENU_REG_MODE_2,
/* 3 */ PAUSE_MENU_REG_MODE_3,
/* 4 */ PAUSE_MENU_REG_MODE_MAX
} PauseMenuRegMode;
typedef struct {
/* 0x0000 */ View view;
/* 0x0128 */ u8* iconItemSegment;
@ -811,13 +819,13 @@ typedef struct {
/* 0x01E6 */ u16 mode;
/* 0x01E8 */ u16 pageIndex; // "kscp_pos"
/* 0x01EA */ u16 unk_1EA;
/* 0x01EC */ u16 unk_1EC;
/* 0x01F0 */ f32 unk_1F0;
/* 0x01F4 */ f32 rotXpauseItem_unk_1F4;
/* 0x01F8 */ f32 rotPauseEquip_unk_1F8;
/* 0x01FC */ f32 rotPauseMap_unk_1FC;
/* 0x0200 */ f32 rotPauseQuest_unk_200;
/* 0x0204 */ f32 rotXorZ_unk_204; // "angle_s"
/* 0x01EC */ u16 unk_1EC_ps7_;
/* 0x01F0 */ f32 savePromptOffsetDepth_unk_1F0;
/* 0x01F4 */ f32 rollRotPageItem;
/* 0x01F8 */ f32 rollRotPageEquip;
/* 0x01FC */ f32 rollRotPageMap;
/* 0x0200 */ f32 rollRotPageQuest;
/* 0x0204 */ f32 rollRotSavePromptPage_unk_204; // "angle_s"
/* 0x0208 */ u16 alpha;
/* 0x020A */ s16 offsetY;
/* 0x020C */ char unk_20C[0x08];

View file

@ -309,7 +309,7 @@ void GameState_Update(GameState* gameState) {
}
}
if (R_PAUSE_MENU_MODE != 2u) {
if (R_PAUSE_MENU_MODE != (u32)PAUSE_MENU_REG_MODE_2) {
GameState_Draw(gameState, gfxCtx);
func_800C49F4(gfxCtx);
}

View file

@ -3144,8 +3144,8 @@ f32 BgCheck_RaycastFloorDyna(DynaRaycast* dynaRaycast) {
dynaActor = DynaPoly_GetActor(dynaRaycast->colCtx, *dynaRaycast->bgId);
if ((result != BGCHECK_Y_MIN) && (dynaActor != NULL) && (dynaRaycast->play != NULL)) {
pauseState = dynaRaycast->play->pauseCtx.state != 0;
if (pauseState == 0) {
pauseState = dynaRaycast->play->pauseCtx.state != PAUSE_STATE_0;
if (!pauseState) {
pauseState = dynaRaycast->play->pauseCtx.debugState != 0;
}
if (!pauseState && (dynaRaycast->colCtx->dyna.bgActorFlags[*dynaRaycast->bgId] & BGACTOR_1)) {

View file

@ -270,7 +270,7 @@ void func_80111070(void) {
ZREG(10) = 200;
ZREG(11) = 0;
ZREG(12) = 200;
ZREG(13) = 0;
R_PAUSE_PAGE_CHANGE_FRAME_ADVANCE_ON = false;
ZREG(14) = 110;
ZREG(15) = 56;
ZREG(16) = 1;
@ -285,7 +285,7 @@ void func_80111070(void) {
ZREG(25) = 4;
ZREG(26) = 20;
ZREG(27) = 10;
ZREG(28) = 20;
R_PAUSE_CURSOR_L_R_SELECTED_PRIM_TIMER = 20;
ZREG(29) = 4;
ZREG(30) = 20;
ZREG(31) = 10;
@ -430,8 +430,8 @@ void func_80111070(void) {
XREG(93) = 100;
XREG(94) = 160;
XREG(95) = 200;
WREG(2) = -6080; // y offset of pause menu
WREG(3) = 9355; // somehow, depth offset of pause menu (offset on distance to "center")
R_PAUSE_OFFSET_VERTICAL = -6080;
R_PAUSE_OFFSET_DEPTH = 9355;
WREG(4) = 8;
WREG(5) = 3;
WREG(6) = 8;
@ -444,9 +444,9 @@ void func_80111070(void) {
WREG(13) = 22;
WREG(14) = -380;
WREG(15) = -350;
WREG(16) = -175;
WREG(17) = 155;
WREG(18) = 10;
R_PAUSE_CURSOR_LEFT_X = -175;
R_PAUSE_CURSOR_RIGHT_X = 155;
R_PAUSE_CURSOR_LEFT_RIGHT_Y = 10;
WREG(19) = 10;
WREG(20) = -50;
WREG(21) = -54;

View file

@ -92,7 +92,7 @@ void GameOver_Update(PlayState* play) {
gGameOverTimer--;
if (gGameOverTimer == 0) {
play->pauseCtx.state = 8;
play->pauseCtx.state = PAUSE_STATE_8;
gameOverCtx->state++;
func_800AA15C();
}

View file

@ -56,30 +56,30 @@ void KaleidoScopeCall_Update(PlayState* play) {
KaleidoMgrOverlay* kaleidoScopeOvl = &gKaleidoMgrOverlayTable[KALEIDO_OVL_KALEIDO_SCOPE];
PauseContext* pauseCtx = &play->pauseCtx;
if ((pauseCtx->state != PAUSECTX_STATE_0) || (pauseCtx->debugState != 0)) {
if (pauseCtx->state == PAUSECTX_STATE_1) {
if ((pauseCtx->state != PAUSE_STATE_0) || (pauseCtx->debugState != 0)) {
if (pauseCtx->state == PAUSE_STATE_1) {
if (Letterbox_GetSize() == 0) {
HREG(80) = 7;
HREG(82) = 3;
R_PAUSE_MENU_MODE = 1;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_1;
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_2
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSE_STATE_2
}
} else if (pauseCtx->state == PAUSECTX_STATE_8) {
} else if (pauseCtx->state == PAUSE_STATE_8) {
HREG(80) = 7;
HREG(82) = 3;
R_PAUSE_MENU_MODE = 1;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_1;
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_9
} else if ((pauseCtx->state == PAUSECTX_STATE_2) || (pauseCtx->state == PAUSECTX_STATE_9)) {
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSE_STATE_9
} else if ((pauseCtx->state == PAUSE_STATE_2) || (pauseCtx->state == PAUSE_STATE_9)) {
osSyncPrintf("PR_KAREIDOSCOPE_MODE=%d\n", R_PAUSE_MENU_MODE);
if (R_PAUSE_MENU_MODE >= 3) {
pauseCtx->state++; // PAUSECTX_STATE_3 or PAUSECTX_STATE_10
if (R_PAUSE_MENU_MODE >= PAUSE_MENU_REG_MODE_3) {
pauseCtx->state++; // PAUSE_STATE_3 or PAUSE_STATE_10
}
} else if (pauseCtx->state != PAUSECTX_STATE_0) {
} else if (pauseCtx->state != PAUSE_STATE_0) {
if (gKaleidoMgrCurOvl != kaleidoScopeOvl) {
if (gKaleidoMgrCurOvl != NULL) {
osSyncPrintf(VT_FGCOL(GREEN));
@ -101,7 +101,7 @@ void KaleidoScopeCall_Update(PlayState* play) {
if (gKaleidoMgrCurOvl == kaleidoScopeOvl) {
sKaleidoScopeUpdateFunc(play);
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0)) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
osSyncPrintf(VT_FGCOL(GREEN));
// "Kaleido area Kaleidoscope Emission"
osSyncPrintf("カレイド領域 カレイドスコープ排出\n");
@ -118,9 +118,13 @@ void KaleidoScopeCall_Update(PlayState* play) {
void KaleidoScopeCall_Draw(PlayState* play) {
KaleidoMgrOverlay* kaleidoScopeOvl = &gKaleidoMgrOverlayTable[KALEIDO_OVL_KALEIDO_SCOPE];
if (R_PAUSE_MENU_MODE >= 3) {
if (((play->pauseCtx.state >= 4) && (play->pauseCtx.state <= 7)) ||
((play->pauseCtx.state >= 11) && (play->pauseCtx.state <= 18))) {
if (R_PAUSE_MENU_MODE >= PAUSE_MENU_REG_MODE_3) {
if (((play->pauseCtx.state >= PAUSE_STATE_4) && (play->pauseCtx.state <= PAUSE_STATE_7_SAVE_PROMPT_)
/* PAUSE_STATE_4, PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */) ||
((play->pauseCtx.state >= PAUSE_STATE_11) && (play->pauseCtx.state <= PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)
/* PAUSE_STATE_11, PAUSE_STATE_12, PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15,
PAUSE_STATE_16, PAUSE_STATE_17, PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE */
)) {
if (gKaleidoMgrCurOvl == kaleidoScopeOvl) {
sKaleidoScopeDrawFunc(play);
}

View file

@ -12,11 +12,11 @@ void KaleidoSetup_Update(PlayState* play) {
PauseContext* pauseCtx = &play->pauseCtx;
Input* input = &play->state.input[0];
if (pauseCtx->state == PAUSECTX_STATE_0 && pauseCtx->debugState == 0 &&
play->gameOverCtx.state == GAMEOVER_INACTIVE && play->transitionTrigger == TRANS_TRIGGER_OFF &&
play->transitionMode == TRANS_MODE_OFF && gSaveContext.cutsceneIndex < 0xFFF0 &&
gSaveContext.nextCutsceneIndex < 0xFFF0 && !Play_InCsMode(play) && play->shootingGalleryStatus <= 1 &&
gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY && gSaveContext.magicState != MAGIC_STATE_FILL &&
if (pauseCtx->state == PAUSE_STATE_0 && pauseCtx->debugState == 0 && play->gameOverCtx.state == GAMEOVER_INACTIVE &&
play->transitionTrigger == TRANS_TRIGGER_OFF && play->transitionMode == TRANS_MODE_OFF &&
gSaveContext.cutsceneIndex < 0xFFF0 && gSaveContext.nextCutsceneIndex < 0xFFF0 && !Play_InCsMode(play) &&
play->shootingGalleryStatus <= 1 && gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY &&
gSaveContext.magicState != MAGIC_STATE_FILL &&
(play->sceneId != SCENE_BOWLING || !Flags_GetSwitch(play, 0x38))) {
if (CHECK_BTN_ALL(input->cur.button, BTN_L) && CHECK_BTN_ALL(input->press.button, BTN_CUP)) {
@ -26,8 +26,8 @@ void KaleidoSetup_Update(PlayState* play) {
} else if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
gSaveContext.unk_13EE = gSaveContext.unk_13EA;
WREG(16) = -175;
WREG(17) = 155;
R_PAUSE_CURSOR_LEFT_X = -175;
R_PAUSE_CURSOR_RIGHT_X = 155;
pauseCtx->unk_1EA = 0;
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_1;
@ -43,14 +43,14 @@ void KaleidoSetup_Update(PlayState* play) {
}
pauseCtx->mode = (u16)(pauseCtx->pageIndex * 2) + 1;
pauseCtx->state = PAUSECTX_STATE_1;
pauseCtx->state = PAUSE_STATE_1;
osSyncPrintf("=%d eye.x=%f, eye.z=%f kscp_pos=%d\n", pauseCtx->mode, pauseCtx->eye.x,
pauseCtx->eye.z, pauseCtx->pageIndex);
}
if (pauseCtx->state == PAUSECTX_STATE_1) {
WREG(2) = -6240;
if (pauseCtx->state == PAUSE_STATE_1) {
R_PAUSE_OFFSET_VERTICAL = -6240;
R_UPDATE_RATE = 2;
if (Letterbox_GetSizeTarget() != 0) {
@ -66,7 +66,7 @@ void KaleidoSetup_Init(PlayState* play) {
PauseContext* pauseCtx = &play->pauseCtx;
u64 temp = 0; // Necessary to match
pauseCtx->state = PAUSECTX_STATE_0;
pauseCtx->state = PAUSE_STATE_0;
pauseCtx->debugState = 0;
pauseCtx->alpha = 0;
pauseCtx->unk_1EA = 0;
@ -74,12 +74,12 @@ void KaleidoSetup_Init(PlayState* play) {
pauseCtx->mode = 0;
pauseCtx->pageIndex = PAUSE_ITEM;
pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotPauseMap_unk_1FC =
pauseCtx->rotPauseQuest_unk_200 = 160.0f;
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap = pauseCtx->rollRotPageQuest =
160.0f;
pauseCtx->eye.z = 64.0f;
pauseCtx->unk_1F0 = 936.0f;
pauseCtx->savePromptOffsetDepth_unk_1F0 = 936.0f;
pauseCtx->eye.x = pauseCtx->eye.y = 0.0f;
pauseCtx->rotXorZ_unk_204 = -314.0f;
pauseCtx->rollRotSavePromptPage_unk_204 = -314.0f;
pauseCtx->cursorPoint[PAUSE_ITEM] = 0;
pauseCtx->cursorPoint[PAUSE_MAP] = VREG(30) + 3;

View file

@ -886,8 +886,8 @@ void Environment_Update(PlayState* play, EnvironmentContext* envCtx, LightContex
func_800AA16C();
}
if (pauseCtx->state == PAUSECTX_STATE_0) {
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0)) {
if (pauseCtx->state == PAUSE_STATE_0) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
if (play->skyboxId == SKYBOX_NORMAL_SKY) {
play->skyboxCtx.rot.y -= 0.001f;
} else if (play->skyboxId == SKYBOX_CUTSCENE_MAP) {
@ -918,7 +918,7 @@ void Environment_Update(PlayState* play, EnvironmentContext* envCtx, LightContex
}
}
if ((pauseCtx->state == PAUSECTX_STATE_0) && (gameOverCtx->state == GAMEOVER_INACTIVE)) {
if ((pauseCtx->state == PAUSE_STATE_0) && (gameOverCtx->state == GAMEOVER_INACTIVE)) {
if (((msgCtx->msgLength == 0) && (msgCtx->msgMode == MSGMODE_NONE)) ||
(((void)0, gSaveContext.gameMode) == GAMEMODE_END_CREDITS)) {
if ((envCtx->changeSkyboxTimer == 0) && !FrameAdvance_IsEnabled(play) &&

View file

@ -506,7 +506,7 @@ void Health_UpdateBeatingHeart(PlayState* play) {
if (interfaceCtx->beatingHeartOscillator <= 0) {
interfaceCtx->beatingHeartOscillator = 0;
interfaceCtx->beatingHeartOscillatorDirection = 0;
if (!Player_InCsMode(play) && (play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
if (!Player_InCsMode(play) && (play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
Health_IsCritical() && !Play_InCsMode(play)) {
func_80078884(NA_SE_SY_HITPOINT_ALARM);
}

View file

@ -364,7 +364,8 @@ void Minimap_Draw(PlayState* play) {
OPEN_DISPS(play->state.gfxCtx, "../z_map_exp.c", 626);
if (play->pauseCtx.state < 4) {
if (play->pauseCtx.state < PAUSE_STATE_4) {
/* PAUSE_STATE_0, PAUSE_STATE_1, PAUSE_STATE_2, PAUSE_STATE_3 */
switch (play->sceneId) {
case SCENE_YDAN:
case SCENE_DDAN:
@ -520,7 +521,7 @@ void Map_Update(PlayState* play) {
s16 floor;
s16 i;
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0)) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
switch (play->sceneId) {
case SCENE_YDAN:
case SCENE_DDAN:

View file

@ -2103,7 +2103,7 @@ void Interface_SetDoAction(PlayState* play, u16 action) {
interfaceCtx->unk_1EC = 1;
interfaceCtx->unk_1F4 = 0.0f;
Interface_LoadActionLabel(interfaceCtx, action, 1);
if (pauseCtx->state != PAUSECTX_STATE_0) {
if (pauseCtx->state != PAUSE_STATE_0) {
interfaceCtx->unk_1EC = 3;
}
}
@ -2518,9 +2518,10 @@ void Magic_Update(PlayState* play) {
case MAGIC_STATE_CONSUME_LENS:
// Slowly consume magic while lens is on
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) && (msgCtx->msgMode == MSGMODE_NONE) &&
(play->gameOverCtx.state == GAMEOVER_INACTIVE) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
(play->transitionMode == TRANS_MODE_OFF) && !Play_InCsMode(play)) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
(msgCtx->msgMode == MSGMODE_NONE) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
(play->transitionTrigger == TRANS_TRIGGER_OFF) && (play->transitionMode == TRANS_MODE_OFF) &&
!Play_InCsMode(play)) {
if ((gSaveContext.magic == 0) || ((func_8008F2F8(play) >= 2) && (func_8008F2F8(play) < 5)) ||
((gSaveContext.equips.buttonItems[1] != ITEM_LENS) &&
(gSaveContext.equips.buttonItems[2] != ITEM_LENS) &&
@ -2763,10 +2764,12 @@ void Interface_DrawItemButtons(PlayState* play) {
(R_ITEM_BTN_X(3) + R_ITEM_BTN_WIDTH(3)) << 2, (R_ITEM_BTN_Y(3) + R_ITEM_BTN_WIDTH(3)) << 2,
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(3) << 1, R_ITEM_BTN_DD(3) << 1);
if ((pauseCtx->state < PAUSECTX_STATE_8) /* PAUSECTX_STATE_0, PAUSECTX_STATE_1, PAUSECTX_STATE_2, PAUSECTX_STATE_3,
PAUSECTX_STATE_4, PAUSECTX_STATE_5, PAUSECTX_STATE_6, PAUSECTX_STATE_7_SAVE_PROMPT_ */
|| (pauseCtx->state >= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */) {
if ((play->pauseCtx.state != 0) || (play->pauseCtx.debugState != 0)) {
if ((pauseCtx->state < PAUSE_STATE_8) /* PAUSE_STATE_0, PAUSE_STATE_1, PAUSE_STATE_2, PAUSE_STATE_3,
PAUSE_STATE_4, PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */
||
(pauseCtx->state >=
PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */) {
if ((play->pauseCtx.state != PAUSE_STATE_0) || (play->pauseCtx.debugState != 0)) {
// Start Button Texture, Color & Label
gDPPipeSync(OVERLAY_DISP++);
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 120, 120, 120, interfaceCtx->startAlpha);
@ -2794,7 +2797,7 @@ void Interface_DrawItemButtons(PlayState* play) {
}
}
if (interfaceCtx->naviCalling && (play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
if (interfaceCtx->naviCalling && (play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
(play->csCtx.state == CS_STATE_IDLE)) {
if (!sCUpInvisible) {
// C-Up Button Texture, Color & Label (Navi Text)
@ -3205,7 +3208,7 @@ void Interface_Draw(PlayState* play) {
Magic_DrawMeter(play);
Minimap_Draw(play);
if ((R_PAUSE_MENU_MODE != 2) && (R_PAUSE_MENU_MODE != 3)) {
if ((R_PAUSE_MENU_MODE != PAUSE_MENU_REG_MODE_2) && (R_PAUSE_MENU_MODE != PAUSE_MENU_REG_MODE_3)) {
func_8002C124(&play->actorCtx.targetCtx, play); // Draw Z-Target
}
@ -3320,7 +3323,7 @@ void Interface_Draw(PlayState* play) {
func_8008A994(interfaceCtx);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3)) {
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3)) {
// Inventory Equip Effects
gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment);
Gfx_SetupDL_42Overlay(play->state.gfxCtx);
@ -3371,7 +3374,7 @@ void Interface_Draw(PlayState* play) {
Gfx_SetupDL_39Overlay(play->state.gfxCtx);
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0)) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
if (gSaveContext.minigameState != 1) {
// Carrots rendering if the action corresponds to riding a horse
if (interfaceCtx->unk_1EE == 8) {
@ -3467,7 +3470,7 @@ void Interface_Draw(PlayState* play) {
}
}
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
(play->gameOverCtx.state == GAMEOVER_INACTIVE) && (msgCtx->msgMode == MSGMODE_NONE) &&
!(player->stateFlags2 & PLAYER_STATE2_24) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
(play->transitionMode == TRANS_MODE_OFF) && !Play_InCsMode(play) && (gSaveContext.minigameState != 1) &&
@ -3891,7 +3894,7 @@ void Interface_Update(PlayState* play) {
osSyncPrintf("J_N=%x J_N=%x\n", gSaveContext.language, &gSaveContext.language);
}
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0)) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
if ((gSaveContext.minigameState == 1) || !IS_CUTSCENE_LAYER ||
((play->sceneId == SCENE_SPOT20) && (gSaveContext.sceneLayer == 4))) {
if ((msgCtx->msgMode == MSGMODE_NONE) ||
@ -4035,10 +4038,10 @@ void Interface_Update(PlayState* play) {
Health_UpdateMeter(play);
if ((gSaveContext.timer1State >= 3) && (play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
(msgCtx->msgMode == MSGMODE_NONE) && !(player->stateFlags2 & PLAYER_STATE2_24) &&
(play->transitionTrigger == TRANS_TRIGGER_OFF) && (play->transitionMode == TRANS_MODE_OFF) &&
!Play_InCsMode(play)) {}
if ((gSaveContext.timer1State >= 3) && (play->pauseCtx.state == PAUSE_STATE_0) &&
(play->pauseCtx.debugState == 0) && (msgCtx->msgMode == MSGMODE_NONE) &&
!(player->stateFlags2 & PLAYER_STATE2_24) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
(play->transitionMode == TRANS_MODE_OFF) && !Play_InCsMode(play)) {}
if (gSaveContext.rupeeAccumulator != 0) {
if (gSaveContext.rupeeAccumulator > 0) {
@ -4121,9 +4124,10 @@ void Interface_Update(PlayState* play) {
WREG(7) = interfaceCtx->unk_1F4;
// Update Magic
if ((play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) && (msgCtx->msgMode == MSGMODE_NONE) &&
(play->transitionTrigger == TRANS_TRIGGER_OFF) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
(play->transitionMode == TRANS_MODE_OFF) && ((play->csCtx.state == CS_STATE_IDLE) || !Player_InCsMode(play))) {
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
(msgCtx->msgMode == MSGMODE_NONE) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
(play->gameOverCtx.state == GAMEOVER_INACTIVE) && (play->transitionMode == TRANS_MODE_OFF) &&
((play->csCtx.state == CS_STATE_IDLE) || !Player_InCsMode(play))) {
if (gSaveContext.isMagicAcquired && (gSaveContext.magicLevel == 0)) {
gSaveContext.magicLevel = gSaveContext.isDoubleMagicAcquired + 1;

View file

@ -178,7 +178,7 @@ void Play_Destroy(GameState* thisx) {
this->state.gfxCtx->callbackParam = 0;
SREG(91) = 0;
R_PAUSE_MENU_MODE = 0;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_0;
PreRender_Destroy(&this->pauseBgPreRender);
Effect_DeleteAll(this);
@ -355,7 +355,7 @@ void Play_Init(GameState* thisx) {
}
SREG(91) = -1;
R_PAUSE_MENU_MODE = 0;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_0;
PreRender_Init(&this->pauseBgPreRender);
PreRender_SetValuesSave(&this->pauseBgPreRender, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0, 0);
PreRender_SetValues(&this->pauseBgPreRender, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
@ -838,7 +838,7 @@ void Play_Update(PlayState* this) {
}
PLAY_LOG(3551);
sp80 = (this->pauseCtx.state != 0) || (this->pauseCtx.debugState != 0);
sp80 = (this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0);
PLAY_LOG(3555);
AnimationContext_Reset(&this->animationCtx);
@ -915,7 +915,7 @@ void Play_Update(PlayState* this) {
if (this->viewpoint != VIEWPOINT_NONE) {
if (CHECK_BTN_ALL(input[0].press.button, BTN_CUP)) {
if ((this->pauseCtx.state != 0) || (this->pauseCtx.debugState != 0)) {
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
// "Changing viewpoint is prohibited due to the kaleidoscope"
osSyncPrintf(VT_FGCOL(CYAN) "カレイドスコープ中につき視点変更を禁止しております\n" VT_RST);
} else if (Player_InCsMode(this)) {
@ -939,7 +939,7 @@ void Play_Update(PlayState* this) {
PLAY_LOG(3716);
if ((this->pauseCtx.state != 0) || (this->pauseCtx.debugState != 0)) {
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
PLAY_LOG(3721);
KaleidoScopeCall_Update(this);
} else if (this->gameOverCtx.state != GAMEOVER_INACTIVE) {
@ -1002,7 +1002,7 @@ skip:
}
void Play_DrawOverlayElements(PlayState* this) {
if ((this->pauseCtx.state != 0) || (this->pauseCtx.debugState != 0)) {
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
KaleidoScopeCall_Draw(this);
}
@ -1110,15 +1110,15 @@ void Play_Draw(PlayState* this) {
} else {
PreRender_SetValues(&this->pauseBgPreRender, SCREEN_WIDTH, SCREEN_HEIGHT, gfxCtx->curFrameBuffer, gZBuffer);
if (R_PAUSE_MENU_MODE == 2) {
if (R_PAUSE_MENU_MODE == PAUSE_MENU_REG_MODE_2) {
Sched_FlushTaskQueue();
PreRender_Calc(&this->pauseBgPreRender);
R_PAUSE_MENU_MODE = 3;
} else if (R_PAUSE_MENU_MODE >= 4) {
R_PAUSE_MENU_MODE = 0;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_3;
} else if (R_PAUSE_MENU_MODE >= PAUSE_MENU_REG_MODE_MAX) {
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_0;
}
if (R_PAUSE_MENU_MODE == 3) {
if (R_PAUSE_MENU_MODE == PAUSE_MENU_REG_MODE_3) {
Gfx* sp84 = POLY_OPA_DISP;
func_800C24BC(&this->pauseBgPreRender, &sp84);
@ -1233,16 +1233,16 @@ void Play_Draw(PlayState* this) {
DebugDisplay_DrawObjects(this);
}
if ((R_PAUSE_MENU_MODE == 1) || (gTrnsnUnkState == 1)) {
if ((R_PAUSE_MENU_MODE == PAUSE_MENU_REG_MODE_1) || (gTrnsnUnkState == 1)) {
Gfx* sp70 = OVERLAY_DISP;
this->pauseBgPreRender.fbuf = gfxCtx->curFrameBuffer;
this->pauseBgPreRender.fbufSave = (u16*)gZBuffer;
func_800C1F20(&this->pauseBgPreRender, &sp70);
if (R_PAUSE_MENU_MODE == 1) {
if (R_PAUSE_MENU_MODE == PAUSE_MENU_REG_MODE_1) {
this->pauseBgPreRender.cvgSave = (u8*)gfxCtx->curFrameBuffer;
func_800C20B4(&this->pauseBgPreRender, &sp70);
R_PAUSE_MENU_MODE = 2;
R_PAUSE_MENU_MODE = PAUSE_MENU_REG_MODE_2;
} else {
gTrnsnUnkState = 2;
}

View file

@ -1469,7 +1469,8 @@ void Gfx_SetupFrame(GraphicsContext* gfxCtx, u8 r, u8 g, u8 b) {
gDPSetDepthImage(POLY_XLU_DISP++, gZBuffer);
gDPSetDepthImage(OVERLAY_DISP++, gZBuffer);
if ((R_PAUSE_MENU_MODE < 2) && (gTrnsnUnkState < 2)) {
if ((R_PAUSE_MENU_MODE < PAUSE_MENU_REG_MODE_2) /* PAUSE_MENU_REG_MODE_0, PAUSE_MENU_REG_MODE_1 */ &&
(gTrnsnUnkState < 2)) {
s32 letterboxSize = Letterbox_GetSize();
if (HREG(80) == 16) {

View file

@ -71,7 +71,7 @@ void EnOkarinaEffect_TriggerStorm(EnOkarinaEffect* this, PlayState* play) {
void EnOkarinaEffect_ManageStorm(EnOkarinaEffect* this, PlayState* play) {
Flags_UnsetEnv(play, 5); // clear storms env flag
if (((play->pauseCtx.state == 0) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
if (((play->pauseCtx.state == PAUSE_STATE_0) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
(play->msgCtx.msgLength == 0) && (!FrameAdvance_IsEnabled(play)) &&
((play->transitionMode == TRANS_MODE_OFF) || (gSaveContext.gameMode != GAMEMODE_NORMAL))) ||
(this->timer >= 250)) {

View file

@ -2,6 +2,8 @@
#include "assets/textures/parameter_static/parameter_static.h"
#include "assets/textures/icon_item_static/icon_item_static.h"
#define SONG_MAX_LENGTH 8
void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
static s16 sHpPrimColors[][4] = {
{ 255, 0, 0, 255 },
@ -30,7 +32,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
static s16 sPlayedSongBtnsNum = 0;
static s16 D_8082A120_playbackSongStartTimer_ = 0;
static u8 sPlayedSongBtns[8] = { 0 };
static u8 sPlayedSongBtns[SONG_MAX_LENGTH] = { 0 };
static s32 sUnused1 = 0;
static void* sOcarinaBtnTextures[] = {
gOcarinaATex, // OCARINA_BTN_A
@ -42,7 +44,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
static u16 D_8082A144[] = {
0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC,
};
static s16 sPlayedSongBtnsAlpha[8] = { 0 };
static s16 sPlayedSongBtnsAlpha[SONG_MAX_LENGTH] = { 0 };
static s32 sUnused2 = 0;
static s16 sSongsPrimRed[] = {
@ -123,7 +125,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
if (pauseCtx->cursorSpecialPos == 0) {
pauseCtx->nameColorSet = 0;
if ((pauseCtx->state != PAUSECTX_STATE_6) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
if ((pauseCtx->state != PAUSE_STATE_6) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
// No cursor movement
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
} else {
@ -228,16 +230,21 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
// Use the appropriate QUEST_MEDALLION_FOREST-QUEST_HEART_PIECE quad (see `KaleidoScope_InitVertices`)
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
// Handle part of the ocarina songs playback
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->cursorSpecialPos == 0)) {
if ((cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
// The cursor is on a learned song
// Set some things up for song playback
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[cursor - QUEST_SONG_MINUET];
D_8082A120_playbackSongStartTimer_ = 10;
for (i = 0; i < 8; i++) {
for (i = 0; i < SONG_MAX_LENGTH; i++) {
sPlayedSongBtns[i] = 0xFF;
sPlayedSongBtnsAlpha[i] = 0;
}
@ -265,6 +272,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
}
}
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_) {
// Abort having the player play the song if the stick is moved
if ((pauseCtx->stickRelX != 0) || (pauseCtx->stickRelY != 0)) {
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
@ -281,6 +289,8 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
}
} else if (pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) {
if (pauseCtx->stickRelX > 30) {
// Move cursor right from the "scroll to left page" position
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_STONE_OF_AGONY;
pauseCtx->nameDisplayTimer = 0;
pauseCtx->cursorSpecialPos = 0;
@ -301,6 +311,8 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
}
} else { // cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT
if (pauseCtx->stickRelX < -30) {
// Move cursor left from the "scroll to right page" position
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_MEDALLION_FOREST;
pauseCtx->nameDisplayTimer = 0;
pauseCtx->cursorSpecialPos = 0;
@ -316,10 +328,10 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
cursorItem =
ITEM_MEDALLION_FOREST - QUEST_MEDALLION_FOREST + pauseCtx->cursorPoint[PAUSE_QUEST];
} else if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_SONG_LULLABY) {
//! @bug this results in the wrong item
//! @bug this would result in the wrong item
cursorItem = ITEM_SCALE_GOLDEN - QUEST_SONG_MINUET + pauseCtx->cursorPoint[PAUSE_QUEST];
} else {
//! @bug this results in the wrong item
//! @bug this would result in the wrong item
cursorItem = ITEM_COMPASS - QUEST_SONG_LULLABY + pauseCtx->cursorPoint[PAUSE_QUEST];
}
} else {
@ -335,7 +347,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
pauseCtx->cursorColorSet = 8;
if (--D_8082A120_playbackSongStartTimer_ == 0) {
for (i = 0; i < 8; i++) {
for (i = 0; i < SONG_MAX_LENGTH; i++) {
sPlayedSongBtns[i] = 0xFF;
sPlayedSongBtnsAlpha[i] = 0;
}
@ -530,7 +542,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
gDPSetCombineLERP(POLY_OPA_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0);
if ((pauseCtx->state == PAUSECTX_STATE_4) || (pauseCtx->state == PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE)) {
if ((pauseCtx->state == PAUSE_STATE_4) || (pauseCtx->state == PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, sHpPrimColors[0][0], sHpPrimColors[0][1], sHpPrimColors[0][2],
pauseCtx->alpha);
} else {
@ -547,7 +559,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
48, 48, 0);
}
if (pauseCtx->state == PAUSECTX_STATE_6) {
if (pauseCtx->state == PAUSE_STATE_6) {
gDPPipeSync(POLY_OPA_DISP++);
gDPSetCombineMode(POLY_OPA_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);

View file

@ -150,7 +150,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
}
}
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->pageIndex == PAUSE_EQUIP)) {
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_EQUIP];
pauseCtx->cursorColorSet = 0;
@ -467,7 +467,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->equipVtx);
if ((pauseCtx->cursorSpecialPos == 0) && (cursorItem != PAUSE_ITEM_NONE) &&
(pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
CHECK_BTN_ALL(input->press.button, BTN_A) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0)) {
if ((gEquipAgeReqs[pauseCtx->cursorY[PAUSE_EQUIP]][pauseCtx->cursorX[PAUSE_EQUIP]] == 9) ||

View file

@ -103,7 +103,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
pauseCtx->cursorColorSet = 0;
pauseCtx->nameColorSet = 0;
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->pageIndex == PAUSE_ITEM)) {
moveCursorResult = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_ITEM];
@ -345,7 +345,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
index = cursorSlot * 4; // required to match?
KaleidoScope_SetCursorVtx(pauseCtx, index, pauseCtx->itemVtx);
if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSECTX_STATE_6) &&
if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSE_STATE_6) &&
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
if (CHECK_BTN_ANY(input->press.button, BTN_CLEFT | BTN_CDOWN | BTN_CRIGHT)) {
if (((gSlotAgeReqs[cursorSlot] == 9) ||

View file

@ -46,7 +46,7 @@ void KaleidoScope_DrawDungeonMap(PlayState* play, GraphicsContext* gfxCtx) {
OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 123);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->pageIndex == PAUSE_MAP)) {
pauseCtx->cursorColorSet = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_MAP];
@ -411,7 +411,7 @@ void KaleidoScope_DrawWorldMap(PlayState* play, GraphicsContext* gfxCtx) {
OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 556);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
(pauseCtx->pageIndex == PAUSE_MAP)) {
pauseCtx->cursorColorSet = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_WORLD_MAP];

View file

@ -8,8 +8,8 @@ void KaleidoScope_UpdatePrompt(PlayState* play) {
s8 relStickX = input->rel.stick_x;
s16 step;
if (((pauseCtx->state == PAUSECTX_STATE_7_SAVE_PROMPT_) && (pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_1)) ||
(pauseCtx->state == PAUSECTX_STATE_14) || (pauseCtx->state == PAUSECTX_STATE_16)) {
if (((pauseCtx->state == PAUSE_STATE_7_SAVE_PROMPT_) && (pauseCtx->unk_1EC_ps7_ == PAUSE_S7_1)) ||
(pauseCtx->state == PAUSE_STATE_14) || (pauseCtx->state == PAUSE_STATE_16)) {
if ((pauseCtx->promptChoice == 0) && (relStickX >= 30)) {
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);

File diff suppressed because it is too large Load diff

View file

@ -80,7 +80,9 @@ void PauseMapMark_DrawForDungeon(PlayState* play) {
Matrix_Push();
if ((play->pauseCtx.state == 4) || (play->pauseCtx.state >= 0x12)) {
if ((play->pauseCtx.state == PAUSE_STATE_4) || (play->pauseCtx.state >= PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)
/* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */
) {
Matrix_Translate(-36.0f, 101.0f, 0.0f, MTXMODE_APPLY);
} else {
Matrix_Translate(-36.0f, 21.0f, 0.0f, MTXMODE_APPLY);