summaryrefslogtreecommitdiff
path: root/src/data
diff options
context:
space:
mode:
Diffstat (limited to 'src/data')
-rwxr-xr-xsrc/data/field_event_obj/event_object_graphics_info_pointers.h478
-rw-r--r--src/data/lilycove_lady.h470
-rw-r--r--src/data/region_map/city_map_entries.h113
-rw-r--r--src/data/region_map/city_map_tilemaps.h22
-rw-r--r--src/data/text/gift_ribbon_descriptions.h115
-rw-r--r--src/data/text/match_call_messages.h476
-rw-r--r--src/data/text/ribbon_descriptions.h48
-rwxr-xr-xsrc/data/wild_encounters.json26
-rwxr-xr-xsrc/data/wild_encounters.json.txt11
9 files changed, 1520 insertions, 239 deletions
diff --git a/src/data/field_event_obj/event_object_graphics_info_pointers.h b/src/data/field_event_obj/event_object_graphics_info_pointers.h
index 2f504737a..0b8aa79b2 100755
--- a/src/data/field_event_obj/event_object_graphics_info_pointers.h
+++ b/src/data/field_event_obj/event_object_graphics_info_pointers.h
@@ -247,245 +247,245 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_UnusedMauvilleOldM
const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] = {
- &gEventObjectGraphicsInfo_BrendanNormal,
- &gEventObjectGraphicsInfo_BrendanMachBike,
- &gEventObjectGraphicsInfo_BrendanSurfing,
- &gEventObjectGraphicsInfo_BrendanFieldMove,
- &gEventObjectGraphicsInfo_QuintyPlump,
- &gEventObjectGraphicsInfo_NinjaBoy,
- &gEventObjectGraphicsInfo_Twin,
- &gEventObjectGraphicsInfo_Boy1,
- &gEventObjectGraphicsInfo_Girl1,
- &gEventObjectGraphicsInfo_Boy2,
- &gEventObjectGraphicsInfo_Girl2,
- &gEventObjectGraphicsInfo_LittleBoy,
- &gEventObjectGraphicsInfo_LittleGirl,
- &gEventObjectGraphicsInfo_Boy3,
- &gEventObjectGraphicsInfo_Girl3,
- &gEventObjectGraphicsInfo_RichBoy,
- &gEventObjectGraphicsInfo_Woman1,
- &gEventObjectGraphicsInfo_FatMan,
- &gEventObjectGraphicsInfo_PokefanF,
- &gEventObjectGraphicsInfo_Man1,
- &gEventObjectGraphicsInfo_Woman2,
- &gEventObjectGraphicsInfo_ExpertM,
- &gEventObjectGraphicsInfo_ExpertF,
- &gEventObjectGraphicsInfo_Man2,
- &gEventObjectGraphicsInfo_Woman3,
- &gEventObjectGraphicsInfo_PokefanM,
- &gEventObjectGraphicsInfo_Woman4,
- &gEventObjectGraphicsInfo_Cook,
- &gEventObjectGraphicsInfo_LinkReceptionist,
- &gEventObjectGraphicsInfo_OldMan,
- &gEventObjectGraphicsInfo_OldWoman,
- &gEventObjectGraphicsInfo_Camper,
- &gEventObjectGraphicsInfo_Picnicker,
- &gEventObjectGraphicsInfo_Man3,
- &gEventObjectGraphicsInfo_Woman5,
- &gEventObjectGraphicsInfo_Youngster,
- &gEventObjectGraphicsInfo_BugCatcher,
- &gEventObjectGraphicsInfo_PsychicM,
- &gEventObjectGraphicsInfo_SchoolKidM,
- &gEventObjectGraphicsInfo_Maniac,
- &gEventObjectGraphicsInfo_HexManiac,
- &gEventObjectGraphicsInfo_Rayquaza1,
- &gEventObjectGraphicsInfo_SwimmerM,
- &gEventObjectGraphicsInfo_SwimmerF,
- &gEventObjectGraphicsInfo_BlackBelt,
- &gEventObjectGraphicsInfo_Beauty,
- &gEventObjectGraphicsInfo_Scientist1,
- &gEventObjectGraphicsInfo_Lass,
- &gEventObjectGraphicsInfo_Gentleman,
- &gEventObjectGraphicsInfo_Sailor,
- &gEventObjectGraphicsInfo_Fisherman,
- &gEventObjectGraphicsInfo_RunningTriathleteM,
- &gEventObjectGraphicsInfo_RunningTriathleteF,
- &gEventObjectGraphicsInfo_TuberF,
- &gEventObjectGraphicsInfo_TuberM,
- &gEventObjectGraphicsInfo_Hiker,
- &gEventObjectGraphicsInfo_CyclingTriathleteM,
- &gEventObjectGraphicsInfo_CyclingTriathleteF,
- &gEventObjectGraphicsInfo_Nurse,
- &gEventObjectGraphicsInfo_ItemBall,
- &gEventObjectGraphicsInfo_BerryTree,
- &gEventObjectGraphicsInfo_BerryTreeEarlyStages,
- &gEventObjectGraphicsInfo_BerryTreeLateStages,
- &gEventObjectGraphicsInfo_BrendanAcroBike,
- &gEventObjectGraphicsInfo_ProfBirch,
- &gEventObjectGraphicsInfo_Man4,
- &gEventObjectGraphicsInfo_Man5,
- &gEventObjectGraphicsInfo_ReporterM,
- &gEventObjectGraphicsInfo_ReporterF,
- &gEventObjectGraphicsInfo_Bard,
- &gEventObjectGraphicsInfo_Anabel,
- &gEventObjectGraphicsInfo_Tucker,
- &gEventObjectGraphicsInfo_Greta,
- &gEventObjectGraphicsInfo_Spenser,
- &gEventObjectGraphicsInfo_Noland,
- &gEventObjectGraphicsInfo_Lucy,
- &gEventObjectGraphicsInfo_UnusedNatuDoll,
- &gEventObjectGraphicsInfo_UnusedMagnemiteDoll,
- &gEventObjectGraphicsInfo_UnusedSquirtleDoll,
- &gEventObjectGraphicsInfo_UnusedWooperDoll,
- &gEventObjectGraphicsInfo_UnusedPikachuDoll,
- &gEventObjectGraphicsInfo_UnusedPorygon2Doll,
- &gEventObjectGraphicsInfo_CuttableTree,
- &gEventObjectGraphicsInfo_MartEmployee,
- &gEventObjectGraphicsInfo_RooftopSaleWoman,
- &gEventObjectGraphicsInfo_Teala,
- &gEventObjectGraphicsInfo_BreakableRock,
- &gEventObjectGraphicsInfo_PushableBoulder,
- &gEventObjectGraphicsInfo_MrBrineysBoat,
- &gEventObjectGraphicsInfo_MayNormal,
- &gEventObjectGraphicsInfo_MayMachBike,
- &gEventObjectGraphicsInfo_MayAcroBike,
- &gEventObjectGraphicsInfo_MaySurfing,
- &gEventObjectGraphicsInfo_MayFieldMove,
- &gEventObjectGraphicsInfo_Truck,
- &gEventObjectGraphicsInfo_VigorothCarryingBox,
- &gEventObjectGraphicsInfo_VigorothFacingAway,
- &gEventObjectGraphicsInfo_BirchsBag,
- &gEventObjectGraphicsInfo_EnemyZigzagoon,
- &gEventObjectGraphicsInfo_Artist,
- &gEventObjectGraphicsInfo_RivalBrendanNormal,
- &gEventObjectGraphicsInfo_RivalBrendanMachBike,
- &gEventObjectGraphicsInfo_RivalBrendanAcroBike,
- &gEventObjectGraphicsInfo_RivalBrendanSurfing,
- &gEventObjectGraphicsInfo_RivalBrendanFieldMove,
- &gEventObjectGraphicsInfo_RivalMayNormal,
- &gEventObjectGraphicsInfo_RivalMayMachBike,
- &gEventObjectGraphicsInfo_RivalMayAcroBike,
- &gEventObjectGraphicsInfo_RivalMaySurfing,
- &gEventObjectGraphicsInfo_RivalMayFieldMove,
- &gEventObjectGraphicsInfo_Cameraman,
- &gEventObjectGraphicsInfo_BrendanUnderwater,
- &gEventObjectGraphicsInfo_MayUnderwater,
- &gEventObjectGraphicsInfo_MovingBox,
- &gEventObjectGraphicsInfo_CableCar,
- &gEventObjectGraphicsInfo_Scientist2,
- &gEventObjectGraphicsInfo_DevonEmployee,
- &gEventObjectGraphicsInfo_AquaMemberM,
- &gEventObjectGraphicsInfo_AquaMemberF,
- &gEventObjectGraphicsInfo_MagmaMemberM,
- &gEventObjectGraphicsInfo_MagmaMemberF,
- &gEventObjectGraphicsInfo_Sidney,
- &gEventObjectGraphicsInfo_Phoebe,
- &gEventObjectGraphicsInfo_Glacia,
- &gEventObjectGraphicsInfo_Drake,
- &gEventObjectGraphicsInfo_Roxanne,
- &gEventObjectGraphicsInfo_Brawly,
- &gEventObjectGraphicsInfo_Wattson,
- &gEventObjectGraphicsInfo_Flannery,
- &gEventObjectGraphicsInfo_Norman,
- &gEventObjectGraphicsInfo_Winona,
- &gEventObjectGraphicsInfo_Liza,
- &gEventObjectGraphicsInfo_Tate,
- &gEventObjectGraphicsInfo_Wallace,
- &gEventObjectGraphicsInfo_Steven,
- &gEventObjectGraphicsInfo_Wally,
- &gEventObjectGraphicsInfo_RubySapphireLittleBoy,
- &gEventObjectGraphicsInfo_BrendanFishing,
- &gEventObjectGraphicsInfo_MayFishing,
- &gEventObjectGraphicsInfo_HotSpringsOldWoman,
- &gEventObjectGraphicsInfo_SSTidal,
- &gEventObjectGraphicsInfo_SubmarineShadow,
- &gEventObjectGraphicsInfo_PichuDoll,
- &gEventObjectGraphicsInfo_PikachuDoll,
- &gEventObjectGraphicsInfo_MarillDoll,
- &gEventObjectGraphicsInfo_TogepiDoll,
- &gEventObjectGraphicsInfo_CyndaquilDoll,
- &gEventObjectGraphicsInfo_ChikoritaDoll,
- &gEventObjectGraphicsInfo_TotodileDoll,
- &gEventObjectGraphicsInfo_JigglypuffDoll,
- &gEventObjectGraphicsInfo_MeowthDoll,
- &gEventObjectGraphicsInfo_ClefairyDoll,
- &gEventObjectGraphicsInfo_DittoDoll,
- &gEventObjectGraphicsInfo_SmoochumDoll,
- &gEventObjectGraphicsInfo_TreeckoDoll,
- &gEventObjectGraphicsInfo_TorchicDoll,
- &gEventObjectGraphicsInfo_MudkipDoll,
- &gEventObjectGraphicsInfo_DuskullDoll,
- &gEventObjectGraphicsInfo_WynautDoll,
- &gEventObjectGraphicsInfo_BaltoyDoll,
- &gEventObjectGraphicsInfo_KecleonDoll,
- &gEventObjectGraphicsInfo_AzurillDoll,
- &gEventObjectGraphicsInfo_SkittyDoll,
- &gEventObjectGraphicsInfo_SwabluDoll,
- &gEventObjectGraphicsInfo_GulpinDoll,
- &gEventObjectGraphicsInfo_LotadDoll,
- &gEventObjectGraphicsInfo_SeedotDoll,
- &gEventObjectGraphicsInfo_PikaCushion,
- &gEventObjectGraphicsInfo_RoundCushion,
- &gEventObjectGraphicsInfo_KissCushion,
- &gEventObjectGraphicsInfo_ZigzagCushion,
- &gEventObjectGraphicsInfo_SpinCushion,
- &gEventObjectGraphicsInfo_DiamondCushion,
- &gEventObjectGraphicsInfo_BallCushion,
- &gEventObjectGraphicsInfo_GrassCushion,
- &gEventObjectGraphicsInfo_FireCushion,
- &gEventObjectGraphicsInfo_WaterCushion,
- &gEventObjectGraphicsInfo_BigSnorlaxDoll,
- &gEventObjectGraphicsInfo_BigRhydonDoll,
- &gEventObjectGraphicsInfo_BigLaprasDoll,
- &gEventObjectGraphicsInfo_BigVenusaurDoll,
- &gEventObjectGraphicsInfo_BigCharizardDoll,
- &gEventObjectGraphicsInfo_BigBlastoiseDoll,
- &gEventObjectGraphicsInfo_BigWailmerDoll,
- &gEventObjectGraphicsInfo_BigRegirockDoll,
- &gEventObjectGraphicsInfo_BigRegiceDoll,
- &gEventObjectGraphicsInfo_BigRegisteelDoll,
- &gEventObjectGraphicsInfo_Latias,
- &gEventObjectGraphicsInfo_Latios,
- &gEventObjectGraphicsInfo_GameboyKid,
- &gEventObjectGraphicsInfo_ContestJudge,
- &gEventObjectGraphicsInfo_BrendanWatering,
- &gEventObjectGraphicsInfo_MayWatering,
- &gEventObjectGraphicsInfo_BrendanDecorating,
- &gEventObjectGraphicsInfo_MayDecorating,
- &gEventObjectGraphicsInfo_Archie,
- &gEventObjectGraphicsInfo_Maxie,
- &gEventObjectGraphicsInfo_Kyogre1,
- &gEventObjectGraphicsInfo_Groudon1,
- &gEventObjectGraphicsInfo_Fossil,
- &gEventObjectGraphicsInfo_Regirock,
- &gEventObjectGraphicsInfo_Regice,
- &gEventObjectGraphicsInfo_Registeel,
- &gEventObjectGraphicsInfo_Skitty,
- &gEventObjectGraphicsInfo_Kecleon1,
- &gEventObjectGraphicsInfo_Kyogre2,
- &gEventObjectGraphicsInfo_Groudon2,
- &gEventObjectGraphicsInfo_Rayquaza2,
- &gEventObjectGraphicsInfo_Zigzagoon,
- &gEventObjectGraphicsInfo_Pikachu,
- &gEventObjectGraphicsInfo_Azumarill,
- &gEventObjectGraphicsInfo_Wingull,
- &gEventObjectGraphicsInfo_Kecleon2,
- &gEventObjectGraphicsInfo_TuberMSwimming,
- &gEventObjectGraphicsInfo_Azurill,
- &gEventObjectGraphicsInfo_Mom,
- &gEventObjectGraphicsInfo_LinkBrendan,
- &gEventObjectGraphicsInfo_LinkMay,
- &gEventObjectGraphicsInfo_Juan,
- &gEventObjectGraphicsInfo_Scott,
- &gEventObjectGraphicsInfo_Poochyena,
- &gEventObjectGraphicsInfo_Kyogre3,
- &gEventObjectGraphicsInfo_Groudon3,
- &gEventObjectGraphicsInfo_MysteryEventDeliveryman,
- &gEventObjectGraphicsInfo_Statue,
- &gEventObjectGraphicsInfo_Kirlia,
- &gEventObjectGraphicsInfo_Dusclops,
- &gEventObjectGraphicsInfo_UnionRoomAttendant,
- &gEventObjectGraphicsInfo_Sudowoodo,
- &gEventObjectGraphicsInfo_Mew,
- &gEventObjectGraphicsInfo_Red,
- &gEventObjectGraphicsInfo_Leaf,
- &gEventObjectGraphicsInfo_Deoxys,
- &gEventObjectGraphicsInfo_BirthIslandStone,
- &gEventObjectGraphicsInfo_Brandon,
- &gEventObjectGraphicsInfo_RubySapphireBrendan,
- &gEventObjectGraphicsInfo_RubySapphireMay,
- &gEventObjectGraphicsInfo_Lugia,
- &gEventObjectGraphicsInfo_HoOh,
+ [EVENT_OBJ_GFX_BRENDAN_NORMAL] = &gEventObjectGraphicsInfo_BrendanNormal,
+ [EVENT_OBJ_GFX_BRENDAN_MACH_BIKE] = &gEventObjectGraphicsInfo_BrendanMachBike,
+ [EVENT_OBJ_GFX_BRENDAN_SURFING] = &gEventObjectGraphicsInfo_BrendanSurfing,
+ [EVENT_OBJ_GFX_BRENDAN_FIELD_MOVE] = &gEventObjectGraphicsInfo_BrendanFieldMove,
+ [EVENT_OBJ_GFX_QUINTY_PLUMP] = &gEventObjectGraphicsInfo_QuintyPlump,
+ [EVENT_OBJ_GFX_NINJA_BOY] = &gEventObjectGraphicsInfo_NinjaBoy,
+ [EVENT_OBJ_GFX_TWIN] = &gEventObjectGraphicsInfo_Twin,
+ [EVENT_OBJ_GFX_BOY_1] = &gEventObjectGraphicsInfo_Boy1,
+ [EVENT_OBJ_GFX_GIRL_1] = &gEventObjectGraphicsInfo_Girl1,
+ [EVENT_OBJ_GFX_BOY_2] = &gEventObjectGraphicsInfo_Boy2,
+ [EVENT_OBJ_GFX_GIRL_2] = &gEventObjectGraphicsInfo_Girl2,
+ [EVENT_OBJ_GFX_LITTLE_BOY] = &gEventObjectGraphicsInfo_LittleBoy,
+ [EVENT_OBJ_GFX_LITTLE_GIRL] = &gEventObjectGraphicsInfo_LittleGirl,
+ [EVENT_OBJ_GFX_BOY_3] = &gEventObjectGraphicsInfo_Boy3,
+ [EVENT_OBJ_GFX_GIRL_3] = &gEventObjectGraphicsInfo_Girl3,
+ [EVENT_OBJ_GFX_RICH_BOY] = &gEventObjectGraphicsInfo_RichBoy,
+ [EVENT_OBJ_GFX_WOMAN_1] = &gEventObjectGraphicsInfo_Woman1,
+ [EVENT_OBJ_GFX_FAT_MAN] = &gEventObjectGraphicsInfo_FatMan,
+ [EVENT_OBJ_GFX_POKEFAN_F] = &gEventObjectGraphicsInfo_PokefanF,
+ [EVENT_OBJ_GFX_MAN_1] = &gEventObjectGraphicsInfo_Man1,
+ [EVENT_OBJ_GFX_WOMAN_2] = &gEventObjectGraphicsInfo_Woman2,
+ [EVENT_OBJ_GFX_EXPERT_M] = &gEventObjectGraphicsInfo_ExpertM,
+ [EVENT_OBJ_GFX_EXPERT_F] = &gEventObjectGraphicsInfo_ExpertF,
+ [EVENT_OBJ_GFX_MAN_2] = &gEventObjectGraphicsInfo_Man2,
+ [EVENT_OBJ_GFX_WOMAN_3] = &gEventObjectGraphicsInfo_Woman3,
+ [EVENT_OBJ_GFX_POKEFAN_M] = &gEventObjectGraphicsInfo_PokefanM,
+ [EVENT_OBJ_GFX_WOMAN_4] = &gEventObjectGraphicsInfo_Woman4,
+ [EVENT_OBJ_GFX_COOK] = &gEventObjectGraphicsInfo_Cook,
+ [EVENT_OBJ_GFX_LINK_RECEPTIONIST] = &gEventObjectGraphicsInfo_LinkReceptionist,
+ [EVENT_OBJ_GFX_OLD_MAN] = &gEventObjectGraphicsInfo_OldMan,
+ [EVENT_OBJ_GFX_OLD_WOMAN] = &gEventObjectGraphicsInfo_OldWoman,
+ [EVENT_OBJ_GFX_CAMPER] = &gEventObjectGraphicsInfo_Camper,
+ [EVENT_OBJ_GFX_PICNICKER] = &gEventObjectGraphicsInfo_Picnicker,
+ [EVENT_OBJ_GFX_MAN_3] = &gEventObjectGraphicsInfo_Man3,
+ [EVENT_OBJ_GFX_WOMAN_5] = &gEventObjectGraphicsInfo_Woman5,
+ [EVENT_OBJ_GFX_YOUNGSTER] = &gEventObjectGraphicsInfo_Youngster,
+ [EVENT_OBJ_GFX_BUG_CATCHER] = &gEventObjectGraphicsInfo_BugCatcher,
+ [EVENT_OBJ_GFX_PSYCHIC_M] = &gEventObjectGraphicsInfo_PsychicM,
+ [EVENT_OBJ_GFX_SCHOOL_KID_M] = &gEventObjectGraphicsInfo_SchoolKidM,
+ [EVENT_OBJ_GFX_MANIAC] = &gEventObjectGraphicsInfo_Maniac,
+ [EVENT_OBJ_GFX_HEX_MANIAC] = &gEventObjectGraphicsInfo_HexManiac,
+ [EVENT_OBJ_GFX_RAYQUAZA_1] = &gEventObjectGraphicsInfo_Rayquaza1,
+ [EVENT_OBJ_GFX_SWIMMER_M] = &gEventObjectGraphicsInfo_SwimmerM,
+ [EVENT_OBJ_GFX_SWIMMER_F] = &gEventObjectGraphicsInfo_SwimmerF,
+ [EVENT_OBJ_GFX_BLACK_BELT] = &gEventObjectGraphicsInfo_BlackBelt,
+ [EVENT_OBJ_GFX_BEAUTY] = &gEventObjectGraphicsInfo_Beauty,
+ [EVENT_OBJ_GFX_SCIENTIST_1] = &gEventObjectGraphicsInfo_Scientist1,
+ [EVENT_OBJ_GFX_LASS] = &gEventObjectGraphicsInfo_Lass,
+ [EVENT_OBJ_GFX_GENTLEMAN] = &gEventObjectGraphicsInfo_Gentleman,
+ [EVENT_OBJ_GFX_SAILOR] = &gEventObjectGraphicsInfo_Sailor,
+ [EVENT_OBJ_GFX_FISHERMAN] = &gEventObjectGraphicsInfo_Fisherman,
+ [EVENT_OBJ_GFX_RUNNING_TRIATHLETE_M] = &gEventObjectGraphicsInfo_RunningTriathleteM,
+ [EVENT_OBJ_GFX_RUNNING_TRIATHLETE_F] = &gEventObjectGraphicsInfo_RunningTriathleteF,
+ [EVENT_OBJ_GFX_TUBER_F] = &gEventObjectGraphicsInfo_TuberF,
+ [EVENT_OBJ_GFX_TUBER_M] = &gEventObjectGraphicsInfo_TuberM,
+ [EVENT_OBJ_GFX_HIKER] = &gEventObjectGraphicsInfo_Hiker,
+ [EVENT_OBJ_GFX_CYCLING_TRIATHLETE_M] = &gEventObjectGraphicsInfo_CyclingTriathleteM,
+ [EVENT_OBJ_GFX_CYCLING_TRIATHLETE_F] = &gEventObjectGraphicsInfo_CyclingTriathleteF,
+ [EVENT_OBJ_GFX_NURSE] = &gEventObjectGraphicsInfo_Nurse,
+ [EVENT_OBJ_GFX_ITEM_BALL] = &gEventObjectGraphicsInfo_ItemBall,
+ [EVENT_OBJ_GFX_BERRY_TREE] = &gEventObjectGraphicsInfo_BerryTree,
+ [EVENT_OBJ_GFX_BERRY_TREE_EARLY_STAGES] = &gEventObjectGraphicsInfo_BerryTreeEarlyStages,
+ [EVENT_OBJ_GFX_BERRY_TREE_LATE_STAGES] = &gEventObjectGraphicsInfo_BerryTreeLateStages,
+ [EVENT_OBJ_GFX_BRENDAN_ACRO_BIKE] = &gEventObjectGraphicsInfo_BrendanAcroBike,
+ [EVENT_OBJ_GFX_PROF_BIRCH] = &gEventObjectGraphicsInfo_ProfBirch,
+ [EVENT_OBJ_GFX_MAN_4] = &gEventObjectGraphicsInfo_Man4,
+ [EVENT_OBJ_GFX_MAN_5] = &gEventObjectGraphicsInfo_Man5,
+ [EVENT_OBJ_GFX_REPORTER_M] = &gEventObjectGraphicsInfo_ReporterM,
+ [EVENT_OBJ_GFX_REPORTER_F] = &gEventObjectGraphicsInfo_ReporterF,
+ [EVENT_OBJ_GFX_BARD] = &gEventObjectGraphicsInfo_Bard,
+ [EVENT_OBJ_GFX_ANABEL] = &gEventObjectGraphicsInfo_Anabel,
+ [EVENT_OBJ_GFX_TUCKER] = &gEventObjectGraphicsInfo_Tucker,
+ [EVENT_OBJ_GFX_GRETA] = &gEventObjectGraphicsInfo_Greta,
+ [EVENT_OBJ_GFX_SPENSER] = &gEventObjectGraphicsInfo_Spenser,
+ [EVENT_OBJ_GFX_NOLAND] = &gEventObjectGraphicsInfo_Noland,
+ [EVENT_OBJ_GFX_LUCY] = &gEventObjectGraphicsInfo_Lucy,
+ [EVENT_OBJ_GFX_UNUSED_NATU_DOLL] = &gEventObjectGraphicsInfo_UnusedNatuDoll,
+ [EVENT_OBJ_GFX_UNUSED_MAGNEMITE_DOLL] = &gEventObjectGraphicsInfo_UnusedMagnemiteDoll,
+ [EVENT_OBJ_GFX_UNUSED_SQUIRTLE_DOLL] = &gEventObjectGraphicsInfo_UnusedSquirtleDoll,
+ [EVENT_OBJ_GFX_UNUSED_WOOPER_DOLL] = &gEventObjectGraphicsInfo_UnusedWooperDoll,
+ [EVENT_OBJ_GFX_UNUSED_PIKACHU_DOLL] = &gEventObjectGraphicsInfo_UnusedPikachuDoll,
+ [EVENT_OBJ_GFX_UNUSED_PORYGON2_DOLL] = &gEventObjectGraphicsInfo_UnusedPorygon2Doll,
+ [EVENT_OBJ_GFX_CUTTABLE_TREE] = &gEventObjectGraphicsInfo_CuttableTree,
+ [EVENT_OBJ_GFX_MART_EMPLOYEE] = &gEventObjectGraphicsInfo_MartEmployee,
+ [EVENT_OBJ_GFX_ROOFTOP_SALE_WOMAN] = &gEventObjectGraphicsInfo_RooftopSaleWoman,
+ [EVENT_OBJ_GFX_TEALA] = &gEventObjectGraphicsInfo_Teala,
+ [EVENT_OBJ_GFX_BREAKABLE_ROCK] = &gEventObjectGraphicsInfo_BreakableRock,
+ [EVENT_OBJ_GFX_PUSHABLE_BOULDER] = &gEventObjectGraphicsInfo_PushableBoulder,
+ [EVENT_OBJ_GFX_MR_BRINEYS_BOAT] = &gEventObjectGraphicsInfo_MrBrineysBoat,
+ [EVENT_OBJ_GFX_MAY_NORMAL] = &gEventObjectGraphicsInfo_MayNormal,
+ [EVENT_OBJ_GFX_MAY_MACH_BIKE] = &gEventObjectGraphicsInfo_MayMachBike,
+ [EVENT_OBJ_GFX_MAY_ACRO_BIKE] = &gEventObjectGraphicsInfo_MayAcroBike,
+ [EVENT_OBJ_GFX_MAY_SURFING] = &gEventObjectGraphicsInfo_MaySurfing,
+ [EVENT_OBJ_GFX_MAY_FIELD_MOVE] = &gEventObjectGraphicsInfo_MayFieldMove,
+ [EVENT_OBJ_GFX_TRUCK] = &gEventObjectGraphicsInfo_Truck,
+ [EVENT_OBJ_GFX_VIGOROTH_CARRYING_BOX] = &gEventObjectGraphicsInfo_VigorothCarryingBox,
+ [EVENT_OBJ_GFX_VIGOROTH_FACING_AWAY] = &gEventObjectGraphicsInfo_VigorothFacingAway,
+ [EVENT_OBJ_GFX_BIRCHS_BAG] = &gEventObjectGraphicsInfo_BirchsBag,
+ [EVENT_OBJ_GFX_ZIGZAGOON_1] = &gEventObjectGraphicsInfo_EnemyZigzagoon,
+ [EVENT_OBJ_GFX_ARTIST] = &gEventObjectGraphicsInfo_Artist,
+ [EVENT_OBJ_GFX_RIVAL_BRENDAN_NORMAL] = &gEventObjectGraphicsInfo_RivalBrendanNormal,
+ [EVENT_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE] = &gEventObjectGraphicsInfo_RivalBrendanMachBike,
+ [EVENT_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE] = &gEventObjectGraphicsInfo_RivalBrendanAcroBike,
+ [EVENT_OBJ_GFX_RIVAL_BRENDAN_SURFING] = &gEventObjectGraphicsInfo_RivalBrendanSurfing,
+ [EVENT_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE] = &gEventObjectGraphicsInfo_RivalBrendanFieldMove,
+ [EVENT_OBJ_GFX_RIVAL_MAY_NORMAL] = &gEventObjectGraphicsInfo_RivalMayNormal,
+ [EVENT_OBJ_GFX_RIVAL_MAY_MACH_BIKE] = &gEventObjectGraphicsInfo_RivalMayMachBike,
+ [EVENT_OBJ_GFX_RIVAL_MAY_ACRO_BIKE] = &gEventObjectGraphicsInfo_RivalMayAcroBike,
+ [EVENT_OBJ_GFX_RIVAL_MAY_SURFING] = &gEventObjectGraphicsInfo_RivalMaySurfing,
+ [EVENT_OBJ_GFX_RIVAL_MAY_FIELD_MOVE] = &gEventObjectGraphicsInfo_RivalMayFieldMove,
+ [EVENT_OBJ_GFX_CAMERAMAN] = &gEventObjectGraphicsInfo_Cameraman,
+ [EVENT_OBJ_GFX_BRENDAN_UNDERWATER] = &gEventObjectGraphicsInfo_BrendanUnderwater,
+ [EVENT_OBJ_GFX_MAY_UNDERWATER] = &gEventObjectGraphicsInfo_MayUnderwater,
+ [EVENT_OBJ_GFX_MOVING_BOX] = &gEventObjectGraphicsInfo_MovingBox,
+ [EVENT_OBJ_GFX_CABLE_CAR] = &gEventObjectGraphicsInfo_CableCar,
+ [EVENT_OBJ_GFX_SCIENTIST_2] = &gEventObjectGraphicsInfo_Scientist2,
+ [EVENT_OBJ_GFX_DEVON_EMPLOYEE] = &gEventObjectGraphicsInfo_DevonEmployee,
+ [EVENT_OBJ_GFX_AQUA_MEMBER_M] = &gEventObjectGraphicsInfo_AquaMemberM,
+ [EVENT_OBJ_GFX_AQUA_MEMBER_F] = &gEventObjectGraphicsInfo_AquaMemberF,
+ [EVENT_OBJ_GFX_MAGMA_MEMBER_M] = &gEventObjectGraphicsInfo_MagmaMemberM,
+ [EVENT_OBJ_GFX_MAGMA_MEMBER_F] = &gEventObjectGraphicsInfo_MagmaMemberF,
+ [EVENT_OBJ_GFX_SIDNEY] = &gEventObjectGraphicsInfo_Sidney,
+ [EVENT_OBJ_GFX_PHOEBE] = &gEventObjectGraphicsInfo_Phoebe,
+ [EVENT_OBJ_GFX_GLACIA] = &gEventObjectGraphicsInfo_Glacia,
+ [EVENT_OBJ_GFX_DRAKE] = &gEventObjectGraphicsInfo_Drake,
+ [EVENT_OBJ_GFX_ROXANNE] = &gEventObjectGraphicsInfo_Roxanne,
+ [EVENT_OBJ_GFX_BRAWLY] = &gEventObjectGraphicsInfo_Brawly,
+ [EVENT_OBJ_GFX_WATTSON] = &gEventObjectGraphicsInfo_Wattson,
+ [EVENT_OBJ_GFX_FLANNERY] = &gEventObjectGraphicsInfo_Flannery,
+ [EVENT_OBJ_GFX_NORMAN] = &gEventObjectGraphicsInfo_Norman,
+ [EVENT_OBJ_GFX_WINONA] = &gEventObjectGraphicsInfo_Winona,
+ [EVENT_OBJ_GFX_LIZA] = &gEventObjectGraphicsInfo_Liza,
+ [EVENT_OBJ_GFX_TATE] = &gEventObjectGraphicsInfo_Tate,
+ [EVENT_OBJ_GFX_WALLACE] = &gEventObjectGraphicsInfo_Wallace,
+ [EVENT_OBJ_GFX_STEVEN] = &gEventObjectGraphicsInfo_Steven,
+ [EVENT_OBJ_GFX_WALLY] = &gEventObjectGraphicsInfo_Wally,
+ [EVENT_OBJ_GFX_LITTLE_BOY_3] = &gEventObjectGraphicsInfo_RubySapphireLittleBoy,
+ [EVENT_OBJ_GFX_BRENDAN_FISHING] = &gEventObjectGraphicsInfo_BrendanFishing,
+ [EVENT_OBJ_GFX_MAY_FISHING] = &gEventObjectGraphicsInfo_MayFishing,
+ [EVENT_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN] = &gEventObjectGraphicsInfo_HotSpringsOldWoman,
+ [EVENT_OBJ_GFX_SS_TIDAL] = &gEventObjectGraphicsInfo_SSTidal,
+ [EVENT_OBJ_GFX_SUBMARINE_SHADOW] = &gEventObjectGraphicsInfo_SubmarineShadow,
+ [EVENT_OBJ_GFX_PICHU_DOLL] = &gEventObjectGraphicsInfo_PichuDoll,
+ [EVENT_OBJ_GFX_PIKACHU_DOLL] = &gEventObjectGraphicsInfo_PikachuDoll,
+ [EVENT_OBJ_GFX_MARILL_DOLL] = &gEventObjectGraphicsInfo_MarillDoll,
+ [EVENT_OBJ_GFX_TOGEPI_DOLL] = &gEventObjectGraphicsInfo_TogepiDoll,
+ [EVENT_OBJ_GFX_CYNDAQUIL_DOLL] = &gEventObjectGraphicsInfo_CyndaquilDoll,
+ [EVENT_OBJ_GFX_CHIKORITA_DOLL] = &gEventObjectGraphicsInfo_ChikoritaDoll,
+ [EVENT_OBJ_GFX_TOTODILE_DOLL] = &gEventObjectGraphicsInfo_TotodileDoll,
+ [EVENT_OBJ_GFX_JIGGLYPUFF_DOLL] = &gEventObjectGraphicsInfo_JigglypuffDoll,
+ [EVENT_OBJ_GFX_MEOWTH_DOLL] = &gEventObjectGraphicsInfo_MeowthDoll,
+ [EVENT_OBJ_GFX_CLEFAIRY_DOLL] = &gEventObjectGraphicsInfo_ClefairyDoll,
+ [EVENT_OBJ_GFX_DITTO_DOLL] = &gEventObjectGraphicsInfo_DittoDoll,
+ [EVENT_OBJ_GFX_SMOOCHUM_DOLL] = &gEventObjectGraphicsInfo_SmoochumDoll,
+ [EVENT_OBJ_GFX_TREECKO_DOLL] = &gEventObjectGraphicsInfo_TreeckoDoll,
+ [EVENT_OBJ_GFX_TORCHIC_DOLL] = &gEventObjectGraphicsInfo_TorchicDoll,
+ [EVENT_OBJ_GFX_MUDKIP_DOLL] = &gEventObjectGraphicsInfo_MudkipDoll,
+ [EVENT_OBJ_GFX_DUSKULL_DOLL] = &gEventObjectGraphicsInfo_DuskullDoll,
+ [EVENT_OBJ_GFX_WYNAUT_DOLL] = &gEventObjectGraphicsInfo_WynautDoll,
+ [EVENT_OBJ_GFX_BALTOY_DOLL] = &gEventObjectGraphicsInfo_BaltoyDoll,
+ [EVENT_OBJ_GFX_KECLEON_DOLL] = &gEventObjectGraphicsInfo_KecleonDoll,
+ [EVENT_OBJ_GFX_AZURILL_DOLL] = &gEventObjectGraphicsInfo_AzurillDoll,
+ [EVENT_OBJ_GFX_SKITTY_DOLL] = &gEventObjectGraphicsInfo_SkittyDoll,
+ [EVENT_OBJ_GFX_SWABLU_DOLL] = &gEventObjectGraphicsInfo_SwabluDoll,
+ [EVENT_OBJ_GFX_GULPIN_DOLL] = &gEventObjectGraphicsInfo_GulpinDoll,
+ [EVENT_OBJ_GFX_LOTAD_DOLL] = &gEventObjectGraphicsInfo_LotadDoll,
+ [EVENT_OBJ_GFX_SEEDOT_DOLL] = &gEventObjectGraphicsInfo_SeedotDoll,
+ [EVENT_OBJ_GFX_PIKA_CUSHION] = &gEventObjectGraphicsInfo_PikaCushion,
+ [EVENT_OBJ_GFX_ROUND_CUSHION] = &gEventObjectGraphicsInfo_RoundCushion,
+ [EVENT_OBJ_GFX_KISS_CUSHION] = &gEventObjectGraphicsInfo_KissCushion,
+ [EVENT_OBJ_GFX_ZIGZAG_CUSHION] = &gEventObjectGraphicsInfo_ZigzagCushion,
+ [EVENT_OBJ_GFX_SPIN_CUSHION] = &gEventObjectGraphicsInfo_SpinCushion,
+ [EVENT_OBJ_GFX_DIAMOND_CUSHION] = &gEventObjectGraphicsInfo_DiamondCushion,
+ [EVENT_OBJ_GFX_BALL_CUSHION] = &gEventObjectGraphicsInfo_BallCushion,
+ [EVENT_OBJ_GFX_GRASS_CUSHION] = &gEventObjectGraphicsInfo_GrassCushion,
+ [EVENT_OBJ_GFX_FIRE_CUSHION] = &gEventObjectGraphicsInfo_FireCushion,
+ [EVENT_OBJ_GFX_WATER_CUSHION] = &gEventObjectGraphicsInfo_WaterCushion,
+ [EVENT_OBJ_GFX_BIG_SNORLAX_DOLL] = &gEventObjectGraphicsInfo_BigSnorlaxDoll,
+ [EVENT_OBJ_GFX_BIG_RHYDON_DOLL] = &gEventObjectGraphicsInfo_BigRhydonDoll,
+ [EVENT_OBJ_GFX_BIG_LAPRAS_DOLL] = &gEventObjectGraphicsInfo_BigLaprasDoll,
+ [EVENT_OBJ_GFX_BIG_VENUSAUR_DOLL] = &gEventObjectGraphicsInfo_BigVenusaurDoll,
+ [EVENT_OBJ_GFX_BIG_CHARIZARD_DOLL] = &gEventObjectGraphicsInfo_BigCharizardDoll,
+ [EVENT_OBJ_GFX_BIG_BLASTOISE_DOLL] = &gEventObjectGraphicsInfo_BigBlastoiseDoll,
+ [EVENT_OBJ_GFX_BIG_WAILMER_DOLL] = &gEventObjectGraphicsInfo_BigWailmerDoll,
+ [EVENT_OBJ_GFX_BIG_REGIROCK_DOLL] = &gEventObjectGraphicsInfo_BigRegirockDoll,
+ [EVENT_OBJ_GFX_BIG_REGICE_DOLL] = &gEventObjectGraphicsInfo_BigRegiceDoll,
+ [EVENT_OBJ_GFX_BIG_REGISTEEL_DOLL] = &gEventObjectGraphicsInfo_BigRegisteelDoll,
+ [EVENT_OBJ_GFX_LATIAS] = &gEventObjectGraphicsInfo_Latias,
+ [EVENT_OBJ_GFX_LATIOS] = &gEventObjectGraphicsInfo_Latios,
+ [EVENT_OBJ_GFX_GAMEBOY_KID] = &gEventObjectGraphicsInfo_GameboyKid,
+ [EVENT_OBJ_GFX_CONTEST_JUDGE] = &gEventObjectGraphicsInfo_ContestJudge,
+ [EVENT_OBJ_GFX_BRENDAN_WATERING] = &gEventObjectGraphicsInfo_BrendanWatering,
+ [EVENT_OBJ_GFX_MAY_WATERING] = &gEventObjectGraphicsInfo_MayWatering,
+ [EVENT_OBJ_GFX_BRENDAN_DECORATING] = &gEventObjectGraphicsInfo_BrendanDecorating,
+ [EVENT_OBJ_GFX_MAY_DECORATING] = &gEventObjectGraphicsInfo_MayDecorating,
+ [EVENT_OBJ_GFX_ARCHIE] = &gEventObjectGraphicsInfo_Archie,
+ [EVENT_OBJ_GFX_MAXIE] = &gEventObjectGraphicsInfo_Maxie,
+ [EVENT_OBJ_GFX_KYOGRE_1] = &gEventObjectGraphicsInfo_Kyogre1,
+ [EVENT_OBJ_GFX_GROUDON_1] = &gEventObjectGraphicsInfo_Groudon1,
+ [EVENT_OBJ_GFX_FOSSIL] = &gEventObjectGraphicsInfo_Fossil,
+ [EVENT_OBJ_GFX_REGIROCK] = &gEventObjectGraphicsInfo_Regirock,
+ [EVENT_OBJ_GFX_REGICE] = &gEventObjectGraphicsInfo_Regice,
+ [EVENT_OBJ_GFX_REGISTEEL] = &gEventObjectGraphicsInfo_Registeel,
+ [EVENT_OBJ_GFX_SKITTY] = &gEventObjectGraphicsInfo_Skitty,
+ [EVENT_OBJ_GFX_KECLEON_1] = &gEventObjectGraphicsInfo_Kecleon1,
+ [EVENT_OBJ_GFX_KYOGRE_2] = &gEventObjectGraphicsInfo_Kyogre2,
+ [EVENT_OBJ_GFX_GROUDON_2] = &gEventObjectGraphicsInfo_Groudon2,
+ [EVENT_OBJ_GFX_RAYQUAZA_2] = &gEventObjectGraphicsInfo_Rayquaza2,
+ [EVENT_OBJ_GFX_ZIGZAGOON_2] = &gEventObjectGraphicsInfo_Zigzagoon,
+ [EVENT_OBJ_GFX_PIKACHU] = &gEventObjectGraphicsInfo_Pikachu,
+ [EVENT_OBJ_GFX_AZUMARILL] = &gEventObjectGraphicsInfo_Azumarill,
+ [EVENT_OBJ_GFX_WINGULL] = &gEventObjectGraphicsInfo_Wingull,
+ [EVENT_OBJ_GFX_KECLEON_2] = &gEventObjectGraphicsInfo_Kecleon2,
+ [EVENT_OBJ_GFX_TUBER_M_SWIMMING] = &gEventObjectGraphicsInfo_TuberMSwimming,
+ [EVENT_OBJ_GFX_AZURILL] = &gEventObjectGraphicsInfo_Azurill,
+ [EVENT_OBJ_GFX_MOM] = &gEventObjectGraphicsInfo_Mom,
+ [EVENT_OBJ_GFX_LINK_BRENDAN] = &gEventObjectGraphicsInfo_LinkBrendan,
+ [EVENT_OBJ_GFX_LINK_MAY] = &gEventObjectGraphicsInfo_LinkMay,
+ [EVENT_OBJ_GFX_JUAN] = &gEventObjectGraphicsInfo_Juan,
+ [EVENT_OBJ_GFX_SCOTT] = &gEventObjectGraphicsInfo_Scott,
+ [EVENT_OBJ_GFX_POOCHYENA] = &gEventObjectGraphicsInfo_Poochyena,
+ [EVENT_OBJ_GFX_KYOGRE_3] = &gEventObjectGraphicsInfo_Kyogre3,
+ [EVENT_OBJ_GFX_GROUDON_3] = &gEventObjectGraphicsInfo_Groudon3,
+ [EVENT_OBJ_GFX_MYSTERY_GIFT_MAN] = &gEventObjectGraphicsInfo_MysteryEventDeliveryman,
+ [EVENT_OBJ_GFX_TRICK_HOUSE_STATUE] = &gEventObjectGraphicsInfo_Statue,
+ [EVENT_OBJ_GFX_KIRLIA] = &gEventObjectGraphicsInfo_Kirlia,
+ [EVENT_OBJ_GFX_DUSCLOPS] = &gEventObjectGraphicsInfo_Dusclops,
+ [EVENT_OBJ_GFX_UNION_ROOM_NURSE] = &gEventObjectGraphicsInfo_UnionRoomAttendant,
+ [EVENT_OBJ_GFX_SUDOWOODO] = &gEventObjectGraphicsInfo_Sudowoodo,
+ [EVENT_OBJ_GFX_MEW] = &gEventObjectGraphicsInfo_Mew,
+ [EVENT_OBJ_GFX_RED] = &gEventObjectGraphicsInfo_Red,
+ [EVENT_OBJ_GFX_LEAF] = &gEventObjectGraphicsInfo_Leaf,
+ [EVENT_OBJ_GFX_DEOXYS] = &gEventObjectGraphicsInfo_Deoxys,
+ [EVENT_OBJ_GFX_DEOXYS_TRIANGLE] = &gEventObjectGraphicsInfo_BirthIslandStone,
+ [EVENT_OBJ_GFX_BRANDON] = &gEventObjectGraphicsInfo_Brandon,
+ [EVENT_OBJ_GFX_LINK_RS_BRENDAN] = &gEventObjectGraphicsInfo_RubySapphireBrendan,
+ [EVENT_OBJ_GFX_LINK_RS_MAY] = &gEventObjectGraphicsInfo_RubySapphireMay,
+ [EVENT_OBJ_GFX_LUGIA] = &gEventObjectGraphicsInfo_Lugia,
+ [EVENT_OBJ_GFX_HOOH] = &gEventObjectGraphicsInfo_HoOh,
};
const struct EventObjectGraphicsInfo *const gMauvilleOldManGraphicsInfoPointers[] = {
diff --git a/src/data/lilycove_lady.h b/src/data/lilycove_lady.h
new file mode 100644
index 000000000..f60e527a5
--- /dev/null
+++ b/src/data/lilycove_lady.h
@@ -0,0 +1,470 @@
+#include "constants/easy_chat.h"
+#include "constants/event_objects.h"
+#include "constants/items.h"
+#include "constants/species.h"
+#include "constants/moves.h"
+
+static const u16 sContestLadyMonGfxId[] =
+{
+ EVENT_OBJ_GFX_ZIGZAGOON_1,
+ EVENT_OBJ_GFX_SKITTY,
+ EVENT_OBJ_GFX_POOCHYENA,
+ EVENT_OBJ_GFX_KECLEON_1,
+ EVENT_OBJ_GFX_PIKACHU
+};
+
+static const u16 sLilycoveLadyGfxId[] =
+{
+ EVENT_OBJ_GFX_WOMAN_4,
+ EVENT_OBJ_GFX_WOMAN_2,
+ EVENT_OBJ_GFX_GIRL_2
+};
+
+// Quiz Lady data
+static const u16 sQuizLadyQuestion1[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_STORES,
+ EC_WORD_INFORMATION,
+ EC_WORD_ON,
+ EC_WORD_POKEMON,
+ EC_WORD_QUES,
+ EC_WORD_CAMERA,
+ EC_WORD_POKEDEX,
+ EC_WORD_POKENAV
+};
+
+static const u16 sQuizLadyQuestion2[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_ISN_T,
+ EC_WORD_A,
+ EC_WORD_GAME,
+ EC_WORD_VERSION,
+ EC_WORD_QUES,
+ EC_WORD_RUBY,
+ EC_WORD_SAPPHIRE,
+ EC_WORD_DARK
+};
+
+static const u16 sQuizLadyQuestion3[] =
+{
+ EC_WORD_HOW,
+ EC_WORD_DO,
+ EC_WORD_POKEMON,
+ EC_WORD_EVOLVE,
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_LEVEL,
+ EC_WORD_INSOMNIA,
+ EC_WORD_CUTE_CHARM
+};
+
+static const u16 sQuizLadyQuestion4[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_IS,
+ EC_WORD_THE,
+ EC_WORD_PRETTY,
+ EC_WORD_ITEM,
+ EC_WORD_QUES,
+ EC_WORD_COLD,
+ EC_WORD_FLOWERS,
+ EC_WORD_MACHINE
+};
+
+static const u16 sQuizLadyQuestion5[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_ITEM,
+ EC_WORD_DO,
+ EC_WORD_YOU,
+ EC_WORD_BREAK,
+ EC_WORD_QUES,
+ EC_WORD_EGG,
+ EC_WORD_MAIL,
+ EC_WORD_PHONE
+};
+
+static const u16 sQuizLadyQuestion6[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_WILL,
+ EC_WORD_STOP,
+ EC_MOVE2(CONFUSION),
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_ILLUMINATE,
+ EC_WORD_OWN_TEMPO,
+ EC_WORD_SWIFT_SWIM
+};
+
+static const u16 sQuizLadyQuestion7[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_OF,
+ EC_WORD_THESE,
+ EC_WORD_IS,
+ EC_WORD_MUSIC,
+ EC_WORD_QUES,
+ EC_WORD_FLYING,
+ EC_WORD_STEEL,
+ EC_WORD_ROCK
+};
+
+static const u16 sQuizLadyQuestion8[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_WILL,
+ EC_MOVE2(BLOCK),
+ EC_WORD_ESCAPE,
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_RUN_AWAY,
+ EC_WORD_SHADOW_TAG,
+ EC_WORD_WONDER_GUARD
+};
+
+static const u16 sQuizLadyQuestion9[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_WILL,
+ EC_WORD_STOP,
+ EC_WORD_POISON,
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_GUTS,
+ EC_WORD_IMMUNITY,
+ EC_WORD_SHED_SKIN
+};
+
+static const u16 sQuizLadyQuestion10[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_GOES,
+ EC_WORD_WITH,
+ EC_WORD_CENTER,
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_POKEDEX,
+ EC_WORD_POKEMON,
+ EC_WORD_POKENAV
+};
+
+static const u16 sQuizLadyQuestion11[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_STORES,
+ EC_WORD_YOUR,
+ EC_WORD_POKEMON,
+ EC_WORD_QUES,
+ 0xFFFF,
+ EC_WORD_PC,
+ EC_WORD_DEPT_STORE,
+ EC_WORD_TELEVISION
+};
+
+static const u16 sQuizLadyQuestion12[] =
+{
+ EC_WORD_WHICH,
+ EC_WORD_MACHINE,
+ EC_WORD_GIVES,
+ EC_WORD_YOU,
+ EC_WORD_INFORMATION,
+ EC_WORD_QUES,
+ EC_WORD_BIKE,
+ EC_WORD_LOCOMOTIVE,
+ EC_WORD_TELEVISION
+};
+
+static const u16 sQuizLadyQuestion13[] =
+{
+ EC_WORD_A,
+ EC_WORD_POKEMON,
+ EC_WORD_WAS,
+ EC_WORD_ONCE,
+ EC_WORD_THIS,
+ EC_WORD_QUES,
+ EC_WORD_PHONE,
+ EC_WORD_PLUSH_DOLL,
+ EC_WORD_LETTER
+};
+
+static const u16 sQuizLadyQuestion14[] =
+{
+ EC_WORD_STEEL,
+ EC_WORD_IS,
+ EC_WORD_STRONG,
+ EC_WORD_VERSUS,
+ EC_WORD_WHICH,
+ EC_WORD_QUES,
+ EC_WORD_ICE,
+ EC_WORD_GROUND,
+ 0xFFFF
+};
+
+static const u16 sQuizLadyQuestion15[] =
+{
+ EC_WORD_DARK,
+ EC_WORD_IS,
+ EC_WORD_WEAK,
+ EC_WORD_VERSUS,
+ EC_WORD_WHICH,
+ EC_WORD_QUES,
+ EC_WORD_PSYCHIC,
+ EC_WORD_FIGHTING,
+ 0xFFFF
+};
+
+static const u16 sQuizLadyQuestion16[] =
+{
+ EC_WORD_GHOST,
+ EC_WORD_IS,
+ EC_WORD_WEAK,
+ EC_WORD_VERSUS,
+ EC_WORD_WHICH,
+ EC_WORD_QUES,
+ EC_WORD_NORMAL,
+ EC_WORD_DARK,
+ 0xFFFF
+};
+
+static const u16 *const sQuizLadyQuizQuestions[] =
+{
+ sQuizLadyQuestion1,
+ sQuizLadyQuestion2,
+ sQuizLadyQuestion3,
+ sQuizLadyQuestion4,
+ sQuizLadyQuestion5,
+ sQuizLadyQuestion6,
+ sQuizLadyQuestion7,
+ sQuizLadyQuestion8,
+ sQuizLadyQuestion9,
+ sQuizLadyQuestion10,
+ sQuizLadyQuestion11,
+ sQuizLadyQuestion12,
+ sQuizLadyQuestion13,
+ sQuizLadyQuestion14,
+ sQuizLadyQuestion15,
+ sQuizLadyQuestion16
+};
+
+static const u16 sQuizLadyQuizAnswers[] =
+{
+ EC_WORD_POKEDEX,
+ EC_WORD_DARK,
+ EC_WORD_LEVEL,
+ EC_WORD_FLOWERS,
+ EC_WORD_EGG,
+ EC_WORD_OWN_TEMPO,
+ EC_WORD_ROCK,
+ EC_WORD_SHADOW_TAG,
+ EC_WORD_IMMUNITY,
+ EC_WORD_POKEMON,
+ EC_WORD_PC,
+ EC_WORD_TELEVISION,
+ EC_WORD_PLUSH_DOLL,
+ EC_WORD_ICE,
+ EC_WORD_FIGHTING,
+ EC_WORD_DARK
+};
+
+static const u16 sQuizLadyPrizes[] =
+{
+ ITEM_GLITTER_MAIL,
+ ITEM_BEAD_MAIL,
+ ITEM_TROPIC_MAIL,
+ ITEM_MAX_ETHER,
+ ITEM_MAX_ETHER,
+ ITEM_MAX_ETHER,
+ ITEM_WATMEL_BERRY,
+ ITEM_BELUE_BERRY,
+ ITEM_DURIN_BERRY,
+ ITEM_LUXURY_BALL,
+ ITEM_TM15_HYPER_BEAM,
+ ITEM_BIG_PEARL,
+ ITEM_STAR_PIECE,
+ ITEM_RARE_CANDY,
+ ITEM_RARE_CANDY,
+ ITEM_PREMIER_BALL
+};
+
+// Favor Lady data
+static const u8 *const sFavorLadyRequests[] =
+{
+ gText_FavorLady_Slippery,
+ gText_FavorLady_Roundish,
+ gText_FavorLady_Whamish,
+ gText_FavorLady_Shiny,
+ gText_FavorLady_Sticky,
+ gText_FavorLady_Pointy
+};
+
+static const u16 sFavorLadyAcceptedItems_Slippery[] =
+{
+ ITEM_REPEL,
+ ITEM_SUPER_REPEL,
+ ITEM_MAX_REPEL,
+ ITEM_ANTIDOTE,
+ ITEM_PARALYZE_HEAL,
+ ITEM_BURN_HEAL,
+ ITEM_BELUE_BERRY,
+ ITEM_AWAKENING,
+ ITEM_ICE_HEAL,
+ ITEM_REVIVE,
+ ITEM_MAX_REVIVE,
+ ITEM_ENERGY_POWDER,
+ ITEM_NONE
+};
+
+static const u16 sFavorLadyAcceptedItems_Roundish[] =
+{
+ ITEM_FLUFFY_TAIL,
+ ITEM_PEARL,
+ ITEM_BIG_PEARL,
+ ITEM_HARD_STONE,
+ ITEM_SMOKE_BALL,
+ ITEM_SHOAL_SHELL,
+ ITEM_TINY_MUSHROOM,
+ ITEM_BIG_MUSHROOM,
+ ITEM_PECHA_BERRY,
+ ITEM_ASPEAR_BERRY,
+ ITEM_ORAN_BERRY,
+ ITEM_GREPA_BERRY,
+ ITEM_MAGOST_BERRY,
+ ITEM_WATMEL_BERRY,
+ ITEM_POKE_BALL,
+ ITEM_ULTRA_BALL,
+ ITEM_NONE
+};
+
+static const u16 sFavorLadyAcceptedItems_Whamish[] =
+{
+ ITEM_REVIVAL_HERB,
+ ITEM_POTION,
+ ITEM_FRESH_WATER,
+ ITEM_SODA_POP,
+ ITEM_LEMONADE,
+ ITEM_HARD_STONE,
+ ITEM_LIGHT_BALL,
+ ITEM_LAVA_COOKIE,
+ ITEM_CHESTO_BERRY,
+ ITEM_NANAB_BERRY,
+ ITEM_WEPEAR_BERRY,
+ ITEM_KELPSY_BERRY,
+ ITEM_NOMEL_BERRY,
+ ITEM_DURIN_BERRY,
+ ITEM_NONE
+};
+
+static const u16 sFavorLadyAcceptedItems_Shiny[] =
+{
+ ITEM_HEAL_POWDER,
+ ITEM_X_SPEED,
+ ITEM_X_ATTACK,
+ ITEM_X_DEFEND,
+ ITEM_BLUE_FLUTE,
+ ITEM_YELLOW_FLUTE,
+ ITEM_RED_FLUTE,
+ ITEM_BLACK_FLUTE,
+ ITEM_WHITE_FLUTE,
+ ITEM_NUGGET,
+ ITEM_SUN_STONE,
+ ITEM_STARDUST,
+ ITEM_STAR_PIECE,
+ ITEM_PEARL,
+ ITEM_BIG_PEARL,
+ ITEM_TWISTED_SPOON,
+ ITEM_SILVER_POWDER,
+ ITEM_BRIGHT_POWDER,
+ ITEM_LUXURY_BALL,
+ ITEM_PREMIER_BALL,
+ ITEM_NONE
+};
+
+static const u16 sFavorLadyAcceptedItems_Sticky[] =
+{
+ ITEM_ENERGY_ROOT,
+ ITEM_FULL_RESTORE,
+ ITEM_MAX_POTION,
+ ITEM_DIRE_HIT,
+ ITEM_X_ACCURACY,
+ ITEM_GUARD_SPEC,
+ ITEM_WATMEL_BERRY,
+ ITEM_LEFTOVERS,
+ ITEM_TINY_MUSHROOM,
+ ITEM_HEART_SCALE,
+ ITEM_NONE
+};
+
+static const u16 sFavorLadyAcceptedItems_Pointy[] =
+{
+ ITEM_QUICK_CLAW,
+ ITEM_POISON_BARB,
+ ITEM_SHARP_BEAK,
+ ITEM_DRAGON_FANG,
+ ITEM_TAMATO_BERRY,
+ ITEM_DURIN_BERRY,
+ ITEM_PETAYA_BERRY,
+ ITEM_SALAC_BERRY,
+ ITEM_STARDUST,
+ ITEM_STAR_PIECE,
+ ITEM_NONE
+};
+
+static const u16 *const sFavorLadyAcceptedItemLists[] =
+{
+ sFavorLadyAcceptedItems_Slippery,
+ sFavorLadyAcceptedItems_Roundish,
+ sFavorLadyAcceptedItems_Whamish,
+ sFavorLadyAcceptedItems_Shiny,
+ sFavorLadyAcceptedItems_Sticky,
+ sFavorLadyAcceptedItems_Pointy
+};
+
+static const u16 sFavorLadyPrizes[] =
+{
+ ITEM_LUXURY_BALL,
+ ITEM_NUGGET,
+ ITEM_PROTEIN,
+ ITEM_HEART_SCALE,
+ ITEM_RARE_CANDY,
+ ITEM_PP_MAX
+};
+
+
+static const u8 *const sContestLadyMonNames[] =
+{
+ gText_ContestLady_Handsome,
+ gText_ContestLady_Vinny,
+ gText_ContestLady_Moreme,
+ gText_ContestLady_Ironhard,
+ gText_ContestLady_Muscle
+};
+
+static const u8 *const sContestLadyCategoryNames[] =
+{
+ gText_ContestLady_Coolness,
+ gText_ContestLady_Beauty,
+ gText_ContestLady_Cuteness,
+ gText_ContestLady_Smartness,
+ gText_ContestLady_Toughness
+};
+
+static const u8 *const sContestNames[] =
+{
+ gText_CoolnessContest,
+ gText_BeautyContest,
+ gText_CutenessContest,
+ gText_SmartnessContest,
+ gText_ToughnessContest
+};
+
+static const u16 sContestLadyMonSpecies[] =
+{
+ SPECIES_ZIGZAGOON,
+ SPECIES_SKITTY,
+ SPECIES_POOCHYENA,
+ SPECIES_KECLEON,
+ SPECIES_PIKACHU
+};
diff --git a/src/data/region_map/city_map_entries.h b/src/data/region_map/city_map_entries.h
new file mode 100644
index 000000000..7b8361a7c
--- /dev/null
+++ b/src/data/region_map/city_map_entries.h
@@ -0,0 +1,113 @@
+const struct CityMapEntry gPokenavCityMaps[] =
+{
+ {
+ .mapSecId = 0,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Littleroot_0,
+ },
+ {
+ .mapSecId = 1,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Oldale_0,
+ },
+ {
+ .mapSecId = 2,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Dewford_0,
+ },
+ {
+ .mapSecId = 3,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Lavarige_0,
+ },
+ {
+ .mapSecId = 4,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Fallarbor_0,
+ },
+ {
+ .mapSecId = 5,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Verdanturf_0,
+ },
+ {
+ .mapSecId = 6,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Pacifidlog_0,
+ },
+ {
+ .mapSecId = 7,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Petalburg_0,
+ },
+ {
+ .mapSecId = 8,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Slateport_0,
+ },
+ {
+ .mapSecId = 8,
+ .index = 1,
+ .tilemap = gPokenavCityMap_Slateport_1,
+ },
+ {
+ .mapSecId = 9,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Mauville_0,
+ },
+ {
+ .mapSecId = 9,
+ .index = 1,
+ .tilemap = gPokenavCityMap_Mauville_1,
+ },
+ {
+ .mapSecId = 10,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Rustboro_0,
+ },
+ {
+ .mapSecId = 10,
+ .index = 1,
+ .tilemap = gPokenavCityMap_Rustboro_1,
+ },
+ {
+ .mapSecId = 11,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Fortree_0,
+ },
+ {
+ .mapSecId = 12,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Lilycove_0,
+ },
+ {
+ .mapSecId = 12,
+ .index = 1,
+ .tilemap = gPokenavCityMap_Lilycove_1,
+ },
+ {
+ .mapSecId = 13,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Mossdeep_0,
+ },
+ {
+ .mapSecId = 13,
+ .index = 1,
+ .tilemap = gPokenavCityMap_Mossdeep_1,
+ },
+ {
+ .mapSecId = 14,
+ .index = 0,
+ .tilemap = gPokenavCityMap_Sootopolis_0,
+ },
+ {
+ .mapSecId = 15,
+ .index = 0,
+ .tilemap = gPokenavCityMap_EverGrande_0,
+ },
+ {
+ .mapSecId = 15,
+ .index = 1,
+ .tilemap = gPokenavCityMap_EverGrande_1,
+ },
+};
diff --git a/src/data/region_map/city_map_tilemaps.h b/src/data/region_map/city_map_tilemaps.h
new file mode 100644
index 000000000..8a8a931f9
--- /dev/null
+++ b/src/data/region_map/city_map_tilemaps.h
@@ -0,0 +1,22 @@
+const u32 gPokenavCityMap_Lavarige_0[] = INCBIN_U32("graphics/pokenav/city_maps/lavaridge_0.bin.lz");
+const u32 gPokenavCityMap_Fallarbor_0[] = INCBIN_U32("graphics/pokenav/city_maps/fallarbor_0.bin.lz");
+const u32 gPokenavCityMap_Fortree_0[] = INCBIN_U32("graphics/pokenav/city_maps/fortree_0.bin.lz");
+const u32 gPokenavCityMap_Slateport_0[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_0.bin.lz");
+const u32 gPokenavCityMap_Slateport_1[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_1.bin.lz");
+const u32 gPokenavCityMap_Rustboro_0[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_0.bin.lz");
+const u32 gPokenavCityMap_Rustboro_1[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_1.bin.lz");
+const u32 gPokenavCityMap_Pacifidlog_0[] = INCBIN_U32("graphics/pokenav/city_maps/pacifidlog_0.bin.lz");
+const u32 gPokenavCityMap_Mauville_1[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_1.bin.lz");
+const u32 gPokenavCityMap_Mauville_0[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_0.bin.lz");
+const u32 gPokenavCityMap_Oldale_0[] = INCBIN_U32("graphics/pokenav/city_maps/oldale_0.bin.lz");
+const u32 gPokenavCityMap_Lilycove_1[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_1.bin.lz");
+const u32 gPokenavCityMap_Lilycove_0[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_0.bin.lz");
+const u32 gPokenavCityMap_Littleroot_0[] = INCBIN_U32("graphics/pokenav/city_maps/littleroot_0.bin.lz");
+const u32 gPokenavCityMap_Dewford_0[] = INCBIN_U32("graphics/pokenav/city_maps/dewford_0.bin.lz");
+const u32 gPokenavCityMap_Sootopolis_0[] = INCBIN_U32("graphics/pokenav/city_maps/sootopolis_0.bin.lz");
+const u32 gPokenavCityMap_EverGrande_0[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_0.bin.lz");
+const u32 gPokenavCityMap_EverGrande_1[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_1.bin.lz");
+const u32 gPokenavCityMap_Verdanturf_0[] = INCBIN_U32("graphics/pokenav/city_maps/verdanturf_0.bin.lz");
+const u32 gPokenavCityMap_Mossdeep_1[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_1.bin.lz");
+const u32 gPokenavCityMap_Mossdeep_0[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_0.bin.lz");
+const u32 gPokenavCityMap_Petalburg_0[] = INCBIN_U32("graphics/pokenav/city_maps/petalburg_0.bin.lz");
diff --git a/src/data/text/gift_ribbon_descriptions.h b/src/data/text/gift_ribbon_descriptions.h
new file mode 100644
index 000000000..ea108be18
--- /dev/null
+++ b/src/data/text/gift_ribbon_descriptions.h
@@ -0,0 +1,115 @@
+const u8 gGiftRibbonDescriptionPart1_2003RegionalTourney[] = _("2003 REGIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart2_Champion[] = _("CHAMPION RIBBON");
+const u8 gGiftRibbonDescriptionPart1_2003NationalTourney[] = _("2003 NATIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart1_2003GlobalCup[] = _("2003 GLOBAL CUP");
+const u8 gGiftRibbonDescriptionPart2_RunnerUp[] = _("Runner-up RIBBON");
+const u8 gGiftRibbonDescriptionPart2_Semifinalist[] = _("Semifinalist RIBBON");
+const u8 gGiftRibbonDescriptionPart1_2004RegionalTourney[] = _("2004 REGIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart1_2004NationalTourney[] = _("2004 NATIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart1_2004GlobalCup[] = _("2004 GLOBAL CUP");
+const u8 gGiftRibbonDescriptionPart1_2005RegionalTourney[] = _("2005 REGIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart1_2005NationalTourney[] = _("2005 NATIONAL TOURNEY");
+const u8 gGiftRibbonDescriptionPart1_2005GlobalCup[] = _("2005 GLOBAL CUP");
+const u8 gGiftRibbonDescriptionPart1_PokemonBattleCup[] = _("POKéMON BATTLE CUP");
+const u8 gGiftRibbonDescriptionPart2_Participation[] = _("Participation RIBBON");
+const u8 gGiftRibbonDescriptionPart1_PokemonLeague[] = _("POKéMON LEAGUE");
+const u8 gGiftRibbonDescriptionPart1_AdvanceCup[] = _("ADVANCE CUP");
+const u8 gGiftRibbonDescriptionPart1_PokemonTournament[] = _("POKéMON Tournament");
+const u8 gGiftRibbonDescriptionPart2_Participation2[] = _("Participation RIBBON");
+const u8 gGiftRibbonDescriptionPart1_PokemonEvent[] = _("POKéMON Event");
+const u8 gGiftRibbonDescriptionPart1_PokemonFestival[] = _("POKéMON Festival");
+const u8 gGiftRibbonDescriptionPart1_DifficultyClearing[] = _("Difficulty-clearing");
+const u8 gGiftRibbonDescriptionPart2_Commemorative[] = _("Commemorative RIBBON");
+const u8 gGiftRibbonDescriptionPart1_ClearingAllChallenges[] = _("RIBBON awarded for");
+const u8 gGiftRibbonDescriptionPart2_ClearingAllChallenges[] = _("clearing all challenges.");
+const u8 gGiftRibbonDescriptionPart1_100StraightWin[] = _("100-straight Win");
+const u8 gGiftRibbonDescriptionPart1_DarknessTower[] = _("DARKNESS TOWER Clear");
+const u8 gGiftRibbonDescriptionPart1_RedTower[] = _("RED TOWER Clear");
+const u8 gGiftRibbonDescriptionPart1_BlackironTower[] = _("BLACKIRON TOWER Clear");
+const u8 gGiftRibbonDescriptionPart1_FinalTower[] = _("FINAL TOWER Clear");
+const u8 gGiftRibbonDescriptionPart1_LegendMaking[] = _("Legend-making");
+const u8 gGiftRibbonDescriptionPart1_PokemonCenterTokyo[] = _("POKéMON CENTER TOKYO");
+const u8 gGiftRibbonDescriptionPart1_PokemonCenterOsaka[] = _("POKéMON CENTER OSAKA");
+const u8 gGiftRibbonDescriptionPart1_PokemonCenterNagoya[] = _("POKéMON CENTER NAGOYA");
+const u8 gGiftRibbonDescriptionPart1_PokemonCenterNY[] = _("POKéMON CENTER NY");
+const u8 gGiftRibbonDescriptionPart1_SummerHolidays[] = _("Summer Holidays RIBBON");
+const u8 gGiftRibbonDescriptionPart2_EmptyString[] = _("");
+const u8 gGiftRibbonDescriptionPart1_WinterHolidays[] = _("Winter Holidays RIBBON");
+const u8 gGiftRibbonDescriptionPart1_SpringHolidays[] = _("Spring Holidays RIBBON");
+const u8 gGiftRibbonDescriptionPart1_Evergreen[] = _("Evergreen RIBBON");
+const u8 gGiftRibbonDescriptionPart1_SpecialHoliday[] = _("Special Holiday RIBBON");
+const u8 gGiftRibbonDescriptionPart1_HardWorker[] = _("Hard Worker RIBBON");
+const u8 gGiftRibbonDescriptionPart1_LotsOfFriends[] = _("Lots of Friends RIBBON");
+const u8 gGiftRibbonDescriptionPart1_FullOfEnergy[] = _("Full of Energy RIBBON");
+const u8 gGiftRibbonDescriptionPart1_LovedPokemon[] = _("A commemorative RIBBON");
+const u8 gGiftRibbonDescriptionPart2_LovedPokemon[] = _("for a loved POKéMON.");
+const u8 gGiftRibbonDescriptionPart1_LoveForPokemon[] = _("RIBBON that shows");
+const u8 gGiftRibbonDescriptionPart2_LoveForPokemon[] = _("love for POKéMON.");
+
+const u8 *const gGiftRibbonDescriptionPointers[][2] =
+{
+ {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Participation},
+ {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Participation},
+ {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Champion},
+ {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_RunnerUp},
+ {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Semifinalist},
+ {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Participation},
+ {gGiftRibbonDescriptionPart1_PokemonTournament, gGiftRibbonDescriptionPart2_Participation2},
+ {gGiftRibbonDescriptionPart1_PokemonEvent, gGiftRibbonDescriptionPart2_Participation2},
+ {gGiftRibbonDescriptionPart1_PokemonFestival, gGiftRibbonDescriptionPart2_Participation2},
+ {gGiftRibbonDescriptionPart1_DifficultyClearing, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_ClearingAllChallenges, gGiftRibbonDescriptionPart2_ClearingAllChallenges},
+ {gGiftRibbonDescriptionPart1_100StraightWin, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_DarknessTower, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_RedTower, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_BlackironTower, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_FinalTower, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_LegendMaking, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_PokemonCenterTokyo, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_PokemonCenterOsaka, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_PokemonCenterNagoya, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_PokemonCenterNY, gGiftRibbonDescriptionPart2_Commemorative},
+ {gGiftRibbonDescriptionPart1_SummerHolidays, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_WinterHolidays, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_SpringHolidays, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_Evergreen, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_SpecialHoliday, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_HardWorker, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_LotsOfFriends, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_FullOfEnergy, gGiftRibbonDescriptionPart2_EmptyString},
+ {gGiftRibbonDescriptionPart1_LovedPokemon, gGiftRibbonDescriptionPart2_LovedPokemon},
+ {gGiftRibbonDescriptionPart1_LoveForPokemon, gGiftRibbonDescriptionPart2_LoveForPokemon}
+};
diff --git a/src/data/text/match_call_messages.h b/src/data/text/match_call_messages.h
new file mode 100644
index 000000000..c3015b5a7
--- /dev/null
+++ b/src/data/text/match_call_messages.h
@@ -0,0 +1,476 @@
+#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] =
+{
+ [REMATCH_ROSE] = MCFLAVOR(AromaLady_Rose),
+ [REMATCH_ANDRES] = MCFLAVOR(RuinManiac_Andres),
+ [REMATCH_DUSTY] = MCFLAVOR(RuinManiac_Dusty),
+ [REMATCH_LOLA] = MCFLAVOR(Tuber_Lola),
+ [REMATCH_RICKY] = MCFLAVOR(Tuber_Ricky),
+ [REMATCH_LILA_AND_ROY] = MCFLAVOR(SisAndBro_LilaAndRoy),
+ [REMATCH_CRISTIN] = MCFLAVOR(Cooltrainer_Cristin),
+ [REMATCH_BROOKE] = MCFLAVOR(Cooltrainer_Brooke),
+ [REMATCH_WILTON] = MCFLAVOR(Cooltrainer_Wilton),
+ [REMATCH_VALERIE] = MCFLAVOR(HexManiac_Valerie),
+ [REMATCH_CINDY] = MCFLAVOR(Lady_Cindy),
+ [REMATCH_THALIA] = MCFLAVOR(Beauty_Thalia),
+ [REMATCH_JESSICA] = MCFLAVOR(Beauty_Jessica),
+ [REMATCH_WINSTON] = MCFLAVOR(RichBoy_Winston),
+ [REMATCH_STEVE] = MCFLAVOR(PokeManiac_Steve),
+ [REMATCH_TONY] = MCFLAVOR(Swimmer_Tony),
+ [REMATCH_NOB] = MCFLAVOR(BlackBelt_Nob),
+ [REMATCH_KOJI] = MCFLAVOR(BlackBelt_Koji),
+ [REMATCH_FERNANDO] = MCFLAVOR(Guitarist_Fernando),
+ [REMATCH_DALTON] = MCFLAVOR(Guitarist_Dalton),
+ [REMATCH_BERNIE] = MCFLAVOR(Kindler_Bernie),
+ [REMATCH_ETHAN] = MCFLAVOR(Camper_Ethan),
+ [REMATCH_JOHN_AND_JAY] = MCFLAVOR(OldCouple_JohnAndJay),
+ [REMATCH_JEFFREY] = MCFLAVOR(BugManiac_Jeffrey),
+ [REMATCH_CAMERON] = MCFLAVOR(Psychic_Cameron),
+ [REMATCH_JACKI] = MCFLAVOR(Psychic_Jacki),
+ [REMATCH_WALTER] = MCFLAVOR(Gentleman_Walter),
+ [REMATCH_KAREN] = MCFLAVOR(SchoolKid_Karen),
+ [REMATCH_JERRY] = MCFLAVOR(SchoolKid_Jerry),
+ [REMATCH_ANNA_AND_MEG] = MCFLAVOR(SrAndJr_AnnaAndMeg),
+ [REMATCH_ISABEL] = MCFLAVOR(Pokefan_Isabel),
+ [REMATCH_MIGUEL] = MCFLAVOR(Pokefan_Miguel),
+ [REMATCH_TIMOTHY] = MCFLAVOR(Expert_Timothy),
+ [REMATCH_SHELBY] = MCFLAVOR(Expert_Shelby),
+ [REMATCH_CALVIN] = MCFLAVOR(Youngster_Calvin),
+ [REMATCH_ELLIOT] = MCFLAVOR(Fisherman_Elliot),
+ [REMATCH_ISAIAH] = MCFLAVOR(Triathlete_Isaiah),
+ [REMATCH_MARIA] = MCFLAVOR(Triathlete_Maria),
+ [REMATCH_ABIGAIL] = MCFLAVOR(Triathlete_Abigail),
+ [REMATCH_DYLAN] = MCFLAVOR(Triathlete_Dylan),
+ [REMATCH_KATELYN] = MCFLAVOR(Triathlete_Katelyn),
+ [REMATCH_BENJAMIN] = MCFLAVOR(Triathlete_Benjamin),
+ [REMATCH_PABLO] = MCFLAVOR(Triathlete_Pablo),
+ [REMATCH_NICOLAS] = MCFLAVOR(DragonTamer_Nicolas),
+ [REMATCH_ROBERT] = MCFLAVOR(BirdKeeper_Robert),
+ [REMATCH_LAO] = MCFLAVOR(NinjaBoy_Lao),
+ [REMATCH_CYNDY] = MCFLAVOR(BattleGirl_Cyndy),
+ [REMATCH_MADELINE] = MCFLAVOR(ParasolLady_Madeline),
+ [REMATCH_JENNY] = MCFLAVOR(Swimmer_Jenny),
+ [REMATCH_DIANA] = MCFLAVOR(Picnicker_Diana),
+ [REMATCH_AMY_AND_LIV] = MCFLAVOR(Twins_AmyAndLiv),
+ [REMATCH_ERNEST] = MCFLAVOR(Sailor_Ernest),
+ [REMATCH_CORY] = MCFLAVOR(Sailor_Cory),
+ [REMATCH_EDWIN] = MCFLAVOR(Collector_Edwin),
+ [REMATCH_LYDIA] = MCFLAVOR(PkmnBreeder_Lydia),
+ [REMATCH_ISAAC] = MCFLAVOR(PkmnBreeder_Isaac),
+ [REMATCH_GABRIELLE] = MCFLAVOR(PkmnBreeder_Gabrielle),
+ [REMATCH_CATHERINE] = MCFLAVOR(PkmnRanger_Catherine),
+ [REMATCH_JACKSON] = MCFLAVOR(PkmnRanger_Jackson),
+ [REMATCH_HALEY] = MCFLAVOR(Lass_Haley),
+ [REMATCH_JAMES] = MCFLAVOR(BugCatcher_James),
+ [REMATCH_TRENT] = MCFLAVOR(Hiker_Trent),
+ [REMATCH_SAWYER] = MCFLAVOR(Hiker_Sawyer),
+ [REMATCH_KIRA_AND_DAN] = MCFLAVOR(YoungCouple_LoisAndHal),
+ [REMATCH_WALLY_3] = MCFLAVOR(PkmnTrainer_Wally),
+ [REMATCH_ROXANNE] = MCFLAVOR(RockinWhiz_Roxanne),
+ [REMATCH_BRAWLY] = MCFLAVOR(TheBigHit_Brawly),
+ [REMATCH_WATTSON] = MCFLAVOR(SwellShock_Wattson),
+ [REMATCH_FLANNERY] = MCFLAVOR(PassionBurn_Flannery),
+ [REMATCH_NORMAN] = MCFLAVOR(ReliableOne_Dad),
+ [REMATCH_WINONA] = MCFLAVOR(SkyTamer_Winona),
+ [REMATCH_TATE_AND_LIZA] = MCFLAVOR(MysticDuo_TateAndLiza),
+ [REMATCH_JUAN] = MCFLAVOR(DandyCharm_Juan),
+ [REMATCH_SIDNEY] = MCFLAVOR(EliteFour_Sidney),
+ [REMATCH_PHOEBE] = MCFLAVOR(EliteFour_Phoebe),
+ [REMATCH_GLACIA] = MCFLAVOR(EliteFour_Glacia),
+ [REMATCH_DRAKE] = MCFLAVOR(EliteFour_Drake),
+ [REMATCH_WALLACE] = MCFLAVOR(Champion_Wallace),
+};
diff --git a/src/data/text/ribbon_descriptions.h b/src/data/text/ribbon_descriptions.h
new file mode 100644
index 000000000..f455a7771
--- /dev/null
+++ b/src/data/text/ribbon_descriptions.h
@@ -0,0 +1,48 @@
+const u8 gRibbonDescriptionPart1_Champion[] = _("CHAMPION-beating, HALL");
+const u8 gRibbonDescriptionPart2_Champion[] = _("OF FAME Member RIBBON");
+const u8 gRibbonDescriptionPart1_CoolContest[] = _("COOL CONTEST");
+const u8 gRibbonDescriptionPart1_BeautyContest[] = _("BEAUTY CONTEST");
+const u8 gRibbonDescriptionPart1_CuteContest[] = _("CUTE CONTEST");
+const u8 gRibbonDescriptionPart1_SmartContest[] = _("SMART CONTEST");
+const u8 gRibbonDescriptionPart1_ToughContest[] = _("TOUGH CONTEST");
+const u8 gRibbonDescriptionPart2_NormalRank[] = _("Normal Rank winner!");
+const u8 gRibbonDescriptionPart2_SuperRank[] = _("Super Rank winner!");
+const u8 gRibbonDescriptionPart2_HyperRank[] = _("Hyper Rank winner!");
+const u8 gRibbonDescriptionPart2_MasterRank[] = _("Master Rank winner!");
+const u8 gRibbonDescriptionPart1_Winning[] = _("For clearing LV50");
+const u8 gRibbonDescriptionPart2_Winning[] = _("at the BATTLE TOWER.");
+const u8 gRibbonDescriptionPart1_Victory[] = _("For clearing Open Level");
+const u8 gRibbonDescriptionPart2_Victory[] = _("at the BATTLE TOWER.");
+const u8 gRibbonDescriptionPart1_Artist[] = _("RIBBON for being chosen");
+const u8 gRibbonDescriptionPart2_Artist[] = _("as a super sketch model.");
+const u8 gRibbonDescriptionPart1_Effort[] = _("RIBBON awarded for");
+const u8 gRibbonDescriptionPart2_Effort[] = _("being a hard worker.");
+
+const u8 *const gRibbonDescriptionPointers[][2] =
+{
+ {gRibbonDescriptionPart1_Champion, gRibbonDescriptionPart2_Champion},
+ {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_NormalRank},
+ {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_SuperRank},
+ {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_HyperRank},
+ {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_MasterRank},
+ {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_NormalRank},
+ {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_SuperRank},
+ {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_HyperRank},
+ {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_MasterRank},
+ {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_NormalRank},
+ {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_SuperRank},
+ {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_HyperRank},
+ {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_MasterRank},
+ {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_NormalRank},
+ {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_SuperRank},
+ {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_HyperRank},
+ {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_MasterRank},
+ {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_NormalRank},
+ {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_SuperRank},
+ {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_HyperRank},
+ {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_MasterRank},
+ {gRibbonDescriptionPart1_Winning, gRibbonDescriptionPart2_Winning},
+ {gRibbonDescriptionPart1_Victory, gRibbonDescriptionPart2_Victory},
+ {gRibbonDescriptionPart1_Artist, gRibbonDescriptionPart2_Artist},
+ {gRibbonDescriptionPart1_Effort, gRibbonDescriptionPart2_Effort},
+};
diff --git a/src/data/wild_encounters.json b/src/data/wild_encounters.json
index 6dd24bfed..ea555bd32 100755
--- a/src/data/wild_encounters.json
+++ b/src/data/wild_encounters.json
@@ -3,6 +3,32 @@
{
"label": "gWildMonHeaders",
"for_maps": true,
+ "fields": [
+ {
+ "type": "land_mons",
+ "encounter_rates": [
+ 20, 20, 10, 10, 10, 10, 5, 5, 4, 4, 1, 1
+ ]
+ },
+ {
+ "type": "water_mons",
+ "encounter_rates": [
+ 60, 30, 5, 4, 1
+ ]
+ },
+ {
+ "type": "rock_smash_mons",
+ "encounter_rates": [
+ 60, 30, 5, 4, 1
+ ]
+ },
+ {
+ "type": "fishing_mons",
+ "encounter_rates": [
+ 70, 30, 60, 20, 20, 40, 40, 15, 4, 1
+ ]
+ }
+ ],
"encounters": [
{
"map": "MAP_ROUTE101",
diff --git a/src/data/wild_encounters.json.txt b/src/data/wild_encounters.json.txt
index 8f88cc587..85755ddec 100755
--- a/src/data/wild_encounters.json.txt
+++ b/src/data/wild_encounters.json.txt
@@ -1,5 +1,16 @@
{{ doNotModifyHeader }}
+
## for wild_encounter_group in wild_encounter_groups
+{% if wild_encounter_group.for_maps %}
+## for wild_encounter_field in wild_encounter_group.fields
+## for encounter_rate in wild_encounter_field.encounter_rates
+{% if trackVar(encounter_rate, 100) %}
+#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ loop.index }} {{ encounter_rate }} {% else %}#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ loop.index }} ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ subtract(loop.index, 1) }} + {{ encounter_rate }}{% endif %} {{ setVarInt(wild_encounter_field.type, loop.index) }}
+## endfor
+#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_TOTAL (ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ getVar(wild_encounter_field.type) }})
+## endfor
+{% endif %}
+
## for encounter in wild_encounter_group.encounters
{% if existsIn(encounter, "land_mons") %}
const struct WildPokemon {{ encounter.base_label }}_LandMons[] =