Use window constants in berry_blender
This commit is contained in:
+46
-41
@@ -106,6 +106,13 @@ enum {
|
|||||||
// Last berry that an NPC can put in
|
// Last berry that an NPC can put in
|
||||||
#define NUM_NPC_BERRIES ITEM_TO_BERRY(ITEM_ASPEAR_BERRY)
|
#define NUM_NPC_BERRIES ITEM_TO_BERRY(ITEM_ASPEAR_BERRY)
|
||||||
|
|
||||||
|
enum {
|
||||||
|
// Windows 0-3 are used implicitly in several loops over BLENDER_MAX_PLAYERS
|
||||||
|
// i.e. window 0 is for player 1, window 1 for player 2, etc.
|
||||||
|
WIN_MSG = BLENDER_MAX_PLAYERS,
|
||||||
|
WIN_RESULTS,
|
||||||
|
};
|
||||||
|
|
||||||
struct BlenderBerry
|
struct BlenderBerry
|
||||||
{
|
{
|
||||||
u16 itemId;
|
u16 itemId;
|
||||||
@@ -200,7 +207,7 @@ static void SpriteCB_ScoreSymbolBest(struct Sprite *);
|
|||||||
static void InitLocalPlayers(u8);
|
static void InitLocalPlayers(u8);
|
||||||
static void CB2_LoadBerryBlender(void);
|
static void CB2_LoadBerryBlender(void);
|
||||||
static void UpdateBlenderCenter(void);
|
static void UpdateBlenderCenter(void);
|
||||||
static bool32 Blender_PrintText(s16 *, const u8 *, s32 );
|
static bool32 PrintMessage(s16 *, const u8 *, s32 );
|
||||||
static void StartBlender(void);
|
static void StartBlender(void);
|
||||||
static void CB2_StartBlenderLink(void);
|
static void CB2_StartBlenderLink(void);
|
||||||
static void CB2_StartBlenderLocal(void);
|
static void CB2_StartBlenderLocal(void);
|
||||||
@@ -332,7 +339,7 @@ static const struct BgTemplate sBgTemplates[3] =
|
|||||||
|
|
||||||
static const struct WindowTemplate sWindowTemplates[] =
|
static const struct WindowTemplate sWindowTemplates[] =
|
||||||
{
|
{
|
||||||
{
|
{ // Player 1
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 1,
|
.tilemapLeft = 1,
|
||||||
.tilemapTop = 6,
|
.tilemapTop = 6,
|
||||||
@@ -341,7 +348,7 @@ static const struct WindowTemplate sWindowTemplates[] =
|
|||||||
.paletteNum = 14,
|
.paletteNum = 14,
|
||||||
.baseBlock = 0x28,
|
.baseBlock = 0x28,
|
||||||
},
|
},
|
||||||
{
|
{ // Player 2
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 22,
|
.tilemapLeft = 22,
|
||||||
.tilemapTop = 6,
|
.tilemapTop = 6,
|
||||||
@@ -350,7 +357,7 @@ static const struct WindowTemplate sWindowTemplates[] =
|
|||||||
.paletteNum = 14,
|
.paletteNum = 14,
|
||||||
.baseBlock = 0x36,
|
.baseBlock = 0x36,
|
||||||
},
|
},
|
||||||
{
|
{ // Player 3
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 1,
|
.tilemapLeft = 1,
|
||||||
.tilemapTop = 12,
|
.tilemapTop = 12,
|
||||||
@@ -359,7 +366,7 @@ static const struct WindowTemplate sWindowTemplates[] =
|
|||||||
.paletteNum = 14,
|
.paletteNum = 14,
|
||||||
.baseBlock = 0x44,
|
.baseBlock = 0x44,
|
||||||
},
|
},
|
||||||
{
|
{ // Player 4
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 22,
|
.tilemapLeft = 22,
|
||||||
.tilemapTop = 12,
|
.tilemapTop = 12,
|
||||||
@@ -368,7 +375,7 @@ static const struct WindowTemplate sWindowTemplates[] =
|
|||||||
.paletteNum = 14,
|
.paletteNum = 14,
|
||||||
.baseBlock = 0x52,
|
.baseBlock = 0x52,
|
||||||
},
|
},
|
||||||
{
|
[WIN_MSG] = {
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 2,
|
.tilemapLeft = 2,
|
||||||
.tilemapTop = 15,
|
.tilemapTop = 15,
|
||||||
@@ -377,7 +384,7 @@ static const struct WindowTemplate sWindowTemplates[] =
|
|||||||
.paletteNum = 14,
|
.paletteNum = 14,
|
||||||
.baseBlock = 0x60,
|
.baseBlock = 0x60,
|
||||||
},
|
},
|
||||||
{
|
[WIN_RESULTS] = {
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.tilemapLeft = 5,
|
.tilemapLeft = 5,
|
||||||
.tilemapTop = 3,
|
.tilemapTop = 3,
|
||||||
@@ -1107,7 +1114,7 @@ static void CB2_LoadBerryBlender(void)
|
|||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, sText_BerryBlenderStart, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, sText_BerryBlenderStart, GetPlayerTextSpeedDelay()))
|
||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
@@ -1337,7 +1344,7 @@ static void CB2_StartBlenderLink(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
Blender_PrintText(&sBerryBlender->textState, sText_CommunicationStandby, 0);
|
PrintMessage(&sBerryBlender->textState, sText_CommunicationStandby, 0);
|
||||||
sBerryBlender->mainState = 8;
|
sBerryBlender->mainState = 8;
|
||||||
sBerryBlender->framesToWait = 0;
|
sBerryBlender->framesToWait = 0;
|
||||||
break;
|
break;
|
||||||
@@ -1363,7 +1370,7 @@ static void CB2_StartBlenderLink(void)
|
|||||||
if (++sBerryBlender->framesToWait > 20)
|
if (++sBerryBlender->framesToWait > 20)
|
||||||
{
|
{
|
||||||
// Wait for partners' berries
|
// Wait for partners' berries
|
||||||
ClearDialogWindowAndFrameToTransparent(4, TRUE);
|
ClearDialogWindowAndFrameToTransparent(WIN_MSG, TRUE);
|
||||||
if (GetBlockReceivedStatus() == GetLinkPlayerCountAsBitFlags())
|
if (GetBlockReceivedStatus() == GetLinkPlayerCountAsBitFlags())
|
||||||
{
|
{
|
||||||
for (i = 0; i < GetLinkPlayerCount(); i++)
|
for (i = 0; i < GetLinkPlayerCount(); i++)
|
||||||
@@ -2664,7 +2671,7 @@ static void CB2_EndBlenderGame(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, sText_WouldLikeToBlendAnotherBerry, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, sText_WouldLikeToBlendAnotherBerry, GetPlayerTextSpeedDelay()))
|
||||||
sBerryBlender->gameEndState++;
|
sBerryBlender->gameEndState++;
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
@@ -2748,7 +2755,7 @@ static void CB2_EndBlenderGame(void)
|
|||||||
sBerryBlender->gameEndState++;
|
sBerryBlender->gameEndState++;
|
||||||
break;
|
break;
|
||||||
case 13:
|
case 13:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, sText_CommunicationStandby, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, sText_CommunicationStandby, GetPlayerTextSpeedDelay()))
|
||||||
{
|
{
|
||||||
SetMainCallback2(CB2_CheckPlayAgainLink);
|
SetMainCallback2(CB2_CheckPlayAgainLink);
|
||||||
sBerryBlender->gameEndState = 0;
|
sBerryBlender->gameEndState = 0;
|
||||||
@@ -2858,7 +2865,7 @@ static void CB2_CheckPlayAgainLink(void)
|
|||||||
StringAppend(gStringVar4, sText_HasNoBerriesToPut);
|
StringAppend(gStringVar4, sText_HasNoBerriesToPut);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, gStringVar4, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, gStringVar4, GetPlayerTextSpeedDelay()))
|
||||||
{
|
{
|
||||||
sBerryBlender->framesToWait = 0;
|
sBerryBlender->framesToWait = 0;
|
||||||
sBerryBlender->gameEndState++;
|
sBerryBlender->gameEndState++;
|
||||||
@@ -2869,7 +2876,7 @@ static void CB2_CheckPlayAgainLink(void)
|
|||||||
sBerryBlender->gameEndState = 5;
|
sBerryBlender->gameEndState = 5;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
Blender_PrintText(&sBerryBlender->textState, gText_SavingDontTurnOff2, 0);
|
PrintMessage(&sBerryBlender->textState, gText_SavingDontTurnOff2, 0);
|
||||||
SetLinkStandbyCallback();
|
SetLinkStandbyCallback();
|
||||||
sBerryBlender->gameEndState++;
|
sBerryBlender->gameEndState++;
|
||||||
break;
|
break;
|
||||||
@@ -2965,7 +2972,7 @@ static void CB2_CheckPlayAgainLocal(void)
|
|||||||
StringCopy(gStringVar4, sText_RunOutOfBerriesForBlending);
|
StringCopy(gStringVar4, sText_RunOutOfBerriesForBlending);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, gStringVar4, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, gStringVar4, GetPlayerTextSpeedDelay()))
|
||||||
sBerryBlender->gameEndState = 9;
|
sBerryBlender->gameEndState = 9;
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
@@ -3495,7 +3502,7 @@ static bool8 PrintBlendingResults(void)
|
|||||||
u8 *txtPtr;
|
u8 *txtPtr;
|
||||||
|
|
||||||
xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_BlendingResults, 0xA8);
|
xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_BlendingResults, 0xA8);
|
||||||
Blender_AddTextPrinter(5, sText_BlendingResults, xPos, 1, TEXT_SKIP_DRAW, 0);
|
Blender_AddTextPrinter(WIN_RESULTS, sText_BlendingResults, xPos, 1, TEXT_SKIP_DRAW, 0);
|
||||||
|
|
||||||
if (sBerryBlender->numPlayers == BLENDER_MAX_PLAYERS)
|
if (sBerryBlender->numPlayers == BLENDER_MAX_PLAYERS)
|
||||||
yPos = 17;
|
yPos = 17;
|
||||||
@@ -3510,15 +3517,15 @@ static bool8 PrintBlendingResults(void)
|
|||||||
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
||||||
StringAppend(sBerryBlender->stringVar, gText_Space);
|
StringAppend(sBerryBlender->stringVar, gText_Space);
|
||||||
StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name);
|
StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 8, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 8, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
StringCopy(sBerryBlender->stringVar, sBerryBlender->blendedBerries[place].name);
|
StringCopy(sBerryBlender->stringVar, sBerryBlender->blendedBerries[place].name);
|
||||||
ConvertInternationalString(sBerryBlender->stringVar, gLinkPlayers[place].language);
|
ConvertInternationalString(sBerryBlender->stringVar, gLinkPlayers[place].language);
|
||||||
StringAppend(sBerryBlender->stringVar, sText_SpaceBerry);
|
StringAppend(sBerryBlender->stringVar, sText_SpaceBerry);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0x54, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 0x54, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
Blender_AddTextPrinter(5, sText_MaximumSpeed, 0, 0x51, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sText_MaximumSpeed, 0, 0x51, TEXT_SKIP_DRAW, 3);
|
||||||
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->maxRPM / 100, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->maxRPM / 100, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||||
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
||||||
|
|
||||||
@@ -3527,8 +3534,8 @@ static bool8 PrintBlendingResults(void)
|
|||||||
StringAppend(sBerryBlender->stringVar, sText_RPM);
|
StringAppend(sBerryBlender->stringVar, sText_RPM);
|
||||||
|
|
||||||
xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8);
|
xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x51, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, xPos, 0x51, TEXT_SKIP_DRAW, 3);
|
||||||
Blender_AddTextPrinter(5, sText_Time, 0, 0x61, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sText_Time, 0, 0x61, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
seconds = (sBerryBlender->gameFrameTime / 60) % 60;
|
seconds = (sBerryBlender->gameFrameTime / 60) % 60;
|
||||||
minutes = (sBerryBlender->gameFrameTime / (60 * 60));
|
minutes = (sBerryBlender->gameFrameTime / (60 * 60));
|
||||||
@@ -3540,12 +3547,12 @@ static bool8 PrintBlendingResults(void)
|
|||||||
StringAppend(sBerryBlender->stringVar, sText_Sec);
|
StringAppend(sBerryBlender->stringVar, sText_Sec);
|
||||||
|
|
||||||
xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8);
|
xPos = GetStringRightAlignXOffset(FONT_NORMAL, sBerryBlender->stringVar, 0xA8);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, xPos, 0x61, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, xPos, 0x61, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
sBerryBlender->framesToWait = 0;
|
sBerryBlender->framesToWait = 0;
|
||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
|
|
||||||
CopyWindowToVram(5, COPYWIN_GFX);
|
CopyWindowToVram(WIN_RESULTS, COPYWIN_GFX);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
@@ -3553,7 +3560,7 @@ static bool8 PrintBlendingResults(void)
|
|||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
ClearStdWindowAndFrameToTransparent(5, TRUE);
|
ClearStdWindowAndFrameToTransparent(WIN_RESULTS, TRUE);
|
||||||
|
|
||||||
for (i = 0; i < BLENDER_MAX_PLAYERS; i++)
|
for (i = 0; i < BLENDER_MAX_PLAYERS; i++)
|
||||||
{
|
{
|
||||||
@@ -3581,7 +3588,7 @@ static bool8 PrintBlendingResults(void)
|
|||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
if (Blender_PrintText(&sBerryBlender->textState, sBerryBlender->stringVar, GetPlayerTextSpeedDelay()))
|
if (PrintMessage(&sBerryBlender->textState, sBerryBlender->stringVar, GetPlayerTextSpeedDelay()))
|
||||||
{
|
{
|
||||||
TryUpdateBerryBlenderRecord();
|
TryUpdateBerryBlenderRecord();
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -3692,9 +3699,9 @@ static bool8 PrintBlendingRanking(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
DrawStdFrameWithCustomTileAndPalette(5, FALSE, 1, 0xD);
|
DrawStdFrameWithCustomTileAndPalette(WIN_RESULTS, FALSE, 1, 0xD);
|
||||||
xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_Ranking, 168);
|
xPos = GetStringCenterAlignXOffset(FONT_NORMAL, sText_Ranking, 168);
|
||||||
Blender_AddTextPrinter(5, sText_Ranking, xPos, 1, TEXT_SKIP_DRAW, 0);
|
Blender_AddTextPrinter(WIN_RESULTS, sText_Ranking, xPos, 1, TEXT_SKIP_DRAW, 0);
|
||||||
|
|
||||||
sBerryBlender->scoreIconIds[SCORE_BEST] = CreateSprite(&sSpriteTemplate_ScoreSymbols, 128, 52, 0);
|
sBerryBlender->scoreIconIds[SCORE_BEST] = CreateSprite(&sSpriteTemplate_ScoreSymbols, 128, 52, 0);
|
||||||
StartSpriteAnim(&gSprites[sBerryBlender->scoreIconIds[SCORE_BEST]], SCOREANIM_BEST_STATIC);
|
StartSpriteAnim(&gSprites[sBerryBlender->scoreIconIds[SCORE_BEST]], SCOREANIM_BEST_STATIC);
|
||||||
@@ -3718,20 +3725,20 @@ static bool8 PrintBlendingRanking(void)
|
|||||||
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
StringAppend(sBerryBlender->stringVar, sText_Dot);
|
||||||
StringAppend(sBerryBlender->stringVar, gText_Space);
|
StringAppend(sBerryBlender->stringVar, gText_Space);
|
||||||
StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name);
|
StringAppend(sBerryBlender->stringVar, gLinkPlayers[place].name);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 0, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 0, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_BEST], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_BEST], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 78, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_GOOD], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_GOOD], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 32, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 78 + 32, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
|
|
||||||
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_MISS], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
ConvertIntToDecimalStringN(sBerryBlender->stringVar, sBerryBlender->scores[place][SCORE_MISS], STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||||
Blender_AddTextPrinter(5, sBerryBlender->stringVar, 78 + 64, yPos, TEXT_SKIP_DRAW, 3);
|
Blender_AddTextPrinter(WIN_RESULTS, sBerryBlender->stringVar, 78 + 64, yPos, TEXT_SKIP_DRAW, 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
PutWindowTilemap(5);
|
PutWindowTilemap(WIN_RESULTS);
|
||||||
CopyWindowToVram(5, COPYWIN_FULL);
|
CopyWindowToVram(WIN_RESULTS, COPYWIN_FULL);
|
||||||
|
|
||||||
sBerryBlender->framesToWait = 0;
|
sBerryBlender->framesToWait = 0;
|
||||||
sBerryBlender->mainState++;
|
sBerryBlender->mainState++;
|
||||||
@@ -3875,26 +3882,24 @@ static void Blender_AddTextPrinter(u8 windowId, const u8 *string, u8 x, u8 y, s3
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (caseId != 3)
|
if (caseId != 3)
|
||||||
{
|
|
||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(txtColor[0]));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(txtColor[0]));
|
||||||
}
|
|
||||||
|
|
||||||
AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, 1, txtColor, speed, string);
|
AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, 1, txtColor, speed, string);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool32 Blender_PrintText(s16 *textState, const u8 *string, s32 textSpeed)
|
static bool32 PrintMessage(s16 *textState, const u8 *string, s32 textSpeed)
|
||||||
{
|
{
|
||||||
switch (*textState)
|
switch (*textState)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
DrawDialogFrameWithCustomTileAndPalette(4, FALSE, 0x14, 0xF);
|
DrawDialogFrameWithCustomTileAndPalette(WIN_MSG, FALSE, 0x14, 0xF);
|
||||||
Blender_AddTextPrinter(4, string, 0, 1, textSpeed, 0);
|
Blender_AddTextPrinter(WIN_MSG, string, 0, 1, textSpeed, 0);
|
||||||
PutWindowTilemap(4);
|
PutWindowTilemap(WIN_MSG);
|
||||||
CopyWindowToVram(4, COPYWIN_FULL);
|
CopyWindowToVram(WIN_MSG, COPYWIN_FULL);
|
||||||
(*textState)++;
|
(*textState)++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (!IsTextPrinterActive(4))
|
if (!IsTextPrinterActive(WIN_MSG))
|
||||||
{
|
{
|
||||||
*textState = 0;
|
*textState = 0;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|||||||
Reference in New Issue
Block a user