1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-02-23 07:45:55 +00:00

wip 2, lots on KaleidoScope_DrawQuestStatus

This commit is contained in:
Dragorn421 2022-08-26 15:32:41 +02:00
parent 38cf1d05d5
commit 118e3f84d5
No known key found for this signature in database
GPG key ID: 32B53D2D16FC4118
14 changed files with 511 additions and 440 deletions

View file

@ -147,6 +147,7 @@
#define R_COMPASS_OFFSET_X VREG(16) #define R_COMPASS_OFFSET_X VREG(16)
#define R_COMPASS_OFFSET_Y VREG(17) #define R_COMPASS_OFFSET_Y VREG(17)
#define R_MINIMAP_COLOR(i) VREG(18 + (i)) #define R_MINIMAP_COLOR(i) VREG(18 + (i))
#define R_PAUSE_SONG_NOTE_Y(ocarinaButtonIndex) VREG(21 + (ocarinaButtonIndex)) // VREG(21-25)
#define R_OCARINA_BUTTONS_XPOS VREG(28) #define R_OCARINA_BUTTONS_XPOS VREG(28)
#define R_OCARINA_BUTTONS_XPOS_OFFSET VREG(29) #define R_OCARINA_BUTTONS_XPOS_OFFSET VREG(29)
#define R_TEXT_ADJUST_COLOR_1_R VREG(33) #define R_TEXT_ADJUST_COLOR_1_R VREG(33)

View file

@ -740,7 +740,7 @@ typedef enum {
/* 3 */ PAUSECTX_STATE_3, /* 3 */ PAUSECTX_STATE_3,
/* 4 */ PAUSECTX_STATE_4, /* 4 */ PAUSECTX_STATE_4,
/* 5 */ PAUSECTX_STATE_5, /* 5 */ PAUSECTX_STATE_5,
/* 6 */ PAUSECTX_STATE_6, /* 6 */ PAUSECTX_STATE_6, // listen to inputs
/* 7 */ PAUSECTX_STATE_7, // save /* 7 */ PAUSECTX_STATE_7, // save
/* 8 */ PAUSECTX_STATE_8, // saveGameOver /* 8 */ PAUSECTX_STATE_8, // saveGameOver
/* 9 */ PAUSECTX_STATE_9, // saveGameOver /* 9 */ PAUSECTX_STATE_9, // saveGameOver
@ -752,21 +752,21 @@ typedef enum {
/* 15 */ PAUSECTX_STATE_15, // game over KaleidoScope_DrawGameOver saveGameOver /* 15 */ PAUSECTX_STATE_15, // game over KaleidoScope_DrawGameOver saveGameOver
/* 16 */ PAUSECTX_STATE_16, // game over KaleidoScope_DrawGameOver saveGameOver /* 16 */ PAUSECTX_STATE_16, // game over KaleidoScope_DrawGameOver saveGameOver
/* 17 */ PAUSECTX_STATE_17, // game over KaleidoScope_DrawGameOver saveGameOver /* 17 */ PAUSECTX_STATE_17, // game over KaleidoScope_DrawGameOver saveGameOver
/* 18 */ PAUSECTX_STATE_18, /* 18 */ PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE,
/* 19 */ PAUSECTX_STATE_19 /* 19 */ PAUSECTX_STATE_19_UNPAUSE
} PauseCtxState; } PauseCtxState;
typedef enum { typedef enum {
/* 0 */ PAUSECTX_UNK_1E4_0, /* 0 */ PAUSE_S6_0,
/* 1 */ PAUSECTX_UNK_1E4_1, /* 1 */ PAUSE_S6_1,
/* 2 */ PAUSECTX_UNK_1E4_2, /* 2 */ PAUSE_S6_2,
/* 3 */ PAUSECTX_UNK_1E4_3, /* 3 */ PAUSE_S6_3,
/* 4 */ PAUSECTX_UNK_1E4_4, /* 4 */ PAUSE_S6_4,
/* 5 */ PAUSECTX_UNK_1E4_5, /* 5 */ PAUSE_S6_5_PLAYING_SONG_,
/* 6 */ PAUSECTX_UNK_1E4_6, /* 6 */ PAUSE_S6_6,
/* 7 */ PAUSECTX_UNK_1E4_7, /* 7 */ PAUSE_S6_7,
/* 8 */ PAUSECTX_UNK_1E4_8, /* 8 */ PAUSE_S6_8,
/* 9 */ PAUSECTX_UNK_1E4_9 /* 9 */ PAUSE_S6_9
} PauseCtxUnk1E4; } PauseCtxUnk1E4;
typedef enum { typedef enum {

View file

@ -107,7 +107,8 @@ typedef enum {
/* 0x15 */ QUEST_STONE_OF_AGONY, /* 0x15 */ QUEST_STONE_OF_AGONY,
/* 0x16 */ QUEST_GERUDO_CARD, /* 0x16 */ QUEST_GERUDO_CARD,
/* 0x17 */ QUEST_SKULL_TOKEN, /* 0x17 */ QUEST_SKULL_TOKEN,
/* 0x1C */ QUEST_HEART_PIECE_COUNT = 0x1C /* 0x18 */ QUEST_HEART_PIECE, // for `pauseCtx->cursorPoint[PAUSE_QUEST]`
/* 0x1C */ QUEST_HEART_PIECE_COUNT = 0x1C // for accessing the `Inventory.questItems` bitfield
} QuestItem; } QuestItem;
typedef enum { typedef enum {

View file

@ -526,11 +526,12 @@ void func_80111070(void) {
R_MINIMAP_COLOR(2) = 255; R_MINIMAP_COLOR(2) = 255;
} }
VREG(21) = 0; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = 0;
VREG(22) = 0; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_DOWN) = 0;
VREG(23) = 0; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = 0;
VREG(24) = 0; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = 0;
VREG(25) = 0; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_UP) = 0;
VREG(26) = 0; VREG(26) = 0;
VREG(27) = 0; VREG(27) = 0;
R_OCARINA_BUTTONS_XPOS = 98; R_OCARINA_BUTTONS_XPOS = 98;

View file

