diff options
author | GriffinR <griffin.richards@comcast.net> | 2019-11-10 21:54:00 -0500 |
---|---|---|
committer | huderlem <huderlem@gmail.com> | 2019-11-13 18:20:55 -0600 |
commit | ef8370566f14c22b9927db09b8ff69a98049c796 (patch) | |
tree | f0b6bc3021d2d0b5927346eff282f0f12ff16960 /src/contest_link_80F57C4.c | |
parent | af83b41dd19a49121f23d188015959d8072e4d7f (diff) |
Document Contest scripts
Diffstat (limited to 'src/contest_link_80F57C4.c')
-rw-r--r-- | src/contest_link_80F57C4.c | 130 |
1 files changed, 66 insertions, 64 deletions
diff --git a/src/contest_link_80F57C4.c b/src/contest_link_80F57C4.c index 69332b27f..4e4b8afed 100644 --- a/src/contest_link_80F57C4.c +++ b/src/contest_link_80F57C4.c @@ -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); |