mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-04 06:54:33 +00:00
wip 3, comments in KaleidoScope_DrawQuestStatus
and starting to figure out the state 6 substates (unk_1E4)
This commit is contained in:
parent
118e3f84d5
commit
8ddd1c1051
11 changed files with 206 additions and 155 deletions
|
@ -741,7 +741,7 @@ typedef enum {
|
||||||
/* 4 */ PAUSECTX_STATE_4,
|
/* 4 */ PAUSECTX_STATE_4,
|
||||||
/* 5 */ PAUSECTX_STATE_5,
|
/* 5 */ PAUSECTX_STATE_5,
|
||||||
/* 6 */ PAUSECTX_STATE_6, // listen to inputs
|
/* 6 */ PAUSECTX_STATE_6, // listen to inputs
|
||||||
/* 7 */ PAUSECTX_STATE_7, // save
|
/* 7 */ PAUSECTX_STATE_7_SAVE_PROMPT_, // save
|
||||||
/* 8 */ PAUSECTX_STATE_8, // saveGameOver
|
/* 8 */ PAUSECTX_STATE_8, // saveGameOver
|
||||||
/* 9 */ PAUSECTX_STATE_9, // saveGameOver
|
/* 9 */ PAUSECTX_STATE_9, // saveGameOver
|
||||||
/* 10 */ PAUSECTX_STATE_10, // game over saveGameOver
|
/* 10 */ PAUSECTX_STATE_10, // game over saveGameOver
|
||||||
|
@ -757,16 +757,16 @@ typedef enum {
|
||||||
} PauseCtxState;
|
} PauseCtxState;
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
/* 0 */ PAUSE_S6_0,
|
/* 0 */ PAUSE_S6_0_IDLE_,
|
||||||
/* 1 */ PAUSE_S6_1,
|
/* 1 */ PAUSE_S6_1,
|
||||||
/* 2 */ PAUSE_S6_2,
|
/* 2 */ PAUSE_S6_2_PLAYBACK_SONG_,
|
||||||
/* 3 */ PAUSE_S6_3,
|
/* 3 */ PAUSE_S6_3,
|
||||||
/* 4 */ PAUSE_S6_4,
|
/* 4 */ PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||||
/* 5 */ PAUSE_S6_5_PLAYING_SONG_,
|
/* 5 */ PAUSE_S6_5_PLAYER_PLAYING_SONG_,
|
||||||
/* 6 */ PAUSE_S6_6,
|
/* 6 */ PAUSE_S6_6,
|
||||||
/* 7 */ PAUSE_S6_7,
|
/* 7 */ PAUSE_S6_7,
|
||||||
/* 8 */ PAUSE_S6_8,
|
/* 8 */ PAUSE_S6_8_PLAYBACK_SONG_READY_,
|
||||||
/* 9 */ PAUSE_S6_9
|
/* 9 */ PAUSE_S6_9_PLAYBACK_SONG_START_
|
||||||
} PauseCtxUnk1E4;
|
} PauseCtxUnk1E4;
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
@ -807,7 +807,7 @@ typedef struct {
|
||||||
/* 0x01D4 */ u16 state;
|
/* 0x01D4 */ u16 state;
|
||||||
/* 0x01D6 */ u16 debugState;
|
/* 0x01D6 */ u16 debugState;
|
||||||
/* 0x01D8 */ Vec3f eye;
|
/* 0x01D8 */ Vec3f eye;
|
||||||
/* 0x01E4 */ u16 unk_1E4;
|
/* 0x01E4 */ u16 unk_1E4_ps6_;
|
||||||
/* 0x01E6 */ u16 mode;
|
/* 0x01E6 */ u16 mode;
|
||||||
/* 0x01E8 */ u16 pageIndex; // "kscp_pos"
|
/* 0x01E8 */ u16 pageIndex; // "kscp_pos"
|
||||||
/* 0x01EA */ u16 unk_1EA;
|
/* 0x01EA */ u16 unk_1EA;
|
||||||
|
|
|
@ -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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
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,7 +70,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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
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)) {
|
||||||
|
|
|
@ -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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
pauseCtx->mode = 0;
|
pauseCtx->mode = 0;
|
||||||
pauseCtx->pageIndex = PAUSE_ITEM;
|
pauseCtx->pageIndex = PAUSE_ITEM;
|
||||||
|
|
||||||
|
|
|
@ -2764,7 +2764,7 @@ void Interface_DrawItemButtons(PlayState* play) {
|
||||||
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(3) << 1, R_ITEM_BTN_DD(3) << 1);
|
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,
|
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_SAVE_PROMPT_ */
|
||||||
|| (pauseCtx->state >= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */) {
|
|| (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
|
||||||
|
|
|
@ -1448,7 +1448,6 @@ void Player_PostLimbDrawGameplay(PlayState* play, s32 limbIndex, Gfx** dList, Ve
|
||||||
Matrix_MultVec3f(&sZeroVec, sCurBodyPartPos);
|
Matrix_MultVec3f(&sZeroVec, sCurBodyPartPos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (limbIndex == PLAYER_LIMB_L_HAND) {
|
if (limbIndex == PLAYER_LIMB_L_HAND) {
|
||||||
MtxF sp14C;
|
MtxF sp14C;
|
||||||
Actor* hookedActor;
|
Actor* hookedActor;
|
||||||
|
|
|
@ -29,7 +29,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
static s16 sHpPrimState = 0;
|
static s16 sHpPrimState = 0;
|
||||||
|
|
||||||
static s16 sPlayedSongBtnsNum = 0;
|
static s16 sPlayedSongBtnsNum = 0;
|
||||||
static s16 D_8082A120 = 0;
|
static s16 D_8082A120_playbackSongStartTimer_ = 0;
|
||||||
static u8 sPlayedSongBtns[8] = { 0 };
|
static u8 sPlayedSongBtns[8] = { 0 };
|
||||||
static s32 sUnused1 = 0;
|
static s32 sUnused1 = 0;
|
||||||
static void* sOcarinaBtnTextures[] = {
|
static void* sOcarinaBtnTextures[] = {
|
||||||
|
@ -113,24 +113,30 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
OPEN_DISPS(gfxCtx, "../z_kaleido_collect.c", 248);
|
OPEN_DISPS(gfxCtx, "../z_kaleido_collect.c", 248);
|
||||||
|
|
||||||
if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYING_SONG_) ||
|
if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ ||
|
||||||
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) &&
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_) ||
|
||||||
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) &&
|
||||||
(pauseCtx->pageIndex == PAUSE_QUEST)) {
|
(pauseCtx->pageIndex == PAUSE_QUEST)) {
|
||||||
|
|
||||||
pauseCtx->cursorColorSet = 0;
|
pauseCtx->cursorColorSet = 0;
|
||||||
|
|
||||||
if (pauseCtx->cursorSpecialPos == 0) {
|
if (pauseCtx->cursorSpecialPos == 0) {
|
||||||
pauseCtx->nameColorSet = 0;
|
pauseCtx->nameColorSet = 0;
|
||||||
|
|
||||||
if ((pauseCtx->state != PAUSECTX_STATE_6) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
|
if ((pauseCtx->state != PAUSECTX_STATE_6) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
|
||||||
|
// No cursor movement
|
||||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||||
} else {
|
} else {
|
||||||
|
// Move cursor based on stick input
|
||||||
|
|
||||||
i = pauseCtx->cursorPoint[PAUSE_QUEST];
|
i = pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
|
|
||||||
if (pauseCtx->stickRelX < -30) {
|
if (pauseCtx->stickRelX < -30) {
|
||||||
|
// Move cursor left
|
||||||
nextCursorPoint = sCursorPointLinks[i][2];
|
nextCursorPoint = sCursorPointLinks[i][2];
|
||||||
if (nextCursorPoint == CURSOR_TO_LEFT) {
|
if (nextCursorPoint == CURSOR_TO_LEFT) {
|
||||||
KaleidoScope_MoveCursorToSpecialPos(play, PAUSE_CURSOR_PAGE_LEFT);
|
KaleidoScope_MoveCursorToSpecialPos(play, PAUSE_CURSOR_PAGE_LEFT);
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
} else {
|
} else {
|
||||||
while (nextCursorPoint >= 0) {
|
while (nextCursorPoint >= 0) {
|
||||||
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
||||||
|
@ -140,10 +146,11 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (pauseCtx->stickRelX > 30) {
|
} else if (pauseCtx->stickRelX > 30) {
|
||||||
|
// Move cursor right
|
||||||
nextCursorPoint = sCursorPointLinks[i][3];
|
nextCursorPoint = sCursorPointLinks[i][3];
|
||||||
if (nextCursorPoint == CURSOR_TO_RIGHT) {
|
if (nextCursorPoint == CURSOR_TO_RIGHT) {
|
||||||
KaleidoScope_MoveCursorToSpecialPos(play, PAUSE_CURSOR_PAGE_RIGHT);
|
KaleidoScope_MoveCursorToSpecialPos(play, PAUSE_CURSOR_PAGE_RIGHT);
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
} else {
|
} else {
|
||||||
while (nextCursorPoint >= 0) {
|
while (nextCursorPoint >= 0) {
|
||||||
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
||||||
|
@ -155,6 +162,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pauseCtx->stickRelY < -30) {
|
if (pauseCtx->stickRelY < -30) {
|
||||||
|
// Move cursor down
|
||||||
nextCursorPoint = sCursorPointLinks[i][1];
|
nextCursorPoint = sCursorPointLinks[i][1];
|
||||||
while (nextCursorPoint >= 0) {
|
while (nextCursorPoint >= 0) {
|
||||||
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
||||||
|
@ -163,6 +171,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
nextCursorPoint = sCursorPointLinks[nextCursorPoint][1];
|
nextCursorPoint = sCursorPointLinks[nextCursorPoint][1];
|
||||||
}
|
}
|
||||||
} else if (pauseCtx->stickRelY > 30) {
|
} else if (pauseCtx->stickRelY > 30) {
|
||||||
|
// Move cursor up
|
||||||
nextCursorPoint = sCursorPointLinks[i][0];
|
nextCursorPoint = sCursorPointLinks[i][0];
|
||||||
while (nextCursorPoint >= 0) {
|
while (nextCursorPoint >= 0) {
|
||||||
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
if ((s16)KaleidoScope_UpdateQuestStatusPoint(pauseCtx, nextCursorPoint)) {
|
||||||
|
@ -174,23 +183,27 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
// if the cursor point changed
|
// if the cursor point changed
|
||||||
if (pauseCtx->cursorPoint[PAUSE_QUEST] != i) {
|
if (pauseCtx->cursorPoint[PAUSE_QUEST] != i) {
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update cursor item and slot
|
||||||
|
|
||||||
if (pauseCtx->cursorPoint[PAUSE_QUEST] != QUEST_HEART_PIECE) {
|
if (pauseCtx->cursorPoint[PAUSE_QUEST] != QUEST_HEART_PIECE) {
|
||||||
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
||||||
if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_SONG_MINUET) {
|
if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_SONG_MINUET) {
|
||||||
cursorItem = ITEM_MEDALLION_FOREST + pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursorItem =
|
||||||
|
ITEM_MEDALLION_FOREST - QUEST_MEDALLION_FOREST + pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
osSyncPrintf("000 ccc=%d\n", cursorItem);
|
osSyncPrintf("000 ccc=%d\n", cursorItem);
|
||||||
} else if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_KOKIRI_EMERALD) {
|
} else if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_KOKIRI_EMERALD) {
|
||||||
cursorItem = ITEM_SCALE_GOLDEN + pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursorItem = ITEM_SONG_MINUET - QUEST_SONG_MINUET + pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
osSyncPrintf("111 ccc=%d\n", cursorItem);
|
osSyncPrintf("111 ccc=%d\n", cursorItem);
|
||||||
} else {
|
} else {
|
||||||
cursorItem = ITEM_SONG_MINUET + pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursorItem =
|
||||||
|
ITEM_KOKIRI_EMERALD - QUEST_KOKIRI_EMERALD + pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
osSyncPrintf("222 ccc=%d (%d, %d, %d)\n", cursorItem, pauseCtx->cursorPoint[PAUSE_QUEST],
|
osSyncPrintf("222 ccc=%d (%d, %d, %d)\n", cursorItem, pauseCtx->cursorPoint[PAUSE_QUEST],
|
||||||
0x12, 0x6C);
|
QUEST_KOKIRI_EMERALD, ITEM_KOKIRI_EMERALD);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
cursorItem = PAUSE_ITEM_NONE;
|
cursorItem = PAUSE_ITEM_NONE;
|
||||||
|
@ -212,46 +225,58 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
pauseCtx->cursorSlot[pauseCtx->pageIndex] = cursor;
|
pauseCtx->cursorSlot[pauseCtx->pageIndex] = cursor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Use the appropriate QUEST_MEDALLION_FOREST-QUEST_HEART_PIECE quad (see `KaleidoScope_InitVertices`)
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
||||||
|
|
||||||
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
(pauseCtx->cursorSpecialPos == 0)) {
|
(pauseCtx->cursorSpecialPos == 0)) {
|
||||||
if ((cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
|
if ((cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
|
||||||
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
||||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||||
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[cursor - QUEST_SONG_MINUET];
|
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[cursor - QUEST_SONG_MINUET];
|
||||||
D_8082A120 = 10;
|
|
||||||
|
D_8082A120_playbackSongStartTimer_ = 10;
|
||||||
|
|
||||||
for (i = 0; i < 8; i++) {
|
for (i = 0; i < 8; i++) {
|
||||||
sPlayedSongBtns[i] = 0xFF;
|
sPlayedSongBtns[i] = 0xFF;
|
||||||
sPlayedSongBtnsAlpha[i] = 0;
|
sPlayedSongBtnsAlpha[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sPlayedSongBtnsNum = 0;
|
sPlayedSongBtnsNum = 0;
|
||||||
|
|
||||||
|
// Have the player play a song, immediately cancelled below
|
||||||
|
// Also clear the playback staff
|
||||||
|
// This has no purpose (?)
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||||
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||||
pauseCtx->ocarinaStaff->pos = 0;
|
pauseCtx->ocarinaStaff->pos = 0;
|
||||||
pauseCtx->ocarinaStaff->state = 0xFF;
|
pauseCtx->ocarinaStaff->state = 0xFF;
|
||||||
|
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = -62;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = -62;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_DOWN) = -56;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_DOWN) = -56;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = -49;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = -49;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = -46;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = -46;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_UP) = -41;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_UP) = -41;
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_8;
|
|
||||||
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_8_PLAYBACK_SONG_READY_;
|
||||||
|
|
||||||
|
// Stop having the player play a song as done above
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYING_SONG_) {
|
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_) {
|
||||||
if ((pauseCtx->stickRelX != 0) || (pauseCtx->stickRelY != 0)) {
|
if ((pauseCtx->stickRelX != 0) || (pauseCtx->stickRelY != 0)) {
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
|
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||||
}
|
}
|
||||||
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8) {
|
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_) {
|
||||||
if (CHECK_BTN_ALL(input->press.button, BTN_A) && (cursor >= QUEST_SONG_MINUET) &&
|
if (CHECK_BTN_ALL(input->press.button, BTN_A) && (cursor >= QUEST_SONG_MINUET) &&
|
||||||
(cursor <= QUEST_SONG_STORMS)) {
|
(cursor < QUEST_KOKIRI_EMERALD)) {
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_9;
|
|
||||||
D_8082A120 = 10;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_9_PLAYBACK_SONG_START_;
|
||||||
|
|
||||||
|
D_8082A120_playbackSongStartTimer_ = 10;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) {
|
} else if (pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) {
|
||||||
|
@ -259,12 +284,14 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_STONE_OF_AGONY;
|
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_STONE_OF_AGONY;
|
||||||
pauseCtx->nameDisplayTimer = 0;
|
pauseCtx->nameDisplayTimer = 0;
|
||||||
pauseCtx->cursorSpecialPos = 0;
|
pauseCtx->cursorSpecialPos = 0;
|
||||||
|
|
||||||
cursor = pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursor = pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
||||||
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||||
|
|
||||||
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
||||||
cursorItem = ITEM_SONG_MINUET + pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursorItem = ITEM_STONE_OF_AGONY - QUEST_STONE_OF_AGONY + pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
} else {
|
} else {
|
||||||
cursorItem = PAUSE_ITEM_NONE;
|
cursorItem = PAUSE_ITEM_NONE;
|
||||||
}
|
}
|
||||||
|
@ -277,11 +304,14 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_MEDALLION_FOREST;
|
pauseCtx->cursorPoint[PAUSE_QUEST] = QUEST_MEDALLION_FOREST;
|
||||||
pauseCtx->nameDisplayTimer = 0;
|
pauseCtx->nameDisplayTimer = 0;
|
||||||
pauseCtx->cursorSpecialPos = 0;
|
pauseCtx->cursorSpecialPos = 0;
|
||||||
|
|
||||||
cursor = pauseCtx->cursorPoint[PAUSE_QUEST];
|
cursor = pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
||||||
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||||
|
|
||||||
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
||||||
|
// Only the first if may be reached, as QUEST_MEDALLION_FOREST is set above
|
||||||
if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_SONG_MINUET) {
|
if (pauseCtx->cursorPoint[PAUSE_QUEST] < QUEST_SONG_MINUET) {
|
||||||
cursorItem =
|
cursorItem =
|
||||||
ITEM_MEDALLION_FOREST - QUEST_MEDALLION_FOREST + pauseCtx->cursorPoint[PAUSE_QUEST];
|
ITEM_MEDALLION_FOREST - QUEST_MEDALLION_FOREST + pauseCtx->cursorPoint[PAUSE_QUEST];
|
||||||
|
@ -301,30 +331,33 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_9_PLAYBACK_SONG_START_) {
|
||||||
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_9) {
|
|
||||||
pauseCtx->cursorColorSet = 8;
|
pauseCtx->cursorColorSet = 8;
|
||||||
|
|
||||||
if (--D_8082A120 == 0) {
|
if (--D_8082A120_playbackSongStartTimer_ == 0) {
|
||||||
for (i = 0; i < 8; i++) {
|
for (i = 0; i < 8; i++) {
|
||||||
sPlayedSongBtns[i] = 0xFF;
|
sPlayedSongBtns[i] = 0xFF;
|
||||||
sPlayedSongBtnsAlpha[i] = 0;
|
sPlayedSongBtnsAlpha[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sPlayedSongBtnsNum = 0;
|
sPlayedSongBtnsNum = 0;
|
||||||
|
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = -62;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_A) = -62;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_DOWN) = -56;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_DOWN) = -56;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = -49;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_RIGHT) = -49;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = -46;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_LEFT) = -46;
|
||||||
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_UP) = -41;
|
R_PAUSE_SONG_NOTE_Y(OCARINA_BTN_C_UP) = -41;
|
||||||
|
|
||||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||||
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[cursor - QUEST_SONG_MINUET];
|
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[cursor - QUEST_SONG_MINUET];
|
||||||
AudioOcarina_SetPlaybackSong(pauseCtx->ocarinaSongIdx + 1, 1);
|
AudioOcarina_SetPlaybackSong(pauseCtx->ocarinaSongIdx + 1, 1);
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_2;
|
|
||||||
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_2_PLAYBACK_SONG_;
|
||||||
|
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||||
pauseCtx->ocarinaStaff->pos = 0;
|
pauseCtx->ocarinaStaff->pos = 0;
|
||||||
|
|
||||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
||||||
}
|
}
|
||||||
|
@ -332,7 +365,6 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, cursor * 4, pauseCtx->questVtx);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Draw medallions
|
// Draw medallions
|
||||||
// QUEST_MEDALLION_FOREST, QUEST_MEDALLION_FIRE, QUEST_MEDALLION_WATER, QUEST_MEDALLION_SPIRIT,
|
// QUEST_MEDALLION_FOREST, QUEST_MEDALLION_FIRE, QUEST_MEDALLION_WATER, QUEST_MEDALLION_SPIRIT,
|
||||||
|
@ -521,20 +553,22 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
bufI += 4;
|
bufI += 4;
|
||||||
if ((pauseCtx->cursorSpecialPos == 0) && (cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
|
if ((pauseCtx->cursorSpecialPos == 0) && (cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
|
||||||
if ((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */ ||
|
if ((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1, PAUSE_S6_2_PLAYBACK_SONG_ */ ||
|
||||||
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYING_SONG_) || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_) ||
|
||||||
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) {
|
||||||
if (pauseCtx->cursorItem[pauseCtx->pageIndex] != PAUSE_ITEM_NONE) {
|
if (pauseCtx->cursorItem[pauseCtx->pageIndex] != PAUSE_ITEM_NONE) {
|
||||||
pauseCtx->cursorColorSet = 8;
|
pauseCtx->cursorColorSet = 8;
|
||||||
// PAUSE_S6_2, PAUSE_S6_3, PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_,
|
// PAUSE_S6_2_PLAYBACK_SONG_, PAUSE_S6_3, PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||||
// PAUSE_S6_6
|
// PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6
|
||||||
if ((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_2) && (pauseCtx->unk_1E4_ps6_ < PAUSE_S6_7)) {
|
if ((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_2_PLAYBACK_SONG_) &&
|
||||||
|
(pauseCtx->unk_1E4_ps6_ < PAUSE_S6_7)) {
|
||||||
pauseCtx->cursorColorSet = 0;
|
pauseCtx->cursorColorSet = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2) {
|
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2_PLAYBACK_SONG_) {
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||||
|
|
||||||
if (pauseCtx->ocarinaStaff->pos != 0) {
|
if (pauseCtx->ocarinaStaff->pos != 0) {
|
||||||
|
@ -579,9 +613,10 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4) &&
|
} else if (((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) &&
|
||||||
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_6)) /* PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_, PAUSE_S6_6 */
|
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_6)) /* PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
|
PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6 */
|
||||||
|
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) {
|
||||||
stepGreen = pauseCtx->ocarinaSongIdx;
|
stepGreen = pauseCtx->ocarinaSongIdx;
|
||||||
stepRed = gOcarinaSongButtons[stepGreen].numButtons;
|
stepRed = gOcarinaSongButtons[stepGreen].numButtons;
|
||||||
|
|
||||||
|
@ -594,7 +629,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
gDPPipeSync(POLY_OPA_DISP++);
|
gDPPipeSync(POLY_OPA_DISP++);
|
||||||
|
|
||||||
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8) {
|
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_) {
|
||||||
if (gOcarinaSongButtons[stepGreen].buttonsIndex[i] == OCARINA_BTN_A) {
|
if (gOcarinaSongButtons[stepGreen].buttonsIndex[i] == OCARINA_BTN_A) {
|
||||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 80, 255, 150, 200);
|
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 80, 255, 150, 200);
|
||||||
} else {
|
} else {
|
||||||
|
@ -616,7 +651,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pauseCtx->unk_1E4_ps6_ != PAUSE_S6_8) {
|
if (pauseCtx->unk_1E4_ps6_ != PAUSE_S6_8_PLAYBACK_SONG_READY_) {
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||||
|
|
||||||
if (pauseCtx->ocarinaStaff->pos != 0) {
|
if (pauseCtx->ocarinaStaff->pos != 0) {
|
||||||
|
@ -668,19 +703,20 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_4) {
|
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) {
|
||||||
for (i = 0; i < 8; i++) {
|
for (i = 0; i < 8; i++) {
|
||||||
sPlayedSongBtns[i] = 0xFF;
|
sPlayedSongBtns[i] = 0xFF;
|
||||||
sPlayedSongBtnsAlpha[i] = 0;
|
sPlayedSongBtnsAlpha[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sPlayedSongBtnsNum = 0;
|
sPlayedSongBtnsNum = 0;
|
||||||
|
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||||
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||||
pauseCtx->ocarinaStaff->pos = 0;
|
pauseCtx->ocarinaStaff->pos = 0;
|
||||||
pauseCtx->ocarinaStaff->state = 0xFE;
|
pauseCtx->ocarinaStaff->state = 0xFE;
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_5_PLAYING_SONG_;
|
|
||||||
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_5_PLAYER_PLAYING_SONG_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -150,7 +150,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) &&
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
(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_ps6_ == PAUSE_S6_0) &&
|
(pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
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) ||
|
||||||
|
@ -515,7 +515,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
|
||||||
|
|
||||||
sEquipTimer--;
|
sEquipTimer--;
|
||||||
if (sEquipTimer == 0) {
|
if (sEquipTimer == 0) {
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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_ps6_ == PAUSE_S6_0) &&
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
(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_ps6_ == PAUSE_S6_0)) {
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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))) &&
|
||||||
|
@ -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_ps6_ == PAUSE_S6_0) && (pauseCtx->pageIndex == PAUSE_ITEM) &&
|
if ((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) && (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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
sEquipMoveTimer = 10;
|
sEquipMoveTimer = 10;
|
||||||
WREG(90) = 320;
|
WREG(90) = 320;
|
||||||
WREG(87) = WREG(91);
|
WREG(87) = WREG(91);
|
||||||
|
|
|
@ -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_ps6_ == PAUSE_S6_0) &&
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
(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_ps6_ == PAUSE_S6_0) &&
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||||
(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];
|
||||||
|
@ -562,9 +562,11 @@ void KaleidoScope_DrawWorldMap(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
for (j = i = 0; i < 8; i++, j += 4) {
|
for (j = i = 0; i < 8; i++, j += 4) {
|
||||||
if (!(gSaveContext.worldMapAreaData & gBitFlags[cloudFlagNums[k + i]])) {
|
if (!(gSaveContext.worldMapAreaData & gBitFlags[cloudFlagNums[k + i]])) {
|
||||||
gDPLoadTextureBlock_4b(POLY_OPA_DISP++, cloudTexs[k + i], G_IM_FMT_I, D_8082AAEC_width_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[k + i],
|
gDPLoadTextureBlock_4b(POLY_OPA_DISP++, cloudTexs[k + i], G_IM_FMT_I,
|
||||||
D_8082AB2C_height_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[k + i], 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR,
|
D_8082AAEC_width_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[k + i],
|
||||||
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
D_8082AB2C_height_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[k + i], 0,
|
||||||
|
G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK,
|
||||||
|
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, j, j + 2, j + 3, j + 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, j, j + 2, j + 3, j + 1, 0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ void KaleidoScope_UpdatePrompt(PlayState* play) {
|
||||||
s8 relStickX = input->rel.stick_x;
|
s8 relStickX = input->rel.stick_x;
|
||||||
s16 step;
|
s16 step;
|
||||||
|
|
||||||
if (((pauseCtx->state == PAUSECTX_STATE_7) && (pauseCtx->unk_1EC == PAUSECTX_UNK_1EC_1)) ||
|
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)) {
|
(pauseCtx->state == PAUSECTX_STATE_14) || (pauseCtx->state == PAUSECTX_STATE_16)) {
|
||||||
if ((pauseCtx->promptChoice == 0) && (relStickX >= 30)) {
|
if ((pauseCtx->promptChoice == 0) && (relStickX >= 30)) {
|
||||||
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
Audio_PlaySfxGeneral(NA_SE_SY_CURSOR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||||
|
|
|
@ -458,9 +458,11 @@ void KaleidoScope_DrawCursor(PlayState* play, u16 pageIndex) {
|
||||||
|
|
||||||
temp = pauseCtx->unk_1E4_ps6_;
|
temp = pauseCtx->unk_1E4_ps6_;
|
||||||
|
|
||||||
if ((((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) || (temp == PAUSE_S6_8)) && (pauseCtx->state == PAUSECTX_STATE_6)) ||
|
if ((((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) || (temp == PAUSE_S6_8_PLAYBACK_SONG_READY_)) &&
|
||||||
((pauseCtx->pageIndex == PAUSE_QUEST) && ((temp < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */ ||
|
(pauseCtx->state == PAUSECTX_STATE_6)) ||
|
||||||
(temp == PAUSE_S6_5_PLAYING_SONG_) || (temp == PAUSE_S6_8)))) {
|
((pauseCtx->pageIndex == PAUSE_QUEST) &&
|
||||||
|
((temp < PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1, PAUSE_S6_2_PLAYBACK_SONG_ */ ||
|
||||||
|
(temp == PAUSE_S6_5_PLAYER_PLAYING_SONG_) || (temp == PAUSE_S6_8_PLAYBACK_SONG_READY_)))) {
|
||||||
|
|
||||||
if (pauseCtx->pageIndex == pageIndex) {
|
if (pauseCtx->pageIndex == pageIndex) {
|
||||||
s16 i;
|
s16 i;
|
||||||
|
@ -559,10 +561,10 @@ 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_SAVE_PROMPT_ */
|
||||||
|| (pauseCtx->state >
|
|| (pauseCtx->state >
|
||||||
PAUSECTX_STATE_17) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */) {
|
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_SAVE_PROMPT_) {
|
||||||
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]) /
|
||||||
sCursorColorBlinkTimer_D_8082AD3C;
|
sCursorColorBlinkTimer_D_8082AD3C;
|
||||||
|
@ -837,7 +839,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_SAVE_PROMPT_) ||
|
||||||
((pauseCtx->state >= PAUSECTX_STATE_8) && (pauseCtx->state < PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
((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 */
|
||||||
|
@ -889,7 +891,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->saveVtx[60], 32, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->saveVtx[60], 32, 0);
|
||||||
|
|
||||||
if (((pauseCtx->state == PAUSECTX_STATE_7) && (pauseCtx->unk_1EC < PAUSECTX_UNK_1EC_4)
|
if (((pauseCtx->state == PAUSECTX_STATE_7_SAVE_PROMPT_) && (pauseCtx->unk_1EC < PAUSECTX_UNK_1EC_4)
|
||||||
/* PAUSECTX_UNK_1EC_0, PAUSECTX_UNK_1EC_1, PAUSECTX_UNK_1EC_2, PAUSECTX_UNK_1EC_3 */) ||
|
/* PAUSECTX_UNK_1EC_0, PAUSECTX_UNK_1EC_1, PAUSECTX_UNK_1EC_2, PAUSECTX_UNK_1EC_3 */) ||
|
||||||
(pauseCtx->state == PAUSECTX_STATE_14)) {
|
(pauseCtx->state == PAUSECTX_STATE_14)) {
|
||||||
POLY_OPA_DISP =
|
POLY_OPA_DISP =
|
||||||
|
@ -914,7 +916,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
POLY_OPA_DISP =
|
POLY_OPA_DISP =
|
||||||
KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sPromptChoiceTexs[gSaveContext.language][1], 48, 16, 16);
|
KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sPromptChoiceTexs[gSaveContext.language][1], 48, 16, 16);
|
||||||
} else if ((pauseCtx->state != PAUSECTX_STATE_7) || (pauseCtx->unk_1EC < PAUSECTX_UNK_1EC_4)
|
} else if ((pauseCtx->state != PAUSECTX_STATE_7_SAVE_PROMPT_) || (pauseCtx->unk_1EC < PAUSECTX_UNK_1EC_4)
|
||||||
/* PAUSECTX_UNK_1EC_0, PAUSECTX_UNK_1EC_1, PAUSECTX_UNK_1EC_2, PAUSECTX_UNK_1EC_3 */) {
|
/* PAUSECTX_UNK_1EC_0, PAUSECTX_UNK_1EC_1, PAUSECTX_UNK_1EC_2, PAUSECTX_UNK_1EC_3 */) {
|
||||||
if ((pauseCtx->state != PAUSECTX_STATE_15) &&
|
if ((pauseCtx->state != PAUSECTX_STATE_15) &&
|
||||||
((pauseCtx->state == PAUSECTX_STATE_16) || (pauseCtx->state == PAUSECTX_STATE_17))) {
|
((pauseCtx->state == PAUSECTX_STATE_16) || (pauseCtx->state == PAUSECTX_STATE_17))) {
|
||||||
|
@ -1087,7 +1089,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_ps6_ == PAUSE_S6_0)) {
|
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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;
|
||||||
|
@ -1107,7 +1109,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_ps6_ == PAUSE_S6_0)) {
|
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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] =
|
||||||
|
@ -1148,7 +1150,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_ps6_ == PAUSE_S6_0)) {
|
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1156,7 +1158,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_ps6_ == PAUSE_S6_0)) {
|
if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1183,15 +1185,17 @@ 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_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2) ||
|
(!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2_PLAYBACK_SONG_) ||
|
||||||
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4) &&
|
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) &&
|
||||||
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
|
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) &&
|
PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
|
||||||
|
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) &&
|
||||||
(pauseCtx->cursorSpecialPos == 0)) {
|
(pauseCtx->cursorSpecialPos == 0)) {
|
||||||
if (!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2) ||
|
if (!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2_PLAYBACK_SONG_) ||
|
||||||
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4) &&
|
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) &&
|
||||||
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4, PAUSE_S6_5_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
|
(pauseCtx->unk_1E4_ps6_ <= PAUSE_S6_7)) /* PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
|
PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6, PAUSE_S6_7 */
|
||||||
|
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) {
|
||||||
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] =
|
||||||
|
@ -1251,8 +1255,9 @@ 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_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */
|
} else if ((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1, PAUSE_S6_2_PLAYBACK_SONG_ */
|
||||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) {
|
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_7) ||
|
||||||
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) {
|
||||||
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] =
|
||||||
|
@ -1262,7 +1267,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
||||||
|
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[16], 8, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[16], 8, 0);
|
||||||
|
|
||||||
if (pauseCtx->state == PAUSECTX_STATE_7) {
|
if (pauseCtx->state == PAUSECTX_STATE_7_SAVE_PROMPT_) {
|
||||||
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = WREG(61 + gSaveContext.language);
|
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = WREG(61 + gSaveContext.language);
|
||||||
|
|
||||||
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
|
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
|
||||||
|
@ -1287,7 +1292,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_ps6_ == PAUSE_S6_0)) {
|
if ((pauseCtx->state == PAUSECTX_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||||
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] =
|
||||||
|
@ -1442,7 +1447,8 @@ 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_ps6_ == PAUSE_S6_8)) ||
|
(pauseCtx->cursorSlot[PAUSE_QUEST] <= 0x11) &&
|
||||||
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) ||
|
||||||
(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) {
|
||||||
|
@ -1487,7 +1493,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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1902,7 +1908,7 @@ void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
|
|
||||||
if ((pauseCtx->state == PAUSECTX_STATE_4) ||
|
if ((pauseCtx->state == PAUSECTX_STATE_4) ||
|
||||||
(pauseCtx->state >= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSECTX_STATE_19_UNPAUSE */ ||
|
(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_SAVE_PROMPT_) && ((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 */) {
|
||||||
pauseCtx->offsetY = 80;
|
pauseCtx->offsetY = 80;
|
||||||
|
@ -2246,7 +2252,7 @@ void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
for (k = 0, j = 0; j < 47; j++, k += 4) {
|
for (k = 0, j = 0; j < 47; j++, k += 4) {
|
||||||
phi_t2_2_width__ = D_8082B1F8_width_questVtx_[j];
|
phi_t2_2_width__ = D_8082B1F8_width_questVtx_[j];
|
||||||
|
|
||||||
if ((j < 6) || (j >= 41)) {
|
if ((j < QUEST_SONG_MINUET) || (j >= 41)) {
|
||||||
pauseCtx->questVtx[k + 0].v.ob[0] = pauseCtx->questVtx[k + 2].v.ob[0] = D_8082B138_x_questVtx[j];
|
pauseCtx->questVtx[k + 0].v.ob[0] = pauseCtx->questVtx[k + 2].v.ob[0] = D_8082B138_x_questVtx[j];
|
||||||
|
|
||||||
pauseCtx->questVtx[k + 1].v.ob[0] = pauseCtx->questVtx[k + 3].v.ob[0] =
|
pauseCtx->questVtx[k + 1].v.ob[0] = pauseCtx->questVtx[k + 3].v.ob[0] =
|
||||||
|
@ -2271,7 +2277,7 @@ void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
|
||||||
phi_t2_2_width__ = 8;
|
phi_t2_2_width__ = 8;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ((j >= 6) && (j <= 17)) {
|
if ((j >= QUEST_SONG_MINUET) && (j < QUEST_KOKIRI_EMERALD)) {
|
||||||
phi_t2_2_width__ = 16;
|
phi_t2_2_width__ = 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2449,7 +2455,7 @@ void func_808265BC_switchPageToSave___(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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
pauseCtx->state++; // PAUSECTX_STATE_5 or PAUSECTX_STATE_6
|
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);
|
||||||
|
@ -2580,8 +2586,8 @@ void KaleidoScope_UpdateDungeonMap(PlayState* play) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void KaleidoScope_Update(PlayState* play) {
|
void KaleidoScope_Update(PlayState* play) {
|
||||||
static s16 D_8082B258 = PAUSE_S6_0;
|
static s16 D_8082B258_sState66NextState_ = PAUSE_S6_0_IDLE_;
|
||||||
static s16 D_8082B25C = 10;
|
static s16 D_8082B25C_sState66NextStateTimer_ = 10;
|
||||||
static s16 sTimer_D_8082B260 = 0;
|
static s16 sTimer_D_8082B260 = 0;
|
||||||
PauseContext* pauseCtx = &play->pauseCtx;
|
PauseContext* pauseCtx = &play->pauseCtx;
|
||||||
InterfaceContext* interfaceCtx = &play->interfaceCtx;
|
InterfaceContext* interfaceCtx = &play->interfaceCtx;
|
||||||
|
@ -2600,21 +2606,22 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
s32 pad;
|
s32 pad;
|
||||||
|
|
||||||
if ((R_PAUSE_MENU_MODE >= 3) && (((pauseCtx->state >= PAUSECTX_STATE_4) &&
|
if ((R_PAUSE_MENU_MODE >= 3) && (((pauseCtx->state >= PAUSECTX_STATE_4) &&
|
||||||
(pauseCtx->state <= PAUSECTX_STATE_7)) /* PAUSECTX_STATE_4, PAUSECTX_STATE_5,
|
(pauseCtx->state <= PAUSECTX_STATE_7_SAVE_PROMPT_)) /* PAUSECTX_STATE_4, PAUSECTX_STATE_5,
|
||||||
PAUSECTX_STATE_6, PAUSECTX_STATE_7 */
|
PAUSECTX_STATE_6, PAUSECTX_STATE_7_SAVE_PROMPT_ */
|
||||||
|| ((pauseCtx->state >= PAUSECTX_STATE_10) && (pauseCtx
|
|| ((pauseCtx->state >= PAUSECTX_STATE_10) && (pauseCtx
|
||||||
->state <= PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
->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_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_FLIP_PAGES_AND_UNPAUSE */)) {
|
||||||
|
|
||||||
if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0 */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8)) &&
|
if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ ||
|
||||||
|
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_PLAYBACK_SONG_READY_)) &&
|
||||||
(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_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0, PAUSE_S6_1, PAUSE_S6_2 */
|
((pauseCtx->unk_1E4_ps6_ < PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1, PAUSE_S6_2_PLAYBACK_SONG_ */
|
||||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYING_SONG_))) {
|
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_))) {
|
||||||
KaleidoScope_UpdateCursorSize(play);
|
KaleidoScope_UpdateCursorSize(play);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3024,7 +3031,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
|
|
||||||
case PAUSECTX_STATE_6:
|
case PAUSECTX_STATE_6:
|
||||||
switch (pauseCtx->unk_1E4_ps6_) {
|
switch (pauseCtx->unk_1E4_ps6_) {
|
||||||
case PAUSE_S6_0:
|
case PAUSE_S6_0_IDLE_:
|
||||||
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_FLIP_PAGES_AND_UNPAUSE;
|
pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||||
|
@ -3041,7 +3048,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
gSaveContext.unk_13EA = 0;
|
gSaveContext.unk_13EA = 0;
|
||||||
Interface_ChangeAlpha(50);
|
Interface_ChangeAlpha(50);
|
||||||
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
||||||
pauseCtx->state = PAUSECTX_STATE_7;
|
pauseCtx->state = PAUSECTX_STATE_7_SAVE_PROMPT_;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -3049,10 +3056,11 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
func_808237B4(play, play->state.input);
|
func_808237B4(play, play->state.input);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_2:
|
case PAUSE_S6_2_PLAYBACK_SONG_:
|
||||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||||
if (pauseCtx->ocarinaStaff->state == 0) {
|
if (pauseCtx->ocarinaStaff->state == 0) {
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_4;
|
// Song playback is finished
|
||||||
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_;
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -3061,10 +3069,10 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
KaleidoScope_UpdateItemEquip(play);
|
KaleidoScope_UpdateItemEquip(play);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_4:
|
case PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_5_PLAYING_SONG_:
|
case PAUSE_S6_5_PLAYER_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)) {
|
||||||
|
@ -3073,11 +3081,11 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||||
WREG(2) = -6240;
|
WREG(2) = -6240;
|
||||||
func_800F64E0(0);
|
func_800F64E0(0);
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
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,
|
||||||
|
@ -3088,27 +3096,33 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
gSaveContext.unk_13EA = 0;
|
gSaveContext.unk_13EA = 0;
|
||||||
Interface_ChangeAlpha(50);
|
Interface_ChangeAlpha(50);
|
||||||
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
||||||
pauseCtx->state = PAUSECTX_STATE_7;
|
pauseCtx->state = PAUSECTX_STATE_7_SAVE_PROMPT_;
|
||||||
} else if (pauseCtx->ocarinaStaff->state == pauseCtx->ocarinaSongIdx) {
|
} else if (pauseCtx->ocarinaStaff->state == pauseCtx->ocarinaSongIdx) {
|
||||||
|
// The player successfully played the song
|
||||||
|
|
||||||
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 = PAUSE_S6_0;
|
|
||||||
D_8082B25C = 30;
|
D_8082B258_sState66NextState_ = PAUSE_S6_0_IDLE_;
|
||||||
|
D_8082B25C_sState66NextStateTimer_ = 30;
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
|
||||||
} else if (pauseCtx->ocarinaStaff->state == 0xFF) {
|
} else if (pauseCtx->ocarinaStaff->state == 0xFF) {
|
||||||
|
// The player failed to play the song
|
||||||
|
|
||||||
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 = PAUSE_S6_4;
|
|
||||||
D_8082B25C = 20;
|
D_8082B258_sState66NextState_ = PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_;
|
||||||
|
D_8082B25C_sState66NextStateTimer_ = 20;
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_6;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_6:
|
case PAUSE_S6_6:
|
||||||
D_8082B25C--;
|
D_8082B25C_sState66NextStateTimer_--;
|
||||||
if (D_8082B25C == 0) {
|
if (D_8082B25C_sState66NextStateTimer_ == 0) {
|
||||||
pauseCtx->unk_1E4_ps6_ = D_8082B258;
|
pauseCtx->unk_1E4_ps6_ = D_8082B258_sState66NextState_;
|
||||||
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0) {
|
if (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) {
|
||||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3117,17 +3131,17 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
case PAUSE_S6_7:
|
case PAUSE_S6_7:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_8:
|
case PAUSE_S6_8_PLAYBACK_SONG_READY_:
|
||||||
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_FLIP_PAGES_AND_UNPAUSE;
|
pauseCtx->state = PAUSECTX_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||||
WREG(2) = -6240;
|
WREG(2) = -6240;
|
||||||
func_800F64E0(0);
|
func_800F64E0(0);
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
} 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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
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,
|
||||||
|
@ -3138,20 +3152,20 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
gSaveContext.unk_13EA = 0;
|
gSaveContext.unk_13EA = 0;
|
||||||
Interface_ChangeAlpha(50);
|
Interface_ChangeAlpha(50);
|
||||||
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_0;
|
||||||
pauseCtx->state = PAUSECTX_STATE_7;
|
pauseCtx->state = PAUSECTX_STATE_7_SAVE_PROMPT_;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSE_S6_9:
|
case PAUSE_S6_9_PLAYBACK_SONG_START_:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSECTX_STATE_7:
|
case PAUSECTX_STATE_7_SAVE_PROMPT_:
|
||||||
switch (pauseCtx->unk_1EC) {
|
switch (pauseCtx->unk_1EC) {
|
||||||
case PAUSECTX_UNK_1EC_0:
|
case PAUSECTX_UNK_1EC_0:
|
||||||
pauseCtx->rotXorZ_unk_204 -= 314.0f / WREG(6);
|
pauseCtx->rotXorZ_unk_204 -= 314.0f / WREG(6);
|
||||||
|
@ -3183,7 +3197,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
gSaveContext.savedSceneId = play->sceneId;
|
gSaveContext.savedSceneId = play->sceneId;
|
||||||
Sram_WriteSave(&play->sramCtx);
|
Sram_WriteSave(&play->sramCtx);
|
||||||
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_4;
|
pauseCtx->unk_1EC = PAUSECTX_UNK_1EC_4;
|
||||||
D_8082B25C = 3;
|
D_8082B25C_sState66NextStateTimer_ = 3;
|
||||||
}
|
}
|
||||||
} else if (CHECK_BTN_ALL(input->press.button, BTN_START) ||
|
} else if (CHECK_BTN_ALL(input->press.button, BTN_START) ||
|
||||||
CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
||||||
|
@ -3201,7 +3215,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
|
|
||||||
case PAUSECTX_UNK_1EC_4:
|
case PAUSECTX_UNK_1EC_4:
|
||||||
if (CHECK_BTN_ALL(input->press.button, BTN_B) || CHECK_BTN_ALL(input->press.button, BTN_A) ||
|
if (CHECK_BTN_ALL(input->press.button, BTN_B) || CHECK_BTN_ALL(input->press.button, BTN_A) ||
|
||||||
CHECK_BTN_ALL(input->press.button, BTN_START) || (--D_8082B25C == 0)) {
|
CHECK_BTN_ALL(input->press.button, BTN_START) || (--D_8082B25C_sState66NextStateTimer_ == 0)) {
|
||||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||||
gSaveContext.buttonStatus[0] = gSaveContext.buttonStatus[1] = gSaveContext.buttonStatus[2] =
|
gSaveContext.buttonStatus[0] = gSaveContext.buttonStatus[1] = gSaveContext.buttonStatus[2] =
|
||||||
gSaveContext.buttonStatus[3] = BTN_ENABLED;
|
gSaveContext.buttonStatus[3] = BTN_ENABLED;
|
||||||
|
@ -3248,7 +3262,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
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_ps6_ = PAUSE_S6_0;
|
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||||
pauseCtx->rotXorZ_unk_204 = -434.0f;
|
pauseCtx->rotXorZ_unk_204 = -434.0f;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -3424,17 +3438,17 @@ void KaleidoScope_Update(PlayState* play) {
|
||||||
gSaveContext.savedSceneId = play->sceneId;
|
gSaveContext.savedSceneId = play->sceneId;
|
||||||
Sram_WriteSave(&play->sramCtx);
|
Sram_WriteSave(&play->sramCtx);
|
||||||
pauseCtx->state = PAUSECTX_STATE_15;
|
pauseCtx->state = PAUSECTX_STATE_15;
|
||||||
D_8082B25C = 3;
|
D_8082B25C_sState66NextStateTimer_ = 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case PAUSECTX_STATE_15:
|
case PAUSECTX_STATE_15:
|
||||||
D_8082B25C--;
|
D_8082B25C_sState66NextStateTimer_--;
|
||||||
if (D_8082B25C == 0) {
|
if (D_8082B25C_sState66NextStateTimer_ == 0) {
|
||||||
pauseCtx->state = PAUSECTX_STATE_16;
|
pauseCtx->state = PAUSECTX_STATE_16;
|
||||||
gameOverCtx->state++;
|
gameOverCtx->state++;
|
||||||
} else if ((D_8082B25C <= 80) &&
|
} else if ((D_8082B25C_sState66NextStateTimer_ <= 80) &&
|
||||||
(CHECK_BTN_ALL(input->press.button, BTN_A) || CHECK_BTN_ALL(input->press.button, BTN_START))) {
|
(CHECK_BTN_ALL(input->press.button, BTN_A) || CHECK_BTN_ALL(input->press.button, BTN_START))) {
|
||||||
pauseCtx->state = PAUSECTX_STATE_16;
|
pauseCtx->state = PAUSECTX_STATE_16;
|
||||||
gameOverCtx->state++;
|
gameOverCtx->state++;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue