summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/field/tv.c571
1 files changed, 290 insertions, 281 deletions
diff --git a/src/field/tv.c b/src/field/tv.c
index 6e4937354..93fe6a0f5 100644
--- a/src/field/tv.c
+++ b/src/field/tv.c
@@ -80,7 +80,7 @@ extern u16 gLastUsedItem;
static EWRAM_DATA u16 gUnknown_020387E0 = 0;
static EWRAM_DATA u16 gUnknown_020387E2 = 0;
static EWRAM_DATA u8 gUnknown_020387E4 = 0;
-static EWRAM_DATA ALIGNED(4) u8 gUnknown_020387E8 = 0; // why is this aligned to a 4-byte boundary?
+static EWRAM_DATA ALIGNED(4) u8 sTVShowState = 0; // why is this aligned to a 4-byte boundary?
static u8 gUnknown_03000720;
static u8 gUnknown_03000721;
@@ -436,8 +436,8 @@ void ClearTVShowData(void)
u8 showidx;
u8 extradataidx;
for (showidx=0; showidx<25; showidx++) {
- gSaveBlock1.tvShows[showidx].common.var00 = 0;
- gSaveBlock1.tvShows[showidx].common.var01 = 0;
+ gSaveBlock1.tvShows[showidx].common.kind = 0;
+ gSaveBlock1.tvShows[showidx].common.active = 0;
for (extradataidx=0; extradataidx<34; extradataidx++) {
gSaveBlock1.tvShows[showidx].common.pad02[extradataidx] = 0;
}
@@ -452,20 +452,20 @@ extern u8 gSpecialVar_ContestRank;
extern u8 gUnknown_03004316[11];
extern u8 gBattleOutcome;
-void sub_80BF334(void);
-void sub_80BF3A4(void);
-void sub_80BF3DC(void);
-void sub_80BF46C(void);
-void sub_80BF478(void);
-void sub_80BF484(void);
-void sub_80BF4BC(void);
+void InterviewBefore_FanClubLetter(void);
+void InterviewBefore_RecentHappenings(void);
+void InterviewBefore_PkmnFanClubOpinions(void);
+void InterviewBefore_Dummy(void);
+void InterviewBefore_NameRater(void);
+void InterviewBefore_BravoTrainerPkmnProfile(void);
+void InterviewBefore_BravoTrainerBTProfile(void);
void sub_80BE028(void);
void sub_80BE074(void);
void sub_80BE778(void);
void sub_80BEB20(void);
-u8 sub_80BFB54(u8);
+u8 GetTVChannelByShowType(u8);
s8 sub_80BF74C(TVShow tvShow[]);
@@ -476,53 +476,62 @@ void sub_80BE138(TVShow *show);
void sub_80BE160(TVShow *show);
extern u16 gLastUsedItem;
-void sub_80BE5FC(void);
-void sub_80BE65C(void);
-void sub_80BE6A0(void);
-void nullsub_21(void);
-void sub_80BE188(void);
-void sub_80BE320(void);
+void InterviewAfter_FanClubLetter(void);
+void InterviewAfter_RecentHappenings(void);
+void InterviewAfter_PkmnFanClubOpinions(void);
+void InterviewAfter_DummyShow4(void);
+void InterviewAfter_BravoTrainerPokemonProfile(void);
+void InterviewAfter_BravoTrainerBattleTowerProfile(void);
u8 special_0x44(void)
{
u8 i;
u8 j;
+ u8 selIdx;
+ TVShow *show;
-#ifndef NONMATCHING
- asm("":::"r5");
-#endif
-
- for (i = 5; i < 24; i++)
+ for (i = 5; i < ARRAY_COUNT(gSaveBlock1.tvShows) - 1; i++)
{
- if (gSaveBlock1.tvShows[i].common.var00 == 0)
+ if (gSaveBlock1.tvShows[i].common.kind == 0)
+ {
break;
+ }
}
- i = Random() % i;
- j = i;
+
+ j = Random() % i;
+ selIdx = j;
+
do
{
- if (sub_80BFB54(gSaveBlock1.tvShows[i].common.var00) != 4)
+ if (GetTVChannelByShowType(gSaveBlock1.tvShows[j].common.kind) != 4)
{
- if (gSaveBlock1.tvShows[i].common.var01 == 1)
- return i;
+ if (gSaveBlock1.tvShows[j].common.active == TRUE)
+ {
+ return j;
+ }
}
else
{
- struct TVShowMassOutbreak *massOutbreak = &gSaveBlock1.tvShows[i].massOutbreak;
-
- if (massOutbreak->var16 == 0 && massOutbreak->var01 == 1)
- return i;
+ show = &gSaveBlock1.tvShows[j];
+ if (show->massOutbreak.daysLeft == 0 && show->massOutbreak.active == TRUE)
+ {
+ return j;
+ }
+ }
+ if (j == 0)
+ {
+ j = ARRAY_COUNT(gSaveBlock1.tvShows) - 2;
}
-
- if (i == 0)
- i = 23;
else
- i--;
- } while (i != j);
+ {
+ j--;
+ }
+ } while (j != selIdx);
+
return 0xFF;
}
-u8 sub_80BDA30(void);
+u8 FindNonMassOutbreakActiveTVShow(void);
u8 sub_80BD8B8(void)
{
@@ -530,8 +539,8 @@ u8 sub_80BD8B8(void)
if (retval == 0xff)
return 0xff;
- if (gSaveBlock1.outbreakPokemonSpecies != 0 && gSaveBlock1.tvShows[retval].common.var00 == TVSHOW_MASS_OUTBREAK)
- return sub_80BDA30();
+ if (gSaveBlock1.outbreakPokemonSpecies != 0 && gSaveBlock1.tvShows[retval].common.kind == TVSHOW_MASS_OUTBREAK)
+ return FindNonMassOutbreakActiveTVShow();
return retval;
}
@@ -586,28 +595,28 @@ void TurnOffTVScreen(void)
DrawWholeMapView();
}
-u8 sub_80BDA0C(void)
+u8 GetTVShowType(void)
{
- return gSaveBlock1.tvShows[gSpecialVar_0x8004].common.var00;
+ return gSaveBlock1.tvShows[gSpecialVar_0x8004].common.kind;
}
-u8 sub_80BDA30(void)
+u8 FindNonMassOutbreakActiveTVShow(void)
{
u8 showIdx;
for (showIdx=0; showIdx<24; showIdx++)
{
- if (gSaveBlock1.tvShows[showIdx].common.var00 != 0 && gSaveBlock1.tvShows[showIdx].common.var00 != TVSHOW_MASS_OUTBREAK && gSaveBlock1.tvShows[showIdx].common.var01 == 1)
+ if (gSaveBlock1.tvShows[showIdx].common.kind != 0 && gSaveBlock1.tvShows[showIdx].common.kind != TVSHOW_MASS_OUTBREAK && gSaveBlock1.tvShows[showIdx].common.active == 1)
return showIdx;
}
return 0xff;
}
-u8 special_0x4a(void)
+u8 GetNonMassOutbreakActiveTVShow(void)
{
TVShow *tvShow;
tvShow = &gSaveBlock1.tvShows[gSpecialVar_0x8004];
- if (tvShow->common.var00 == TVSHOW_MASS_OUTBREAK && gSaveBlock1.outbreakPokemonSpecies)
- return sub_80BDA30();
+ if (tvShow->common.kind == TVSHOW_MASS_OUTBREAK && gSaveBlock1.outbreakPokemonSpecies)
+ return FindNonMassOutbreakActiveTVShow();
return gSpecialVar_0x8004;
}
@@ -768,27 +777,27 @@ void GabbyAndTySetScriptVarsToFieldObjectLocalIds(void)
}
}
-void sub_80BDE48(void)
+void InterviewAfter(void)
{
switch (gSpecialVar_0x8005)
{
case TVSHOW_FAN_CLUB_LETTER:
- sub_80BE5FC();
+ InterviewAfter_FanClubLetter();
break;
case TVSHOW_RECENT_HAPPENINGS:
- sub_80BE65C();
+ InterviewAfter_RecentHappenings();
break;
case TVSHOW_PKMN_FAN_CLUB_OPINIONS:
- sub_80BE6A0();
+ InterviewAfter_PkmnFanClubOpinions();
break;
case TVSHOW_UNKN_SHOWTYPE_04:
- nullsub_21();
+ InterviewAfter_DummyShow4();
break;
case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE:
- sub_80BE188();
+ InterviewAfter_BravoTrainerPokemonProfile();
break;
case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE:
- sub_80BE320();
+ InterviewAfter_BravoTrainerBattleTowerProfile();
break;
}
}
@@ -832,8 +841,8 @@ void sub_80BDEC8(void)
total = 0;
pokemonToday = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].pokemonToday;
- pokemonToday->var00 = TVSHOW_POKEMON_TODAY_CAUGHT;
- pokemonToday->var01 = total;
+ pokemonToday->kind = TVSHOW_POKEMON_TODAY_CAUGHT;
+ pokemonToday->active = total;
if (gBattleResults.unk5_1 != 0)
{
total = 1;
@@ -866,11 +875,11 @@ void sub_80BE028(void)
{
struct TVShowWorldOfMasters *worldOfMasters = &gSaveBlock1.tvShows[24].worldOfMasters;
- if (worldOfMasters->var00 != TVSHOW_WORLD_OF_MASTERS)
+ if (worldOfMasters->kind != TVSHOW_WORLD_OF_MASTERS)
{
sub_80BF55C(gSaveBlock1.tvShows, 24);
worldOfMasters->var06 = GetGameStat(GAME_STAT_STEPS);
- worldOfMasters->var00 = TVSHOW_WORLD_OF_MASTERS;
+ worldOfMasters->kind = TVSHOW_WORLD_OF_MASTERS;
}
worldOfMasters->var02++;
worldOfMasters->var04 = gBattleResults.caughtPoke;
@@ -898,8 +907,8 @@ void sub_80BE074(void)
struct TVShowPokemonTodayFailed *pokemonTodayFailed = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].pokemonTodayFailed;
zero = 0;
- pokemonTodayFailed->var00 = TVSHOW_POKEMON_TODAY_FAILED;
- pokemonTodayFailed->var01 = zero;
+ pokemonTodayFailed->kind = TVSHOW_POKEMON_TODAY_FAILED;
+ pokemonTodayFailed->active = zero;
pokemonTodayFailed->species = gBattleResults.poke1Species;
pokemonTodayFailed->species2 = gBattleResults.lastOpponentSpecies;
pokemonTodayFailed->var10 = total;
@@ -936,16 +945,16 @@ void sub_80BE160(TVShow *show)
show->common.trainerIdHi = playerId >> 8;
}
-void sub_80BE188(void)
+void InterviewAfter_BravoTrainerPokemonProfile(void)
{
struct TVShowBravoTrainerPokemonProfiles *bravoTrainerSrc = &gSaveBlock1.tvShows[24].bravoTrainer;
- if (bravoTrainerSrc->var00 == TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE)
+ if (bravoTrainerSrc->kind == TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE)
{
struct TVShowBravoTrainerPokemonProfiles *bravoTrainerNew = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].bravoTrainer;
- bravoTrainerNew->var00 = TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE;
- bravoTrainerNew->var01 = 1;
+ bravoTrainerNew->kind = TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE;
+ bravoTrainerNew->active = 1;
bravoTrainerNew->species = bravoTrainerSrc->species;
StringCopy(bravoTrainerNew->playerName, gSaveBlock2.playerName);
StringCopy(bravoTrainerNew->pokemonNickname, bravoTrainerSrc->pokemonNickname);
@@ -965,13 +974,13 @@ void sub_80BE23C(u16 a0)
{
struct TVShowBravoTrainerPokemonProfiles *bravoTrainer = &gSaveBlock1.tvShows[24].bravoTrainer;
- sub_80BF484();
+ InterviewBefore_BravoTrainerPkmnProfile();
gUnknown_03005D38.var0 = sub_80BF720(gSaveBlock1.tvShows);
if (gUnknown_03005D38.var0 != -1)
{
sub_80BF55C(gSaveBlock1.tvShows, 24);
bravoTrainer->var14 = a0;
- bravoTrainer->var00 = TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE;
+ bravoTrainer->kind = TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE;
}
}
@@ -990,12 +999,12 @@ void sub_80BE284(u8 a0)
}
}
-void sub_80BE320(void)
+void InterviewAfter_BravoTrainerBattleTowerProfile(void)
{
struct TVShowBravoTrainerBattleTowerSpotlight *bravoTrainerTower = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].bravoTrainerTower;
- bravoTrainerTower->var00 = TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE;
- bravoTrainerTower->var01 = 1;
+ bravoTrainerTower->kind = TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE;
+ bravoTrainerTower->active = 1;
StringCopy(bravoTrainerTower->trainerName, gSaveBlock2.playerName);
StringCopy(bravoTrainerTower->pokemonName, gSaveBlock2.battleTower.defeatedByTrainerName);
bravoTrainerTower->species = gSaveBlock2.battleTower.firstMonSpecies;
@@ -1027,8 +1036,8 @@ void sub_80BE3BC(void)
{
struct TVShowSmartShopper *smartShopper = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].smartshopperShow;
- smartShopper->var00 = TVSHOW_SMART_SHOPPER;
- smartShopper->var01 = rval;
+ smartShopper->kind = TVSHOW_SMART_SHOPPER;
+ smartShopper->active = rval;
smartShopper->shopLocation = gMapHeader.regionMapSectionId;
for (i=0; i<3; i++)
{
@@ -1046,7 +1055,7 @@ void sub_80BE3BC(void)
void sub_80BE478(void)
{
- sub_80BF478();
+ InterviewBefore_NameRater();
if (gSpecialVar_Result == 1)
return;
@@ -1055,8 +1064,8 @@ void sub_80BE478(void)
{
struct TVShowNameRaterShow *nameRaterShow = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].nameRaterShow;
- nameRaterShow->var00 = TVSHOW_NAME_RATER_SHOW;
- nameRaterShow->var01 = 1;
+ nameRaterShow->kind = TVSHOW_NAME_RATER_SHOW;
+ nameRaterShow->active = 1;
nameRaterShow->species = GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_SPECIES, NULL);
nameRaterShow->random = Random() % 3;
nameRaterShow->random2 = Random() % 2;
@@ -1089,37 +1098,37 @@ void StartMassOutbreak(void)
gSaveBlock1.outbreakUnk5 = 2;
}
-void sub_80BE5FC(void)
+void InterviewAfter_FanClubLetter(void)
{
struct TVShowFanClubLetter *fanclubLetter = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].fanclubLetter;
- fanclubLetter->var00 = TVSHOW_FAN_CLUB_LETTER;
- fanclubLetter->var01 = 1;
+ fanclubLetter->kind = TVSHOW_FAN_CLUB_LETTER;
+ fanclubLetter->active = 1;
StringCopy(fanclubLetter->playerName, gSaveBlock2.playerName);
fanclubLetter->species = GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL);
sub_80BE160((TVShow *)fanclubLetter);
fanclubLetter->language = GAME_LANGUAGE;
}
-void sub_80BE65C(void)
+void InterviewAfter_RecentHappenings(void)
{
struct TVShowRecentHappenings *recentHappenings = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].recentHappenings;
- recentHappenings->var00 = TVSHOW_RECENT_HAPPENINGS;
- recentHappenings->var01 = 1;
+ recentHappenings->kind = TVSHOW_RECENT_HAPPENINGS;
+ recentHappenings->active = 1;
StringCopy(recentHappenings->playerName, gSaveBlock2.playerName);
recentHappenings->var02 = 0;
sub_80BE160((TVShow *)recentHappenings);
recentHappenings->language = GAME_LANGUAGE;
}
-void sub_80BE6A0(void)
+void InterviewAfter_PkmnFanClubOpinions(void)
{
u8 monIndex;
struct TVShowFanclubOpinions *fanclubOpinions = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].fanclubOpinions;
- fanclubOpinions->var00 = TVSHOW_PKMN_FAN_CLUB_OPINIONS;
- fanclubOpinions->var01 = 1;
+ fanclubOpinions->kind = TVSHOW_PKMN_FAN_CLUB_OPINIONS;
+ fanclubOpinions->active = 1;
monIndex = GetLeadMonIndex();
fanclubOpinions->var04A = GetMonData(&gPlayerParty[monIndex], MON_DATA_FRIENDSHIP, NULL) / 16;
fanclubOpinions->var04B = gSpecialVar_0x8007;
@@ -1132,7 +1141,7 @@ void sub_80BE6A0(void)
StripExtCtrlCodes(fanclubOpinions->var10);
}
-void nullsub_21(void)
+void InterviewAfter_DummyShow4(void)
{
}
@@ -1144,7 +1153,7 @@ void sub_80BE778(void)
for (i = 0; i < 24; i++)
{
- if (gSaveBlock1.tvShows[i].massOutbreak.var00 == TVSHOW_MASS_OUTBREAK)
+ if (gSaveBlock1.tvShows[i].massOutbreak.kind == TVSHOW_MASS_OUTBREAK)
return;
}
if (sub_80BF77C(0x147))
@@ -1158,8 +1167,8 @@ void sub_80BE778(void)
s32 val2 = gUnknown_03005D38.var0;
struct TVShowMassOutbreak *massOutbreak = &gSaveBlock1.tvShows[val2].massOutbreak;
- massOutbreak->var00 = TVSHOW_MASS_OUTBREAK;
- massOutbreak->var01 = 1;
+ massOutbreak->kind = TVSHOW_MASS_OUTBREAK;
+ massOutbreak->active = 1;
massOutbreak->level = gPokeOutbreakSpeciesList[val].level;
massOutbreak->var02 = 0;
massOutbreak->var03 = 0;
@@ -1174,7 +1183,7 @@ void sub_80BE778(void)
massOutbreak->var12 = 0;
massOutbreak->probability = 0x32;
massOutbreak->var15 = 0;
- massOutbreak->var16 = 0x01;
+ massOutbreak->daysLeft = 0x01;
sub_80BE160((TVShow *)massOutbreak);
massOutbreak->language = GAME_LANGUAGE;
}
@@ -1214,15 +1223,15 @@ void sub_80BE8EC(u16 arg0)
{
for (showidx=0; showidx<24; showidx++)
{
- if (gSaveBlock1.tvShows[showidx].massOutbreak.var00 == TVSHOW_MASS_OUTBREAK
- && gSaveBlock1.tvShows[showidx].massOutbreak.var01 == 0x01)
+ if (gSaveBlock1.tvShows[showidx].massOutbreak.kind == TVSHOW_MASS_OUTBREAK
+ && gSaveBlock1.tvShows[showidx].massOutbreak.active == 0x01)
{
struct TVShowMassOutbreak *massOutbreak = &gSaveBlock1.tvShows[showidx].massOutbreak;
- if (massOutbreak->var16 < arg0)
- massOutbreak->var16 = 0;
+ if (massOutbreak->daysLeft < arg0)
+ massOutbreak->daysLeft = 0;
else
- massOutbreak->var16 -= arg0;
+ massOutbreak->daysLeft -= arg0;
break;
}
}
@@ -1272,8 +1281,8 @@ void sub_80BE9D4(void)
register u8 zero asm("r1") = 0;
asm(""::"r"(zero));
- pokemonAngler->var00 = TVSHOW_FISHING_ADVICE;
- pokemonAngler->var01 = zero;
+ pokemonAngler->kind = TVSHOW_FISHING_ADVICE;
+ pokemonAngler->active = zero;
pokemonAngler->var02 = gUnknown_020387E2 & 0xFF;
pokemonAngler->var03 = gUnknown_020387E2 >> 8;
pokemonAngler->var04 = gUnknown_020387E0;
@@ -1294,7 +1303,7 @@ void sub_80BEA5C(u16 arg0)
{
struct TVShowWorldOfMasters *worldOfMasters = &gSaveBlock1.tvShows[24].worldOfMasters;
- if (worldOfMasters->var00 == TVSHOW_WORLD_OF_MASTERS)
+ if (worldOfMasters->kind == TVSHOW_WORLD_OF_MASTERS)
{
if (worldOfMasters->var02 < 20)
sub_80BF55C(gSaveBlock1.tvShows, 0x18);
@@ -1313,8 +1322,8 @@ void sub_80BEA88(void)
{
struct TVShowWorldOfMasters *worldOfMastersDst = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].worldOfMasters;
- worldOfMastersDst->var00 = TVSHOW_WORLD_OF_MASTERS;
- worldOfMastersDst->var01 = 0;
+ worldOfMastersDst->kind = TVSHOW_WORLD_OF_MASTERS;
+ worldOfMastersDst->active = 0;
worldOfMastersDst->var02 = worldOfMastersSrc->var02;
worldOfMastersDst->var06 = GetGameStat(GAME_STAT_STEPS) - worldOfMastersSrc->var06;
worldOfMastersDst->var04 = worldOfMastersSrc->var04;
@@ -1619,7 +1628,7 @@ bool8 sub_80BF1B4(u8 showIdx)
for (i = 5; i < 24; i++)
{
- if (tvShows[i].common.var00 == showIdx)
+ if (tvShows[i].common.kind == showIdx)
{
if ((trainerId & 0xFF) == tvShows[i].common.trainerIdLo && ((trainerId >> 8) & 0xFF) == tvShows[i].common.trainerIdHi)
return TRUE;
@@ -1656,9 +1665,9 @@ void sub_80BF25C(u8 showType)
for (i = 0; i < 5; i++)
{
- if (gSaveBlock1.tvShows[i].common.var00 == showType)
+ if (gSaveBlock1.tvShows[i].common.kind == showType)
{
- if(gSaveBlock1.tvShows[i].common.var01 == 1)
+ if(gSaveBlock1.tvShows[i].common.active == 1)
{
gSpecialVar_Result = 1;
}
@@ -1674,36 +1683,36 @@ void sub_80BF25C(u8 showType)
sub_80BF6D8();
}
-void sub_80BF2C4(void)
+void InterviewBefore(void)
{
- gSpecialVar_Result = 0;
+ gSpecialVar_Result = FALSE;
switch (gSpecialVar_0x8005)
{
case TVSHOW_FAN_CLUB_LETTER:
- sub_80BF334();
+ InterviewBefore_FanClubLetter();
break;
case TVSHOW_RECENT_HAPPENINGS:
- sub_80BF3A4();
+ InterviewBefore_RecentHappenings();
break;
case TVSHOW_PKMN_FAN_CLUB_OPINIONS:
- sub_80BF3DC();
+ InterviewBefore_PkmnFanClubOpinions();
break;
case TVSHOW_UNKN_SHOWTYPE_04:
- sub_80BF46C();
+ InterviewBefore_Dummy();
break;
case TVSHOW_NAME_RATER_SHOW:
- sub_80BF478();
+ InterviewBefore_NameRater();
break;
case TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE:
- sub_80BF484();
+ InterviewBefore_BravoTrainerPkmnProfile();
break;
case TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE:
- sub_80BF4BC();
+ InterviewBefore_BravoTrainerBTProfile();
break;
}
}
-void sub_80BF334(void)
+void InterviewBefore_FanClubLetter(void)
{
struct TVShowFanClubLetter *fanclubLetter;
@@ -1716,7 +1725,7 @@ void sub_80BF334(void)
}
}
-void sub_80BF3A4(void)
+void InterviewBefore_RecentHappenings(void)
{
struct TVShowRecentHappenings *recentHappenings;
@@ -1728,7 +1737,7 @@ void sub_80BF3A4(void)
}
}
-void sub_80BF3DC(void)
+void InterviewBefore_PkmnFanClubOpinions(void)
{
struct TVShowFanclubOpinions *fanclubOpinions;
@@ -1743,17 +1752,17 @@ void sub_80BF3DC(void)
}
}
-void sub_80BF46C(void)
+void InterviewBefore_Dummy(void)
{
gSpecialVar_Result = 1;
}
-void sub_80BF478(void)
+void InterviewBefore_NameRater(void)
{
sub_80BF25C(TVSHOW_NAME_RATER_SHOW);
}
-void sub_80BF484(void)
+void InterviewBefore_BravoTrainerPkmnProfile(void)
{
struct TVShowBravoTrainerPokemonProfiles *bravoTrainer;
@@ -1765,7 +1774,7 @@ void sub_80BF484(void)
}
}
-void sub_80BF4BC(void)
+void InterviewBefore_BravoTrainerBTProfile(void)
{
struct TVShowBravoTrainerBattleTowerSpotlight *bravoTrainerTower;
@@ -1778,32 +1787,32 @@ void sub_80BF4BC(void)
}
#if ENGLISH
-u8 sub_80BF4F4(u8 arg0)
+u8 NicknameDiffersFromSpeciesName(u8 monIndex)
{
u32 species;
- GetMonData(&gPlayerParty[arg0], MON_DATA_NICKNAME, &gStringVar1);
- species = GetMonData(&gPlayerParty[arg0], MON_DATA_SPECIES, NULL);
- if (StringCompareWithoutExtCtrlCodes(gSpeciesNames[species], gStringVar1) == FALSE)
+ GetMonData(&gPlayerParty[monIndex], MON_DATA_NICKNAME, &gStringVar1);
+ species = GetMonData(&gPlayerParty[monIndex], MON_DATA_SPECIES, NULL);
+ if (StringCompareWithoutExtCtrlCodes(gSpeciesNames[species], gStringVar1) == 0)
return FALSE;
return TRUE;
}
#elif GERMAN
-u8 sub_80BF4F4(u8 arg0)
+u8 NicknameDiffersFromSpeciesName(u8 monIndex)
{
u8 langData[4];
u32 species;
u8 *tmp;
- GetMonData(&gPlayerParty[arg0], MON_DATA_NICKNAME, &gStringVar1);
+ GetMonData(&gPlayerParty[monIndex], MON_DATA_NICKNAME, &gStringVar1);
tmp = langData;
- tmp[0] = GetMonData(&gPlayerParty[arg0], MON_DATA_LANGUAGE, &langData);
+ tmp[0] = GetMonData(&gPlayerParty[monIndex], MON_DATA_LANGUAGE, &langData);
if (tmp[0] != GAME_LANGUAGE)
return TRUE;
- species = GetMonData(&gPlayerParty[arg0], MON_DATA_SPECIES, NULL);
+ species = GetMonData(&gPlayerParty[monIndex], MON_DATA_SPECIES, NULL);
if (StringCompareWithoutExtCtrlCodes(gSpeciesNames[species], gStringVar1))
return TRUE;
@@ -1811,17 +1820,17 @@ u8 sub_80BF4F4(u8 arg0)
}
#endif
-u8 sub_80BF544(void)
+u8 LeadMonNicknamed(void)
{
- return sub_80BF4F4(GetLeadMonIndex());
+ return NicknameDiffersFromSpeciesName(GetLeadMonIndex());
}
void sub_80BF55C(TVShow tvShow[], u8 showidx)
{
u8 idx;
- tvShow[showidx].common.var00 = 0;
- tvShow[showidx].common.var01 = 0;
+ tvShow[showidx].common.kind = 0;
+ tvShow[showidx].common.active = 0;
for (idx = 0; idx < 34; idx++)
tvShow[showidx].common.pad02[idx] = 0;
}
@@ -1833,11 +1842,11 @@ void sub_80BF588(TVShow tvShow[])
for (showidx = 0; showidx < 4; showidx++)
{
- if (tvShow[showidx].common.var00 == 0)
+ if (tvShow[showidx].common.kind == 0)
{
for (showidx2 = showidx + 1; showidx2 < 5; showidx2++)
{
- if (tvShow[showidx2].common.var00 != 0)
+ if (tvShow[showidx2].common.kind != 0)
{
tvShow[showidx] = tvShow[showidx2];
sub_80BF55C(tvShow, showidx2);
@@ -1848,11 +1857,11 @@ void sub_80BF588(TVShow tvShow[])
}
for (showidx = 5; showidx < 24; showidx++)
{
- if (tvShow[showidx].common.var00 == 0)
+ if (tvShow[showidx].common.kind == 0)
{
for (showidx2 = showidx + 1; showidx2 < 24; showidx2++)
{
- if (tvShow[showidx2].common.var00 != 0)
+ if (tvShow[showidx2].common.kind != 0)
{
tvShow[showidx] = tvShow[showidx2];
sub_80BF55C(gSaveBlock1.tvShows, showidx2);
@@ -1909,7 +1918,7 @@ s8 sub_80BF720(TVShow tvShow[])
for (idx = 0; idx < 5; idx++)
{
- if (tvShow[idx].common.var00 == 0)
+ if (tvShow[idx].common.kind == 0)
return idx;
}
return -1;
@@ -1921,7 +1930,7 @@ s8 sub_80BF74C(TVShow tvShow[])
for (idx = 5; idx < 24; idx++)
{
- if (tvShow[idx].common.var00 == 0)
+ if (tvShow[idx].common.kind == 0)
return idx;
}
return -1;
@@ -2043,19 +2052,19 @@ void sub_80BF820(u8 arg0, u8 arg1, u8 arg2, u16 arg3, u16 arg4, struct TVShowNam
StringCopy(gUnknown_083D1464[arg0], flags);
}
-bool8 sub_80BF974(void)
+bool8 TV_IsScriptShowKindAlreadyInQueue(void)
{
u8 i;
for (i = 0; i < 5; i++)
{
- if (gSaveBlock1.tvShows[i].common.var00 == gSpecialVar_0x8004)
+ if (gSaveBlock1.tvShows[i].common.kind == gSpecialVar_0x8004)
return TRUE;
}
return FALSE;
}
-bool8 sub_80BF9B4(void)
+bool8 TV_PutNameRaterShowOnTheAirIfNicnkameChanged(void)
{
GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_NICKNAME, &gStringVar1);
if (!StringCompareWithoutExtCtrlCodes(gStringVar3, gStringVar1))
@@ -2086,13 +2095,13 @@ void c2_080CC144(void)
c2_exit_to_overworld_1_continue_scripts_restart_music();
}
-void sub_80BFAE0(void)
+void TV_CopyNicknameToStringVar1AndEnsureTerminated(void)
{
GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_NICKNAME, &gStringVar1);
StringGetEnd10(gStringVar1);
}
-void sub_80BFB10(void)
+void TV_CheckMonOTIDEqualsPlayerID(void)
{
if (GetPlayerTrainerId() == GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_OT_ID, 0))
gSpecialVar_Result = 0;
@@ -2100,7 +2109,7 @@ void sub_80BFB10(void)
gSpecialVar_Result = 1;
}
-u8 sub_80BFB54(u8 arg0)
+u8 GetTVChannelByShowType(u8 arg0)
{
if (arg0 == 0)
return 0;
@@ -2294,7 +2303,7 @@ bool8 sub_80BFF68(TVShow * arg1[25], TVShow * arg2[25], u8 idx)
tv1 = *arg1;
tv2 = *arg2;
value = FALSE;
- switchval = sub_80BFB54(tv2[gUnknown_03000722].common.var00);
+ switchval = GetTVChannelByShowType(tv2[gUnknown_03000722].common.kind);
switch (switchval)
{
case 2:
@@ -2329,7 +2338,7 @@ u8 sub_80C004C(TVShow *tv1, TVShow *tv2, u8 idx)
tv2->common.srcTrainerIdLo = linkTrainerId & 0xFF;
tv2->common.srcTrainerIdHi = linkTrainerId >> 8;
*tv1 = *tv2;
- tv1->common.var01 = 1;
+ tv1->common.active = 1;
return TRUE;
}
@@ -2345,7 +2354,7 @@ u8 sub_80C00B4(TVShow *tv1, TVShow *tv2, u8 idx)
tv2->common.srcTrainerId2Lo = linkTrainerId & 0xFF;
tv2->common.srcTrainerId2Hi = linkTrainerId >> 8;
*tv1 = *tv2;
- tv1->common.var01 = 1;
+ tv1->common.active = 1;
return TRUE;
}
@@ -2359,7 +2368,7 @@ u8 sub_80C0134(TVShow *tv1, TVShow *tv2, u8 idx)
tv2->common.srcTrainerIdLo = linkTrainerId & 0xFF;
tv2->common.srcTrainerIdHi = linkTrainerId >> 8;
*tv1 = *tv2;
- tv1->common.var01 = 1;
+ tv1->common.active = 1;
tv1->common.var16[0] = 1;
return TRUE;
}
@@ -2369,7 +2378,7 @@ s8 sub_80C019C(TVShow tvShows[])
u8 i;
for (i = 0; i < 24; i++)
{
- if (tvShows[i].common.var01 == 0 && (u8)(tvShows[i].common.var00 - 1) < 60)
+ if (tvShows[i].common.active == 0 && (u8)(tvShows[i].common.kind - 1) < 60)
return i;
}
return -1;
@@ -2381,7 +2390,7 @@ void sub_80C01D4(void)
u16 i;
for (i=0; i<24; i++)
{
- switch (gSaveBlock1.tvShows[i].common.var00)
+ switch (gSaveBlock1.tvShows[i].common.kind)
{
case 0:
case TVSHOW_RECENT_HAPPENINGS:
@@ -2637,13 +2646,13 @@ _080C03A0:\n\
void sub_80C03A8(u8 showidx)
{
- gSaveBlock1.tvShows[showidx].common.var01 = 0;
+ gSaveBlock1.tvShows[showidx].common.active = 0;
}
void sub_80C03C8(u16 species, u8 showidx)
{
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), 0) == 0)
- gSaveBlock1.tvShows[showidx].common.var01 = 0;
+ gSaveBlock1.tvShows[showidx].common.active = 0;
}
void sub_80C0408(void)
@@ -2654,10 +2663,10 @@ void sub_80C0408(void)
return;
for (i = 0; i < 24; i++)
{
- if (gSaveBlock1.tvShows[i].common.var00 == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE)
- gSaveBlock1.tvShows[i].common.var01 = 0;
- else if (gSaveBlock1.tvShows[i].common.var00 == TVSHOW_MASS_OUTBREAK)
- gSaveBlock1.tvShows[i].common.var01 = 0;
+ if (gSaveBlock1.tvShows[i].common.kind == TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE)
+ gSaveBlock1.tvShows[i].common.active = 0;
+ else if (gSaveBlock1.tvShows[i].common.kind == TVSHOW_MASS_OUTBREAK)
+ gSaveBlock1.tvShows[i].common.active = 0;
}
}
@@ -2667,8 +2676,8 @@ void sub_80C045C(void)
for (i = 0; i < 5; i++)
{
- if (sub_80BFB54(gSaveBlock1.tvShows[i].common.var00) == 2)
- gSaveBlock1.tvShows[i].common.var01 = 0;
+ if (GetTVChannelByShowType(gSaveBlock1.tvShows[i].common.kind) == 2)
+ gSaveBlock1.tvShows[i].common.active = 0;
}
}
@@ -2680,7 +2689,7 @@ void sub_80C04A0(void)
for (showIdx = 5; showIdx < 24; showIdx++)
{
- if (gSaveBlock1.tvShows[showIdx].common.var00 == 0)
+ if (gSaveBlock1.tvShows[showIdx].common.kind == 0)
count++;
}
for (showIdx = 0; showIdx < 5 - count; showIdx++)
@@ -2810,9 +2819,9 @@ void sub_80C0788(void)
void DoTVShow(void)
{
- if (gSaveBlock1.tvShows[gSpecialVar_0x8004].common.var01 != 0)
+ if (gSaveBlock1.tvShows[gSpecialVar_0x8004].common.active != 0)
{
- switch (gSaveBlock1.tvShows[gSpecialVar_0x8004].common.var00)
+ switch (gSaveBlock1.tvShows[gSpecialVar_0x8004].common.kind)
{
case TVSHOW_FAN_CLUB_LETTER:
DoTVShowPokemonFanClubLetter();
@@ -2870,7 +2879,7 @@ void DoTVShowBravoTrainerPokemonProfile(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch(state)
{
case 0:
@@ -2878,49 +2887,49 @@ void DoTVShowBravoTrainerPokemonProfile(void)
CopyContestCategoryToStringVar(1, bravoTrainer->contestCategory);
sub_80BEF10(2, bravoTrainer->contestRank);
if (!StringCompareWithoutExtCtrlCodes(gSpeciesNames[bravoTrainer->species], bravoTrainer->pokemonNickname))
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
else
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
break;
case 1:
StringCopy(gStringVar1, gSpeciesNames[bravoTrainer->species]);
TVShowConvertInternationalString(gStringVar2, bravoTrainer->pokemonNickname, bravoTrainer->var1f);
CopyContestCategoryToStringVar(2, bravoTrainer->contestCategory);
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 2:
TVShowConvertInternationalString(gStringVar1, bravoTrainer->playerName, bravoTrainer->language);
if (bravoTrainer->contestResult == 0) // placed first
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
else
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
break;
case 3:
TVShowConvertInternationalString(gStringVar1, bravoTrainer->playerName, bravoTrainer->language);
EasyChat_GetWordText(gStringVar2, bravoTrainer->var04[0]);
sub_80BF088(2, bravoTrainer->contestResult + 1);
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
break;
case 4:
TVShowConvertInternationalString(gStringVar1, bravoTrainer->playerName, bravoTrainer->language);
EasyChat_GetWordText(gStringVar2, bravoTrainer->var04[0]);
sub_80BF088(2, bravoTrainer->contestResult + 1);
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
break;
case 5:
TVShowConvertInternationalString(gStringVar1, bravoTrainer->playerName, bravoTrainer->language);
CopyContestCategoryToStringVar(1, bravoTrainer->contestCategory);
EasyChat_GetWordText(gStringVar3, bravoTrainer->var04[1]);
if (bravoTrainer->var14)
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
else
- gUnknown_020387E8 = 7;
+ sTVShowState = 7;
break;
case 6:
StringCopy(gStringVar1, gSpeciesNames[bravoTrainer->species]);
StringCopy(gStringVar2, gMoveNames[bravoTrainer->var14]);
EasyChat_GetWordText(gStringVar3, bravoTrainer->var04[1]);
- gUnknown_020387E8 = 7;
+ sTVShowState = 7;
break;
case 7:
TVShowConvertInternationalString(gStringVar1, bravoTrainer->playerName, bravoTrainer->language);
@@ -2929,7 +2938,7 @@ void DoTVShowBravoTrainerPokemonProfile(void)
break;
case 8:
StringCopy(gStringVar1, gSpeciesNames[bravoTrainer->species]);
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
}
ShowFieldMessage(gTVBravoTrainerTextGroup[state]);
@@ -2941,79 +2950,79 @@ void DoTVShowBravoTrainerBattleTowerProfile(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch(state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->trainerName, bravoTrainerTower->language);
StringCopy(gStringVar2, gSpeciesNames[bravoTrainerTower->species]);
if (bravoTrainerTower->var16 >= 7)
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
else
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 1:
sub_80BF088(0, bravoTrainerTower->btLevel);
sub_80BF088(1, bravoTrainerTower->var16);
if (bravoTrainerTower->var1c == 1)
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
else
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
break;
case 2:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
sub_80BF088(1, bravoTrainerTower->var16 + 1);
if (bravoTrainerTower->var1b == 0)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 3:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
StringCopy(gStringVar2, gSpeciesNames[bravoTrainerTower->defeatedSpecies]);
if (bravoTrainerTower->var1b == 0)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 4:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
StringCopy(gStringVar2, gSpeciesNames[bravoTrainerTower->defeatedSpecies]);
if (bravoTrainerTower->var1b == 0)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 5:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 6:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 7:
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 8:
case 9:
case 10:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->trainerName, bravoTrainerTower->language);
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 11:
EasyChat_GetWordText(gStringVar1, bravoTrainerTower->var18[0]);
if (bravoTrainerTower->var1b == 0)
- gUnknown_020387E8 = 12;
+ sTVShowState = 12;
else
- gUnknown_020387E8 = 13;
+ sTVShowState = 13;
break;
case 12:
case 13:
EasyChat_GetWordText(gStringVar1, bravoTrainerTower->var18[0]);
TVShowConvertInternationalString(gStringVar2, bravoTrainerTower->trainerName, bravoTrainerTower->language);
TVShowConvertInternationalString(gStringVar3, bravoTrainerTower->pokemonName, bravoTrainerTower->language);
- gUnknown_020387E8 = 14;
+ sTVShowState = 14;
break;
case 14:
TVShowConvertInternationalString(gStringVar1, bravoTrainerTower->trainerName, bravoTrainerTower->language);
@@ -3030,61 +3039,61 @@ void DoTVShowTodaysSmartShopper(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch(state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, smartShopper->playerName, smartShopper->language);
GetMapSectionName(gStringVar2, smartShopper->shopLocation, 0);
if (smartShopper->itemAmounts[0] >= 0xff)
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
else
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
break;
case 1:
TVShowConvertInternationalString(gStringVar1, smartShopper->playerName, smartShopper->language);
StringCopy(gStringVar2, ItemId_GetItem(smartShopper->itemIds[0])->name);
sub_80BF088(2, smartShopper->itemAmounts[0]);
- gUnknown_020387E8 += (Random() % 4) + 1;
+ sTVShowState += (Random() % 4) + 1;
break;
case 2:
case 4:
case 5:
if (smartShopper->itemIds[1] != 0)
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
else
- gUnknown_020387E8 = 10;
+ sTVShowState = 10;
break;
case 3:
sub_80BF088(2, smartShopper->itemAmounts[0] + 1);
if (smartShopper->itemIds[1] != 0)
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
else
- gUnknown_020387E8 = 10;
+ sTVShowState = 10;
break;
case 6:
StringCopy(gStringVar2, ItemId_GetItem(smartShopper->itemIds[1])->name);
sub_80BF088(2, smartShopper->itemAmounts[1]);
if (smartShopper->itemIds[2] != 0)
- gUnknown_020387E8 = 7;
+ sTVShowState = 7;
else if (smartShopper->priceReduced == 1)
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
else
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
break;
case 7:
StringCopy(gStringVar2, ItemId_GetItem(smartShopper->itemIds[2])->name);
sub_80BF088(2, smartShopper->itemAmounts[2]);
if (smartShopper->priceReduced == 1)
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
else
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
break;
case 8:
if (smartShopper->itemAmounts[0] < 0xff)
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
else
- gUnknown_020387E8 = 12;
+ sTVShowState = 12;
break;
case 9:
sub_80BF154(1, smartShopper);
@@ -3092,17 +3101,17 @@ void DoTVShowTodaysSmartShopper(void)
break;
case 10:
if (smartShopper->priceReduced == 1)
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
else
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
break;
case 11:
TVShowConvertInternationalString(gStringVar1, smartShopper->playerName, smartShopper->language);
StringCopy(gStringVar2, ItemId_GetItem(smartShopper->itemIds[0])->name);
if (smartShopper->priceReduced == 1)
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
else
- gUnknown_020387E8 = 12;
+ sTVShowState = 12;
break;
case 12:
TVShowConvertInternationalString(gStringVar1, smartShopper->playerName, smartShopper->language);
@@ -3118,14 +3127,14 @@ void DoTVShowTheNameRaterShow(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, nameRaterShow->trainerName, nameRaterShow->language);
StringCopy(gStringVar2, gSpeciesNames[nameRaterShow->species]);
TVShowConvertInternationalString(gStringVar3, nameRaterShow->pokemonName, nameRaterShow->pokemonNameLanguage);
- gUnknown_020387E8 = sub_80BF7E8(nameRaterShow) + 1;
+ sTVShowState = sub_80BF7E8(nameRaterShow) + 1;
break;
case 1:
case 3:
@@ -3135,20 +3144,20 @@ void DoTVShowTheNameRaterShow(void)
case 7:
case 8:
if (nameRaterShow->random == 0)
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
else if (nameRaterShow->random == 1)
- gUnknown_020387E8 = 10;
+ sTVShowState = 10;
else if (nameRaterShow->random == 2)
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 2:
TVShowConvertInternationalString(gStringVar1, nameRaterShow->trainerName, nameRaterShow->language);
if (nameRaterShow->random == 0)
- gUnknown_020387E8 = 9;
+ sTVShowState = 9;
else if (nameRaterShow->random == 1)
- gUnknown_020387E8 = 10;
+ sTVShowState = 10;
else if (nameRaterShow->random == 2)
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 9:
case 10:
@@ -3158,7 +3167,7 @@ void DoTVShowTheNameRaterShow(void)
sub_80BF820(0, 0, 0, 1, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar2, gStringVar1, nameRaterShow->pokemonNameLanguage);
TVShowConvertInternationalString(gStringVar1, nameRaterShow->pokemonName, nameRaterShow->pokemonNameLanguage);
- gUnknown_020387E8 = 12;
+ sTVShowState = 12;
break;
case 13:
sub_80BF820(0, 0, 3, 1, 0, nameRaterShow);
@@ -3166,7 +3175,7 @@ void DoTVShowTheNameRaterShow(void)
sub_80BF820(0, 0, 2, 0, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar2, gStringVar1, nameRaterShow->language);
TVShowConvertInternationalString(gStringVar1, nameRaterShow->trainerName, nameRaterShow->language);
- gUnknown_020387E8 = 14;
+ sTVShowState = 14;
break;
case 14:
sub_80BF820(0, 0, 3, 0, 0, nameRaterShow);
@@ -3174,31 +3183,31 @@ void DoTVShowTheNameRaterShow(void)
sub_80BF820(0, 0, 2, 1, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar2, gStringVar1, nameRaterShow->pokemonNameLanguage);
TVShowConvertInternationalString(gStringVar1, nameRaterShow->trainerName, nameRaterShow->language);
- gUnknown_020387E8 = 18;
+ sTVShowState = 18;
break;
case 15:
sub_80BF820(1, 0, 2, 1, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar1, gStringVar2, nameRaterShow->pokemonNameLanguage);
StringCopy(gStringVar2, gSpeciesNames[nameRaterShow->species]);
sub_80BF820(2, 0, 3, 2, nameRaterShow->species, nameRaterShow);
- gUnknown_020387E8 = 16;
+ sTVShowState = 16;
break;
case 16:
sub_80BF820(0, 0, 3, 1, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar3, gStringVar1, nameRaterShow->pokemonNameLanguage);
sub_80BF820(0, 0, 2, 2, nameRaterShow->species, nameRaterShow);
- gUnknown_020387E8 = 17;
+ sTVShowState = 17;
break;
case 17:
sub_80BF820(1, 0, 2, 1, 0, nameRaterShow);
TVShowConvertInternationalString(gStringVar1, gStringVar2, nameRaterShow->pokemonNameLanguage);
sub_80BF820(2, 0, 3, 2, nameRaterShow->var1C, nameRaterShow);
StringCopy(gStringVar2, gSpeciesNames[nameRaterShow->var1C]);
- gUnknown_020387E8 = 18;
+ sTVShowState = 18;
break;
case 12:
state = 18;
- gUnknown_020387E8 = 18;
+ sTVShowState = 18;
case 18:
TVShowConvertInternationalString(gStringVar1, nameRaterShow->pokemonName, nameRaterShow->pokemonNameLanguage);
TVShowConvertInternationalString(gStringVar2, nameRaterShow->trainerName, nameRaterShow->language);
@@ -3214,7 +3223,7 @@ void DoTVShowPokemonTodaySuccessfulCapture(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
@@ -3222,53 +3231,53 @@ void DoTVShowPokemonTodaySuccessfulCapture(void)
StringCopy(gStringVar2, gSpeciesNames[pokemonToday->species]);
TVShowConvertInternationalString(gStringVar3, pokemonToday->nickname, pokemonToday->language2);
if (pokemonToday->ball == ITEM_MASTER_BALL)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
break;
case 1:
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 2:
StringCopy(gStringVar2, ItemId_GetItem(pokemonToday->ball)->name);
sub_80BF088(2, pokemonToday->var12);
if (pokemonToday->var12 < 4)
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
else
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
break;
case 3:
TVShowConvertInternationalString(gStringVar1, pokemonToday->playerName, pokemonToday->language);
StringCopy(gStringVar2, gSpeciesNames[pokemonToday->species]);
TVShowConvertInternationalString(gStringVar3, pokemonToday->nickname, pokemonToday->language2);
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 4:
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 5:
TVShowConvertInternationalString(gStringVar1, pokemonToday->playerName, pokemonToday->language);
StringCopy(gStringVar2, gSpeciesNames[pokemonToday->species]);
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 6:
TVShowConvertInternationalString(gStringVar1, pokemonToday->playerName, pokemonToday->language);
StringCopy(gStringVar2, gSpeciesNames[pokemonToday->species]);
TVShowConvertInternationalString(gStringVar3, pokemonToday->nickname, pokemonToday->language2);
- gUnknown_020387E8 += (Random() % 4) + 1;
+ sTVShowState += (Random() % 4) + 1;
break;
case 7:
case 8:
StringCopy(gStringVar1, gSpeciesNames[pokemonToday->species]);
TVShowConvertInternationalString(gStringVar2, pokemonToday->nickname, pokemonToday->language2);
sub_80BF638(2, pokemonToday->species);
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 9:
case 10:
StringCopy(gStringVar1, gSpeciesNames[pokemonToday->species]);
TVShowConvertInternationalString(gStringVar2, pokemonToday->nickname, pokemonToday->language2);
- gUnknown_020387E8 = 11;
+ sTVShowState = 11;
break;
case 11:
TVShowDone();
@@ -3283,36 +3292,36 @@ void DoTVShowPokemonTodayFailedCapture(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, pokemonTodayFailed->playerName, pokemonTodayFailed->language);
StringCopy(gStringVar2, gSpeciesNames[pokemonTodayFailed->species]);
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
break;
case 1:
TVShowConvertInternationalString(gStringVar1, pokemonTodayFailed->playerName, pokemonTodayFailed->language);
GetMapSectionName(gStringVar2, pokemonTodayFailed->var12, 0);
StringCopy(gStringVar3, gSpeciesNames[pokemonTodayFailed->species2]);
if (pokemonTodayFailed->var11 == 1)
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
else
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 2:
case 3:
TVShowConvertInternationalString(gStringVar1, pokemonTodayFailed->playerName, pokemonTodayFailed->language);
sub_80BF088(1, pokemonTodayFailed->var10);
if ((Random() % 3) == 0)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
break;
case 4:
case 5:
TVShowConvertInternationalString(gStringVar1, pokemonTodayFailed->playerName, pokemonTodayFailed->language);
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
break;
case 6:
TVShowDone();
@@ -3328,32 +3337,32 @@ void DoTVShowPokemonFanClubLetter(void)
u16 rval;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, fanclubLetter->playerName, fanclubLetter->language);
StringCopy(gStringVar2, gSpeciesNames[fanclubLetter->species]);
- gUnknown_020387E8 = 50;
+ sTVShowState = 50;
break;
case 1:
rval = (Random() % 4) + 1;
if (rval == 1)
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
else
- gUnknown_020387E8 = rval + 2;
+ sTVShowState = rval + 2;
break;
case 2:
- gUnknown_020387E8 = 51;
+ sTVShowState = 51;
break;
case 3:
- gUnknown_020387E8 += (Random() % 3) + 1;
+ sTVShowState += (Random() % 3) + 1;
break;
case 4:
case 5:
case 6:
sub_80BF79C((TVShow *)fanclubLetter);
- gUnknown_020387E8 = 7;
+ sTVShowState = 7;
break;
case 7:
rval = (Random() % 0x1f) + 0x46;
@@ -3363,12 +3372,12 @@ void DoTVShowPokemonFanClubLetter(void)
case 50:
ConvertEasyChatWordsToString(gStringVar4, fanclubLetter->pad04, 2, 2);
ShowFieldMessage(gStringVar4);
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
return;
case 51:
ConvertEasyChatWordsToString(gStringVar4, fanclubLetter->pad04, 2, 2);
ShowFieldMessage(gStringVar4);
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
return;
}
ShowFieldMessage(gTVFanClubTextGroup[state]);
@@ -3380,21 +3389,21 @@ void DoTVShowRecentHappenings(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, recentHappenings->playerName, recentHappenings->language);
sub_80BF79C((TVShow *)recentHappenings);
- gUnknown_020387E8 = 50;
+ sTVShowState = 50;
break;
case 1:
- gUnknown_020387E8 += 1 + (Random() % 3);
+ sTVShowState += 1 + (Random() % 3);
break;
case 2:
case 3:
case 4:
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
break;
case 5:
TVShowDone();
@@ -3402,7 +3411,7 @@ void DoTVShowRecentHappenings(void)
case 50:
ConvertEasyChatWordsToString(gStringVar4, recentHappenings->var04, 2, 2);
ShowFieldMessage(gStringVar4);
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
return;
}
ShowFieldMessage(gTVRecentHappeningsTextGroup[state]);
@@ -3414,14 +3423,14 @@ void DoTVShowPokemonFanClubOpinions(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
TVShowConvertInternationalString(gStringVar1, fanclubOpinions->playerName, fanclubOpinions->language);
StringCopy(gStringVar2, gSpeciesNames[fanclubOpinions->var02]);
TVShowConvertInternationalString(gStringVar3, fanclubOpinions->var10, fanclubOpinions->var0E);
- gUnknown_020387E8 = fanclubOpinions->var04B + 1;
+ sTVShowState = fanclubOpinions->var04B + 1;
break;
case 1:
case 2:
@@ -3429,7 +3438,7 @@ void DoTVShowPokemonFanClubOpinions(void)
TVShowConvertInternationalString(gStringVar1, fanclubOpinions->playerName, fanclubOpinions->language);
StringCopy(gStringVar2, gSpeciesNames[fanclubOpinions->var02]);
EasyChat_GetWordText(gStringVar3, fanclubOpinions->var1C[0]);
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
break;
case 4:
TVShowConvertInternationalString(gStringVar1, fanclubOpinions->playerName, fanclubOpinions->language);
@@ -3452,7 +3461,7 @@ void DoTVShowPokemonNewsMassOutbreak(void)
StringCopy(gStringVar2, gSpeciesNames[massOutbreak->species]);
TVShowDone();
StartMassOutbreak();
- ShowFieldMessage(gTVPokemonOutbreakTextGroup[gUnknown_020387E8]);
+ ShowFieldMessage(gTVPokemonOutbreakTextGroup[sTVShowState]);
}
void DoTVShowInSearchOfTrainers(void)
@@ -3460,49 +3469,49 @@ void DoTVShowInSearchOfTrainers(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
GetMapSectionName(gStringVar1, gSaveBlock1.gabbyAndTyData.mapnum, 0);
if (gSaveBlock1.gabbyAndTyData.battleNum > 1)
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
else
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 1:
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 2:
if (gSaveBlock1.gabbyAndTyData.valA_0 == 0)
- gUnknown_020387E8 = 4;
+ sTVShowState = 4;
else if (gSaveBlock1.gabbyAndTyData.valA_3 != 0)
- gUnknown_020387E8 = 5;
+ sTVShowState = 5;
else if (gSaveBlock1.gabbyAndTyData.valA_2 != 0)
- gUnknown_020387E8 = 6;
+ sTVShowState = 6;
else if (gSaveBlock1.gabbyAndTyData.valA_1 != 0)
- gUnknown_020387E8 = 7;
+ sTVShowState = 7;
else
- gUnknown_020387E8 = 3;
+ sTVShowState = 3;
break;
case 3:
StringCopy(gStringVar1, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon1]);
StringCopy(gStringVar2, gMoveNames[gSaveBlock1.gabbyAndTyData.lastMove]);
StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon2]);
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
break;
case 4:
case 5:
case 6:
case 7:
- gUnknown_020387E8 = 8;
+ sTVShowState = 8;
break;
case 8:
EasyChat_GetWordText(gStringVar1, gSaveBlock1.gabbyAndTyData.quote);
StringCopy(gStringVar2, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon1]);
StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon2]);
gSpecialVar_Result = 1;
- gUnknown_020387E8 = 0;;
+ sTVShowState = 0;;
TakeTVShowInSearchOfTrainersOffTheAir();
break;
}
@@ -3516,10 +3525,10 @@ void DoTVShowPokemonAngler(void)
gSpecialVar_Result = 0;
if (pokemonAngler->var02 < pokemonAngler->var03)
- gUnknown_020387E8 = 0;
+ sTVShowState = 0;
else
- gUnknown_020387E8 = 1;
- state = gUnknown_020387E8;
+ sTVShowState = 1;
+ state = sTVShowState;
switch (state)
{
case 0:
@@ -3544,7 +3553,7 @@ void DoTVShowTheWorldOfMasters(void)
u8 state;
gSpecialVar_Result = 0;
- state = gUnknown_020387E8;
+ state = sTVShowState;
switch (state)
{
case 0:
@@ -3552,11 +3561,11 @@ void DoTVShowTheWorldOfMasters(void)
worldOfMasters->language);
sub_80BF088(1, worldOfMasters->var06);
sub_80BF088(2, worldOfMasters->var02);
- gUnknown_020387E8 = 1;
+ sTVShowState = 1;
break;
case 1:
StringCopy(gStringVar1, gSpeciesNames[worldOfMasters->var08]);
- gUnknown_020387E8 = 2;
+ sTVShowState = 2;
break;
case 2:
TVShowConvertInternationalString(gStringVar1, worldOfMasters->playerName,
@@ -3572,11 +3581,11 @@ void DoTVShowTheWorldOfMasters(void)
void TVShowDone(void)
{
gSpecialVar_Result = 1;
- gUnknown_020387E8 = 0;
- gSaveBlock1.tvShows[gSpecialVar_0x8004].common.var01 = 0;
+ sTVShowState = 0;
+ gSaveBlock1.tvShows[gSpecialVar_0x8004].common.active = 0;
}
-void sub_80C2014(void)
+void ResetTVShowState(void)
{
- gUnknown_020387E8 = 0;
+ sTVShowState = 0;
}