mirror of https://github.com/zeldaret/mm.git
Document textbox types, backgrounds and two related global array variables (#1835)
* Document `D_801CFC78`, `func_80150A84` and textbox types * Format * Textbox background enum * More enum usages * Rename D_801D03A8 * Fix value of TEXTBOX_BG_NONE * Convert background type enum to macros * Restore enum, fix BSS ordering * Rename to SetTextboxColor * More BSS fixing
This commit is contained in:
parent
f973883b06
commit
f6b17e2358
|
|
@ -15,25 +15,34 @@ struct OcarinaStaff;
|
|||
struct PlayState;
|
||||
|
||||
typedef enum TextBoxType {
|
||||
/* 0x00 */ TEXTBOX_TYPE_0,
|
||||
/* 0x01 */ TEXTBOX_TYPE_1,
|
||||
/* 0x02 */ TEXTBOX_TYPE_2,
|
||||
/* 0x03 */ TEXTBOX_TYPE_3,
|
||||
/* 0x00 */ TEXTBOX_TYPE_BLACK,
|
||||
/* 0x01 */ TEXTBOX_TYPE_WOODEN,
|
||||
/* 0x02 */ TEXTBOX_TYPE_BLUE_FADED,
|
||||
/* 0x03 */ TEXTBOX_TYPE_OCARINA,
|
||||
/* 0x04 */ TEXTBOX_TYPE_4,
|
||||
/* 0x05 */ TEXTBOX_TYPE_5,
|
||||
/* 0x06 */ TEXTBOX_TYPE_6,
|
||||
/* 0x07 */ TEXTBOX_TYPE_7,
|
||||
/* 0x08 */ TEXTBOX_TYPE_8,
|
||||
/* 0x09 */ TEXTBOX_TYPE_9,
|
||||
/* 0x05 */ TEXTBOX_TYPE_CLEAR,
|
||||
/* 0x06 */ TEXTBOX_TYPE_DISPLAY_ALL,
|
||||
/* 0x07 */ TEXTBOX_TYPE_CLEAR_DISPLAY_ALL,
|
||||
/* 0x08 */ TEXTBOX_TYPE_BLUE,
|
||||
/* 0x09 */ TEXTBOX_TYPE_PAUSE_INFO,
|
||||
/* 0x0A */ TEXTBOX_TYPE_A,
|
||||
/* 0x0B */ TEXTBOX_TYPE_B,
|
||||
/* 0x0C */ TEXTBOX_TYPE_C,
|
||||
/* 0x0D */ TEXTBOX_TYPE_D,
|
||||
/* 0x0E */ TEXTBOX_TYPE_E,
|
||||
/* 0x0C */ TEXTBOX_TYPE_TITLE_CARD,
|
||||
/* 0x0D */ TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION,
|
||||
/* 0x0E */ TEXTBOX_TYPE_OCARINA_FREE_PLAY,
|
||||
/* 0x0F */ TEXTBOX_TYPE_F,
|
||||
/* 0x10 */ TEXTBOX_TYPE_MAX
|
||||
} TextBoxType;
|
||||
|
||||
typedef enum TextBoxBackground {
|
||||
/* 0x0 */ TEXTBOX_BG_DEFAULT,
|
||||
/* 0x1 */ TEXTBOX_BG_WOODEN,
|
||||
/* 0x2 */ TEXTBOX_BG_OCARINA,
|
||||
/* 0x3 */ TEXTBOX_BG_FADED,
|
||||
/* 0x4 */ TEXTBOX_BG_NOTEBOOK,
|
||||
/* 0xE */ TEXTBOX_BG_NONE = 14,
|
||||
} TextBoxBackground;
|
||||
|
||||
#define TEXTBOX_ENDTYPE_DEFAULT 0x00
|
||||
|
||||
#define TEXTBOX_ENDTYPE_TWO_CHOICE 0x10
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@
|
|||
|
||||
#include "z64olib.h"
|
||||
|
||||
#pragma increment_block_number "n64-us:128"
|
||||
|
||||
CutsceneCamera* sCurCsCamera;
|
||||
|
||||
typedef s16 (*CsCamInterpolateCallback)(Vec3f*, f32*, s16*, CsCmdCamPoint*, CsCmdCamMisc*, CutsceneCameraInterp*);
|
||||
|
|
|
|||
|
|
@ -57,6 +57,8 @@
|
|||
|
||||
#include "overlays/actors/ovl_En_Horse/z_en_horse.h"
|
||||
|
||||
#pragma increment_block_number "n64-us:128"
|
||||
|
||||
void func_800DDFE0(Camera* camera);
|
||||
s32 Camera_ChangeMode(Camera* camera, s16 mode);
|
||||
s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags);
|
||||
|
|
|
|||
|
|
@ -74,23 +74,23 @@ MessageTableEntry sMessageTableCredits[] = {
|
|||
|
||||
#undef DEFINE_MESSAGE
|
||||
|
||||
s16 D_801CFC78[TEXTBOX_TYPE_MAX] = {
|
||||
0, // TEXTBOX_TYPE_0
|
||||
1, // TEXTBOX_TYPE_1
|
||||
3, // TEXTBOX_TYPE_2
|
||||
2, // TEXTBOX_TYPE_3
|
||||
14, // TEXTBOX_TYPE_4
|
||||
14, // TEXTBOX_TYPE_5
|
||||
0, // TEXTBOX_TYPE_6
|
||||
14, // TEXTBOX_TYPE_7
|
||||
0, // TEXTBOX_TYPE_8
|
||||
0, // TEXTBOX_TYPE_9
|
||||
0, // TEXTBOX_TYPE_A
|
||||
14, // TEXTBOX_TYPE_B
|
||||
14, // TEXTBOX_TYPE_C
|
||||
4, // TEXTBOX_TYPE_D
|
||||
14, // TEXTBOX_TYPE_E
|
||||
0, // TEXTBOX_TYPE_F
|
||||
s16 gTextBoxBackgroundTypes[TEXTBOX_TYPE_MAX] = {
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_BLACK
|
||||
TEXTBOX_BG_WOODEN, // TEXTBOX_TYPE_WOODEN
|
||||
TEXTBOX_BG_FADED, // TEXTBOX_TYPE_BLUE_FADED
|
||||
TEXTBOX_BG_OCARINA, // TEXTBOX_TYPE_OCARINA
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_4
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_CLEAR
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_BLUE
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_A
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_B
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_TITLE_CARD
|
||||
TEXTBOX_BG_NOTEBOOK, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
TEXTBOX_BG_NONE, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
TEXTBOX_BG_DEFAULT, // TEXTBOX_TYPE_F
|
||||
};
|
||||
u8 sOcarinaButtonIndexBuf[12] = { 0 };
|
||||
s16 sOcarinaButtonAlphaValues[9] = { 0 };
|
||||
|
|
@ -748,7 +748,7 @@ void Message_DrawTextChar(PlayState* play, TexturePtr texture, Gfx** gfxP) {
|
|||
gDPLoadTextureBlock_4b(gfx++, texture, G_IM_FMT_I, 16, 16, 0, G_TX_NOMIRROR | G_TX_CLAMP,
|
||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_5) && (msgCtx->textBoxType != TEXTBOX_TYPE_D) &&
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_CLEAR) && (msgCtx->textBoxType != TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) &&
|
||||
!play->pauseCtx.bombersNotebookOpen) {
|
||||
gDPSetPrimColor(gfx++, 0, 0, 0, 0, 0, msgCtx->textColorAlpha);
|
||||
gSPTextureRectangle(gfx++, (x + 1) << 2, (y + 1) << 2, (x + sCharTexSize + 1) << 2, (y + sCharTexSize + 1) << 2,
|
||||
|
|
@ -1112,9 +1112,9 @@ void Message_DrawTextDefault(PlayState* play, Gfx** gfxP) {
|
|||
|
||||
switch (character) {
|
||||
case 0x2000:
|
||||
if (play->pauseCtx.bombersNotebookOpen || (msgCtx->textBoxType == TEXTBOX_TYPE_D)) {
|
||||
if (play->pauseCtx.bombersNotebookOpen || (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION)) {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 0;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_5) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_CLEAR) {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 0;
|
||||
} else {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 255;
|
||||
|
|
@ -1166,11 +1166,11 @@ void Message_DrawTextDefault(PlayState* play, Gfx** gfxP) {
|
|||
msgCtx->textColorR = sColorsBombersNotebookJPN[(s16)(character - 0x2001)].r;
|
||||
msgCtx->textColorG = sColorsBombersNotebookJPN[(s16)(character - 0x2001)].g;
|
||||
msgCtx->textColorB = sColorsBombersNotebookJPN[(s16)(character - 0x2001)].b;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_1) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) {
|
||||
msgCtx->textColorR = D_801CFE74[(s16)(character - 0x2001)].r;
|
||||
msgCtx->textColorG = D_801CFE74[(s16)(character - 0x2001)].g;
|
||||
msgCtx->textColorB = D_801CFE74[(s16)(character - 0x2001)].b;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_D) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) {
|
||||
msgCtx->textColorR = D_801CFF04[(s16)(character - 0x2001)].r;
|
||||
msgCtx->textColorG = D_801CFF04[(s16)(character - 0x2001)].g;
|
||||
msgCtx->textColorB = D_801CFF04[(s16)(character - 0x2001)].b;
|
||||
|
|
@ -1429,7 +1429,7 @@ void Message_DrawTextDefault(PlayState* play, Gfx** gfxP) {
|
|||
case 0x240:
|
||||
case 0x500:
|
||||
if (msgCtx->msgMode == MSGMODE_TEXT_DISPLAYING) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
Message_HandleOcarina(play);
|
||||
*gfxP = gfx;
|
||||
return;
|
||||
|
|
@ -2226,7 +2226,7 @@ void Message_Decode(PlayState* play) {
|
|||
}
|
||||
spC0 = 0.0f;
|
||||
if (curChar == 0xB) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_3) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_OCARINA) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if (numLines < 2) {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + 0x16;
|
||||
} else if (numLines == 2) {
|
||||
|
|
@ -2236,7 +2236,7 @@ void Message_Decode(PlayState* play) {
|
|||
} else {
|
||||
s8 requiredScopeTemp;
|
||||
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_3) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_OCARINA) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if (numLines == 0) {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + 0x16;
|
||||
} else if (numLines == 1) {
|
||||
|
|
@ -2251,10 +2251,11 @@ void Message_Decode(PlayState* play) {
|
|||
}
|
||||
|
||||
msgCtx->decodedTextLen = decodedBufPos;
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_1) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_3) || (msgCtx->textBoxType == TEXTBOX_TYPE_6) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_8) || (msgCtx->textBoxType == TEXTBOX_TYPE_9) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_B) || (msgCtx->unk11F0C == 3)) {
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) || (msgCtx->textBoxType == TEXTBOX_TYPE_BLUE) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) || (msgCtx->textBoxType == TEXTBOX_TYPE_B) ||
|
||||
(msgCtx->unk11F0C == 3)) {
|
||||
msgCtx->textDrawPos = msgCtx->decodedTextLen;
|
||||
}
|
||||
|
||||
|
|
@ -3013,10 +3014,11 @@ void Message_Decode(PlayState* play) {
|
|||
msgCtx->decodedBuffer.wchar[++decodedBufPos] = font->msgBuf.wchar[++msgCtx->msgBufPos] & 0xFF;
|
||||
} else if (curChar == 0x120) {
|
||||
msgCtx->decodedBuffer.wchar[++decodedBufPos] = font->msgBuf.wchar[++msgCtx->msgBufPos];
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_1) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_3) || (msgCtx->textBoxType == TEXTBOX_TYPE_6) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_8) || (msgCtx->textBoxType == TEXTBOX_TYPE_9) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_B) || (msgCtx->unk11F0C == 3)) {
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) || (msgCtx->textBoxType == TEXTBOX_TYPE_BLUE) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) || (msgCtx->textBoxType == TEXTBOX_TYPE_B) ||
|
||||
(msgCtx->unk11F0C == 3)) {
|
||||
Audio_PlaySfx(msgCtx->decodedBuffer.wchar[decodedBufPos]);
|
||||
}
|
||||
} else if (curChar == 0x128) {
|
||||
|
|
@ -3056,29 +3058,29 @@ void Message_Decode(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
void func_80150A84(PlayState* play) {
|
||||
void Message_SetTextboxColor(PlayState* play) {
|
||||
MessageContext* msgCtx = &play->msgCtx;
|
||||
s32 textBoxType = msgCtx->textBoxType;
|
||||
|
||||
if (D_801CFC78[textBoxType] != 14) {
|
||||
DmaMgr_RequestSync(msgCtx->textboxSegment, SEGMENT_ROM_START(message_static) + D_801CFC78[textBoxType] * 0x1000,
|
||||
0x1000);
|
||||
if (gTextBoxBackgroundTypes[textBoxType] != TEXTBOX_BG_NONE) {
|
||||
DmaMgr_RequestSync(msgCtx->textboxSegment,
|
||||
SEGMENT_ROM_START(message_static) + gTextBoxBackgroundTypes[textBoxType] * 0x1000, 0x1000);
|
||||
|
||||
if (!play->pauseCtx.bombersNotebookOpen) {
|
||||
if ((textBoxType == TEXTBOX_TYPE_0) || (textBoxType == TEXTBOX_TYPE_6) || (textBoxType == TEXTBOX_TYPE_A) ||
|
||||
(textBoxType == TEXTBOX_TYPE_B)) {
|
||||
if ((textBoxType == TEXTBOX_TYPE_BLACK) || (textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) ||
|
||||
(textBoxType == TEXTBOX_TYPE_A) || (textBoxType == TEXTBOX_TYPE_B)) {
|
||||
msgCtx->textboxColorRed = 0;
|
||||
msgCtx->textboxColorGreen = 0;
|
||||
msgCtx->textboxColorBlue = 0;
|
||||
} else if (textBoxType == TEXTBOX_TYPE_1) {
|
||||
} else if (textBoxType == TEXTBOX_TYPE_WOODEN) {
|
||||
msgCtx->textboxColorRed = 70;
|
||||
msgCtx->textboxColorGreen = 50;
|
||||
msgCtx->textboxColorBlue = 30;
|
||||
} else if ((textBoxType == TEXTBOX_TYPE_2) || (textBoxType == TEXTBOX_TYPE_8)) {
|
||||
} else if ((textBoxType == TEXTBOX_TYPE_BLUE_FADED) || (textBoxType == TEXTBOX_TYPE_BLUE)) {
|
||||
msgCtx->textboxColorRed = 0;
|
||||
msgCtx->textboxColorGreen = 10;
|
||||
msgCtx->textboxColorBlue = 50;
|
||||
} else if (textBoxType == TEXTBOX_TYPE_D) {
|
||||
} else if (textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) {
|
||||
msgCtx->textboxColorRed = 255;
|
||||
msgCtx->textboxColorGreen = 255;
|
||||
msgCtx->textboxColorBlue = 195;
|
||||
|
|
@ -3088,11 +3090,11 @@ void func_80150A84(PlayState* play) {
|
|||
msgCtx->textboxColorBlue = 0;
|
||||
}
|
||||
|
||||
if (textBoxType == TEXTBOX_TYPE_1) {
|
||||
if (textBoxType == TEXTBOX_TYPE_WOODEN) {
|
||||
msgCtx->textboxColorAlphaTarget = 230;
|
||||
} else if (textBoxType == TEXTBOX_TYPE_3) {
|
||||
} else if (textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
msgCtx->textboxColorAlphaTarget = 180;
|
||||
} else if (textBoxType == TEXTBOX_TYPE_D) {
|
||||
} else if (textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) {
|
||||
msgCtx->textboxColorAlphaTarget = 220;
|
||||
} else {
|
||||
msgCtx->textboxColorAlphaTarget = 170;
|
||||
|
|
@ -3223,7 +3225,7 @@ void Message_OpenText(PlayState* play, u16 textId) {
|
|||
}
|
||||
msgCtx->itemId = 0xFE;
|
||||
|
||||
if ((msgCtx->textBoxType == TEXTBOX_TYPE_5) || (msgCtx->textBoxType == TEXTBOX_TYPE_D) ||
|
||||
if ((msgCtx->textBoxType == TEXTBOX_TYPE_CLEAR) || (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) ||
|
||||
(play->pauseCtx.bombersNotebookOpen)) {
|
||||
msgCtx->unk120CE = msgCtx->unk120D0 = msgCtx->unk120D2 = 0;
|
||||
} else {
|
||||
|
|
@ -3304,11 +3306,12 @@ void Message_PauseMenu_ShowDescription(PlayState* play, u16 textId, u8 textBoxPo
|
|||
msgCtx->decodedTextLen = 0;
|
||||
msgCtx->unk11F08 = font->msgBuf.wchar[msgCtx->msgBufPos];
|
||||
msgCtx->unk11F18 = (msgCtx->unk11F08 & 0xF000) >> 0xC;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_9;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_PAUSE_INFO;
|
||||
msgCtx->textBoxPos = textBoxPos;
|
||||
msgCtx->unk11F0C = msgCtx->unk11F08 & 0xF;
|
||||
msgCtx->textUnskippable = true;
|
||||
DmaMgr_RequestSync(msgCtx->textboxSegment, SEGMENT_ROM_START(message_static) + (D_801CFC78[0] * 0x1000), 0x1000);
|
||||
DmaMgr_RequestSync(msgCtx->textboxSegment,
|
||||
SEGMENT_ROM_START(message_static) + (gTextBoxBackgroundTypes[0] * 0x1000), 0x1000);
|
||||
msgCtx->textboxColorRed = 0;
|
||||
msgCtx->textboxColorGreen = 0;
|
||||
msgCtx->textboxColorBlue = 0;
|
||||
|
|
@ -3342,7 +3345,7 @@ void Message_ContinueTextbox(PlayState* play, u16 textId) {
|
|||
|
||||
msgCtx->msgLength = 0;
|
||||
Message_OpenText(play, textId);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
msgCtx->msgMode = MSGMODE_TEXT_CONTINUING;
|
||||
msgCtx->stateTimer = 8;
|
||||
msgCtx->textDelayTimer = 0;
|
||||
|
|
@ -3369,7 +3372,7 @@ void Message_DisplaySceneTitleCard(PlayState* play, u16 textId) {
|
|||
|
||||
msgCtx->msgLength = 0;
|
||||
Message_OpenText(play, textId);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
Message_DecodeNES(play);
|
||||
msgCtx->msgMode = MSGMODE_SCENE_TITLE_CARD_FADE_IN_BACKGROUND;
|
||||
msgCtx->textDelayTimer = 0;
|
||||
|
|
@ -3523,40 +3526,40 @@ void Message_DisplayOcarinaStaffImpl(PlayState* play, u16 ocarinaAction) {
|
|||
if ((ocarinaAction >= OCARINA_ACTION_TIMED_PROMPT_SONATA) &&
|
||||
(ocarinaAction <= OCARINA_ACTION_TIMED_PROMPT_STORMS)) {
|
||||
Message_OpenText(play, 0x1B59);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else if ((ocarinaAction == OCARINA_ACTION_3B) || (ocarinaAction == OCARINA_ACTION_3C)) {
|
||||
noStop = true;
|
||||
Message_OpenText(play, D_801D028C[ocarinaAction - 0x29]);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else if ((ocarinaAction >= OCARINA_ACTION_DEMONSTRATE_EVAN_PART1_FIRST_HALF) &&
|
||||
(ocarinaAction <= OCARINA_ACTION_PROMPT_EVAN_PART2_SECOND_HALF)) {
|
||||
noStop = true;
|
||||
Message_OpenText(play, D_801D028C[ocarinaAction - 0x29]);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else if ((ocarinaAction >= OCARINA_ACTION_PROMPT_WIND_FISH_HUMAN) &&
|
||||
(ocarinaAction <= OCARINA_ACTION_PROMPT_WIND_FISH_DEKU)) {
|
||||
noStop = true;
|
||||
Message_OpenText(play, 0x1B59);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else if ((ocarinaAction == OCARINA_ACTION_FREE_PLAY) || (ocarinaAction >= OCARINA_ACTION_CHECK_TIME)) {
|
||||
if ((ocarinaAction >= OCARINA_ACTION_CHECK_TIME) && (ocarinaAction <= OCARINA_ACTION_CHECK_STORMS)) {
|
||||
Audio_PlaySfx(NA_SE_SY_TRE_BOX_APPEAR);
|
||||
}
|
||||
if (ocarinaAction == OCARINA_ACTION_SCARECROW_SPAWN_DEMONSTRATION) {
|
||||
Message_OpenText(play, 0x1B5B);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else {
|
||||
Message_OpenText(play, 0x1B5A);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
}
|
||||
} else {
|
||||
noStop = true;
|
||||
if (ocarinaAction >= OCARINA_ACTION_PROMPT_SONATA) {
|
||||
Message_OpenText(play, 0x1B59);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
} else {
|
||||
Message_OpenText(play, D_801D028C[ocarinaAction]);
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3586,12 +3589,12 @@ void Message_DisplayOcarinaStaffImpl(PlayState* play, u16 ocarinaAction) {
|
|||
|
||||
if ((ocarinaAction == OCARINA_ACTION_FREE_PLAY) || (ocarinaAction == OCARINA_ACTION_CHECK_NOTIME)) {
|
||||
msgCtx->msgMode = MSGMODE_OCARINA_STARTING;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_E;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA_FREE_PLAY;
|
||||
} else if (ocarinaAction == OCARINA_ACTION_3A) {
|
||||
msgCtx->msgMode = MSGMODE_32;
|
||||
} else if (ocarinaAction == OCARINA_ACTION_37) {
|
||||
msgCtx->msgMode = MSGMODE_2F;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_2;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_BLUE_FADED;
|
||||
} else if (ocarinaAction == OCARINA_ACTION_SCARECROW_LONG_DEMONSTRATION) {
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_DEFAULT);
|
||||
|
|
@ -3702,10 +3705,10 @@ void Message_DrawTextBox(PlayState* play, Gfx** gfxP) {
|
|||
|
||||
gDPPipeSync(gfx++);
|
||||
|
||||
if (((u32)msgCtx->textBoxType == TEXTBOX_TYPE_0) || (msgCtx->textBoxType == TEXTBOX_TYPE_2) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_9) || (msgCtx->textBoxType == TEXTBOX_TYPE_A)) {
|
||||
if (((u32)msgCtx->textBoxType == TEXTBOX_TYPE_BLACK) || (msgCtx->textBoxType == TEXTBOX_TYPE_BLUE_FADED) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) || (msgCtx->textBoxType == TEXTBOX_TYPE_A)) {
|
||||
gDPSetRenderMode(gfx++, G_RM_CLD_SURF, G_RM_CLD_SURF2);
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
gDPSetAlphaCompare(gfx++, G_AC_THRESHOLD);
|
||||
gDPSetRenderMode(gfx++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
}
|
||||
|
|
@ -3713,17 +3716,17 @@ void Message_DrawTextBox(PlayState* play, Gfx** gfxP) {
|
|||
gDPSetPrimColor(gfx++, 0, 0, msgCtx->textboxColorRed, msgCtx->textboxColorGreen, msgCtx->textboxColorBlue,
|
||||
msgCtx->textboxColorAlphaCurrent);
|
||||
|
||||
if (((u32)msgCtx->textBoxType == TEXTBOX_TYPE_0) || (msgCtx->textBoxType == TEXTBOX_TYPE_2) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_6) || (msgCtx->textBoxType == TEXTBOX_TYPE_8) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_9) || (msgCtx->textBoxType == TEXTBOX_TYPE_A)) {
|
||||
if (((u32)msgCtx->textBoxType == TEXTBOX_TYPE_BLACK) || (msgCtx->textBoxType == TEXTBOX_TYPE_BLUE_FADED) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) || (msgCtx->textBoxType == TEXTBOX_TYPE_BLUE) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) || (msgCtx->textBoxType == TEXTBOX_TYPE_A)) {
|
||||
gDPLoadTextureBlock_4b(gfx++, msgCtx->textboxSegment, G_IM_FMT_I, 128, 64, 0, G_TX_MIRROR | G_TX_WRAP,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, 7, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
} else {
|
||||
gDPPipeSync(gfx++);
|
||||
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
gDPSetEnvColor(gfx++, 0, 0, 0, 255);
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_D) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) {
|
||||
gDPSetEnvColor(gfx++, 20, 0, 10, 255);
|
||||
} else {
|
||||
gDPSetEnvColor(gfx++, 50, 20, 0, 255);
|
||||
|
|
@ -3743,7 +3746,7 @@ void Message_DrawTextBox(PlayState* play, Gfx** gfxP) {
|
|||
}
|
||||
|
||||
// Draw treble clef
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
gDPPipeSync(gfx++);
|
||||
gDPSetCombineLERP(gfx++, 1, 0, PRIMITIVE, 0, TEXEL0, 0, PRIMITIVE, 0, 1, 0, PRIMITIVE, 0, TEXEL0, 0, PRIMITIVE,
|
||||
0);
|
||||
|
|
@ -4151,22 +4154,22 @@ u8 sPlayerFormOcarinaInstruments[] = {
|
|||
OCARINA_INSTRUMENT_DEKU_PIPES,
|
||||
};
|
||||
|
||||
s16 D_801D03A8[TEXTBOX_TYPE_MAX] = {
|
||||
0x3B, // TEXTBOX_TYPE_0
|
||||
0x3B, // TEXTBOX_TYPE_1
|
||||
0x3B, // TEXTBOX_TYPE_2
|
||||
0x3B, // TEXTBOX_TYPE_3
|
||||
s16 gTextBoxNextIconYOffsets[TEXTBOX_TYPE_MAX] = {
|
||||
0x3B, // TEXTBOX_TYPE_BLACK
|
||||
0x3B, // TEXTBOX_TYPE_WOODEN
|
||||
0x3B, // TEXTBOX_TYPE_BLUE_FADED
|
||||
0x3B, // TEXTBOX_TYPE_OCARINA
|
||||
0x22, // TEXTBOX_TYPE_4
|
||||
0x3B, // TEXTBOX_TYPE_5
|
||||
0x3B, // TEXTBOX_TYPE_6
|
||||
0x3B, // TEXTBOX_TYPE_7
|
||||
0x3B, // TEXTBOX_TYPE_8
|
||||
0x3B, // TEXTBOX_TYPE_9
|
||||
0x3B, // TEXTBOX_TYPE_CLEAR
|
||||
0x3B, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
0x3B, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
0x3B, // TEXTBOX_TYPE_BLUE
|
||||
0x3B, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
0x3B, // TEXTBOX_TYPE_A
|
||||
0x3B, // TEXTBOX_TYPE_B
|
||||
0x3B, // TEXTBOX_TYPE_C
|
||||
0x3B, // TEXTBOX_TYPE_D
|
||||
0x3B, // TEXTBOX_TYPE_E
|
||||
0x3B, // TEXTBOX_TYPE_TITLE_CARD
|
||||
0x3B, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
0x3B, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
0x3B, // TEXTBOX_TYPE_F
|
||||
};
|
||||
|
||||
|
|
@ -4197,7 +4200,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
(msgCtx->msgMode != MSGMODE_40) &&
|
||||
(((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)) {
|
||||
(gTextBoxBackgroundTypes[msgCtx->textBoxType] != TEXTBOX_BG_NONE)) {
|
||||
Message_DrawTextBox(play, &gfx);
|
||||
}
|
||||
}
|
||||
|
|
@ -4270,7 +4273,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
case MSGMODE_TEXT_AWAIT_NEXT:
|
||||
Message_DrawText(play, &gfx);
|
||||
Message_DrawTextboxIcon(play, &gfx, 158,
|
||||
(s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget));
|
||||
(s16)(gTextBoxNextIconYOffsets[msgCtx->textBoxType] + msgCtx->textboxYTarget));
|
||||
break;
|
||||
|
||||
case MSGMODE_OCARINA_STARTING:
|
||||
|
|
@ -4414,7 +4417,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
} else {
|
||||
Message_ContinueTextbox(play, 0x1B5B);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_3;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA;
|
||||
msgCtx->stateTimer = 10;
|
||||
Audio_PlaySfx(NA_SE_SY_TRE_BOX_APPEAR);
|
||||
Interface_SetHudVisibility(HUD_VISIBILITY_NONE);
|
||||
|
|
@ -4428,7 +4431,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
} else {
|
||||
Message_ContinueTextbox(play, 0x1B5B);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_3;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA;
|
||||
msgCtx->stateTimer = 10;
|
||||
Audio_PlaySfx(NA_SE_SY_TRE_BOX_APPEAR);
|
||||
Interface_SetHudVisibility(HUD_VISIBILITY_NONE);
|
||||
|
|
@ -4436,7 +4439,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
} else if (msgCtx->ocarinaAction == OCARINA_ACTION_FREE_PLAY) {
|
||||
Message_ContinueTextbox(play, 0x1B5B);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_3;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA;
|
||||
msgCtx->stateTimer = 10;
|
||||
Audio_PlaySfx(NA_SE_SY_TRE_BOX_APPEAR);
|
||||
} else {
|
||||
|
|
@ -4485,17 +4488,17 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
if (msgCtx->msgMode == MSGMODE_E) {
|
||||
Message_ContinueTextbox(play, 0x1B5B);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_3;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA;
|
||||
msgCtx->stateTimer = 1;
|
||||
} else if (msgCtx->msgMode == MSGMODE_SONG_PROMPT_SUCCESS) {
|
||||
Message_ContinueTextbox(play, 0x1B5B);
|
||||
msgCtx->msgMode = MSGMODE_SONG_PLAYED;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_3;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_OCARINA;
|
||||
msgCtx->stateTimer = 1;
|
||||
} else if (msgCtx->msgMode == MSGMODE_22) {
|
||||
msgCtx->msgMode = MSGMODE_23;
|
||||
play->msgCtx.ocarinaMode = OCARINA_MODE_EVENT;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_0;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_BLACK;
|
||||
} else if (msgCtx->msgMode == MSGMODE_34) {
|
||||
if (msgCtx->songPlayed == OCARINA_SONG_TERMINA_WALL) {
|
||||
Message_CloseTextbox(play);
|
||||
|
|
@ -4766,7 +4769,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
msgCtx->stateTimer--;
|
||||
if (msgCtx->stateTimer == 0) {
|
||||
msgCtx->msgMode = MSGMODE_21;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_0;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_BLACK;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
@ -4975,7 +4978,7 @@ void Message_DrawMain(PlayState* play, Gfx** gfxP) {
|
|||
D_801C6A94 += D_801C6A94;
|
||||
if (D_801C6A94 >= 0x226) {
|
||||
Message_ResetOcarinaButtonAlphas();
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_0;
|
||||
msgCtx->textBoxType = TEXTBOX_TYPE_BLACK;
|
||||
msgCtx->textboxColorRed = msgCtx->textboxColorGreen = msgCtx->textboxColorBlue = 0;
|
||||
msgCtx->stateTimer = 3;
|
||||
msgCtx->msgMode++;
|
||||
|
|
@ -5079,13 +5082,15 @@ 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));
|
||||
Message_DrawTextboxIcon(
|
||||
play, &gfx, 158,
|
||||
(s16)(gTextBoxNextIconYOffsets[msgCtx->textBoxType] + msgCtx->textboxYTarget));
|
||||
break;
|
||||
|
||||
case TEXTBOX_ENDTYPE_EVENT2:
|
||||
Message_DrawTextboxIcon(play, &gfx, 158,
|
||||
(s16)(D_801D03A8[msgCtx->textBoxType] + msgCtx->textboxYTarget));
|
||||
Message_DrawTextboxIcon(
|
||||
play, &gfx, 158,
|
||||
(s16)(gTextBoxNextIconYOffsets[msgCtx->textBoxType] + msgCtx->textboxYTarget));
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
|
@ -5143,78 +5148,78 @@ void Message_Draw(PlayState* play) {
|
|||
}
|
||||
|
||||
s16 sTextboxXPositions[TEXTBOX_TYPE_MAX] = {
|
||||
34, // TEXTBOX_TYPE_0
|
||||
34, // TEXTBOX_TYPE_1
|
||||
34, // TEXTBOX_TYPE_2
|
||||
34, // TEXTBOX_TYPE_3
|
||||
34, // TEXTBOX_TYPE_BLACK
|
||||
34, // TEXTBOX_TYPE_WOODEN
|
||||
34, // TEXTBOX_TYPE_BLUE_FADED
|
||||
34, // TEXTBOX_TYPE_OCARINA
|
||||
34, // TEXTBOX_TYPE_4
|
||||
34, // TEXTBOX_TYPE_5
|
||||
34, // TEXTBOX_TYPE_6
|
||||
34, // TEXTBOX_TYPE_7
|
||||
34, // TEXTBOX_TYPE_8
|
||||
34, // TEXTBOX_TYPE_9
|
||||
34, // TEXTBOX_TYPE_CLEAR
|
||||
34, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
34, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
34, // TEXTBOX_TYPE_BLUE
|
||||
34, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
34, // TEXTBOX_TYPE_A
|
||||
34, // TEXTBOX_TYPE_B
|
||||
34, // TEXTBOX_TYPE_C
|
||||
34, // TEXTBOX_TYPE_D
|
||||
34, // TEXTBOX_TYPE_E
|
||||
34, // TEXTBOX_TYPE_TITLE_CARD
|
||||
34, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
34, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
34, // TEXTBOX_TYPE_F
|
||||
};
|
||||
|
||||
s16 sTextboxLowerYPositions[] = {
|
||||
142, // TEXTBOX_TYPE_0
|
||||
142, // TEXTBOX_TYPE_1
|
||||
142, // TEXTBOX_TYPE_2
|
||||
142, // TEXTBOX_TYPE_3
|
||||
142, // TEXTBOX_TYPE_BLACK
|
||||
142, // TEXTBOX_TYPE_WOODEN
|
||||
142, // TEXTBOX_TYPE_BLUE_FADED
|
||||
142, // TEXTBOX_TYPE_OCARINA
|
||||
174, // TEXTBOX_TYPE_4
|
||||
142, // TEXTBOX_TYPE_5
|
||||
142, // TEXTBOX_TYPE_6
|
||||
142, // TEXTBOX_TYPE_7
|
||||
142, // TEXTBOX_TYPE_8
|
||||
130, // TEXTBOX_TYPE_9
|
||||
142, // TEXTBOX_TYPE_CLEAR
|
||||
142, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
142, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
142, // TEXTBOX_TYPE_BLUE
|
||||
130, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
174, // TEXTBOX_TYPE_A
|
||||
0, // TEXTBOX_TYPE_B
|
||||
142, // TEXTBOX_TYPE_C
|
||||
142, // TEXTBOX_TYPE_D
|
||||
142, // TEXTBOX_TYPE_E
|
||||
142, // TEXTBOX_TYPE_TITLE_CARD
|
||||
142, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
142, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
142, // TEXTBOX_TYPE_F
|
||||
};
|
||||
|
||||
s16 sTextboxUpperYPositions[] = {
|
||||
38, // TEXTBOX_TYPE_0
|
||||
38, // TEXTBOX_TYPE_1
|
||||
38, // TEXTBOX_TYPE_2
|
||||
38, // TEXTBOX_TYPE_3
|
||||
38, // TEXTBOX_TYPE_BLACK
|
||||
38, // TEXTBOX_TYPE_WOODEN
|
||||
38, // TEXTBOX_TYPE_BLUE_FADED
|
||||
38, // TEXTBOX_TYPE_OCARINA
|
||||
174, // TEXTBOX_TYPE_4
|
||||
38, // TEXTBOX_TYPE_5
|
||||
38, // TEXTBOX_TYPE_6
|
||||
38, // TEXTBOX_TYPE_7
|
||||
38, // TEXTBOX_TYPE_8
|
||||
60, // TEXTBOX_TYPE_9
|
||||
38, // TEXTBOX_TYPE_CLEAR
|
||||
38, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
38, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
38, // TEXTBOX_TYPE_BLUE
|
||||
60, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
174, // TEXTBOX_TYPE_A
|
||||
0, // TEXTBOX_TYPE_B
|
||||
38, // TEXTBOX_TYPE_C
|
||||
38, // TEXTBOX_TYPE_D
|
||||
38, // TEXTBOX_TYPE_E
|
||||
38, // TEXTBOX_TYPE_TITLE_CARD
|
||||
38, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
38, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
38, // TEXTBOX_TYPE_F
|
||||
};
|
||||
|
||||
s16 sTextboxMidYPositions[] = {
|
||||
90, // TEXTBOX_TYPE_0
|
||||
90, // TEXTBOX_TYPE_1
|
||||
90, // TEXTBOX_TYPE_2
|
||||
90, // TEXTBOX_TYPE_3
|
||||
90, // TEXTBOX_TYPE_BLACK
|
||||
90, // TEXTBOX_TYPE_WOODEN
|
||||
90, // TEXTBOX_TYPE_BLUE_FADED
|
||||
90, // TEXTBOX_TYPE_OCARINA
|
||||
174, // TEXTBOX_TYPE_4
|
||||
90, // TEXTBOX_TYPE_5
|
||||
90, // TEXTBOX_TYPE_6
|
||||
90, // TEXTBOX_TYPE_7
|
||||
90, // TEXTBOX_TYPE_8
|
||||
90, // TEXTBOX_TYPE_9
|
||||
90, // TEXTBOX_TYPE_CLEAR
|
||||
90, // TEXTBOX_TYPE_DISPLAY_ALL
|
||||
90, // TEXTBOX_TYPE_CLEAR_DISPLAY_ALL
|
||||
90, // TEXTBOX_TYPE_BLUE
|
||||
90, // TEXTBOX_TYPE_PAUSE_INFO
|
||||
174, // TEXTBOX_TYPE_A
|
||||
0, // TEXTBOX_TYPE_B
|
||||
90, // TEXTBOX_TYPE_C
|
||||
90, // TEXTBOX_TYPE_D
|
||||
90, // TEXTBOX_TYPE_E
|
||||
90, // TEXTBOX_TYPE_TITLE_CARD
|
||||
90, // TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION
|
||||
90, // TEXTBOX_TYPE_OCARINA_FREE_PLAY
|
||||
90, // TEXTBOX_TYPE_F
|
||||
};
|
||||
|
||||
|
|
@ -5389,7 +5394,7 @@ void Message_Update(PlayState* play) {
|
|||
msgCtx->choicePosY[2] = (s16)(msgCtx->textboxYTarget + 44);
|
||||
}
|
||||
|
||||
if ((msgCtx->textBoxType == TEXTBOX_TYPE_4) || (msgCtx->textBoxType == TEXTBOX_TYPE_5)) {
|
||||
if ((msgCtx->textBoxType == TEXTBOX_TYPE_4) || (msgCtx->textBoxType == TEXTBOX_TYPE_CLEAR)) {
|
||||
msgCtx->msgMode = MSGMODE_TEXT_STARTING;
|
||||
msgCtx->textboxX = msgCtx->textboxXTarget;
|
||||
msgCtx->textboxY = msgCtx->textboxYTarget;
|
||||
|
|
@ -5406,7 +5411,7 @@ void Message_Update(PlayState* play) {
|
|||
msgCtx->msgMode = MSGMODE_TEXT_BOX_GROWING;
|
||||
|
||||
if (!pauseCtx->itemDescriptionOn) {
|
||||
func_80150A84(play);
|
||||
Message_SetTextboxColor(play);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -454,9 +454,9 @@ void Message_DrawTextNES(PlayState* play, Gfx** gfxP, u16 textDrawPos) {
|
|||
|
||||
switch (character) {
|
||||
case MESSAGE_COLOR_DEFAULT:
|
||||
if (play->pauseCtx.bombersNotebookOpen || (msgCtx->textBoxType == TEXTBOX_TYPE_D)) {
|
||||
if (play->pauseCtx.bombersNotebookOpen || (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION)) {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 0;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_5) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_CLEAR) {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 0;
|
||||
} else {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 255;
|
||||
|
|
@ -512,11 +512,11 @@ void Message_DrawTextNES(PlayState* play, Gfx** gfxP, u16 textDrawPos) {
|
|||
msgCtx->textColorR = sColorsBombersNotebookNES[(s16)(character - 1)].r;
|
||||
msgCtx->textColorG = sColorsBombersNotebookNES[(s16)(character - 1)].g;
|
||||
msgCtx->textColorB = sColorsBombersNotebookNES[(s16)(character - 1)].b;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_1) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) {
|
||||
msgCtx->textColorR = D_801D07DC[(s16)(character - 1)].r;
|
||||
msgCtx->textColorG = D_801D07DC[(s16)(character - 1)].g;
|
||||
msgCtx->textColorB = D_801D07DC[(s16)(character - 1)].b;
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_D) {
|
||||
} else if (msgCtx->textBoxType == TEXTBOX_TYPE_NOTEBOOK_NOTIFICATION) {
|
||||
msgCtx->textColorR = D_801D086C[(s16)(character - 1)].r;
|
||||
msgCtx->textColorG = D_801D086C[(s16)(character - 1)].g;
|
||||
msgCtx->textColorB = D_801D086C[(s16)(character - 1)].b;
|
||||
|
|
@ -813,7 +813,7 @@ void Message_DrawTextNES(PlayState* play, Gfx** gfxP, u16 textDrawPos) {
|
|||
case MESSAGE_CONTINUE:
|
||||
case MESSAGE_END:
|
||||
if (msgCtx->msgMode == MSGMODE_TEXT_DISPLAYING) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
Message_HandleOcarina(play);
|
||||
*gfxP = gfx;
|
||||
return;
|
||||
|
|
@ -1053,7 +1053,7 @@ void Message_DecodeNES(PlayState* play) {
|
|||
(curChar == MESSAGE_END) || (curChar == MESSAGE_CONTINUE) || (curChar == MESSAGE_PERSISTENT)) {
|
||||
msgCtx->msgMode = MSGMODE_TEXT_DISPLAYING;
|
||||
msgCtx->textDrawPos = 1;
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_3) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + 2;
|
||||
} else {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + 8;
|
||||
|
|
@ -1066,7 +1066,7 @@ void Message_DecodeNES(PlayState* play) {
|
|||
spA4 = 0.0f;
|
||||
|
||||
if (curChar == MESSAGE_BOX_BREAK2) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_3) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_OCARINA) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if (numLines < 2) {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + XREG(10);
|
||||
} else if (numLines == 2) {
|
||||
|
|
@ -1076,7 +1076,7 @@ void Message_DecodeNES(PlayState* play) {
|
|||
}
|
||||
}
|
||||
} else {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_3) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if ((msgCtx->textBoxType != TEXTBOX_TYPE_OCARINA) && (msgCtx->textBoxType != TEXTBOX_TYPE_4)) {
|
||||
if (numLines == 0) {
|
||||
msgCtx->unk11FFA = msgCtx->textboxY + XREG(13) + XREG(10);
|
||||
} else if (numLines == 1) {
|
||||
|
|
@ -1101,9 +1101,9 @@ void Message_DecodeNES(PlayState* play) {
|
|||
|
||||
msgCtx->decodedTextLen = decodedBufPos;
|
||||
msgCtx->unk120D8 = numLines;
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_1) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_3) || (msgCtx->textBoxType == TEXTBOX_TYPE_6) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_8) || (msgCtx->textBoxType == TEXTBOX_TYPE_9) ||
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) || (msgCtx->textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_BLUE) || (msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_B) || (msgCtx->unk11F0C == 3)) {
|
||||
msgCtx->textDrawPos = msgCtx->decodedTextLen;
|
||||
}
|
||||
|
|
@ -1934,9 +1934,9 @@ void Message_DecodeNES(PlayState* play) {
|
|||
} else if (curChar == MESSAGE_SFX) {
|
||||
msgCtx->decodedBuffer.schar[++decodedBufPos] = font->msgBuf.schar[++msgCtx->msgBufPos];
|
||||
msgCtx->decodedBuffer.schar[++decodedBufPos] = font->msgBuf.schar[++msgCtx->msgBufPos];
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_1) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_3) || (msgCtx->textBoxType == TEXTBOX_TYPE_6) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_8) || (msgCtx->textBoxType == TEXTBOX_TYPE_9) ||
|
||||
if (msgCtx->textboxSkipped || (msgCtx->textBoxType == TEXTBOX_TYPE_WOODEN) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_OCARINA) || (msgCtx->textBoxType == TEXTBOX_TYPE_DISPLAY_ALL) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_BLUE) || (msgCtx->textBoxType == TEXTBOX_TYPE_PAUSE_INFO) ||
|
||||
(msgCtx->textBoxType == TEXTBOX_TYPE_B) || (msgCtx->unk11F0C == 3)) {
|
||||
sfxHi = msgCtx->decodedBuffer.schar[decodedBufPos - 1] << 8;
|
||||
sfxHi |= msgCtx->decodedBuffer.schar[decodedBufPos];
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ void Message_DrawTextCredits(PlayState* play, Gfx** gfxP) {
|
|||
msgCtx->textPosY = 48;
|
||||
}
|
||||
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_5) {
|
||||
if (msgCtx->textBoxType == TEXTBOX_TYPE_CLEAR) {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 0;
|
||||
} else {
|
||||
msgCtx->textColorR = msgCtx->textColorG = msgCtx->textColorB = 255;
|
||||
|
|
|
|||
|
|
@ -2846,7 +2846,7 @@ Message_DecodeHeader = 0x8014CFDC; // type:func
|
|||
Message_LoadTime = 0x8014D304; // type:func
|
||||
Message_LoadOwlWarpText = 0x8014D62C; // type:func
|
||||
Message_Decode = 0x8014D7B4; // type:func
|
||||
func_80150A84 = 0x80150A84; // type:func
|
||||
Message_SetTextboxColor = 0x80150A84; // type:func
|
||||
Message_OpenText = 0x80150D08; // type:func
|
||||
Message_PauseMenu_ShowDescription = 0x801514B0; // type:func
|
||||
Message_StartTextbox = 0x801518B0; // type:func
|
||||
|
|
|
|||
|
|
@ -1093,7 +1093,7 @@ gBombersNotebookWeekEventFlags = 0x801C6B28; // size:0x70
|
|||
D_801C6B98 = 0x801C6B98; // size:0x81A8
|
||||
D_801CED40 = 0x801CED40; // size:0xDC8
|
||||
D_801CFB08 = 0x801CFB08; // size:0x170
|
||||
D_801CFC78 = 0x801CFC78; // size:0x2
|
||||
gTextBoxBackgroundTypes = 0x801CFC78; // size:0x2
|
||||
D_801CFC7A = 0x801CFC7A; // size:0x2
|
||||
D_801CFC7C = 0x801CFC7C; // size:0x2
|
||||
D_801CFC7E = 0x801CFC7E; // size:0x6
|
||||
|
|
@ -1186,7 +1186,7 @@ D_801D0364 = 0x801D0364; // size:0x14
|
|||
D_801D0378 = 0x801D0378; // size:0x24
|
||||
D_801D039C = 0x801D039C; // size:0x8
|
||||
D_801D03A4 = 0x801D03A4; // size:0x4
|
||||
D_801D03A8 = 0x801D03A8; // size:0x20
|
||||
gTextBoxNextIconYOffsets = 0x801D03A8; // size:0x20
|
||||
D_801D03C8 = 0x801D03C8; // size:0x20
|
||||
D_801D03E8 = 0x801D03E8; // size:0x8
|
||||
D_801D03F0 = 0x801D03F0; // size:0x11
|
||||
|
|
|
|||
|
|
@ -2363,7 +2363,7 @@ asm/non_matchings/code/z_message/Message_DecodeHeader.s,Message_DecodeHeader,0x8
|
|||
asm/non_matchings/code/z_message/Message_LoadTime.s,Message_LoadTime,0x8014D304,0xCA
|
||||
asm/non_matchings/code/z_message/Message_LoadOwlWarpText.s,Message_LoadOwlWarpText,0x8014D62C,0x62
|
||||
asm/non_matchings/code/z_message/Message_Decode.s,Message_Decode,0x8014D7B4,0xCB4
|
||||
asm/non_matchings/code/z_message/func_80150A84.s,func_80150A84,0x80150A84,0xA1
|
||||
asm/non_matchings/code/z_message/Message_SetTextboxColor.s,Message_SetTextboxColor,0x80150A84,0xA1
|
||||
asm/non_matchings/code/z_message/Message_OpenText.s,Message_OpenText,0x80150D08,0x1EA
|
||||
asm/non_matchings/code/z_message/Message_PauseMenu_ShowDescription.s,Message_PauseMenu_ShowDescription,0x801514B0,0x100
|
||||
asm/non_matchings/code/z_message/Message_StartTextbox.s,Message_StartTextbox,0x801518B0,0x22
|
||||
|
|
|
|||
|
Loading…
Reference in New Issue