@ -62,7 +62,7 @@ void KaleidoScopeCall_Update(PlayState* play) {
HREG(80) = 7; HREG(80) = 7;
HREG(82) = 3; HREG(82) = 3;
R_PAUSE_MENU_MODE = 1; R_PAUSE_MENU_MODE = 1;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0; pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_2 pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_2
} }
@ -70,14 +70,14 @@ void KaleidoScopeCall_Update(PlayState* play) {
HREG(80) = 7; HREG(80) = 7;
HREG(82) = 3; HREG(82) = 3;
R_PAUSE_MENU_MODE = 1; R_PAUSE_MENU_MODE = 1;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0; pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_9 pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSECTX_STATE_9
} else if ((pauseCtx->state == PAUSECTX_STATE_2) || (pauseCtx->state == PAUSECTX_STATE_9)) { } else if ((pauseCtx->state == PAUSECTX_STATE_2) || (pauseCtx->state == PAUSECTX_STATE_9)) {
osSyncPrintf("PR_KAREIDOSCOPE_MODE=%d\n", R_PAUSE_MENU_MODE); osSyncPrintf("PR_KAREIDOSCOPE_MODE=%d\n", R_PAUSE_MENU_MODE);
if (R_PAUSE_MENU_MODE >= 3) { if (R_PAUSE_MENU_MODE >= 3) {
pauseCtx->state++; pauseCtx->state++; // PAUSECTX_STATE_3 or PAUSECTX_STATE_10
} }
} else if (pauseCtx->state != PAUSECTX_STATE_0) { } else if (pauseCtx->state != PAUSECTX_STATE_0) {
if (gKaleidoMgrCurOvl != kaleidoScopeOvl) { if (gKaleidoMgrCurOvl != kaleidoScopeOvl) {

View file

@ -30,7 +30,7 @@ void KaleidoSetup_Update(PlayState* play) {
WREG(17) = 155; WREG(17) = 155;
pauseCtx->unk_1EA = 0; pauseCtx->unk_1EA = 0;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_1; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_1;
if (ZREG(48) == 0) { if (ZREG(48) == 0) {
pauseCtx->eye.x = sKaleidoSetupEyeX0[pauseCtx->pageIndex]; pauseCtx->eye.x = sKaleidoSetupEyeX0[pauseCtx->pageIndex];
@ -70,7 +70,7 @@ void KaleidoSetup_Init(PlayState* play) {
pauseCtx->debugState = 0; pauseCtx->debugState = 0;
pauseCtx->alpha = 0; pauseCtx->alpha = 0;
pauseCtx->unk_1EA = 0; pauseCtx->unk_1EA = 0;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->mode = 0; pauseCtx->mode = 0;
pauseCtx->pageIndex = PAUSE_ITEM; pauseCtx->pageIndex = PAUSE_ITEM;
@ -83,7 +83,7 @@ void KaleidoSetup_Init(PlayState* play) {
pauseCtx->cursorPoint[PAUSE_ITEM] = 0; pauseCtx->cursorPoint[PAUSE_ITEM] = 0;
pauseCtx->cursorPoint[PAUSE_MAP] = VREG(30) + 3; pauseCtx->cursorPoint[PAUSE_MAP] = VREG(30) + 3;
pauseCtx->cursorPoint[PAUSE_QUEST] = 0; pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_MEDALLION_FOREST;
pauseCtx->cursorPoint[PAUSE_EQUIP] = 1; pauseCtx->cursorPoint[PAUSE_EQUIP] = 1;
pauseCtx->cursorPoint[PAUSE_WORLD_MAP] = 10; pauseCtx->cursorPoint[PAUSE_WORLD_MAP] = 10;

View file

@ -2765,7 +2765,7 @@ void Interface_DrawItemButtons(PlayState* play) {
if ((pauseCtx->state < PAUSECTX_STATE_8) /* PAUSECTX_STATE_0, PAUSECTX_STATE_1, PAUSECTX_STATE_2, PAUSECTX_STATE_3, 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 */ PAUSECTX_STATE_4, PAUSECTX_STATE_5, PAUSECTX_STATE_6, PAUSECTX_STATE_7 */
|| (pauseCtx->state >= PAUSECTX_STATE_18) /* PAUSECTX_STATE_18, PAUSECTX_STATE_19 */) { || (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 ((play->pauseCtx.state != 0) || (play->pauseCtx.debugState != 0)) {
// Start Button Texture, Color & Label // Start Button Texture, Color & Label
gDPPipeSync(OVERLAY_DISP++); gDPPipeSync(OVERLAY_DISP++);
@ -3320,7 +3320,7 @@ void Interface_Draw(PlayState* play) {
func_8008A994(interfaceCtx); func_8008A994(interfaceCtx);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_3)) { if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3)) {
// Inventory Equip Effects // Inventory Equip Effects
gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment); gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment);
Gfx_SetupDL_42Overlay(play->state.gfxCtx); Gfx_SetupDL_42Overlay(play->state.gfxCtx);

View file

@ -49,9 +49,9 @@ void EnMag_Init(Actor* thisx, PlayState* play) {
this->fadeOutAlphaStep = 10; this->fadeOutAlphaStep = 10;
VREG(19) = 99; VREG(19) = 99;
VREG(21) = 9; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = 9;
VREG(23) = 10; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = 10;
VREG(24) = 8; R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = 8;
this->effectScroll = 0; this->effectScroll = 0;
this->unk_E30C = 0; this->unk_E30C = 0;

View file

@ -791,7 +791,10 @@ static void* sQuestItemTextures[] = {
static s16 sQuestItemRed[] = { 255, 255, 255, 0, 255, 0, 255, 200, 200 }; static s16 sQuestItemRed[] = { 255, 255, 255, 0, 255, 0, 255, 200, 200 };
static s16 sQuestItemGreen[] = { 255, 255, 255, 255, 60, 100, 130, 50, 200 }; static s16 sQuestItemGreen[] = { 255, 255, 255, 255, 60, 100, 130, 50, 200 };
static s16 sQuestItemBlue[] = { 255, 255, 255, 0, 0, 255, 0, 255, 0 }; static s16 sQuestItemBlue[] = { 255, 255, 255, 0, 0, 255, 0, 255, 0 };
static s16 sQuestItemFlags[] = { 0x0012, 0x0013, 0x0014, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005 }; static s16 sQuestItemFlags[] = {
QUEST_KOKIRI_EMERALD, QUEST_GORON_RUBY, QUEST_ZORA_SAPPHIRE, QUEST_MEDALLION_FOREST, QUEST_MEDALLION_FIRE,
QUEST_MEDALLION_WATER, QUEST_MEDALLION_SPIRIT, QUEST_MEDALLION_SHADOW, QUEST_MEDALLION_LIGHT,
};
static s16 sNamePrimColors[2][3] = { { 255, 255, 255 }, { 100, 100, 100 } }; static s16 sNamePrimColors[2][3] = { { 255, 255, 255 }, { 100, 100, 100 } };
static void* sHeartTextures[] = { gHeartFullTex, gDefenseHeartFullTex }; static void* sHeartTextures[] = { gHeartFullTex, gDefenseHeartFullTex };
static s16 sHeartPrimColors[2][3] = { { 255, 70, 50 }, { 200, 0, 0 } }; static s16 sHeartPrimColors[2][3] = { { 255, 70, 50 }, { 200, 0, 0 } };

File diff suppressed because it is too large Load diff

View file

@ -150,7 +150,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
} }
} }
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
(pauseCtx->pageIndex == PAUSE_EQUIP)) { (pauseCtx->pageIndex == PAUSE_EQUIP)) {
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_EQUIP]; oldCursorPoint = pauseCtx->cursorPoint[PAUSE_EQUIP];
pauseCtx->cursorColorSet = 0; pauseCtx->cursorColorSet = 0;
@ -467,7 +467,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->equipVtx); KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->equipVtx);
if ((pauseCtx->cursorSpecialPos == 0) && (cursorItem != PAUSE_ITEM_NONE) && if ((pauseCtx->cursorSpecialPos == 0) && (cursorItem != PAUSE_ITEM_NONE) &&
(pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && (pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
CHECK_BTN_ALL(input->press.button, BTN_A) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0)) { CHECK_BTN_ALL(input->press.button, BTN_A) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0)) {
if ((gEquipAgeReqs[pauseCtx->cursorY[PAUSE_EQUIP]][pauseCtx->cursorX[PAUSE_EQUIP]] == 9) || if ((gEquipAgeReqs[pauseCtx->cursorY[PAUSE_EQUIP]][pauseCtx->cursorX[PAUSE_EQUIP]] == 9) ||
@ -497,7 +497,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_7; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_7;
sEquipTimer = 10; sEquipTimer = 10;
} else { } else {
Audio_PlaySfxGeneral(NA_SE_SY_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
@ -509,13 +509,13 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
} }
} else if ((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_7) && (pauseCtx->pageIndex == PAUSE_EQUIP)) { } else if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) && (pauseCtx->pageIndex == PAUSE_EQUIP)) {
KaleidoScope_SetCursorVtx(pauseCtx, pauseCtx->cursorSlot[PAUSE_EQUIP] * 4, pauseCtx->equipVtx); KaleidoScope_SetCursorVtx(pauseCtx, pauseCtx->cursorSlot[PAUSE_EQUIP] * 4, pauseCtx->equipVtx);
pauseCtx->cursorColorSet = 8; pauseCtx->cursorColorSet = 8;
sEquipTimer--; sEquipTimer--;
if (sEquipTimer == 0) { if (sEquipTimer == 0) {
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
} }
} }
@ -582,11 +582,11 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
KaleidoScope_DrawPlayerWork(play); KaleidoScope_DrawPlayerWork(play);
if ((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_7) && (sEquipTimer == 10)) { if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) && (sEquipTimer == 10)) {
KaleidoScope_SetupPlayerPreRender(play); KaleidoScope_SetupPlayerPreRender(play);
} }
if ((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_7) && (sEquipTimer == 9)) { if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) && (sEquipTimer == 9)) {
//! @bug: This function shouldn't take any arguments //! @bug: This function shouldn't take any arguments
KaleidoScope_ProcessPlayerPreRender(play); KaleidoScope_ProcessPlayerPreRender(play);
} }

