Continue new contest documentation
This commit is contained in:
376
src/contest.c
376
src/contest.c
File diff suppressed because it is too large
Load Diff
@@ -10,11 +10,11 @@ extern const u8 *gAIScriptPtr;
|
||||
extern const u8 *gContestAIChecks[];
|
||||
|
||||
static void ContestAICmd_score(void);
|
||||
static void ContestAICmd_get_turn(void);
|
||||
static void ContestAICmd_if_turn_less_than(void);
|
||||
static void ContestAICmd_if_turn_more_than(void);
|
||||
static void ContestAICmd_if_turn_eq(void);
|
||||
static void ContestAICmd_if_turn_not_eq(void);
|
||||
static void ContestAICmd_get_appeal_num(void);
|
||||
static void ContestAICmd_if_appeal_num_less_than(void);
|
||||
static void ContestAICmd_if_appeal_num_more_than(void);
|
||||
static void ContestAICmd_if_appeal_num_eq(void);
|
||||
static void ContestAICmd_if_appeal_num_not_eq(void);
|
||||
static void ContestAICmd_get_excitement(void);
|
||||
static void ContestAICmd_if_excitement_less_than(void);
|
||||
static void ContestAICmd_if_excitement_more_than(void);
|
||||
@@ -151,11 +151,11 @@ typedef void (* ContestAICmdFunc)(void);
|
||||
static const ContestAICmdFunc sContestAICmdTable[] =
|
||||
{
|
||||
ContestAICmd_score, // 0x00
|
||||
ContestAICmd_get_turn, // 0x01
|
||||
ContestAICmd_if_turn_less_than, // 0x02
|
||||
ContestAICmd_if_turn_more_than, // 0x03
|
||||
ContestAICmd_if_turn_eq, // 0x04
|
||||
ContestAICmd_if_turn_not_eq, // 0x05
|
||||
ContestAICmd_get_appeal_num, // 0x01
|
||||
ContestAICmd_if_appeal_num_less_than, // 0x02
|
||||
ContestAICmd_if_appeal_num_more_than, // 0x03
|
||||
ContestAICmd_if_appeal_num_eq, // 0x04
|
||||
ContestAICmd_if_appeal_num_not_eq, // 0x05
|
||||
ContestAICmd_get_excitement, // 0x06
|
||||
ContestAICmd_if_excitement_less_than, // 0x07
|
||||
ContestAICmd_if_excitement_more_than, // 0x08
|
||||
@@ -324,7 +324,7 @@ u8 ContestAI_GetActionToUse(void)
|
||||
{
|
||||
// Randomly choose a move index. If it's the move
|
||||
// with the highest (or tied highest) score, return
|
||||
u8 moveIdx = Random() & (MAX_MON_MOVES - 1); // % 4 doesn't match
|
||||
u8 moveIdx = Random() & (MAX_MON_MOVES - 1); // % MAX_MON_MOVES doesn't match
|
||||
u8 score = eContestAI.moveScores[moveIdx];
|
||||
int i;
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
@@ -404,15 +404,15 @@ static void ContestAICmd_score(void)
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
static void ContestAICmd_get_turn(void)
|
||||
static void ContestAICmd_get_appeal_num(void)
|
||||
{
|
||||
eContestAI.scriptResult = eContest.turnNumber;
|
||||
eContestAI.scriptResult = eContest.appealNumber;
|
||||
gAIScriptPtr += 1;
|
||||
}
|
||||
|
||||
static void ContestAICmd_if_turn_less_than(void)
|
||||
static void ContestAICmd_if_appeal_num_less_than(void)
|
||||
{
|
||||
ContestAICmd_get_turn();
|
||||
ContestAICmd_get_appeal_num();
|
||||
|
||||
if (eContestAI.scriptResult < gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
@@ -420,9 +420,9 @@ static void ContestAICmd_if_turn_less_than(void)
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
static void ContestAICmd_if_turn_more_than(void)
|
||||
static void ContestAICmd_if_appeal_num_more_than(void)
|
||||
{
|
||||
ContestAICmd_get_turn();
|
||||
ContestAICmd_get_appeal_num();
|
||||
|
||||
if (eContestAI.scriptResult > gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
@@ -430,9 +430,9 @@ static void ContestAICmd_if_turn_more_than(void)
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
static void ContestAICmd_if_turn_eq(void)
|
||||
static void ContestAICmd_if_appeal_num_eq(void)
|
||||
{
|
||||
ContestAICmd_get_turn();
|
||||
ContestAICmd_get_appeal_num();
|
||||
|
||||
if (eContestAI.scriptResult == gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
@@ -440,9 +440,9 @@ static void ContestAICmd_if_turn_eq(void)
|
||||
gAIScriptPtr += 5;
|
||||
}
|
||||
|
||||
static void ContestAICmd_if_turn_not_eq(void)
|
||||
static void ContestAICmd_if_appeal_num_not_eq(void)
|
||||
{
|
||||
ContestAICmd_get_turn();
|
||||
ContestAICmd_get_appeal_num();
|
||||
|
||||
if (eContestAI.scriptResult != gAIScriptPtr[0])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
@@ -636,7 +636,7 @@ static void ContestAICmd_unk_19(void)
|
||||
|
||||
static void ContestAICmd_unk_1A(void)
|
||||
{
|
||||
eContestAI.scriptResult = gContestMonConditions[eContestAI.contestantId];
|
||||
eContestAI.scriptResult = gContestMonRound1Points[eContestAI.contestantId];
|
||||
gAIScriptPtr += 1;
|
||||
}
|
||||
|
||||
@@ -1357,7 +1357,7 @@ static void ContestAICmd_unk_5E(void)
|
||||
{
|
||||
u8 contestant = GetContestantIdByTurn(gAIScriptPtr[1]);
|
||||
|
||||
eContestAI.scriptResult = gContestMonConditions[contestant] - gContestMonConditions[eContestAI.contestantId];
|
||||
eContestAI.scriptResult = gContestMonRound1Points[contestant] - gContestMonRound1Points[eContestAI.contestantId];
|
||||
gAIScriptPtr += 2;
|
||||
}
|
||||
|
||||
|
||||
@@ -750,7 +750,7 @@ static void ContestEffect_NextAppealEarlier(void)
|
||||
s8 j;
|
||||
u8 turnOrder[CONTESTANT_COUNT];
|
||||
|
||||
if (eContest.turnNumber != 4)
|
||||
if (eContest.appealNumber != CONTEST_LAST_APPEAL)
|
||||
{
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
turnOrder[i] = eContestantStatus[i].nextTurnOrder;
|
||||
@@ -792,7 +792,7 @@ static void ContestEffect_NextAppealLater(void)
|
||||
s8 j;
|
||||
u8 turnOrder[CONTESTANT_COUNT];
|
||||
|
||||
if (eContest.turnNumber != 4)
|
||||
if (eContest.appealNumber != CONTEST_LAST_APPEAL)
|
||||
{
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
turnOrder[i] = eContestantStatus[i].nextTurnOrder;
|
||||
@@ -841,7 +841,7 @@ static void ContestEffect_ScrambleNextTurnOrder(void)
|
||||
u8 turnOrder[CONTESTANT_COUNT];
|
||||
u8 unselectedContestants[CONTESTANT_COUNT];
|
||||
|
||||
if (eContest.turnNumber != 4)
|
||||
if (eContest.appealNumber != CONTEST_LAST_APPEAL)
|
||||
{
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
|
||||
@@ -297,7 +297,7 @@ void Task_LinkContest_CommunicateMoveSelections(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80FCACC(u8 taskId)
|
||||
void Task_LinkContest_CommunicateFinalStandings(u8 taskId)
|
||||
{
|
||||
switch (gTasks[taskId].tState)
|
||||
{
|
||||
@@ -328,14 +328,14 @@ void sub_80FCACC(u8 taskId)
|
||||
case 3:
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
if (LinkContest_SendBlock(gUnknown_02039F10, sizeof(gUnknown_02039F10)) == 1)
|
||||
if (LinkContest_SendBlock(gContestMonAppealPointTotals, sizeof(gContestMonAppealPointTotals)) == 1)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (LinkContest_GetBlockReceivedFromAllPlayers())
|
||||
{
|
||||
memcpy(gUnknown_02039F10, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F10));
|
||||
memcpy(gContestMonAppealPointTotals, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonAppealPointTotals));
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
@@ -381,14 +381,14 @@ void sub_80FCC88(u8 taskId)
|
||||
case 0:
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
if (LinkContest_SendBlock(eContestantStatus, 4 * sizeof(struct ContestantStatus)) == 1)
|
||||
if (LinkContest_SendBlock(eContestantStatus, CONTESTANT_COUNT * sizeof(struct ContestantStatus)) == 1)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (LinkContest_GetBlockReceivedFromAllPlayers())
|
||||
{
|
||||
memcpy(eContestantStatus, gBlockRecvBuffer[gUnknown_02039F2B], 4 * sizeof(struct ContestantStatus));
|
||||
memcpy(eContestantStatus, gBlockRecvBuffer[gUnknown_02039F2B], CONTESTANT_COUNT * sizeof(struct ContestantStatus));
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
@@ -497,7 +497,7 @@ void sub_80FCE48(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80FCF40(u8 taskId)
|
||||
void Task_LinkContest_CommunicateRound1Points(u8 taskId)
|
||||
{
|
||||
if (!sub_80FC670(&gTasks[taskId].data[12]))
|
||||
return;
|
||||
@@ -507,14 +507,14 @@ void sub_80FCF40(u8 taskId)
|
||||
case 0:
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
if (LinkContest_SendBlock(gContestMonConditions, sizeof(gContestMonConditions)) == 1)
|
||||
if (LinkContest_SendBlock(gContestMonRound1Points, sizeof(gContestMonRound1Points)) == 1)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (LinkContest_GetBlockReceivedFromAllPlayers())
|
||||
{
|
||||
memcpy(gContestMonConditions, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonConditions));
|
||||
memcpy(gContestMonRound1Points, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonRound1Points));
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
@@ -526,7 +526,7 @@ void sub_80FCF40(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80FCFD0(u8 taskId)
|
||||
void Task_LinkContest_CommunicateTurnOrder(u8 taskId)
|
||||
{
|
||||
if (!sub_80FC670(&gTasks[taskId].data[12]))
|
||||
return;
|
||||
|
||||
@@ -70,29 +70,30 @@ static void sub_81D9F68(u8 taskId)
|
||||
u8 i;
|
||||
u8 rank;
|
||||
int gameCleared;
|
||||
u8 data1[4];
|
||||
u8 data2[4];
|
||||
u8 contestCategories[CONTESTANT_COUNT];
|
||||
u8 data2[CONTESTANT_COUNT];
|
||||
|
||||
memset(data1, 0, sizeof(data1));
|
||||
memset(contestCategories, 0, sizeof(contestCategories));
|
||||
memset(data2, 0, sizeof(data2));
|
||||
|
||||
for (i = 0; i < gNumLinkContestPlayers; i++)
|
||||
data1[i] = gTasks[taskId].data[i + 1];
|
||||
contestCategories[i] = gTasks[taskId].data[i + 1];
|
||||
|
||||
// Ensure all players are doing the same category
|
||||
i = 0;
|
||||
if (i < gNumLinkContestPlayers)
|
||||
{
|
||||
while (++i < gNumLinkContestPlayers)
|
||||
{
|
||||
if (data1[0] != data1[i])
|
||||
if (contestCategories[0] != contestCategories[i])
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (i == gNumLinkContestPlayers)
|
||||
gSpecialVar_0x8004 = 0;
|
||||
gSpecialVar_0x8004 = FALSE;
|
||||
else
|
||||
gSpecialVar_0x8004 = 1;
|
||||
gSpecialVar_0x8004 = TRUE;
|
||||
|
||||
for (i = 0; i < gNumLinkContestPlayers; i++)
|
||||
data2[i] = gTasks[taskId].data[i + 5];
|
||||
@@ -119,7 +120,7 @@ static void sub_81D9F68(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
sub_80DACBC(data1[0], rank, gameCleared);
|
||||
SetLinkAIContestants(contestCategories[0], rank, gameCleared);
|
||||
}
|
||||
|
||||
gUnknown_02039F2B = sub_80F86E0(data2);
|
||||
@@ -132,13 +133,13 @@ static void sub_81D9F68(u8 taskId)
|
||||
static void sub_81DA10C(u8 taskId)
|
||||
{
|
||||
sub_80DB09C(gSpecialVar_ContestCategory);
|
||||
SetTaskFuncWithFollowupFunc(taskId, sub_80FCF40, sub_81DA138);
|
||||
SetTaskFuncWithFollowupFunc(taskId, Task_LinkContest_CommunicateRound1Points, sub_81DA138);
|
||||
}
|
||||
|
||||
static void sub_81DA138(u8 taskId)
|
||||
{
|
||||
SortContestants(FALSE);
|
||||
SetTaskFuncWithFollowupFunc(taskId, sub_80FCFD0, sub_80F8714);
|
||||
SetTaskFuncWithFollowupFunc(taskId, Task_LinkContest_CommunicateTurnOrder, sub_80F8714);
|
||||
}
|
||||
|
||||
static void sub_81DA160(u8 taskId)
|
||||
|
||||
@@ -1718,7 +1718,7 @@ static void LoadContestResultsTilemaps(void)
|
||||
// Represented on results board as stars
|
||||
static u8 GetNumPreliminaryPoints(u8 monIndex, bool8 capPoints)
|
||||
{
|
||||
u32 condition = gContestMonConditions[monIndex] << 16;
|
||||
u32 condition = gContestMonRound1Points[monIndex] << 16;
|
||||
u32 numStars = condition / 0x3F;
|
||||
|
||||
if (numStars & 0xFFFF)
|
||||
@@ -1966,7 +1966,7 @@ static void CalculateContestantsResultData(void)
|
||||
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
relativePoints = (gContestMonConditions[i] * 1000) / abs(highestPoints);
|
||||
relativePoints = (gContestMonRound1Points[i] * 1000) / abs(highestPoints);
|
||||
if (relativePoints % 10 > 4)
|
||||
relativePoints += 10;
|
||||
(*sContestResults->monResults)[i].relativePreliminaryPoints = relativePoints / 10;
|
||||
@@ -2206,7 +2206,7 @@ void TryEnterContestMon(void)
|
||||
// Nonzero eligibility can still be non-eligibile, if mon is fainted or egg
|
||||
if (eligibility)
|
||||
{
|
||||
sub_80DAB8C(gSpecialVar_ContestCategory, gSpecialVar_ContestRank);
|
||||
SetContestants(gSpecialVar_ContestCategory, gSpecialVar_ContestRank);
|
||||
sub_80DB09C(gSpecialVar_ContestCategory);
|
||||
}
|
||||
|
||||
@@ -2324,7 +2324,7 @@ void GetContestMonConditionRanking(void)
|
||||
|
||||
for (i = 0, rank = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (gContestMonConditions[gSpecialVar_0x8006] < gContestMonConditions[i])
|
||||
if (gContestMonRound1Points[gSpecialVar_0x8006] < gContestMonRound1Points[i])
|
||||
rank++;
|
||||
}
|
||||
|
||||
@@ -2333,7 +2333,7 @@ void GetContestMonConditionRanking(void)
|
||||
|
||||
void GetContestMonCondition(void)
|
||||
{
|
||||
gSpecialVar_0x8004 = gContestMonConditions[gSpecialVar_0x8006];
|
||||
gSpecialVar_0x8004 = gContestMonRound1Points[gSpecialVar_0x8006];
|
||||
}
|
||||
|
||||
void GetContestWinnerId(void)
|
||||
@@ -2472,13 +2472,13 @@ static void sub_80F85BC(u8 taskId)
|
||||
|
||||
gUnknown_02039F2B = sub_80F86E0(sp4);
|
||||
sub_80DB09C(gSpecialVar_ContestCategory);
|
||||
SetTaskFuncWithFollowupFunc(taskId, sub_80FCF40, sub_80F86B8);
|
||||
SetTaskFuncWithFollowupFunc(taskId, Task_LinkContest_CommunicateRound1Points, sub_80F86B8);
|
||||
}
|
||||
|
||||
static void sub_80F86B8(u8 taskId)
|
||||
{
|
||||
SortContestants(FALSE);
|
||||
SetTaskFuncWithFollowupFunc(taskId, sub_80FCFD0, sub_80F8714);
|
||||
SetTaskFuncWithFollowupFunc(taskId, Task_LinkContest_CommunicateTurnOrder, sub_80F8714);
|
||||
}
|
||||
|
||||
u8 sub_80F86E0(u8 *arg0)
|
||||
|
||||
@@ -183,7 +183,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("POOCHY"),
|
||||
.trainerName = _("JIMMY"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_BOY_1,
|
||||
.aiChecks = 0xC000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -211,7 +211,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("MUSILLE"),
|
||||
.trainerName = _("EDITH"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_GIRL_1,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -239,7 +239,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("DUSTER"),
|
||||
.trainerName = _("EVAN"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_LITTLE_BOY,
|
||||
.aiChecks = 0x21000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -603,7 +603,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("BULBY"),
|
||||
.trainerName = _("AGATHA"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_WOMAN_2,
|
||||
.aiChecks = 0xC000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMY_1 | CONTEST_AI_DUMMY_2 | CONTEST_AI_DUMMY_3 | CONTEST_AI_DUMMY_4 | CONTEST_AI_DUMMY_5 | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -631,7 +631,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("FUTTERBE"),
|
||||
.trainerName = _("BEAU"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_HEX_MANIAC,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -659,7 +659,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("PIDEOT"),
|
||||
.trainerName = _("KAY"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_WOMAN_5,
|
||||
.aiChecks = 0x21000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23,
|
||||
.whichRank = CONTEST_RANK_NORMAL,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -883,7 +883,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("DUODO"),
|
||||
.trainerName = _("BOBBY"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_RUNNING_TRIATHLETE_M,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_SUPER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -1275,7 +1275,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("BROWLO"),
|
||||
.trainerName = _("LUKE"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_FAT_MAN,
|
||||
.aiChecks = 0xC000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMY_1 | CONTEST_AI_DUMMY_2 | CONTEST_AI_DUMMY_3 | CONTEST_AI_DUMMY_4 | CONTEST_AI_DUMMY_5 | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21,
|
||||
.whichRank = CONTEST_RANK_SUPER,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -1303,7 +1303,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("FETCHIN"),
|
||||
.trainerName = _("RAUL"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_MAN_5,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_SUPER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -1331,7 +1331,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("SEELEY"),
|
||||
.trainerName = _("JADA"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_WOMAN_2,
|
||||
.aiChecks = 0x21000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23,
|
||||
.whichRank = CONTEST_RANK_SUPER,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -1555,7 +1555,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("SHIFTY"),
|
||||
.trainerName = _("CLAUDIA"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_GIRL_1,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_HYPER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -1947,7 +1947,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("EGGSOR"),
|
||||
.trainerName = _("GRACIE"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_PICNICKER,
|
||||
.aiChecks = 0xC000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMY_1 | CONTEST_AI_DUMMY_2 | CONTEST_AI_DUMMY_3 | CONTEST_AI_DUMMY_4 | CONTEST_AI_DUMMY_5 | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21,
|
||||
.whichRank = CONTEST_RANK_HYPER,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -1975,7 +1975,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("CUBIN"),
|
||||
.trainerName = _("COLTIN"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_MAN_4,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_HYPER,
|
||||
.aiPool_Cool = FALSE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -2003,7 +2003,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("HITMON"),
|
||||
.trainerName = _("ELLIE"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_EXPERT_F,
|
||||
.aiChecks = 0x21000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23,
|
||||
.whichRank = CONTEST_RANK_HYPER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -2227,7 +2227,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("LOUDERD"),
|
||||
.trainerName = _("RALPH"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_EXPERT_M,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_MASTER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -2619,7 +2619,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("GAREN"),
|
||||
.trainerName = _("CAMILE"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_HEX_MANIAC,
|
||||
.aiChecks = 0xC000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMY_1 | CONTEST_AI_DUMMY_2 | CONTEST_AI_DUMMY_3 | CONTEST_AI_DUMMY_4 | CONTEST_AI_DUMMY_5 | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21,
|
||||
.whichRank = CONTEST_RANK_MASTER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
@@ -2647,7 +2647,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("GONPOR"),
|
||||
.trainerName = _("MARTIN"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_SCIENTIST_1,
|
||||
.aiChecks = 0x82000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25,
|
||||
.whichRank = CONTEST_RANK_MASTER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = TRUE,
|
||||
@@ -2675,7 +2675,7 @@ const struct ContestPokemon gContestOpponents[] =
|
||||
.nickname = _("DRITE"),
|
||||
.trainerName = _("SERGIO"),
|
||||
.trainerGfxId = OBJ_EVENT_GFX_BOY_1,
|
||||
.aiChecks = 0x21000FFF,
|
||||
.aiChecks = CONTEST_AI_ALL | CONTEST_AI_DUMMIES_1 | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23,
|
||||
.whichRank = CONTEST_RANK_MASTER,
|
||||
.aiPool_Cool = TRUE,
|
||||
.aiPool_Beauty = FALSE,
|
||||
|
||||
@@ -158,7 +158,7 @@ void sub_80F8970(void)
|
||||
u8 r7;
|
||||
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
conditions[i] = gContestMonConditions[i];
|
||||
conditions[i] = gContestMonRound1Points[i];
|
||||
|
||||
for (i = 0; i < CONTESTANT_COUNT - 1; i++)
|
||||
{
|
||||
@@ -195,7 +195,7 @@ void sub_80F8970(void)
|
||||
var2 = r8;
|
||||
for (i = 0; i < CONTESTANT_COUNT; i++)
|
||||
{
|
||||
if (condition == gContestMonConditions[i])
|
||||
if (condition == gContestMonRound1Points[i])
|
||||
{
|
||||
if (var2 == 1)
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user