Merge branch 'master' into fix-eventobj
This commit is contained in:
@@ -1582,7 +1582,7 @@ static bool32 UpdateRandomTrainerRematches(const struct RematchTrainer *table, u
|
||||
s32 i;
|
||||
bool32 ret = FALSE;
|
||||
|
||||
for (i = 0; i <= REMATCH_WALLY_3; i++)
|
||||
for (i = 0; i <= REMATCH_SPECIAL_TRAINER_START; i++)
|
||||
{
|
||||
if (table[i].mapGroup == mapGroup && table[i].mapNum == mapNum && !sub_80B1D94(i))
|
||||
{
|
||||
@@ -1641,7 +1641,7 @@ static bool8 IsFirstTrainerIdReadyForRematch(const struct RematchTrainer *table,
|
||||
|
||||
if (tableId == -1)
|
||||
return FALSE;
|
||||
if (tableId >= 100)
|
||||
if (tableId >= MAX_REMATCH_ENTRIES)
|
||||
return FALSE;
|
||||
if (gSaveBlock1Ptr->trainerRematches[tableId] == 0)
|
||||
return FALSE;
|
||||
@@ -1655,7 +1655,7 @@ static bool8 IsTrainerReadyForRematch_(const struct RematchTrainer *table, u16 t
|
||||
|
||||
if (tableId == -1)
|
||||
return FALSE;
|
||||
if (tableId >= 100)
|
||||
if (tableId >= MAX_REMATCH_ENTRIES)
|
||||
return FALSE;
|
||||
if (gSaveBlock1Ptr->trainerRematches[tableId] == 0)
|
||||
return FALSE;
|
||||
|
||||
@@ -1,399 +1,394 @@
|
||||
#define MCFLAVOR(name) {gMatchCallFlavorText_##name##_Strategy, \
|
||||
gMatchCallFlavorText_##name##_Pokemon, \
|
||||
gMatchCallFlavorText_##name##_Intro1, \
|
||||
gMatchCallFlavorText_##name##_Intro2}
|
||||
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Strategy[] = _("Becalm fighting emotions.");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Pokemon[] = _("Fragrant GRASS POKéMON.");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Intro1[] = _("Soothing aromas make the");
|
||||
const u8 gMatchCallFlavorText_AromaLady_Rose_Intro2[] = _("body and mind healthy.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Strategy[] = _("I'm not very good at this.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Pokemon[] = _("Ruin-exploration partners.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Intro1[] = _("I am searching for undersea");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Andres_Intro2[] = _("ruins and relics.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Strategy[] = _("Overwhelm with power!");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Pokemon[] = _("Craggy ROCK POKéMON.");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Intro1[] = _("In search of ancient lore,");
|
||||
const u8 gMatchCallFlavorText_RuinManiac_Dusty_Intro2[] = _("I travel the world.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Strategy[] = _("I'm going to try hard!");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Pokemon[] = _("Good swimmer POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Intro1[] = _("I wish I could swim without");
|
||||
const u8 gMatchCallFlavorText_Tuber_Lola_Intro2[] = _("using an inner tube.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Strategy[] = _("I don't know. I'll try hard.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Pokemon[] = _("WATER POKéMON are buddies.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Intro1[] = _("It's not like I can't swim.");
|
||||
const u8 gMatchCallFlavorText_Tuber_Ricky_Intro2[] = _("I just like my inner tube.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Strategy[] = _("We split our duties.");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Pokemon[] = _("We like friendly POKéMON.");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Intro1[] = _("We enjoy POKéMON together");
|
||||
const u8 gMatchCallFlavorText_SisAndBro_LilaAndRoy_Intro2[] = _("as sister and brother.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Strategy[] = _("I finish with power moves!");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Pokemon[] = _("A mix of different types.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Intro1[] = _("I aim to become the ultimate");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Cristin_Intro2[] = _("TRAINER!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Strategy[] = _("Exploit the foe's weakness.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Pokemon[] = _("Balance is crucial.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Intro1[] = _("My goal is to become the");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Brooke_Intro2[] = _("POKéMON CHAMPION.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Strategy[] = _("Upset the opponent.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Pokemon[] = _("Type doesn't matter.");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Intro1[] = _("I'm a top student at the");
|
||||
const u8 gMatchCallFlavorText_Cooltrainer_Wilton_Intro2[] = _("TRAINER'S SCHOOL.");
|
||||
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Strategy[] = _("Slow, steady suffering.");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Pokemon[] = _("Scary to meet at night.");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Intro1[] = _("I see things that others");
|
||||
const u8 gMatchCallFlavorText_HexManiac_Valerie_Intro2[] = _("can't see...");
|
||||
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Strategy[] = _("Anything to win.");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Pokemon[] = _("Gorgeous type!");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Intro1[] = _("I have a pool specially for");
|
||||
const u8 gMatchCallFlavorText_Lady_Cindy_Intro2[] = _("my POKéMON at home.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Strategy[] = _("You'll fall under my spell!");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Pokemon[] = _("Mature WATER type.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Intro1[] = _("I dream of cruising around");
|
||||
const u8 gMatchCallFlavorText_Beauty_Thalia_Intro2[] = _("the world on a luxury liner.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Strategy[] = _("I'll lead you astray.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Pokemon[] = _("Cute, of course.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Intro1[] = _("I love the SAFARI ZONE.");
|
||||
const u8 gMatchCallFlavorText_Beauty_Jessica_Intro2[] = _("I seem to end up there.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Strategy[] = _("Strategy? Who needs it?");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Pokemon[] = _("I spent big money on it!");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Intro1[] = _("I, being rich, sleep in a");
|
||||
const u8 gMatchCallFlavorText_RichBoy_Winston_Intro2[] = _("custom POKéMON bed.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Strategy[] = _("Wrestle down with power.");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Pokemon[] = _("Took all night to catch.");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Intro1[] = _("Big, burly, and buff");
|
||||
const u8 gMatchCallFlavorText_PokeManiac_Steve_Intro2[] = _("POKéMON are the best...");
|
||||
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Strategy[] = _("Ram at full speed!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Pokemon[] = _("Funky WATER type!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Intro1[] = _("If I can't be out swimming,");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Tony_Intro2[] = _("I'll be pumping weights.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Strategy[] = _("Grand slam pummeling!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Pokemon[] = _("FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Intro1[] = _("Not to brag, but I can bust");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Nob_Intro2[] = _("ten roof tiles!");
|
||||
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Strategy[] = _("Witness karate power!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Pokemon[] = _("My partners in training!");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Intro1[] = _("Let us discuss matters of");
|
||||
const u8 gMatchCallFlavorText_BlackBelt_Koji_Intro2[] = _("the world with bare fists!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Strategy[] = _("Rock to stunning sounds!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Pokemon[] = _("Electric-and-sound combo!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Intro1[] = _("My compositions will shock");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Fernando_Intro2[] = _("you and stun you!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Strategy[] = _("I'll electrify you!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Pokemon[] = _("They're ELECTRIC!");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Intro1[] = _("I want to make people cry");
|
||||
const u8 gMatchCallFlavorText_Guitarist_Dalton_Intro2[] = _("with songs from my heart.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Strategy[] = _("Burn it all down!");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Pokemon[] = _("Burn-inducing POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Intro1[] = _("When you light a campfire,");
|
||||
const u8 gMatchCallFlavorText_Kindler_Bernie_Intro2[] = _("be sure there's some water.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Strategy[] = _("Hang in and be tenacious!");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Pokemon[] = _("I'll raise any POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Intro1[] = _("POKéMON raised in the wild");
|
||||
const u8 gMatchCallFlavorText_Camper_Ethan_Intro2[] = _("grow strong!");
|
||||
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Strategy[] = _("Our love lets us prevail.");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Pokemon[] = _("We've had them for years.");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Intro1[] = _("Married 50 years, we've");
|
||||
const u8 gMatchCallFlavorText_OldCouple_JohnAndJay_Intro2[] = _("devotedly raised POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Strategy[] = _("Attack in waves!");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Pokemon[] = _("BUG POKéMON are cool.");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Intro1[] = _("I go into the forest every");
|
||||
const u8 gMatchCallFlavorText_BugManiac_Jeffrey_Intro2[] = _("day to catch BUG POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Strategy[] = _("Daze and confuse!");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Pokemon[] = _("Ones with weird powers.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Intro1[] = _("I can see through exactly");
|
||||
const u8 gMatchCallFlavorText_Psychic_Cameron_Intro2[] = _("what you're thinking!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Strategy[] = _("Battle at full power.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Pokemon[] = _("POKéMON of many mysteries.");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Intro1[] = _("When we spoke, I was really");
|
||||
const u8 gMatchCallFlavorText_Psychic_Jacki_Intro2[] = _("using telepathy.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Strategy[] = _("Calm and collected.");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Pokemon[] = _("POKéMON of distinction.");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Intro1[] = _("We enjoy a spot of tea");
|
||||
const u8 gMatchCallFlavorText_Gentleman_Walter_Intro2[] = _("every day. It's imported.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Strategy[] = _("I use my head to battle.");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Pokemon[] = _("I love any kind of POKéMON!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Intro1[] = _("My daddy gives me spending");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Karen_Intro2[] = _("money if I ace a test.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Strategy[] = _("My knowledge rules!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Pokemon[] = _("Any smart POKéMON!");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Intro1[] = _("I want to be a POKéMON");
|
||||
const u8 gMatchCallFlavorText_SchoolKid_Jerry_Intro2[] = _("researcher in the future.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Strategy[] = _("We talk it over first.");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Pokemon[] = _("POKéMON that we both like.");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Intro1[] = _("We're senior and junior");
|
||||
const u8 gMatchCallFlavorText_SrAndJr_AnnaAndMeg_Intro2[] = _("students into POKéMON!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Strategy[] = _("Go for it, my dears!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Pokemon[] = _("I have no likes or dislikes.");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Intro1[] = _("While out shopping for");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Isabel_Intro2[] = _("supper, I battle too.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Strategy[] = _("I battle with love!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Pokemon[] = _("A POKéMON raised with love!");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Intro1[] = _("It's important to build");
|
||||
const u8 gMatchCallFlavorText_Pokefan_Miguel_Intro2[] = _("trust with your POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Strategy[] = _("I see through your moves!");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Pokemon[] = _("The essence of FIGHTING.");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Intro1[] = _("I'm not ready to give way");
|
||||
const u8 gMatchCallFlavorText_Expert_Timothy_Intro2[] = _("to the young yet!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Strategy[] = _("Attack while defending.");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Pokemon[] = _("The FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Intro1[] = _("Being old, I have my own");
|
||||
const u8 gMatchCallFlavorText_Expert_Shelby_Intro2[] = _("style of battling.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Strategy[] = _("I do what I can.");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Pokemon[] = _("I use different types.");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Intro1[] = _("I'm going to keep working");
|
||||
const u8 gMatchCallFlavorText_Youngster_Calvin_Intro2[] = _("until I beat a GYM LEADER.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Strategy[] = _("I battle patiently.");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Pokemon[] = _("WATER POKéMON to battle!");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Intro1[] = _("I'm the world's only guy to");
|
||||
const u8 gMatchCallFlavorText_Fisherman_Elliot_Intro2[] = _("catch a huge POKéMON!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Strategy[] = _("Exploit the environment!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Pokemon[] = _("All hail the WATER type!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Intro1[] = _("I won't be beaten by some");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Isaiah_Intro2[] = _("beach bum SWIMMER!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Strategy[] = _("Speed above all!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Pokemon[] = _("I use a speedy POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Intro1[] = _("A marathon is a challenge");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Maria_Intro2[] = _("against your own self.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Strategy[] = _("Defense is crucial.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Pokemon[] = _("My POKéMON is solid.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Intro1[] = _("I started this for dieting,");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Abigail_Intro2[] = _("but I got right into it.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Strategy[] = _("Strike before stricken!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Pokemon[] = _("A fast-running POKéMON!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Intro1[] = _("If you ran and ran, you'd");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Dylan_Intro2[] = _("become one with the wind.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Strategy[] = _("All-out offensive!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Pokemon[] = _("WATER POKéMON rule!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Intro1[] = _("I must swim over 6 miles");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Katelyn_Intro2[] = _("every day.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Strategy[] = _("Push and push again!");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Pokemon[] = _("The strength of STEEL.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Intro1[] = _("If you're sweating, get");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Benjamin_Intro2[] = _("fluids into you regularly.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Strategy[] = _("Draw the power of WATER.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Pokemon[] = _("Toughened WATER POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Intro1[] = _("Training POKéMON is good,");
|
||||
const u8 gMatchCallFlavorText_Triathlete_Pablo_Intro2[] = _("but don't neglect yourself.");
|
||||
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Strategy[] = _("It's about POKéMON power!");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Pokemon[] = _("See the power of DRAGONS!");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Intro1[] = _("I'll become legendary as the");
|
||||
const u8 gMatchCallFlavorText_DragonTamer_Nicolas_Intro2[] = _("strongest one day!");
|
||||
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Strategy[] = _("I'll show you my technique!");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Pokemon[] = _("Elegantly wheeling BIRDS.");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Intro1[] = _("My BIRD POKéMON, deliver my");
|
||||
const u8 gMatchCallFlavorText_BirdKeeper_Robert_Intro2[] = _("love to that girl!");
|
||||
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Strategy[] = _("You'll suffer from poison!");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Pokemon[] = _("Poisonous POKéMON.");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Intro1[] = _("I undertake training so");
|
||||
const u8 gMatchCallFlavorText_NinjaBoy_Lao_Intro2[] = _("that I may become a ninja.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Strategy[] = _("The first strike wins!");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Pokemon[] = _("Speedy FIGHTING type.");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Intro1[] = _("If my POKéMON lose,");
|
||||
const u8 gMatchCallFlavorText_BattleGirl_Cyndy_Intro2[] = _("I'll carry on the fight!");
|
||||
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Strategy[] = _("Go, go, my POKéMON!");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Pokemon[] = _("I'll raise anything.");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Intro1[] = _("UV rays are your skin's");
|
||||
const u8 gMatchCallFlavorText_ParasolLady_Madeline_Intro2[] = _("enemy. Get protected.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Strategy[] = _("No mercy!");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Pokemon[] = _("Cute WATER POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Intro1[] = _("I have too many fans.");
|
||||
const u8 gMatchCallFlavorText_Swimmer_Jenny_Intro2[] = _("I was interviewed on TV.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Strategy[] = _("I think about this & that.");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Pokemon[] = _("I like all POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Intro1[] = _("What lies beyond that");
|
||||
const u8 gMatchCallFlavorText_Picnicker_Diana_Intro2[] = _("yonder hill?");
|
||||
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Strategy[] = _("We battle together!");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Pokemon[] = _("We train together!");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Intro1[] = _("We like the same POKéMON,");
|
||||
const u8 gMatchCallFlavorText_Twins_AmyAndLiv_Intro2[] = _("but different desserts.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Strategy[] = _("I force things with power!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Pokemon[] = _("WATER and FIGHTING types.");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Intro1[] = _("Seamen are rough spirits!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Ernest_Intro2[] = _("Any complaints?");
|
||||
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Strategy[] = _("Up for a fight anytime!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Pokemon[] = _("WATER POKéMON are my faves!");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Intro1[] = _("If you want to shout loud,");
|
||||
const u8 gMatchCallFlavorText_Sailor_Cory_Intro2[] = _("suck in air with your belly!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Strategy[] = _("Protect POKéMON from harm.");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Pokemon[] = _("I love rare POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Intro1[] = _("I want to collect all the");
|
||||
const u8 gMatchCallFlavorText_Collector_Edwin_Intro2[] = _("world's rare POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Strategy[] = _("I count on power.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Pokemon[] = _("POKéMON are my children.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Intro1[] = _("It takes knowledge and");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Lydia_Intro2[] = _("love to raise POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Strategy[] = _("Full-on attack!");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Pokemon[] = _("Anything. I'll raise it.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Intro1[] = _("I give them {POKEBLOCK}S for");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Isaac_Intro2[] = _("going after CONTEST titles.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Strategy[] = _("I raise POKéMON with care.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Pokemon[] = _("Fun-to-raise POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Intro1[] = _("Treat every POKéMON you");
|
||||
const u8 gMatchCallFlavorText_PkmnBreeder_Gabrielle_Intro2[] = _("meet with respect.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Strategy[] = _("I believe in my POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Pokemon[] = _("I like strong POKéMON.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Intro1[] = _("I'm training for rescue");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Catherine_Intro2[] = _("work with my POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Strategy[] = _("Attack in waves!");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Pokemon[] = _("I use different types.");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Intro1[] = _("Those who destroy nature");
|
||||
const u8 gMatchCallFlavorText_PkmnRanger_Jackson_Intro2[] = _("must never be forgiven!");
|
||||
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Strategy[] = _("I'll show you some guts!");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Pokemon[] = _("Cute POKéMON are my faves!");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Intro1[] = _("After a battle, I always");
|
||||
const u8 gMatchCallFlavorText_Lass_Haley_Intro2[] = _("bathe with my POKéMON.");
|
||||
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Strategy[] = _("Lightning-fast attack!");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Pokemon[] = _("BUG POKéMON are number 1!");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Intro1[] = _("If you want to catch BUG");
|
||||
const u8 gMatchCallFlavorText_BugCatcher_James_Intro2[] = _("POKéMON, wake up early.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Strategy[] = _("I battle with power.");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Pokemon[] = _("Hard-bodied POKéMON.");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Intro1[] = _("I've been planning a month");
|
||||
const u8 gMatchCallFlavorText_Hiker_Trent_Intro2[] = _("for today's hike.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Strategy[] = _("I like it hot!");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Pokemon[] = _("Hot POKéMON!");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Intro1[] = _("As much as I love POKéMON,");
|
||||
const u8 gMatchCallFlavorText_Hiker_Sawyer_Intro2[] = _("I surely like hiking!");
|
||||
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Strategy[] = _("Lovey-dovey strategy!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Pokemon[] = _("Lovey-dovey POKéMON!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Intro1[] = _("We're lovey-dovey!");
|
||||
const u8 gMatchCallFlavorText_YoungCouple_LoisAndHal_Intro2[] = _("Forever lovey-dovey!");
|
||||
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Strategy[] = _("We let it all hang out.");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Pokemon[] = _("The 1st POKéMON I caught.");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Intro1[] = _("POKéMON and I have grown");
|
||||
const u8 gMatchCallFlavorText_PkmnTrainer_Wally_Intro2[] = _("stronger together.");
|
||||
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Strategy[] = _("ROCK-type power attack.");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Pokemon[] = _("I prefer rock-hard POKéMON.");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Intro1[] = _("A LEADER of a big GYM bears");
|
||||
const u8 gMatchCallFlavorText_RockinWhiz_Roxanne_Intro2[] = _("a lot of responsibility.");
|
||||
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Strategy[] = _("Direct physical action!");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Pokemon[] = _("FIGHTING POKéMON rule!");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Intro1[] = _("The world awaits me as the");
|
||||
const u8 gMatchCallFlavorText_TheBigHit_Brawly_Intro2[] = _("next big wave!");
|
||||
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Strategy[] = _("I choose to electrify.");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Pokemon[] = _("Get shocked by electricity!");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Intro1[] = _("One must never throw a");
|
||||
const u8 gMatchCallFlavorText_SwellShock_Wattson_Intro2[] = _("match. Even I must not.");
|
||||
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Strategy[] = _("Battle aggressively.");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Pokemon[] = _("Burn with passion!");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Intro1[] = _("Completely wash away daily");
|
||||
const u8 gMatchCallFlavorText_PassionBurn_Flannery_Intro2[] = _("fatigue in hot springs!");
|
||||
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Strategy[] = _("I flexibly adapt my style.");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Pokemon[] = _("Grown in a balanced manner.");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Intro1[] = _("I walk the 30 minutes from");
|
||||
const u8 gMatchCallFlavorText_ReliableOne_Dad_Intro2[] = _("home to here every day.");
|
||||
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Strategy[] = _("I take advantage of speed.");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Pokemon[] = _("Graceful sky dancers.");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Intro1[] = _("The ultimate would be to");
|
||||
const u8 gMatchCallFlavorText_SkyTamer_Winona_Intro2[] = _("live as one with nature.");
|
||||
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Strategy[] = _("We battle in cooperation.");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Pokemon[] = _("Always friendly POKéMON.");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Intro1[] = _("Papa has trouble telling");
|
||||
const u8 gMatchCallFlavorText_MysticDuo_TateAndLiza_Intro2[] = _("the two of us apart!");
|
||||
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Strategy[] = _("I use splendid waterpower.");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Pokemon[] = _("POKéMON of elegance!");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Intro1[] = _("The adulation of beautiful");
|
||||
const u8 gMatchCallFlavorText_DandyCharm_Juan_Intro2[] = _("ladies fills me with energy!");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Strategy[] = _("Offense over defense!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Pokemon[] = _("The DARK side's beauties.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Intro1[] = _("They said I was a punk, but");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Sidney_Intro2[] = _("I'm one of the ELITE FOUR!");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Strategy[] = _("Confuse and confound.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Pokemon[] = _("There's nothing definite.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Intro1[] = _("I wonder how my grandma at");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Phoebe_Intro2[] = _("MT. PYRE is doing?");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Strategy[] = _("I use items for help.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Pokemon[] = _("Flaming passion in icy cold!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Intro1[] = _("The ICE type can be better");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Glacia_Intro2[] = _("trained in this hot land.");
|
||||
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Strategy[] = _("Harness strong abilities.");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Pokemon[] = _("The raw power of DRAGONS!");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Intro1[] = _("I dedicate myself to the");
|
||||
const u8 gMatchCallFlavorText_EliteFour_Drake_Intro2[] = _("POKéMON that saved me.");
|
||||
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Strategy[] = _("Dignity and respect.");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Pokemon[] = _("I prefer POKéMON of grace.");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Intro1[] = _("I represent beauty as");
|
||||
const u8 gMatchCallFlavorText_Champion_Wallace_Intro2[] = _("well as intelligence.");
|
||||
|
||||
const u8 *const gMatchCallMessages[][4] =
|
||||
const u8 gText_MatchCallAromaLady_Rose_Strategy[] = _("Becalm fighting emotions.");
|
||||
const u8 gText_MatchCallAromaLady_Rose_Pokemon[] = _("Fragrant GRASS POKéMON.");
|
||||
const u8 gText_MatchCallAromaLady_Rose_Intro1[] = _("Soothing aromas make the");
|
||||
const u8 gText_MatchCallAromaLady_Rose_Intro2[] = _("body and mind healthy.");
|
||||
|
||||
const u8 gText_MatchCallRuinManiac_Andres_Strategy[] = _("I'm not very good at this.");
|
||||
const u8 gText_MatchCallRuinManiac_Andres_Pokemon[] = _("Ruin-exploration partners.");
|
||||
const u8 gText_MatchCallRuinManiac_Andres_Intro1[] = _("I am searching for undersea");
|
||||
const u8 gText_MatchCallRuinManiac_Andres_Intro2[] = _("ruins and relics.");
|
||||
|
||||
const u8 gText_MatchCallRuinManiac_Dusty_Strategy[] = _("Overwhelm with power!");
|
||||
const u8 gText_MatchCallRuinManiac_Dusty_Pokemon[] = _("Craggy ROCK POKéMON.");
|
||||
const u8 gText_MatchCallRuinManiac_Dusty_Intro1[] = _("In search of ancient lore,");
|
||||
const u8 gText_MatchCallRuinManiac_Dusty_Intro2[] = _("I travel the world.");
|
||||
|
||||
const u8 gText_MatchCallTuber_Lola_Strategy[] = _("I'm going to try hard!");
|
||||
const u8 gText_MatchCallTuber_Lola_Pokemon[] = _("Good swimmer POKéMON.");
|
||||
const u8 gText_MatchCallTuber_Lola_Intro1[] = _("I wish I could swim without");
|
||||
const u8 gText_MatchCallTuber_Lola_Intro2[] = _("using an inner tube.");
|
||||
|
||||
const u8 gText_MatchCallTuber_Ricky_Strategy[] = _("I don't know. I'll try hard.");
|
||||
const u8 gText_MatchCallTuber_Ricky_Pokemon[] = _("WATER POKéMON are buddies.");
|
||||
const u8 gText_MatchCallTuber_Ricky_Intro1[] = _("It's not like I can't swim.");
|
||||
const u8 gText_MatchCallTuber_Ricky_Intro2[] = _("I just like my inner tube.");
|
||||
|
||||
const u8 gText_MatchCallSisAndBro_LilaAndRoy_Strategy[] = _("We split our duties.");
|
||||
const u8 gText_MatchCallSisAndBro_LilaAndRoy_Pokemon[] = _("We like friendly POKéMON.");
|
||||
const u8 gText_MatchCallSisAndBro_LilaAndRoy_Intro1[] = _("We enjoy POKéMON together");
|
||||
const u8 gText_MatchCallSisAndBro_LilaAndRoy_Intro2[] = _("as sister and brother.");
|
||||
|
||||
const u8 gText_MatchCallCooltrainer_Cristin_Strategy[] = _("I finish with power moves!");
|
||||
const u8 gText_MatchCallCooltrainer_Cristin_Pokemon[] = _("A mix of different types.");
|
||||
const u8 gText_MatchCallCooltrainer_Cristin_Intro1[] = _("I aim to become the ultimate");
|
||||
const u8 gText_MatchCallCooltrainer_Cristin_Intro2[] = _("TRAINER!");
|
||||
|
||||
const u8 gText_MatchCallCooltrainer_Brooke_Strategy[] = _("Exploit the foe's weakness.");
|
||||
const u8 gText_MatchCallCooltrainer_Brooke_Pokemon[] = _("Balance is crucial.");
|
||||
const u8 gText_MatchCallCooltrainer_Brooke_Intro1[] = _("My goal is to become the");
|
||||
const u8 gText_MatchCallCooltrainer_Brooke_Intro2[] = _("POKéMON CHAMPION.");
|
||||
|
||||
const u8 gText_MatchCallCooltrainer_Wilton_Strategy[] = _("Upset the opponent.");
|
||||
const u8 gText_MatchCallCooltrainer_Wilton_Pokemon[] = _("Type doesn't matter.");
|
||||
const u8 gText_MatchCallCooltrainer_Wilton_Intro1[] = _("I'm a top student at the");
|
||||
const u8 gText_MatchCallCooltrainer_Wilton_Intro2[] = _("TRAINER'S SCHOOL.");
|
||||
|
||||
const u8 gText_MatchCallHexManiac_Valerie_Strategy[] = _("Slow, steady suffering.");
|
||||
const u8 gText_MatchCallHexManiac_Valerie_Pokemon[] = _("Scary to meet at night.");
|
||||
const u8 gText_MatchCallHexManiac_Valerie_Intro1[] = _("I see things that others");
|
||||
const u8 gText_MatchCallHexManiac_Valerie_Intro2[] = _("can't see...");
|
||||
|
||||
const u8 gText_MatchCallLady_Cindy_Strategy[] = _("Anything to win.");
|
||||
const u8 gText_MatchCallLady_Cindy_Pokemon[] = _("Gorgeous type!");
|
||||
const u8 gText_MatchCallLady_Cindy_Intro1[] = _("I have a pool specially for");
|
||||
const u8 gText_MatchCallLady_Cindy_Intro2[] = _("my POKéMON at home.");
|
||||
|
||||
const u8 gText_MatchCallBeauty_Thalia_Strategy[] = _("You'll fall under my spell!");
|
||||
const u8 gText_MatchCallBeauty_Thalia_Pokemon[] = _("Mature WATER type.");
|
||||
const u8 gText_MatchCallBeauty_Thalia_Intro1[] = _("I dream of cruising around");
|
||||
const u8 gText_MatchCallBeauty_Thalia_Intro2[] = _("the world on a luxury liner.");
|
||||
|
||||
const u8 gText_MatchCallBeauty_Jessica_Strategy[] = _("I'll lead you astray.");
|
||||
const u8 gText_MatchCallBeauty_Jessica_Pokemon[] = _("Cute, of course.");
|
||||
const u8 gText_MatchCallBeauty_Jessica_Intro1[] = _("I love the SAFARI ZONE.");
|
||||
const u8 gText_MatchCallBeauty_Jessica_Intro2[] = _("I seem to end up there.");
|
||||
|
||||
const u8 gText_MatchCallRichBoy_Winston_Strategy[] = _("Strategy? Who needs it?");
|
||||
const u8 gText_MatchCallRichBoy_Winston_Pokemon[] = _("I spent big money on it!");
|
||||
const u8 gText_MatchCallRichBoy_Winston_Intro1[] = _("I, being rich, sleep in a");
|
||||
const u8 gText_MatchCallRichBoy_Winston_Intro2[] = _("custom POKéMON bed.");
|
||||
|
||||
const u8 gText_MatchCallPokeManiac_Steve_Strategy[] = _("Wrestle down with power.");
|
||||
const u8 gText_MatchCallPokeManiac_Steve_Pokemon[] = _("Took all night to catch.");
|
||||
const u8 gText_MatchCallPokeManiac_Steve_Intro1[] = _("Big, burly, and buff");
|
||||
const u8 gText_MatchCallPokeManiac_Steve_Intro2[] = _("POKéMON are the best...");
|
||||
|
||||
const u8 gText_MatchCallSwimmer_Tony_Strategy[] = _("Ram at full speed!");
|
||||
const u8 gText_MatchCallSwimmer_Tony_Pokemon[] = _("Funky WATER type!");
|
||||
const u8 gText_MatchCallSwimmer_Tony_Intro1[] = _("If I can't be out swimming,");
|
||||
const u8 gText_MatchCallSwimmer_Tony_Intro2[] = _("I'll be pumping weights.");
|
||||
|
||||
const u8 gText_MatchCallBlackBelt_Nob_Strategy[] = _("Grand slam pummeling!");
|
||||
const u8 gText_MatchCallBlackBelt_Nob_Pokemon[] = _("FIGHTING type.");
|
||||
const u8 gText_MatchCallBlackBelt_Nob_Intro1[] = _("Not to brag, but I can bust");
|
||||
const u8 gText_MatchCallBlackBelt_Nob_Intro2[] = _("ten roof tiles!");
|
||||
|
||||
const u8 gText_MatchCallBlackBelt_Koji_Strategy[] = _("Witness karate power!");
|
||||
const u8 gText_MatchCallBlackBelt_Koji_Pokemon[] = _("My partners in training!");
|
||||
const u8 gText_MatchCallBlackBelt_Koji_Intro1[] = _("Let us discuss matters of");
|
||||
const u8 gText_MatchCallBlackBelt_Koji_Intro2[] = _("the world with bare fists!");
|
||||
|
||||
const u8 gText_MatchCallGuitarist_Fernando_Strategy[] = _("Rock to stunning sounds!");
|
||||
const u8 gText_MatchCallGuitarist_Fernando_Pokemon[] = _("Electric-and-sound combo!");
|
||||
const u8 gText_MatchCallGuitarist_Fernando_Intro1[] = _("My compositions will shock");
|
||||
const u8 gText_MatchCallGuitarist_Fernando_Intro2[] = _("you and stun you!");
|
||||
|
||||
const u8 gText_MatchCallGuitarist_Dalton_Strategy[] = _("I'll electrify you!");
|
||||
const u8 gText_MatchCallGuitarist_Dalton_Pokemon[] = _("They're ELECTRIC!");
|
||||
const u8 gText_MatchCallGuitarist_Dalton_Intro1[] = _("I want to make people cry");
|
||||
const u8 gText_MatchCallGuitarist_Dalton_Intro2[] = _("with songs from my heart.");
|
||||
|
||||
const u8 gText_MatchCallKindler_Bernie_Strategy[] = _("Burn it all down!");
|
||||
const u8 gText_MatchCallKindler_Bernie_Pokemon[] = _("Burn-inducing POKéMON.");
|
||||
const u8 gText_MatchCallKindler_Bernie_Intro1[] = _("When you light a campfire,");
|
||||
const u8 gText_MatchCallKindler_Bernie_Intro2[] = _("be sure there's some water.");
|
||||
|
||||
const u8 gText_MatchCallCamper_Ethan_Strategy[] = _("Hang in and be tenacious!");
|
||||
const u8 gText_MatchCallCamper_Ethan_Pokemon[] = _("I'll raise any POKéMON.");
|
||||
const u8 gText_MatchCallCamper_Ethan_Intro1[] = _("POKéMON raised in the wild");
|
||||
const u8 gText_MatchCallCamper_Ethan_Intro2[] = _("grow strong!");
|
||||
|
||||
const u8 gText_MatchCallOldCouple_JohnAndJay_Strategy[] = _("Our love lets us prevail.");
|
||||
const u8 gText_MatchCallOldCouple_JohnAndJay_Pokemon[] = _("We've had them for years.");
|
||||
const u8 gText_MatchCallOldCouple_JohnAndJay_Intro1[] = _("Married 50 years, we've");
|
||||
const u8 gText_MatchCallOldCouple_JohnAndJay_Intro2[] = _("devotedly raised POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallBugManiac_Jeffrey_Strategy[] = _("Attack in waves!");
|
||||
const u8 gText_MatchCallBugManiac_Jeffrey_Pokemon[] = _("BUG POKéMON are cool.");
|
||||
const u8 gText_MatchCallBugManiac_Jeffrey_Intro1[] = _("I go into the forest every");
|
||||
const u8 gText_MatchCallBugManiac_Jeffrey_Intro2[] = _("day to catch BUG POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallPsychic_Cameron_Strategy[] = _("Daze and confuse!");
|
||||
const u8 gText_MatchCallPsychic_Cameron_Pokemon[] = _("Ones with weird powers.");
|
||||
const u8 gText_MatchCallPsychic_Cameron_Intro1[] = _("I can see through exactly");
|
||||
const u8 gText_MatchCallPsychic_Cameron_Intro2[] = _("what you're thinking!");
|
||||
|
||||
const u8 gText_MatchCallPsychic_Jacki_Strategy[] = _("Battle at full power.");
|
||||
const u8 gText_MatchCallPsychic_Jacki_Pokemon[] = _("POKéMON of many mysteries.");
|
||||
const u8 gText_MatchCallPsychic_Jacki_Intro1[] = _("When we spoke, I was really");
|
||||
const u8 gText_MatchCallPsychic_Jacki_Intro2[] = _("using telepathy.");
|
||||
|
||||
const u8 gText_MatchCallGentleman_Walter_Strategy[] = _("Calm and collected.");
|
||||
const u8 gText_MatchCallGentleman_Walter_Pokemon[] = _("POKéMON of distinction.");
|
||||
const u8 gText_MatchCallGentleman_Walter_Intro1[] = _("We enjoy a spot of tea");
|
||||
const u8 gText_MatchCallGentleman_Walter_Intro2[] = _("every day. It's imported.");
|
||||
|
||||
const u8 gText_MatchCallSchoolKid_Karen_Strategy[] = _("I use my head to battle.");
|
||||
const u8 gText_MatchCallSchoolKid_Karen_Pokemon[] = _("I love any kind of POKéMON!");
|
||||
const u8 gText_MatchCallSchoolKid_Karen_Intro1[] = _("My daddy gives me spending");
|
||||
const u8 gText_MatchCallSchoolKid_Karen_Intro2[] = _("money if I ace a test.");
|
||||
|
||||
const u8 gText_MatchCallSchoolKid_Jerry_Strategy[] = _("My knowledge rules!");
|
||||
const u8 gText_MatchCallSchoolKid_Jerry_Pokemon[] = _("Any smart POKéMON!");
|
||||
const u8 gText_MatchCallSchoolKid_Jerry_Intro1[] = _("I want to be a POKéMON");
|
||||
const u8 gText_MatchCallSchoolKid_Jerry_Intro2[] = _("researcher in the future.");
|
||||
|
||||
const u8 gText_MatchCallSrAndJr_AnnaAndMeg_Strategy[] = _("We talk it over first.");
|
||||
const u8 gText_MatchCallSrAndJr_AnnaAndMeg_Pokemon[] = _("POKéMON that we both like.");
|
||||
const u8 gText_MatchCallSrAndJr_AnnaAndMeg_Intro1[] = _("We're senior and junior");
|
||||
const u8 gText_MatchCallSrAndJr_AnnaAndMeg_Intro2[] = _("students into POKéMON!");
|
||||
|
||||
const u8 gText_MatchCallPokefan_Isabel_Strategy[] = _("Go for it, my dears!");
|
||||
const u8 gText_MatchCallPokefan_Isabel_Pokemon[] = _("I have no likes or dislikes.");
|
||||
const u8 gText_MatchCallPokefan_Isabel_Intro1[] = _("While out shopping for");
|
||||
const u8 gText_MatchCallPokefan_Isabel_Intro2[] = _("supper, I battle too.");
|
||||
|
||||
const u8 gText_MatchCallPokefan_Miguel_Strategy[] = _("I battle with love!");
|
||||
const u8 gText_MatchCallPokefan_Miguel_Pokemon[] = _("A POKéMON raised with love!");
|
||||
const u8 gText_MatchCallPokefan_Miguel_Intro1[] = _("It's important to build");
|
||||
const u8 gText_MatchCallPokefan_Miguel_Intro2[] = _("trust with your POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallExpert_Timothy_Strategy[] = _("I see through your moves!");
|
||||
const u8 gText_MatchCallExpert_Timothy_Pokemon[] = _("The essence of FIGHTING.");
|
||||
const u8 gText_MatchCallExpert_Timothy_Intro1[] = _("I'm not ready to give way");
|
||||
const u8 gText_MatchCallExpert_Timothy_Intro2[] = _("to the young yet!");
|
||||
|
||||
const u8 gText_MatchCallExpert_Shelby_Strategy[] = _("Attack while defending.");
|
||||
const u8 gText_MatchCallExpert_Shelby_Pokemon[] = _("The FIGHTING type.");
|
||||
const u8 gText_MatchCallExpert_Shelby_Intro1[] = _("Being old, I have my own");
|
||||
const u8 gText_MatchCallExpert_Shelby_Intro2[] = _("style of battling.");
|
||||
|
||||
const u8 gText_MatchCallYoungster_Calvin_Strategy[] = _("I do what I can.");
|
||||
const u8 gText_MatchCallYoungster_Calvin_Pokemon[] = _("I use different types.");
|
||||
const u8 gText_MatchCallYoungster_Calvin_Intro1[] = _("I'm going to keep working");
|
||||
const u8 gText_MatchCallYoungster_Calvin_Intro2[] = _("until I beat a GYM LEADER.");
|
||||
|
||||
const u8 gText_MatchCallFisherman_Elliot_Strategy[] = _("I battle patiently.");
|
||||
const u8 gText_MatchCallFisherman_Elliot_Pokemon[] = _("WATER POKéMON to battle!");
|
||||
const u8 gText_MatchCallFisherman_Elliot_Intro1[] = _("I'm the world's only guy to");
|
||||
const u8 gText_MatchCallFisherman_Elliot_Intro2[] = _("catch a huge POKéMON!");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Isaiah_Strategy[] = _("Exploit the environment!");
|
||||
const u8 gText_MatchCallTriathlete_Isaiah_Pokemon[] = _("All hail the WATER type!");
|
||||
const u8 gText_MatchCallTriathlete_Isaiah_Intro1[] = _("I won't be beaten by some");
|
||||
const u8 gText_MatchCallTriathlete_Isaiah_Intro2[] = _("beach bum SWIMMER!");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Maria_Strategy[] = _("Speed above all!");
|
||||
const u8 gText_MatchCallTriathlete_Maria_Pokemon[] = _("I use a speedy POKéMON.");
|
||||
const u8 gText_MatchCallTriathlete_Maria_Intro1[] = _("A marathon is a challenge");
|
||||
const u8 gText_MatchCallTriathlete_Maria_Intro2[] = _("against your own self.");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Abigail_Strategy[] = _("Defense is crucial.");
|
||||
const u8 gText_MatchCallTriathlete_Abigail_Pokemon[] = _("My POKéMON is solid.");
|
||||
const u8 gText_MatchCallTriathlete_Abigail_Intro1[] = _("I started this for dieting,");
|
||||
const u8 gText_MatchCallTriathlete_Abigail_Intro2[] = _("but I got right into it.");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Dylan_Strategy[] = _("Strike before stricken!");
|
||||
const u8 gText_MatchCallTriathlete_Dylan_Pokemon[] = _("A fast-running POKéMON!");
|
||||
const u8 gText_MatchCallTriathlete_Dylan_Intro1[] = _("If you ran and ran, you'd");
|
||||
const u8 gText_MatchCallTriathlete_Dylan_Intro2[] = _("become one with the wind.");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Katelyn_Strategy[] = _("All-out offensive!");
|
||||
const u8 gText_MatchCallTriathlete_Katelyn_Pokemon[] = _("WATER POKéMON rule!");
|
||||
const u8 gText_MatchCallTriathlete_Katelyn_Intro1[] = _("I must swim over 6 miles");
|
||||
const u8 gText_MatchCallTriathlete_Katelyn_Intro2[] = _("every day.");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Benjamin_Strategy[] = _("Push and push again!");
|
||||
const u8 gText_MatchCallTriathlete_Benjamin_Pokemon[] = _("The strength of STEEL.");
|
||||
const u8 gText_MatchCallTriathlete_Benjamin_Intro1[] = _("If you're sweating, get");
|
||||
const u8 gText_MatchCallTriathlete_Benjamin_Intro2[] = _("fluids into you regularly.");
|
||||
|
||||
const u8 gText_MatchCallTriathlete_Pablo_Strategy[] = _("Draw the power of WATER.");
|
||||
const u8 gText_MatchCallTriathlete_Pablo_Pokemon[] = _("Toughened WATER POKéMON.");
|
||||
const u8 gText_MatchCallTriathlete_Pablo_Intro1[] = _("Training POKéMON is good,");
|
||||
const u8 gText_MatchCallTriathlete_Pablo_Intro2[] = _("but don't neglect yourself.");
|
||||
|
||||
const u8 gText_MatchCallDragonTamer_Nicolas_Strategy[] = _("It's about POKéMON power!");
|
||||
const u8 gText_MatchCallDragonTamer_Nicolas_Pokemon[] = _("See the power of DRAGONS!");
|
||||
const u8 gText_MatchCallDragonTamer_Nicolas_Intro1[] = _("I'll become legendary as the");
|
||||
const u8 gText_MatchCallDragonTamer_Nicolas_Intro2[] = _("strongest one day!");
|
||||
|
||||
const u8 gText_MatchCallBirdKeeper_Robert_Strategy[] = _("I'll show you my technique!");
|
||||
const u8 gText_MatchCallBirdKeeper_Robert_Pokemon[] = _("Elegantly wheeling BIRDS.");
|
||||
const u8 gText_MatchCallBirdKeeper_Robert_Intro1[] = _("My BIRD POKéMON, deliver my");
|
||||
const u8 gText_MatchCallBirdKeeper_Robert_Intro2[] = _("love to that girl!");
|
||||
|
||||
const u8 gText_MatchCallNinjaBoy_Lao_Strategy[] = _("You'll suffer from poison!");
|
||||
const u8 gText_MatchCallNinjaBoy_Lao_Pokemon[] = _("Poisonous POKéMON.");
|
||||
const u8 gText_MatchCallNinjaBoy_Lao_Intro1[] = _("I undertake training so");
|
||||
const u8 gText_MatchCallNinjaBoy_Lao_Intro2[] = _("that I may become a ninja.");
|
||||
|
||||
const u8 gText_MatchCallBattleGirl_Cyndy_Strategy[] = _("The first strike wins!");
|
||||
const u8 gText_MatchCallBattleGirl_Cyndy_Pokemon[] = _("Speedy FIGHTING type.");
|
||||
const u8 gText_MatchCallBattleGirl_Cyndy_Intro1[] = _("If my POKéMON lose,");
|
||||
const u8 gText_MatchCallBattleGirl_Cyndy_Intro2[] = _("I'll carry on the fight!");
|
||||
|
||||
const u8 gText_MatchCallParasolLady_Madeline_Strategy[] = _("Go, go, my POKéMON!");
|
||||
const u8 gText_MatchCallParasolLady_Madeline_Pokemon[] = _("I'll raise anything.");
|
||||
const u8 gText_MatchCallParasolLady_Madeline_Intro1[] = _("UV rays are your skin's");
|
||||
const u8 gText_MatchCallParasolLady_Madeline_Intro2[] = _("enemy. Get protected.");
|
||||
|
||||
const u8 gText_MatchCallSwimmer_Jenny_Strategy[] = _("No mercy!");
|
||||
const u8 gText_MatchCallSwimmer_Jenny_Pokemon[] = _("Cute WATER POKéMON.");
|
||||
const u8 gText_MatchCallSwimmer_Jenny_Intro1[] = _("I have too many fans.");
|
||||
const u8 gText_MatchCallSwimmer_Jenny_Intro2[] = _("I was interviewed on TV.");
|
||||
|
||||
const u8 gText_MatchCallPicnicker_Diana_Strategy[] = _("I think about this & that.");
|
||||
const u8 gText_MatchCallPicnicker_Diana_Pokemon[] = _("I like all POKéMON.");
|
||||
const u8 gText_MatchCallPicnicker_Diana_Intro1[] = _("What lies beyond that");
|
||||
const u8 gText_MatchCallPicnicker_Diana_Intro2[] = _("yonder hill?");
|
||||
|
||||
const u8 gText_MatchCallTwins_AmyAndLiv_Strategy[] = _("We battle together!");
|
||||
const u8 gText_MatchCallTwins_AmyAndLiv_Pokemon[] = _("We train together!");
|
||||
const u8 gText_MatchCallTwins_AmyAndLiv_Intro1[] = _("We like the same POKéMON,");
|
||||
const u8 gText_MatchCallTwins_AmyAndLiv_Intro2[] = _("but different desserts.");
|
||||
|
||||
const u8 gText_MatchCallSailor_Ernest_Strategy[] = _("I force things with power!");
|
||||
const u8 gText_MatchCallSailor_Ernest_Pokemon[] = _("WATER and FIGHTING types.");
|
||||
const u8 gText_MatchCallSailor_Ernest_Intro1[] = _("Seamen are rough spirits!");
|
||||
const u8 gText_MatchCallSailor_Ernest_Intro2[] = _("Any complaints?");
|
||||
|
||||
const u8 gText_MatchCallSailor_Cory_Strategy[] = _("Up for a fight anytime!");
|
||||
const u8 gText_MatchCallSailor_Cory_Pokemon[] = _("WATER POKéMON are my faves!");
|
||||
const u8 gText_MatchCallSailor_Cory_Intro1[] = _("If you want to shout loud,");
|
||||
const u8 gText_MatchCallSailor_Cory_Intro2[] = _("suck in air with your belly!");
|
||||
|
||||
const u8 gText_MatchCallCollector_Edwin_Strategy[] = _("Protect POKéMON from harm.");
|
||||
const u8 gText_MatchCallCollector_Edwin_Pokemon[] = _("I love rare POKéMON.");
|
||||
const u8 gText_MatchCallCollector_Edwin_Intro1[] = _("I want to collect all the");
|
||||
const u8 gText_MatchCallCollector_Edwin_Intro2[] = _("world's rare POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallPkmnBreeder_Lydia_Strategy[] = _("I count on power.");
|
||||
const u8 gText_MatchCallPkmnBreeder_Lydia_Pokemon[] = _("POKéMON are my children.");
|
||||
const u8 gText_MatchCallPkmnBreeder_Lydia_Intro1[] = _("It takes knowledge and");
|
||||
const u8 gText_MatchCallPkmnBreeder_Lydia_Intro2[] = _("love to raise POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallPkmnBreeder_Isaac_Strategy[] = _("Full-on attack!");
|
||||
const u8 gText_MatchCallPkmnBreeder_Isaac_Pokemon[] = _("Anything. I'll raise it.");
|
||||
const u8 gText_MatchCallPkmnBreeder_Isaac_Intro1[] = _("I give them {POKEBLOCK}S for");
|
||||
const u8 gText_MatchCallPkmnBreeder_Isaac_Intro2[] = _("going after CONTEST titles.");
|
||||
|
||||
const u8 gText_MatchCallPkmnBreeder_Gabrielle_Strategy[] = _("I raise POKéMON with care.");
|
||||
const u8 gText_MatchCallPkmnBreeder_Gabrielle_Pokemon[] = _("Fun-to-raise POKéMON.");
|
||||
const u8 gText_MatchCallPkmnBreeder_Gabrielle_Intro1[] = _("Treat every POKéMON you");
|
||||
const u8 gText_MatchCallPkmnBreeder_Gabrielle_Intro2[] = _("meet with respect.");
|
||||
|
||||
const u8 gText_MatchCallPkmnRanger_Catherine_Strategy[] = _("I believe in my POKéMON.");
|
||||
const u8 gText_MatchCallPkmnRanger_Catherine_Pokemon[] = _("I like strong POKéMON.");
|
||||
const u8 gText_MatchCallPkmnRanger_Catherine_Intro1[] = _("I'm training for rescue");
|
||||
const u8 gText_MatchCallPkmnRanger_Catherine_Intro2[] = _("work with my POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallPkmnRanger_Jackson_Strategy[] = _("Attack in waves!");
|
||||
const u8 gText_MatchCallPkmnRanger_Jackson_Pokemon[] = _("I use different types.");
|
||||
const u8 gText_MatchCallPkmnRanger_Jackson_Intro1[] = _("Those who destroy nature");
|
||||
const u8 gText_MatchCallPkmnRanger_Jackson_Intro2[] = _("must never be forgiven!");
|
||||
|
||||
const u8 gText_MatchCallLass_Haley_Strategy[] = _("I'll show you some guts!");
|
||||
const u8 gText_MatchCallLass_Haley_Pokemon[] = _("Cute POKéMON are my faves!");
|
||||
const u8 gText_MatchCallLass_Haley_Intro1[] = _("After a battle, I always");
|
||||
const u8 gText_MatchCallLass_Haley_Intro2[] = _("bathe with my POKéMON.");
|
||||
|
||||
const u8 gText_MatchCallBugCatcher_James_Strategy[] = _("Lightning-fast attack!");
|
||||
const u8 gText_MatchCallBugCatcher_James_Pokemon[] = _("BUG POKéMON are number 1!");
|
||||
const u8 gText_MatchCallBugCatcher_James_Intro1[] = _("If you want to catch BUG");
|
||||
const u8 gText_MatchCallBugCatcher_James_Intro2[] = _("POKéMON, wake up early.");
|
||||
|
||||
const u8 gText_MatchCallHiker_Trent_Strategy[] = _("I battle with power.");
|
||||
const u8 gText_MatchCallHiker_Trent_Pokemon[] = _("Hard-bodied POKéMON.");
|
||||
const u8 gText_MatchCallHiker_Trent_Intro1[] = _("I've been planning a month");
|
||||
const u8 gText_MatchCallHiker_Trent_Intro2[] = _("for today's hike.");
|
||||
|
||||
const u8 gText_MatchCallHiker_Sawyer_Strategy[] = _("I like it hot!");
|
||||
const u8 gText_MatchCallHiker_Sawyer_Pokemon[] = _("Hot POKéMON!");
|
||||
const u8 gText_MatchCallHiker_Sawyer_Intro1[] = _("As much as I love POKéMON,");
|
||||
const u8 gText_MatchCallHiker_Sawyer_Intro2[] = _("I surely like hiking!");
|
||||
|
||||
const u8 gText_MatchCallYoungCouple_LoisAndHal_Strategy[] = _("Lovey-dovey strategy!");
|
||||
const u8 gText_MatchCallYoungCouple_LoisAndHal_Pokemon[] = _("Lovey-dovey POKéMON!");
|
||||
const u8 gText_MatchCallYoungCouple_LoisAndHal_Intro1[] = _("We're lovey-dovey!");
|
||||
const u8 gText_MatchCallYoungCouple_LoisAndHal_Intro2[] = _("Forever lovey-dovey!");
|
||||
|
||||
const u8 gText_MatchCallPkmnTrainer_Wally_Strategy[] = _("We let it all hang out.");
|
||||
const u8 gText_MatchCallPkmnTrainer_Wally_Pokemon[] = _("The 1st POKéMON I caught.");
|
||||
const u8 gText_MatchCallPkmnTrainer_Wally_Intro1[] = _("POKéMON and I have grown");
|
||||
const u8 gText_MatchCallPkmnTrainer_Wally_Intro2[] = _("stronger together.");
|
||||
|
||||
const u8 gText_MatchCallRockinWhiz_Roxanne_Strategy[] = _("ROCK-type power attack.");
|
||||
const u8 gText_MatchCallRockinWhiz_Roxanne_Pokemon[] = _("I prefer rock-hard POKéMON.");
|
||||
const u8 gText_MatchCallRockinWhiz_Roxanne_Intro1[] = _("A LEADER of a big GYM bears");
|
||||
const u8 gText_MatchCallRockinWhiz_Roxanne_Intro2[] = _("a lot of responsibility.");
|
||||
|
||||
const u8 gText_MatchCallTheBigHit_Brawly_Strategy[] = _("Direct physical action!");
|
||||
const u8 gText_MatchCallTheBigHit_Brawly_Pokemon[] = _("FIGHTING POKéMON rule!");
|
||||
const u8 gText_MatchCallTheBigHit_Brawly_Intro1[] = _("The world awaits me as the");
|
||||
const u8 gText_MatchCallTheBigHit_Brawly_Intro2[] = _("next big wave!");
|
||||
|
||||
const u8 gText_MatchCallSwellShock_Wattson_Strategy[] = _("I choose to electrify.");
|
||||
const u8 gText_MatchCallSwellShock_Wattson_Pokemon[] = _("Get shocked by electricity!");
|
||||
const u8 gText_MatchCallSwellShock_Wattson_Intro1[] = _("One must never throw a");
|
||||
const u8 gText_MatchCallSwellShock_Wattson_Intro2[] = _("match. Even I must not.");
|
||||
|
||||
const u8 gText_MatchCallPassionBurn_Flannery_Strategy[] = _("Battle aggressively.");
|
||||
const u8 gText_MatchCallPassionBurn_Flannery_Pokemon[] = _("Burn with passion!");
|
||||
const u8 gText_MatchCallPassionBurn_Flannery_Intro1[] = _("Completely wash away daily");
|
||||
const u8 gText_MatchCallPassionBurn_Flannery_Intro2[] = _("fatigue in hot springs!");
|
||||
|
||||
const u8 gText_MatchCallReliableOne_Dad_Strategy[] = _("I flexibly adapt my style.");
|
||||
const u8 gText_MatchCallReliableOne_Dad_Pokemon[] = _("Grown in a balanced manner.");
|
||||
const u8 gText_MatchCallReliableOne_Dad_Intro1[] = _("I walk the 30 minutes from");
|
||||
const u8 gText_MatchCallReliableOne_Dad_Intro2[] = _("home to here every day.");
|
||||
|
||||
const u8 gText_MatchCallSkyTamer_Winona_Strategy[] = _("I take advantage of speed.");
|
||||
const u8 gText_MatchCallSkyTamer_Winona_Pokemon[] = _("Graceful sky dancers.");
|
||||
const u8 gText_MatchCallSkyTamer_Winona_Intro1[] = _("The ultimate would be to");
|
||||
const u8 gText_MatchCallSkyTamer_Winona_Intro2[] = _("live as one with nature.");
|
||||
|
||||
const u8 gText_MatchCallMysticDuo_TateAndLiza_Strategy[] = _("We battle in cooperation.");
|
||||
const u8 gText_MatchCallMysticDuo_TateAndLiza_Pokemon[] = _("Always friendly POKéMON.");
|
||||
const u8 gText_MatchCallMysticDuo_TateAndLiza_Intro1[] = _("Papa has trouble telling");
|
||||
const u8 gText_MatchCallMysticDuo_TateAndLiza_Intro2[] = _("the two of us apart!");
|
||||
|
||||
const u8 gText_MatchCallDandyCharm_Juan_Strategy[] = _("I use splendid waterpower.");
|
||||
const u8 gText_MatchCallDandyCharm_Juan_Pokemon[] = _("POKéMON of elegance!");
|
||||
const u8 gText_MatchCallDandyCharm_Juan_Intro1[] = _("The adulation of beautiful");
|
||||
const u8 gText_MatchCallDandyCharm_Juan_Intro2[] = _("ladies fills me with energy!");
|
||||
|
||||
const u8 gText_MatchCallEliteFour_Sidney_Strategy[] = _("Offense over defense!");
|
||||
const u8 gText_MatchCallEliteFour_Sidney_Pokemon[] = _("The DARK side's beauties.");
|
||||
const u8 gText_MatchCallEliteFour_Sidney_Intro1[] = _("They said I was a punk, but");
|
||||
const u8 gText_MatchCallEliteFour_Sidney_Intro2[] = _("I'm one of the ELITE FOUR!");
|
||||
|
||||
const u8 gText_MatchCallEliteFour_Phoebe_Strategy[] = _("Confuse and confound.");
|
||||
const u8 gText_MatchCallEliteFour_Phoebe_Pokemon[] = _("There's nothing definite.");
|
||||
const u8 gText_MatchCallEliteFour_Phoebe_Intro1[] = _("I wonder how my grandma at");
|
||||
const u8 gText_MatchCallEliteFour_Phoebe_Intro2[] = _("MT. PYRE is doing?");
|
||||
|
||||
const u8 gText_MatchCallEliteFour_Glacia_Strategy[] = _("I use items for help.");
|
||||
const u8 gText_MatchCallEliteFour_Glacia_Pokemon[] = _("Flaming passion in icy cold!");
|
||||
const u8 gText_MatchCallEliteFour_Glacia_Intro1[] = _("The ICE type can be better");
|
||||
const u8 gText_MatchCallEliteFour_Glacia_Intro2[] = _("trained in this hot land.");
|
||||
|
||||
const u8 gText_MatchCallEliteFour_Drake_Strategy[] = _("Harness strong abilities.");
|
||||
const u8 gText_MatchCallEliteFour_Drake_Pokemon[] = _("The raw power of DRAGONS!");
|
||||
const u8 gText_MatchCallEliteFour_Drake_Intro1[] = _("I dedicate myself to the");
|
||||
const u8 gText_MatchCallEliteFour_Drake_Intro2[] = _("POKéMON that saved me.");
|
||||
|
||||
const u8 gText_MatchCallChampion_Wallace_Strategy[] = _("Dignity and respect.");
|
||||
const u8 gText_MatchCallChampion_Wallace_Pokemon[] = _("I prefer POKéMON of grace.");
|
||||
const u8 gText_MatchCallChampion_Wallace_Intro1[] = _("I represent beauty as");
|
||||
const u8 gText_MatchCallChampion_Wallace_Intro2[] = _("well as intelligence.");
|
||||
|
||||
const u8 *const gMatchCallFlavorTexts[REMATCH_TABLE_ENTRIES][CHECK_PAGE_ENTRY_COUNT] =
|
||||
{
|
||||
[REMATCH_ROSE] = MCFLAVOR(AromaLady_Rose),
|
||||
[REMATCH_ANDRES] = MCFLAVOR(RuinManiac_Andres),
|
||||
|
||||
@@ -54,8 +54,8 @@ static const struct WindowTemplate sDaycareLevelMenuWindowTemplate =
|
||||
// which is copied to VAR_0x8004 and used as an index for GetDaycareCost
|
||||
static const struct ListMenuItem sLevelMenuItems[] =
|
||||
{
|
||||
{gExpandedPlaceholder_Empty, 0},
|
||||
{gExpandedPlaceholder_Empty, 1},
|
||||
{gText_ExpandedPlaceholder_Empty, 0},
|
||||
{gText_ExpandedPlaceholder_Empty, 1},
|
||||
{gText_Exit, DAYCARE_LEVEL_MENU_EXIT}
|
||||
};
|
||||
|
||||
|
||||
@@ -1060,7 +1060,7 @@ static bool32 SelectMatchCallTrainer(void)
|
||||
static u32 GetNumRegisteredNPCs(void)
|
||||
{
|
||||
u32 i, count;
|
||||
for (i = 0, count = 0; i < 64; i++)
|
||||
for (i = 0, count = 0; i < REMATCH_SPECIAL_TRAINER_START; i++)
|
||||
{
|
||||
if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
|
||||
count++;
|
||||
@@ -1072,7 +1072,7 @@ static u32 GetNumRegisteredNPCs(void)
|
||||
static u32 GetActiveMatchCallTrainerId(u32 activeMatchCallId)
|
||||
{
|
||||
u32 i;
|
||||
for (i = 0; i < 64; i++)
|
||||
for (i = 0; i < REMATCH_SPECIAL_TRAINER_START; i++)
|
||||
{
|
||||
if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
|
||||
{
|
||||
@@ -1384,7 +1384,7 @@ static u16 GetRematchTrainerLocation(int matchCallId)
|
||||
static u32 GetNumRematchTrainersFought(void)
|
||||
{
|
||||
u32 i, count;
|
||||
for (i = 0, count = 0; i < 64; i++)
|
||||
for (i = 0, count = 0; i < REMATCH_SPECIAL_TRAINER_START; i++)
|
||||
{
|
||||
if (HasTrainerBeenFought(gRematchTable[i].trainerIds[0]))
|
||||
count++;
|
||||
@@ -1961,7 +1961,7 @@ static const u8 *const sBirchDexRatingTexts[] =
|
||||
gBirchDexRatingText_DexCompleted,
|
||||
};
|
||||
|
||||
void sub_8197080(u8 *destStr)
|
||||
void BufferPokedexRatingForMatchCall(u8 *destStr)
|
||||
{
|
||||
int numSeen, numCaught;
|
||||
u8 *str;
|
||||
|
||||
@@ -33,7 +33,6 @@ EWRAM_DATA static struct NamingScreenData *gNamingScreenData = NULL;
|
||||
extern u16 gKeyRepeatStartDelay;
|
||||
|
||||
// extern text
|
||||
extern const u8 gExpandedPlaceholder_Empty[];
|
||||
extern const u8 gText_MoveOkBack[];
|
||||
extern const u8 gText_YourName[];
|
||||
extern const u8 gText_BoxName[];
|
||||
@@ -1679,7 +1678,7 @@ static void sub_80E4D10(void)
|
||||
for (i = 0; i < maxChars; i++)
|
||||
{
|
||||
temp[0] = gNamingScreenData->textBuffer[i];
|
||||
temp[1] = gExpandedPlaceholder_Empty[0];
|
||||
temp[1] = gText_ExpandedPlaceholder_Empty[0];
|
||||
unk2 = (IsLetter(temp[0]) == TRUE) ? 2 : 0;
|
||||
|
||||
AddTextPrinterParameterized(gNamingScreenData->windows[2], 1, temp, i * 8 + unk + unk2, 1, 0xFF, NULL);
|
||||
|
||||
@@ -337,7 +337,7 @@ static void CB2_InitPokenavForTutorial(void)
|
||||
else
|
||||
{
|
||||
InitPokenavResources(gPokenavResources);
|
||||
gPokenavResources->mode = POKENAV_MODE_FORCE_CALL_1;
|
||||
gPokenavResources->mode = POKENAV_MODE_FORCE_CALL_READY;
|
||||
ResetTasks();
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
|
||||
@@ -41,7 +41,7 @@ struct PokenavMainMenuResources
|
||||
u32 (*unk4)(void);
|
||||
u32 unk8;
|
||||
u32 currentTaskId;
|
||||
u32 unk10;
|
||||
u32 helpBarWindowId;
|
||||
u32 unk14;
|
||||
struct Sprite *spinningPokenav;
|
||||
struct Sprite *leftHeaderSprites[2];
|
||||
@@ -68,10 +68,10 @@ static void MoveLeftHeader(struct Sprite *sprite, s32 startX, s32 endX, s32 dura
|
||||
static void SpriteCB_MoveLeftHeader(struct Sprite *sprite);
|
||||
static void InitPokenavMainMenuResources(void);
|
||||
static void InitHoennMapHeaderSprites(void);
|
||||
static void sub_81C7B74(void);
|
||||
static void InitHelpBar(void);
|
||||
static u32 LoopedTask_ScrollMenuHeaderDown(s32 a0);
|
||||
static u32 LoopedTask_ScrollMenuHeaderUp(s32 a0);
|
||||
static void sub_81C7BF8(u32 a0);
|
||||
static void DrawHelpBar(u32 windowId);
|
||||
static void SpriteCB_SpinningPokenav(struct Sprite* sprite);
|
||||
static u32 LoopedTask_InitPokenavMenu(s32 a0);
|
||||
|
||||
@@ -92,7 +92,7 @@ const struct BgTemplate gPokenavMainMenuBgTemplates[] =
|
||||
}
|
||||
};
|
||||
|
||||
const struct WindowTemplate gUnknown_0861FA08[2] =
|
||||
static const struct WindowTemplate sHelpBarWindowTemplate[] =
|
||||
{
|
||||
{
|
||||
.bg = 0,
|
||||
@@ -103,31 +103,23 @@ const struct WindowTemplate gUnknown_0861FA08[2] =
|
||||
.paletteNum = 0,
|
||||
.baseBlock = 0x36,
|
||||
},
|
||||
{
|
||||
.bg = 0xFF,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 0,
|
||||
.width = 0,
|
||||
.height = 0,
|
||||
.paletteNum = 0,
|
||||
.baseBlock = 0,
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
|
||||
const u8 *const sHelpBarTexts[12] =
|
||||
static const u8 *const sHelpBarTexts[HELPBAR_COUNT] =
|
||||
{
|
||||
gText_Pokenav_ClearButtonList,
|
||||
gText_PokenavMap_ZoomedOutButtons,
|
||||
gText_PokenavMap_ZoomedInButtons,
|
||||
gText_PokenavCondition_MonListButtons,
|
||||
gText_PokenavCondition_MonStatusButtons,
|
||||
gText_PokenavCondition_MarkingButtons,
|
||||
gText_PokenavMatchCall_TrainerListButtons,
|
||||
gText_PokenavMatchCall_CallMenuButtons,
|
||||
gText_PokenavMatchCall_CheckTrainerButtons,
|
||||
gText_PokenavRibbons_MonListButtons,
|
||||
gText_PokenavRibbons_RibbonListButtons,
|
||||
gText_PokenavRibbons_RibbonCheckButtons,
|
||||
[HELPBAR_NONE] = gText_Pokenav_ClearButtonList,
|
||||
[HELPBAR_MAP_ZOOMED_OUT] = gText_PokenavMap_ZoomedOutButtons,
|
||||
[HELPBAR_MAP_ZOOMED_IN] = gText_PokenavMap_ZoomedInButtons,
|
||||
[HELPBAR_CONDITION_MON_LIST] = gText_PokenavCondition_MonListButtons,
|
||||
[HELPBAR_CONDITION_MON_STATUS] = gText_PokenavCondition_MonStatusButtons,
|
||||
[HELPBAR_CONDITION_MARKINGS] = gText_PokenavCondition_MarkingButtons,
|
||||
[HELPBAR_MC_TRAINER_LIST] = gText_PokenavMatchCall_TrainerListButtons,
|
||||
[HELPBAR_MC_CALL_MENU] = gText_PokenavMatchCall_CallMenuButtons,
|
||||
[HELPBAR_MC_CHECK_PAGE] = gText_PokenavMatchCall_CheckTrainerButtons,
|
||||
[HELPBAR_RIBBONS_MON_LIST] = gText_PokenavRibbons_MonListButtons,
|
||||
[HELPBAR_RIBBONS_LIST] = gText_PokenavRibbons_RibbonListButtons,
|
||||
[HELPBAR_RIBBONS_CHECK] = gText_PokenavRibbons_RibbonCheckButtons,
|
||||
};
|
||||
|
||||
static const u8 sHelpBarTextColors[3] =
|
||||
@@ -386,7 +378,7 @@ static u32 LoopedTask_InitPokenavMenu(s32 a0)
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
return LT_PAUSE;
|
||||
|
||||
sub_81C7B74();
|
||||
InitHelpBar();
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 3:
|
||||
if (IsDma3ManagerBusyWithBgCopy())
|
||||
@@ -676,31 +668,31 @@ void InitBgTemplates(const struct BgTemplate *templates, int count)
|
||||
InitBgFromTemplate(templates++);
|
||||
}
|
||||
|
||||
static void sub_81C7B74(void)
|
||||
static void InitHelpBar(void)
|
||||
{
|
||||
struct PokenavMainMenuResources *structPtr = GetSubstructPtr(0);
|
||||
|
||||
InitWindows(&gUnknown_0861FA08[0]);
|
||||
structPtr->unk10 = 0;
|
||||
sub_81C7BF8(structPtr->unk10);
|
||||
PutWindowTilemap(structPtr->unk10);
|
||||
CopyWindowToVram(structPtr->unk10, 3); // TODO: Use a defined constant here.
|
||||
InitWindows(&sHelpBarWindowTemplate[0]);
|
||||
structPtr->helpBarWindowId = 0;
|
||||
DrawHelpBar(structPtr->helpBarWindowId);
|
||||
PutWindowTilemap(structPtr->helpBarWindowId);
|
||||
CopyWindowToVram(structPtr->helpBarWindowId, 3); // TODO: Use a defined constant here.
|
||||
}
|
||||
|
||||
void sub_81C7BA4(u32 helpBarIndex)
|
||||
void PrintHelpBarText(u32 textId)
|
||||
{
|
||||
struct PokenavMainMenuResources *structPtr = GetSubstructPtr(0);
|
||||
|
||||
sub_81C7BF8(structPtr->unk10);
|
||||
AddTextPrinterParameterized3(structPtr->unk10, 1, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[helpBarIndex]);
|
||||
DrawHelpBar(structPtr->helpBarWindowId);
|
||||
AddTextPrinterParameterized3(structPtr->helpBarWindowId, 1, 0, 1, sHelpBarTextColors, 0, sHelpBarTexts[textId]);
|
||||
}
|
||||
|
||||
bool32 IsDma3ManagerBusyWithBgCopy_(void)
|
||||
bool32 WaitForHelpBar(void)
|
||||
{
|
||||
return IsDma3ManagerBusyWithBgCopy();
|
||||
}
|
||||
|
||||
static void sub_81C7BF8(u32 windowId)
|
||||
static void DrawHelpBar(u32 windowId)
|
||||
{
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(4));
|
||||
FillWindowPixelRect(windowId, PIXEL_FILL(5), 0, 0, 0x80, 1);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -46,7 +46,7 @@ struct PokenavSub17Substruct
|
||||
u32 unk28;
|
||||
s32 unk2C;
|
||||
u32 unk30;
|
||||
void (*unk34)(struct PokenavMonList *, u8*);
|
||||
void (*unk34)(struct PokenavMatchCallEntries *, u8*);
|
||||
void (*unk38)(u16, u32, u32);
|
||||
struct Sprite *rightArrow;
|
||||
struct Sprite *upArrow;
|
||||
@@ -67,8 +67,8 @@ struct PokenavSub17
|
||||
extern void sub_81DB620(u32 windowId, u32 a1, u32 a2, u32 a3, u32 a4);
|
||||
|
||||
void sub_81C82E4(struct PokenavSub17 *a0);
|
||||
bool32 sub_81C91AC(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct MatchCallListTemplate *a2, s32 a3);
|
||||
void sub_81C9160(struct MatchCallWindowState *a0, struct MatchCallListTemplate *a1);
|
||||
bool32 sub_81C91AC(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3);
|
||||
void sub_81C9160(struct MatchCallWindowState *a0, struct PokenavListTemplate *a1);
|
||||
void SpriteCB_MatchCallUpArrow(struct Sprite *sprite);
|
||||
void SpriteCB_MatchCallDownArrow(struct Sprite *sprite);
|
||||
void SpriteCB_MatchCallRightArrow(struct Sprite *sprite);
|
||||
@@ -76,7 +76,7 @@ void ToggleMatchCallArrows(struct PokenavSub17Substruct *a0, u32 a1);
|
||||
void sub_81C8FE0(struct PokenavSub17Substruct *a0);
|
||||
void sub_81C8EF8(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1);
|
||||
void sub_81C8ED0(void);
|
||||
void sub_81C8E54(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1, u32 a2);
|
||||
static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1, u32 a2);
|
||||
void PrintMatchCallFieldNames(struct PokenavSub17Substruct *a0, u32 a1);
|
||||
void sub_81C8D4C(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1);
|
||||
void sub_81C8CB4(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1);
|
||||
@@ -91,14 +91,14 @@ u32 LoopedTask_sub_81C83F0(s32 state);
|
||||
u32 LoopedTask_sub_81C85A0(s32 state);
|
||||
u32 LoopedTask_sub_81C8870(s32 state);
|
||||
u32 LoopedTask_sub_81C8A28(s32 state);
|
||||
u32 LoopedTask_sub_81C8958(s32 state);
|
||||
u32 LoopedTask_PrintCheckPageInfo(s32 state);
|
||||
|
||||
static const u16 sMatchcallArrowPaletteData[] = INCBIN_U16("graphics/pokenav/arrows_matchcall.gbapal");
|
||||
static const u32 sMatchcallArrowSpriteSheetData[] = INCBIN_U32("graphics/pokenav/arrows_matchcall.4bpp.lz");
|
||||
|
||||
EWRAM_DATA u32 gUnknown_0203CF44 = 0;
|
||||
|
||||
bool32 sub_81C81D4(const struct BgTemplate *arg0, struct MatchCallListTemplate *arg1, s32 arg2)
|
||||
bool32 sub_81C81D4(const struct BgTemplate *arg0, struct PokenavListTemplate *arg1, s32 arg2)
|
||||
{
|
||||
struct PokenavSub17 *structPtr = AllocSubstruct(17, sizeof(struct PokenavSub17));
|
||||
if (structPtr == NULL)
|
||||
@@ -467,12 +467,12 @@ void sub_81C877C(void)
|
||||
structPtr->unk8A0 = CreateLoopedTask(LoopedTask_sub_81C8870, 6);
|
||||
}
|
||||
|
||||
void sub_81C87AC(s16 a0)
|
||||
void PrintCheckPageInfo(s16 a0)
|
||||
{
|
||||
struct PokenavSub17 *structPtr = GetSubstructPtr(17);
|
||||
structPtr->unk888.windowTopIndex += a0;
|
||||
structPtr->unk89C = 0;
|
||||
structPtr->unk8A0 = CreateLoopedTask(LoopedTask_sub_81C8958, 6);
|
||||
structPtr->unk8A0 = CreateLoopedTask(LoopedTask_PrintCheckPageInfo, 6);
|
||||
}
|
||||
|
||||
void sub_81C87F0(void)
|
||||
@@ -496,6 +496,7 @@ void sub_81C8838(void)
|
||||
CopyWindowToVram(structPtr->unk0.unk0.windowId, 1);
|
||||
}
|
||||
|
||||
// TODO:
|
||||
u32 LoopedTask_sub_81C8870(s32 state)
|
||||
{
|
||||
struct PokenavSub17 *structPtr = GetSubstructPtr(17);
|
||||
@@ -543,7 +544,7 @@ u32 LoopedTask_sub_81C8870(s32 state)
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 LoopedTask_sub_81C8958(s32 state)
|
||||
u32 LoopedTask_PrintCheckPageInfo(s32 state)
|
||||
{
|
||||
struct PokenavSub17 *structPtr = GetSubstructPtr(17);
|
||||
if (IsDma3ManagerBusyWithBgCopy())
|
||||
@@ -558,22 +559,22 @@ u32 LoopedTask_sub_81C8958(s32 state)
|
||||
PrintMatchCallFieldNames(&structPtr->unk0, 0);
|
||||
break;
|
||||
case 2:
|
||||
sub_81C8E54(&structPtr->unk888, &structPtr->unk0, 0);
|
||||
PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->unk0, CHECK_PAGE_STRATEGY);
|
||||
break;
|
||||
case 3:
|
||||
PrintMatchCallFieldNames(&structPtr->unk0, 1);
|
||||
break;
|
||||
case 4:
|
||||
sub_81C8E54(&structPtr->unk888, &structPtr->unk0, 1);
|
||||
PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->unk0, CHECK_PAGE_POKEMON);
|
||||
break;
|
||||
case 5:
|
||||
PrintMatchCallFieldNames(&structPtr->unk0, 2);
|
||||
break;
|
||||
case 6:
|
||||
sub_81C8E54(&structPtr->unk888, &structPtr->unk0, 2);
|
||||
PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->unk0, CHECK_PAGE_INTRO_1);
|
||||
break;
|
||||
case 7:
|
||||
sub_81C8E54(&structPtr->unk888, &structPtr->unk0, 3);
|
||||
PrintMatchCallFlavorText(&structPtr->unk888, &structPtr->unk0, CHECK_PAGE_INTRO_2);
|
||||
break;
|
||||
default:
|
||||
return LT_FINISH;
|
||||
@@ -683,7 +684,7 @@ void sub_81C8B70(struct UnknownSubSubStruct_0203CF40 *a0, s32 a1, s32 a2)
|
||||
}
|
||||
|
||||
for (a2--; a2 != -1; a1 = (a1 + 1) & 0xF, a2--)
|
||||
sub_81CBD48(a0->windowId, a1);
|
||||
ClearRematchPokeballIcon(a0->windowId, a1);
|
||||
|
||||
CopyWindowToVram(a0->windowId, 1);
|
||||
}
|
||||
@@ -735,11 +736,19 @@ void PrintMatchCallFieldNames(struct PokenavSub17Substruct *a0, u32 fieldId)
|
||||
CopyWindowRectToVram(a0->unk0.windowId, 2, 0, top << 1, a0->unk0.unk4, 2);
|
||||
}
|
||||
|
||||
void sub_81C8E54(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1, u32 a2)
|
||||
static void PrintMatchCallFlavorText(struct MatchCallWindowState *a0, struct PokenavSub17Substruct *a1, u32 checkPageEntry)
|
||||
{
|
||||
static const u8 array[] = {2, 4, 6, 7};
|
||||
u32 r6 = (a1->unk0.unkA + array[a2]) & 0xF;
|
||||
const u8 *str = sub_81CAFD8(a0->windowTopIndex, a2);
|
||||
// lines 1, 3, and 5 are the field names printed by PrintMatchCallFieldNames
|
||||
static const u8 lineOffsets[CHECK_PAGE_ENTRY_COUNT] =
|
||||
{
|
||||
[CHECK_PAGE_STRATEGY] = 2,
|
||||
[CHECK_PAGE_POKEMON] = 4,
|
||||
[CHECK_PAGE_INTRO_1] = 6,
|
||||
[CHECK_PAGE_INTRO_2] = 7
|
||||
};
|
||||
|
||||
u32 r6 = (a1->unk0.unkA + lineOffsets[checkPageEntry]) & 0xF;
|
||||
const u8 *str = GetMatchCallFlavorText(a0->windowTopIndex, checkPageEntry);
|
||||
|
||||
if (str != NULL)
|
||||
{
|
||||
@@ -925,9 +934,9 @@ void ToggleMatchCallVerticalArrows(bool32 shouldHide)
|
||||
structPtr->unk0.downArrow->data[7] = shouldHide;
|
||||
}
|
||||
|
||||
void sub_81C9160(struct MatchCallWindowState *a0, struct MatchCallListTemplate *a1)
|
||||
void sub_81C9160(struct MatchCallWindowState *a0, struct PokenavListTemplate *a1)
|
||||
{
|
||||
a0->unk10 = a1->unk0;
|
||||
a0->unk10 = a1->list.matchCallEntries;
|
||||
a0->windowTopIndex = a1->unk6;
|
||||
a0->listLength = a1->unk4;
|
||||
a0->unkC = a1->unk8;
|
||||
@@ -953,13 +962,13 @@ void sub_81C9160(struct MatchCallWindowState *a0, struct MatchCallListTemplate *
|
||||
}
|
||||
}
|
||||
|
||||
bool32 sub_81C91AC(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct MatchCallListTemplate *a2, s32 a3)
|
||||
bool32 sub_81C91AC(struct PokenavSub17Substruct *a0, const struct BgTemplate *a1, struct PokenavListTemplate *a2, s32 a3)
|
||||
{
|
||||
struct WindowTemplate window;
|
||||
|
||||
a0->unk0.bg = a1->bg;
|
||||
a0->unk0.unk6 = a3;
|
||||
a0->unk34 = a2->unk10;
|
||||
a0->unk34 = a2->listFunc.unk10_2;
|
||||
a0->unk38 = a2->unk14;
|
||||
a0->unk0.unk1 = a2->unkD;
|
||||
a0->unk0.unk2 = a2->unk9;
|
||||
|
||||
@@ -64,7 +64,7 @@ bool32 PokenavCallback_Init_0(void)
|
||||
state->menuType = GetPokenavMainMenuType();
|
||||
state->cursorPos = 0;
|
||||
state->descriptionId = 0;
|
||||
state->helpBarIndex = 0;
|
||||
state->helpBarIndex = HELPBAR_NONE;
|
||||
sub_81C939C(state);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -78,7 +78,7 @@ bool32 PokenavCallback_Init_4(void)
|
||||
state->menuType = GetPokenavMainMenuType();
|
||||
state->cursorPos = 2;
|
||||
state->descriptionId = 2;
|
||||
state->helpBarIndex = 0;
|
||||
state->helpBarIndex = HELPBAR_NONE;
|
||||
sub_81C939C(state);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -105,7 +105,7 @@ bool32 PokenavCallback_Init_2(void)
|
||||
state->menuType = 3;
|
||||
state->cursorPos = 0;
|
||||
state->descriptionId = 5;
|
||||
state->helpBarIndex = 0;
|
||||
state->helpBarIndex = HELPBAR_NONE;
|
||||
sub_81C939C(state);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -119,7 +119,7 @@ bool32 PokenavCallback_Init_3(void)
|
||||
state->menuType = 4;
|
||||
state->cursorPos = sub_81C76AC();
|
||||
state->descriptionId = state->cursorPos + 8;
|
||||
state->helpBarIndex = 0;
|
||||
state->helpBarIndex = HELPBAR_NONE;
|
||||
sub_81C939C(state);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -151,9 +151,9 @@ static u32 (*sub_81C93EC(void))(struct Pokenav1Struct*)
|
||||
default:
|
||||
case POKENAV_MODE_NORMAL:
|
||||
return sub_81C943C;
|
||||
case POKENAV_MODE_FORCE_CALL_1:
|
||||
case POKENAV_MODE_FORCE_CALL_READY:
|
||||
return sub_81C9520;
|
||||
case POKENAV_MODE_FORCE_CALL_2:
|
||||
case POKENAV_MODE_FORCE_CALL_EXIT:
|
||||
return sub_81C9588;
|
||||
}
|
||||
}
|
||||
@@ -179,7 +179,7 @@ static u32 sub_81C943C(struct Pokenav1Struct *a0)
|
||||
switch (sDescriptionIds[a0->menuType][a0->cursorPos])
|
||||
{
|
||||
case 0:
|
||||
a0->helpBarIndex = gSaveBlock2Ptr->regionMapZoom ? 2 : 1;
|
||||
a0->helpBarIndex = gSaveBlock2Ptr->regionMapZoom ? HELPBAR_MAP_ZOOMED_IN : HELPBAR_MAP_ZOOMED_OUT;
|
||||
sub_81C97B0(a0, POKENAV_MENU_6);
|
||||
return 8;
|
||||
case 1:
|
||||
@@ -189,13 +189,13 @@ static u32 sub_81C943C(struct Pokenav1Struct *a0)
|
||||
a0->callback = sub_81C963C;
|
||||
return 2;
|
||||
case 2:
|
||||
a0->helpBarIndex = 6;
|
||||
a0->helpBarIndex = HELPBAR_MC_TRAINER_LIST;
|
||||
sub_81C97B0(a0, POKENAV_MENU_B);
|
||||
return 8;
|
||||
case 3:
|
||||
if (CanViewRibbonsMenu())
|
||||
{
|
||||
a0->helpBarIndex = 9;
|
||||
a0->helpBarIndex = HELPBAR_RIBBONS_MON_LIST;
|
||||
sub_81C97B0(a0, POKENAV_MENU_C);
|
||||
return 8;
|
||||
}
|
||||
@@ -224,7 +224,7 @@ static u32 sub_81C9520(struct Pokenav1Struct *a0)
|
||||
{
|
||||
if (sDescriptionIds[a0->menuType][a0->cursorPos] == 2)
|
||||
{
|
||||
a0->helpBarIndex = 6;
|
||||
a0->helpBarIndex = HELPBAR_MC_TRAINER_LIST;
|
||||
sub_81C97B0(a0, POKENAV_MENU_B);
|
||||
return 8;
|
||||
}
|
||||
@@ -259,7 +259,7 @@ static u32 sub_81C9588(struct Pokenav1Struct *a0)
|
||||
}
|
||||
else if (v0 == 2)
|
||||
{
|
||||
a0->helpBarIndex = 6;
|
||||
a0->helpBarIndex = HELPBAR_MC_TRAINER_LIST;
|
||||
sub_81C97B0(a0, POKENAV_MENU_B);
|
||||
return 8;
|
||||
}
|
||||
@@ -349,7 +349,7 @@ static u32 sub_81C96FC(struct Pokenav1Struct *a0)
|
||||
{
|
||||
sub_81C7694(v0 - 8);
|
||||
sub_81C97B0(a0, POKENAV_MENU_8);
|
||||
a0->helpBarIndex = 3;
|
||||
a0->helpBarIndex = HELPBAR_CONDITION_MON_LIST;
|
||||
return 8;
|
||||
}
|
||||
else
|
||||
@@ -459,7 +459,7 @@ int sub_81C98B4(void)
|
||||
return state->descriptionId;
|
||||
}
|
||||
|
||||
u16 sub_81C98C4(void)
|
||||
u16 GetHelpBarTextId(void)
|
||||
{
|
||||
struct Pokenav1Struct *state = GetSubstructPtr(1);
|
||||
return state->helpBarIndex;
|
||||
|
||||
@@ -573,7 +573,7 @@ u32 sub_81D0A6C(s32 state)
|
||||
return LT_PAUSE;
|
||||
case 7:
|
||||
sub_81D12D8(structPtr);
|
||||
sub_81C7BA4(10);
|
||||
PrintHelpBarText(HELPBAR_RIBBONS_LIST);
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 8:
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
@@ -667,7 +667,7 @@ u32 sub_81D0D2C(s32 state)
|
||||
if (!sub_81D1524(structPtr))
|
||||
{
|
||||
sub_81D0EFC(structPtr);
|
||||
sub_81C7BA4(11);
|
||||
PrintHelpBarText(HELPBAR_RIBBONS_CHECK);
|
||||
return LT_INC_AND_PAUSE;
|
||||
}
|
||||
return LT_PAUSE;
|
||||
@@ -721,7 +721,7 @@ u32 sub_81D0E00(s32 state)
|
||||
if (!sub_81D1524(structPtr))
|
||||
{
|
||||
sub_81D0E84(structPtr);
|
||||
sub_81C7BA4(10);
|
||||
PrintHelpBarText(HELPBAR_RIBBONS_LIST);
|
||||
return LT_INC_AND_PAUSE;
|
||||
}
|
||||
return LT_PAUSE;
|
||||
|
||||
@@ -323,7 +323,7 @@ static bool32 sub_81C98D4(void)
|
||||
for (i = 0; i < REMATCH_TABLE_ENTRIES; i++)
|
||||
{
|
||||
if (sub_81CB0C8(i) == gMapHeader.regionMapSectionId
|
||||
&& sub_81CAE08(i)
|
||||
&& IsRematchEntryRegistered(i)
|
||||
&& gSaveBlock1Ptr->trainerRematches[i])
|
||||
return TRUE;
|
||||
}
|
||||
@@ -706,10 +706,10 @@ static u32 sub_81C9F28(s32 state)
|
||||
switch (state)
|
||||
{
|
||||
case 0:
|
||||
sub_81C7BA4(sub_81C98C4());
|
||||
PrintHelpBarText(GetHelpBarTextId());
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 1:
|
||||
if (IsDma3ManagerBusyWithBgCopy_())
|
||||
if (WaitForHelpBar())
|
||||
return LT_PAUSE;
|
||||
sub_81C7880();
|
||||
sub_81CA9C8();
|
||||
|
||||
@@ -17,30 +17,40 @@
|
||||
|
||||
struct Pokenav3Struct
|
||||
{
|
||||
u16 unk0;
|
||||
u16 unk2;
|
||||
const u8 *unk4;
|
||||
u16 unk8;
|
||||
u16 unkA;
|
||||
u16 optionCursorPos;
|
||||
u16 maxOptionId;
|
||||
const u8 *matchCallOptions;
|
||||
u16 headerId;
|
||||
u16 numRegistered;
|
||||
u16 unkC;
|
||||
u32 unk10;
|
||||
u32 unk14;
|
||||
u32 (*callback)(struct Pokenav3Struct*);
|
||||
struct PokenavMonList unk1C[99];
|
||||
struct PokenavMatchCallEntries matchCallEntries[MAX_REMATCH_ENTRIES - 1];
|
||||
};
|
||||
|
||||
static u32 sub_81CAB44(struct Pokenav3Struct *);
|
||||
static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *);
|
||||
static u32 sub_81CABFC(struct Pokenav3Struct *);
|
||||
static u32 sub_81CAC04(struct Pokenav3Struct *);
|
||||
static u32 sub_81CACB8(struct Pokenav3Struct *);
|
||||
static u32 sub_81CACF8(struct Pokenav3Struct *);
|
||||
static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *);
|
||||
static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *);
|
||||
static u32 CB2_HandleCallInput(struct Pokenav3Struct *);
|
||||
static u32 sub_81CAD20(s32);
|
||||
static bool32 sub_81CB1D0(void);
|
||||
|
||||
#include "data/text/match_call_messages.h"
|
||||
|
||||
const u8 gUnknown_08622508[] = {0, 2};
|
||||
const u8 gUnknown_0862250A[] = {0, 1, 2};
|
||||
static const u8 sMatchCallOptionsNoCheckPage[] =
|
||||
{
|
||||
MATCH_CALL_OPTION_CALL,
|
||||
MATCH_CALL_OPTION_CANCEL
|
||||
};
|
||||
|
||||
static const u8 sMatchCallOptionsHasCheckPage[] =
|
||||
{
|
||||
MATCH_CALL_OPTION_CALL,
|
||||
MATCH_CALL_OPTION_CHECK,
|
||||
MATCH_CALL_OPTION_CANCEL
|
||||
};
|
||||
|
||||
bool32 PokenavCallback_Init_11(void)
|
||||
{
|
||||
@@ -48,8 +58,8 @@ bool32 PokenavCallback_Init_11(void)
|
||||
if (!state)
|
||||
return FALSE;
|
||||
|
||||
state->callback = sub_81CAB44;
|
||||
state->unk8 = 0;
|
||||
state->callback = CB2_HandleMatchCallInput;
|
||||
state->headerId = 0;
|
||||
state->unk10 = 0;
|
||||
state->unk14 = CreateLoopedTask(sub_81CAD20, 1);
|
||||
return TRUE;
|
||||
@@ -66,52 +76,54 @@ void sub_81CAB38(void)
|
||||
FreePokenavSubstruct(5);
|
||||
}
|
||||
|
||||
static u32 sub_81CAB44(struct Pokenav3Struct *state)
|
||||
static u32 CB2_HandleMatchCallInput(struct Pokenav3Struct *state)
|
||||
{
|
||||
int selectedMatchCall;
|
||||
int selection;
|
||||
|
||||
if (gMain.newAndRepeatedKeys & DPAD_UP)
|
||||
return 2;
|
||||
return POKENAV_MC_FUNC_UP;
|
||||
if (gMain.newAndRepeatedKeys & DPAD_DOWN)
|
||||
return 1;
|
||||
return POKENAV_MC_FUNC_DOWN;
|
||||
if (gMain.newAndRepeatedKeys & DPAD_LEFT)
|
||||
return 4;
|
||||
return POKENAV_MC_FUNC_PG_UP;
|
||||
if (gMain.newAndRepeatedKeys & DPAD_RIGHT)
|
||||
return 3;
|
||||
return POKENAV_MC_FUNC_PG_DOWN;
|
||||
|
||||
if (gMain.newKeys & A_BUTTON)
|
||||
{
|
||||
state->callback = sub_81CAC04;
|
||||
state->unk0 = 0;
|
||||
selectedMatchCall = GetSelectedMatchCall();
|
||||
if (!state->unk1C[selectedMatchCall].boxId || MatchCall_HasCheckPage(state->unk1C[selectedMatchCall].unk6))
|
||||
state->callback = CB2_HandleMatchCallOptionsInput;
|
||||
state->optionCursorPos = 0;
|
||||
selection = GetSelectedMatchCall();
|
||||
|
||||
if (!state->matchCallEntries[selection].isSpecialTrainer || MatchCall_HasCheckPage(state->matchCallEntries[selection].headerId))
|
||||
{
|
||||
state->unk4 = gUnknown_0862250A;
|
||||
state->unk2 = 2;
|
||||
state->matchCallOptions = sMatchCallOptionsHasCheckPage;
|
||||
state->maxOptionId = ARRAY_COUNT(sMatchCallOptionsHasCheckPage) - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
state->unk4 = gUnknown_08622508;
|
||||
state->unk2 = 1;
|
||||
state->matchCallOptions = sMatchCallOptionsNoCheckPage;
|
||||
state->maxOptionId = ARRAY_COUNT(sMatchCallOptionsNoCheckPage) - 1;
|
||||
}
|
||||
|
||||
return 5;
|
||||
return POKENAV_MC_FUNC_SELECT;
|
||||
}
|
||||
|
||||
if (gMain.newKeys & B_BUTTON)
|
||||
{
|
||||
if (GetPokenavMode() != POKENAV_MODE_FORCE_CALL_1)
|
||||
if (GetPokenavMode() != POKENAV_MODE_FORCE_CALL_READY)
|
||||
{
|
||||
state->callback = sub_81CABFC;
|
||||
return 15;
|
||||
return POKENAV_MC_FUNC_EXIT;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Cant exit Match Call menu before calling Mr Stone during tutorial
|
||||
PlaySE(SE_HAZURE);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return POKENAV_MC_FUNC_NONE;
|
||||
}
|
||||
|
||||
static u32 sub_81CABFC(struct Pokenav3Struct *state)
|
||||
@@ -119,76 +131,76 @@ static u32 sub_81CABFC(struct Pokenav3Struct *state)
|
||||
return POKENAV_MENU_4;
|
||||
}
|
||||
|
||||
static u32 sub_81CAC04(struct Pokenav3Struct *state)
|
||||
static u32 CB2_HandleMatchCallOptionsInput(struct Pokenav3Struct *state)
|
||||
{
|
||||
if ((gMain.newKeys & DPAD_UP) && state->unk0)
|
||||
if ((gMain.newKeys & DPAD_UP) && state->optionCursorPos)
|
||||
{
|
||||
state->unk0--;
|
||||
return 6;
|
||||
state->optionCursorPos--;
|
||||
return POKENAV_MC_FUNC_MOVE_OPTIONS_CURSOR;
|
||||
}
|
||||
|
||||
if ((gMain.newKeys & DPAD_DOWN) && state->unk0 < state->unk2)
|
||||
if ((gMain.newKeys & DPAD_DOWN) && state->optionCursorPos < state->maxOptionId)
|
||||
{
|
||||
state->unk0++;
|
||||
return 6;
|
||||
state->optionCursorPos++;
|
||||
return POKENAV_MC_FUNC_MOVE_OPTIONS_CURSOR;
|
||||
}
|
||||
|
||||
if (gMain.newKeys & A_BUTTON)
|
||||
{
|
||||
switch (state->unk4[state->unk0])
|
||||
switch (state->matchCallOptions[state->optionCursorPos])
|
||||
{
|
||||
case 2:
|
||||
state->callback = sub_81CAB44;
|
||||
return 7;
|
||||
case 0:
|
||||
if (GetPokenavMode() == POKENAV_MODE_FORCE_CALL_1)
|
||||
SetPokenavMode(POKENAV_MODE_FORCE_CALL_2);
|
||||
case MATCH_CALL_OPTION_CANCEL:
|
||||
state->callback = CB2_HandleMatchCallInput;
|
||||
return POKENAV_MC_FUNC_CANCEL;
|
||||
case MATCH_CALL_OPTION_CALL:
|
||||
if (GetPokenavMode() == POKENAV_MODE_FORCE_CALL_READY)
|
||||
SetPokenavMode(POKENAV_MODE_FORCE_CALL_EXIT);
|
||||
|
||||
state->callback = sub_81CACF8;
|
||||
state->callback = CB2_HandleCallInput;
|
||||
if (sub_81CB1D0())
|
||||
return 9;
|
||||
return POKENAV_MC_FUNC_NEARBY_MSG;
|
||||
|
||||
return 8;
|
||||
case 1:
|
||||
state->callback = sub_81CACB8;
|
||||
return 11;
|
||||
return POKENAV_MC_FUNC_CALL_MSG;
|
||||
case MATCH_CALL_OPTION_CHECK:
|
||||
state->callback = CB2_HandleCheckPageInput;
|
||||
return POKENAV_MC_FUNC_SHOW_CHECK_PAGE;
|
||||
}
|
||||
}
|
||||
|
||||
if (gMain.newKeys & B_BUTTON)
|
||||
{
|
||||
state->callback = sub_81CAB44;
|
||||
return 7;
|
||||
state->callback = CB2_HandleMatchCallInput;
|
||||
return POKENAV_MC_FUNC_CANCEL;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return POKENAV_MC_FUNC_NONE;
|
||||
}
|
||||
|
||||
static u32 sub_81CACB8(struct Pokenav3Struct *state)
|
||||
static u32 CB2_HandleCheckPageInput(struct Pokenav3Struct *state)
|
||||
{
|
||||
if (gMain.newAndRepeatedKeys & DPAD_UP)
|
||||
return 12;
|
||||
return POKENAV_MC_FUNC_CHECK_PAGE_UP;
|
||||
if (gMain.newAndRepeatedKeys & DPAD_DOWN)
|
||||
return 13;
|
||||
return POKENAV_MC_FUNC_CHECK_PAGE_DOWN;
|
||||
|
||||
if (gMain.newKeys & B_BUTTON)
|
||||
{
|
||||
state->callback = sub_81CAB44;
|
||||
return 14;
|
||||
state->callback = CB2_HandleMatchCallInput;
|
||||
return POKENAV_MC_FUNC_EXIT_CHECK_PAGE;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return POKENAV_MC_FUNC_NONE;
|
||||
}
|
||||
|
||||
static u32 sub_81CACF8(struct Pokenav3Struct *state)
|
||||
static u32 CB2_HandleCallInput(struct Pokenav3Struct *state)
|
||||
{
|
||||
if (gMain.newKeys & (A_BUTTON | B_BUTTON))
|
||||
{
|
||||
state->callback = sub_81CAB44;
|
||||
return 10;
|
||||
state->callback = CB2_HandleMatchCallInput;
|
||||
return POKENAV_MC_FUNC_10;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return POKENAV_MC_FUNC_NONE;
|
||||
}
|
||||
|
||||
static u32 sub_81CAD20(s32 taskState)
|
||||
@@ -198,41 +210,41 @@ static u32 sub_81CAD20(s32 taskState)
|
||||
switch (taskState)
|
||||
{
|
||||
case 0:
|
||||
state->unk8 = 0;
|
||||
state->unkA = 0;
|
||||
state->headerId = 0;
|
||||
state->numRegistered = 0;
|
||||
return LT_INC_AND_CONTINUE;
|
||||
case 1:
|
||||
for (i = 0, j = state->unk8; i < 30; i++, j++)
|
||||
for (i = 0, j = state->headerId; i < 30; i++, j++)
|
||||
{
|
||||
if (MatchCallFlagGetByIndex(j))
|
||||
if (MatchCall_GetEnabled(j))
|
||||
{
|
||||
state->unk1C[state->unkA].unk6 = j;
|
||||
state->unk1C[state->unkA].boxId = 1;
|
||||
state->unk1C[state->unkA].monId = MatchCallMapSecGetByIndex(j);
|
||||
state->unkA++;
|
||||
state->matchCallEntries[state->numRegistered].headerId = j;
|
||||
state->matchCallEntries[state->numRegistered].isSpecialTrainer = TRUE;
|
||||
state->matchCallEntries[state->numRegistered].mapSec = MatchCall_GetMapSec(j);
|
||||
state->numRegistered++;
|
||||
}
|
||||
|
||||
if (++state->unk8 >= MC_HEADER_COUNT)
|
||||
if (++state->headerId >= MC_HEADER_COUNT)
|
||||
{
|
||||
state->unkC = state->unk8;
|
||||
state->unk8 = 0;
|
||||
state->unkC = state->headerId;
|
||||
state->headerId = 0;
|
||||
return LT_INC_AND_CONTINUE;
|
||||
}
|
||||
}
|
||||
|
||||
return LT_CONTINUE;
|
||||
case 2:
|
||||
for (i = 0, j = state->unk8; i < 30; i++, j++)
|
||||
for (i = 0, j = state->headerId; i < 30; i++, j++)
|
||||
{
|
||||
if (!sub_81D1BF8(state->unk8) && sub_81CAE08(state->unk8))
|
||||
if (!MatchCall_HasRematchId(state->headerId) && IsRematchEntryRegistered(state->headerId))
|
||||
{
|
||||
state->unk1C[state->unkA].unk6 = state->unk8;
|
||||
state->unk1C[state->unkA].boxId = 0;
|
||||
state->unk1C[state->unkA].monId = sub_81CB0C8(j);
|
||||
state->unkA++;
|
||||
state->matchCallEntries[state->numRegistered].headerId = state->headerId;
|
||||
state->matchCallEntries[state->numRegistered].isSpecialTrainer = FALSE;
|
||||
state->matchCallEntries[state->numRegistered].mapSec = sub_81CB0C8(j);
|
||||
state->numRegistered++;
|
||||
}
|
||||
|
||||
if (++state->unk8 > REMATCH_TABLE_ENTRIES - 1)
|
||||
if (++state->headerId > REMATCH_TABLE_ENTRIES - 1)
|
||||
return LT_INC_AND_CONTINUE;
|
||||
}
|
||||
|
||||
@@ -245,7 +257,7 @@ static u32 sub_81CAD20(s32 taskState)
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
bool32 sub_81CAE08(int rematchIndex)
|
||||
bool32 IsRematchEntryRegistered(int rematchIndex)
|
||||
{
|
||||
if (rematchIndex < REMATCH_TABLE_ENTRIES)
|
||||
return FlagGet(FLAG_MATCH_CALL_REGISTERED + rematchIndex);
|
||||
@@ -259,10 +271,10 @@ int sub_81CAE28(void)
|
||||
return state->unk10;
|
||||
}
|
||||
|
||||
int sub_81CAE38(void)
|
||||
int GetNumberRegistered(void)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
return state->unkA;
|
||||
return state->numRegistered;
|
||||
}
|
||||
|
||||
int sub_81CAE48(void)
|
||||
@@ -274,38 +286,38 @@ int sub_81CAE48(void)
|
||||
int unref_sub_81CAE58(void)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
return state->unkA - state->unkC;
|
||||
return state->numRegistered - state->unkC;
|
||||
}
|
||||
|
||||
int unref_sub_81CAE6C(int arg0)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
arg0 += state->unkC;
|
||||
if (arg0 >= state->unkA)
|
||||
if (arg0 >= state->numRegistered)
|
||||
return REMATCH_TABLE_ENTRIES;
|
||||
|
||||
return state->unk1C[arg0].unk6;
|
||||
return state->matchCallEntries[arg0].headerId;
|
||||
}
|
||||
|
||||
struct PokenavMonList *sub_81CAE94(void)
|
||||
struct PokenavMatchCallEntries *sub_81CAE94(void)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
return state->unk1C;
|
||||
return state->matchCallEntries;
|
||||
}
|
||||
|
||||
u16 sub_81CAEA4(int index)
|
||||
u16 GetMatchCallMapSec(int index)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
return state->unk1C[index].monId;
|
||||
return state->matchCallEntries[index].mapSec;
|
||||
}
|
||||
|
||||
bool32 sub_81CAEBC(int index)
|
||||
bool32 ShouldDrawRematchPokeballIcon(int index)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
if (!state->unk1C[index].boxId)
|
||||
index = state->unk1C[index].unk6;
|
||||
if (!state->matchCallEntries[index].isSpecialTrainer)
|
||||
index = state->matchCallEntries[index].headerId;
|
||||
else
|
||||
index = MatchCall_GetRematchTableIdx(state->unk1C[index].unk6);
|
||||
index = MatchCall_GetRematchTableIdx(state->matchCallEntries[index].headerId);
|
||||
|
||||
if (index == REMATCH_TABLE_ENTRIES)
|
||||
return FALSE;
|
||||
@@ -313,83 +325,83 @@ bool32 sub_81CAEBC(int index)
|
||||
return gSaveBlock1Ptr->trainerRematches[index] != 0;
|
||||
}
|
||||
|
||||
int sub_81CAF04(int index)
|
||||
int GetMatchCallTrainerPic(int index)
|
||||
{
|
||||
int var0;
|
||||
int headerId;
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
if (!state->unk1C[index].boxId)
|
||||
if (!state->matchCallEntries[index].isSpecialTrainer)
|
||||
{
|
||||
index = GetTrainerIdxByRematchIdx(state->unk1C[index].unk6);
|
||||
index = GetTrainerIdxByRematchIdx(state->matchCallEntries[index].headerId);
|
||||
return gTrainers[index].trainerPic;
|
||||
}
|
||||
|
||||
var0 = state->unk1C[index].unk6;
|
||||
index = MatchCall_GetRematchTableIdx(var0);
|
||||
headerId = state->matchCallEntries[index].headerId;
|
||||
index = MatchCall_GetRematchTableIdx(headerId);
|
||||
if (index != REMATCH_TABLE_ENTRIES)
|
||||
{
|
||||
index = GetTrainerIdxByRematchIdx(index);
|
||||
return gTrainers[index].trainerPic;
|
||||
}
|
||||
|
||||
index = MatchCall_GetOverrideFacilityClass(var0);
|
||||
index = MatchCall_GetOverrideFacilityClass(headerId);
|
||||
return gFacilityClassToPicIndex[index];
|
||||
}
|
||||
|
||||
const u8 *sub_81CAF78(int index, u8 *arg1)
|
||||
const u8 *GetMatchCallMessageText(int index, u8 *arg1)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
*arg1 = 0;
|
||||
if (!Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType))
|
||||
return gText_CallCantBeMadeHere;
|
||||
|
||||
if (!state->unk1C[index].boxId)
|
||||
*arg1 = SelectMatchCallMessage(GetTrainerIdxByRematchIdx(state->unk1C[index].unk6), gStringVar4);
|
||||
if (!state->matchCallEntries[index].isSpecialTrainer)
|
||||
*arg1 = SelectMatchCallMessage(GetTrainerIdxByRematchIdx(state->matchCallEntries[index].headerId), gStringVar4);
|
||||
else
|
||||
MatchCall_GetMessage(state->unk1C[index].unk6, gStringVar4);
|
||||
MatchCall_GetMessage(state->matchCallEntries[index].headerId, gStringVar4);
|
||||
|
||||
return gStringVar4;
|
||||
}
|
||||
|
||||
const u8 *sub_81CAFD8(int index, int textType)
|
||||
const u8 *GetMatchCallFlavorText(int index, int checkPageEntry)
|
||||
{
|
||||
int var0;
|
||||
int rematchId;
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
if (state->unk1C[index].boxId)
|
||||
if (state->matchCallEntries[index].isSpecialTrainer)
|
||||
{
|
||||
var0 = MatchCall_GetRematchTableIdx(state->unk1C[index].unk6);
|
||||
if (var0 == REMATCH_TABLE_ENTRIES)
|
||||
return MatchCall_GetOverrideFlavorText(state->unk1C[index].unk6, textType);
|
||||
rematchId = MatchCall_GetRematchTableIdx(state->matchCallEntries[index].headerId);
|
||||
if (rematchId == REMATCH_TABLE_ENTRIES)
|
||||
return MatchCall_GetOverrideFlavorText(state->matchCallEntries[index].headerId, checkPageEntry);
|
||||
}
|
||||
else
|
||||
{
|
||||
var0 = state->unk1C[index].unk6;
|
||||
rematchId = state->matchCallEntries[index].headerId;
|
||||
}
|
||||
|
||||
return gMatchCallMessages[var0][textType];
|
||||
return gMatchCallFlavorTexts[rematchId][checkPageEntry];
|
||||
}
|
||||
|
||||
u16 sub_81CB01C(void)
|
||||
u16 GetMatchCallOptionCursorPos(void)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
return state->unk0;
|
||||
return state->optionCursorPos;
|
||||
}
|
||||
|
||||
u16 sub_81CB02C(int arg0)
|
||||
u16 GetMatchCallOptionId(int optionId)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
if (state->unk2 < arg0)
|
||||
return 3;
|
||||
if (state->maxOptionId < optionId)
|
||||
return MATCH_CALL_OPTION_COUNT;
|
||||
|
||||
return state->unk4[arg0];
|
||||
return state->matchCallOptions[optionId];
|
||||
}
|
||||
|
||||
void sub_81CB050(struct PokenavMonList * arg0, u8 *str)
|
||||
void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntries *matchCallEntry, u8 *str)
|
||||
{
|
||||
const u8 *trainerName;
|
||||
const u8 *className;
|
||||
if (!arg0->boxId)
|
||||
if (!matchCallEntry->isSpecialTrainer)
|
||||
{
|
||||
int index = GetTrainerIdxByRematchIdx(arg0->unk6);
|
||||
int index = GetTrainerIdxByRematchIdx(matchCallEntry->headerId);
|
||||
const struct Trainer *trainer = &gTrainers[index];
|
||||
int class = trainer->trainerClass;
|
||||
className = gTrainerClassNames[class];
|
||||
@@ -397,7 +409,7 @@ void sub_81CB050(struct PokenavMonList * arg0, u8 *str)
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_81D1A78(arg0->unk6, &className, &trainerName);
|
||||
MatchCall_GetNameAndDesc(matchCallEntry->headerId, &className, &trainerName);
|
||||
}
|
||||
|
||||
if (className && trainerName)
|
||||
@@ -418,15 +430,15 @@ u8 sub_81CB0C8(int rematchIndex)
|
||||
return Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum)->regionMapSectionId;
|
||||
}
|
||||
|
||||
int sub_81CB0E4(int index)
|
||||
int GetIndexDeltaOfNextCheckPageDown(int index)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
int count = 1;
|
||||
while (++index < state->unkA)
|
||||
while (++index < state->numRegistered)
|
||||
{
|
||||
if (!state->unk1C[index].boxId)
|
||||
if (!state->matchCallEntries[index].isSpecialTrainer)
|
||||
return count;
|
||||
if (MatchCall_HasCheckPage(state->unk1C[index].unk6))
|
||||
if (MatchCall_HasCheckPage(state->matchCallEntries[index].headerId))
|
||||
return count;
|
||||
|
||||
count++;
|
||||
@@ -435,15 +447,15 @@ int sub_81CB0E4(int index)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int sub_81CB128(int index)
|
||||
int GetIndexDeltaOfNextCheckPageUp(int index)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
int count = -1;
|
||||
while (--index >= 0)
|
||||
{
|
||||
if (!state->unk1C[index].boxId)
|
||||
if (!state->matchCallEntries[index].isSpecialTrainer)
|
||||
return count;
|
||||
if (MatchCall_HasCheckPage(state->unk1C[index].unk6))
|
||||
if (MatchCall_HasCheckPage(state->matchCallEntries[index].headerId))
|
||||
return count;
|
||||
|
||||
count--;
|
||||
@@ -458,13 +470,13 @@ bool32 unref_sub_81CB16C(void)
|
||||
|
||||
for (i = 0; i < REMATCH_TABLE_ENTRIES; i++)
|
||||
{
|
||||
if (sub_81CAE08(i) && gSaveBlock1Ptr->trainerRematches[i])
|
||||
if (IsRematchEntryRegistered(i) && gSaveBlock1Ptr->trainerRematches[i])
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
for (i = 0; i < MC_HEADER_COUNT; i++)
|
||||
{
|
||||
if (MatchCallFlagGetByIndex(i))
|
||||
if (MatchCall_GetEnabled(i))
|
||||
{
|
||||
int index = MatchCall_GetRematchTableIdx(i);
|
||||
if (gSaveBlock1Ptr->trainerRematches[index])
|
||||
@@ -478,20 +490,20 @@ bool32 unref_sub_81CB16C(void)
|
||||
static bool32 sub_81CB1D0(void)
|
||||
{
|
||||
struct Pokenav3Struct *state = GetSubstructPtr(5);
|
||||
int index = GetSelectedMatchCall();
|
||||
if (!state->unk1C[index].boxId)
|
||||
int selection = GetSelectedMatchCall();
|
||||
if (!state->matchCallEntries[selection].isSpecialTrainer)
|
||||
{
|
||||
if (sub_81CAEA4(index) == gMapHeader.regionMapSectionId)
|
||||
if (GetMatchCallMapSec(selection) == gMapHeader.regionMapSectionId)
|
||||
{
|
||||
if (!gSaveBlock1Ptr->trainerRematches[state->unk1C[index].unk6])
|
||||
if (!gSaveBlock1Ptr->trainerRematches[state->matchCallEntries[selection].headerId])
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (state->unk1C[index].unk6 == 11)
|
||||
if (state->matchCallEntries[selection].headerId == MC_HEADER_WATTSON)
|
||||
{
|
||||
if (sub_81CAEA4(index) == gMapHeader.regionMapSectionId
|
||||
if (GetMatchCallMapSec(selection) == gMapHeader.regionMapSectionId
|
||||
&& FlagGet(FLAG_BADGE05_GET) == TRUE)
|
||||
{
|
||||
if (!FlagGet(FLAG_WATTSON_REMATCH_AVAILABLE))
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -401,10 +401,10 @@ u32 sub_81CC878(s32 taskState)
|
||||
if (sub_8123514() || sub_81CCC88())
|
||||
return 2;
|
||||
|
||||
sub_81C7BA4(1);
|
||||
PrintHelpBarText(HELPBAR_MAP_ZOOMED_OUT);
|
||||
return 0;
|
||||
case 2:
|
||||
if (IsDma3ManagerBusyWithBgCopy_())
|
||||
if (WaitForHelpBar())
|
||||
return 2;
|
||||
|
||||
sub_81C7E14(4);
|
||||
@@ -434,10 +434,10 @@ u32 sub_81CC8D8(s32 taskState)
|
||||
if (sub_8123514() || sub_81CCC88())
|
||||
return 2;
|
||||
|
||||
sub_81C7BA4(2);
|
||||
PrintHelpBarText(HELPBAR_MAP_ZOOMED_IN);
|
||||
return 0;
|
||||
case 3:
|
||||
if (IsDma3ManagerBusyWithBgCopy_())
|
||||
if (WaitForHelpBar())
|
||||
return 2;
|
||||
|
||||
sub_81C7E14(5);
|
||||
|
||||
@@ -463,14 +463,14 @@ void sub_81CD970(void)
|
||||
{
|
||||
unkPtr->unk4[count].boxId = TOTAL_BOXES_COUNT;
|
||||
unkPtr->unk4[count].monId = i;
|
||||
unkPtr->unk4[count].unk6 = 0;
|
||||
unkPtr->unk4[count].data = 0;
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
unkPtr->unk4[count].boxId = 0;
|
||||
unkPtr->unk4[count].monId = 0;
|
||||
unkPtr->unk4[count].unk6 = 0;
|
||||
unkPtr->unk4[count].data = 0;
|
||||
unkPtr->unk2 = 0;
|
||||
unkPtr->unk0 = count + 1;
|
||||
structPtr->unk678A = 0;
|
||||
@@ -597,7 +597,7 @@ u8 *sub_81CDD24(u8 id)
|
||||
u16 sub_81CDD48(void)
|
||||
{
|
||||
struct PokenavSub18 *unkPtr = GetSubstructPtr(18);
|
||||
return unkPtr->unk4[unkPtr->unk2].unk6;
|
||||
return unkPtr->unk4[unkPtr->unk2].data;
|
||||
}
|
||||
|
||||
bool32 sub_81CDD5C(void)
|
||||
|
||||
@@ -195,8 +195,8 @@ u32 sub_81CDE94(s32 state)
|
||||
{
|
||||
case 0:
|
||||
if (sub_81CD3C4() != TRUE)
|
||||
return 2;
|
||||
return 0;
|
||||
return LT_PAUSE;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 1:
|
||||
InitBgTemplates(gUnknown_08623358, ARRAY_COUNT(gUnknown_08623358));
|
||||
ChangeBgX(1, 0, 0);
|
||||
@@ -209,15 +209,15 @@ u32 sub_81CDE94(s32 state)
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG3);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(11, 4));
|
||||
decompress_and_copy_tile_data_to_vram(3, gPokenavCondition_Gfx, 0, 0, 0);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 2:
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
decompress_and_copy_tile_data_to_vram(2, gUnknown_08623228, 0, 0, 0);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 3:
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
|
||||
LZ77UnCompVram(gPokenavCondition_Tilemap, structPtr->tilemapBuffers[0]);
|
||||
SetBgTilemapBuffer(3, structPtr->tilemapBuffers[0]);
|
||||
@@ -228,26 +228,26 @@ u32 sub_81CDE94(s32 state)
|
||||
CopyPaletteIntoBufferUnfaded(gPokenavCondition_Pal, 0x10, 0x20);
|
||||
CopyPaletteIntoBufferUnfaded(gUnknown_08623208, 0xF0, 0x20);
|
||||
structPtr->unk1814 = -80;
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 4:
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
|
||||
LZ77UnCompVram(gUnknown_0862323C, structPtr->tilemapBuffers[2]);
|
||||
SetBgTilemapBuffer(2, structPtr->tilemapBuffers[2]);
|
||||
CopyBgTilemapBufferToVram(2);
|
||||
CopyPaletteIntoBufferUnfaded(gUnknown_086231E8, 0x30, 0x20);
|
||||
sub_81D21DC(2);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 5:
|
||||
sub_8199DF0(1, 0, 0, 1);
|
||||
sub_8199DF0(1, 17, 1, 1);
|
||||
CpuFill32(0, structPtr->tilemapBuffers[1], BG_SCREEN_SIZE);
|
||||
SetBgTilemapBuffer(1, structPtr->tilemapBuffers[1]);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 6:
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
|
||||
structPtr->unk1820 = AddWindow(&gUnknown_08623364);
|
||||
if (sub_81CDD5C() == TRUE)
|
||||
@@ -257,29 +257,29 @@ u32 sub_81CDE94(s32 state)
|
||||
structPtr->unk1823 = AddWindow(&gUnknown_0862337C);
|
||||
}
|
||||
DeactivateAllTextPrinters();
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 7:
|
||||
sub_81CED30(0);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 8:
|
||||
sub_81CE9E4();
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 9:
|
||||
if (sub_81CDD5C() == TRUE)
|
||||
sub_81CE934();
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 10:
|
||||
sub_81CE754(0, sub_81CDC84(), TRUE);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 11:
|
||||
sub_81CE754(1, sub_81CDC84(), TRUE);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 12:
|
||||
sub_81CE754(2, sub_81CDC84(), TRUE);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 13:
|
||||
if (sub_81CE754(3, sub_81CDC84(), TRUE) != TRUE)
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
PutWindowTilemap(structPtr->unk1820);
|
||||
if (sub_81CDD5C() == TRUE)
|
||||
{
|
||||
@@ -287,14 +287,14 @@ u32 sub_81CDE94(s32 state)
|
||||
PutWindowTilemap(structPtr->unk1822);
|
||||
PutWindowTilemap(structPtr->unk1823);
|
||||
}
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 14:
|
||||
ShowBg(1);
|
||||
HideBg(2);
|
||||
ShowBg(3);
|
||||
if (sub_81CDD5C() == TRUE)
|
||||
sub_81C7BA4(4);
|
||||
return 0;
|
||||
PrintHelpBarText(HELPBAR_CONDITION_MON_STATUS);
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 15:
|
||||
sub_81C7AC0(1);
|
||||
if (!sub_81CDD5C())
|
||||
@@ -303,25 +303,25 @@ u32 sub_81CDE94(s32 state)
|
||||
sub_81C7FA0(1, TRUE, 0);
|
||||
sub_81C7FA0(6, TRUE, 0);
|
||||
}
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 16:
|
||||
if (IsPaletteFadeActive())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
if (!sub_81CDD5C() && sub_81C8010())
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
SetVBlankCallback_(sub_81CEE44);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 17:
|
||||
sub_81CEE90();
|
||||
sub_81D20AC(sub_81CDC70());
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 18:
|
||||
if (sub_81D20BC(sub_81CDC70()))
|
||||
return 2;
|
||||
return 0;
|
||||
return LT_PAUSE;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 19:
|
||||
sub_81CEE74(TRUE);
|
||||
return 0;
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 20:
|
||||
if (!sub_81D3178(sub_81CDC70(), &structPtr->unk1814))
|
||||
{
|
||||
@@ -329,12 +329,12 @@ u32 sub_81CDE94(s32 state)
|
||||
if (sub_81CDD5C() == TRUE || sub_81CDC60() != sub_81CDC50())
|
||||
sub_81D3480(structPtr->unk28e0, structPtr->unk1816, sub_81CDDB0());
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
return 2;
|
||||
return LT_PAUSE;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE2D0(s32 state)
|
||||
@@ -367,7 +367,7 @@ u32 sub_81CE2D0(s32 state)
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE37C(s32 state)
|
||||
@@ -424,7 +424,7 @@ u32 sub_81CE37C(s32 state)
|
||||
return 2;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE4D8(s32 state)
|
||||
@@ -468,7 +468,7 @@ u32 sub_81CE4D8(s32 state)
|
||||
return 2;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE5E4(s32 state)
|
||||
@@ -506,7 +506,7 @@ u32 sub_81CE5E4(s32 state)
|
||||
return 2;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE6BC(s32 state)
|
||||
@@ -514,18 +514,18 @@ u32 sub_81CE6BC(s32 state)
|
||||
switch (state)
|
||||
{
|
||||
case 0:
|
||||
sub_811FAA4(sub_81CDD7C(), 0xb0, 0x20);
|
||||
sub_811FAA4(sub_81CDD7C(), 176, 32);
|
||||
return 1;
|
||||
case 1:
|
||||
sub_81C7BA4(5);
|
||||
PrintHelpBarText(HELPBAR_CONDITION_MARKINGS);
|
||||
return 1;
|
||||
case 2:
|
||||
if (IsDma3ManagerBusyWithBgCopy_() == TRUE)
|
||||
if (WaitForHelpBar() == TRUE)
|
||||
return 2;
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u32 sub_81CE700(s32 state)
|
||||
@@ -536,18 +536,18 @@ u32 sub_81CE700(s32 state)
|
||||
sub_811FAF8();
|
||||
return 1;
|
||||
case 1:
|
||||
sub_81C7BA4(4);
|
||||
PrintHelpBarText(HELPBAR_CONDITION_MON_STATUS);
|
||||
return 1;
|
||||
case 2:
|
||||
if (IsDma3ManagerBusyWithBgCopy_() == TRUE)
|
||||
if (WaitForHelpBar() == TRUE)
|
||||
return 2;
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 4;
|
||||
return LT_FINISH;
|
||||
}
|
||||
|
||||
u8 *sub_81CE738(u8 *dst, u16 num)
|
||||
static u8 *UnusedPrintNumberString(u8 *dst, u16 num)
|
||||
{
|
||||
u8 *txtPtr = ConvertIntToDecimalStringN(dst, num, STR_CONV_MODE_RIGHT_ALIGN, 4);
|
||||
txtPtr = StringCopy(txtPtr, gText_Number2);
|
||||
|
||||
@@ -227,7 +227,7 @@ static s32 sub_81CF0F0(void)
|
||||
{
|
||||
struct PokenavSub7 * ptr = GetSubstructPtr(7);
|
||||
s32 i = GetSelectedMatchCall();
|
||||
return ptr->unkPtr->unk4[i].unk6;
|
||||
return ptr->unkPtr->unk4[i].data;
|
||||
}
|
||||
|
||||
static u16 sub_81CF10C(void)
|
||||
@@ -258,7 +258,7 @@ static u32 sub_81CF134(s32 state)
|
||||
if (!GetMonData(pokemon, MON_DATA_SANITY_IS_EGG))
|
||||
{
|
||||
item.monId = i;
|
||||
item.unk6 = GetMonData(pokemon, ptr->unk14);
|
||||
item.data = GetMonData(pokemon, ptr->unk14);
|
||||
sub_81CF2C4(ptr, &item);
|
||||
}
|
||||
}
|
||||
@@ -290,7 +290,7 @@ static u32 sub_81CF1D8(s32 state)
|
||||
{
|
||||
item.boxId = boxId;
|
||||
item.monId = monId;
|
||||
item.unk6 = GetBoxMonDataAt(boxId, monId, ptr->unk14);
|
||||
item.data = GetBoxMonDataAt(boxId, monId, ptr->unk14);
|
||||
sub_81CF2C4(ptr, &item);
|
||||
}
|
||||
boxCount++;
|
||||
@@ -313,19 +313,19 @@ static u32 sub_81CF278(s32 state)
|
||||
{
|
||||
struct PokenavSub7 * ptr = GetSubstructPtr(7);
|
||||
s32 r6 = ptr->unkPtr->unk0;
|
||||
s32 r4 = ptr->unkPtr->unk4[0].unk6;
|
||||
s32 r4 = ptr->unkPtr->unk4[0].data;
|
||||
s32 i;
|
||||
ptr->unkPtr->unk4[0].unk6 = 1;
|
||||
ptr->unkPtr->unk4[0].data = 1;
|
||||
for (i = 1; i < r6; i++)
|
||||
{
|
||||
if (ptr->unkPtr->unk4[i].unk6 == r4)
|
||||
if (ptr->unkPtr->unk4[i].data == r4)
|
||||
{
|
||||
ptr->unkPtr->unk4[i].unk6 = ptr->unkPtr->unk4[i - 1].unk6;
|
||||
ptr->unkPtr->unk4[i].data = ptr->unkPtr->unk4[i - 1].data;
|
||||
}
|
||||
else
|
||||
{
|
||||
r4 = ptr->unkPtr->unk4[i].unk6;
|
||||
ptr->unkPtr->unk4[i].unk6 = i + 1;
|
||||
r4 = ptr->unkPtr->unk4[i].data;
|
||||
ptr->unkPtr->unk4[i].data = i + 1;
|
||||
}
|
||||
}
|
||||
ptr->unk18 = 1;
|
||||
@@ -340,7 +340,7 @@ static void sub_81CF2C4(struct PokenavSub7 *structPtr, struct PokenavMonList *it
|
||||
|
||||
while (right != insertionIdx)
|
||||
{
|
||||
if (item->unk6 > structPtr->unkPtr->unk4[insertionIdx].unk6)
|
||||
if (item->data > structPtr->unkPtr->unk4[insertionIdx].data)
|
||||
right = insertionIdx;
|
||||
else
|
||||
left = insertionIdx + 1;
|
||||
@@ -431,7 +431,7 @@ static u32 sub_81CF418(s32 state)
|
||||
if (sub_81C8224())
|
||||
return LT_PAUSE;
|
||||
sub_81CF7C8(unk);
|
||||
sub_81C7BA4(3);
|
||||
PrintHelpBarText(HELPBAR_CONDITION_MON_LIST);
|
||||
return LT_INC_AND_PAUSE;
|
||||
case 4:
|
||||
if (free_temp_tile_data_buffers_if_possible())
|
||||
@@ -651,8 +651,8 @@ static void sub_81CF7F4(struct PokenavSub8 * ptr)
|
||||
|
||||
static void sub_81CF88C(void)
|
||||
{
|
||||
struct MatchCallListTemplate template;
|
||||
template.unk0 = sub_81CF0D0();
|
||||
struct PokenavListTemplate template;
|
||||
template.list.monList = sub_81CF0D0();
|
||||
template.unk4 = sub_81CF0E0();
|
||||
template.unk8 = 4;
|
||||
template.unk6 = sub_81CF10C();
|
||||
@@ -662,7 +662,7 @@ static void sub_81CF88C(void)
|
||||
template.unkC = 8;
|
||||
template.unkD = 2;
|
||||
template.unkE = 1;
|
||||
template.unk10 = sub_81CF8E4;
|
||||
template.listFunc.unk10_1 = sub_81CF8E4;
|
||||
template.unk14 = NULL;
|
||||
sub_81C81D4(&gUnknown_08623590[1], &template, 0);
|
||||
}
|
||||
|
||||
@@ -218,7 +218,7 @@ static s32 sub_81CFB48(void)
|
||||
{
|
||||
struct PokenavSub9 * ptr = GetSubstructPtr(9);
|
||||
s32 idx = GetSelectedMatchCall();
|
||||
return ptr->unk1C->unk4[idx].unk6;
|
||||
return ptr->unk1C->unk4[idx].data;
|
||||
}
|
||||
|
||||
static s32 sub_81CFB64(void)
|
||||
@@ -240,7 +240,7 @@ static u32 sub_81CFB8C(s32 state)
|
||||
|
||||
ptr->unk1C->unk0 = 0;
|
||||
ptr->unk1C->unk2 = 0;
|
||||
item.boxId = 14;
|
||||
item.boxId = TOTAL_BOXES_COUNT;
|
||||
for (i = 0; i < PARTY_SIZE; i++)
|
||||
{
|
||||
struct Pokemon * pokemon = &gPlayerParty[i];
|
||||
@@ -252,7 +252,7 @@ static u32 sub_81CFB8C(s32 state)
|
||||
if (ribbonCount != 0)
|
||||
{
|
||||
item.monId = i;
|
||||
item.unk6 = ribbonCount;
|
||||
item.data = ribbonCount;
|
||||
sub_81CFCEC(ptr, &item);
|
||||
}
|
||||
}
|
||||
@@ -288,13 +288,13 @@ static u32 sub_81CFC40(s32 state)
|
||||
{
|
||||
item.boxId = boxId;
|
||||
item.monId = monId;
|
||||
item.unk6 = ribbonCount;
|
||||
item.data = ribbonCount;
|
||||
sub_81CFCEC(ptr, &item);
|
||||
}
|
||||
}
|
||||
boxCount++;
|
||||
monId++;
|
||||
if (boxCount > 14)
|
||||
if (boxCount > TOTAL_BOXES_COUNT)
|
||||
{
|
||||
ptr->unkC = boxId;
|
||||
ptr->unk10 = monId;
|
||||
@@ -317,7 +317,7 @@ static void sub_81CFCEC(struct PokenavSub9 *structPtr, struct PokenavMonList *it
|
||||
|
||||
while (right != insertionIdx)
|
||||
{
|
||||
if (item->unk6 > structPtr->unk1C->unk4[insertionIdx].unk6)
|
||||
if (item->data > structPtr->unk1C->unk4[insertionIdx].data)
|
||||
right = insertionIdx;
|
||||
else
|
||||
left = insertionIdx + 1;
|
||||
@@ -445,7 +445,7 @@ static u32 sub_81CFEB8(s32 state)
|
||||
return LT_PAUSE;
|
||||
ShowBg(2);
|
||||
HideBg(3);
|
||||
sub_81C7BA4(9);
|
||||
PrintHelpBarText(HELPBAR_RIBBONS_MON_LIST);
|
||||
sub_81C7AC0(1);
|
||||
if (!unk->unkC)
|
||||
{
|
||||
@@ -665,8 +665,8 @@ static void sub_81D02B0(s32 windowId, s32 val1, s32 val2)
|
||||
|
||||
static void sub_81D0304(void)
|
||||
{
|
||||
struct MatchCallListTemplate template;
|
||||
template.unk0 = sub_81CFB28();
|
||||
struct PokenavListTemplate template;
|
||||
template.list.monList = sub_81CFB28();
|
||||
template.unk4 = sub_81CFB38();
|
||||
template.unk8 = 4;
|
||||
template.unk6 = sub_81CFB64();
|
||||
@@ -676,7 +676,7 @@ static void sub_81D0304(void)
|
||||
template.unkC = 8;
|
||||
template.unkD = 2;
|
||||
template.unkE = 1;
|
||||
template.unk10 = sub_81D035C;
|
||||
template.listFunc.unk10_1 = sub_81D035C;
|
||||
template.unk14 = NULL;
|
||||
sub_81C81D4(&gUnknown_086237B0[1], &template, 0);
|
||||
}
|
||||
@@ -688,7 +688,7 @@ static void sub_81D035C(struct PokenavMonList * item0, u8 * dest)
|
||||
u8 * s;
|
||||
const u8 * genderStr;
|
||||
struct PokenavMonList * item = item0;
|
||||
if (item->boxId == 14)
|
||||
if (item->boxId == TOTAL_BOXES_COUNT)
|
||||
{
|
||||
struct Pokemon * mon = &gPlayerParty[item->monId];
|
||||
gender = GetMonGender(mon);
|
||||
@@ -722,5 +722,5 @@ static void sub_81D035C(struct PokenavMonList * item0, u8 * dest)
|
||||
*s++ = 5; // LV
|
||||
ConvertIntToDecimalStringN(s, level, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
dest = sub_81DB494(dest, 1, gStringVar1, 54);
|
||||
ConvertIntToDecimalStringN(dest, item->unk6, STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||
ConvertIntToDecimalStringN(dest, item->data, STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||
}
|
||||
|
||||
102
src/strings.c
102
src/strings.c
@@ -2,23 +2,23 @@
|
||||
#include "strings.h"
|
||||
|
||||
ALIGNED(4)
|
||||
const u8 gExpandedPlaceholder_Empty[] = _("");
|
||||
const u8 gExpandedPlaceholder_Kun[] = _("");
|
||||
const u8 gExpandedPlaceholder_Chan[] = _("");
|
||||
const u8 gExpandedPlaceholder_Sapphire[] = _("SAPPHIRE");
|
||||
const u8 gExpandedPlaceholder_Ruby[] = _("RUBY");
|
||||
const u8 gExpandedPlaceholder_Emerald[] = _("EMERALD");
|
||||
const u8 gExpandedPlaceholder_Aqua[] = _("AQUA");
|
||||
const u8 gExpandedPlaceholder_Magma[] = _("MAGMA");
|
||||
const u8 gExpandedPlaceholder_Archie[] = _("ARCHIE");
|
||||
const u8 gExpandedPlaceholder_Maxie[] = _("MAXIE");
|
||||
const u8 gExpandedPlaceholder_Kyogre[] = _("KYOGRE");
|
||||
const u8 gExpandedPlaceholder_Groudon[] = _("GROUDON");
|
||||
const u8 gExpandedPlaceholder_Brendan[] = _("BRENDAN");
|
||||
const u8 gExpandedPlaceholder_May[] = _("MAY");
|
||||
const u8 gText_ExpandedPlaceholder_Empty[] = _("");
|
||||
const u8 gText_ExpandedPlaceholder_Kun[] = _("");
|
||||
const u8 gText_ExpandedPlaceholder_Chan[] = _("");
|
||||
const u8 gText_ExpandedPlaceholder_Sapphire[] = _("SAPPHIRE");
|
||||
const u8 gText_ExpandedPlaceholder_Ruby[] = _("RUBY");
|
||||
const u8 gText_ExpandedPlaceholder_Emerald[] = _("EMERALD");
|
||||
const u8 gText_ExpandedPlaceholder_Aqua[] = _("AQUA");
|
||||
const u8 gText_ExpandedPlaceholder_Magma[] = _("MAGMA");
|
||||
const u8 gText_ExpandedPlaceholder_Archie[] = _("ARCHIE");
|
||||
const u8 gText_ExpandedPlaceholder_Maxie[] = _("MAXIE");
|
||||
const u8 gText_ExpandedPlaceholder_Kyogre[] = _("KYOGRE");
|
||||
const u8 gText_ExpandedPlaceholder_Groudon[] = _("GROUDON");
|
||||
const u8 gText_ExpandedPlaceholder_Brendan[] = _("BRENDAN");
|
||||
const u8 gText_ExpandedPlaceholder_May[] = _("MAY");
|
||||
const u8 gText_EggNickname[] = _("EGG");
|
||||
const u8 gText_Pokemon[] = _("POKéMON");
|
||||
const u8 gProfBirchMatchCallName[] = _("PROF. BIRCH");
|
||||
const u8 gText_ProfBirchMatchCallName[] = _("PROF. BIRCH");
|
||||
const u8 gText_MainMenuNewGame[] = _("NEW GAME");
|
||||
const u8 gText_MainMenuContinue[] = _("CONTINUE");
|
||||
const u8 gText_MainMenuOption[] = _("OPTION");
|
||||
@@ -1276,20 +1276,20 @@ const u8 gText_Sorry[] = _("SORRY");
|
||||
const u8 gText_YaySmileEmoji[] = _("YAY{EMOJI_BIGSMILE}");
|
||||
const u8 gText_ThankYou[] = _("THANK YOU");
|
||||
const u8 gText_ByeBye[] = _("BYE-BYE!");
|
||||
const u8 gMatchCallStevenStrategyText[] = _("Attack the weak points!");
|
||||
const u8 gMatchCall_StevenTrainersPokemonText[] = _("Ultimate STEEL POKéMON.");
|
||||
const u8 gMatchCall_StevenSelfIntroductionText_Line1_BeforeMeteorFallsBattle[] = _("I'd climb even waterfalls");
|
||||
const u8 gMatchCall_StevenSelfIntroductionText_Line2_BeforeMeteorFallsBattle[] = _("to find a rare stone!");
|
||||
const u8 gMatchCall_StevenSelfIntroductionText_Line1_AfterMeteorFallsBattle[] = _("I'm the strongest and most");
|
||||
const u8 gMatchCall_StevenSelfIntroductionText_Line2_AfterMeteorFallsBattle[] = _("energetic after all!");
|
||||
const u8 gMatchCall_BrendanStrategyText[] = _("Battle with knowledge!");
|
||||
const u8 gMatchCall_BrendanTrainersPokemonText[] = _("I will use various POKéMON.");
|
||||
const u8 gMatchCall_BrendanSelfIntroductionText_Line1[] = _("I'll be a better POKéMON");
|
||||
const u8 gMatchCall_BrendanSelfIntroductionText_Line2[] = _("prof than my father is!");
|
||||
const u8 gMatchCall_MayStrategyText[] = _("I'm not so good at battles.");
|
||||
const u8 gMatchCall_MayTrainersPokemonText[] = _("I'll use any POKéMON!");
|
||||
const u8 gMatchCall_MaySelfIntroductionText_Line1[] = _("My POKéMON and I help");
|
||||
const u8 gMatchCall_MaySelfIntroductionText_Line2[] = _("my father's research.");
|
||||
const u8 gText_MatchCallSteven_Strategy[] = _("Attack the weak points!");
|
||||
const u8 gText_MatchCallSteven_Pokemon[] = _("Ultimate STEEL POKéMON.");
|
||||
const u8 gText_MatchCallSteven_Intro1_BeforeMeteorFallsBattle[] = _("I'd climb even waterfalls");
|
||||
const u8 gText_MatchCallSteven_Intro2_BeforeMeteorFallsBattle[] = _("to find a rare stone!");
|
||||
const u8 gText_MatchCallSteven_Intro1_AfterMeteorFallsBattle[] = _("I'm the strongest and most");
|
||||
const u8 gText_MatchCallSteven_Intro2_AfterMeteorFallsBattle[] = _("energetic after all!");
|
||||
const u8 gText_MatchCallBrendan_Strategy[] = _("Battle with knowledge!");
|
||||
const u8 gText_MatchCallBrendan_Pokemon[] = _("I will use various POKéMON.");
|
||||
const u8 gText_MatchCallBrendan_Intro1[] = _("I'll be a better POKéMON");
|
||||
const u8 gText_MatchCallBrendan_Intro2[] = _("prof than my father is!");
|
||||
const u8 gText_MatchCallMay_Strategy[] = _("I'm not so good at battles.");
|
||||
const u8 gText_MatchCallMay_Pokemon[] = _("I'll use any POKéMON!");
|
||||
const u8 gText_MatchCallMay_Intro1[] = _("My POKéMON and I help");
|
||||
const u8 gText_MatchCallMay_Intro2[] = _("my father's research.");
|
||||
const u8 gText_HatchedFromEgg[] = _("{STR_VAR_1} hatched from the EGG!");
|
||||
const u8 gText_NicknameHatchPrompt[] = _("Would you like to nickname the newly\nhatched {STR_VAR_1}?");
|
||||
ALIGNED(4) const u8 gText_ReadyToBerryCrush[] = _("Are you ready to BERRY-CRUSH?\nPlease pick a BERRY for use.\p");
|
||||
@@ -1769,28 +1769,28 @@ const u8 gText_ClearingData[] = _("Clearing data…\nPlease wait.");
|
||||
const u8 gText_IsThisTheCorrectTime[] = _("Is this the correct time?");
|
||||
const u8 gText_Confirm3[] = _("CONFIRM");
|
||||
const u8 gText_Cancel4[] = _("CANCEL");
|
||||
const u8 gMrStoneMatchCallDesc[] = _("DEVON PRES");
|
||||
const u8 gMrStoneMatchCallName[] = _("MR. STONE");
|
||||
const u8 gStevenMatchCallDesc[] = _("HARD AS ROCK");
|
||||
const u8 gStevenMatchCallName[] = _("STEVEN");
|
||||
const u8 gMayBrendanMatchCallDesc[] = _("RAD NEIGHBOR");
|
||||
const u8 gNormanMatchCallDesc[] = _("RELIABLE ONE");
|
||||
const u8 gMomMatchCallDesc[] = _("CALM & KIND");
|
||||
const u8 gWallyMatchCallDesc[] = _("{PKMN} LOVER");
|
||||
const u8 gNormanMatchCallName[] = _("DAD");
|
||||
const u8 gMomMatchCallName[] = _("MOM");
|
||||
const u8 gScottMatchCallDesc[] = _("ELUSIVE EYES");
|
||||
const u8 gScottMatchCallName[] = _("SCOTT");
|
||||
const u8 gRoxanneMatchCallDesc[] = _("ROCKIN' WHIZ");
|
||||
const u8 gBrawlyMatchCallDesc[] = _("THE BIG HIT");
|
||||
const u8 gWattsonMatchCallDesc[] = _("SWELL SHOCK");
|
||||
const u8 gFlanneryMatchCallDesc[] = _("PASSION BURN");
|
||||
const u8 gWinonaMatchCallDesc[] = _("SKY TAMER");
|
||||
const u8 gTateLizaMatchCallDesc[] = _("MYSTIC DUO");
|
||||
const u8 gJuanMatchCallDesc[] = _("DANDY CHARM");
|
||||
const u8 gEliteFourMatchCallDesc[] = _("ELITE FOUR");
|
||||
const u8 gChampionMatchCallDesc[] = _("CHAMPION");
|
||||
const u8 gProfBirchMatchCallDesc[] = _("{PKMN} PROF.");
|
||||
const u8 gText_MrStoneMatchCallDesc[] = _("DEVON PRES");
|
||||
const u8 gText_MrStoneMatchCallName[] = _("MR. STONE");
|
||||
const u8 gText_StevenMatchCallDesc[] = _("HARD AS ROCK");
|
||||
const u8 gText_StevenMatchCallName[] = _("STEVEN");
|
||||
const u8 gText_MayBrendanMatchCallDesc[] = _("RAD NEIGHBOR");
|
||||
const u8 gText_NormanMatchCallDesc[] = _("RELIABLE ONE");
|
||||
const u8 gText_MomMatchCallDesc[] = _("CALM & KIND");
|
||||
const u8 gText_WallyMatchCallDesc[] = _("{PKMN} LOVER");
|
||||
const u8 gText_NormanMatchCallName[] = _("DAD");
|
||||
const u8 gText_MomMatchCallName[] = _("MOM");
|
||||
const u8 gText_ScottMatchCallDesc[] = _("ELUSIVE EYES");
|
||||
const u8 gText_ScottMatchCallName[] = _("SCOTT");
|
||||
const u8 gText_RoxanneMatchCallDesc[] = _("ROCKIN' WHIZ");
|
||||
const u8 gText_BrawlyMatchCallDesc[] = _("THE BIG HIT");
|
||||
const u8 gText_WattsonMatchCallDesc[] = _("SWELL SHOCK");
|
||||
const u8 gText_FlanneryMatchCallDesc[] = _("PASSION BURN");
|
||||
const u8 gText_WinonaMatchCallDesc[] = _("SKY TAMER");
|
||||
const u8 gText_TateLizaMatchCallDesc[] = _("MYSTIC DUO");
|
||||
const u8 gText_JuanMatchCallDesc[] = _("DANDY CHARM");
|
||||
const u8 gText_EliteFourMatchCallDesc[] = _("ELITE FOUR");
|
||||
const u8 gText_ChampionMatchCallDesc[] = _("CHAMPION");
|
||||
const u8 gText_ProfBirchMatchCallDesc[] = _("{PKMN} PROF.");
|
||||
const u8 gText_CommStandbyAwaitingOtherPlayer[] = _("Communication standby…\nAwaiting another player to choose.");
|
||||
const u8 gText_BattleWasRefused[] = _("The battle was refused.{PAUSE 60}");
|
||||
const u8 gText_RefusedBattle[] = _("Refused the battle.{PAUSE 60}");
|
||||
|
||||
Reference in New Issue
Block a user