View file

@ -103,7 +103,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
pauseCtx->cursorColorSet = 0; pauseCtx->cursorColorSet = 0;
pauseCtx->nameColorSet = 0; pauseCtx->nameColorSet = 0;
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
(pauseCtx->pageIndex == PAUSE_ITEM)) { (pauseCtx->pageIndex == PAUSE_ITEM)) {
moveCursorResult = 0; moveCursorResult = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_ITEM]; oldCursorPoint = pauseCtx->cursorPoint[PAUSE_ITEM];
@ -346,7 +346,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
KaleidoScope_SetCursorVtx(pauseCtx, index, pauseCtx->itemVtx); KaleidoScope_SetCursorVtx(pauseCtx, index, pauseCtx->itemVtx);
if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSECTX_STATE_6) && if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSECTX_STATE_6) &&
(pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
if (CHECK_BTN_ANY(input->press.button, BTN_CLEFT | BTN_CDOWN | BTN_CRIGHT)) { if (CHECK_BTN_ANY(input->press.button, BTN_CLEFT | BTN_CDOWN | BTN_CRIGHT)) {
if (((gSlotAgeReqs[cursorSlot] == 9) || if (((gSlotAgeReqs[cursorSlot] == 9) ||
(gSlotAgeReqs[cursorSlot] == ((void)0, gSaveContext.linkAge))) && (gSlotAgeReqs[cursorSlot] == ((void)0, gSaveContext.linkAge))) &&
@ -361,7 +361,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
pauseCtx->equipTargetItem = cursorItem; pauseCtx->equipTargetItem = cursorItem;
pauseCtx->equipTargetSlot = cursorSlot; pauseCtx->equipTargetSlot = cursorSlot;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_3; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_3;
pauseCtx->equipAnimX = pauseCtx->itemVtx[index].v.ob[0] * 10; pauseCtx->equipAnimX = pauseCtx->itemVtx[index].v.ob[0] * 10;
pauseCtx->equipAnimY = pauseCtx->itemVtx[index].v.ob[1] * 10; pauseCtx->equipAnimY = pauseCtx->itemVtx[index].v.ob[1] * 10;
pauseCtx->equipAnimAlpha = 255; pauseCtx->equipAnimAlpha = 255;
@ -410,7 +410,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
} }
} else if ((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_3) && (pauseCtx->pageIndex == PAUSE_ITEM)) { } else if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3) && (pauseCtx->pageIndex == PAUSE_ITEM)) {
KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->itemVtx); KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->itemVtx);
pauseCtx->cursorColorSet = 4; pauseCtx->cursorColorSet = 4;
} }
@ -434,7 +434,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, pauseCtx->alpha); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, pauseCtx->alpha);
if (gSaveContext.inventory.items[i] != ITEM_NONE) { if (gSaveContext.inventory.items[i] != ITEM_NONE) {
if ((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && (pauseCtx->pageIndex == PAUSE_ITEM) && if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) && (pauseCtx->pageIndex == PAUSE_ITEM) &&
(pauseCtx->cursorSpecialPos == 0)) { (pauseCtx->cursorSpecialPos == 0)) {
if ((gSlotAgeReqs[i] == 9) || (gSlotAgeReqs[i] == ((void)0, gSaveContext.linkAge))) { if ((gSlotAgeReqs[i] == 9) || (gSlotAgeReqs[i] == ((void)0, gSaveContext.linkAge))) {
if ((sEquipState == 2) && (i == 3)) { if ((sEquipState == 2) && (i == 3)) {
@ -804,7 +804,7 @@ void KaleidoScope_UpdateItemEquip(PlayState* play) {
gSaveContext.equips.cButtonSlots[2]); gSaveContext.equips.cButtonSlots[2]);
} }
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
sEquipMoveTimer = 10; sEquipMoveTimer = 10;
WREG(90) = 320; WREG(90) = 320;
WREG(87) = WREG(91); WREG(87) = WREG(91);

View file

@ -46,7 +46,7 @@ void KaleidoScope_DrawDungeonMap(PlayState* play, GraphicsContext* gfxCtx) {
OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 123); OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 123);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
(pauseCtx->pageIndex == PAUSE_MAP)) { (pauseCtx->pageIndex == PAUSE_MAP)) {
pauseCtx->cursorColorSet = 0; pauseCtx->cursorColorSet = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_MAP]; 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); OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 556);
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) && if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
(pauseCtx->pageIndex == PAUSE_MAP)) { (pauseCtx->pageIndex == PAUSE_MAP)) {
pauseCtx->cursorColorSet = 0; pauseCtx->cursorColorSet = 0;
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_WORLD_MAP]; oldCursorPoint = pauseCtx->cursorPoint[PAUSE_WORLD_MAP];

