diff options
| author | mckinlee <mckinlee@ymail.com> | 2026-03-19 21:41:24 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-19 21:41:24 -0400 |
| commit | cfd5cc483ae2da52ccc8e00082ef2f8e3d969863 (patch) | |
| tree | 7f949e637b9627975e6e08bfdec8bbfb32df5565 /mm/src/code/z_message.c | |
| parent | f7ccda83aab44cf532798aba306b2cf12a3ea8fb (diff) | |
[Enhancement] Song Items (#1566)
* equip songs
* feedback
Diffstat (limited to 'mm/src/code/z_message.c')
| -rw-r--r-- | mm/src/code/z_message.c | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/mm/src/code/z_message.c b/mm/src/code/z_message.c index 04efc6f8c..1e0a6eed6 100644 --- a/mm/src/code/z_message.c +++ b/mm/src/code/z_message.c @@ -4298,6 +4298,10 @@ void Message_DrawOcarinaButtons(PlayState* play, Gfx** gfxP) { } void Message_DrawText(PlayState* play, Gfx** gfxP) { + if (!GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + return; + } + if ((gSaveContext.options.language == LANGUAGE_JPN) && !play->msgCtx.textIsCredits) { Message_DrawTextDefault(play, gfxP); } else if (play->msgCtx.textIsCredits) { @@ -4424,7 +4428,9 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) { (((msgCtx->msgMode >= MSGMODE_TEXT_BOX_GROWING) && (msgCtx->msgMode <= MSGMODE_TEXT_DONE)) || ((msgCtx->msgMode >= MSGMODE_NEW_CYCLE_0) && (msgCtx->msgMode <= MSGMODE_OWL_SAVE_2))) && (D_801CFC78[msgCtx->textBoxType] != 0xE)) { - Message_DrawTextBox(play, &gfx); + if (GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + Message_DrawTextBox(play, &gfx); + } } } } @@ -4495,8 +4501,10 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) { case MSGMODE_TEXT_AWAIT_INPUT: case MSGMODE_TEXT_AWAIT_NEXT: Message_DrawText(play, &gfx); - Message_DrawTextboxIcon(play, &gfx, 158, - (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + if (GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + Message_DrawTextboxIcon(play, &gfx, 158, + (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + } break; case MSGMODE_OCARINA_STARTING: @@ -4611,6 +4619,8 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) { msgCtx->songPlayed = msgCtx->ocarinaStaff->state; + GameInteractor_Should(VB_OVERRIDE_OCARINA_STAFF_STATE, false, msgCtx->ocarinaStaff); + bool vanillaOwnedSongCheck = (msgCtx->ocarinaStaff->state == OCARINA_SONG_SCARECROW_SPAWN) || (msgCtx->ocarinaStaff->state == OCARINA_SONG_INVERTED_TIME) || (msgCtx->ocarinaStaff->state == OCARINA_SONG_DOUBLE_TIME) || @@ -5317,13 +5327,17 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) { case TEXTBOX_ENDTYPE_INPUT_BANK: case TEXTBOX_ENDTYPE_INPUT_DOGGY_RACETRACK_BET: default: - Message_DrawTextboxIcon(play, &gfx, 158, - (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + if (GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + Message_DrawTextboxIcon(play, &gfx, 158, + (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + } break; case TEXTBOX_ENDTYPE_EVENT2: - Message_DrawTextboxIcon(play, &gfx, 158, - (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + if (GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + Message_DrawTextboxIcon(play, &gfx, 158, + (s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget)); + } break; } break; @@ -5354,7 +5368,10 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) { break; } } - Message_DrawOcarinaButtons(play, &gfx); + if (GameInteractor_Should(VB_DRAW_OCARINA_STAFF, true)) { + Message_DrawOcarinaButtons(play, &gfx); + } + *gfxP = gfx; } |
