mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-08-13 04:29:30 -04:00
Decomp, update AudioOcarina (code_800EC960.c) (#6941)
This commit is contained in:
@@ -247,7 +247,7 @@ void func_800E5584(AudioCmd* cmd) {
|
||||
AudioLoad_SyncLoadSeqParts(cmd->arg1, cmd->arg2);
|
||||
return;
|
||||
case 0x82:
|
||||
// 16-bit seqId packed in opArgs bits 0-15. See func_800F9280().
|
||||
// 16-bit seqId packed in opArgs bits 0-15. See Audio_StartSequence().
|
||||
AudioLoad_SyncInitSeqPlayer(cmd->arg0, cmd->opArgs & 0xFFFF, 0);
|
||||
func_800E59AC(cmd->arg0, cmd->data);
|
||||
return;
|
||||
|
||||
+986
-767
File diff suppressed because it is too large
Load Diff
@@ -97,7 +97,7 @@ u8 gAudioSfxSwapOff = 0;
|
||||
|
||||
u8 D_801333F8 = 0;
|
||||
|
||||
void Audio_SetSoundBanksMute(u16 muteMask) {
|
||||
void Audio_SetSfxBanksMute(u16 muteMask) {
|
||||
u8 bankId;
|
||||
|
||||
for (bankId = 0; bankId < ARRAY_COUNT(gSoundBanks); bankId++) {
|
||||
@@ -527,7 +527,7 @@ void Audio_PlayActiveSounds(u8 bankId) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
Audio_SetSoundProperties(bankId, entryIndex, sCurSfxPlayerChannelIdx);
|
||||
Audio_SetSfxProperties(bankId, entryIndex, sCurSfxPlayerChannelIdx);
|
||||
Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | ((sCurSfxPlayerChannelIdx & 0xFF) << 8), 1);
|
||||
Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | ((sCurSfxPlayerChannelIdx & 0xFF) << 8) | 4,
|
||||
entry->sfxId & 0xFF);
|
||||
@@ -543,7 +543,7 @@ void Audio_PlayActiveSounds(u8 bankId) {
|
||||
} else if ((u8)channel->soundScriptIO[1] == 0xFF) {
|
||||
Audio_RemoveSoundBankEntry(bankId, entryIndex);
|
||||
} else if (entry->state == SFX_STATE_PLAYING_REFRESH) {
|
||||
Audio_SetSoundProperties(bankId, entryIndex, sCurSfxPlayerChannelIdx);
|
||||
Audio_SetSfxProperties(bankId, entryIndex, sCurSfxPlayerChannelIdx);
|
||||
if (entry->sfxId & 0xC00) {
|
||||
entry->state = SFX_STATE_PLAYING_1;
|
||||
} else {
|
||||
|
||||
@@ -36,7 +36,7 @@ u8 D_80133418 = 0;
|
||||
#define Audio_SetVolScaleNow(playerIdx, volFadeTimer, volScale) \
|
||||
Audio_ProcessSeqCmd(0x40000000 | ((u8)playerIdx << 24) | ((u8)volFadeTimer << 16) | ((u8)(volScale * 127.0f)));
|
||||
|
||||
void func_800F9280(u8 playerIdx, u8 seqId, u8 arg2, u16 fadeTimer) {
|
||||
void Audio_StartSequence(u8 playerIdx, u8 seqId, u8 arg2, u16 fadeTimer) {
|
||||
u8 i;
|
||||
u16 dur;
|
||||
u16 resolvedSeqId;
|
||||
@@ -145,7 +145,7 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
seqArgs = (cmd & 0xFF00) >> 8;
|
||||
fadeTimer = (cmd & 0xFF0000) >> 13;
|
||||
if ((gActiveSeqs[playerIdx].isWaitingForFonts == 0) && (seqArgs < 0x80)) {
|
||||
func_800F9280(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
Audio_StartSequence(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -164,7 +164,7 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
for (i = 0; i < sNumSeqRequests[playerIdx]; i++) {
|
||||
if (D_8016E320[playerIdx][i].unk_0 == seqId) {
|
||||
if (i == 0) {
|
||||
func_800F9280(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
Audio_StartSequence(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -189,7 +189,7 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
D_8016E320[playerIdx][found].unk_0 = seqId;
|
||||
|
||||
if (found == 0) {
|
||||
func_800F9280(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
Audio_StartSequence(playerIdx, seqId, seqArgs, fadeTimer);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -217,7 +217,8 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
if (found == 0) {
|
||||
func_800F9474(playerIdx, fadeTimer);
|
||||
if (sNumSeqRequests[playerIdx] != 0) {
|
||||
func_800F9280(playerIdx, D_8016E320[playerIdx][0].unk_0, D_8016E320[playerIdx][0].unk_1, fadeTimer);
|
||||
Audio_StartSequence(playerIdx, D_8016E320[playerIdx][0].unk_0, D_8016E320[playerIdx][0].unk_1,
|
||||
fadeTimer);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -380,7 +381,7 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
}
|
||||
|
||||
void Audio_QueueSeqCmd(u32 cmd) {
|
||||
// Replacement is resolved per-command in func_800F9280().
|
||||
// Replacement is resolved per-command in Audio_StartSequence().
|
||||
sAudioSeqCmds[sSeqCmdWrPos++] = cmd;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -465,7 +465,7 @@ void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* g
|
||||
void GameState_Destroy(GameState* gameState) {
|
||||
osSyncPrintf("game デストラクタ開始\n"); // "game destructor start"
|
||||
func_800C3C20();
|
||||
func_800F3054();
|
||||
Audio_Update();
|
||||
osRecvMesg(&gameState->gfxCtx->queue, NULL, OS_MESG_BLOCK);
|
||||
LOG_CHECK_NULL_POINTER("this->cleanup", gameState->destroy);
|
||||
if (gameState->destroy != NULL) {
|
||||
|
||||
@@ -390,7 +390,7 @@ void Graph_Update(GraphicsContext* gfxCtx, GameState* gameState) {
|
||||
gfxCtx->fbIdx++;
|
||||
}
|
||||
|
||||
func_800F3054();
|
||||
Audio_Update();
|
||||
|
||||
{
|
||||
OSTime time = osGetTime();
|
||||
|
||||
@@ -427,7 +427,7 @@ void func_80064824(PlayState* play, CutsceneContext* csCtx, CsCmdBase* cmd) {
|
||||
}
|
||||
break;
|
||||
case 35:
|
||||
func_800EE824();
|
||||
AudioOcarina_PlayLongScarecrowSong();
|
||||
csCtx->frames = cmd->startFrame - 1;
|
||||
break;
|
||||
}
|
||||
@@ -912,7 +912,7 @@ void Cutscene_Command_Terminator(PlayState* play, CutsceneContext* csCtx, CsCmdB
|
||||
break;
|
||||
case 54:
|
||||
gSaveContext.gameMode = GAMEMODE_END_CREDITS;
|
||||
Audio_SetSoundBanksMute(0x6F);
|
||||
Audio_SetSfxBanksMute(0x6F);
|
||||
play->linkAgeOnLoad = 1;
|
||||
play->nextEntranceIndex = ENTR_GERUDO_VALLEY_EAST_EXIT;
|
||||
gSaveContext.cutsceneIndex = 0xFFF2;
|
||||
@@ -1309,7 +1309,7 @@ void Cutscene_Command_Terminator(PlayState* play, CutsceneContext* csCtx, CsCmdB
|
||||
break;
|
||||
case 117:
|
||||
gSaveContext.gameMode = GAMEMODE_END_CREDITS;
|
||||
Audio_SetSoundBanksMute(0x6F);
|
||||
Audio_SetSfxBanksMute(0x6F);
|
||||
play->linkAgeOnLoad = 0;
|
||||
play->nextEntranceIndex = ENTR_HYRULE_FIELD_PAST_BRIDGE_SPAWN;
|
||||
gSaveContext.cutsceneIndex = 0xFFF7;
|
||||
|
||||
+137
-128
@@ -143,16 +143,16 @@ void Message_UpdateOcarinaGame(PlayState* play) {
|
||||
play->msgCtx.msgMode++;
|
||||
|
||||
if (play->msgCtx.msgMode == MSGMODE_MEMORY_GAME_PLAYER_PLAYING) {
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
func_800ECC04((1 << OCARINA_SONG_MEMORY_GAME) + 0x8000);
|
||||
AudioOcarina_Start((1 << OCARINA_SONG_MEMORY_GAME) + 0x8000);
|
||||
msgCtx->textDrawPos = msgCtx->decodedTextLen;
|
||||
} else if (msgCtx->msgMode == MSGMODE_MEMORY_GAME_RIGHT_SKULLKID_PLAYING) {
|
||||
AudioOcarina_SetInstrument(6);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_FLUTE);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
msgCtx->stateTimer = 2;
|
||||
}
|
||||
Message_ResetOcarinaNoteState();
|
||||
@@ -892,15 +892,15 @@ void Message_HandleOcarina(PlayState* play) {
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_SCARECROW_LONG_PLAYBACK) {
|
||||
// "Recording Playback / Recording Playback / Recording Playback / Recording Playback -> "
|
||||
osSyncPrintf("録音再生 録音再生 録音再生 録音再生 -> ");
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
sOcarinaButtonIndexBufPos = sOcarinaButtonIndexBufLen = 0;
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos;
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->stateTimer = 3;
|
||||
msgCtx->msgMode = MSGMODE_SCARECROW_LONG_PLAYBACK;
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_SCARECROW_LONG + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_SCARECROW_LONG + 1, 1);
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_SCARECROW_RECORDING) {
|
||||
msgCtx->msgMode = MSGMODE_SCARECROW_RECORDING_START;
|
||||
// "8 Note Recording Start / 8 Note Recording Start / 8 Note Recording Start -> "
|
||||
@@ -908,15 +908,15 @@ void Message_HandleOcarina(PlayState* play) {
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_SCARECROW_PLAYBACK) {
|
||||
// "8 Note Playback / 8 Note Playback / 8 Note Playback -> "
|
||||
osSyncPrintf("8音再生 8音再生 8音再生 -> ");
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
sOcarinaButtonIndexBufPos = sOcarinaButtonIndexBufLen = 0;
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos;
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->stateTimer = 3;
|
||||
msgCtx->msgMode = MSGMODE_SCARECROW_PLAYBACK;
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_SCARECROW + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_SCARECROW_SPAWN + 1, 1);
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_MEMORY_GAME) {
|
||||
msgCtx->msgMode = MSGMODE_MEMORY_GAME_START;
|
||||
// "Musical Round Start / Musical Round Start / Musical Round Start / Musical Round Start -> "
|
||||
@@ -2895,11 +2895,19 @@ void Message_ContinueTextbox(PlayState* play, u16 textId) {
|
||||
|
||||
void Message_StartOcarina(PlayState* play, u16 ocarinaActionId) {
|
||||
static u16 sOcarinaSongFlagsMap[] = {
|
||||
(1 << OCARINA_SONG_MINUET), (1 << OCARINA_SONG_BOLERO), (1 << OCARINA_SONG_SERENADE),
|
||||
(1 << OCARINA_SONG_REQUIEM), (1 << OCARINA_SONG_NOCTURNE), (1 << OCARINA_SONG_PRELUDE),
|
||||
(1 << OCARINA_SONG_LULLABY), (1 << OCARINA_SONG_EPONAS), (1 << OCARINA_SONG_SARIAS),
|
||||
(1 << OCARINA_SONG_SUNS), (1 << OCARINA_SONG_TIME), (1 << OCARINA_SONG_STORMS),
|
||||
(1 << OCARINA_SONG_SCARECROW),
|
||||
(1 << OCARINA_SONG_MINUET),
|
||||
(1 << OCARINA_SONG_BOLERO),
|
||||
(1 << OCARINA_SONG_SERENADE),
|
||||
(1 << OCARINA_SONG_REQUIEM),
|
||||
(1 << OCARINA_SONG_NOCTURNE),
|
||||
(1 << OCARINA_SONG_PRELUDE),
|
||||
(1 << OCARINA_SONG_LULLABY),
|
||||
(1 << OCARINA_SONG_EPONAS),
|
||||
(1 << OCARINA_SONG_SARIAS),
|
||||
(1 << OCARINA_SONG_SUNS),
|
||||
(1 << OCARINA_SONG_TIME),
|
||||
(1 << OCARINA_SONG_STORMS),
|
||||
(1 << OCARINA_SONG_SCARECROW_SPAWN),
|
||||
};
|
||||
MessageContext* msgCtx = &play->msgCtx;
|
||||
s32 textId;
|
||||
@@ -2917,13 +2925,13 @@ void Message_StartOcarina(PlayState* play, u16 ocarinaActionId) {
|
||||
}
|
||||
}
|
||||
if (gSaveContext.scarecrowSpawnSongSet) {
|
||||
sOcarinaSongBitFlags |= (1 << OCARINA_SONG_SCARECROW);
|
||||
sOcarinaSongBitFlags |= (1 << OCARINA_SONG_SCARECROW_SPAWN);
|
||||
}
|
||||
osSyncPrintf("ocarina_bit = %x\n", sOcarinaSongBitFlags);
|
||||
osSyncPrintf(VT_RST);
|
||||
|
||||
sHasSunsSong = CHECK_QUEST_ITEM(QUEST_SONG_SUN);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetRecordingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetRecordingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
sOcarinaButtonIndexBufLen = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
@@ -3006,15 +3014,15 @@ void Message_StartOcarina(PlayState* play, u16 ocarinaActionId) {
|
||||
} else if (ocarinaActionId == OCARINA_ACTION_SCARECROW_LONG_PLAYBACK) {
|
||||
// "?????Recording Playback / Recording Playback / Recording Playback / Recording Playback -> "
|
||||
osSyncPrintf("?????録音再生 録音再生 録音再生 録音再生 -> ");
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
sOcarinaButtonIndexBufPos = sOcarinaButtonIndexBufLen = 0;
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos;
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->stateTimer = 3;
|
||||
msgCtx->msgMode = MSGMODE_SCARECROW_LONG_PLAYBACK;
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_SCARECROW_LONG + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_SCARECROW_LONG + 1, 1);
|
||||
gSaveContext.hudVisibilityMode = 0;
|
||||
Interface_ChangeHudVisibilityMode(1);
|
||||
}
|
||||
@@ -3365,8 +3373,8 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
case MSGMODE_OCARINA_STARTING:
|
||||
case MSGMODE_SONG_DEMONSTRATION_STARTING:
|
||||
case MSGMODE_SONG_PLAYBACK_STARTING:
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_01;
|
||||
Message_ResetOcarinaNoteState();
|
||||
@@ -3380,22 +3388,22 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
msgCtx->ocarinaAction >= OCARINA_ACTION_CHECK_SARIA) {
|
||||
if (msgCtx->ocarinaAction == OCARINA_ACTION_FREE_PLAY ||
|
||||
msgCtx->ocarinaAction == OCARINA_ACTION_CHECK_NOWARP) {
|
||||
func_800ECC04(sOcarinaSongBitFlags + 0xC000);
|
||||
AudioOcarina_Start(sOcarinaSongBitFlags + 0xC000);
|
||||
} else {
|
||||
// "On Stage Performance"
|
||||
osSyncPrintf("台上演奏\n");
|
||||
func_800ECC04(sOcarinaSongBitFlags);
|
||||
AudioOcarina_Start(sOcarinaSongBitFlags);
|
||||
}
|
||||
} else {
|
||||
osSyncPrintf("Na_StartOcarinaSinglePlayCheck2( message->ocarina_no );\n");
|
||||
func_800ECC04((1 << (msgCtx->ocarinaAction % 32)) + 0x8000);
|
||||
AudioOcarina_Start((1 << (msgCtx->ocarinaAction % 32)) + 0x8000);
|
||||
}
|
||||
msgCtx->msgMode = MSGMODE_OCARINA_PLAYING;
|
||||
} else if (msgCtx->msgMode == MSGMODE_SONG_DEMONSTRATION_STARTING) {
|
||||
msgCtx->stateTimer = 20;
|
||||
msgCtx->msgMode = MSGMODE_SONG_DEMONSTRATION_SELECT_INSTRUMENT;
|
||||
} else {
|
||||
func_800ECC04((1 << ((msgCtx->ocarinaAction + 0x11) % 32)) + 0x8000);
|
||||
AudioOcarina_Start((1 << ((msgCtx->ocarinaAction + 0x11) % 32)) + 0x8000);
|
||||
// "Performance Check"
|
||||
osSyncPrintf("演奏チェック=%d\n", msgCtx->ocarinaAction - OCARINA_ACTION_PLAYBACK_MINUET);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYBACK;
|
||||
@@ -3410,7 +3418,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_OCARINA_PLAYING:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos) {
|
||||
osSyncPrintf("locate=%d onpu_pt=%d\n", msgCtx->ocarinaStaff->pos, sOcarinaButtonIndexBufPos);
|
||||
if (msgCtx->ocarinaStaff->pos == 1 && sOcarinaButtonIndexBufPos == 8) {
|
||||
@@ -3418,22 +3426,22 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
if (sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
msgCtx->lastOcaNoteIdx = sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] =
|
||||
msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
}
|
||||
msgCtx->lastPlayedSong = msgCtx->ocarinaStaff->state;
|
||||
if (msgCtx->ocarinaStaff->state < OCARINA_SONG_MEMORY_GAME) {
|
||||
if (msgCtx->ocarinaStaff->state == OCARINA_SONG_SCARECROW ||
|
||||
if (msgCtx->ocarinaStaff->state == OCARINA_SONG_SCARECROW_SPAWN ||
|
||||
CHECK_QUEST_ITEM(QUEST_SONG_MINUET + gOcarinaSongItemMap[msgCtx->ocarinaStaff->state])) {
|
||||
sLastPlayedSong = msgCtx->unk_E3F2 = msgCtx->lastPlayedSong = msgCtx->ocarinaStaff->state;
|
||||
msgCtx->msgMode = MSGMODE_OCARINA_CORRECT_PLAYBACK;
|
||||
msgCtx->stateTimer = 20;
|
||||
if (msgCtx->ocarinaAction == OCARINA_ACTION_CHECK_NOWARP) {
|
||||
if (msgCtx->ocarinaStaff->state < OCARINA_SONG_SARIAS ||
|
||||
msgCtx->ocarinaStaff->state == OCARINA_SONG_SCARECROW) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
msgCtx->ocarinaStaff->state == OCARINA_SONG_SCARECROW_SPAWN) {
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultReverb);
|
||||
@@ -3451,8 +3459,8 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
Interface_ChangeHudVisibilityMode(1);
|
||||
}
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_CHECK_SCARECROW) {
|
||||
if (msgCtx->ocarinaStaff->state < OCARINA_SONG_SCARECROW) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
if (msgCtx->ocarinaStaff->state < OCARINA_SONG_SCARECROW_SPAWN) {
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultReverb);
|
||||
@@ -3487,19 +3495,19 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
Interface_ChangeHudVisibilityMode(1);
|
||||
} else {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->msgMode = MSGMODE_OCARINA_STARTING;
|
||||
}
|
||||
} else if (msgCtx->ocarinaStaff->state == 0xFF) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->stateTimer = 10;
|
||||
msgCtx->msgMode = MSGMODE_OCARINA_FAIL;
|
||||
} else if (isB_Held) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_04;
|
||||
Message_CloseTextbox(play);
|
||||
}
|
||||
@@ -3544,7 +3552,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
|
||||
msgCtx->stateTimer--;
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
if (msgCtx->msgMode == MSGMODE_OCARINA_CORRECT_PLAYBACK) {
|
||||
// "Correct Example Performance"
|
||||
osSyncPrintf("正解模範演奏=%x\n", msgCtx->lastPlayedSong);
|
||||
@@ -3604,7 +3612,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
R_OCARINA_NOTES_YPOS_OFFSET += R_OCARINA_NOTES_YPOS_OFFSET;
|
||||
if (R_OCARINA_NOTES_YPOS_OFFSET >= 550) {
|
||||
sOcarinaButtonIndexBuf[0] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[0] = OCARINA_BTN_INVALID;
|
||||
sOcarinaNotesAlphaValues[0] = sOcarinaNotesAlphaValues[1] = sOcarinaNotesAlphaValues[2] =
|
||||
sOcarinaNotesAlphaValues[3] = sOcarinaNotesAlphaValues[4] = sOcarinaNotesAlphaValues[5] =
|
||||
sOcarinaNotesAlphaValues[6] = sOcarinaNotesAlphaValues[7] = sOcarinaNotesAlphaValues[8] = 0;
|
||||
@@ -3618,7 +3626,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
case MSGMODE_SONG_PLAYED:
|
||||
msgCtx->stateTimer--;
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
osSyncPrintf(VT_FGCOL(GREEN));
|
||||
osSyncPrintf("Na_StopOcarinaMode();\n");
|
||||
osSyncPrintf("Na_StopOcarinaMode();\n");
|
||||
@@ -3626,7 +3634,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
osSyncPrintf(VT_RST);
|
||||
Message_Decode(play);
|
||||
msgCtx->msgMode = MSGMODE_SETUP_DISPLAY_SONG_PLAYED;
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
if (msgCtx->lastPlayedSong >= OCARINA_SONG_SARIAS &&
|
||||
@@ -3648,16 +3656,16 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
} else {
|
||||
Message_DrawText(play, &gfx);
|
||||
}
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
Audio_OcaSetSongPlayback(msgCtx->lastPlayedSong + 1, 1);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetPlaybackSong(msgCtx->lastPlayedSong + 1, 1);
|
||||
} else {
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
}
|
||||
if (msgCtx->lastPlayedSong != OCARINA_SONG_SCARECROW) {
|
||||
if (msgCtx->lastPlayedSong != OCARINA_SONG_SCARECROW_SPAWN) {
|
||||
Audio_PlayFanfare(sOcarinaSongFanfares[msgCtx->lastPlayedSong]);
|
||||
Audio_SetSoundBanksMute(0x20);
|
||||
Audio_SetSfxBanksMute(0x20);
|
||||
}
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_01;
|
||||
if (msgCtx->ocarinaAction == OCARINA_ACTION_FREE_PLAY) {
|
||||
@@ -3675,19 +3683,19 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
// "ocarina_no=%d Song Chosen=%d"
|
||||
osSyncPrintf("ocarina_no=%d 選曲=%d\n", msgCtx->ocarinaAction, 0x16);
|
||||
if (msgCtx->ocarinaAction < OCARINA_ACTION_TEACH_SARIA) {
|
||||
AudioOcarina_SetInstrument(4);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_HARP);
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_TEACH_EPONA) {
|
||||
AudioOcarina_SetInstrument(2);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_MALON);
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_TEACH_LULLABY) {
|
||||
AudioOcarina_SetInstrument(3);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_WHISTLE);
|
||||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_TEACH_STORMS) {
|
||||
AudioOcarina_SetInstrument(5);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_GRIND_ORGAN);
|
||||
} else {
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
}
|
||||
// "Example Performance"
|
||||
osSyncPrintf("模範演奏=%x\n", msgCtx->ocarinaAction - OCARINA_ACTION_TEACH_MINUET);
|
||||
Audio_OcaSetSongPlayback(msgCtx->ocarinaAction - OCARINA_ACTION_TEACH_MINUET + 1, 2);
|
||||
AudioOcarina_SetPlaybackSong(msgCtx->ocarinaAction - OCARINA_ACTION_TEACH_MINUET + 1, 2);
|
||||
sOcarinaButtonIndexBufPos = 0;
|
||||
msgCtx->msgMode = MSGMODE_SONG_DEMONSTRATION;
|
||||
}
|
||||
@@ -3729,7 +3737,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_SONG_PLAYED_ACT_BEGIN:
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED_ACT;
|
||||
msgCtx->stateTimer = 2;
|
||||
@@ -3765,7 +3773,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
msgCtx->ocarinaAction);
|
||||
if (msgCtx->ocarinaAction == OCARINA_ACTION_FREE_PLAY_DONE) {
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_01;
|
||||
if (msgCtx->lastPlayedSong == OCARINA_SONG_SCARECROW) {
|
||||
if (msgCtx->lastPlayedSong == OCARINA_SONG_SCARECROW_SPAWN) {
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_0B;
|
||||
}
|
||||
} else if (msgCtx->ocarinaAction >= OCARINA_ACTION_CHECK_MINUET) {
|
||||
@@ -3795,7 +3803,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
break;
|
||||
case MSGMODE_DISPLAY_SONG_PLAYED:
|
||||
case MSGMODE_SONG_DEMONSTRATION:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
if (msgCtx->ocarinaStaff->state == 0) {
|
||||
if (msgCtx->msgMode == MSGMODE_DISPLAY_SONG_PLAYED) {
|
||||
msgCtx->msgMode = MSGMODE_DISPLAY_SONG_PLAYED_TEXT_BEGIN;
|
||||
@@ -3810,8 +3818,8 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
msgCtx->lastOcaNoteIdx = sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] =
|
||||
msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
}
|
||||
@@ -3823,10 +3831,10 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_SONG_PLAYBACK:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
if (msgCtx->ocarinaStaff->state < OCARINA_SONG_MEMORY_GAME) {
|
||||
@@ -3873,9 +3881,9 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
case MSGMODE_SCARECROW_LONG_RECORDING_START:
|
||||
// "Scarecrow Recording Initialization"
|
||||
osSyncPrintf("案山子録音 初期化\n");
|
||||
Audio_OcaSetRecordingState(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetRecordingStaff();
|
||||
AudioOcarina_SetRecordingState(OCARINA_RECORD_SCARECROW_LONG);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetRecordingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
sOcarinaButtonIndexBufLen = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
@@ -3887,7 +3895,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_SCARECROW_LONG_RECORDING_ONGOING:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetRecordingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetRecordingStaff();
|
||||
osSyncPrintf("\nonpu_pt=%d, locate=%d", sOcarinaButtonIndexBufPos, msgCtx->ocarinaStaff->pos);
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
if (sOcarinaButtonIndexBufLen >= 8) {
|
||||
@@ -3897,11 +3905,12 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
sOcarinaButtonIndexBufLen--;
|
||||
}
|
||||
// "Button Entered"
|
||||
osSyncPrintf(" 入力ボタン【%d】=%d", sOcarinaButtonIndexBufLen, msgCtx->ocarinaStaff->noteIdx);
|
||||
osSyncPrintf(" 入力ボタン【%d】=%d", sOcarinaButtonIndexBufLen,
|
||||
msgCtx->ocarinaStaff->buttonIndex);
|
||||
msgCtx->lastOcaNoteIdx = sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] =
|
||||
msgCtx->ocarinaStaff->noteIdx;
|
||||
msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBufLen++;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
if (msgCtx->ocarinaStaff->pos == 8) {
|
||||
sOcarinaButtonIndexBufPos = 0;
|
||||
@@ -3917,7 +3926,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
osSyncPrintf("aaaaaaaaaaaaaa\n");
|
||||
Audio_OcaSetRecordingState(0);
|
||||
AudioOcarina_SetRecordingState(OCARINA_RECORD_OFF);
|
||||
msgCtx->stateTimer = 10;
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_04;
|
||||
Message_CloseTextbox(play);
|
||||
@@ -3925,7 +3934,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
osSyncPrintf("録音終了!!!!!!!!!録音終了\n");
|
||||
osSyncPrintf(VT_FGCOL(YELLOW));
|
||||
osSyncPrintf("\n====================================================================\n");
|
||||
memcpy(gSaveContext.scarecrowLongSong, gScarecrowCustomSongPtr,
|
||||
memcpy(gSaveContext.scarecrowLongSong, gScarecrowLongSongPtr,
|
||||
sizeof(gSaveContext.scarecrowLongSong));
|
||||
for (i = 0; i < ARRAY_COUNT(gSaveContext.scarecrowLongSong); i++) {
|
||||
osSyncPrintf("%d, ", gSaveContext.scarecrowLongSong[i]);
|
||||
@@ -3941,7 +3950,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
break;
|
||||
case MSGMODE_SCARECROW_LONG_PLAYBACK:
|
||||
case MSGMODE_SCARECROW_PLAYBACK:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
if (sOcarinaButtonIndexBufLen >= 8) {
|
||||
for (noteBufPos = sOcarinaButtonIndexBufLen - 8, i = 0; i < 8; i++, noteBufPos++) {
|
||||
@@ -3949,9 +3958,9 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
sOcarinaButtonIndexBufLen--;
|
||||
}
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBufLen++;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufLen] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
if (msgCtx->ocarinaStaff->pos == 8) {
|
||||
sOcarinaButtonIndexBufLen = sOcarinaButtonIndexBufPos = 0;
|
||||
@@ -3961,7 +3970,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
if (msgCtx->ocarinaStaff->state == 0) {
|
||||
osSyncPrintf("bbbbbbbbbbb\n");
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_0F;
|
||||
Message_CloseTextbox(play);
|
||||
}
|
||||
@@ -3970,8 +3979,8 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_SCARECROW_RECORDING_START:
|
||||
Audio_OcaSetRecordingState(2);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetRecordingState(OCARINA_RECORD_SCARECROW_SPAWN);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->msgMode = MSGMODE_SCARECROW_RECORDING_ONGOING;
|
||||
if (gSaveContext.language == LANGUAGE_JPN && !sDisplayNextMessageAsEnglish) {
|
||||
Message_DrawTextJPN(play, &gfx);
|
||||
@@ -3980,12 +3989,12 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_SCARECROW_RECORDING_ONGOING:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetRecordingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetRecordingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
msgCtx->lastOcaNoteIdx = sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufPos] =
|
||||
msgCtx->ocarinaStaff->noteIdx;
|
||||
msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufPos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[sOcarinaButtonIndexBufPos] = OCARINA_BTN_INVALID;
|
||||
}
|
||||
if (msgCtx->ocarinaStaff->state == 0) {
|
||||
// "8 Note Recording OK!"
|
||||
@@ -4004,10 +4013,10 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
osSyncPrintf(VT_RST);
|
||||
osSyncPrintf("\n====================================================================\n");
|
||||
} else if (msgCtx->ocarinaStaff->state == 0xFF || isB_Held) {
|
||||
} else if (msgCtx->ocarinaStaff->state == OCARINA_RECORD_REJECTED || isB_Held) {
|
||||
// "Played an existing song!!!"
|
||||
osSyncPrintf("すでに存在する曲吹いた!!! \n");
|
||||
Audio_OcaSetRecordingState(0);
|
||||
AudioOcarina_SetRecordingState(OCARINA_RECORD_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
Message_CloseTextbox(play);
|
||||
@@ -4021,18 +4030,18 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
break;
|
||||
case MSGMODE_SCARECROW_RECORDING_FAILED:
|
||||
osSyncPrintf("cccccccccccc\n");
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Message_StartTextbox(play, 0x40AD, NULL); // Bonooru doesn't remember your song
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_04;
|
||||
break;
|
||||
case MSGMODE_MEMORY_GAME_START:
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(6);
|
||||
Audio_OcaMemoryGameStart(gSaveContext.ocarinaGameRoundNum);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_FLUTE);
|
||||
AudioOcarina_MemoryGameInit(gSaveContext.ocarinaGameRoundNum);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
msgCtx->msgMode = MSGMODE_MEMORY_GAME_LEFT_SKULLKID_PLAYING;
|
||||
msgCtx->stateTimer = 2;
|
||||
break;
|
||||
@@ -4040,10 +4049,10 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
case MSGMODE_MEMORY_GAME_RIGHT_SKULLKID_PLAYING:
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_METRONOME_LV - SFX_FLAG, &gSfxDefaultPos, 4,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
@@ -4064,26 +4073,26 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
break;
|
||||
case MSGMODE_MEMORY_GAME_LEFT_SKULLKID_WAIT:
|
||||
case MSGMODE_MEMORY_GAME_RIGHT_SKULLKID_WAIT:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
break;
|
||||
case MSGMODE_MEMORY_GAME_PLAYER_PLAYING:
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_METRONOME_LV - SFX_FLAG, &gSfxDefaultPos, 4,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
if (msgCtx->ocarinaStaff->state == 0xFF) {
|
||||
// "Musical round failed!!!!!!!!!"
|
||||
osSyncPrintf("輪唱失敗!!!!!!!!!\n");
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_OCARINA_ERROR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->stateTimer = 10;
|
||||
@@ -4103,18 +4112,18 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
}
|
||||
break;
|
||||
case MSGMODE_MEMORY_GAME_ROUND_SUCCESS:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->noteIdx;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_NOTE_INVALID;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos - 1] = msgCtx->ocarinaStaff->buttonIndex;
|
||||
sOcarinaButtonIndexBuf[msgCtx->ocarinaStaff->pos] = OCARINA_BTN_INVALID;
|
||||
sOcarinaButtonIndexBufPos++;
|
||||
}
|
||||
msgCtx->stateTimer--;
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
if (Audio_OcaMemoryGameGenNote() != 1) {
|
||||
if (AudioOcarina_MemoryGameNextNote() != 1) {
|
||||
Audio_PlaySoundGeneral(NA_SE_SY_METRONOME, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
|
||||
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->msgMode = MSGMODE_MEMORY_GAME_START_NEXT_ROUND;
|
||||
@@ -4130,25 +4139,25 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
break;
|
||||
case MSGMODE_MEMORY_GAME_START_NEXT_ROUND:
|
||||
if (!Audio_IsSfxPlaying(NA_SE_SY_METRONOME)) {
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
}
|
||||
break;
|
||||
case MSGMODE_FROGS_START:
|
||||
AudioOcarina_SetInstrument(1);
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_01;
|
||||
Message_ResetOcarinaNoteState();
|
||||
func_800ECC04(sOcarinaSongBitFlags + 0xC000);
|
||||
AudioOcarina_Start(sOcarinaSongBitFlags + 0xC000);
|
||||
msgCtx->msgMode = MSGMODE_FROGS_PLAYING;
|
||||
break;
|
||||
case MSGMODE_FROGS_PLAYING:
|
||||
msgCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
msgCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
if (msgCtx->ocarinaStaff->pos && sOcarinaButtonIndexBufPos == msgCtx->ocarinaStaff->pos - 1) {
|
||||
msgCtx->lastOcaNoteIdx = msgCtx->ocarinaStaff->noteIdx;
|
||||
msgCtx->lastOcaNoteIdx = msgCtx->ocarinaStaff->buttonIndex;
|
||||
msgCtx->ocarinaStaff->pos = sOcarinaButtonIndexBufPos = 0;
|
||||
Message_ResetOcarinaNoteState();
|
||||
msgCtx->msgMode = MSGMODE_FROGS_WAITING;
|
||||
@@ -4209,19 +4218,19 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
|
||||
if (msgCtx->msgMode == MSGMODE_SONG_PLAYBACK) {
|
||||
g = msgCtx->ocarinaAction - OCARINA_ACTION_PLAYBACK_MINUET;
|
||||
r = gOcarinaSongNotes[g].len;
|
||||
r = gOcarinaSongButtons[g].numButtons;
|
||||
for (notePosX = R_OCARINA_NOTES_XPOS, i = 0; i < r; i++, notePosX += R_OCARINA_NOTES_XPOS_OFFSET) {
|
||||
gDPPipeSync(gfx++);
|
||||
gDPSetPrimColor(gfx++, 0, 0, 150, 150, 150, 150);
|
||||
gDPSetEnvColor(gfx++, 10, 10, 10, 0);
|
||||
|
||||
gDPLoadTextureBlock(gfx++, sOcarinaNoteTextures[gOcarinaSongNotes[g].notesIdx[i]], G_IM_FMT_IA,
|
||||
G_IM_SIZ_8b, 16, 16, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadTextureBlock(gfx++, sOcarinaNoteTextures[gOcarinaSongButtons[g].buttonsIndex[i]],
|
||||
G_IM_FMT_IA, G_IM_SIZ_8b, 16, 16, 0, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
||||
gSPTextureRectangle(
|
||||
gfx++, notePosX << 2, R_OCARINA_NOTES_YPOS(gOcarinaSongNotes[g].notesIdx[i]) << 2,
|
||||
(notePosX + 16) << 2, (R_OCARINA_NOTES_YPOS(gOcarinaSongNotes[g].notesIdx[i]) + 16) << 2,
|
||||
gfx++, notePosX << 2, R_OCARINA_NOTES_YPOS(gOcarinaSongButtons[g].buttonsIndex[i]) << 2,
|
||||
(notePosX + 16) << 2, (R_OCARINA_NOTES_YPOS(gOcarinaSongButtons[g].buttonsIndex[i]) + 16) << 2,
|
||||
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||
}
|
||||
}
|
||||
@@ -4229,7 +4238,7 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
if (msgCtx->msgMode != MSGMODE_SCARECROW_LONG_RECORDING_START &&
|
||||
msgCtx->msgMode != MSGMODE_MEMORY_GAME_START) {
|
||||
for (notePosX = R_OCARINA_NOTES_XPOS, i = 0; i < 8; i++, notePosX += R_OCARINA_NOTES_XPOS_OFFSET) {
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_INVALID) {
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_INVALID) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -4245,21 +4254,21 @@ void Message_DrawMain(PlayState* play, Gfx** p) {
|
||||
// Since I don't know what exactly these Env vars are used for, I elected keep their usage
|
||||
// consistent with the note played, rather than having AEnv be used for whatever note A happens to
|
||||
// play at the moment and CEnv for everything else, even with custom controls enabled.
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_D4) {
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_A) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, sOcarinaNoteABtnPrim.r, sOcarinaNoteABtnPrim.g,
|
||||
sOcarinaNoteABtnPrim.b, sOcarinaNotesAlphaValues[i]);
|
||||
gDPSetEnvColor(gfx++, sOcarinaNoteABtnEnv.r, sOcarinaNoteABtnEnv.g, sOcarinaNoteABtnEnv.b, 0);
|
||||
} else {
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_D5) {
|
||||
if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_C_UP) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, sOcarinaNoteCUpBtnPrim.r, sOcarinaNoteCUpBtnPrim.g,
|
||||
sOcarinaNoteCUpBtnPrim.b, sOcarinaNotesAlphaValues[i]);
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_B4) {
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_C_LEFT) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, sOcarinaNoteCLeftBtnPrim.r, sOcarinaNoteCLeftBtnPrim.g,
|
||||
sOcarinaNoteCLeftBtnPrim.b, sOcarinaNotesAlphaValues[i]);
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_A4) {
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_C_RIGHT) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, sOcarinaNoteCRightBtnPrim.r, sOcarinaNoteCRightBtnPrim.g,
|
||||
sOcarinaNoteCRightBtnPrim.b, sOcarinaNotesAlphaValues[i]);
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_NOTE_F4) {
|
||||
} else if (sOcarinaButtonIndexBuf[i] == OCARINA_BTN_C_DOWN) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, sOcarinaNoteCDownBtnPrim.r, sOcarinaNoteCDownBtnPrim.g,
|
||||
sOcarinaNoteCDownBtnPrim.b, sOcarinaNotesAlphaValues[i]);
|
||||
}
|
||||
@@ -4689,7 +4698,7 @@ void Message_Update(PlayState* play) {
|
||||
case MSGMODE_PAUSED:
|
||||
break;
|
||||
default:
|
||||
msgCtx->lastOcaNoteIdx = OCARINA_NOTE_INVALID;
|
||||
msgCtx->lastOcaNoteIdx = OCARINA_BTN_INVALID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,9 +159,9 @@ void Sram_OpenSave() {
|
||||
osSyncPrintf(VT_FGCOL(BLUE));
|
||||
osSyncPrintf("\n====================================================================\n");
|
||||
|
||||
memcpy(gScarecrowCustomSongPtr, gSaveContext.scarecrowLongSong, sizeof(gSaveContext.scarecrowLongSong));
|
||||
memcpy(gScarecrowLongSongPtr, gSaveContext.scarecrowLongSong, sizeof(gSaveContext.scarecrowLongSong));
|
||||
|
||||
ptr = (u8*)gScarecrowCustomSongPtr;
|
||||
ptr = (u8*)gScarecrowLongSongPtr;
|
||||
for (i = 0; i < ARRAY_COUNT(gSaveContext.scarecrowLongSong); i++, ptr++) {
|
||||
osSyncPrintf("%d, ", *ptr);
|
||||
}
|
||||
|
||||
@@ -207,7 +207,7 @@ static u8 sJumpOrder[] = {
|
||||
};
|
||||
|
||||
static u8 sOcarinaNotes[] = {
|
||||
OCARINA_NOTE_D4, OCARINA_NOTE_F4, OCARINA_NOTE_A4, OCARINA_NOTE_B4, OCARINA_NOTE_D5,
|
||||
OCARINA_BTN_A, OCARINA_BTN_C_DOWN, OCARINA_BTN_C_RIGHT, OCARINA_BTN_C_LEFT, OCARINA_BTN_C_UP,
|
||||
};
|
||||
|
||||
void EnFr_OrientUnderwater(EnFr* this) {
|
||||
@@ -703,19 +703,19 @@ void EnFr_ListeningToOcarinaNotes(EnFr* this, PlayState* play) {
|
||||
break;
|
||||
case OCARINA_MODE_01: // Ocarina note played, but no song played
|
||||
switch (play->msgCtx.lastOcaNoteIdx) { // Jumping frogs in open ocarina based on ocarina note played
|
||||
case OCARINA_NOTE_D4:
|
||||
case OCARINA_BTN_A:
|
||||
EnFr_SetupJumpingUp(this, FROG_BLUE);
|
||||
break;
|
||||
case OCARINA_NOTE_F4:
|
||||
case OCARINA_BTN_C_DOWN:
|
||||
EnFr_SetupJumpingUp(this, FROG_YELLOW);
|
||||
break;
|
||||
case OCARINA_NOTE_A4:
|
||||
case OCARINA_BTN_C_RIGHT:
|
||||
EnFr_SetupJumpingUp(this, FROG_RED);
|
||||
break;
|
||||
case OCARINA_NOTE_B4:
|
||||
case OCARINA_BTN_C_LEFT:
|
||||
EnFr_SetupJumpingUp(this, FROG_PURPLE);
|
||||
break;
|
||||
case OCARINA_NOTE_D5:
|
||||
case OCARINA_BTN_C_UP:
|
||||
EnFr_SetupJumpingUp(this, FROG_WHITE);
|
||||
break;
|
||||
}
|
||||
@@ -882,7 +882,7 @@ void EnFr_OcarinaMistake(EnFr* this, PlayState* play) {
|
||||
Message_CloseTextbox(play);
|
||||
this->reward = GI_NONE;
|
||||
Sfx_PlaySfxCentered(NA_SE_SY_OCARINA_ERROR);
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
sEnFrPointers.flags = 12;
|
||||
EnFr_DeactivateButterfly();
|
||||
this->actionFunc = EnFr_Deactivate;
|
||||
@@ -921,19 +921,19 @@ void EnFr_ContinueFrogSong(EnFr* this, PlayState* play) {
|
||||
if (play->msgCtx.msgMode == MSGMODE_FROGS_WAITING) {
|
||||
play->msgCtx.msgMode = MSGMODE_FROGS_START;
|
||||
switch (play->msgCtx.lastOcaNoteIdx) {
|
||||
case OCARINA_NOTE_D4:
|
||||
case OCARINA_BTN_A:
|
||||
EnFr_SetupJumpingUp(this, FROG_BLUE);
|
||||
break;
|
||||
case OCARINA_NOTE_F4:
|
||||
case OCARINA_BTN_C_DOWN:
|
||||
EnFr_SetupJumpingUp(this, FROG_YELLOW);
|
||||
break;
|
||||
case OCARINA_NOTE_A4:
|
||||
case OCARINA_BTN_C_RIGHT:
|
||||
EnFr_SetupJumpingUp(this, FROG_RED);
|
||||
break;
|
||||
case OCARINA_NOTE_B4:
|
||||
case OCARINA_BTN_C_LEFT:
|
||||
EnFr_SetupJumpingUp(this, FROG_PURPLE);
|
||||
break;
|
||||
case OCARINA_NOTE_D5:
|
||||
case OCARINA_BTN_C_UP:
|
||||
EnFr_SetupJumpingUp(this, FROG_WHITE);
|
||||
}
|
||||
if (EnFr_IsFrogSongComplete(this, play)) {
|
||||
@@ -952,7 +952,7 @@ void EnFr_SetupReward(EnFr* this, PlayState* play, u8 unkCondition) {
|
||||
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
|
||||
}
|
||||
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
play->msgCtx.msgMode = MSGMODE_PAUSED;
|
||||
this->actionFunc = EnFr_PrintTextBox;
|
||||
}
|
||||
|
||||
@@ -106,30 +106,30 @@ void func_80A8F320(EnKakasi* this, PlayState* play, s16 arg) {
|
||||
ocarinaNote = this->unk_1A6;
|
||||
}
|
||||
switch (ocarinaNote) {
|
||||
case OCARINA_NOTE_D4:
|
||||
case OCARINA_BTN_A:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1A4 == 0) {
|
||||
this->unk_1A4 = 1;
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EV_KAKASHI_ROLL);
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_F4:
|
||||
case OCARINA_BTN_C_DOWN:
|
||||
this->unk_19A++;
|
||||
this->unk_1B8 = 1.0f;
|
||||
break;
|
||||
case OCARINA_NOTE_A4:
|
||||
case OCARINA_BTN_C_RIGHT:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1AC == 0) {
|
||||
this->unk_1AC = 0x1388;
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_B4:
|
||||
case OCARINA_BTN_C_LEFT:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1A8 == 0) {
|
||||
this->unk_1A8 = 0x1388;
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_D5:
|
||||
case OCARINA_BTN_C_UP:
|
||||
this->unk_19A++;
|
||||
this->unk_1B8 = 2.0f;
|
||||
break;
|
||||
|
||||
@@ -109,30 +109,30 @@ void func_80A90EBC(EnKakasi3* this, PlayState* play, s32 arg) {
|
||||
ocarinaNote = this->unk_1A6;
|
||||
}
|
||||
switch (ocarinaNote) {
|
||||
case OCARINA_NOTE_D4:
|
||||
case OCARINA_BTN_A:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1A4 == 0) {
|
||||
this->unk_1A4 = 1;
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EV_KAKASHI_ROLL);
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_F4:
|
||||
case OCARINA_BTN_C_DOWN:
|
||||
this->unk_19A++;
|
||||
this->unk_1B8 = 1.0f;
|
||||
break;
|
||||
case OCARINA_NOTE_A4:
|
||||
case OCARINA_BTN_C_RIGHT:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1AE == 0x0) {
|
||||
this->unk_1AE = 0x1388;
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_B4:
|
||||
case OCARINA_BTN_C_LEFT:
|
||||
this->unk_19A++;
|
||||
if (this->unk_1AA == 0x0) {
|
||||
this->unk_1AA = 0x1388;
|
||||
}
|
||||
break;
|
||||
case OCARINA_NOTE_D5:
|
||||
case OCARINA_BTN_C_UP:
|
||||
this->unk_19A++;
|
||||
this->unk_1B8 = 2.0f;
|
||||
break;
|
||||
|
||||
@@ -1503,8 +1503,8 @@ void EnSkj_WaitForPlayback(EnSkj* this, PlayState* play) {
|
||||
SKULL_KID_OCARINA_PLAY_NOTES;
|
||||
}
|
||||
this->songFailTimer = 160;
|
||||
AudioOcarina_SetInstrument(6); // related instrument sound (flute?)
|
||||
Audio_OcaSetSongPlayback(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_FLUTE);
|
||||
AudioOcarina_SetPlaybackSong(OCARINA_SONG_MEMORY_GAME + 1, 1);
|
||||
play->msgCtx.msgMode = MSGMODE_MEMORY_GAME_LEFT_SKULLKID_PLAYING;
|
||||
play->msgCtx.stateTimer = 2;
|
||||
}
|
||||
|
||||
@@ -1607,7 +1607,7 @@ void EnZl2_Init(Actor* thisx, PlayState* play) {
|
||||
|
||||
switch (thisx->params) {
|
||||
case 1:
|
||||
Audio_SetSoundBanksMute(0x6F);
|
||||
Audio_SetSfxBanksMute(0x6F);
|
||||
break;
|
||||
case 4:
|
||||
gSaveContext.subTimerState = SUBTIMER_STATE_OFF;
|
||||
|
||||
@@ -205,9 +205,9 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
}
|
||||
|
||||
D_8082A11C = 0;
|
||||
AudioOcarina_SetInstrument(1);
|
||||
func_800ECC04((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
pauseCtx->ocarinaStaff->pos = 0;
|
||||
pauseCtx->ocarinaStaff->state = 0xFF;
|
||||
VREG(21) = -62;
|
||||
@@ -216,13 +216,13 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
VREG(24) = -46;
|
||||
VREG(25) = -41;
|
||||
pauseCtx->unk_1E4 = 8;
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
}
|
||||
}
|
||||
} else if (pauseCtx->unk_1E4 == 5) {
|
||||
if ((pauseCtx->stickRelX != 0) || (pauseCtx->stickRelY != 0)) {
|
||||
pauseCtx->unk_1E4 = 0;
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
}
|
||||
} else if (pauseCtx->unk_1E4 == 8) {
|
||||
if (CHECK_BTN_ALL(input->press.button, BTN_A) && (sp216 >= QUEST_SONG_MINUET) &&
|
||||
@@ -292,12 +292,12 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
VREG(24) = -46;
|
||||
VREG(25) = -41;
|
||||
sp216 = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(1);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
pauseCtx->ocarinaSongIdx = gOcarinaSongItemMap[sp216 - QUEST_SONG_MINUET];
|
||||
Audio_OcaSetSongPlayback(pauseCtx->ocarinaSongIdx + 1, 1);
|
||||
AudioOcarina_SetPlaybackSong(pauseCtx->ocarinaSongIdx + 1, 1);
|
||||
pauseCtx->unk_1E4 = 2;
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
pauseCtx->ocarinaStaff->pos = 0;
|
||||
sp216 = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||
KaleidoScope_SetCursorVtx(pauseCtx, sp216 * 4, pauseCtx->questVtx);
|
||||
@@ -533,12 +533,15 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
}
|
||||
|
||||
if (pauseCtx->unk_1E4 == 2) {
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
// Draw ocarina buttons as the song playback progresses
|
||||
// QUEST_QUAD_SONG_NOTE_A1 to QUEST_QUAD_SONG_NOTE_A8
|
||||
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
|
||||
if (pauseCtx->ocarinaStaff->pos != 0) {
|
||||
if (D_8082A11C + 1 == pauseCtx->ocarinaStaff->pos) {
|
||||
D_8082A11C++;
|
||||
D_8082A124[pauseCtx->ocarinaStaff->pos - 1] = pauseCtx->ocarinaStaff->noteIdx;
|
||||
D_8082A124[pauseCtx->ocarinaStaff->pos - 1] = pauseCtx->ocarinaStaff->buttonIndex;
|
||||
}
|
||||
|
||||
for (sp218 = 0, phi_s3 = 0; sp218 < 8; sp218++, phi_s3 += 4, sp21A += 4) {
|
||||
@@ -566,16 +569,16 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, aButtonColor.r, aButtonColor.g, aButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else {
|
||||
if (D_8082A124[sp218] == OCARINA_NOTE_D5) {
|
||||
if (D_8082A124[sp218] == OCARINA_BTN_C_UP) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cUpButtonColor.r, cUpButtonColor.g, cUpButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else if (D_8082A124[sp218] == OCARINA_NOTE_B4) {
|
||||
} else if (D_8082A124[sp218] == OCARINA_BTN_C_LEFT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cLeftButtonColor.r, cLeftButtonColor.g,
|
||||
cLeftButtonColor.b, Notes_alpha);
|
||||
} else if (D_8082A124[sp218] == OCARINA_NOTE_A4) {
|
||||
} else if (D_8082A124[sp218] == OCARINA_BTN_C_RIGHT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cRightButtonColor.r, cRightButtonColor.g,
|
||||
cRightButtonColor.b, Notes_alpha);
|
||||
} else if (D_8082A124[sp218] == OCARINA_NOTE_F4) {
|
||||
} else if (D_8082A124[sp218] == OCARINA_BTN_C_DOWN) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cDownButtonColor.r, cDownButtonColor.g,
|
||||
cDownButtonColor.b, Notes_alpha);
|
||||
} else {
|
||||
@@ -595,12 +598,14 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
}
|
||||
}
|
||||
} else if (((pauseCtx->unk_1E4 >= 4) && (pauseCtx->unk_1E4 <= 6)) || (pauseCtx->unk_1E4 == 8)) {
|
||||
// Draw the buttons for playing a song
|
||||
// QUEST_QUAD_SONG_NOTE_A1 to QUEST_QUAD_SONG_NOTE_A8
|
||||
sp224 = pauseCtx->ocarinaSongIdx;
|
||||
sp226 = gOcarinaSongNotes[sp224].len;
|
||||
sp226 = gOcarinaSongButtons[sp224].numButtons;
|
||||
|
||||
for (sp218 = sp21A, phi_s3 = 0; phi_s3 < sp226; phi_s3++, sp21A += 4) {
|
||||
pauseCtx->questVtx[sp21A + 0].v.ob[1] = pauseCtx->questVtx[sp21A + 1].v.ob[1] =
|
||||
VREG(21 + gOcarinaSongNotes[sp224].notesIdx[phi_s3]);
|
||||
VREG(21 + gOcarinaSongButtons[sp224].buttonsIndex[phi_s3]);
|
||||
|
||||
pauseCtx->questVtx[sp21A + 2].v.ob[1] = pauseCtx->questVtx[sp21A + 3].v.ob[1] =
|
||||
pauseCtx->questVtx[sp21A + 0].v.ob[1] - 12;
|
||||
@@ -609,20 +614,20 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
|
||||
if (pauseCtx->unk_1E4 == 8) {
|
||||
s16 Notes_alpha = 200;
|
||||
if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == 0) {
|
||||
if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == 0) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, aButtonColor.r, aButtonColor.g, aButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else {
|
||||
if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_D5) {
|
||||
if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_UP) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cUpButtonColor.r, cUpButtonColor.g, cUpButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_B4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_LEFT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cLeftButtonColor.r, cLeftButtonColor.g,
|
||||
cLeftButtonColor.b, Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_A4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_RIGHT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cRightButtonColor.r, cRightButtonColor.g,
|
||||
cRightButtonColor.b, Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_F4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_DOWN) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cDownButtonColor.r, cDownButtonColor.g,
|
||||
cDownButtonColor.b, Notes_alpha);
|
||||
} else {
|
||||
@@ -638,21 +643,21 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
|
||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->questVtx[sp21A], 4, 0);
|
||||
|
||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_8082A130[gOcarinaSongNotes[sp224].notesIdx[phi_s3]], G_IM_FMT_IA,
|
||||
G_IM_SIZ_8b, 16, 16, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_8082A130[gOcarinaSongButtons[sp224].buttonsIndex[phi_s3]],
|
||||
G_IM_FMT_IA, G_IM_SIZ_8b, 16, 16, 0, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
||||
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
||||
}
|
||||
|
||||
if (pauseCtx->unk_1E4 != 8) {
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
|
||||
if (pauseCtx->ocarinaStaff->pos != 0) {
|
||||
if (D_8082A11C == (pauseCtx->ocarinaStaff->pos - 1)) {
|
||||
if ((pauseCtx->ocarinaStaff->noteIdx >= OCARINA_NOTE_D4) &&
|
||||
(pauseCtx->ocarinaStaff->noteIdx <= OCARINA_NOTE_D5)) {
|
||||
D_8082A124[pauseCtx->ocarinaStaff->pos - 1] = pauseCtx->ocarinaStaff->noteIdx;
|
||||
if ((pauseCtx->ocarinaStaff->buttonIndex >= OCARINA_BTN_A) &&
|
||||
(pauseCtx->ocarinaStaff->buttonIndex <= OCARINA_BTN_C_UP)) {
|
||||
D_8082A124[pauseCtx->ocarinaStaff->pos - 1] = pauseCtx->ocarinaStaff->buttonIndex;
|
||||
D_8082A124[pauseCtx->ocarinaStaff->pos] = 0xFF;
|
||||
D_8082A11C++;
|
||||
}
|
||||
@@ -685,16 +690,16 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, aButtonColor.r, aButtonColor.g, aButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else {
|
||||
if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_D5) {
|
||||
if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_UP) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cUpButtonColor.r, cUpButtonColor.g, cUpButtonColor.b,
|
||||
Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_B4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_LEFT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cLeftButtonColor.r, cLeftButtonColor.g,
|
||||
cLeftButtonColor.b, Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_A4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_RIGHT) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cRightButtonColor.r, cRightButtonColor.g,
|
||||
cRightButtonColor.b, Notes_alpha);
|
||||
} else if (gOcarinaSongNotes[sp224].notesIdx[phi_s3] == OCARINA_NOTE_F4) {
|
||||
} else if (gOcarinaSongButtons[sp224].buttonsIndex[phi_s3] == OCARINA_BTN_C_DOWN) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, cDownButtonColor.r, cDownButtonColor.g,
|
||||
cDownButtonColor.b, Notes_alpha);
|
||||
} else {
|
||||
@@ -721,9 +726,9 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
||||
}
|
||||
|
||||
D_8082A11C = 0;
|
||||
AudioOcarina_SetInstrument(1);
|
||||
func_800ECC04((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_Start((1 << pauseCtx->ocarinaSongIdx) + 0x8000);
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
pauseCtx->ocarinaStaff->pos = 0;
|
||||
pauseCtx->ocarinaStaff->state = 0xFE;
|
||||
pauseCtx->unk_1E4 = 5;
|
||||
|
||||
@@ -4291,10 +4291,10 @@ void KaleidoScope_Update(PlayState* play) {
|
||||
break;
|
||||
|
||||
case 2:
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetDisplayingStaff();
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlaybackStaff();
|
||||
if (pauseCtx->ocarinaStaff->state == 0) {
|
||||
pauseCtx->unk_1E4 = 4;
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -4306,10 +4306,10 @@ void KaleidoScope_Update(PlayState* play) {
|
||||
break;
|
||||
|
||||
case 5:
|
||||
pauseCtx->ocarinaStaff = Audio_OcaGetPlayingStaff();
|
||||
pauseCtx->ocarinaStaff = AudioOcarina_GetPlayingStaff();
|
||||
|
||||
if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||
pauseCtx->state = 0x12;
|
||||
WREG(2) = -6240;
|
||||
@@ -4317,7 +4317,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||
pauseCtx->unk_1E4 = 0;
|
||||
break;
|
||||
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
pauseCtx->unk_1E4 = 0;
|
||||
pauseCtx->mode = 0;
|
||||
pauseCtx->promptChoice = 0;
|
||||
@@ -4352,7 +4352,7 @@ void KaleidoScope_Update(PlayState* play) {
|
||||
if (D_8082B25C == 0) {
|
||||
pauseCtx->unk_1E4 = D_8082B258;
|
||||
if (pauseCtx->unk_1E4 == 0) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -4362,14 +4362,14 @@ void KaleidoScope_Update(PlayState* play) {
|
||||
|
||||
case 8:
|
||||
if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||
pauseCtx->state = 0x12;
|
||||
WREG(2) = -6240;
|
||||
func_800F64E0(0);
|
||||
pauseCtx->unk_1E4 = 0;
|
||||
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
||||
AudioOcarina_SetInstrument(0);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
pauseCtx->unk_1E4 = 0;
|
||||
pauseCtx->mode = 0;
|
||||
pauseCtx->promptChoice = 0;
|
||||
|
||||
Reference in New Issue
Block a user