View file

@ -136,11 +136,11 @@ s16 D_8082AB2C_height_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[] = {
}; };
static u8 D_8082AB6C[][5] = { static u8 D_8082AB6C[][5] = {
{ BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, { BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, // PAUSE_ITEM
{ BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_DISABLED }, { BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_DISABLED }, // PAUSE_MAP
{ BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED }, { BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED }, // PAUSE_QUEST
{ BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, { BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, // PAUSE_EQUIP
{ BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, { BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, // PAUSE_WORLD_MAP
{ BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_DISABLED }, { BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_DISABLED },
}; };
@ -387,15 +387,15 @@ void KaleidoScope_SetDefaultCursor(PlayState* play) {
} }
void KaleidoScope_SwitchPage(PauseContext* pauseCtx, u8 pt) { void KaleidoScope_SwitchPage(PauseContext* pauseCtx, u8 pt) {
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_1; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_1;
pauseCtx->unk_1EA = 0; pauseCtx->unk_1EA = 0;
if (!pt) { if (!pt) { // pt == 0, scroll left
pauseCtx->mode = pauseCtx->pageIndex * 2 + 1; pauseCtx->mode = pauseCtx->pageIndex * 2 + 1;
Audio_PlaySfxGeneral(NA_SE_SY_WIN_SCROLL_LEFT, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_WIN_SCROLL_LEFT, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
pauseCtx->cursorSpecialPos = PAUSE_CURSOR_PAGE_RIGHT; pauseCtx->cursorSpecialPos = PAUSE_CURSOR_PAGE_RIGHT;
} else { } else { // pt == 2, scroll left
pauseCtx->mode = pauseCtx->pageIndex * 2; pauseCtx->mode = pauseCtx->pageIndex * 2;
Audio_PlaySfxGeneral(NA_SE_SY_WIN_SCROLL_RIGHT, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_WIN_SCROLL_RIGHT, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
@ -456,13 +456,11 @@ void KaleidoScope_DrawCursor(PlayState* play, u16 pageIndex) {
OPEN_DISPS(play->state.gfxCtx, "../z_kaleido_scope_PAL.c", 955); OPEN_DISPS(play->state.gfxCtx, "../z_kaleido_scope_PAL.c", 955);
temp = pauseCtx->unk_1E4; temp = pauseCtx->unk_1E4_ps6_;
if ((((pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) || (temp == PAUSECTX_UNK_1E4_8)) && if ((((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) || (temp == PAUSE_S6_8)) && (pauseCtx->state == PAUSECTX_STATE_6)) ||
(pauseCtx->state == PAUSECTX_STATE_6)) || ((pauseCtx->pageIndex == PAUSE_QUEST) && ((temp < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */ ||
((pauseCtx->pageIndex == PAUSE_QUEST) && (temp == PAUSE_S6_5_PLAYING_SONG_) || (temp == PAUSE_S6_8)))) {
((temp < PAUSECTX_UNK_1E4_3) /* PAUSECTX_UNK_1E4_0, PAUSECTX_UNK_1E4_1, PAUSECTX_UNK_1E4_2 */ ||
(temp == PAUSECTX_UNK_1E4_5) || (temp == PAUSECTX_UNK_1E4_8)))) {
if (pauseCtx->pageIndex == pageIndex) { if (pauseCtx->pageIndex == pageIndex) {
s16 i; s16 i;
@ -562,7 +560,8 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
if ((pauseCtx->state < if ((pauseCtx->state <
PAUSECTX_STATE_8) /* PAUSECTX_STATE_0, PAUSECTX_STATE_1, PAUSECTX_STATE_2, PAUSECTX_STATE_3, PAUSECTX_STATE_4, 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 */ PAUSECTX_STATE_5, PAUSECTX_STATE_6, PAUSECTX_STATE_7 */
|| (pauseCtx->state > PAUSECTX_STATE_17) /* PAUSECTX_STATE_18, PAUSECTX_STATE_19 */) { || (pauseCtx->state >
PAUSECTX_STATE_17) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */) {
if (pauseCtx->state != PAUSECTX_STATE_7) { if (pauseCtx->state != PAUSECTX_STATE_7) {
stepR = ABS(sColor82ABRed_D_8082AB8C - stepR = ABS(sColor82ABRed_D_8082AB8C -
sCursorColors_D_8082ACF4[pauseCtx->cursorColorSet + sCursorColorBlinkOffset_D_8082AD40][0]) / sCursorColors_D_8082ACF4[pauseCtx->cursorColorSet + sCursorColorBlinkOffset_D_8082AD40][0]) /
@ -839,7 +838,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
Gfx_SetupDL_42Opa(gfxCtx); Gfx_SetupDL_42Opa(gfxCtx);
if ((pauseCtx->state == PAUSECTX_STATE_7) || if ((pauseCtx->state == PAUSECTX_STATE_7) ||
((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18)) ((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
/* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, /* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12,
PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */ PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */
) { ) {
@ -879,7 +878,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(gfxCtx, "../z_kaleido_scope_PAL.c", 1424), gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(gfxCtx, "../z_kaleido_scope_PAL.c", 1424),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18)) if (((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
/* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, /* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12,
PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) { PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) {
POLY_OPA_DISP = KaleidoScope_DrawPageSections(POLY_OPA_DISP, pauseCtx->saveVtx, sGameOverTexs); POLY_OPA_DISP = KaleidoScope_DrawPageSections(POLY_OPA_DISP, pauseCtx->saveVtx, sGameOverTexs);
@ -1088,7 +1087,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
pauseCtx->infoPanelVtx[5].v.ob[0] = pauseCtx->infoPanelVtx[7].v.ob[0] = pauseCtx->infoPanelVtx[4].v.ob[0] + 72; pauseCtx->infoPanelVtx[5].v.ob[0] = pauseCtx->infoPanelVtx[7].v.ob[0] = pauseCtx->infoPanelVtx[4].v.ob[0] + 72;
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
pauseCtx->infoPanelVtx[8].v.ob[0] = pauseCtx->infoPanelVtx[10].v.ob[0] = WREG(16); pauseCtx->infoPanelVtx[8].v.ob[0] = pauseCtx->infoPanelVtx[10].v.ob[0] = WREG(16);
pauseCtx->infoPanelVtx[9].v.ob[0] = pauseCtx->infoPanelVtx[11].v.ob[0] = pauseCtx->infoPanelVtx[8].v.ob[0] + 24; pauseCtx->infoPanelVtx[9].v.ob[0] = pauseCtx->infoPanelVtx[11].v.ob[0] = pauseCtx->infoPanelVtx[8].v.ob[0] + 24;
@ -1108,7 +1107,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
pauseCtx->infoPanelVtx[8].v.ob[1] - 26; pauseCtx->infoPanelVtx[8].v.ob[1] - 26;
} }
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
pauseCtx->infoPanelVtx[12].v.ob[0] = pauseCtx->infoPanelVtx[14].v.ob[0] = WREG(17); pauseCtx->infoPanelVtx[12].v.ob[0] = pauseCtx->infoPanelVtx[14].v.ob[0] = WREG(17);
pauseCtx->infoPanelVtx[13].v.ob[0] = pauseCtx->infoPanelVtx[15].v.ob[0] = pauseCtx->infoPanelVtx[13].v.ob[0] = pauseCtx->infoPanelVtx[15].v.ob[0] =
@ -1149,7 +1148,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
gSPDisplayList(POLY_OPA_DISP++, gItemNamePanelDL); gSPDisplayList(POLY_OPA_DISP++, gItemNamePanelDL);
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6);
} }
@ -1157,7 +1156,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 180, 210, 255, 220); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 180, 210, 255, 220);
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6);
} }
@ -1184,17 +1183,15 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->namedItem != PAUSE_ITEM_NONE) && if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->namedItem != PAUSE_ITEM_NONE) &&
(pauseCtx->nameDisplayTimer < WREG(89)) && (pauseCtx->nameDisplayTimer < WREG(89)) &&
(!pauseCtx->unk_1E4 /* PAUSECTX_UNK_1E4_0 */ || (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_2) || (!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2) ||
((pauseCtx->unk_1E4 >= PAUSECTX_UNK_1E4_4) && ((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4) &&
(pauseCtx->unk_1E4 <= (pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
PAUSECTX_UNK_1E4_7)) /* PAUSECTX_UNK_1E4_4, PAUSECTX_UNK_1E4_5, PAUSECTX_UNK_1E4_6, PAUSECTX_UNK_1E4_7 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) &&
|| (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_8)) &&
(pauseCtx->cursorSpecialPos == 0)) { (pauseCtx->cursorSpecialPos == 0)) {
if (!pauseCtx->unk_1E4 /* PAUSECTX_UNK_1E4_0 */ || (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_2) || if (!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2) ||
((pauseCtx->unk_1E4 >= PAUSECTX_UNK_1E4_4) && ((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4) &&
(pauseCtx->unk_1E4 <= (pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
PAUSECTX_UNK_1E4_7)) /* PAUSECTX_UNK_1E4_4, PAUSECTX_UNK_1E4_5, PAUSECTX_UNK_1E4_6, PAUSECTX_UNK_1E4_7 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
|| (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_8)) {
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63; pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63;
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
@ -1254,8 +1251,8 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
KaleidoScope_DrawQuadTextureRGBA32(play->state.gfxCtx, gGoldSkulltulaIconTex, 24, 24, 0); KaleidoScope_DrawQuadTextureRGBA32(play->state.gfxCtx, gGoldSkulltulaIconTex, 24, 24, 0);
} }
} }
} else if ((pauseCtx->unk_1E4 < PAUSECTX_UNK_1E4_3) /* PAUSECTX_UNK_1E4_0, PAUSECTX_UNK_1E4_1, PAUSECTX_UNK_1E4_2 */ } else if ((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */
|| (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_7) || (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_8)) { || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
pauseCtx->infoPanelVtx[20].v.ob[1] = pauseCtx->infoPanelVtx[21].v.ob[1] = temp; pauseCtx->infoPanelVtx[20].v.ob[1] = pauseCtx->infoPanelVtx[21].v.ob[1] = temp;
pauseCtx->infoPanelVtx[22].v.ob[1] = pauseCtx->infoPanelVtx[23].v.ob[1] = pauseCtx->infoPanelVtx[22].v.ob[1] = pauseCtx->infoPanelVtx[23].v.ob[1] =
@ -1290,7 +1287,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD60[gSaveContext.language], POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD60[gSaveContext.language],
D_8082ADE0[gSaveContext.language], 16, 4); D_8082ADE0[gSaveContext.language], 16, 4);
} else if (pauseCtx->cursorSpecialPos != 0) { } else if (pauseCtx->cursorSpecialPos != 0) {
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0)) { if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0)) {
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63; pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63;
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
@ -1445,7 +1442,7 @@ void KaleidoScope_UpdateNamePanel(PlayState* play) {
} }
} else if (pauseCtx->nameColorSet == 0) { } else if (pauseCtx->nameColorSet == 0) {
if (((pauseCtx->pageIndex == PAUSE_QUEST) && (pauseCtx->cursorSlot[PAUSE_QUEST] >= 6) && if (((pauseCtx->pageIndex == PAUSE_QUEST) && (pauseCtx->cursorSlot[PAUSE_QUEST] >= 6) &&
(pauseCtx->cursorSlot[PAUSE_QUEST] <= 0x11) && (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_8)) || (pauseCtx->cursorSlot[PAUSE_QUEST] <= 0x11) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) ||
(pauseCtx->pageIndex == PAUSE_ITEM) || (pauseCtx->pageIndex == PAUSE_ITEM) ||
((pauseCtx->pageIndex == PAUSE_EQUIP) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0))) { ((pauseCtx->pageIndex == PAUSE_EQUIP) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0))) {
if (pauseCtx->namedItem != ITEM_SOLD_OUT) { if (pauseCtx->namedItem != ITEM_SOLD_OUT) {
@ -1490,7 +1487,7 @@ void func_808237B4(PlayState* play, Input* input) {
if (pauseCtx->unk_1EA == 64) { if (pauseCtx->unk_1EA == 64) {
pauseCtx->unk_1EA = 0; pauseCtx->unk_1EA = 0;
pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode]; pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode];
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
} }
} }
} }
@ -1765,7 +1762,7 @@ s16 func_80823A0C_makeVertices_(PlayState* play, Vtx* vtx, s16 usage_arg2, s16 a
vtx[bufI + 1].v.ob[0] = vtx[bufI + 3].v.ob[0] = vtx[bufI + 0].v.ob[0] + ptr2_width_[j]; vtx[bufI + 1].v.ob[0] = vtx[bufI + 3].v.ob[0] = vtx[bufI + 0].v.ob[0] + ptr2_width_[j];
if (!((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18)) if (!((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
/* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, /* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12,
PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) { PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) {
vtx[bufI + 0].v.ob[1] = vtx[bufI + 1].v.ob[1] = ptr3_y_[j] + pauseCtx->offsetY; vtx[bufI + 0].v.ob[1] = vtx[bufI + 1].v.ob[1] = ptr3_y_[j] + pauseCtx->offsetY;
@ -1864,26 +1861,32 @@ s16 func_80823A0C_makeVertices_(PlayState* play, Vtx* vtx, s16 usage_arg2, s16 a
return bufI; return bufI;
} }
static s16 D_8082B11C[] = { 0, 4, 8, 12, 24, 32, 56 }; static s16 D_8082B11C[] = { 0, 4, 8, 12, 24, 32, 56 }; // itemVtx
static s16 D_8082B12C_x_equipVtx_[] = { -114, 12, 44, 76 }; static s16 D_8082B12C_x_equipVtx_[] = { -114, 12, 44, 76 };
static u8 D_8082B134[] = { 1, 5, 9, 13 }; static u8 D_8082B134[] = { 1, 5, 9, 13 }; // equipVtx
static s16 D_8082B138_x_questVtx[] = { static s16 D_8082B138_x_questVtx[] = {
74, 74, 46, 18, 18, 46, -108, -90, -72, -54, -36, -18, -108, -90, -72, -54, // QUEST_MEDALLION_FOREST-QUEST_HEART_PIECE
-36, -18, 20, 46, 72, -110, -86, -110, -54, -98, -86, -74, -62, -50, -38, -26, 74, 74, 46, 18, 18, 46, -108, -90, -72, -54, -36, -18, -108, -90, -72, -54, -36, -18, 20, 46, 72, -110, -86, -110,
-14, -98, -86, -74, -62, -50, -38, -26, -14, -88, -81, -72, -90, -83, -74, -54,
//
-98, -86, -74, -62, -50, -38, -26, -14, -98, -86, -74, -62, -50, -38, -26, -14, -88, -81, -72, -90, -83, -74
}; };
static s16 D_8082B198_y_questVtx[] = { static s16 D_8082B198_y_questVtx[] = {
38, 6, -12, 6, 38, 56, -20, -20, -20, -20, -20, -20, 2, 2, 2, 2, 2, 2, -46, -46, -46, 58, 58, 34, // QUEST_MEDALLION_FOREST-QUEST_HEART_PIECE
58, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 34, 34, 34, 36, 36, 36, 38, 6, -12, 6, 38, 56, -20, -20, -20, -20, -20, -20, 2, 2, 2, 2, 2, 2, -46, -46, -46, 58, 58, 34, 58,
//
-52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 34, 34, 34, 36, 36, 36
}; };
static s16 D_8082B1F8_width_questVtx_[] = { static s16 D_8082B1F8_width_questVtx_[] = {
24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, // QUEST_MEDALLION_FOREST-QUEST_HEART_PIECE
48, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 48,
//
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16
}; };
void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) { void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
@ -1898,7 +1901,7 @@ void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
pauseCtx->offsetY = 0; pauseCtx->offsetY = 0;
if ((pauseCtx->state == PAUSECTX_STATE_4) || if ((pauseCtx->state == PAUSECTX_STATE_4) ||
(pauseCtx->state >= PAUSECTX_STATE_18) /* PAUSECTX_STATE_18, PAUSECTX_STATE_19 */ || (pauseCtx->state >= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */ ||
((pauseCtx->state == PAUSECTX_STATE_7) && ((pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_2) || (pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_5))) || ((pauseCtx->state == PAUSECTX_STATE_7) && ((pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_2) || (pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_5))) ||
((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state <= PAUSECTX_STATE_13)) ((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state <= PAUSECTX_STATE_13))
/* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, PAUSECTX_STATE_13 */) { /* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, PAUSECTX_STATE_13 */) {
@ -2391,7 +2394,7 @@ void KaleidoScope_Draw(PlayState* play) {
KaleidoScope_SetView(pauseCtx, 0.0f, 0.0f, 64.0f); KaleidoScope_SetView(pauseCtx, 0.0f, 0.0f, 64.0f);
if (!((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18)) if (!((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
/* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, /* PAUSECTX_STATE_8, PAUSECTX_STATE_9, PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12,
PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) { PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17 */) {
KaleidoScope_DrawInfoPanel(play); KaleidoScope_DrawInfoPanel(play);
@ -2431,7 +2434,7 @@ void KaleidoScope_GrayOutTextureRGBA32(u32* texture, u16 pixelCount) {
} }
} }
void func_808265BC(PlayState* play) { void func_808265BC_switchPageToSave___(PlayState* play) {
PauseContext* pauseCtx = &play->pauseCtx; PauseContext* pauseCtx = &play->pauseCtx;
pauseCtx->eye.x += D_8082ABAC_pageSwitch_eye_dx_[pauseCtx->mode] * ZREG(46); pauseCtx->eye.x += D_8082ABAC_pageSwitch_eye_dx_[pauseCtx->mode] * ZREG(46);
@ -2446,8 +2449,8 @@ void func_808265BC(PlayState* play) {
gSaveContext.buttonStatus[3] = D_8082AB6C[pauseCtx->pageIndex][3]; gSaveContext.buttonStatus[3] = D_8082AB6C[pauseCtx->pageIndex][3];
gSaveContext.buttonStatus[4] = D_8082AB6C[pauseCtx->pageIndex][4]; gSaveContext.buttonStatus[4] = D_8082AB6C[pauseCtx->pageIndex][4];
pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode]; pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode];
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->state++; pauseCtx->state++; // PAUSECTX_STATE_5 or PAUSECTX_STATE_6
pauseCtx->alpha = 255; pauseCtx->alpha = 255;
Interface_LoadActionLabelB(play, DO_ACTION_SAVE); Interface_LoadActionLabelB(play, DO_ACTION_SAVE);
} else if (pauseCtx->unk_1EA == 64) { } else if (pauseCtx->unk_1EA == 64) {
@ -2577,7 +2580,7 @@ void KaleidoScope_UpdateDungeonMap(PlayState* play) {
} }
void KaleidoScope_Update(PlayState* play) { void KaleidoScope_Update(PlayState* play) {
static s16 D_8082B258 = PAUSECTX_UNK_1E4_0; static s16 D_8082B258 = PAUSE_S6_0;
static s16 D_8082B25C = 10; static s16 D_8082B25C = 10;
static s16 sTimer_D_8082B260 = 0; static s16 sTimer_D_8082B260 = 0;
PauseContext* pauseCtx = &play->pauseCtx; PauseContext* pauseCtx = &play->pauseCtx;
@ -2600,19 +2603,18 @@ void KaleidoScope_Update(PlayState* play) {
(pauseCtx->state <= PAUSECTX_STATE_7)) /* PAUSECTX_STATE_4, PAUSECTX_STATE_5, (pauseCtx->state <= PAUSECTX_STATE_7)) /* PAUSECTX_STATE_4, PAUSECTX_STATE_5,
PAUSECTX_STATE_6, PAUSECTX_STATE_7 */ PAUSECTX_STATE_6, PAUSECTX_STATE_7 */
|| ((pauseCtx->state >= PAUSECTX_STATE_10) && (pauseCtx || ((pauseCtx->state >= PAUSECTX_STATE_10) && (pauseCtx
->state <= PAUSECTX_STATE_18)) ->state <= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
/* PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17, PAUSECTX_STATE_18 */)) { /* PAUSECTX_STATE_10, PAUSECTX_STATE_11, PAUSECTX_STATE_12, PAUSECTX_STATE_13, PAUSECTX_STATE_14, PAUSECTX_STATE_15, PAUSECTX_STATE_16, PAUSECTX_STATE_17, PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE */)) {
if ((!pauseCtx->unk_1E4 /* PAUSECTX_UNK_1E4_0 */ || (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_8)) && if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) &&
(pauseCtx->state == PAUSECTX_STATE_6)) { (pauseCtx->state == PAUSECTX_STATE_6)) {
pauseCtx->stickRelX = input->rel.stick_x; pauseCtx->stickRelX = input->rel.stick_x;
pauseCtx->stickRelY = input->rel.stick_y; pauseCtx->stickRelY = input->rel.stick_y;
KaleidoScope_UpdateCursorSize(play); KaleidoScope_UpdateCursorSize(play);
KaleidoScope_HandlePageToggles(pauseCtx, input); KaleidoScope_HandlePageToggles(pauseCtx, input);
} else if ((pauseCtx->pageIndex == PAUSE_QUEST) && } else if ((pauseCtx->pageIndex == PAUSE_QUEST) &&
((pauseCtx->unk_1E4 < ((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */
PAUSECTX_UNK_1E4_3) /* PAUSECTX_UNK_1E4_0, PAUSECTX_UNK_1E4_1, PAUSECTX_UNK_1E4_2 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYING_SONG_))) {
|| (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_5))) {
KaleidoScope_UpdateCursorSize(play); KaleidoScope_UpdateCursorSize(play);
} }
@ -3009,23 +3011,23 @@ void KaleidoScope_Update(PlayState* play) {
pauseCtx->state = PAUSECTX_STATE_5; pauseCtx->state = PAUSECTX_STATE_5;
} }
func_808265BC(play); func_808265BC_switchPageToSave___(play);
break; break;
case PAUSECTX_STATE_5: case PAUSECTX_STATE_5:
pauseCtx->alpha += (u16)(255 / (WREG(6) + WREG(4))); pauseCtx->alpha += (u16)(255 / (WREG(6) + WREG(4)));
func_808265BC(play); func_808265BC_switchPageToSave___(play);
if (pauseCtx->state == PAUSECTX_STATE_6) { if (pauseCtx->state == PAUSECTX_STATE_6) {
KaleidoScope_UpdateNamePanel(play); KaleidoScope_UpdateNamePanel(play);
} }
break; break;
case PAUSECTX_STATE_6: case PAUSECTX_STATE_6:
switch (pauseCtx->unk_1E4) { switch (pauseCtx->unk_1E4_ps6_) {
case PAUSECTX_UNK_1E4_0: case PAUSE_S6_0:
if (CHECK_BTN_ALL(input->press.button, BTN_START)) { if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
Interface_SetDoAction(play, DO_ACTION_NONE); Interface_SetDoAction(play, DO_ACTION_NONE);
pauseCtx->state = PAUSECTX_STATE_18; pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
WREG(2) = -6240; WREG(2) = -6240;
func_800F64E0(0); func_800F64E0(0);
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) { } else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
@ -3043,39 +3045,39 @@ void KaleidoScope_Update(PlayState* play) {
} }
break; break;
case PAUSECTX_UNK_1E4_1: case PAUSE_S6_1:
func_808237B4(play, play->state.input); func_808237B4(play, play->state.input);
break; break;
case PAUSECTX_UNK_1E4_2: case PAUSE_S6_2:
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff(); pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
if (pauseCtx->ocarinaStaff->state == 0) { if (pauseCtx->ocarinaStaff->state == 0) {
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_4; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_4;
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
} }
break; break;
case PAUSECTX_UNK_1E4_3: case PAUSE_S6_3:
KaleidoScope_UpdateItemEquip(play); KaleidoScope_UpdateItemEquip(play);
break; break;
case PAUSECTX_UNK_1E4_4: case PAUSE_S6_4:
break; break;
case PAUSECTX_UNK_1E4_5: case PAUSE_S6_5_PLAYING_SONG_:
pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff(); pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
if (CHECK_BTN_ALL(input->press.button, BTN_START)) { if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
Interface_SetDoAction(play, DO_ACTION_NONE); Interface_SetDoAction(play, DO_ACTION_NONE);
pauseCtx->state = PAUSECTX_STATE_18; pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
WREG(2) = -6240; WREG(2) = -6240;
func_800F64E0(0); func_800F64E0(0);
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
break; break;
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) { } else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->mode = 0; pauseCtx->mode = 0;
pauseCtx->promptChoice = 0; pauseCtx->promptChoice = 0;
Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
@ -3090,42 +3092,42 @@ void KaleidoScope_Update(PlayState* play) {
} else if (pauseCtx->ocarinaStaff->state == pauseCtx->ocarinaSongIdx) { } else if (pauseCtx->ocarinaStaff->state == pauseCtx->ocarinaSongIdx) {
Audio_PlaySfxGeneral(NA_SE_SY_TRE_BOX_APPEAR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_TRE_BOX_APPEAR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
D_8082B258 = PAUSECTX_UNK_1E4_0; D_8082B258 = PAUSE_S6_0;
D_8082B25C = 30; D_8082B25C = 30;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_6; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
} else if (pauseCtx->ocarinaStaff->state == 0xFF) { } else if (pauseCtx->ocarinaStaff->state == 0xFF) {
Audio_PlaySfxGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
D_8082B258 = PAUSECTX_UNK_1E4_4; D_8082B258 = PAUSE_S6_4;
D_8082B25C = 20; D_8082B25C = 20;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_6; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
} }
break; break;
case PAUSECTX_UNK_1E4_6: case PAUSE_S6_6:
D_8082B25C--; D_8082B25C--;
if (D_8082B25C == 0) { if (D_8082B25C == 0) {
pauseCtx->unk_1E4 = D_8082B258; pauseCtx->unk_1E4_ps6_ = D_8082B258;
if (pauseCtx->unk_1E4 == PAUSECTX_UNK_1E4_0) { if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) {
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
} }
} }
break; break;
case PAUSECTX_UNK_1E4_7: case PAUSE_S6_7:
break; break;
case PAUSECTX_UNK_1E4_8: case PAUSE_S6_8:
if (CHECK_BTN_ALL(input->press.button, BTN_START)) { if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
Interface_SetDoAction(play, DO_ACTION_NONE); Interface_SetDoAction(play, DO_ACTION_NONE);
pauseCtx->state = PAUSECTX_STATE_18; pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
WREG(2) = -6240; WREG(2) = -6240;
func_800F64E0(0); func_800F64E0(0);
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) { } else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF); AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->mode = 0; pauseCtx->mode = 0;
pauseCtx->promptChoice = 0; pauseCtx->promptChoice = 0;
Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, Audio_PlaySfxGeneral(NA_SE_SY_DECIDE, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
@ -3140,11 +3142,11 @@ void KaleidoScope_Update(PlayState* play) {
} }
break; break;
case PAUSECTX_UNK_1E4_9: case PAUSE_S6_9:
break; break;
default: default:
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
break; break;
} }
break; break;
@ -3242,11 +3244,11 @@ void KaleidoScope_Update(PlayState* play) {
} }
} else { } else {
pauseCtx->debugState = 0; pauseCtx->debugState = 0;
pauseCtx->state = PAUSECTX_STATE_19; pauseCtx->state = PAUSECTX_STATE_19_UNPAUSE;
pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 =
pauseCtx->rotPauseMap_unk_1FC = pauseCtx->rotPauseQuest_unk_200 = 160.0f; pauseCtx->rotPauseMap_unk_1FC = pauseCtx->rotPauseQuest_unk_200 = 160.0f;
pauseCtx->namedItem = PAUSE_ITEM_NONE; pauseCtx->namedItem = PAUSE_ITEM_NONE;
pauseCtx->unk_1E4 = PAUSECTX_UNK_1E4_0; pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
pauseCtx->rotXorZ_unk_204 = -434.0f; pauseCtx->rotXorZ_unk_204 = -434.0f;
} }
break; break;
@ -3549,7 +3551,7 @@ void KaleidoScope_Update(PlayState* play) {
} }
break; break;
case PAUSECTX_STATE_18: case PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE:
if (pauseCtx->rotXpauseItem_unk_1F4 != 160.0f) { if (pauseCtx->rotXpauseItem_unk_1F4 != 160.0f) {
pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotPauseMap_unk_1FC = pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotPauseMap_unk_1FC =
pauseCtx->rotPauseQuest_unk_200 += 160.0f / WREG(6); pauseCtx->rotPauseQuest_unk_200 += 160.0f / WREG(6);
@ -3564,7 +3566,7 @@ void KaleidoScope_Update(PlayState* play) {
} }
} else { } else {
pauseCtx->debugState = 0; pauseCtx->debugState = 0;
pauseCtx->state = PAUSECTX_STATE_19; pauseCtx->state = PAUSECTX_STATE_19_UNPAUSE;
pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotPauseMap_unk_1FC = pauseCtx->rotXpauseItem_unk_1F4 = pauseCtx->rotPauseEquip_unk_1F8 = pauseCtx->rotPauseMap_unk_1FC =
pauseCtx->rotPauseQuest_unk_200 = 160.0f; pauseCtx->rotPauseQuest_unk_200 = 160.0f;
pauseCtx->namedItem = PAUSE_ITEM_NONE; pauseCtx->namedItem = PAUSE_ITEM_NONE;
@ -3572,7 +3574,7 @@ void KaleidoScope_Update(PlayState* play) {
} }
break; break;
case PAUSECTX_STATE_19: case PAUSECTX_STATE_19_UNPAUSE:
pauseCtx->state = PAUSECTX_STATE_0; pauseCtx->state = PAUSECTX_STATE_0;
R_UPDATE_RATE = 3; R_UPDATE_RATE = 3;
R_PAUSE_MENU_MODE = 0; R_PAUSE_MENU_MODE = 0;