Merge branch 'master' into doc-scriptclean
This commit is contained in:
@@ -30,6 +30,7 @@
|
||||
#include "constants/moves.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/easy_chat.h"
|
||||
#include "constants/tv.h"
|
||||
|
||||
extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer[];
|
||||
extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer[];
|
||||
@@ -3026,9 +3027,9 @@ static void AwardBattleTowerRibbons(void)
|
||||
ribbons[i] = prevBest;
|
||||
}
|
||||
}
|
||||
if (ribbons[0].count > 4)
|
||||
if (ribbons[0].count > NUM_CUTIES_RIBBONS)
|
||||
{
|
||||
sub_80EE4DC(&gSaveBlock1Ptr->playerParty[ribbons[0].partyIndex], ribbonType);
|
||||
TryPutSpotTheCutiesOnAir(&gSaveBlock1Ptr->playerParty[ribbons[0].partyIndex], ribbonType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1030,7 +1030,7 @@ static void sub_807FAC8(void)
|
||||
UnsetBgTilemapBuffer(2);
|
||||
UnsetBgTilemapBuffer(1);
|
||||
SetVBlankCallback(NULL);
|
||||
sub_81AABF0(sub_807FFA4);
|
||||
ChooseBerrySetCallback(sub_807FFA4);
|
||||
|
||||
sBerryBlenderData->mainState = 0;
|
||||
}
|
||||
@@ -1109,7 +1109,7 @@ static void Blender_SetPlayerNamesLocal(u8 opponentsNum)
|
||||
sBerryBlenderData->playersNo = 2;
|
||||
StringCopy(gLinkPlayers[0].name, gSaveBlock2Ptr->playerName);
|
||||
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS))
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER))
|
||||
StringCopy(gLinkPlayers[1].name, sBlenderOpponentsNames[BLENDER_MASTER]);
|
||||
else
|
||||
StringCopy(gLinkPlayers[1].name, sBlenderOpponentsNames[BLENDER_MISTER]);
|
||||
@@ -1432,7 +1432,7 @@ static void Blender_SetOpponentsBerryData(u16 playerBerryItemId, u8 playersNum,
|
||||
{
|
||||
opponentBerryId = sOpponentBerrySets[opponentSetId][i];
|
||||
var = playerBerryItemId - 163;
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS) && gSpecialVar_0x8004 == 1)
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER) && gSpecialVar_0x8004 == 1)
|
||||
{
|
||||
opponentSetId %= 5;
|
||||
opponentBerryId = sSpecialOpponentBerrySets[opponentSetId];
|
||||
@@ -1632,7 +1632,7 @@ static void sub_80808D4(void)
|
||||
|
||||
if (gSpecialVar_0x8004 == 1)
|
||||
{
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS))
|
||||
if (!FlagGet(FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER))
|
||||
sBerryBlenderData->field_120[0] = CreateTask(sub_8081224, 10);
|
||||
else
|
||||
sBerryBlenderData->field_120[0] = CreateTask(sUnknown_083399EC[0], 10);
|
||||
|
||||
@@ -249,7 +249,7 @@ static void sub_8020D8C(void)
|
||||
void sub_8020E1C(void)
|
||||
{
|
||||
DestroyTask(gUnknown_02022C90->unkA);
|
||||
sub_81AABF0(sub_8020D8C);
|
||||
ChooseBerrySetCallback(sub_8020D8C);
|
||||
}
|
||||
|
||||
static void sub_8020E3C(void)
|
||||
|
||||
@@ -203,7 +203,7 @@ static void sub_80B2634(u8 taskId)
|
||||
if (data[0] == 0)
|
||||
{
|
||||
OpenLinkTimed();
|
||||
sub_800AB98();
|
||||
ResetLinkPlayerCount();
|
||||
ResetLinkPlayers();
|
||||
data[5] = AddWindow(&gUnknown_08550594);
|
||||
}
|
||||
@@ -678,23 +678,23 @@ static void sub_80B2EE4(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B2FD8(void)
|
||||
void TryBerryBlenderLinkup(void)
|
||||
{
|
||||
gLinkType = LINKTYPE_0x4411;
|
||||
gLinkType = LINKTYPE_BERRY_BLENDER_SETUP;
|
||||
gBattleTypeFlags = 0;
|
||||
sub_80B236C(2, 4);
|
||||
}
|
||||
|
||||
void sub_80B3000(void)
|
||||
void TryContestGModeLinkup(void)
|
||||
{
|
||||
gLinkType = LINKTYPE_0x6601;
|
||||
gLinkType = LINKTYPE_CONTEST_GMODE;
|
||||
gBattleTypeFlags = 0;
|
||||
sub_80B236C(4, 4);
|
||||
}
|
||||
|
||||
void sub_80B3028(void)
|
||||
void TryContestEModeLinkup(void)
|
||||
{
|
||||
gLinkType = LINKTYPE_0x6602;
|
||||
gLinkType = LINKTYPE_CONTEST_EMODE;
|
||||
gBattleTypeFlags = 0;
|
||||
sub_80B236C(2, 4);
|
||||
}
|
||||
|
||||
@@ -219,15 +219,15 @@ static void sub_80DF9E0(u8 *, s32);
|
||||
static void SwapMoveDescAndContestTilemaps(void);
|
||||
|
||||
// EWRAM vars.
|
||||
EWRAM_DATA struct ContestPokemon gContestMons[4] = {0};
|
||||
EWRAM_DATA s16 gContestMonConditions[4] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F08[4] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F10[4] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F18[4] = {0};
|
||||
EWRAM_DATA u8 gContestFinalStandings[4] = {0};
|
||||
EWRAM_DATA struct ContestPokemon gContestMons[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA s16 gContestMonConditions[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F08[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F10[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA s16 gUnknown_02039F18[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA u8 gContestFinalStandings[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA u8 gContestMonPartyIndex = 0;
|
||||
EWRAM_DATA u8 gContestPlayerMonIndex = 0;
|
||||
EWRAM_DATA u8 gContestantTurnOrder[4] = {0};
|
||||
EWRAM_DATA u8 gContestantTurnOrder[CONTESTANT_COUNT] = {0};
|
||||
EWRAM_DATA u8 gLinkContestFlags = 0;
|
||||
// Bit 0: Is a link contest
|
||||
// Bit 1: Link contest uses wireless adapter
|
||||
@@ -1574,7 +1574,7 @@ static void sub_80D8A88(u8 taskId)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i + gNumLinkContestPlayers < 4; i++)
|
||||
for (i = 0; i + gNumLinkContestPlayers < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
eContestantStatus[gNumLinkContestPlayers + i].currMove = GetChosenMove(gNumLinkContestPlayers + i);
|
||||
}
|
||||
@@ -1735,7 +1735,7 @@ static void sub_80D8B38(u8 taskId)
|
||||
{
|
||||
if (eContestantStatus[r6].effectStringId2 != CONTEST_STRING_NONE)
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (i != r6 && eContestantStatus[i].effectStringId != CONTEST_STRING_NONE)
|
||||
break;
|
||||
@@ -1838,10 +1838,10 @@ static void sub_80D8B38(u8 taskId)
|
||||
s32 r2 = 0;
|
||||
|
||||
r3 = 0;
|
||||
for (i = gTasks[taskId].data[1]; i < 4; i++)
|
||||
for (i = gTasks[taskId].data[1]; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
r3 = 0;
|
||||
for (r2 = 0; r2 < 4; r2++)
|
||||
for (r2 = 0; r2 < CONTESTANT_COUNT; r2++)
|
||||
{
|
||||
if (r2 != r6 && gContestantTurnOrder[r2] == i
|
||||
&& eContestantStatus[r2].effectStringId != CONTEST_STRING_NONE)
|
||||
@@ -1906,7 +1906,7 @@ static void sub_80D8B38(u8 taskId)
|
||||
}
|
||||
return;
|
||||
case 30:
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (gContestantTurnOrder[i] == gTasks[taskId].data[1])
|
||||
break;
|
||||
@@ -2509,7 +2509,7 @@ static void sub_80DA5E8(u8 taskId)
|
||||
|
||||
gBattle_BG0_Y = 0;
|
||||
gBattle_BG2_Y = 0;
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
gUnknown_02039F10[i] = eContestantStatus[i].pointTotal;
|
||||
sub_80DBD18();
|
||||
ContestClearGeneralTextWindow();
|
||||
@@ -2786,9 +2786,9 @@ void sub_80DACBC(u8 contestType, u8 rank, bool32 isPostgame)
|
||||
opponents[opponentsCount++] = i;
|
||||
}
|
||||
opponents[opponentsCount] = 0xFF;
|
||||
for (i = 0; i < 4 - gNumLinkContestPlayers; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT - gNumLinkContestPlayers; i++)
|
||||
{
|
||||
u16 rnd = sub_80F903C() % opponentsCount;
|
||||
u16 rnd = GetContestRand() % opponentsCount;
|
||||
|
||||
gContestMons[gNumLinkContestPlayers + i] = gContestOpponents[opponents[rnd]];
|
||||
sub_80DF9D4(gContestMons[gNumLinkContestPlayers + i].trainerName);
|
||||
@@ -2934,7 +2934,7 @@ void sub_80DB09C(u8 contestCategory)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
gContestMonConditions[i] = sub_80DAFE0(i, contestCategory);
|
||||
}
|
||||
|
||||
@@ -3101,7 +3101,7 @@ static void sub_80DB584(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
sub_80DB4E0(eContestantStatus[i].currMove, i);
|
||||
}
|
||||
|
||||
@@ -3212,7 +3212,7 @@ static void sub_80DB884(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
sub_80DB798(i);
|
||||
}
|
||||
|
||||
@@ -3862,7 +3862,7 @@ static void sub_80DC864(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
sub_80DC87C(i);
|
||||
}
|
||||
|
||||
@@ -4259,7 +4259,7 @@ static void sub_80DD080(u8 contestant)
|
||||
eContestResources8.jam2 = eContestResources8.jam;
|
||||
|
||||
eContestResources8.contestant = contestant;
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
eContestantStatus[i].jam = 0;
|
||||
eContestResources8.unnervedPokes[i] = 0;
|
||||
@@ -4796,7 +4796,7 @@ static void sub_80DE008(bool8 a)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (eContestantStatus[i].turnOrderMod != 0 && a)
|
||||
{
|
||||
@@ -5302,7 +5302,7 @@ void ResetContestLinkResults(void)
|
||||
gSaveBlock2Ptr->contestLinkResults[i][j] = 0;
|
||||
}
|
||||
|
||||
bool8 sub_80DEDA8(u8 a)
|
||||
bool8 sub_80DEDA8(u8 rank)
|
||||
{
|
||||
s32 i;
|
||||
u8 r7 = Random() % 3;
|
||||
@@ -5312,7 +5312,7 @@ bool8 sub_80DEDA8(u8 a)
|
||||
if (gContestFinalStandings[i] == 0)
|
||||
break;
|
||||
}
|
||||
if (a == 0xFF && i != gContestPlayerMonIndex)
|
||||
if (rank == 0xFF && i != gContestPlayerMonIndex)
|
||||
return FALSE;
|
||||
switch (gSpecialVar_ContestCategory)
|
||||
{
|
||||
@@ -5332,9 +5332,9 @@ bool8 sub_80DEDA8(u8 a)
|
||||
r7 += 12;
|
||||
break;
|
||||
}
|
||||
if (a != 0xFE)
|
||||
if (rank != 0xFE)
|
||||
{
|
||||
u8 r4 = sub_80DEFA8(a, 1);
|
||||
u8 r4 = sub_80DEFA8(rank, 1);
|
||||
|
||||
gSaveBlock1Ptr->contestWinners[r4].personality = gContestMons[i].personality;
|
||||
gSaveBlock1Ptr->contestWinners[r4].species = gContestMons[i].species;
|
||||
@@ -5342,11 +5342,11 @@ bool8 sub_80DEDA8(u8 a)
|
||||
StringCopy(gSaveBlock1Ptr->contestWinners[r4].monName, gContestMons[i].nickname);
|
||||
StringCopy(gSaveBlock1Ptr->contestWinners[r4].trainerName, gContestMons[i].trainerName);
|
||||
if(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)
|
||||
gSaveBlock1Ptr->contestWinners[r4].contestRank = 4;
|
||||
gSaveBlock1Ptr->contestWinners[r4].contestRank = CONTEST_RANK_LINK;
|
||||
else
|
||||
gSaveBlock1Ptr->contestWinners[r4].contestRank = gSpecialVar_ContestRank;
|
||||
|
||||
if (a != 0xFF)
|
||||
if (rank != 0xFF)
|
||||
gSaveBlock1Ptr->contestWinners[r4].contestCategory = gSpecialVar_ContestCategory;
|
||||
else
|
||||
gSaveBlock1Ptr->contestWinners[r4].contestCategory = r7;
|
||||
@@ -5363,23 +5363,23 @@ bool8 sub_80DEDA8(u8 a)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 sub_80DEFA8(u8 a, u8 b)
|
||||
u8 sub_80DEFA8(u8 rank, u8 b)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
switch (a)
|
||||
switch (rank)
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
case CONTEST_RANK_NORMAL:
|
||||
case CONTEST_RANK_SUPER:
|
||||
case CONTEST_RANK_HYPER:
|
||||
case CONTEST_RANK_MASTER:
|
||||
if (b != 0)
|
||||
{
|
||||
for (i = 5; i >= 1; i--)
|
||||
memcpy(&gSaveBlock1Ptr->contestWinners[i], &gSaveBlock1Ptr->contestWinners[i - 1], sizeof(struct ContestWinner));
|
||||
}
|
||||
return 0;
|
||||
default:
|
||||
default: // CONTEST_RANK_LINK
|
||||
switch (gSpecialVar_ContestCategory)
|
||||
{
|
||||
case CONTEST_CATEGORY_COOL:
|
||||
@@ -5434,7 +5434,7 @@ static void sub_80DF080(u8 contestant)
|
||||
gContestResources->field_1c[contestant].unkC |= 8;
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (i != contestant && eContestantStatus[i].jam != 0)
|
||||
{
|
||||
@@ -5481,7 +5481,7 @@ static void sub_80DF250(void)
|
||||
r1 = 0;
|
||||
var_38 = 0;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (gContestFinalStandings[i] == 0)
|
||||
var_38 = i;
|
||||
@@ -5508,7 +5508,7 @@ static void sub_80DF250(void)
|
||||
|
||||
r12 = FALSE;
|
||||
r8 = FALSE;
|
||||
for (j = 0; j < 4; j++)
|
||||
for (j = 0; j < CONTESTANT_COUNT; j++)
|
||||
{
|
||||
if (gContestMonConditions[i] > gContestMonConditions[j])
|
||||
r12 = TRUE;
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
#include "constants/game_stat.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/tv.h"
|
||||
#include "constants/vars.h"
|
||||
#include "contest.h"
|
||||
|
||||
@@ -265,7 +266,7 @@ void sub_80F5AE0(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
sub_80F5A74(i);
|
||||
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
@@ -360,12 +361,12 @@ static void sub_80F5CE4(u8 taskId)
|
||||
sub_80DEDA8(0xFE);
|
||||
gUnknown_02039F5C = 1;
|
||||
gUnknown_02039F5D = sub_80DEFA8(0xFE, 0);
|
||||
var = VarGet(VAR_LINK_CONTEST_ROOM_STATE);
|
||||
VarSet(VAR_LINK_CONTEST_ROOM_STATE, 0);
|
||||
var = VarGet(VAR_CONTEST_HALL_STATE);
|
||||
VarSet(VAR_CONTEST_HALL_STATE, 0);
|
||||
SetContinueGameWarpStatusToDynamicWarp();
|
||||
TrySavingData(SAVE_LINK);
|
||||
ClearContinueGameWarpStatus2();
|
||||
VarSet(VAR_LINK_CONTEST_ROOM_STATE, var);
|
||||
VarSet(VAR_CONTEST_HALL_STATE, var);
|
||||
gTasks[taskId].data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -576,7 +577,7 @@ static void sub_80F6204(u8 taskId)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
newTaskId = CreateTask(sub_80F73DC, 10);
|
||||
gTasks[newTaskId].data[0] = gContestFinalStandings[i];
|
||||
@@ -592,7 +593,7 @@ static void sub_80F6204(u8 taskId)
|
||||
gTasks[taskId].data[1] = 0;
|
||||
CreateTask(sub_80F74BC, 10);
|
||||
gTasks[taskId].data[0]++;
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
sub_80F77E0(i, 14);
|
||||
@@ -603,7 +604,7 @@ static void sub_80F6204(u8 taskId)
|
||||
if (++gTasks[taskId].data[1] == 21)
|
||||
{
|
||||
gTasks[taskId].data[1] = 0;
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
StringCopy(gStringVar1, gContestMons[i].trainerName);
|
||||
@@ -636,7 +637,7 @@ static void sub_80F6404(u8 taskId)
|
||||
case 0:
|
||||
gBattle_WIN0H = 0x00F0;
|
||||
gBattle_WIN0V = 0x5050;
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
species = gContestMons[i].species;
|
||||
@@ -732,7 +733,7 @@ static void sub_80F66B4(u8 taskId)
|
||||
{
|
||||
if (!(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK))
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
nationalDexNum = SpeciesToNationalPokedexNum(gContestMons[i].species);
|
||||
GetSetPokedexFlag(nationalDexNum, FLAG_SET_SEEN);
|
||||
@@ -874,7 +875,7 @@ static void LoadAllContestMonIcons(u8 srcOffset, u8 useDmaNow)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
sub_80F69B8(gContestMons[i].species, i, srcOffset, useDmaNow, gContestMons[i].personality);
|
||||
}
|
||||
|
||||
@@ -882,7 +883,7 @@ static void sub_80F6A9C(void)
|
||||
{
|
||||
int i, species;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
species = gContestMons[i].species;
|
||||
LoadPalette(gMonIconPalettes[gMonIconPaletteIndices[GetIconSpecies(species, 0)]], i * 0x10 + 0xA0, 0x20);
|
||||
@@ -1423,48 +1424,48 @@ static void sub_80F71C8(void)
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC6498, 5, 1, 5, 2);
|
||||
x = 10;
|
||||
}
|
||||
else if (gSpecialVar_ContestRank == 0)
|
||||
else if (gSpecialVar_ContestRank == CONTEST_RANK_NORMAL)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC63F8, 5, 1, 10, 2);
|
||||
x = 15;
|
||||
}
|
||||
else if (gSpecialVar_ContestRank == 1)
|
||||
else if (gSpecialVar_ContestRank == CONTEST_RANK_SUPER)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC6420, 5, 1, 10, 2);
|
||||
x = 15;
|
||||
}
|
||||
else if (gSpecialVar_ContestRank == 2)
|
||||
else if (gSpecialVar_ContestRank == CONTEST_RANK_HYPER)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC6448, 5, 1, 10, 2);
|
||||
x = 15;
|
||||
}
|
||||
else
|
||||
else // CONTEST_RANK_MASTER
|
||||
{
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC6470, 5, 1, 10, 2);
|
||||
x = 15;
|
||||
}
|
||||
|
||||
if (gSpecialVar_ContestCategory == 0)
|
||||
if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_COOL)
|
||||
{
|
||||
palette = 0;
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC64AC, x, y, 5, 2);
|
||||
}
|
||||
else if (gSpecialVar_ContestCategory == 1)
|
||||
else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_BEAUTY)
|
||||
{
|
||||
palette = 1;
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC64C0, x, y, 5, 2);
|
||||
}
|
||||
else if (gSpecialVar_ContestCategory == 2)
|
||||
else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_CUTE)
|
||||
{
|
||||
palette = 2;
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC64D4, x, y, 5, 2);
|
||||
}
|
||||
else if (gSpecialVar_ContestCategory == 3)
|
||||
else if (gSpecialVar_ContestCategory == CONTEST_CATEGORY_SMART)
|
||||
{
|
||||
palette = 3;
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC64E8, x, y, 5, 2);
|
||||
}
|
||||
else
|
||||
else // CONTEST_CATEGORY_TOUGH
|
||||
{
|
||||
palette = 4;
|
||||
CopyToBgTilemapBufferRect(2, gUnknown_08DC64FC, x, y, 5, 2);
|
||||
@@ -1550,7 +1551,7 @@ static void sub_80F73DC(u8 taskId)
|
||||
static void sub_80F74BC(u8 taskId)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
CopyToBgTilemapBufferRect_ChangePalette(2, i * 0xC0 + 0x100 + gUnknown_0203A034->unkC[2], 0, i * 3 + 4, 32, 3, 9);
|
||||
@@ -1706,7 +1707,7 @@ static void sub_80F7880(void)
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
r4 = (gContestMonConditions[i] * 1000) / abs(r2);
|
||||
if (r4 % 10 > 4)
|
||||
@@ -1933,7 +1934,7 @@ static void sub_80F7ED0(int windowId, u8 *str, int arg2)
|
||||
PutWindowTilemap(windowId);
|
||||
}
|
||||
|
||||
void sub_80F7F30(void)
|
||||
void TryEnterContestMon(void)
|
||||
{
|
||||
u8 eligibility = GetContestEntryEligibility(&gPlayerParty[gContestMonPartyIndex]);
|
||||
|
||||
@@ -1947,38 +1948,38 @@ void sub_80F7F30(void)
|
||||
gSpecialVar_Result = eligibility;
|
||||
}
|
||||
|
||||
u16 sub_80F7F7C(void)
|
||||
u16 HasMonWonThisContestBefore(void)
|
||||
{
|
||||
u16 result = 0;
|
||||
u16 hasRankRibbon = FALSE;
|
||||
struct Pokemon *mon = &gPlayerParty[gContestMonPartyIndex];
|
||||
switch (gSpecialVar_ContestCategory)
|
||||
{
|
||||
case CONTEST_CATEGORY_COOL:
|
||||
if (GetMonData(mon, MON_DATA_COOL_RIBBON) > gSpecialVar_ContestRank)
|
||||
result = 1;
|
||||
hasRankRibbon = TRUE;
|
||||
break;
|
||||
case CONTEST_CATEGORY_BEAUTY:
|
||||
if (GetMonData(mon, MON_DATA_BEAUTY_RIBBON) > gSpecialVar_ContestRank)
|
||||
result = 1;
|
||||
hasRankRibbon = TRUE;
|
||||
break;
|
||||
case CONTEST_CATEGORY_CUTE:
|
||||
if (GetMonData(mon, MON_DATA_CUTE_RIBBON) > gSpecialVar_ContestRank)
|
||||
result = 1;
|
||||
hasRankRibbon = TRUE;
|
||||
break;
|
||||
case CONTEST_CATEGORY_SMART:
|
||||
if (GetMonData(mon, MON_DATA_SMART_RIBBON) > gSpecialVar_ContestRank)
|
||||
result = 1;
|
||||
hasRankRibbon = TRUE;
|
||||
break;
|
||||
case CONTEST_CATEGORY_TOUGH:
|
||||
if (GetMonData(mon, MON_DATA_TOUGH_RIBBON) > gSpecialVar_ContestRank)
|
||||
result = 1;
|
||||
hasRankRibbon = TRUE;
|
||||
break;
|
||||
}
|
||||
|
||||
return result;
|
||||
return hasRankRibbon;
|
||||
}
|
||||
|
||||
void sub_80F7FFC(void)
|
||||
void GiveMonContestRibbon(void)
|
||||
{
|
||||
u8 ribbonData;
|
||||
|
||||
@@ -1993,8 +1994,8 @@ void sub_80F7FFC(void)
|
||||
{
|
||||
ribbonData++;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_COOL_RIBBON, &ribbonData);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_COOL_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_COOL_RIBBON);
|
||||
}
|
||||
break;
|
||||
case CONTEST_CATEGORY_BEAUTY:
|
||||
@@ -2003,8 +2004,8 @@ void sub_80F7FFC(void)
|
||||
{
|
||||
ribbonData++;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_BEAUTY_RIBBON, &ribbonData);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_BEAUTY_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_BEAUTY_RIBBON);
|
||||
}
|
||||
break;
|
||||
case CONTEST_CATEGORY_CUTE:
|
||||
@@ -2013,8 +2014,8 @@ void sub_80F7FFC(void)
|
||||
{
|
||||
ribbonData++;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_CUTE_RIBBON, &ribbonData);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_CUTE_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_CUTE_RIBBON);
|
||||
}
|
||||
break;
|
||||
case CONTEST_CATEGORY_SMART:
|
||||
@@ -2023,8 +2024,8 @@ void sub_80F7FFC(void)
|
||||
{
|
||||
ribbonData++;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SMART_RIBBON, &ribbonData);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SMART_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SMART_RIBBON);
|
||||
}
|
||||
break;
|
||||
case CONTEST_CATEGORY_TOUGH:
|
||||
@@ -2033,95 +2034,96 @@ void sub_80F7FFC(void)
|
||||
{
|
||||
ribbonData++;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_TOUGH_RIBBON, &ribbonData);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_TOUGH_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_TOUGH_RIBBON);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F8264(void)
|
||||
void BufferContestantTrainerName(void)
|
||||
{
|
||||
StringCopy(gStringVar1, gContestMons[gSpecialVar_0x8006].trainerName);
|
||||
sub_81DB5AC(gStringVar1);
|
||||
}
|
||||
|
||||
void sub_80F8290(void)
|
||||
void BufferContestantMonNickname(void)
|
||||
{
|
||||
StringCopy(gStringVar3, gContestMons[gSpecialVar_0x8006].nickname);
|
||||
}
|
||||
|
||||
void sub_80F82B4(void)
|
||||
// Unused script special
|
||||
void GetContestMonConditionRanking(void)
|
||||
{
|
||||
u8 i, count;
|
||||
u8 i, rank;
|
||||
|
||||
for (i = 0, count = 0; i < 4; i++)
|
||||
for (i = 0, rank = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (gContestMonConditions[gSpecialVar_0x8006] < gContestMonConditions[i])
|
||||
count++;
|
||||
rank++;
|
||||
}
|
||||
|
||||
gSpecialVar_0x8004 = count;
|
||||
gSpecialVar_0x8004 = rank;
|
||||
}
|
||||
|
||||
void sub_80F82FC(void)
|
||||
void GetContestMonCondition(void)
|
||||
{
|
||||
gSpecialVar_0x8004 = gContestMonConditions[gSpecialVar_0x8006];
|
||||
}
|
||||
|
||||
void sub_80F831C(void)
|
||||
void GetContestWinnerId(void)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
gSpecialVar_0x8005 = i;
|
||||
}
|
||||
|
||||
void sub_80F834C(void)
|
||||
void BufferContestWinnerTrainerName(void)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
StringCopy(gStringVar3, gContestMons[i].trainerName);
|
||||
sub_81DB5AC(gStringVar3);
|
||||
}
|
||||
|
||||
void sub_80F8390(void)
|
||||
void BufferContestWinnerMonName(void)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT && gContestFinalStandings[i] != 0; i++)
|
||||
;
|
||||
|
||||
StringCopy(gStringVar1, gContestMons[i].nickname);
|
||||
}
|
||||
|
||||
void sub_80F83D0(void)
|
||||
void CB2_SetStartContestCallback(void)
|
||||
{
|
||||
SetMainCallback2(CB2_StartContest);
|
||||
}
|
||||
|
||||
static void sub_80F83E0(u8 taskId)
|
||||
static void Task_StartContest(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
SetMainCallback2(sub_80F83D0);
|
||||
SetMainCallback2(CB2_SetStartContestCallback);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F840C(void)
|
||||
void StartContest(void)
|
||||
{
|
||||
ScriptContext2_Enable();
|
||||
CreateTask(sub_80F83E0, 10);
|
||||
CreateTask(Task_StartContest, 10);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
}
|
||||
|
||||
void sub_80F8438(void)
|
||||
void BufferContestantMonSpecies(void)
|
||||
{
|
||||
gSpecialVar_0x8004 = gContestMons[gSpecialVar_0x8006].species;
|
||||
}
|
||||
@@ -2142,7 +2144,7 @@ void sub_80F8484(void)
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
}
|
||||
|
||||
void sub_80F84B0(void)
|
||||
void GetContestPlayerId(void)
|
||||
{
|
||||
gSpecialVar_0x8004 = gContestPlayerMonIndex;
|
||||
}
|
||||
@@ -2248,7 +2250,7 @@ void sub_80F8714(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
StringGetEnd10(gContestMons[i].nickname);
|
||||
|
||||
DestroyTask(taskId);
|
||||
|
||||
@@ -684,7 +684,7 @@ static void DoContestPaintingImageProcessing(u8 imageEffect)
|
||||
|
||||
gImageProcessingContext.var_16 = 2;
|
||||
gImageProcessingContext.effect = imageEffect;
|
||||
gImageProcessingContext.dest = OBJ_VRAM0;
|
||||
gImageProcessingContext.dest = (void *)OBJ_VRAM0;
|
||||
|
||||
ApplyImageProcessingEffects(&gImageProcessingContext);
|
||||
ApplyImageProcessingQuantization(&gImageProcessingContext);
|
||||
|
||||
@@ -440,7 +440,7 @@ ALIGNED(4) const u8 sText_CancelRegistrationOfMon[] = _("Cancel the registration
|
||||
ALIGNED(4) const u8 sText_CancelRegistrationOfEgg[] = _("Cancel the registration of your\nEGG?");
|
||||
ALIGNED(4) const u8 sText_RegistrationCanceled2[] = _("The registration has been canceled.\p");
|
||||
ALIGNED(4) const u8 sText_TradeTrainersWillBeListed[] = _("TRAINERS wishing to make a trade\nwill be listed."); // unused
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerToTradeWith[] = _("Please choose the TRAINER with whom\nyou would like to trade POKéMON."); // unused
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerToTradeWith2[] = _("Please choose the TRAINER with whom\nyou would like to trade POKéMON."); // unused
|
||||
ALIGNED(4) const u8 sText_AskTrainerToMakeTrade[] = _("Would you like to ask {STR_VAR_1} to\nmake a trade?");
|
||||
ALIGNED(4) const u8 sText_AwaitingResponseFromTrainer[] = _("Awaiting a response from\nthe other TRAINER…"); // unused
|
||||
ALIGNED(4) const u8 sText_NotRegisteredAMonForTrade[] = _("You have not registered a POKéMON\nfor trading.\p"); // unused
|
||||
@@ -457,50 +457,51 @@ const u8 *const sUnionRoomTexts_CantTradeRightNow[] = {
|
||||
|
||||
ALIGNED(4) const u8 sText_TradeOfferRejected[] = _("Your trade offer was rejected.\p");
|
||||
ALIGNED(4) const u8 sText_EggTrade[] = _("EGG TRADE");
|
||||
ALIGNED(4) const u8 gUnknown_082EF7DC[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL");
|
||||
ALIGNED(4) const u8 gUnknown_082EF7F8[] = _("Please choose a TRAINER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF814[] = _("Please choose a TRAINER for\na SINGLE BATTLE.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF844[] = _("Please choose a TRAINER for\na DOUBLE BATTLE.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF874[] = _("Please choose the LEADER\nfor a MULTI BATTLE.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF8A4[] = _("Please choose the TRAINER to\ntrade with.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF8D0[] = _("Please choose the TRAINER who is\nsharing WONDER CARDS.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF908[] = _("Please choose the TRAINER who is\nsharing WONDER NEWS.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF940[] = _("Jump with mini POKéMON!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF974[] = _("BERRY CRUSH!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF99C[] = _("DODRIO BERRY-PICKING!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF9CC[] = _("BERRY BLENDER!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EF9F8[] = _("RECORD CORNER!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFA24[] = _("COOLNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFA50[] = _("BEAUTY CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFA7C[] = _("CUTENESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFAA8[] = _("SMARTNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFAD8[] = _("TOUGHNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFB08[] = _("BATTLE TOWER LEVEL 50!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFB3C[] = _("BATTLE TOWER OPEN LEVEL!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseJoinCancel[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainer[] = _("Please choose a TRAINER.");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerSingleBattle[] = _("Please choose a TRAINER for\na SINGLE BATTLE.");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerDoubleBattle[] = _("Please choose a TRAINER for\na DOUBLE BATTLE.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderMultiBattle[] = _("Please choose the LEADER\nfor a MULTI BATTLE.");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerToTradeWith[] = _("Please choose the TRAINER to\ntrade with.");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerToShareWonderCards[] = _("Please choose the TRAINER who is\nsharing WONDER CARDS.");
|
||||
ALIGNED(4) const u8 sText_ChooseTrainerToShareWonderNews[] = _("Please choose the TRAINER who is\nsharing WONDER NEWS.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderPokemonJump[] = _("Jump with mini POKéMON!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBerryCrush[] = _("BERRY CRUSH!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBerryPicking[] = _("DODRIO BERRY-PICKING!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBerryBlender[] = _("BERRY BLENDER!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderRecordCorner[] = _("RECORD CORNER!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderCoolContest[] = _("COOLNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBeautyContest[] = _("BEAUTY CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderCuteContest[] = _("CUTENESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderSmartContest[] = _("SMARTNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderToughContest[] = _("TOUGHNESS CONTEST!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerLv50[] = _("BATTLE TOWER LEVEL 50!\nPlease choose the LEADER.");
|
||||
ALIGNED(4) const u8 sText_ChooseLeaderBattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL!\nPlease choose the LEADER.");
|
||||
|
||||
const u8 *const gUnknown_082EFB70[] = {
|
||||
gUnknown_082EF814,
|
||||
gUnknown_082EF844,
|
||||
gUnknown_082EF874,
|
||||
gUnknown_082EF8A4,
|
||||
gUnknown_082EF940,
|
||||
gUnknown_082EF974,
|
||||
gUnknown_082EF99C,
|
||||
gUnknown_082EF8D0,
|
||||
gUnknown_082EF908,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
gUnknown_082EF9F8,
|
||||
gUnknown_082EF9CC,
|
||||
NULL,
|
||||
gUnknown_082EFA24,
|
||||
gUnknown_082EFA50,
|
||||
gUnknown_082EFA7C,
|
||||
gUnknown_082EFAA8,
|
||||
gUnknown_082EFAD8,
|
||||
gUnknown_082EFB08,
|
||||
gUnknown_082EFB3C
|
||||
static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] =
|
||||
{
|
||||
[LINK_GROUP_SINGLE_BATTLE] = sText_ChooseTrainerSingleBattle,
|
||||
[LINK_GROUP_DOUBLE_BATTLE] = sText_ChooseTrainerDoubleBattle,
|
||||
[LINK_GROUP_MULTI_BATTLE] = sText_ChooseLeaderMultiBattle,
|
||||
[LINK_GROUP_TRADE] = sText_ChooseTrainerToTradeWith,
|
||||
[LINK_GROUP_POKEMON_JUMP] = sText_ChooseLeaderPokemonJump,
|
||||
[LINK_GROUP_BERRY_CRUSH] = sText_ChooseLeaderBerryCrush,
|
||||
[LINK_GROUP_BERRY_PICKING] = sText_ChooseLeaderBerryPicking,
|
||||
[LINK_GROUP_WONDER_CARD] = sText_ChooseTrainerToShareWonderCards,
|
||||
[LINK_GROUP_WONDER_NEWS] = sText_ChooseTrainerToShareWonderNews,
|
||||
[LINK_GROUP_UNK_9] = NULL,
|
||||
[LINK_GROUP_UNK_10] = NULL,
|
||||
[LINK_GROUP_UNK_11] = NULL,
|
||||
[LINK_GROUP_RECORD_CORNER] = sText_ChooseLeaderRecordCorner,
|
||||
[LINK_GROUP_BERRY_BLENDER] = sText_ChooseLeaderBerryBlender,
|
||||
[LINK_GROUP_UNK_14] = NULL,
|
||||
[LINK_GROUP_COOL_CONTEST] = sText_ChooseLeaderCoolContest,
|
||||
[LINK_GROUP_BEAUTY_CONTEST] = sText_ChooseLeaderBeautyContest,
|
||||
[LINK_GROUP_CUTE_CONTEST] = sText_ChooseLeaderCuteContest,
|
||||
[LINK_GROUP_SMART_CONTEST] = sText_ChooseLeaderSmartContest,
|
||||
[LINK_GROUP_TOUGH_CONTEST] = sText_ChooseLeaderToughContest,
|
||||
[LINK_GROUP_BATTLE_TOWER] = sText_ChooseLeaderBattleTowerLv50,
|
||||
[LINK_GROUP_BATTLE_TOWER_OPEN] = sText_ChooseLeaderBattleTowerOpenLv
|
||||
};
|
||||
|
||||
ALIGNED(4) const u8 gUnknown_082EFBC8[] = _("Searching for a WIRELESS\nCOMMUNICATION SYSTEM. Wait...");
|
||||
@@ -524,39 +525,39 @@ ALIGNED(4) const u8 gUnknown_082EFD7C[] = _("EXIT");
|
||||
ALIGNED(4) const u8 gUnknown_082EFD84[] = _("EXIT");
|
||||
ALIGNED(4) const u8 gUnknown_082EFD8C[] = _("INFO");
|
||||
ALIGNED(4) const u8 gUnknown_082EFD94[] = _("NAME{CLEAR_TO 0x3C}WANTED{CLEAR_TO 0x6E}OFFER{CLEAR_TO 0xC6}LV.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDB0[] = _("SINGLE BATTLE");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDC0[] = _("DOUBLE BATTLE");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDD0[] = _("MULTI BATTLE");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDE0[] = _("POKéMON TRADES");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDF0[] = _("CHAT");
|
||||
ALIGNED(4) const u8 gUnknown_082EFDF8[] = _("CARDS");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE00[] = _("WONDER CARDS");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE10[] = _("WONDER NEWS");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE1C[] = _("POKéMON JUMP");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE2C[] = _("BERRY CRUSH");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE38[] = _("BERRY-PICKING");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE48[] = _("SEARCH");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE50[] = _("BERRY BLENDER");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE60[] = _("RECORD CORNER");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE70[] = _("COOL CONTEST");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE80[] = _("BEAUTY CONTEST");
|
||||
ALIGNED(4) const u8 gUnknown_082EFE90[] = _("CUTE CONTEST");
|
||||
ALIGNED(4) const u8 gUnknown_082EFEA0[] = _("SMART CONTEST");
|
||||
ALIGNED(4) const u8 gUnknown_082EFEB0[] = _("TOUGH CONTEST");
|
||||
ALIGNED(4) const u8 gUnknown_082EFEC0[] = _("BATTLE TOWER LV. 50");
|
||||
ALIGNED(4) const u8 gUnknown_082EFED4[] = _("BATTLE TOWER OPEN LEVEL");
|
||||
ALIGNED(4) const u8 gUnknown_082EFEEC[] = _("It's a NORMAL CARD.");
|
||||
ALIGNED(4) const u8 gUnknown_082EFF00[] = _("It's a BRONZE CARD!");
|
||||
ALIGNED(4) const u8 gUnknown_082EFF14[] = _("It's a COPPER CARD!");
|
||||
ALIGNED(4) const u8 gUnknown_082EFF28[] = _("It's a SILVER CARD!");
|
||||
ALIGNED(4) const u8 gUnknown_082EFF3C[] = _("It's a GOLD CARD!");
|
||||
ALIGNED(4) const u8 sText_SingleBattle[] = _("SINGLE BATTLE");
|
||||
ALIGNED(4) const u8 sText_DoubleBattle[] = _("DOUBLE BATTLE");
|
||||
ALIGNED(4) const u8 sText_MultiBattle[] = _("MULTI BATTLE");
|
||||
ALIGNED(4) const u8 sText_PokemonTrades[] = _("POKéMON TRADES");
|
||||
ALIGNED(4) const u8 sText_Chat[] = _("CHAT");
|
||||
ALIGNED(4) const u8 sText_Cards[] = _("CARDS");
|
||||
ALIGNED(4) const u8 sText_WonderCards[] = _("WONDER CARDS");
|
||||
ALIGNED(4) const u8 sText_WonderNews[] = _("WONDER NEWS");
|
||||
ALIGNED(4) const u8 sText_PokemonJump[] = _("POKéMON JUMP");
|
||||
ALIGNED(4) const u8 sText_BerryCrush[] = _("BERRY CRUSH");
|
||||
ALIGNED(4) const u8 sText_BerryPicking[] = _("BERRY-PICKING");
|
||||
ALIGNED(4) const u8 sText_Search[] = _("SEARCH");
|
||||
ALIGNED(4) const u8 sText_BerryBlender[] = _("BERRY BLENDER");
|
||||
ALIGNED(4) const u8 sText_RecordCorner[] = _("RECORD CORNER");
|
||||
ALIGNED(4) const u8 sText_CoolContest[] = _("COOL CONTEST");
|
||||
ALIGNED(4) const u8 sText_BeautyContest[] = _("BEAUTY CONTEST");
|
||||
ALIGNED(4) const u8 sText_CuteContest[] = _("CUTE CONTEST");
|
||||
ALIGNED(4) const u8 sText_SmartContest[] = _("SMART CONTEST");
|
||||
ALIGNED(4) const u8 sText_ToughContest[] = _("TOUGH CONTEST");
|
||||
ALIGNED(4) const u8 sText_BattleTowerLv50[] = _("BATTLE TOWER LV. 50");
|
||||
ALIGNED(4) const u8 sText_BattleTowerOpenLv[] = _("BATTLE TOWER OPEN LEVEL");
|
||||
ALIGNED(4) const u8 sText_ItsNormalCard[] = _("It's a NORMAL CARD.");
|
||||
ALIGNED(4) const u8 sText_ItsBronzeCard[] = _("It's a BRONZE CARD!");
|
||||
ALIGNED(4) const u8 sText_ItsCopperCard[] = _("It's a COPPER CARD!");
|
||||
ALIGNED(4) const u8 sText_ItsSilverCard[] = _("It's a SILVER CARD!");
|
||||
ALIGNED(4) const u8 sText_ItsGoldCard[] = _("It's a GOLD CARD!");
|
||||
|
||||
const u8 *const gUnknown_082EFF50[] = {
|
||||
gUnknown_082EFEEC,
|
||||
gUnknown_082EFF00,
|
||||
gUnknown_082EFF14,
|
||||
gUnknown_082EFF28,
|
||||
gUnknown_082EFF3C
|
||||
static const u8 *const sCardColorTexts[] = {
|
||||
sText_ItsNormalCard,
|
||||
sText_ItsBronzeCard,
|
||||
sText_ItsCopperCard,
|
||||
sText_ItsSilverCard,
|
||||
sText_ItsGoldCard
|
||||
};
|
||||
|
||||
ALIGNED(4) const u8 gUnknown_082EFF64[] = _("This is {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}'s\nTRAINER CARD…\l{SPECIAL_F7 0x02}\pPOKéDEX: {SPECIAL_F7 0x03}\nTIME: {SPECIAL_F7 0x04}:{SPECIAL_F7 0x05}\p");
|
||||
@@ -573,34 +574,34 @@ ALIGNED(4) const u8 gUnknown_082F0020[] = _("Finished checking {SPECIAL_F7 0x01}
|
||||
|
||||
const u8 *const gUnknown_082F0048[] = {
|
||||
gText_EmptyString,
|
||||
gUnknown_082EFDB0,
|
||||
gUnknown_082EFDC0,
|
||||
gUnknown_082EFDD0,
|
||||
gUnknown_082EFDE0,
|
||||
gUnknown_082EFDF0,
|
||||
gUnknown_082EFE00,
|
||||
gUnknown_082EFE10,
|
||||
gUnknown_082EFDF8,
|
||||
gUnknown_082EFE1C,
|
||||
gUnknown_082EFE2C,
|
||||
gUnknown_082EFE38,
|
||||
gUnknown_082EFE48,
|
||||
sText_SingleBattle,
|
||||
sText_DoubleBattle,
|
||||
sText_MultiBattle,
|
||||
sText_PokemonTrades,
|
||||
sText_Chat,
|
||||
sText_WonderCards,
|
||||
sText_WonderNews,
|
||||
sText_Cards,
|
||||
sText_PokemonJump,
|
||||
sText_BerryCrush,
|
||||
sText_BerryPicking,
|
||||
sText_Search,
|
||||
gText_EmptyString,
|
||||
gUnknown_082EFED4,
|
||||
gUnknown_082EFE60,
|
||||
gUnknown_082EFE50,
|
||||
sText_BattleTowerOpenLv,
|
||||
sText_RecordCorner,
|
||||
sText_BerryBlender,
|
||||
gText_EmptyString,
|
||||
gText_EmptyString,
|
||||
gText_EmptyString,
|
||||
gText_EmptyString,
|
||||
gUnknown_082EFE00,
|
||||
gUnknown_082EFE10,
|
||||
gUnknown_082EFE70,
|
||||
gUnknown_082EFE80,
|
||||
gUnknown_082EFE90,
|
||||
gUnknown_082EFEA0,
|
||||
gUnknown_082EFEB0,
|
||||
gUnknown_082EFEC0
|
||||
sText_WonderCards,
|
||||
sText_WonderNews,
|
||||
sText_CoolContest,
|
||||
sText_BeautyContest,
|
||||
sText_CuteContest,
|
||||
sText_SmartContest,
|
||||
sText_ToughContest,
|
||||
sText_BattleTowerLv50
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_082F00BC = {
|
||||
@@ -613,7 +614,7 @@ const struct WindowTemplate gUnknown_082F00BC = {
|
||||
.baseBlock = 0x0008
|
||||
};
|
||||
|
||||
const u32 gUnknown_082F00C4[] = {
|
||||
const u32 gUnknown_082F00C4[NUM_LINK_GROUP_TYPES] = {
|
||||
0x0201,
|
||||
0x0202,
|
||||
0x0403,
|
||||
@@ -1012,7 +1013,7 @@ ALIGNED(4) const u8 gUnknown_082F04CC[] = {0x1b, 0xff};
|
||||
ALIGNED(4) const u8 gUnknown_082F04D0[] = {0x1c, 0xff};
|
||||
ALIGNED(4) const u8 gUnknown_082F04D4[] = {0x0e, 0xff};
|
||||
|
||||
const u8 *const gUnknown_082F04D8[] = {
|
||||
const u8 *const gUnknown_082F04D8[NUM_LINK_GROUP_TYPES] = {
|
||||
gUnknown_082F0474,
|
||||
gUnknown_082F0478,
|
||||
gUnknown_082F047C,
|
||||
@@ -1037,8 +1038,29 @@ const u8 *const gUnknown_082F04D8[] = {
|
||||
gUnknown_082F04D4
|
||||
};
|
||||
|
||||
const u8 gUnknown_082F0530[] = {
|
||||
0x01, 0x02, 0x03, 0x04, 0x09, 0x0a, 0x0b, 0x15,
|
||||
0x16, 0x00, 0x00, 0x00, 0x0f, 0x10, 0x00, 0x17,
|
||||
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x0e, 0x00, 0x00
|
||||
// Link group type to ID for gUnknown_02022C2C
|
||||
const u8 gUnknown_082F0530[NUM_LINK_GROUP_TYPES + 2] =
|
||||
{
|
||||
0x01,
|
||||
0x02,
|
||||
0x03,
|
||||
0x04,
|
||||
0x09,
|
||||
0x0a,
|
||||
0x0b,
|
||||
0x15,
|
||||
0x16,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x0f,
|
||||
0x10,
|
||||
0x00,
|
||||
0x17,
|
||||
0x18,
|
||||
0x19,
|
||||
0x1a,
|
||||
0x1b,
|
||||
0x1c,
|
||||
0x0e
|
||||
};
|
||||
|
||||
@@ -752,7 +752,7 @@ static void task0A_fade_n_map_maybe(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80AFC60(void)
|
||||
void DoContestHallWarp(void)
|
||||
{
|
||||
ScriptContext2_Enable();
|
||||
TryFadeOutOldMapMusic();
|
||||
|
||||
@@ -1410,9 +1410,9 @@ void GiveLeadMonEffortRibbon(void)
|
||||
ribbonSet = TRUE;
|
||||
leadMon = &gPlayerParty[GetLeadMonIndex()];
|
||||
SetMonData(leadMon, MON_DATA_EFFORT_RIBBON, &ribbonSet);
|
||||
if (GetRibbonCount(leadMon) > 4)
|
||||
if (GetRibbonCount(leadMon) > NUM_CUTIES_RIBBONS)
|
||||
{
|
||||
sub_80EE4DC(leadMon, 0x47);
|
||||
TryPutSpotTheCutiesOnAir(leadMon, 0x47);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4051,7 +4051,7 @@ void UpdateTrainerFanClubGameClear(void)
|
||||
|
||||
u8 sub_813BADC(u8 a0)
|
||||
{
|
||||
static const u8 gUnknown_085B3470[] = { 0x02, 0x01, 0x02, 0x01 };
|
||||
static const u8 gUnknown_085B3470[] = { 2, 1, 2, 1 };
|
||||
|
||||
if (VarGet(VAR_LILYCOVE_FAN_CLUB_STATE) == 2)
|
||||
{
|
||||
@@ -4078,12 +4078,15 @@ u8 sub_813BADC(u8 a0)
|
||||
|
||||
static u16 sub_813BB74(void)
|
||||
{
|
||||
static const u8 gUnknown_085B3474[] = { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f };
|
||||
static const u8 gUnknown_085B3474[NUM_TRAINER_CLUB_MEMBERS] =
|
||||
{
|
||||
8, 9, 10, 11, 12, 13, 14, 15
|
||||
};
|
||||
|
||||
u8 i;
|
||||
u8 retVal = 0;
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
for (i = 0; i < ARRAY_COUNT(gUnknown_085B3474); i++)
|
||||
{
|
||||
if (!((gSaveBlock1Ptr->vars[VAR_FANCLUB_UNKNOWN_1 - VARS_START] >> gUnknown_085B3474[i]) & 1))
|
||||
{
|
||||
@@ -4101,7 +4104,10 @@ static u16 sub_813BB74(void)
|
||||
|
||||
static u16 sub_813BC00(void)
|
||||
{
|
||||
static const u8 gUnknown_085B347C[] = { 0x08, 0x0d, 0x0e, 0x0b, 0x0a, 0x0c, 0x0f, 0x09 };
|
||||
static const u8 gUnknown_085B347C[NUM_TRAINER_CLUB_MEMBERS] =
|
||||
{
|
||||
8, 13, 14, 11, 10, 12, 15, 9
|
||||
};
|
||||
|
||||
u8 i;
|
||||
u8 retVal = 0;
|
||||
@@ -4111,7 +4117,7 @@ static u16 sub_813BC00(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
for (i = 0; i < ARRAY_COUNT(gUnknown_085B347C); i++)
|
||||
{
|
||||
if (((gSaveBlock1Ptr->vars[VAR_FANCLUB_UNKNOWN_1 - VARS_START] >> gUnknown_085B347C[i]) & 1) != 0)
|
||||
{
|
||||
@@ -4137,7 +4143,7 @@ u16 GetNumMovedLilycoveFanClubMembers(void)
|
||||
u8 i;
|
||||
u8 retVal = 0;
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
for (i = 0; i < NUM_TRAINER_CLUB_MEMBERS; i++)
|
||||
{
|
||||
if (((gSaveBlock1Ptr->vars[VAR_FANCLUB_UNKNOWN_1 - VARS_START] >> (i + 8)) & 1) != 0)
|
||||
{
|
||||
@@ -4160,7 +4166,7 @@ void UpdateMovedLilycoveFanClubMembers(void)
|
||||
gSaveBlock1Ptr->vars[VAR_FANCLUB_UNKNOWN_2 - VARS_START] = gSaveBlock2Ptr->playTimeHours;
|
||||
break;
|
||||
}
|
||||
else if (i == 8)
|
||||
else if (i == NUM_TRAINER_CLUB_MEMBERS)
|
||||
{
|
||||
break;
|
||||
}
|
||||
@@ -4266,14 +4272,10 @@ void sub_813BF10(void)
|
||||
if (VarGet(VAR_LILYCOVE_FAN_CLUB_STATE) == 2)
|
||||
{
|
||||
sub_813BA30();
|
||||
if (gBattleOutcome == 1)
|
||||
{
|
||||
if (gBattleOutcome == B_OUTCOME_WON)
|
||||
sub_813BB74();
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_813BC00();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -761,211 +761,53 @@ static u16 QuantizePixel_BlurHard(u16 *prevPixel, u16 *curPixel, u16 *nextPixel)
|
||||
return RGB2(red, green, blue);
|
||||
}
|
||||
|
||||
/*
|
||||
void ConvertImageProcessingToGBA(struct ImageProcessingContext *arg0)
|
||||
void ConvertImageProcessingToGBA(struct ImageProcessingContext *context)
|
||||
{
|
||||
u16 i, j, k;
|
||||
u8 r5 = arg0->canvasWidth >> 3;
|
||||
u8 var_24 = arg0->canvasHeight >> 3;
|
||||
u16 (*var_2C)[][32] = arg0->canvasPixels;
|
||||
u32 var_28 = arg0->dest;
|
||||
u16 *src, *dest, *src_, *dest_;
|
||||
u16 width, height;
|
||||
|
||||
if (arg0->var_16 == 2)
|
||||
width = context->canvasWidth >> 3;
|
||||
height = context->canvasHeight >> 3;
|
||||
src_ = context->canvasPixels;
|
||||
dest_ = context->dest;
|
||||
|
||||
if (context->var_16 == 2)
|
||||
{
|
||||
for (i = 0; i < var_24; i++)
|
||||
for (i = 0; i < height; i++)
|
||||
{
|
||||
for (j = 0; j < r5; j++)
|
||||
for (j = 0; j < width; j++)
|
||||
{
|
||||
for (k = 0; k < 8; k++)
|
||||
{
|
||||
(*var_2C)[][];
|
||||
dest = dest_ + ((i * width + j) << 5) + (k << 2);
|
||||
src = src_ + ((((i << 3) + k) << 3) * width) + (j << 3);
|
||||
|
||||
dest[0] = src[0] | (src[1] << 8);
|
||||
dest[1] = src[2] | (src[3] << 8);
|
||||
dest[2] = src[4] | (src[5] << 8);
|
||||
dest[3] = src[6] | (src[7] << 8);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
else
|
||||
{
|
||||
for (i = 0; i < height; i++)
|
||||
{
|
||||
for (j = 0; j < width; j++)
|
||||
{
|
||||
for (k = 0; k < 8; k++)
|
||||
{
|
||||
dest = dest_ + ((i * width + j) << 4) + (k << 1);
|
||||
src = src_ + ((((i << 3) + k) << 3) * width) + (j << 3);
|
||||
|
||||
NAKED
|
||||
void ConvertImageProcessingToGBA(struct ImageProcessingContext *arg0)
|
||||
{
|
||||
asm_unified("\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0xC\n\
|
||||
ldrb r1, [r0, 0x1D]\n\
|
||||
lsrs r5, r1, 3\n\
|
||||
ldrb r1, [r0, 0x1E]\n\
|
||||
lsrs r1, 3\n\
|
||||
str r1, [sp, 0x8]\n\
|
||||
ldr r1, [r0, 0x4]\n\
|
||||
str r1, [sp]\n\
|
||||
ldr r2, [r0, 0x10]\n\
|
||||
str r2, [sp, 0x4]\n\
|
||||
ldrh r0, [r0, 0x16]\n\
|
||||
cmp r0, 0x2\n\
|
||||
bne _08126108\n\
|
||||
movs r1, 0\n\
|
||||
ldr r0, [sp, 0x8]\n\
|
||||
cmp r1, r0\n\
|
||||
bcc _08126086\n\
|
||||
b _08126194\n\
|
||||
_08126086:\n\
|
||||
movs r0, 0\n\
|
||||
adds r2, r1, 0x1\n\
|
||||
mov r10, r2\n\
|
||||
cmp r0, r5\n\
|
||||
bcs _081260FA\n\
|
||||
adds r2, r1, 0\n\
|
||||
muls r2, r5\n\
|
||||
mov r9, r2\n\
|
||||
lsls r1, 3\n\
|
||||
mov r8, r1\n\
|
||||
_0812609A:\n\
|
||||
movs r4, 0\n\
|
||||
lsls r6, r0, 4\n\
|
||||
adds r7, r0, 0x1\n\
|
||||
add r0, r9\n\
|
||||
lsls r0, 6\n\
|
||||
ldr r1, [sp, 0x4]\n\
|
||||
adds r1, r0\n\
|
||||
mov r12, r1\n\
|
||||
_081260AA:\n\
|
||||
lsls r0, r4, 3\n\
|
||||
mov r2, r12\n\
|
||||
adds r3, r2, r0\n\
|
||||
mov r1, r8\n\
|
||||
adds r0, r1, r4\n\
|
||||
lsls r0, 3\n\
|
||||
muls r0, r5\n\
|
||||
lsls r0, 1\n\
|
||||
ldr r2, [sp]\n\
|
||||
adds r0, r2, r0\n\
|
||||
adds r2, r0, r6\n\
|
||||
ldrh r0, [r2, 0x2]\n\
|
||||
lsls r0, 8\n\
|
||||
ldrh r1, [r2]\n\
|
||||
orrs r0, r1\n\
|
||||
strh r0, [r3]\n\
|
||||
ldrh r0, [r2, 0x6]\n\
|
||||
lsls r0, 8\n\
|
||||
ldrh r1, [r2, 0x4]\n\
|
||||
orrs r0, r1\n\
|
||||
strh r0, [r3, 0x2]\n\
|
||||
ldrh r0, [r2, 0xA]\n\
|
||||
lsls r0, 8\n\
|
||||
ldrh r1, [r2, 0x8]\n\
|
||||
orrs r0, r1\n\
|
||||
strh r0, [r3, 0x4]\n\
|
||||
ldrh r0, [r2, 0xE]\n\
|
||||
lsls r0, 8\n\
|
||||
ldrh r1, [r2, 0xC]\n\
|
||||
orrs r0, r1\n\
|
||||
strh r0, [r3, 0x6]\n\
|
||||
adds r0, r4, 0x1\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
cmp r4, 0x7\n\
|
||||
bls _081260AA\n\
|
||||
lsls r0, r7, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
cmp r0, r5\n\
|
||||
bcc _0812609A\n\
|
||||
_081260FA:\n\
|
||||
mov r1, r10\n\
|
||||
lsls r0, r1, 16\n\
|
||||
lsrs r1, r0, 16\n\
|
||||
ldr r2, [sp, 0x8]\n\
|
||||
cmp r1, r2\n\
|
||||
bcc _08126086\n\
|
||||
b _08126194\n\
|
||||
_08126108:\n\
|
||||
movs r1, 0\n\
|
||||
ldr r0, [sp, 0x8]\n\
|
||||
cmp r1, r0\n\
|
||||
bcs _08126194\n\
|
||||
_08126110:\n\
|
||||
movs r0, 0\n\
|
||||
adds r2, r1, 0x1\n\
|
||||
mov r10, r2\n\
|
||||
cmp r0, r5\n\
|
||||
bcs _08126188\n\
|
||||
adds r2, r1, 0\n\
|
||||
muls r2, r5\n\
|
||||
mov r9, r2\n\
|
||||
lsls r1, 3\n\
|
||||
mov r8, r1\n\
|
||||
_08126124:\n\
|
||||
movs r4, 0\n\
|
||||
lsls r6, r0, 4\n\
|
||||
adds r7, r0, 0x1\n\
|
||||
add r0, r9\n\
|
||||
lsls r0, 5\n\
|
||||
ldr r1, [sp, 0x4]\n\
|
||||
adds r1, r0\n\
|
||||
mov r12, r1\n\
|
||||
_08126134:\n\
|
||||
lsls r0, r4, 2\n\
|
||||
mov r2, r12\n\
|
||||
adds r3, r2, r0\n\
|
||||
mov r1, r8\n\
|
||||
adds r0, r1, r4\n\
|
||||
lsls r0, 3\n\
|
||||
muls r0, r5\n\
|
||||
lsls r0, 1\n\
|
||||
ldr r2, [sp]\n\
|
||||
adds r0, r2, r0\n\
|
||||
adds r2, r0, r6\n\
|
||||
ldrh r1, [r2, 0x2]\n\
|
||||
lsls r1, 4\n\
|
||||
ldrh r0, [r2]\n\
|
||||
orrs r1, r0\n\
|
||||
ldrh r0, [r2, 0x4]\n\
|
||||
lsls r0, 8\n\
|
||||
orrs r1, r0\n\
|
||||
ldrh r0, [r2, 0x6]\n\
|
||||
lsls r0, 12\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r3]\n\
|
||||
ldrh r1, [r2, 0xA]\n\
|
||||
lsls r1, 4\n\
|
||||
ldrh r0, [r2, 0x8]\n\
|
||||
orrs r1, r0\n\
|
||||
ldrh r0, [r2, 0xC]\n\
|
||||
lsls r0, 8\n\
|
||||
orrs r1, r0\n\
|
||||
ldrh r0, [r2, 0xE]\n\
|
||||
lsls r0, 12\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r3, 0x2]\n\
|
||||
adds r0, r4, 0x1\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
cmp r4, 0x7\n\
|
||||
bls _08126134\n\
|
||||
lsls r0, r7, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
cmp r0, r5\n\
|
||||
bcc _08126124\n\
|
||||
_08126188:\n\
|
||||
mov r1, r10\n\
|
||||
lsls r0, r1, 16\n\
|
||||
lsrs r1, r0, 16\n\
|
||||
ldr r2, [sp, 0x8]\n\
|
||||
cmp r1, r2\n\
|
||||
bcc _08126110\n\
|
||||
_08126194:\n\
|
||||
add sp, 0xC\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0");
|
||||
dest[0] = src[0] | (src[1] << 4) | (src[2] << 8) | (src[3] << 0xC);
|
||||
dest[1] = src[4] | (src[5] << 4) | (src[6] << 8) | (src[7] << 0xC);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ApplyImageProcessingQuantization(struct ImageProcessingContext *context)
|
||||
|
||||
@@ -477,7 +477,7 @@ void CB2_ChooseBerry(void)
|
||||
GoToBagMenu(RETURN_LOCATION_FIELD_2, BERRIES_POCKET, CB2_ReturnToFieldContinueScript);
|
||||
}
|
||||
|
||||
void sub_81AABF0(void (*callback)(void))
|
||||
void ChooseBerrySetCallback(void (*callback)(void))
|
||||
{
|
||||
GoToBagMenu(RETURN_LOCATION_FIELD_3, BERRIES_POCKET, callback);
|
||||
}
|
||||
|
||||
@@ -1399,7 +1399,7 @@ void sub_800AB18(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_800AB98(void)
|
||||
void ResetLinkPlayerCount(void)
|
||||
{
|
||||
gSavedLinkPlayerCount = 0;
|
||||
gSavedMultiplayerId = 0;
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "tv.h"
|
||||
#include "constants/heal_locations.h"
|
||||
#include "constants/flags.h"
|
||||
#include "constants/tv.h"
|
||||
|
||||
int GameClear(void)
|
||||
{
|
||||
@@ -76,9 +77,9 @@ int GameClear(void)
|
||||
}
|
||||
}
|
||||
|
||||
if (ribbonCounts[0].count > 4)
|
||||
if (ribbonCounts[0].count > NUM_CUTIES_RIBBONS)
|
||||
{
|
||||
sub_80EE4DC(&gPlayerParty[ribbonCounts[0].partyIndex], MON_DATA_CHAMPION_RIBBON);
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[ribbonCounts[0].partyIndex], MON_DATA_CHAMPION_RIBBON);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -461,13 +461,13 @@ bool8 ScrCmd_compare_var_to_var(struct ScriptContext *ctx)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Note: addvar doesn't support adding from a variable in vanilla. If you were to
|
||||
// add a VarGet() to the above, make sure you change the `addvar VAR_*, -1`
|
||||
// in the contest scripts to `subvar VAR_*, 1`, else contests will break.
|
||||
bool8 ScrCmd_addvar(struct ScriptContext *ctx)
|
||||
{
|
||||
u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
*ptr += ScriptReadHalfword(ctx);
|
||||
// Note: addvar doesn't support adding from a variable in vanilla. If you were to
|
||||
// add a VarGet() to the above, make sure you change the `addvar VAR_0x8006, 65535`
|
||||
// in the contest scripts to `subvar VAR_0x8006, 1`, else contests will break.
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -1945,7 +1945,7 @@ bool8 ScrCmd_choosecontestmon(struct ScriptContext *ctx)
|
||||
|
||||
bool8 ScrCmd_startcontest(struct ScriptContext *ctx)
|
||||
{
|
||||
sub_80F840C();
|
||||
StartContest();
|
||||
ScriptContext1_Stop();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/tv.h"
|
||||
#include "constants/vars.h"
|
||||
#include "constants/battle_frontier.h"
|
||||
|
||||
@@ -39,8 +40,8 @@ extern const u16 gEventObjectPalette34[];
|
||||
|
||||
static const u8 gUnknown_0858D8EC[] = { 3, 4, 5, 14 };
|
||||
|
||||
static void sub_80F8EE8(u8 taskId);
|
||||
static void sub_80F9088(u8 taskId);
|
||||
static void Task_ShowContestEntryMonPic(u8 taskId);
|
||||
static void Task_LinkContestWaitForConnection(u8 taskId);
|
||||
static void CB2_ReturnFromChooseHalfParty(void);
|
||||
static void sub_80F94B8(void);
|
||||
|
||||
@@ -74,11 +75,11 @@ void sub_80F8814(void)
|
||||
gSpecialVar_0x8004 = var1;
|
||||
}
|
||||
|
||||
void sub_80F8850(void)
|
||||
void BufferContestTrainerAndMonNames(void)
|
||||
{
|
||||
sub_80F8264();
|
||||
sub_80F8290();
|
||||
sub_80F8438();
|
||||
BufferContestantTrainerName();
|
||||
BufferContestantMonNickname();
|
||||
BufferContestantMonSpecies();
|
||||
}
|
||||
|
||||
void sub_80F8864(void)
|
||||
@@ -110,22 +111,22 @@ void sub_80F8864(void)
|
||||
gSpecialVar_0x8004 = 1;
|
||||
}
|
||||
|
||||
void sub_80F88DC(void)
|
||||
void SaveMuseumContestPainting(void)
|
||||
{
|
||||
sub_80DEDA8(0xFF);
|
||||
}
|
||||
|
||||
void sub_80F88E8(void)
|
||||
void ShouldReadyContestArtist(void)
|
||||
{
|
||||
if (gContestFinalStandings[gContestPlayerMonIndex] == 0
|
||||
&& gSpecialVar_ContestRank == 3
|
||||
&& gSpecialVar_ContestRank == CONTEST_RANK_MASTER
|
||||
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800)
|
||||
{
|
||||
gSpecialVar_0x8004 = 1;
|
||||
gSpecialVar_0x8004 = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialVar_0x8004 = 0;
|
||||
gSpecialVar_0x8004 = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -219,11 +220,22 @@ static void ShowContestWinnerCleanup(void)
|
||||
|
||||
void ShowContestWinner(void)
|
||||
{
|
||||
/*
|
||||
if(gUnknown_0203856C)
|
||||
{
|
||||
sub_80AAF30();
|
||||
gBattleStruct->unk15DDF = 1;
|
||||
gBattleStruct->unk15DDE = sub_80B2C4C(254, 0);
|
||||
Contest_SaveWinner(3);
|
||||
gUnknown_0203856C = 0;
|
||||
}
|
||||
*/
|
||||
|
||||
SetMainCallback2(CB2_ContestPainting);
|
||||
gMain.savedCallback = ShowContestWinnerCleanup;
|
||||
}
|
||||
|
||||
void sub_80F8AFC(void)
|
||||
void SetLinkContestPlayerGfx(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -248,7 +260,7 @@ void sub_80F8AFC(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F8B94(void)
|
||||
void LoadLinkContestPlayerPalettes(void)
|
||||
{
|
||||
int i;
|
||||
u8 eventObjectId;
|
||||
@@ -287,13 +299,15 @@ u8 GiveMonArtistRibbon(void)
|
||||
u8 hasArtistRibbon;
|
||||
|
||||
hasArtistRibbon = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON);
|
||||
if (!hasArtistRibbon && gContestFinalStandings[gContestPlayerMonIndex] == 0 && gSpecialVar_ContestRank == 3
|
||||
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800)
|
||||
if (!hasArtistRibbon
|
||||
&& gContestFinalStandings[gContestPlayerMonIndex] == 0
|
||||
&& gSpecialVar_ContestRank == CONTEST_RANK_MASTER
|
||||
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800)
|
||||
{
|
||||
hasArtistRibbon = 1;
|
||||
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON, &hasArtistRibbon);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
|
||||
sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON);
|
||||
if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > NUM_CUTIES_RIBBONS)
|
||||
TryPutSpotTheCutiesOnAir(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON);
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -303,9 +317,9 @@ u8 GiveMonArtistRibbon(void)
|
||||
}
|
||||
}
|
||||
|
||||
u8 sub_80F8D24(void)
|
||||
bool8 IsContestDebugActive(void)
|
||||
{
|
||||
return 0;
|
||||
return FALSE; // gUnknown_0203856C in pokeruby
|
||||
}
|
||||
|
||||
void ShowContestEntryMonPic(void)
|
||||
@@ -317,7 +331,7 @@ void ShowContestEntryMonPic(void)
|
||||
u8 taskId;
|
||||
u8 left, top;
|
||||
|
||||
if (FindTaskIdByFunc(sub_80F8EE8) == 0xFF)
|
||||
if (FindTaskIdByFunc(Task_ShowContestEntryMonPic) == 0xFF)
|
||||
{
|
||||
AllocateMonSpritesGfx();
|
||||
left = 10;
|
||||
@@ -325,7 +339,7 @@ void ShowContestEntryMonPic(void)
|
||||
species = gContestMons[gSpecialVar_0x8006].species;
|
||||
personality = gContestMons[gSpecialVar_0x8006].personality;
|
||||
otId = gContestMons[gSpecialVar_0x8006].otId;
|
||||
taskId = CreateTask(sub_80F8EE8, 0x50);
|
||||
taskId = CreateTask(Task_ShowContestEntryMonPic, 0x50);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = species;
|
||||
if (gSpecialVar_0x8006 == gContestPlayerMonIndex)
|
||||
@@ -357,9 +371,9 @@ void ShowContestEntryMonPic(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F8EB8(void)
|
||||
void HideContestEntryMonPic(void)
|
||||
{
|
||||
u8 taskId = FindTaskIdByFunc(sub_80F8EE8);
|
||||
u8 taskId = FindTaskIdByFunc(Task_ShowContestEntryMonPic);
|
||||
if (taskId != 0xFF)
|
||||
{
|
||||
gTasks[taskId].data[0]++;
|
||||
@@ -367,7 +381,7 @@ void sub_80F8EB8(void)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80F8EE8(u8 taskId)
|
||||
static void Task_ShowContestEntryMonPic(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
struct Sprite *sprite;
|
||||
@@ -403,10 +417,12 @@ static void sub_80F8EE8(u8 taskId)
|
||||
|
||||
void ScriptGetMultiplayerId(void)
|
||||
{
|
||||
if ((gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK) && gNumLinkContestPlayers == 4 && !(gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS))
|
||||
if ((gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)
|
||||
&& gNumLinkContestPlayers == CONTESTANT_COUNT
|
||||
&& !(gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS))
|
||||
gSpecialVar_Result = GetMultiplayerId();
|
||||
else
|
||||
gSpecialVar_Result = 4;
|
||||
gSpecialVar_Result = MAX_LINK_PLAYERS;
|
||||
}
|
||||
|
||||
void ScriptRandom(void)
|
||||
@@ -428,26 +444,26 @@ void ScriptRandom(void)
|
||||
*scriptPtr = random % *scriptPtr;
|
||||
}
|
||||
|
||||
u16 sub_80F903C(void)
|
||||
u16 GetContestRand(void)
|
||||
{
|
||||
gContestRngValue = 1103515245 * gContestRngValue + 24691;
|
||||
return gContestRngValue >> 16;
|
||||
}
|
||||
|
||||
u8 sub_80F905C(void)
|
||||
bool8 LinkContestWaitForConnection(void)
|
||||
{
|
||||
if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS)
|
||||
{
|
||||
CreateTask(sub_80F9088, 5);
|
||||
return 1;
|
||||
CreateTask(Task_LinkContestWaitForConnection, 5);
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80F9088(u8 taskId)
|
||||
static void Task_LinkContestWaitForConnection(u8 taskId)
|
||||
{
|
||||
switch (gTasks[taskId].data[0])
|
||||
{
|
||||
@@ -471,7 +487,7 @@ static void sub_80F9088(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F90DC(void)
|
||||
void LinkContestTryShowWirelessIndicator(void)
|
||||
{
|
||||
if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS)
|
||||
{
|
||||
@@ -483,7 +499,7 @@ void sub_80F90DC(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F910C(void)
|
||||
void LinkContestTryHideWirelessIndicator(void)
|
||||
{
|
||||
if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS)
|
||||
{
|
||||
@@ -492,25 +508,25 @@ void sub_80F910C(void)
|
||||
}
|
||||
}
|
||||
|
||||
u8 sub_80F9134(void)
|
||||
bool8 IsContestWithRSPlayer(void)
|
||||
{
|
||||
if (gLinkContestFlags & LINK_CONTEST_FLAG_HAS_RS_PLAYER)
|
||||
return 1;
|
||||
return TRUE;
|
||||
else
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_80F9154(void)
|
||||
void ClearLinkContestFlags(void)
|
||||
{
|
||||
gLinkContestFlags = 0;
|
||||
}
|
||||
|
||||
u8 sub_80F9160(void)
|
||||
bool8 IsWirelessContest(void)
|
||||
{
|
||||
if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_WIRELESS)
|
||||
return 1;
|
||||
return TRUE;
|
||||
else
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void HealPlayerParty(void)
|
||||
|
||||
2
src/tv.c
2
src/tv.c
@@ -2357,7 +2357,7 @@ void sub_80EE44C(u8 nMonsCaught, u8 nPkblkUsed)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EE4DC(struct Pokemon *pokemon, u8 ribbonMonDataIdx)
|
||||
void TryPutSpotTheCutiesOnAir(struct Pokemon *pokemon, u8 ribbonMonDataIdx)
|
||||
{
|
||||
TVShow *show;
|
||||
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/union_room.h"
|
||||
|
||||
EWRAM_DATA u8 sUnionRoomPlayerName[12] = {};
|
||||
EWRAM_DATA u8 gUnknown_02022C2C = 0;
|
||||
@@ -236,7 +237,7 @@ void sub_8012780(u8 taskId)
|
||||
switch (data->state)
|
||||
{
|
||||
case 0:
|
||||
if (gSpecialVar_0x8004 == 20 && gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_OPEN)
|
||||
if (gSpecialVar_0x8004 == LINK_GROUP_BATTLE_TOWER && gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_OPEN)
|
||||
gSpecialVar_0x8004++;
|
||||
gUnknown_02022C2C = gUnknown_082F00C4[gSpecialVar_0x8004];
|
||||
gUnknown_02022C2D = gUnknown_082F00C4[gSpecialVar_0x8004] >> 8;
|
||||
@@ -818,7 +819,7 @@ void sub_80134E8(u8 taskId)
|
||||
switch (data->state)
|
||||
{
|
||||
case 0:
|
||||
if (gSpecialVar_0x8004 == 20 && gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_OPEN)
|
||||
if (gSpecialVar_0x8004 == LINK_GROUP_BATTLE_TOWER && gSaveBlock2Ptr->frontier.lvlMode == FRONTIER_LVL_OPEN)
|
||||
gSpecialVar_0x8004++;
|
||||
gUnknown_02022C2C = gUnknown_082F0530[gSpecialVar_0x8004];
|
||||
sub_8010F84(gUnknown_02022C2C, 0, 0);
|
||||
@@ -830,7 +831,7 @@ void sub_80134E8(u8 taskId)
|
||||
data->state = 1;
|
||||
break;
|
||||
case 1:
|
||||
if (PrintOnTextbox(&data->textState, gUnknown_082EFB70[gSpecialVar_0x8004]))
|
||||
if (PrintOnTextbox(&data->textState, sChooseTrainerTexts[gSpecialVar_0x8004]))
|
||||
data->state = 2;
|
||||
break;
|
||||
case 2:
|
||||
@@ -842,7 +843,7 @@ void sub_80134E8(u8 taskId)
|
||||
data->field_D = AddWindow(&gUnknown_082F017C);
|
||||
|
||||
FillWindowPixelBuffer(data->field_C, PIXEL_FILL(2));
|
||||
sub_80173E0(data->field_C, 0, gUnknown_082EF7DC, 8, 1, 4);
|
||||
sub_80173E0(data->field_C, 0, sText_ChooseJoinCancel, 8, 1, 4);
|
||||
PutWindowTilemap(data->field_C);
|
||||
CopyWindowToVram(data->field_C, 2);
|
||||
|
||||
@@ -1898,7 +1899,7 @@ void sub_8014F48(u8 taskId)
|
||||
data->state = 1;
|
||||
break;
|
||||
case 1:
|
||||
AddTextPrinterToWindow1(gUnknown_082EF7F8);
|
||||
AddTextPrinterToWindow1(sText_ChooseTrainer);
|
||||
data->state = 2;
|
||||
break;
|
||||
case 2:
|
||||
@@ -4282,7 +4283,7 @@ void sub_8018220(u8 *unused, struct UnkStruct_URoom *arg1, bool8 arg2)
|
||||
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->playerName);
|
||||
|
||||
StringCopy(arg1->field_174, gUnknown_082EFF50[trainerCard->stars]);
|
||||
StringCopy(arg1->field_174, sCardColorTexts[trainerCard->stars]);
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, arg1->field_174);
|
||||
|
||||
ConvertIntToDecimalStringN(arg1->field_C0[2], trainerCard->caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
|
||||
Reference in New Issue
Block a user