summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/battle_frontier_1.s2527
-rw-r--r--asm/contest_link_80F57C4.s3160
-rw-r--r--asm/contest_link_80FC4F4.s1362
-rw-r--r--asm/contest_link_81D9DE4.s890
-rw-r--r--asm/pokenav.s2
-rw-r--r--asm/roulette.s9634
-rw-r--r--data/battle_frontier_1.s434
-rw-r--r--data/event_scripts.s3051
-rw-r--r--data/maps/AbandonedShip_CaptainsOffice/scripts.inc2
-rw-r--r--data/maps/AbandonedShip_Corridors_B1F/scripts.inc8
-rw-r--r--data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc32
-rw-r--r--data/maps/AncientTomb/scripts.inc6
-rw-r--r--data/maps/AquaHideout_1F/scripts.inc8
-rw-r--r--data/maps/AquaHideout_B1F/scripts.inc13
-rw-r--r--data/maps/AquaHideout_B2F/scripts.inc5
-rw-r--r--data/maps/ArtisanCave_B1F/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerElevator/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerLobby/scripts.inc8
-rw-r--r--data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc6
-rw-r--r--data/maps/BattleFrontier_Lounge1/scripts.inc6
-rw-r--r--data/maps/BattleFrontier_Lounge2/scripts.inc4
-rw-r--r--data/maps/BattleFrontier_Lounge3/scripts.inc5
-rw-r--r--data/maps/BattleFrontier_Lounge6/scripts.inc5
-rw-r--r--data/maps/BattleFrontier_Lounge7/scripts.inc9
-rw-r--r--data/maps/BattleFrontier_OutsideEast/scripts.inc8
-rw-r--r--data/maps/BattleFrontier_ScottsHouse/scripts.inc20
-rw-r--r--data/maps/BirthIsland_Exterior/scripts.inc13
-rw-r--r--data/maps/CaveOfOrigin_1F/scripts.inc3
-rw-r--r--data/maps/CaveOfOrigin_B1F/scripts.inc2
-rw-r--r--data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc3
-rw-r--r--data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc2
-rw-r--r--data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc2
-rw-r--r--data/maps/DesertRuins/scripts.inc6
-rw-r--r--data/maps/DesertUnderpass/scripts.inc4
-rw-r--r--data/maps/DewfordTown/scripts.inc10
-rw-r--r--data/maps/DewfordTown_Gym/scripts.inc15
-rw-r--r--data/maps/DewfordTown_Hall/scripts.inc4
-rw-r--r--data/maps/DewfordTown_House2/scripts.inc4
-rw-r--r--data/maps/EverGrandeCity_DrakesRoom/scripts.inc6
-rw-r--r--data/maps/EverGrandeCity_GlaciasRoom/scripts.inc6
-rw-r--r--data/maps/EverGrandeCity_PhoebesRoom/scripts.inc6
-rw-r--r--data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc4
-rw-r--r--data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc6
-rw-r--r--data/maps/EverGrandeCity_SidneysRoom/scripts.inc8
-rw-r--r--data/maps/FallarborTown/scripts.inc4
-rw-r--r--data/maps/FallarborTown_BattleTentLobby/scripts.inc4
-rw-r--r--data/maps/FallarborTown_House1/scripts.inc8
-rw-r--r--data/maps/FarawayIsland_Entrance/scripts.inc2
-rw-r--r--data/maps/FarawayIsland_Interior/scripts.inc8
-rw-r--r--data/maps/FortreeCity/scripts.inc4
-rw-r--r--data/maps/FortreeCity_Gym/scripts.inc15
-rw-r--r--data/maps/FortreeCity_House1/scripts.inc4
-rw-r--r--data/maps/FortreeCity_House2/scripts.inc8
-rw-r--r--data/maps/FortreeCity_House4/scripts.inc10
-rw-r--r--data/maps/GraniteCave_1F/scripts.inc4
-rw-r--r--data/maps/GraniteCave_StevensRoom/scripts.inc4
-rw-r--r--data/maps/IslandCave/scripts.inc6
-rw-r--r--data/maps/JaggedPass/scripts.inc4
-rw-r--r--data/maps/LavaridgeTown/scripts.inc14
-rw-r--r--data/maps/LavaridgeTown_Gym_1F/scripts.inc14
-rw-r--r--data/maps/LavaridgeTown_HerbShop/scripts.inc4
-rw-r--r--data/maps/LilycoveCity/scripts.inc28
-rw-r--r--data/maps/LilycoveCity_ContestLobby/scripts.inc14
-rw-r--r--data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc4
-rw-r--r--data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc4
-rw-r--r--data/maps/LilycoveCity_Harbor/scripts.inc23
-rw-r--r--data/maps/LilycoveCity_House2/scripts.inc5
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc24
-rw-r--r--data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc9
-rw-r--r--data/maps/LittlerootTown/scripts.inc10
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc4
-rw-r--r--data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc2
-rw-r--r--data/maps/LittlerootTown_MaysHouse_1F/scripts.inc6
-rw-r--r--data/maps/LittlerootTown_MaysHouse_2F/scripts.inc10
-rw-r--r--data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc16
-rw-r--r--data/maps/MagmaHideout_4F/scripts.inc3
-rw-r--r--data/maps/MarineCave_End/scripts.inc6
-rw-r--r--data/maps/MauvilleCity/scripts.inc20
-rw-r--r--data/maps/MauvilleCity_BikeShop/scripts.inc8
-rw-r--r--data/maps/MauvilleCity_GameCorner/scripts.inc12
-rw-r--r--data/maps/MauvilleCity_Gym/scripts.inc32
-rw-r--r--data/maps/MauvilleCity_House1/scripts.inc4
-rw-r--r--data/maps/MauvilleCity_House2/scripts.inc4
-rw-r--r--data/maps/MeteorFalls_1F_1R/scripts.inc7
-rw-r--r--data/maps/MeteorFalls_StevensCave/scripts.inc4
-rw-r--r--data/maps/MirageTower_1F/scripts.inc2
-rw-r--r--data/maps/MirageTower_4F/scripts.inc4
-rw-r--r--data/maps/MossdeepCity/scripts.inc16
-rw-r--r--data/maps/MossdeepCity_Gym/scripts.inc47
-rw-r--r--data/maps/MossdeepCity_House2/scripts.inc2
-rw-r--r--data/maps/MossdeepCity_House3/scripts.inc4
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc13
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc11
-rw-r--r--data/maps/MossdeepCity_StevensHouse/scripts.inc8
-rw-r--r--data/maps/MtChimney/scripts.inc14
-rw-r--r--data/maps/MtPyre_1F/scripts.inc4
-rw-r--r--data/maps/MtPyre_Summit/scripts.inc10
-rw-r--r--data/maps/NavelRock_Bottom/scripts.inc11
-rw-r--r--data/maps/NavelRock_Exterior/scripts.inc2
-rw-r--r--data/maps/NavelRock_Top/events.inc2
-rw-r--r--data/maps/NavelRock_Top/scripts.inc15
-rw-r--r--data/maps/NewMauville_Inside/scripts.inc19
-rw-r--r--data/maps/OldaleTown/scripts.inc12
-rw-r--r--data/maps/OldaleTown_Mart/scripts.inc4
-rw-r--r--data/maps/PacifidlogTown_House2/scripts.inc16
-rw-r--r--data/maps/PacifidlogTown_House3/scripts.inc4
-rw-r--r--data/maps/PetalburgCity_Gym/scripts.inc22
-rw-r--r--data/maps/PetalburgCity_Mart/scripts.inc2
-rw-r--r--data/maps/PetalburgCity_WallysHouse/scripts.inc12
-rw-r--r--data/maps/PetalburgWoods/scripts.inc4
-rw-r--r--data/maps/Route101/scripts.inc2
-rw-r--r--data/maps/Route103/scripts.inc2
-rw-r--r--data/maps/Route104/scripts.inc57
-rw-r--r--data/maps/Route104_MrBrineysHouse/scripts.inc10
-rw-r--r--data/maps/Route104_PrettyPetalFlowerShop/scripts.inc14
-rw-r--r--data/maps/Route105/scripts.inc2
-rw-r--r--data/maps/Route109/events.inc3
-rw-r--r--data/maps/Route109/scripts.inc6
-rw-r--r--data/maps/Route109_SeashoreHouse/scripts.inc8
-rw-r--r--data/maps/Route110/scripts.inc2
-rw-r--r--data/maps/Route110_TrickHousePuzzle7/scripts.inc80
-rw-r--r--data/maps/Route111/scripts.inc8
-rw-r--r--data/maps/Route111_WinstrateFamilysHouse/scripts.inc4
-rw-r--r--data/maps/Route114/scripts.inc8
-rw-r--r--data/maps/Route114_FossilManiacsHouse/scripts.inc4
-rw-r--r--data/maps/Route114_FossilManiacsTunnel/scripts.inc2
-rw-r--r--data/maps/Route114_LanettesHouse/scripts.inc4
-rw-r--r--data/maps/Route116/scripts.inc12
-rw-r--r--data/maps/Route118/scripts.inc4
-rw-r--r--data/maps/Route119/scripts.inc4
-rw-r--r--data/maps/Route119_WeatherInstitute_1F/scripts.inc4
-rw-r--r--data/maps/Route119_WeatherInstitute_2F/scripts.inc8
-rw-r--r--data/maps/Route120/events.inc2
-rw-r--r--data/maps/Route120/scripts.inc16
-rw-r--r--data/maps/Route121/events.inc6
-rw-r--r--data/maps/Route121_SafariZoneEntrance/scripts.inc2
-rw-r--r--data/maps/Route123/scripts.inc4
-rw-r--r--data/maps/Route123_BerryMastersHouse/scripts.inc28
-rw-r--r--data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc4
-rw-r--r--data/maps/RustboroCity/scripts.inc45
-rw-r--r--data/maps/RustboroCity_CuttersHouse/scripts.inc4
-rw-r--r--data/maps/RustboroCity_DevonCorp_1F/scripts.inc18
-rw-r--r--data/maps/RustboroCity_DevonCorp_2F/scripts.inc8
-rw-r--r--data/maps/RustboroCity_DevonCorp_3F/scripts.inc10
-rw-r--r--data/maps/RustboroCity_Flat2_2F/scripts.inc4
-rw-r--r--data/maps/RustboroCity_Gym/scripts.inc12
-rw-r--r--data/maps/RustboroCity_House1/scripts.inc4
-rw-r--r--data/maps/RustboroCity_Mart/scripts.inc4
-rw-r--r--data/maps/RustboroCity_PokemonSchool/scripts.inc12
-rw-r--r--data/maps/RusturfTunnel/scripts.inc6
-rw-r--r--data/maps/SSTidalCorridor/scripts.inc10
-rw-r--r--data/maps/SSTidalRooms/scripts.inc4
-rw-r--r--data/maps/SafariZone_South/scripts.inc5
-rw-r--r--data/maps/SeafloorCavern_Room9/scripts.inc3
-rw-r--r--data/maps/SealedChamber_InnerRoom/scripts.inc4
-rw-r--r--data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc17
-rw-r--r--data/maps/ShoalCave_LowTideInnerRoom/scripts.inc37
-rw-r--r--data/maps/ShoalCave_LowTideLowerRoom/scripts.inc10
-rw-r--r--data/maps/ShoalCave_LowTideStairsRoom/scripts.inc6
-rw-r--r--data/maps/SkyPillar_Outside/scripts.inc2
-rw-r--r--data/maps/SkyPillar_Top/scripts.inc6
-rw-r--r--data/maps/SlateportCity/scripts.inc13
-rw-r--r--data/maps/SlateportCity_BattleTentLobby/scripts.inc4
-rw-r--r--data/maps/SlateportCity_Harbor/scripts.inc19
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc4
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc2
-rw-r--r--data/maps/SlateportCity_PokemonFanClub/scripts.inc44
-rw-r--r--data/maps/SlateportCity_SternsShipyard_1F/scripts.inc6
-rw-r--r--data/maps/SootopolisCity/scripts.inc34
-rw-r--r--data/maps/SootopolisCity_Gym_1F/scripts.inc12
-rw-r--r--data/maps/SootopolisCity_House1/scripts.inc4
-rw-r--r--data/maps/SootopolisCity_House6/scripts.inc4
-rw-r--r--data/maps/SootopolisCity_Mart/scripts.inc4
-rw-r--r--data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc4
-rw-r--r--data/maps/SouthernIsland_Interior/scripts.inc11
-rw-r--r--data/maps/TerraCave_End/scripts.inc6
-rw-r--r--data/maps/TerraCave_Entrance/scripts.inc2
-rw-r--r--data/maps/Underwater_MarineCave/scripts.inc2
-rw-r--r--data/maps/Underwater_SeafloorCavern/scripts.inc4
-rw-r--r--data/maps/VerdanturfTown_BattleTentLobby/scripts.inc9
-rw-r--r--data/maps/VerdanturfTown_WandasHouse/scripts.inc16
-rw-r--r--data/maps/VictoryRoad_1F/scripts.inc2
-rw-r--r--data/mystery_event_msg.s44
-rw-r--r--data/roulette.s928
-rw-r--r--data/scripts/apprentice.inc4
-rw-r--r--data/scripts/contest_hall.inc8
-rw-r--r--data/scripts/players_house.inc24
-rw-r--r--data/scripts/pokeblocks.inc8
-rw-r--r--data/scripts/secret_base.inc2
-rw-r--r--data/scripts/secret_power_tm.inc2
-rw-r--r--data/scripts/tv.inc4
-rw-r--r--data/specials.inc2
-rw-r--r--data/text/match_call.inc2953
-rw-r--r--include/constants/battle_frontier.h1
-rw-r--r--include/constants/flags.h3038
-rw-r--r--include/contest.h26
-rw-r--r--include/contest_painting.h3
-rw-r--r--include/data2.h2
-rw-r--r--include/gba/types.h4
-rw-r--r--include/graphics.h28
-rw-r--r--include/link_rfu.h1
-rw-r--r--include/m4a.h3
-rw-r--r--include/menu_helpers.h2
-rw-r--r--include/roulette_util.h7
-rw-r--r--include/rtc.h1
-rw-r--r--include/strings.h227
-rw-r--r--include/tv.h3
-rw-r--r--ld_script.txt17
-rw-r--r--src/battle_anim_80A5C6C.c20
-rw-r--r--src/battle_controller_link_opponent.c4
-rw-r--r--src/battle_controller_link_partner.c2
-rw-r--r--src/battle_controller_opponent.c4
-rw-r--r--src/battle_controller_player.c8
-rw-r--r--src/battle_controller_player_partner.c4
-rw-r--r--src/battle_controller_recorded_opponent.c2
-rw-r--r--src/battle_controller_recorded_player.c6
-rw-r--r--src/battle_controller_safari.c2
-rw-r--r--src/battle_controller_wally.c4
-rw-r--r--src/battle_dome.c11
-rw-r--r--src/battle_main.c18
-rw-r--r--src/battle_setup.c2
-rw-r--r--src/battle_tower.c4
-rw-r--r--src/contest.c28
-rw-r--r--src/contest_link_80F57C4.c1443
-rw-r--r--src/contest_link_80FC4F4.c548
-rw-r--r--src/contest_link_81D9DE4.c331
-rw-r--r--src/contest_painting.c3
-rw-r--r--src/data/pokemon_graphics/back_pic_coordinates.h880
-rw-r--r--src/data/pokemon_graphics/front_pic_coordinates.h880
-rw-r--r--src/data/trainer_graphics/back_pic_tables.h16
-rw-r--r--src/data/trainer_graphics/front_pic_tables.h186
-rw-r--r--src/decoration.c10
-rw-r--r--src/event_data.c32
-rw-r--r--src/field_control_avatar.c4
-rwxr-xr-xsrc/field_message_box.c8
-rw-r--r--src/field_specials.c20
-rw-r--r--src/link.c2
-rw-r--r--src/link_rfu.c2
-rw-r--r--src/match_call.c2806
-rw-r--r--src/menu.c468
-rw-r--r--src/menu_helpers.c2
-rw-r--r--src/new_game.c4
-rw-r--r--src/overworld.c4
-rwxr-xr-xsrc/party_menu.c10
-rwxr-xr-xsrc/pokedex_area_screen.c2
-rw-r--r--src/pokenav_match_call.c1275
-rw-r--r--src/reshow_battle_screen.c4
-rw-r--r--src/roulette.c4929
-rwxr-xr-xsrc/roulette_util.c2
-rw-r--r--src/rtc.c2
-rw-r--r--src/script_menu.c26
-rwxr-xr-xsrc/script_pokemon_util_80F87D8.c14
-rw-r--r--src/secret_base.c2
-rw-r--r--src/strings.c2
-rw-r--r--src/trade.c98
-rw-r--r--src/tv.c16
-rw-r--r--sym_ewram.txt16
258 files changed, 17392 insertions, 26814 deletions
diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s
deleted file mode 100644
index c47ca5d76..000000000
--- a/asm/battle_frontier_1.s
+++ /dev/null
@@ -1,2527 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
-
- thumb_func_start sub_8195E10
-sub_8195E10: @ 8195E10
- push {lr}
- bl RtcCalcLocalTime
- ldr r0, =gLocalTime
- bl sub_8195E34
- ldr r1, =gUnknown_0203CD80
- adds r0, 0xA
- str r0, [r1]
- movs r0, 0
- strb r0, [r1, 0x6]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8195E10
-
- thumb_func_start sub_8195E34
-sub_8195E34: @ 8195E34
- adds r3, r0, 0
- movs r1, 0
- ldrsh r0, [r3, r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 5
- movs r2, 0x2
- ldrsb r2, [r3, r2]
- lsls r1, r2, 4
- subs r1, r2
- lsls r1, 2
- adds r0, r1
- movs r1, 0x3
- ldrsb r1, [r3, r1]
- adds r0, r1
- bx lr
- thumb_func_end sub_8195E34
-
- thumb_func_start sub_8195E58
-sub_8195E58: @ 8195E58
- push {lr}
- bl RtcCalcLocalTime
- ldr r0, =gLocalTime
- bl sub_8195E34
- adds r1, r0, 0
- ldr r2, =gUnknown_0203CD80
- ldr r0, [r2]
- cmp r0, r1
- bhi _08195E74
- subs r0, r1, r0
- cmp r0, 0x9
- bls _08195E84
-_08195E74:
- str r1, [r2]
- movs r0, 0x1
- b _08195E86
- .pool
-_08195E84:
- movs r0, 0
-_08195E86:
- pop {r1}
- bx r1
- thumb_func_end sub_8195E58
-
- thumb_func_start sub_8195E8C
-sub_8195E8C: @ 8195E8C
- push {r4,r5,lr}
- movs r5, 0x1
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- movs r1, 0x6
- bl GetMonData
- cmp r0, 0
- bne _08195EAE
- adds r0, r4, 0
- bl GetMonAbility
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1F
- bne _08195EAE
- movs r5, 0x2
-_08195EAE:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r5, 1
- adds r1, r5
- cmp r0, r1
- blt _08195ED0
- movs r0, 0
- b _08195ED2
- .pool
-_08195ED0:
- movs r0, 0x1
-_08195ED2:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8195E8C
-
- thumb_func_start sub_8195ED8
-sub_8195ED8: @ 8195ED8
- push {r4,lr}
- ldr r4, =gMapHeader
- ldrb r0, [r4, 0x17]
- bl Overworld_MapTypeAllowsTeleportAndFly
- lsls r0, 24
- cmp r0, 0
- beq _08195F30
- ldrb r0, [r4, 0x14]
- cmp r0, 0x39
- beq _08195F30
- cmp r0, 0xE
- bne _08195F0E
- movs r0, 0xF9
- lsls r0, 2
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08195F0E
- movs r0, 0xDC
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08195F30
-_08195F0E:
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- cmp r0, 0x38
- bne _08195F38
- movs r0, 0xCF
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08195F38
- movs r0, 0x8B
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08195F38
-_08195F30:
- movs r0, 0
- b _08195F3A
- .pool
-_08195F38:
- movs r0, 0x1
-_08195F3A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8195ED8
-
- thumb_func_start sub_8195F40
-sub_8195F40: @ 8195F40
- push {lr}
- ldr r1, =gUnknown_0203CD80
- ldrb r0, [r1, 0x6]
- adds r0, 0x1
- strb r0, [r1, 0x6]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9
- bhi _08195F5C
- movs r0, 0
- b _08195F62
- .pool
-_08195F5C:
- movs r0, 0
- strb r0, [r1, 0x6]
- movs r0, 0x1
-_08195F62:
- pop {r1}
- bx r1
- thumb_func_end sub_8195F40
-
- thumb_func_start sub_8195F68
-sub_8195F68: @ 8195F68
- push {r4,lr}
- bl sub_8195FCC
- adds r4, r0, 0
- cmp r4, 0
- beq _08195FB8
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl __umodsi3
- bl sub_8195FF8
- ldr r2, =gUnknown_0203CD80
- movs r1, 0
- strh r0, [r2, 0x4]
- strb r1, [r2, 0x7]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x4E
- beq _08195FB8
- ldrh r0, [r2, 0x4]
- bl sub_8196844
- adds r4, r0, 0
- bl sub_819672C
- ldr r1, =gMapHeader
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x14]
- cmp r0, r1
- bne _08195FC4
- adds r0, r4, 0
- bl sub_8196710
- cmp r0, 0
- bne _08195FC4
-_08195FB8:
- movs r0, 0
- b _08195FC6
- .pool
-_08195FC4:
- movs r0, 0x1
-_08195FC6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8195F68
-
- thumb_func_start sub_8195FCC
-sub_8195FCC: @ 8195FCC
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0
-_08195FD2:
- movs r1, 0xAE
- lsls r1, 1
- adds r0, r4, r1
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08195FE8
- adds r5, 0x1
-_08195FE8:
- adds r4, 0x1
- cmp r4, 0x3F
- bls _08195FD2
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8195FCC
-
- thumb_func_start sub_8195FF8
-sub_8195FF8: @ 8195FF8
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- ldr r6, =gRematchTable
-_08196000:
- movs r1, 0xAE
- lsls r1, 1
- adds r0, r4, r1
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08196022
- cmp r5, 0
- bne _08196020
- ldrh r0, [r6]
- b _0819602C
- .pool
-_08196020:
- subs r5, 0x1
-_08196022:
- adds r6, 0x10
- adds r4, 0x1
- cmp r4, 0x3F
- bls _08196000
- movs r0, 0x4E
-_0819602C:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8195FF8
-
- thumb_func_start sub_8196034
-sub_8196034: @ 8196034
- push {lr}
- ldr r0, =0x0000012f
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08196078
- bl sub_8195F40
- cmp r0, 0
- beq _08196078
- bl sub_8195E58
- cmp r0, 0
- beq _08196078
- bl sub_8195E8C
- cmp r0, 0
- beq _08196078
- bl sub_8195ED8
- cmp r0, 0
- beq _08196078
- bl sub_8195F68
- cmp r0, 0
- beq _08196078
- bl task_prev_quest
- movs r0, 0x1
- b _0819607A
- .pool
-_08196078:
- movs r0, 0
-_0819607A:
- pop {r1}
- bx r1
- thumb_func_end sub_8196034
-
- thumb_func_start sub_8196080
-sub_8196080: @ 8196080
- push {lr}
- ldr r1, =gUnknown_0203CD80
- movs r0, 0x1
- strb r0, [r1, 0x7]
- bl task_prev_quest
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196080
-
- thumb_func_start sub_8196094
-sub_8196094: @ 8196094
- push {lr}
- ldr r0, =sub_81960E0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196094
-
- thumb_func_start task_prev_quest
-task_prev_quest: @ 81960A8
- push {lr}
- ldr r0, =gUnknown_0203CD80
- ldrb r0, [r0, 0x7]
- cmp r0, 0
- bne _081960C2
- bl ScriptContext2_Enable
- bl FreezeEventObjects
- bl sub_808B864
- bl sub_808BCF4
-_081960C2:
- ldr r0, =0x00000107
- bl PlaySE
- ldr r0, =sub_81960E0
- movs r1, 0x1
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end task_prev_quest
-
- thumb_func_start sub_81960E0
-sub_81960E0: @ 81960E0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldr r1, =gUnknown_0860EF78
- movs r2, 0
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
- cmp r0, 0
- beq _0819611E
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- movs r1, 0
- strh r1, [r4, 0x2]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x7
- bls _0819611E
- adds r0, r5, 0
- bl DestroyTask
-_0819611E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81960E0
-
- thumb_func_start sub_819612C
-sub_819612C: @ 819612C
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r5, r0, r1
- ldr r0, =gUnknown_0860EF98
- bl AddWindow
- strh r0, [r5, 0x4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xFF
- bne _0819615C
- adds r0, r4, 0
- b _081961E0
- .pool
-_0819615C:
- ldr r1, =gUnknown_0860EA6C
- movs r2, 0x80
- lsls r2, 1
- movs r3, 0x9C
- lsls r3, 2
- movs r0, 0
- bl LoadBgTiles
- lsls r0, 16
- ldr r1, =0xffff0000
- cmp r0, r1
- bne _08196188
- ldrb r0, [r5, 0x4]
- bl RemoveWindow
- adds r0, r4, 0
- b _081961E0
- .pool
-_08196188:
- ldr r1, =gUnknown_0860EB8C
- ldr r3, =0x00000279
- movs r0, 0
- str r0, [sp]
- movs r2, 0
- bl decompress_and_copy_tile_data_to_vram
- cmp r0, 0
- beq _081961D8
- ldrb r0, [r5, 0x4]
- movs r1, 0x88
- bl FillWindowPixelBuffer
- ldr r0, =gUnknown_0860EA4C
- movs r1, 0xE0
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_0860EB6C
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =0xffffe000
- movs r0, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x1
- b _081961E6
- .pool
-_081961D8:
- ldrb r0, [r5, 0x4]
- bl RemoveWindow
- adds r0, r6, 0
-_081961E0:
- bl DestroyTask
- movs r0, 0
-_081961E6:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_819612C
-
- thumb_func_start sub_81961F0
-sub_81961F0: @ 81961F0
- push {r4,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- cmp r0, 0
- bne _08196268
- ldrb r0, [r4, 0x4]
- bl PutWindowTilemap
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- movs r1, 0x9C
- lsls r1, 2
- movs r2, 0xE
- bl sub_819645C
- ldr r1, =0x0000f279
- movs r0, 0x4
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0x1
- str r0, [sp, 0xC]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0xF
- bl WriteSequenceToBgTilemapBuffer
- ldr r0, =sub_8196694
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xA]
- ldrb r0, [r4, 0x4]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- b _0819626A
- .pool
-_08196268:
- movs r0, 0
-_0819626A:
- add sp, 0x10
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81961F0
-
- thumb_func_start sub_8196274
-sub_8196274: @ 8196274
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- beq _08196298
- movs r0, 0
- b _081962A4
- .pool
-_08196298:
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- ldr r1, =gText_PokenavCallEllipsis
- bl sub_81965D8
- movs r0, 0x1
-_081962A4:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196274
-
- thumb_func_start sub_81962B0
-sub_81962B0: @ 81962B0
- push {lr}
- movs r1, 0xC0
- lsls r1, 3
- movs r0, 0
- movs r2, 0x1
- bl ChangeBgY
- cmp r0, 0
- bge _081962C6
- movs r0, 0
- b _081962D2
-_081962C6:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x1
-_081962D2:
- pop {r1}
- bx r1
- thumb_func_end sub_81962B0
-
- thumb_func_start sub_81962D8
-sub_81962D8: @ 81962D8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- bl sub_8196648
- cmp r0, 0
- bne _08196328
- ldrb r0, [r4, 0x4]
- movs r1, 0x88
- bl FillWindowPixelBuffer
- ldr r1, =gUnknown_0203CD80
- ldrb r0, [r1, 0x7]
- cmp r0, 0
- bne _0819630C
- ldrh r0, [r1, 0x4]
- ldr r1, =gStringVar4
- bl sub_81967AC
-_0819630C:
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- ldr r1, =gStringVar4
- bl sub_81965D8
- movs r0, 0x1
- b _0819632A
- .pool
-_08196328:
- movs r0, 0
-_0819632A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81962D8
-
- thumb_func_start sub_8196330
-sub_8196330: @ 8196330
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- bl sub_8196648
- cmp r0, 0
- bne _08196388
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _08196388
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08196388
- ldrb r0, [r4, 0x4]
- movs r1, 0x88
- bl FillWindowPixelBuffer
- ldrb r0, [r4, 0x4]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x84
- lsls r0, 1
- bl PlaySE
- movs r0, 0x1
- b _0819638A
- .pool
-_08196388:
- movs r0, 0
-_0819638A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8196330
-
- thumb_func_start sub_8196390
-sub_8196390: @ 8196390
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- movs r1, 0xC0
- lsls r1, 3
- movs r0, 0
- movs r2, 0x2
- bl ChangeBgY
- ldr r1, =0xffffe000
- cmp r0, r1
- ble _081963C0
- movs r0, 0
- b _081963E8
- .pool
-_081963C0:
- movs r0, 0x1E
- str r0, [sp]
- movs r0, 0x6
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0xE
- bl FillBgTilemapBufferRect_Palette0
- ldrb r0, [r4, 0xA]
- bl DestroyTask
- ldrb r0, [r4, 0x4]
- bl RemoveWindow
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
-_081963E8:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8196390
-
- thumb_func_start sub_81963F0
-sub_81963F0: @ 81963F0
- push {lr}
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _08196454
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _08196454
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- ldr r0, =gUnknown_0203CD80
- ldrb r0, [r0, 0x7]
- cmp r0, 0
- bne _08196446
- bl sub_81973A4
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gEventObjects
- adds r0, r1
- bl EventObjectClearHeldMovementIfFinished
- bl sub_80D338C
- bl UnfreezeEventObjects
- bl ScriptContext2_Disable
-_08196446:
- movs r0, 0x1
- b _08196456
- .pool
-_08196454:
- movs r0, 0
-_08196456:
- pop {r1}
- bx r1
- thumb_func_end sub_81963F0
-
- thumb_func_start sub_819645C
-sub_819645C: @ 819645C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- adds r4, r0, 0
- adds r5, r1, 0
- adds r7, r2, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl GetWindowAttribute
- mov r9, r0
- adds r0, r4, 0
- movs r1, 0x1
- bl GetWindowAttribute
- str r0, [sp, 0x8]
- adds r0, r4, 0
- movs r1, 0x2
- bl GetWindowAttribute
- str r0, [sp, 0xC]
- adds r0, r4, 0
- movs r1, 0x3
- bl GetWindowAttribute
- adds r6, r0, 0
- adds r0, r4, 0
- movs r1, 0x4
- bl GetWindowAttribute
- str r0, [sp, 0x10]
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r1, 0xA
- bl GetBgAttribute
- lsls r0, 16
- lsrs r0, 16
- adds r5, r0
- lsls r7, 12
- movs r1, 0xF0
- lsls r1, 8
- adds r0, r1, 0
- ands r7, r0
- adds r1, r7, 0
- orrs r1, r5
- lsls r1, 16
- lsrs r1, 16
- ldr r2, [sp, 0x8]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- mov r10, r2
- ldr r4, [sp, 0xC]
- subs r4, 0x1
- lsls r4, 24
- lsrs r4, 24
- movs r3, 0x1
- mov r8, r3
- str r3, [sp]
- str r3, [sp, 0x4]
- mov r0, r9
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x1
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- ldr r0, [sp, 0x8]
- lsls r2, r0, 24
- lsrs r2, 24
- str r2, [sp, 0x14]
- lsls r0, r6, 24
- lsrs r0, 24
- str r0, [sp, 0x18]
- str r0, [sp]
- mov r2, r8
- str r2, [sp, 0x4]
- mov r0, r9
- ldr r2, [sp, 0x14]
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x2
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- ldr r3, [sp, 0x8]
- adds r0, r3, r6
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x1C]
- mov r0, r8
- str r0, [sp]
- str r0, [sp, 0x4]
- mov r0, r9
- ldr r2, [sp, 0x1C]
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x3
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- ldr r2, [sp, 0xC]
- lsls r6, r2, 24
- lsrs r6, 24
- mov r3, r8
- str r3, [sp]
- ldr r0, [sp, 0x10]
- lsls r4, r0, 24
- lsrs r4, 24
- str r4, [sp, 0x4]
- mov r0, r9
- mov r2, r10
- adds r3, r6, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x4
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- mov r2, r8
- str r2, [sp]
- str r4, [sp, 0x4]
- mov r0, r9
- ldr r2, [sp, 0x1C]
- adds r3, r6, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x5
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- ldr r3, [sp, 0xC]
- ldr r2, [sp, 0x10]
- adds r0, r3, r2
- lsls r0, 24
- lsrs r4, r0, 24
- mov r3, r8
- str r3, [sp]
- str r3, [sp, 0x4]
- mov r0, r9
- mov r2, r10
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r1, r5, 0x6
- orrs r1, r7
- lsls r1, 16
- lsrs r1, 16
- ldr r0, [sp, 0x18]
- str r0, [sp]
- mov r2, r8
- str r2, [sp, 0x4]
- mov r0, r9
- ldr r2, [sp, 0x14]
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- adds r5, 0x7
- orrs r5, r7
- lsls r5, 16
- lsrs r5, 16
- mov r3, r8
- str r3, [sp]
- str r3, [sp, 0x4]
- mov r0, r9
- adds r1, r5, 0
- ldr r2, [sp, 0x1C]
- adds r3, r4, 0
- bl FillBgTilemapBufferRect_Palette0
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_819645C
-
- thumb_func_start sub_81965D8
-sub_81965D8: @ 81965D8
- push {lr}
- sub sp, 0x10
- str r1, [sp]
- mov r1, sp
- movs r3, 0
- strb r0, [r1, 0x4]
- mov r0, sp
- movs r1, 0x1
- strb r1, [r0, 0x5]
- movs r2, 0x20
- strb r2, [r0, 0x6]
- strb r1, [r0, 0x7]
- strb r2, [r0, 0x8]
- strb r1, [r0, 0x9]
- strb r3, [r0, 0xA]
- strb r3, [r0, 0xB]
- mov r3, sp
- ldrb r2, [r3, 0xC]
- subs r1, 0x11
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0xC]
- mov r2, sp
- movs r3, 0xF
- movs r0, 0xA0
- strb r0, [r2, 0xC]
- ldrb r0, [r2, 0xD]
- ands r1, r0
- movs r0, 0x8
- orrs r1, r0
- strb r1, [r2, 0xD]
- ands r1, r3
- movs r0, 0xE0
- orrs r1, r0
- strb r1, [r2, 0xD]
- ldr r2, =gTextFlags
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- bl GetPlayerTextSpeedDelay
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, sp
- movs r2, 0
- bl AddTextPrinter
- add sp, 0x10
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81965D8
-
- thumb_func_start sub_8196648
-sub_8196648: @ 8196648
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gMain
- ldrh r1, [r0, 0x2C]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0819666C
- ldr r0, =gTextFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _08196678
- .pool
-_0819666C:
- ldr r2, =gTextFlags
- ldrb r1, [r2]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_08196678:
- bl RunTextPrinters
- lsls r0, r4, 24
- lsrs r0, 24
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r0, 16
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196648
-
- thumb_func_start sub_8196694
-sub_8196694: @ 8196694
- push {lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r2, r1, r0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _081966FC
- movs r1, 0
- strh r1, [r2]
- ldrh r0, [r2, 0x2]
- adds r0, 0x1
- strh r0, [r2, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _081966C8
- strh r1, [r2, 0x2]
-_081966C8:
- movs r0, 0x2
- ldrsh r1, [r2, r0]
- lsls r1, 4
- ldr r0, =0x00000279
- adds r1, r0
- strh r1, [r2, 0x4]
- ldr r2, =0xfffff000
- adds r0, r2, 0
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x4
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0x1
- str r0, [sp, 0xC]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0xF
- bl WriteSequenceToBgTilemapBuffer
- movs r0, 0
- bl CopyBgTilemapBufferToVram
-_081966FC:
- add sp, 0x10
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196694
-
- thumb_func_start sub_8196710
-sub_8196710: @ 8196710
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, =0x000009ca
- adds r1, r2
- adds r1, r0
- ldrb r1, [r1]
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- bx lr
- .pool
- thumb_func_end sub_8196710
-
- thumb_func_start sub_819672C
-sub_819672C: @ 819672C
- push {lr}
- ldr r1, =gRematchTable
- lsls r0, 4
- adds r0, r1
- ldrh r2, [r0, 0xA]
- ldrh r1, [r0, 0xC]
- adds r0, r2, 0
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_819672C
-
- thumb_func_start sub_8196748
-sub_8196748: @ 8196748
- push {r4-r6,lr}
- movs r5, 0
- movs r6, 0
- ldr r4, =gRematchTable
-_08196750:
- ldrh r0, [r4]
- bl HasTrainerBeenFought
- lsls r0, 24
- cmp r0, 0
- beq _0819675E
- adds r6, 0x1
-_0819675E:
- adds r4, 0x10
- adds r5, 0x1
- cmp r5, 0x3F
- bls _08196750
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196748
-
- thumb_func_start sub_8196774
-sub_8196774: @ 8196774
- push {r4-r7,lr}
- adds r7, r0, 0
- movs r4, 0
- movs r6, 0
- ldr r5, =gRematchTable
-_0819677E:
- ldrh r0, [r5]
- bl HasTrainerBeenFought
- lsls r0, 24
- cmp r0, 0
- beq _0819679A
- cmp r6, r7
- bne _08196798
- adds r0, r4, 0
- b _081967A4
- .pool
-_08196798:
- adds r6, 0x1
-_0819679A:
- adds r5, 0x10
- adds r4, 0x1
- cmp r4, 0x4D
- bls _0819677E
- movs r0, 0x4E
-_081967A4:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8196774
-
- thumb_func_start sub_81967AC
-sub_81967AC: @ 81967AC
- push {r4-r7,lr}
- adds r6, r1, 0
- movs r7, 0
- bl sub_8196844
- adds r5, r0, 0
- ldr r0, =gUnknown_0203CD88
- strh r7, [r0]
- adds r0, r5, 0
- bl sub_8196710
- cmp r0, 0
- beq _081967EC
- adds r0, r5, 0
- bl sub_819672C
- ldr r1, =gMapHeader
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x14]
- cmp r0, r1
- bne _081967EC
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_8196864
- b _08196830
- .pool
-_081967EC:
- adds r0, r5, 0
- bl sub_8196D74
- cmp r0, 0
- beq _0819680A
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_8196890
- adds r4, r0, 0
- movs r7, 0x1
- adds r0, r5, 0
- bl UpdateRematchIfDefeated
- b _08196832
-_0819680A:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- beq _08196828
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_81968BC
- b _08196830
-_08196828:
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_8196910
-_08196830:
- adds r4, r0, 0
-_08196832:
- adds r0, r5, 0
- adds r1, r4, 0
- adds r2, r6, 0
- bl sub_81969E0
- adds r0, r7, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81967AC
-
- thumb_func_start sub_8196844
-sub_8196844: @ 8196844
- push {lr}
- adds r3, r0, 0
- movs r2, 0
- ldr r1, =gUnknown_0860DEB8
-_0819684C:
- ldrh r0, [r1]
- cmp r0, r3
- beq _0819685C
- adds r1, 0x14
- adds r2, 0x1
- b _0819684C
- .pool
-_0819685C:
- adds r0, r2, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8196844
-
- thumb_func_start sub_8196864
-sub_8196864: @ 8196864
- ldr r2, =gUnknown_0860DEB8
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r1, [r1, 0xE]
- movs r2, 0xFF
- lsrs r0, r1, 8
- subs r0, 0x1
- ands r1, r2
- subs r1, 0x1
- ldr r2, =gUnknown_0860EA2C
- lsls r0, 2
- adds r0, r2
- lsls r1, 3
- ldr r0, [r0]
- adds r0, r1
- bx lr
- .pool
- thumb_func_end sub_8196864
-
- thumb_func_start sub_8196890
-sub_8196890: @ 8196890
- ldr r2, =gUnknown_0860DEB8
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r1, [r1, 0x10]
- movs r2, 0xFF
- lsrs r0, r1, 8
- subs r0, 0x1
- ands r1, r2
- subs r1, 0x1
- ldr r2, =gUnknown_0860EA2C
- lsls r0, 2
- adds r0, r2
- lsls r1, 3
- ldr r0, [r0]
- adds r0, r1
- bx lr
- .pool
- thumb_func_end sub_8196890
-
- thumb_func_start sub_81968BC
-sub_81968BC: @ 81968BC
- push {r4,lr}
- adds r4, r0, 0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- ldr r2, =gUnknown_0860DEB8
- lsrs r0, 15
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 2
- adds r0, r1
- adds r2, 0x4
- adds r0, r2
- ldrh r4, [r0]
- cmp r4, 0
- bne _081968EC
- movs r0, 0
- bl SpriteCallbackDummy
-_081968EC:
- movs r1, 0xFF
- lsrs r0, r4, 8
- subs r0, 0x1
- ands r4, r1
- subs r1, r4, 0x1
- ldr r2, =gUnknown_0860EA20
- lsls r0, 2
- adds r0, r2
- lsls r1, 3
- ldr r0, [r0]
- adds r0, r1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81968BC
-
- thumb_func_start sub_8196910
-sub_8196910: @ 8196910
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _081969AC
- movs r5, 0
- movs r4, 0
- lsls r7, r6, 2
-_0819692C:
- lsls r0, r4, 16
- lsrs r0, 16
- mov r1, sp
- bl sub_8196E04
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _08196940
- adds r5, 0x1
-_08196940:
- adds r4, 0x1
- cmp r4, 0x6
- ble _0819692C
- cmp r5, 0
- beq _081969AC
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- bl __modsi3
- adds r5, r0, 0
- movs r4, 0
- b _08196962
-_0819695E:
- subs r5, 0x1
-_08196960:
- adds r4, 0x1
-_08196962:
- cmp r4, 0x6
- bgt _08196980
- lsls r0, r4, 16
- lsrs r0, 16
- mov r1, sp
- bl sub_8196E04
- ldr r1, =gUnknown_0203CD88
- strh r0, [r1, 0x2]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _08196960
- cmp r5, 0
- bne _0819695E
-_08196980:
- ldr r0, =gUnknown_0203CD88
- strh r4, [r0]
- ldr r1, =gUnknown_0860DEB8
- adds r0, r7, r6
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0xC]
- subs r2, r0, 0x1
- ldr r1, =gUnknown_0860EA34
- ldr r0, [sp]
- lsls r0, 2
- adds r0, r1
- lsls r1, r2, 3
- ldr r0, [r0]
- adds r0, r1
- b _081969D0
- .pool
-_081969AC:
- ldr r1, =gUnknown_0860DEB8
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrh r2, [r0, 0xA]
- lsrs r1, r2, 8
- subs r1, 0x1
- str r1, [sp]
- movs r0, 0xFF
- ands r0, r2
- subs r2, r0, 0x1
- ldr r0, =gUnknown_0860EA34
- lsls r1, 2
- adds r1, r0
- lsls r2, 3
- ldr r0, [r1]
- adds r0, r2
-_081969D0:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196910
-
- thumb_func_start sub_81969E0
-sub_81969E0: @ 81969E0
- push {r4,r5,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- adds r1, r4, 0x4
- bl sub_81969FC
- ldr r1, [r4]
- adds r0, r5, 0
- bl StringExpandPlaceholders
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81969E0
-
- thumb_func_start sub_81969FC
-sub_81969FC: @ 81969FC
- push {r4-r7,lr}
- adds r7, r0, 0
- adds r6, r1, 0
- movs r4, 0
- ldr r5, =gUnknown_0860EFA0
-_08196A06:
- adds r1, r6, r4
- movs r0, 0
- ldrsb r0, [r1, r0]
- cmp r0, 0
- blt _08196A1A
- adds r1, r0, 0
- ldr r2, [r5]
- adds r0, r7, 0
- bl sub_8196A2C
-_08196A1A:
- adds r5, 0x4
- adds r4, 0x1
- cmp r4, 0x2
- ble _08196A06
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81969FC
-
- thumb_func_start sub_8196A2C
-sub_8196A2C: @ 8196A2C
- push {lr}
- ldr r3, =gUnknown_0860EFAC
- lsls r1, 2
- adds r1, r3
- ldr r3, [r1]
- adds r1, r2, 0
- bl _call_via_r3
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196A2C
-
- thumb_func_start sub_8196A44
-sub_8196A44: @ 8196A44
- push {r4-r6,lr}
- adds r5, r1, 0
- ldr r2, =gUnknown_0860DEB8
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r4, [r1]
- movs r2, 0
- ldr r3, =gUnknown_0860EFC4
- adds r6, r3, 0
-_08196A5A:
- lsls r1, r2, 3
- ldrh r0, [r3]
- cmp r0, r4
- bne _08196A78
- adds r0, r6, 0x4
- adds r0, r1, r0
- ldr r1, [r0]
- adds r0, r5, 0
- bl StringCopy
- b _08196A90
- .pool
-_08196A78:
- adds r3, 0x8
- adds r2, 0x1
- cmp r2, 0x5
- bls _08196A5A
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- ldr r0, =gTrainers + 0x4 @ name offset
- adds r1, r0
- adds r0, r5, 0
- bl StringCopy
-_08196A90:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196A44
-
- thumb_func_start sub_8196A9C
-sub_8196A9C: @ 8196A9C
- push {r4,lr}
- adds r4, r1, 0
- bl sub_819672C
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- movs r2, 0
- bl GetMapName
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8196A9C
-
- thumb_func_start sub_8196AB8
-sub_8196AB8: @ 8196AB8
- push {lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x13
- bgt _08196AD4
- movs r0, 0
- b _08196B4A
-_08196AD4:
- adds r0, r1, 0
- subs r0, 0x14
- cmp r0, 0x13
- bhi _08196AE0
- movs r0, 0x1
- b _08196B4A
-_08196AE0:
- adds r0, r1, 0
- subs r0, 0x28
- cmp r0, 0x9
- bhi _08196AEC
- movs r0, 0x2
- b _08196B4A
-_08196AEC:
- adds r0, r1, 0
- subs r0, 0x32
- cmp r0, 0x9
- bhi _08196AF8
- movs r0, 0x3
- b _08196B4A
-_08196AF8:
- adds r0, r1, 0
- subs r0, 0x3C
- cmp r0, 0x9
- bhi _08196B04
- movs r0, 0x4
- b _08196B4A
-_08196B04:
- adds r0, r1, 0
- subs r0, 0x46
- cmp r0, 0x9
- bhi _08196B10
- movs r0, 0x5
- b _08196B4A
-_08196B10:
- adds r0, r1, 0
- subs r0, 0x50
- cmp r0, 0x4
- bhi _08196B1C
- movs r0, 0x6
- b _08196B4A
-_08196B1C:
- adds r0, r1, 0
- subs r0, 0x55
- cmp r0, 0x4
- bhi _08196B28
- movs r0, 0x7
- b _08196B4A
-_08196B28:
- adds r0, r1, 0
- subs r0, 0x5A
- cmp r0, 0x3
- bhi _08196B34
- movs r0, 0x8
- b _08196B4A
-_08196B34:
- adds r0, r1, 0
- subs r0, 0x5E
- cmp r0, 0x3
- bhi _08196B40
- movs r0, 0x9
- b _08196B4A
-_08196B40:
- cmp r1, 0x62
- beq _08196B48
- movs r0, 0xB
- b _08196B4A
-_08196B48:
- movs r0, 0xA
-_08196B4A:
- pop {r1}
- bx r1
- thumb_func_end sub_8196AB8
-
- thumb_func_start sub_8196B50
-sub_8196B50: @ 8196B50
- push {lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x3B
- bgt _08196B6C
- movs r0, 0
- b _08196B92
-_08196B6C:
- adds r0, r1, 0
- subs r0, 0x3C
- cmp r0, 0x1D
- bhi _08196B78
- movs r0, 0x1
- b _08196B92
-_08196B78:
- adds r0, r1, 0
- subs r0, 0x5A
- cmp r0, 0x4
- bhi _08196B84
- movs r0, 0x2
- b _08196B92
-_08196B84:
- adds r0, r1, 0
- subs r0, 0x5F
- cmp r0, 0x3
- bls _08196B90
- movs r0, 0x4
- b _08196B92
-_08196B90:
- movs r0, 0x3
-_08196B92:
- pop {r1}
- bx r1
- thumb_func_end sub_8196B50
-
- thumb_func_start sub_8196B98
-sub_8196B98: @ 8196B98
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- adds r2, r0, 0
- mov r8, r1
- movs r3, 0
- ldr r0, =gWildMonHeaders
- ldrb r1, [r0]
- adds r7, r0, 0
- cmp r1, 0xFF
- beq _08196C5C
- ldr r1, =gRematchTable
- lsls r0, r2, 4
- adds r2, r0, r1
- ldrh r4, [r2, 0xA]
- adds r1, r7, 0
-_08196BBA:
- ldrb r0, [r1]
- cmp r0, r4
- bne _08196BC8
- ldrb r0, [r1, 0x1]
- ldrh r5, [r2, 0xC]
- cmp r0, r5
- beq _08196BD2
-_08196BC8:
- adds r1, 0x14
- adds r3, 0x1
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08196BBA
-_08196BD2:
- adds r1, r7, 0
- lsls r0, r3, 2
- adds r0, r3
- lsls r5, r0, 2
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _08196C5C
- movs r6, 0
- adds r0, r1, 0x4
- adds r0, r5, r0
- ldr r4, [r0]
- cmp r4, 0
- beq _08196C02
- bl sub_8196AB8
- lsls r0, 24
- mov r2, sp
- ldr r1, [r4, 0x4]
- lsrs r0, 22
- adds r0, r1
- ldrh r0, [r0, 0x2]
- strh r0, [r2]
- movs r6, 0x1
-_08196C02:
- adds r0, r7, 0
- adds r0, 0x8
- adds r0, r5, r0
- ldr r4, [r0]
- cmp r4, 0
- beq _08196C26
- bl sub_8196B50
- lsls r0, 24
- lsls r1, r6, 1
- mov r3, sp
- adds r2, r3, r1
- ldr r1, [r4, 0x4]
- lsrs r0, 22
- adds r0, r1
- ldrh r0, [r0, 0x2]
- strh r0, [r2]
- adds r6, 0x1
-_08196C26:
- cmp r6, 0
- beq _08196C5C
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __modsi3
- lsls r0, 1
- add r0, sp
- ldrh r1, [r0]
- movs r0, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- mov r0, r8
- bl StringCopy
- b _08196C62
- .pool
-_08196C5C:
- movs r0, 0xFF
- mov r5, r8
- strb r0, [r5]
-_08196C62:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8196B98
-
- thumb_func_start sub_8196C70
-sub_8196C70: @ 8196C70
- push {r4-r7,lr}
- adds r7, r1, 0
- ldr r2, =gUnknown_0860DEB8
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1]
- bl GetLastBeatenRematchTrainerId
- lsls r0, 16
- lsrs r0, 16
- ldr r5, =gTrainers
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r0, r5, 0
- adds r0, 0x24
- adds r0, r4, r0
- ldr r6, [r0]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r4, r5
- adds r1, r4, 0
- adds r1, 0x20
- ldrb r1, [r1]
- bl __modsi3
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4]
- cmp r1, 0x1
- beq _08196CD4
- cmp r1, 0x1
- ble _08196CC2
- cmp r1, 0x2
- beq _08196CD0
- cmp r1, 0x3
- beq _08196CD4
-_08196CC2:
- lsls r0, 3
- b _08196CD6
- .pool
-_08196CD0:
- lsls r0, 3
- b _08196CD6
-_08196CD4:
- lsls r0, 4
-_08196CD6:
- adds r0, r6
- ldrh r1, [r0, 0x4]
- movs r0, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- adds r0, r7, 0
- bl StringCopy
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196C70
-
- thumb_func_start sub_8196CF4
-sub_8196CF4: @ 8196CF4
- push {lr}
- adds r0, r1, 0
- ldr r2, =gUnknown_0860EFF4
- ldr r1, =gUnknown_0203CD88
- ldrh r1, [r1]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196CF4
-
- thumb_func_start sub_8196D14
-sub_8196D14: @ 8196D14
- push {r4-r6,lr}
- adds r5, r1, 0
- movs r4, 0
- ldr r0, =gUnknown_0203CD88
- ldrh r1, [r0, 0x2]
- adds r6, r0, 0
- cmp r1, 0
- beq _08196D34
-_08196D24:
- adds r0, r1, 0
- movs r1, 0xA
- bl __divsi3
- adds r1, r0, 0
- adds r4, 0x1
- cmp r1, 0
- bne _08196D24
-_08196D34:
- ldrh r1, [r6, 0x2]
- lsls r3, r4, 24
- lsrs r3, 24
- adds r0, r5, 0
- movs r2, 0
- bl ConvertIntToDecimalStringN
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8196D14
-
- thumb_func_start sub_8196D4C
-sub_8196D4C: @ 8196D4C
- push {r4,r5,lr}
- movs r4, 0
- ldr r5, =gUnknown_0860F010
- b _08196D5C
- .pool
-_08196D58:
- adds r5, 0x2
- adds r4, 0x1
-_08196D5C:
- cmp r4, 0x7
- bhi _08196D6C
- ldrh r0, [r5]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08196D58
-_08196D6C:
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8196D4C
-
- thumb_func_start sub_8196D74
-sub_8196D74: @ 8196D74
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- bl sub_8196D4C
- cmp r0, 0x4
- ble _08196DF4
- bl RtcGetLocalDayCount
- adds r4, r0, 0
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- adds r0, 0xA
- bl GetTrainerId
- adds r6, r0, 0
- ldr r0, =0x0000ffff
- ands r6, r0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002e6a
- adds r0, r1
- ldrh r5, [r0]
- bl sub_8196748
- mov r9, r0
- movs r0, 0xD
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- movs r1, 0xA
- bl __divsi3
- mov r8, r0
- movs r0, 0x9
- bl GetGameStat
- eors r4, r5
- eors r5, r0
- adds r4, r5
- eors r4, r6
- adds r0, r4, 0
- mov r1, r8
- bl __modsi3
- cmp r0, r9
- bge _08196DF4
- bl sub_8196774
- cmp r0, r7
- bne _08196DF4
- movs r0, 0x1
- b _08196DF6
- .pool
-_08196DF4:
- movs r0, 0
-_08196DF6:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8196D74
-
- thumb_func_start sub_8196E04
-sub_8196E04: @ 8196E04
- push {r4-r6,lr}
- adds r5, r1, 0
- lsls r0, 16
- lsrs r0, 16
- movs r4, 0
- cmp r0, 0x6
- bls _08196E14
- b _08196F7E
-_08196E14:
- lsls r0, 2
- ldr r1, =_08196E24
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08196E24:
- .4byte _08196E9C
- .4byte _08196E40
- .4byte _08196ED0
- .4byte _08196F38
- .4byte _08196E74
- .4byte _08196F04
- .4byte _08196F60
-_08196E40:
- movs r3, 0
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000d14
- adds r0, r1
-_08196E4A:
- lsls r1, r3, 2
- adds r3, 0x1
- adds r1, r0
- movs r2, 0x1
-_08196E52:
- ldrh r6, [r1]
- cmp r4, r6
- bcs _08196E5A
- ldrh r4, [r1]
-_08196E5A:
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _08196E52
- cmp r3, 0x1
- ble _08196E4A
- movs r0, 0x3
- b _08196F7C
- .pool
-_08196E74:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000e08
- adds r0, r1
- movs r3, 0x1
-_08196E7E:
- ldrh r6, [r0]
- cmp r4, r6
- bcs _08196E86
- ldrh r4, [r0]
-_08196E86:
- adds r0, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _08196E7E
- movs r0, 0x4
- b _08196F7C
- .pool
-_08196E9C:
- movs r3, 0
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- movs r1, 0xCF
- lsls r1, 4
- adds r0, r1
-_08196EA8:
- lsls r1, r3, 2
- adds r3, 0x1
- adds r1, r0
- movs r2, 0x1
-_08196EB0:
- ldrh r6, [r1]
- cmp r4, r6
- bcs _08196EB8
- ldrh r4, [r1]
-_08196EB8:
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _08196EB0
- movs r2, 0x2
- cmp r3, 0x3
- ble _08196EA8
- str r2, [r5]
- b _08196F7E
- .pool
-_08196ED0:
- movs r3, 0
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- movs r1, 0xDD
- lsls r1, 4
- adds r0, r1
-_08196EDC:
- lsls r1, r3, 2
- adds r3, 0x1
- adds r1, r0
- movs r2, 0x1
-_08196EE4:
- ldrh r6, [r1]
- cmp r4, r6
- bcs _08196EEC
- ldrh r4, [r1]
-_08196EEC:
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _08196EE4
- movs r2, 0x2
- cmp r3, 0x1
- ble _08196EDC
- str r2, [r5]
- b _08196F7E
- .pool
-_08196F04:
- movs r3, 0
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000dea
- adds r0, r1
-_08196F0E:
- lsls r1, r3, 2
- adds r3, 0x1
- adds r1, r0
- movs r2, 0x1
-_08196F16:
- ldrh r6, [r1]
- cmp r4, r6
- bcs _08196F1E
- ldrh r4, [r1]
-_08196F1E:
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _08196F16
- movs r2, 0x2
- cmp r3, 0x1
- ble _08196F0E
- str r2, [r5]
- b _08196F7E
- .pool
-_08196F38:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000dde
- adds r0, r1
- movs r3, 0x1
-_08196F42:
- ldrh r6, [r0]
- cmp r4, r6
- bcs _08196F4A
- ldrh r4, [r0]
-_08196F4A:
- adds r0, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _08196F42
- movs r3, 0x2
- str r3, [r5]
- b _08196F7E
- .pool
-_08196F60:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000e1e
- adds r0, r1
- movs r3, 0x1
-_08196F6A:
- ldrh r6, [r0]
- cmp r4, r6
- bcs _08196F72
- ldrh r4, [r0]
-_08196F72:
- adds r0, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _08196F6A
- movs r0, 0x5
-_08196F7C:
- str r0, [r5]
-_08196F7E:
- adds r0, r4, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8196E04
-
- thumb_func_start sub_8196F90
-sub_8196F90: @ 8196F90
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x9
- bhi _08196F9E
- movs r0, 0
- b _0819707A
-_08196F9E:
- cmp r4, 0x13
- bhi _08196FA6
- movs r0, 0x1
- b _0819707A
-_08196FA6:
- cmp r4, 0x1D
- bhi _08196FAE
- movs r0, 0x2
- b _0819707A
-_08196FAE:
- cmp r4, 0x27
- bhi _08196FB6
- movs r0, 0x3
- b _0819707A
-_08196FB6:
- cmp r4, 0x31
- bhi _08196FBE
- movs r0, 0x4
- b _0819707A
-_08196FBE:
- cmp r4, 0x3B
- bhi _08196FC6
- movs r0, 0x5
- b _0819707A
-_08196FC6:
- cmp r4, 0x45
- bhi _08196FCE
- movs r0, 0x6
- b _0819707A
-_08196FCE:
- cmp r4, 0x4F
- bhi _08196FD6
- movs r0, 0x7
- b _0819707A
-_08196FD6:
- cmp r4, 0x59
- bhi _08196FDE
- movs r0, 0x8
- b _0819707A
-_08196FDE:
- cmp r4, 0x63
- bhi _08196FE6
- movs r0, 0x9
- b _0819707A
-_08196FE6:
- cmp r4, 0x6D
- bhi _08196FEE
- movs r0, 0xA
- b _0819707A
-_08196FEE:
- cmp r4, 0x77
- bhi _08196FF6
- movs r0, 0xB
- b _0819707A
-_08196FF6:
- cmp r4, 0x81
- bhi _08196FFE
- movs r0, 0xC
- b _0819707A
-_08196FFE:
- cmp r4, 0x8B
- bhi _08197006
- movs r0, 0xD
- b _0819707A
-_08197006:
- cmp r4, 0x95
- bhi _0819700E
- movs r0, 0xE
- b _0819707A
-_0819700E:
- cmp r4, 0x9F
- bhi _08197016
- movs r0, 0xF
- b _0819707A
-_08197016:
- cmp r4, 0xA9
- bhi _0819701E
- movs r0, 0x10
- b _0819707A
-_0819701E:
- cmp r4, 0xB3
- bhi _08197026
- movs r0, 0x11
- b _0819707A
-_08197026:
- cmp r4, 0xBD
- bhi _0819702E
- movs r0, 0x12
- b _0819707A
-_0819702E:
- cmp r4, 0xC7
- bls _08197078
- movs r0, 0xCD
- lsls r0, 1
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _08197050
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
-_08197050:
- ldr r0, =0x00000199
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _0819706C
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
-_0819706C:
- cmp r4, 0xC7
- bls _08197078
- movs r0, 0x14
- b _0819707A
- .pool
-_08197078:
- movs r0, 0x13
-_0819707A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8196F90
-
- thumb_func_start sub_8197080
-sub_8197080: @ 8197080
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r8, r0
- movs r0, 0xFA
- lsls r0, 2
- bl Alloc
- adds r7, r0, 0
- cmp r7, 0
- bne _081970A2
- movs r0, 0xFF
- mov r1, r8
- strb r0, [r1]
- b _0819715C
-_081970A2:
- movs r0, 0
- bl GetHoennPokedexCount
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0x1
- bl GetHoennPokedexCount
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =gStringVar1
- mov r10, r0
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r1, =gStringVar2
- mov r9, r1
- mov r0, r9
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r0, r6, 0
- bl sub_8196F90
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gUnknown_082A5C9C
- adds r0, r7, 0
- bl StringCopy
- adds r5, r0, 0
- movs r6, 0xFB
- strb r6, [r5]
- adds r5, 0x1
- ldr r1, =gUnknown_082A5D2C
- adds r0, r5, 0
- bl StringCopy
- adds r5, r0, 0
- strb r6, [r5]
- adds r5, 0x1
- ldr r0, =gUnknown_0860F020
- lsls r4, 2
- adds r4, r0
- ldr r1, [r4]
- adds r0, r5, 0
- bl StringCopy
- mov r0, r8
- adds r1, r7, 0
- bl StringExpandPlaceholders
- adds r5, r0, 0
- bl IsNationalPokedexEnabled
- cmp r0, 0
- beq _08197156
- strb r6, [r5]
- adds r5, 0x1
- movs r0, 0
- bl GetNationalPokedexCount
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0x1
- bl GetNationalPokedexCount
- lsls r0, 16
- lsrs r6, r0, 16
- mov r0, r10
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- mov r0, r9
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r1, =gUnknown_082A633D
- adds r0, r5, 0
- bl StringExpandPlaceholders
-_08197156:
- adds r0, r7, 0
- bl Free
-_0819715C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
-
- thumb_func_end sub_8197080
- thumb_func_start sub_8197184
-sub_8197184: @ 8197184
- push {r4,r5,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl GetWindowAttribute
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0860EA6C
- movs r2, 0x80
- lsls r2, 1
- lsls r4, 16
- lsrs r4, 16
- adds r3, r4, 0
- bl LoadBgTiles
- ldr r0, =gUnknown_0860EA4C
- lsls r5, 20
- lsrs r5, 16
- adds r1, r5, 0
- movs r2, 0x20
- bl LoadPalette
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8197184
-
- thumb_func_start sub_81971C4
-sub_81971C4: @ 81971C4
- push {lr}
- bl sub_819645C
- pop {r0}
- bx r0
- thumb_func_end sub_81971C4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index edaafc838..d73293648 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -5,3144 +5,6 @@
.text
- thumb_func_start sub_80F57C4
-sub_80F57C4: @ 80F57C4
- push {r4,lr}
- movs r0, 0
- movs r1, 0x40
- bl SetGpuReg
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0858D888
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- movs r4, 0
-_080F57E0:
- lsls r0, r4, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203A034
- ldr r1, [r1]
- lsls r2, r4, 2
- adds r1, 0xC
- adds r1, r2
- ldr r1, [r1]
- bl SetBgTilemapBuffer
- adds r4, 0x1
- cmp r4, 0x3
- ble _080F57E0
- ldr r0, =gUnknown_0858D898
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r0, 0x4C
- movs r1, 0
- bl SetGpuReg
- ldr r1, =0x00003f3f
- movs r0, 0x48
- bl SetGpuReg
- ldr r1, =0x00003f2e
- movs r0, 0x4A
- bl SetGpuReg
- movs r0, 0x40
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x44
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x42
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x46
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r1, 0xFF
- lsls r1, 8
- movs r0, 0
- bl SetGpuRegBits
- ldr r0, =gBattle_BG0_X
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gBattle_BG0_Y
- strh r1, [r0]
- ldr r0, =gBattle_BG1_X
- strh r1, [r0]
- ldr r0, =gBattle_BG1_Y
- strh r1, [r0]
- ldr r0, =gBattle_BG2_X
- strh r1, [r0]
- ldr r0, =gBattle_BG2_Y
- strh r1, [r0]
- ldr r0, =gBattle_BG3_X
- strh r1, [r0]
- ldr r0, =gBattle_BG3_Y
- strh r1, [r0]
- ldr r0, =gBattle_WIN0H
- strh r1, [r0]
- ldr r0, =gBattle_WIN0V
- strh r1, [r0]
- ldr r0, =gBattle_WIN1H
- strh r1, [r0]
- ldr r0, =gBattle_WIN1V
- strh r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F57C4
-
- thumb_func_start sub_80F591C
-sub_80F591C: @ 80F591C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- ldr r0, =gUnknown_08C19588
- movs r1, 0xC0
- lsls r1, 19
- bl LZDecompressVram
- ldr r1, =gUnknown_08C1A12C
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- ldr r1, =gUnknown_08C1A000
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- ldr r1, =gUnknown_08C19EEC
- movs r0, 0
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- bl sub_80F71C8
- ldr r0, =gUnknown_08C1A2B4
- movs r2, 0x80
- lsls r2, 2
- movs r1, 0
- bl LoadCompressedPalette
- ldr r0, =gUnknown_0858D6B0
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- movs r7, 0
- movs r0, 0x1
- mov r8, r0
-_080F5976:
- lsls r5, r7, 24
- lsrs r5, 24
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_80F7310
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_80F7364
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- movs r6, 0
- lsls r1, r7, 1
- adds r2, r7, 0x1
- str r2, [sp, 0xC]
- lsls r4, 24
- asrs r4, 24
- mov r10, r4
- adds r1, r7
- adds r0, r1, 0x6
- lsls r0, 24
- mov r9, r0
- adds r1, 0x5
- lsls r7, r1, 24
-_080F59B0:
- ldr r1, =0x000060b2
- cmp r6, r10
- bge _080F59B8
- adds r1, 0x2
-_080F59B8:
- ldr r4, [sp, 0x8]
- lsls r0, r4, 24
- asrs r0, 24
- adds r2, r0, 0
- cmp r0, 0
- bge _080F59C6
- negs r2, r0
-_080F59C6:
- cmp r6, r2
- bge _080F59F4
- ldr r5, =0x000060a4
- cmp r0, 0
- bge _080F59F6
- adds r5, 0x2
- b _080F59F6
- .pool
-_080F59F4:
- ldr r5, =0x000060a2
-_080F59F6:
- adds r4, r6, 0
- adds r4, 0x13
- lsls r4, 24
- lsrs r4, 24
- mov r0, r8
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x1
- adds r2, r4, 0
- lsrs r3, r7, 24
- bl FillBgTilemapBufferRect_Palette0
- mov r2, r8
- str r2, [sp]
- str r2, [sp, 0x4]
- movs r0, 0x1
- adds r1, r5, 0
- adds r2, r4, 0
- mov r4, r9
- lsrs r3, r4, 24
- bl FillBgTilemapBufferRect_Palette0
- adds r6, 0x1
- cmp r6, 0x9
- ble _080F59B0
- ldr r7, [sp, 0xC]
- cmp r7, 0x3
- ble _080F5976
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F591C
-
- thumb_func_start sub_80F5A74
-sub_80F5A74: @ 80F5A74
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- lsls r1, r5, 6
- ldr r0, =gContestMons
- adds r7, r1, r0
- ldr r6, =gDisplayedStringBattle
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- cmp r5, r0
- bne _080F5A96
- ldr r1, =gText_ColorDarkGrey
- adds r0, r6, 0
- bl StringCopy
- adds r6, r0, 0
-_080F5A96:
- adds r1, r7, 0x2
- adds r0, r6, 0
- bl StringCopy
- ldr r4, =gDisplayedStringBattle
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_80F7ED0
- ldr r1, =gText_Slash
- adds r0, r6, 0
- bl StringCopy
- adds r1, r7, 0
- adds r1, 0xD
- adds r0, r6, 0
- bl StringAppend
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x32
- bl sub_80F7ED0
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5A74
-
- thumb_func_start sub_80F5AE0
-sub_80F5AE0: @ 80F5AE0
- push {r4,lr}
- movs r4, 0
-_080F5AE4:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80F5A74
- adds r4, 0x1
- cmp r4, 0x3
- ble _080F5AE4
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80F5AE0
-
- thumb_func_start sub_80F5B00
-sub_80F5B00: @ 80F5B00
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r5, =gPaletteFade
- ldrb r0, [r5, 0x8]
- movs r6, 0x80
- orrs r0, r6
- strb r0, [r5, 0x8]
- movs r0, 0
- bl SetVBlankCallback
- bl sub_80F7DF4
- bl sub_80F57C4
- bl ScanlineEffect_Clear
- bl ResetPaletteFade
- bl ResetSpriteData
- bl ResetTasks
- bl FreeAllSpritePalettes
- bl sub_80F591C
- bl sub_80F6A9C
- movs r0, 0
- movs r1, 0x1
- bl sub_80F6A64
- bl sub_80F5AE0
- ldr r4, =gUnknown_0203A034
- ldr r0, [r4]
- ldr r0, [r0]
- movs r1, 0
- movs r2, 0x18
- bl memset
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- movs r1, 0
- movs r2, 0x50
- bl memset
- bl sub_80F6DC0
- bl sub_80F6AE8
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldrb r1, [r5, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r5, 0x8]
- ldr r0, =sub_80F5CE4
- movs r1, 0x5
- bl CreateTask
- ldr r1, [r4]
- ldr r1, [r1]
- strb r0, [r1, 0x2]
- ldr r0, =sub_80F5C00
- bl SetMainCallback2
- ldr r1, =gBattle_WIN1H
- movs r0, 0xF0
- strh r0, [r1]
- ldr r1, =gBattle_WIN1V
- ldr r2, =0x000080a0
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, =sub_80F68B4
- movs r1, 0x14
- bl CreateTask
- bl sub_80F7880
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080F5BE4
- ldrb r0, [r5, 0x8]
- orrs r0, r6
- strb r0, [r5, 0x8]
- b _080F5BEC
- .pool
-_080F5BE4:
- movs r0, 0xDF
- lsls r0, 1
- bl PlayBGM
-_080F5BEC:
- ldr r0, =sub_80F5C24
- bl SetVBlankCallback
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5B00
-
- thumb_func_start sub_80F5C00
-sub_80F5C00: @ 80F5C00
- push {lr}
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTasks
- bl UpdatePaletteFade
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- pop {r0}
- bx r0
- thumb_func_end sub_80F5C00
-
- thumb_func_start sub_80F5C24
-sub_80F5C24: @ 80F5C24
- push {lr}
- ldr r0, =gBattle_BG0_X
- ldrh r1, [r0]
- movs r0, 0x10
- bl SetGpuReg
- ldr r0, =gBattle_BG0_Y
- ldrh r1, [r0]
- movs r0, 0x12
- bl SetGpuReg
- ldr r0, =gBattle_BG1_X
- ldrh r1, [r0]
- movs r0, 0x14
- bl SetGpuReg
- ldr r0, =gBattle_BG1_Y
- ldrh r1, [r0]
- movs r0, 0x16
- bl SetGpuReg
- ldr r0, =gBattle_BG2_X
- ldrh r1, [r0]
- movs r0, 0x18
- bl SetGpuReg
- ldr r0, =gBattle_BG2_Y
- ldrh r1, [r0]
- movs r0, 0x1A
- bl SetGpuReg
- ldr r0, =gBattle_BG3_X
- ldrh r1, [r0]
- movs r0, 0x1C
- bl SetGpuReg
- ldr r0, =gBattle_BG3_Y
- ldrh r1, [r0]
- movs r0, 0x1E
- bl SetGpuReg
- ldr r0, =gBattle_WIN0H
- ldrh r1, [r0]
- movs r0, 0x40
- bl SetGpuReg
- ldr r0, =gBattle_WIN0V
- ldrh r1, [r0]
- movs r0, 0x44
- bl SetGpuReg
- ldr r0, =gBattle_WIN1H
- ldrh r1, [r0]
- movs r0, 0x42
- bl SetGpuReg
- ldr r0, =gBattle_WIN1V
- ldrh r1, [r0]
- movs r0, 0x46
- bl SetGpuReg
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- bl ScanlineEffect_InitHBlankDmaTransfer
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5C24
-
- thumb_func_start sub_80F5CE4
-sub_80F5CE4: @ 80F5CE4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r3, =gIsLinkContest
- ldrb r1, [r3]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080F5CF8
- b _080F5E2E
-_080F5CF8:
- ldr r2, =gTasks
- lsls r1, r6, 2
- adds r0, r1, r6
- lsls r0, 3
- adds r4, r0, r2
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- adds r7, r1, 0
- cmp r0, 0x1
- beq _080F5DE0
- cmp r0, 0x1
- bgt _080F5D20
- cmp r0, 0
- beq _080F5D2A
- b _080F5E2E
- .pool
-_080F5D20:
- cmp r0, 0x2
- beq _080F5DF4
- cmp r0, 0x3
- beq _080F5E0A
- b _080F5E2E
-_080F5D2A:
- bl sub_80DBED4
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F5D58
- movs r0, 0x23
- bl IncrementGameStat
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x8
- strh r0, [r1]
- bl InterviewBefore
- ldr r0, =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _080F5D58
- bl InterviewAfter
-_080F5D58:
- movs r0, 0x2
- bl sub_813BADC
- ldr r0, =gSpecialVar_ContestRank
- ldrb r0, [r0]
- bl sub_80DEDA8
- movs r0, 0xFE
- bl sub_80DEDA8
- ldr r1, =gUnknown_02039F5C
- movs r0, 0x1
- strb r0, [r1]
- movs r0, 0xFE
- movs r1, 0
- bl sub_80DEFA8
- ldr r1, =gUnknown_02039F5D
- strb r0, [r1]
- ldr r5, =0x00004086
- adds r0, r5, 0
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0
- bl VarSet
- bl SetContinueGameWarpStatusToDynamicWarp
- movs r0, 0x1
- bl TrySavingData
- bl ClearContinueGameWarpStatus2
- adds r0, r5, 0
- adds r1, r4, 0
- bl VarSet
- ldr r0, =gTasks
- adds r1, r7, r6
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080F5E2E
- .pool
-_080F5DE0:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- ldrb r1, [r3]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080F5E2E
- movs r0, 0x64
- b _080F5E2C
-_080F5DF4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080F5EBA
- bl sub_800ADF8
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080F5EBA
-_080F5E0A:
- bl IsLinkTaskFinished
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080F5EBA
- movs r0, 0xDF
- lsls r0, 1
- bl PlayBGM
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
-_080F5E2C:
- strh r0, [r4, 0x8]
-_080F5E2E:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080F5EBA
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r1
- strh r2, [r4, 0x8]
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _080F5E78
- ldr r0, =gText_CommunicationStandby
- bl sub_80F707C
- ldr r0, =sub_80F5ED8
- b _080F5EB8
- .pool
-_080F5E78:
- movs r0, 0x24
- bl IncrementGameStat
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F5E92
- movs r0, 0x25
- bl IncrementGameStat
-_080F5E92:
- ldr r0, =gSpecialVar_ContestRank
- ldrb r0, [r0]
- bl sub_80DEDA8
- movs r0, 0xFE
- bl sub_80DEDA8
- ldr r0, =gUnknown_02039F5C
- strb r5, [r0]
- movs r0, 0xFE
- movs r1, 0
- bl sub_80DEFA8
- ldr r1, =gUnknown_02039F5D
- strb r0, [r1]
- movs r0, 0x2
- bl sub_813BADC
- ldr r0, =sub_80F5F74
-_080F5EB8:
- str r0, [r4]
-_080F5EBA:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5CE4
-
- thumb_func_start sub_80F5ED8
-sub_80F5ED8: @ 80F5ED8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _080F5EFC
- ldr r0, =sub_80F5F14
- movs r1, 0
- bl CreateTask
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =TaskDummy
- str r1, [r0]
-_080F5EFC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5ED8
-
- thumb_func_start sub_80F5F14
-sub_80F5F14: @ 80F5F14
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_80FC998
- ldr r2, =sub_80F5F30
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5F14
-
- thumb_func_start sub_80F5F30
-sub_80F5F30: @ 80F5F30
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080F5F60
- adds r0, r4, 0
- bl DestroyTask
- ldr r2, =gTasks
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r1, [r0, 0x2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldr r1, =sub_80F5F74
- str r1, [r0]
- bl sub_80F7144
-_080F5F60:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5F30
-
- thumb_func_start sub_80F5F74
-sub_80F5F74: @ 80F5F74
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r1, [r4, 0x8]
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080F5FC4
- ldr r0, =sub_80F68F0
- movs r1, 0x14
- bl CreateTask
- ldr r0, =gText_AnnouncingResults
- ldr r1, =gUnknown_0203A034
- ldr r1, [r1]
- ldr r1, [r1]
- ldrb r1, [r1]
- bl sub_80F6B78
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x88
- lsls r3, 3
- movs r1, 0x90
- movs r2, 0x78
- b _080F6016
- .pool
-_080F5FC4:
- cmp r0, 0x1
- bne _080F5FDC
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r0, 0
- bne _080F6048
- b _080F5FF0
- .pool
-_080F5FDC:
- cmp r0, 0x2
- bne _080F5FF8
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x15
- bne _080F6048
- movs r0, 0
-_080F5FF0:
- strh r0, [r4, 0xA]
- adds r0, r1, 0x1
- strh r0, [r4, 0x8]
- b _080F6048
-_080F5FF8:
- cmp r0, 0x3
- bne _080F6030
- ldr r0, =gText_PreliminaryResults
- ldr r1, =gUnknown_0203A034
- ldr r1, [r1]
- ldr r1, [r1]
- ldrb r1, [r1]
- bl sub_80F6B78
- lsls r0, 16
- asrs r0, 16
- ldr r2, =0x0000ffff
- movs r3, 0x88
- lsls r3, 3
- movs r1, 0x90
-_080F6016:
- bl sub_80F6E9C
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080F6048
- .pool
-_080F6030:
- cmp r0, 0x4
- bne _080F6048
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r0, 0x2
- bne _080F6048
- movs r0, 0
- strh r0, [r4, 0x8]
- ldr r0, =sub_80F6058
- str r0, [r4]
-_080F6048:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F5F74
-
- thumb_func_start sub_80F6058
-sub_80F6058: @ 80F6058
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080F60C0
- cmp r0, 0x1
- bgt _080F6080
- cmp r0, 0
- beq _080F6086
- b _080F60E6
- .pool
-_080F6080:
- cmp r0, 0x2
- beq _080F60D4
- b _080F60E6
-_080F6086:
- ldr r5, =gUnknown_0203A034
- ldr r0, [r5]
- ldr r0, [r0]
- ldrb r0, [r0, 0xA]
- cmp r0, 0
- bne _080F60E6
- ldrh r1, [r4, 0xC]
- adds r0, r1, 0x1
- strh r0, [r4, 0xC]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_80F7A80
- ldr r0, [r5]
- ldr r0, [r0]
- ldrb r0, [r0, 0x14]
- cmp r0, 0
- bne _080F60B8
- movs r0, 0x2
- strh r0, [r4, 0x8]
- b _080F60E6
- .pool
-_080F60B8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080F60E6
-_080F60C0:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x14]
- cmp r0, 0
- bne _080F60E6
- strh r0, [r4, 0x8]
- b _080F60E6
- .pool
-_080F60D4:
- movs r0, 0x88
- lsls r0, 3
- bl sub_80F6EF4
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0xC]
- ldr r0, =sub_80F60F0
- str r0, [r4]
-_080F60E6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6058
-
- thumb_func_start sub_80F60F0
-sub_80F60F0: @ 80F60F0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r4, r2, 0
- ldr r0, =gUnknown_0203A034
- ldr r5, [r0]
- ldr r0, [r5]
- ldrb r3, [r0, 0x4]
- cmp r3, 0
- bne _080F614C
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x15
- bne _080F615E
- strh r3, [r1, 0xA]
- ldr r0, =gText_Round2Results
- ldr r1, [r5]
- ldrb r1, [r1]
- bl sub_80F6B78
- lsls r0, 16
- asrs r0, 16
- ldr r2, =0x0000ffff
- movs r3, 0x88
- lsls r3, 3
- movs r1, 0x90
- bl sub_80F6E9C
- b _080F615E
- .pool
-_080F614C:
- cmp r3, 0x2
- bne _080F615E
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80F616C
- str r0, [r1]
-_080F615E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F60F0
-
- thumb_func_start sub_80F616C
-sub_80F616C: @ 80F616C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080F61D4
- cmp r0, 0x1
- bgt _080F6194
- cmp r0, 0
- beq _080F619A
- b _080F61F8
- .pool
-_080F6194:
- cmp r0, 0x2
- beq _080F61E8
- b _080F61F8
-_080F619A:
- ldr r5, =gUnknown_0203A034
- ldr r0, [r5]
- ldr r0, [r0]
- ldrb r0, [r0, 0xA]
- cmp r0, 0
- bne _080F61F8
- ldrh r1, [r4, 0xC]
- adds r0, r1, 0x1
- strh r0, [r4, 0xC]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x1
- bl sub_80F7A80
- ldr r0, [r5]
- ldr r0, [r0]
- ldrb r0, [r0, 0x14]
- cmp r0, 0
- bne _080F61CC
- movs r0, 0x2
- strh r0, [r4, 0x8]
- b _080F61F8
- .pool
-_080F61CC:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080F61F8
-_080F61D4:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x14]
- cmp r0, 0
- bne _080F61F8
- strh r0, [r4, 0x8]
- b _080F61F8
- .pool
-_080F61E8:
- movs r0, 0x88
- lsls r0, 3
- bl sub_80F6EF4
- movs r0, 0
- strh r0, [r4, 0x8]
- ldr r0, =sub_80F6204
- str r0, [r4]
-_080F61F8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F616C
-
- thumb_func_start sub_80F6204
-sub_80F6204: @ 80F6204
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x64
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r2, r1, 0
- cmp r0, 0x5
- bls _080F6226
- b _080F63F4
-_080F6226:
- lsls r0, 2
- ldr r1, =_080F6238
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F6238:
- .4byte _080F6250
- .4byte _080F6274
- .4byte _080F6292
- .4byte _080F62CC
- .4byte _080F6334
- .4byte _080F63E4
-_080F6250:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r0, 0
- beq _080F625E
- b _080F63F4
-_080F625E:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r2
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _080F63F4
- .pool
-_080F6274:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r2
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1F
- beq _080F628C
- b _080F63F4
-_080F628C:
- movs r0, 0
- strh r0, [r1, 0xA]
- b _080F63BC
-_080F6292:
- movs r4, 0
- lsls r6, r5, 2
- ldr r7, =gTasks
-_080F6298:
- ldr r0, =sub_80F73DC
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r7
- ldr r0, =gContestFinalStandings
- adds r0, r4, r0
- ldrb r0, [r0]
- strh r0, [r1, 0x8]
- strh r4, [r1, 0xA]
- adds r4, 0x1
- cmp r4, 0x3
- ble _080F6298
- b _080F63B4
- .pool
-_080F62CC:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x5]
- cmp r0, 0x4
- beq _080F62DA
- b _080F63F4
-_080F62DA:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r2
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1F
- beq _080F62F2
- b _080F63F4
-_080F62F2:
- movs r0, 0
- strh r0, [r4, 0xA]
- ldr r0, =sub_80F74BC
- movs r1, 0xA
- bl CreateTask
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r4, 0
- ldr r1, =gContestFinalStandings
- ldrb r0, [r1]
- cmp r0, 0
- beq _080F631C
-_080F630E:
- adds r4, 0x1
- cmp r4, 0x3
- bgt _080F631C
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F630E
-_080F631C:
- lsls r0, r4, 24
- lsrs r0, 24
- movs r1, 0xE
- bl sub_80F77E0
- b _080F63F4
- .pool
-_080F6334:
- lsls r1, r5, 2
- adds r0, r1, r5
- lsls r0, 3
- adds r2, r0, r2
- ldrh r0, [r2, 0xA]
- adds r0, 0x1
- strh r0, [r2, 0xA]
- lsls r0, 16
- asrs r0, 16
- adds r6, r1, 0
- cmp r0, 0x15
- bne _080F63F4
- movs r0, 0
- strh r0, [r2, 0xA]
- movs r4, 0
- ldr r1, =gContestFinalStandings
- ldrb r0, [r1]
- ldr r7, =gStringVar1
- ldr r2, =gContestMons + 13
- mov r8, r2
- cmp r0, 0
- beq _080F636E
-_080F6360:
- adds r4, 0x1
- cmp r4, 0x3
- bgt _080F636E
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F6360
-_080F636E:
- lsls r4, 6
- mov r0, r8
- adds r1, r4, r0
- adds r0, r7, 0
- bl StringCopy
- adds r0, r7, 0
- bl sub_81DB5AC
- ldr r0, =gStringVar2
- mov r1, r8
- subs r1, 0xB
- adds r4, r1
- adds r1, r4, 0
- bl StringCopy
- ldr r1, =gText_Var1sVar2Won
- mov r0, sp
- bl StringExpandPlaceholders
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r1, [r0]
- mov r0, sp
- bl sub_80F6B78
- lsls r0, 16
- asrs r0, 16
- ldr r2, =0x0000ffff
- movs r3, 0x88
- lsls r3, 3
- movs r1, 0x90
- bl sub_80F6E9C
-_080F63B4:
- ldr r0, =gTasks
- adds r1, r6, r5
- lsls r1, 3
- adds r1, r0
-_080F63BC:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080F63F4
- .pool
-_080F63E4:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x8]
- ldr r1, =sub_80F6404
- str r1, [r0]
-_080F63F4:
- add sp, 0x64
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6204
-
- thumb_func_start sub_80F6404
-sub_80F6404: @ 80F6404
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x5
- bls _080F6428
- b _080F669C
-_080F6428:
- lsls r0, 2
- ldr r1, =_080F643C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F643C:
- .4byte _080F6454
- .4byte _080F658C
- .4byte _080F65DC
- .4byte _080F65F0
- .4byte _080F6638
- .4byte _080F667C
-_080F6454:
- ldr r1, =gBattle_WIN0H
- movs r0, 0xF0
- strh r0, [r1]
- ldr r1, =gBattle_WIN0V
- ldr r3, =0x00005050
- adds r0, r3, 0
- strh r0, [r1]
- movs r2, 0
- ldr r1, =gContestFinalStandings
- ldrb r0, [r1]
- lsls r4, r7, 2
- mov r10, r4
- ldr r3, =gContestMons
- ldr r4, =gContestPlayerMonIndex
- mov r9, r4
- ldr r4, =gMonFrontPicTable
- mov r12, r4
- ldr r4, =gMonSpritesGfxPtr
- mov r8, r4
- cmp r0, 0
- beq _080F648C
-_080F647E:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080F648C
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F647E
-_080F648C:
- lsls r1, r2, 6
- adds r0, r1, r3
- ldrh r6, [r0]
- adds r0, r3, 0
- adds r0, 0x38
- adds r0, r1, r0
- ldr r4, [r0]
- adds r0, r3, 0
- adds r0, 0x3C
- adds r1, r0
- ldr r5, [r1]
- mov r0, r9
- ldrb r0, [r0]
- cmp r2, r0
- bne _080F64E0
- lsls r0, r6, 3
- add r0, r12
- mov r2, r8
- ldr r1, [r2]
- ldr r1, [r1, 0x8]
- adds r2, r6, 0
- adds r3, r4, 0
- bl HandleLoadSpecialPokePic_2
- b _080F64F2
- .pool
-_080F64E0:
- lsls r0, r6, 3
- add r0, r12
- mov r3, r8
- ldr r1, [r3]
- ldr r1, [r1, 0x8]
- adds r2, r6, 0
- adds r3, r4, 0
- bl HandleLoadSpecialPokePic_DontHandleDeoxys
-_080F64F2:
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r4, 0
- bl GetMonSpritePalStructFromOtIdPersonality
- adds r4, r0, 0
- bl LoadCompressedSpritePalette
- adds r0, r6, 0
- movs r1, 0x1
- bl SetMultiuseSpriteTemplateToPokemon
- ldr r0, =gMultiuseSpriteTemplate
- ldrh r1, [r4, 0x4]
- strh r1, [r0, 0x2]
- movs r1, 0x88
- lsls r1, 1
- movs r2, 0x50
- movs r3, 0xA
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r3, r2, r5
- strh r6, [r3, 0x30]
- ldrb r4, [r3, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r4
- strb r1, [r3, 0x5]
- adds r5, 0x1C
- adds r2, r5
- ldr r1, =sub_80F75A8
- str r1, [r2]
- ldr r1, =gUnknown_0203A034
- ldr r1, [r1]
- ldr r1, [r1]
- strb r0, [r1, 0x8]
- ldr r0, =gUnknown_0858D878
- bl LoadCompressedSpriteSheet
- ldr r0, =gUnknown_0858D880
- bl LoadCompressedSpritePalette
- ldr r0, =sub_80F7670
- movs r1, 0xA
- bl CreateTask
- ldr r0, =gTasks
- mov r4, r10
- adds r1, r4, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080F669C
- .pool
-_080F658C:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r4, r0, r4
- ldrh r0, [r4, 0xE]
- adds r0, 0x1
- strh r0, [r4, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _080F65A4
- b _080F669C
-_080F65A4:
- movs r0, 0
- strh r0, [r4, 0xE]
- ldrh r0, [r4, 0xC]
- adds r0, 0x2
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x20
- ble _080F65BA
- movs r0, 0x20
- strh r0, [r4, 0xC]
-_080F65BA:
- ldrb r2, [r4, 0xC]
- ldr r3, =gBattle_WIN0V
- movs r0, 0x50
- subs r0, r2
- lsls r0, 8
- adds r1, r2, 0
- adds r1, 0x50
- orrs r0, r1
- strh r0, [r3]
- cmp r2, 0x20
- bne _080F669C
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080F669C
- .pool
-_080F65DC:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x6]
- cmp r0, 0x1
- bne _080F669C
- b _080F6664
- .pool
-_080F65F0:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r3, r0, r4
- ldrh r0, [r3, 0xA]
- adds r0, 0x1
- strh r0, [r3, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x79
- bne _080F669C
- movs r0, 0
- strh r0, [r3, 0xA]
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r1, [r0, 0x8]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, =sub_80F7620
- str r1, [r0]
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
- b _080F669C
- .pool
-_080F6638:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x6]
- cmp r0, 0x2
- bne _080F669C
- ldr r3, =gBattle_WIN0V
- ldrh r0, [r3]
- lsrs r2, r0, 8
- adds r0, r2, 0x2
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x50
- bls _080F6656
- movs r2, 0x50
-_080F6656:
- lsls r1, r2, 8
- movs r0, 0xA0
- subs r0, r2
- orrs r1, r0
- strh r1, [r3]
- cmp r2, 0x50
- bne _080F669C
-_080F6664:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r4
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _080F669C
- .pool
-_080F667C:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x6]
- cmp r0, 0x2
- bne _080F669C
- movs r1, 0
- movs r0, 0x1
- strb r0, [r2, 0x9]
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r4
- strh r1, [r0, 0x8]
- ldr r1, =sub_80F66B4
- str r1, [r0]
-_080F669C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6404
-
- thumb_func_start sub_80F66B4
-sub_80F66B4: @ 80F66B4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r2, 0x1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _080F6702
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- adds r0, r2, 0
- ands r0, r1
- lsls r6, r7, 2
- cmp r0, 0
- bne _080F66F2
- ldr r5, =gContestMons
- movs r4, 0x3
-_080F66DA:
- ldrh r0, [r5]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x2
- bl GetSetPokedexFlag
- adds r5, 0x40
- subs r4, 0x1
- cmp r4, 0
- bge _080F66DA
-_080F66F2:
- ldr r1, =gTasks
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x1C]
- ldr r1, =sub_80F671C
- str r1, [r0]
-_080F6702:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F66B4
-
- thumb_func_start sub_80F671C
-sub_80F671C: @ 80F671C
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080F6760
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r4, r1, r0
- movs r1, 0x1C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080F676E
- ldr r0, =gText_CommunicationStandby
- bl sub_80F707C
- bl sub_800AC34
- ldr r0, =sub_80F677C
- str r0, [r4]
- b _080F676E
- .pool
-_080F6760:
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =task_repel
- str r0, [r1]
-_080F676E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F671C
-
- thumb_func_start sub_80F677C
-sub_80F677C: @ 80F677C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F67AC
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080F679A
- bl sub_800E084
-_080F679A:
- bl sub_80F7144
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =task_repel
- str r0, [r1]
-_080F67AC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F677C
-
- thumb_func_start task_repel
-task_repel: @ 80F67C4
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080F67E6
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- bl BravoTrainerPokemonProfile_BeforeInterview2
-_080F67E6:
- movs r0, 0
- str r0, [sp]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginHardwarePaletteFade
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80F6820
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task_repel
-
- thumb_func_start sub_80F6820
-sub_80F6820: @ 80F6820
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r5, r2, 0
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080F68A8
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080F6868
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x3]
- bl DestroyTask
- ldr r0, =0x0000ffff
- b _080F686E
- .pool
-_080F6868:
- cmp r0, 0x1
- bne _080F6884
- ldr r0, =0xffff0000
-_080F686E:
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- b _080F68A8
- .pool
-_080F6884:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- adds r0, r5, 0
- bl DestroyTask
- bl FreeAllWindowBuffers
- ldr r0, =CB2_ReturnToFieldContinueScriptPlayMapMusic
- bl SetMainCallback2
- bl sub_80F7E64
-_080F68A8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6820
-
- thumb_func_start sub_80F68B4
-sub_80F68B4: @ 80F68B4
- push {r4,r5,lr}
- ldr r2, =gBattle_BG3_X
- ldrh r3, [r2]
- adds r0, r3, 0x2
- strh r0, [r2]
- ldr r4, =gBattle_BG3_Y
- ldrh r5, [r4]
- adds r1, r5, 0x1
- strh r1, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xFF
- bls _080F68D4
- adds r0, r3, 0
- subs r0, 0xFD
- strh r0, [r2]
-_080F68D4:
- lsls r0, r1, 16
- lsrs r0, 16
- cmp r0, 0xFF
- bls _080F68E2
- adds r0, r5, 0
- subs r0, 0xFE
- strh r0, [r4]
-_080F68E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F68B4
-
- thumb_func_start sub_80F68F0
-sub_80F68F0: @ 80F68F0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r1
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2
- bne _080F6972
- movs r0, 0
- strh r0, [r2, 0x8]
- movs r3, 0xC
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _080F6924
- ldrh r0, [r2, 0xA]
- adds r0, 0x1
- b _080F6928
- .pool
-_080F6924:
- ldrh r0, [r2, 0xA]
- subs r0, 0x1
-_080F6928:
- strh r0, [r2, 0xA]
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r1
- movs r2, 0xA
- ldrsh r0, [r1, r2]
- cmp r0, 0x10
- bne _080F693E
- movs r0, 0x1
- b _080F6942
-_080F693E:
- cmp r0, 0
- bne _080F6944
-_080F6942:
- strh r0, [r1, 0xC]
-_080F6944:
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- ldrb r2, [r4, 0xA]
- ldr r3, =0x00002ede
- movs r0, 0x6B
- movs r1, 0x1
- bl BlendPalette
- ldrb r2, [r4, 0xA]
- ldr r3, =0x00007fff
- movs r0, 0x68
- movs r1, 0x1
- bl BlendPalette
- ldrb r2, [r4, 0xA]
- ldr r3, =0x000077be
- movs r0, 0x6E
- movs r1, 0x1
- bl BlendPalette
-_080F6972:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r3, 0xA
- ldrsh r4, [r0, r3]
- cmp r4, 0
- bne _080F69A4
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- strb r4, [r0, 0xA]
- b _080F69AE
- .pool
-_080F69A4:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- movs r0, 0x1
- strb r0, [r1, 0xA]
-_080F69AE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F68F0
-
- thumb_func_start sub_80F69B8
-sub_80F69B8: @ 80F69B8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- mov r8, r4
- lsls r2, 24
- lsrs r5, r2, 24
- lsls r3, 24
- lsrs r6, r3, 24
- ldr r0, =gContestPlayerMonIndex
- movs r2, 0
- ldrb r0, [r0]
- cmp r4, r0
- bne _080F69DE
- movs r2, 0x1
-_080F69DE:
- adds r0, r7, 0
- ldr r1, [sp, 0x28]
- bl GetMonIconPtr
- adds r3, r0, 0
- lsls r0, r5, 9
- adds r0, 0x80
- adds r3, r0
- cmp r6, 0
- beq _080F6A40
- lsls r1, r4, 9
- ldr r0, =0x06004000
- adds r1, r0
- movs r2, 0xC0
- lsls r2, 1
- adds r0, r3, 0
- movs r3, 0x1
- bl RequestDma3Copy
- adds r0, r4, 0
- adds r0, 0xA
- lsls r0, 28
- lsls r1, r4, 20
- movs r2, 0x80
- lsls r2, 18
- adds r1, r2
- orrs r1, r0
- lsrs r1, 16
- lsls r3, r4, 1
- adds r3, r4
- adds r3, 0x4
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x4
- str r0, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0x1
- str r0, [sp, 0xC]
- movs r2, 0x3
- bl WriteSequenceToBgTilemapBuffer
- b _080F6A54
- .pool
-_080F6A40:
- mov r0, r8
- lsls r1, r0, 9
- ldr r2, =0x06004000
- adds r1, r2
- movs r2, 0xC0
- lsls r2, 1
- adds r0, r3, 0
- movs r3, 0x1
- bl RequestDma3Copy
-_080F6A54:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F69B8
-
- thumb_func_start sub_80F6A64
-sub_80F6A64: @ 80F6A64
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- movs r5, 0
- ldr r4, =gContestMons
-_080F6A74:
- ldrh r0, [r4]
- lsls r1, r5, 24
- lsrs r1, 24
- ldr r2, [r4, 0x38]
- str r2, [sp]
- adds r2, r7, 0
- adds r3, r6, 0
- bl sub_80F69B8
- adds r4, 0x40
- adds r5, 0x1
- cmp r5, 0x3
- ble _080F6A74
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6A64
-
- thumb_func_start sub_80F6A9C
-sub_80F6A9C: @ 80F6A9C
- push {r4-r6,lr}
- movs r4, 0
- ldr r6, =gMonIconPaletteIndices
- movs r5, 0xA0
- lsls r5, 16
-_080F6AA6:
- ldr r1, =gContestMons
- lsls r0, r4, 6
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0
- bl GetIconSpecies
- lsls r0, 16
- lsrs r0, 16
- adds r0, r6
- ldrb r0, [r0]
- lsls r0, 5
- ldr r1, =gMonIconPalettes
- adds r0, r1
- lsrs r1, r5, 16
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0x80
- lsls r0, 13
- adds r5, r0
- adds r4, 0x1
- cmp r4, 0x3
- ble _080F6AA6
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6A9C
-
- thumb_func_start sub_80F6AE8
-sub_80F6AE8: @ 80F6AE8
- push {r4,lr}
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080F6B58
- bl sub_800E0E8
- movs r0, 0x8
- movs r1, 0x8
- bl CreateWirelessStatusIndicatorSprite
- ldr r4, =gSprites
- ldr r0, =gWirelessStatusIndicatorSpriteId
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x43
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, =gUnknown_0858D8E0
- bl LoadSpriteSheet
- adds r1, r0, 0
- lsls r1, 16
- movs r0, 0x1
- negs r0, r0
- lsrs r1, 11
- ldr r2, =0x06010000
- adds r1, r2
- movs r2, 0x80
- movs r3, 0x1
- bl RequestDma3Fill
- ldr r0, =gSpriteTemplate_858D8C8
- movs r1, 0x8
- movs r2, 0x8
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- movs r2, 0x8
- orrs r0, r2
- strb r0, [r1, 0x1]
-_080F6B58:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6AE8
-
- thumb_func_start sub_80F6B78
-sub_80F6B78: @ 80F6B78
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x44
- adds r5, r0, 0
- lsls r1, 24
- lsrs r7, r1, 24
- add r4, sp, 0x20
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x8
- bl memset
- movs r0, 0x1E
- strb r0, [r4, 0x3]
- movs r0, 0x2
- strb r0, [r4, 0x4]
- adds r0, r4, 0
- bl AddWindow
- lsls r6, r0, 24
- lsrs r4, r6, 24
- adds r0, r4, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0
- bl GetStringWidth
- adds r2, r0, 0
- adds r2, 0x9
- cmp r2, 0
- bge _080F6BC4
- adds r2, 0x7
-_080F6BC4:
- asrs r2, 3
- mov r10, r2
- cmp r2, 0x1E
- ble _080F6BD0
- movs r1, 0x1E
- mov r10, r1
-_080F6BD0:
- mov r1, r10
- lsls r2, r1, 3
- subs r2, r0
- lsrs r0, r2, 31
- adds r2, r0
- asrs r2, 1
- lsls r2, 24
- lsrs r2, 24
- ldr r0, =gUnknown_0858D8E8
- str r0, [sp]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0x4]
- str r5, [sp, 0x8]
- adds r0, r4, 0
- movs r1, 0x1
- movs r3, 0x1
- bl AddTextPrinterParameterized3
- adds r0, r4, 0
- movs r1, 0x7
- bl GetWindowAttribute
- mov r9, r0
- ldr r2, =gUnknown_0858D6D0
- mov r8, r2
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- ldr r3, =gSprites
- adds r1, r3
- ldrh r0, [r1, 0x4]
- lsls r0, 22
- lsrs r0, 17
- ldr r2, =0x06010000
- adds r0, r2
- str r0, [sp, 0xC]
- str r6, [sp, 0x38]
- mov r7, sp
- adds r7, 0x1C
- str r7, [sp, 0x2C]
- mov r0, r10
- adds r0, 0x2
- str r0, [sp, 0x30]
- movs r5, 0
- add r7, sp, 0x10
- mov r12, r7
- adds r6, r1, 0
- adds r6, 0x2E
- movs r4, 0x2
-_080F6C34:
- adds r0, r6, r5
- movs r7, 0
- ldrsh r1, [r0, r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x4]
- lsls r0, 22
- lsrs r0, 17
- adds r0, r2
- mov r1, r12
- adds r1, 0x4
- mov r12, r1
- subs r1, 0x4
- stm r1!, {r0}
- adds r5, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080F6C34
- mov r7, r8
- adds r7, 0x80
- mov r2, r8
- adds r2, 0x40
- str r2, [sp, 0x28]
- mov r0, r8
- adds r0, 0x20
- str r0, [sp, 0x3C]
- mov r1, r8
- adds r1, 0xA0
- str r1, [sp, 0x40]
- adds r2, 0x20
- str r2, [sp, 0x34]
- add r5, sp, 0xC
- movs r6, 0
- movs r4, 0x3
-_080F6C7C:
- str r6, [sp, 0x1C]
- ldm r5!, {r1}
- ldr r0, [sp, 0x2C]
- ldr r2, =0x05000100
- bl CpuSet
- subs r4, 0x1
- cmp r4, 0
- bge _080F6C7C
- ldr r5, [sp, 0xC]
- ldr r6, =0x04000008
- mov r0, r8
- adds r1, r5, 0
- adds r2, r6, 0
- bl CpuSet
- movs r0, 0x80
- lsls r0, 1
- adds r1, r5, r0
- adds r0, r7, 0
- adds r2, r6, 0
- bl CpuSet
- movs r2, 0x80
- lsls r2, 2
- adds r1, r5, r2
- adds r0, r7, 0
- adds r2, r6, 0
- bl CpuSet
- movs r7, 0xC0
- lsls r7, 2
- adds r1, r5, r7
- ldr r0, [sp, 0x28]
- adds r2, r6, 0
- bl CpuSet
- movs r4, 0
- cmp r4, r10
- bge _080F6D32
- adds r7, r6, 0
-_080F6CCE:
- adds r6, r4, 0x1
- adds r0, r6, 0
- cmp r6, 0
- bge _080F6CDA
- adds r0, r4, 0
- adds r0, 0x8
-_080F6CDA:
- asrs r0, 3
- lsls r1, r0, 2
- add r1, sp
- adds r1, 0xC
- lsls r0, 3
- subs r0, r6, r0
- lsls r0, 5
- ldr r1, [r1]
- adds r5, r1, r0
- mov r0, r8
- adds r0, 0xC0
- adds r1, r5, 0
- adds r2, r7, 0
- bl CpuSet
- movs r0, 0x80
- lsls r0, 1
- adds r1, r5, r0
- mov r0, r9
- adds r2, r7, 0
- bl CpuSet
- movs r0, 0xF0
- lsls r0, 2
- add r0, r9
- movs r2, 0x80
- lsls r2, 2
- adds r1, r5, r2
- adds r2, r7, 0
- bl CpuSet
- movs r0, 0xC0
- lsls r0, 2
- adds r1, r5, r0
- mov r0, r8
- adds r0, 0xE0
- adds r2, r7, 0
- bl CpuSet
- movs r1, 0x20
- add r9, r1
- adds r4, r6, 0
- cmp r4, r10
- blt _080F6CCE
-_080F6D32:
- adds r2, r4, 0x1
- adds r0, r2, 0
- cmp r2, 0
- bge _080F6D3E
- adds r0, r4, 0
- adds r0, 0x8
-_080F6D3E:
- asrs r0, 3
- lsls r1, r0, 2
- add r1, sp
- adds r1, 0xC
- lsls r0, 3
- subs r0, r2, r0
- lsls r0, 5
- ldr r1, [r1]
- adds r5, r1, r0
- ldr r4, =0x04000008
- ldr r0, [sp, 0x3C]
- adds r1, r5, 0
- adds r2, r4, 0
- bl CpuSet
- movs r2, 0x80
- lsls r2, 1
- adds r1, r5, r2
- ldr r0, [sp, 0x40]
- adds r2, r4, 0
- bl CpuSet
- movs r7, 0x80
- lsls r7, 2
- adds r1, r5, r7
- ldr r0, [sp, 0x40]
- adds r2, r4, 0
- bl CpuSet
- movs r0, 0xC0
- lsls r0, 2
- adds r1, r5, r0
- ldr r0, [sp, 0x34]
- adds r2, r4, 0
- bl CpuSet
- ldr r1, [sp, 0x38]
- lsrs r0, r1, 24
- bl RemoveWindow
- ldr r2, [sp, 0x30]
- lsls r1, r2, 3
- movs r0, 0xF0
- subs r0, r1
- asrs r0, 1
- add sp, 0x44
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80F6B78
-
- thumb_func_start sub_80F6DC0
-sub_80F6DC0: @ 80F6DC0
- push {r4-r6,lr}
- sub sp, 0x20
- mov r1, sp
- ldr r0, =gSpriteTemplate_858D7F8
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- add r5, sp, 0x18
- ldr r6, =gUnknown_0858D810
- movs r4, 0x7
-_080F6DD6:
- adds r0, r6, 0
- bl LoadSpriteSheet
- adds r6, 0x8
- subs r4, 0x1
- cmp r4, 0
- bge _080F6DD6
- ldr r0, =gUnknown_0858D850
- bl LoadSpritePalette
- movs r4, 0
- mov r6, sp
-_080F6DEE:
- mov r0, sp
- movs r1, 0x88
- lsls r1, 1
- movs r2, 0x90
- movs r3, 0xA
- bl CreateSprite
- adds r1, r5, r4
- strb r0, [r1]
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- adds r4, 0x1
- cmp r4, 0x7
- ble _080F6DEE
- ldr r2, =gSprites
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x1]
- movs r3, 0
- strh r1, [r0, 0x2E]
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x2]
- strh r1, [r0, 0x30]
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x3]
- strh r1, [r0, 0x32]
- ldrb r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x5]
- strh r1, [r0, 0x2E]
- ldrb r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x6]
- strh r1, [r0, 0x30]
- ldrb r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r5, 0x7]
- strh r1, [r0, 0x32]
- ldr r1, =gUnknown_0203A034
- ldr r0, [r1]
- ldr r2, [r0]
- ldrb r0, [r5]
- strb r0, [r2]
- ldr r0, [r1]
- ldr r0, [r0]
- strb r3, [r0, 0x4]
- ldr r0, [r1]
- ldr r1, [r0]
- ldrb r0, [r5, 0x4]
- strb r0, [r1, 0x1]
- bl sub_80F7144
- add sp, 0x20
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6DC0
-
- thumb_func_start sub_80F6E9C
-sub_80F6E9C: @ 80F6E9C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r4, =gUnknown_0203A034
- ldr r4, [r4]
- mov r8, r4
- ldr r4, [r4]
- ldrb r5, [r4]
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- ldr r5, =gSprites
- adds r4, r5
- movs r6, 0
- movs r5, 0x88
- lsls r5, 1
- strh r5, [r4, 0x20]
- strh r1, [r4, 0x22]
- strh r6, [r4, 0x24]
- strh r6, [r4, 0x26]
- lsls r0, 16
- asrs r0, 16
- adds r0, 0x20
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x38]
- strh r3, [r4, 0x3A]
- strh r6, [r4, 0x3C]
- ldr r0, =sub_80F6F68
- str r0, [r4, 0x1C]
- mov r0, r8
- ldr r1, [r0]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6E9C
-
- thumb_func_start sub_80F6EF4
-sub_80F6EF4: @ 80F6EF4
- push {r4,r5,lr}
- ldr r1, =gUnknown_0203A034
- ldr r4, [r1]
- ldr r1, [r4]
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- ldr r2, =gSprites
- adds r1, r2
- ldrh r2, [r1, 0x24]
- ldrh r3, [r1, 0x20]
- adds r2, r3
- movs r3, 0
- strh r2, [r1, 0x20]
- ldrh r2, [r1, 0x26]
- ldrh r5, [r1, 0x22]
- adds r2, r5
- strh r2, [r1, 0x22]
- strh r3, [r1, 0x26]
- strh r3, [r1, 0x24]
- strh r0, [r1, 0x3A]
- strh r3, [r1, 0x3C]
- ldr r0, =sub_80F7014
- str r0, [r1, 0x1C]
- ldr r1, [r4]
- movs r0, 0x3
- strb r0, [r1, 0x4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6EF4
-
- thumb_func_start sub_80F6F40
-sub_80F6F40: @ 80F6F40
- movs r3, 0
- movs r2, 0
- movs r1, 0x88
- lsls r1, 1
- strh r1, [r0, 0x20]
- movs r1, 0x90
- strh r1, [r0, 0x22]
- strh r2, [r0, 0x26]
- strh r2, [r0, 0x24]
- ldr r1, =SpriteCallbackDummy
- str r1, [r0, 0x1C]
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- strb r3, [r0, 0x4]
- bx lr
- .pool
- thumb_func_end sub_80F6F40
-
- thumb_func_start sub_80F6F68
-sub_80F6F68: @ 80F6F68
- push {r4-r7,lr}
- adds r3, r0, 0
- ldrh r2, [r3, 0x3A]
- ldrh r0, [r3, 0x3C]
- adds r2, r0
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r3, 0x20]
- subs r0, r1
- strh r0, [r3, 0x20]
- movs r1, 0xFF
- ands r2, r1
- strh r2, [r3, 0x3C]
- lsls r0, 16
- asrs r0, 16
- ldrh r2, [r3, 0x36]
- movs r4, 0x36
- ldrsh r1, [r3, r4]
- cmp r0, r1
- bge _080F6F92
- strh r2, [r3, 0x20]
-_080F6F92:
- movs r4, 0
- ldr r6, =gSprites
- movs r5, 0x40
- adds r2, r3, 0
- adds r2, 0x2E
-_080F6F9C:
- movs r7, 0
- ldrsh r0, [r2, r7]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r3, 0x24]
- ldrh r7, [r3, 0x20]
- adds r0, r7
- adds r0, r5
- strh r0, [r1, 0x20]
- adds r5, 0x40
- adds r2, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _080F6F9C
- movs r0, 0x20
- ldrsh r1, [r3, r0]
- movs r2, 0x36
- ldrsh r0, [r3, r2]
- cmp r1, r0
- bne _080F6FCC
- ldr r0, =sub_80F6FDC
- str r0, [r3, 0x1C]
-_080F6FCC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6F68
-
- thumb_func_start sub_80F6FDC
-sub_80F6FDC: @ 80F6FDC
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- movs r0, 0x2
- strb r0, [r1, 0x4]
- ldrh r3, [r2, 0x38]
- ldr r1, =0xffff0000
- lsrs r0, r1, 16
- cmp r3, r0
- beq _080F7008
- subs r0, r3, 0x1
- strh r0, [r2, 0x38]
- lsls r0, 16
- asrs r0, 16
- asrs r1, 16
- cmp r0, r1
- bne _080F7008
- ldrh r0, [r2, 0x3A]
- bl sub_80F6EF4
-_080F7008:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F6FDC
-
- thumb_func_start sub_80F7014
-sub_80F7014: @ 80F7014
- push {r4-r7,lr}
- adds r3, r0, 0
- ldrh r2, [r3, 0x3A]
- ldrh r0, [r3, 0x3C]
- adds r2, r0
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r3, 0x20]
- subs r0, r1
- strh r0, [r3, 0x20]
- movs r0, 0xFF
- ands r2, r0
- strh r2, [r3, 0x3C]
- movs r4, 0
- ldr r6, =gSprites
- movs r5, 0x40
- adds r2, r3, 0
- adds r2, 0x2E
-_080F7038:
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r3, 0x24]
- ldrh r7, [r3, 0x20]
- adds r0, r7
- adds r0, r5
- strh r0, [r1, 0x20]
- adds r5, 0x40
- adds r2, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _080F7038
- movs r1, 0x20
- ldrsh r0, [r3, r1]
- movs r2, 0x24
- ldrsh r1, [r3, r2]
- adds r0, r1
- movs r1, 0xE0
- negs r1, r1
- cmp r0, r1
- bge _080F7070
- adds r0, r3, 0
- bl sub_80F6F40
-_080F7070:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7014
-
- thumb_func_start sub_80F707C
-sub_80F707C: @ 80F707C
- push {r4-r7,lr}
- ldr r4, =gUnknown_0203A034
- ldr r1, [r4]
- ldr r1, [r1]
- ldrb r1, [r1, 0x1]
- bl sub_80F6B78
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [r4]
- ldr r1, [r1]
- ldrb r2, [r1, 0x1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- ldr r3, =gSprites
- adds r4, r1, r3
- adds r0, 0x20
- strh r0, [r4, 0x20]
- movs r0, 0x50
- strh r0, [r4, 0x22]
- adds r5, r4, 0
- adds r5, 0x3E
- ldrb r1, [r5]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r1
- strb r0, [r5]
- movs r5, 0
- adds r6, r3, 0
- mov r12, r2
- movs r3, 0x40
-_080F70BE:
- lsls r0, r5, 1
- adds r2, r4, 0
- adds r2, 0x2E
- adds r2, r0
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r4, 0x24]
- ldrh r7, [r4, 0x20]
- adds r0, r7
- adds r0, r3
- strh r0, [r1, 0x20]
- movs r0, 0
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrh r1, [r4, 0x22]
- strh r1, [r0, 0x22]
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r1, 0x3E
- ldrb r2, [r1]
- mov r0, r12
- ands r0, r2
- strb r0, [r1]
- adds r3, 0x40
- adds r5, 0x1
- cmp r5, 0x2
- ble _080F70BE
- ldr r1, =gBattle_WIN0H
- movs r0, 0xF0
- strh r0, [r1]
- ldr r2, =gBattle_WIN0V
- ldrh r1, [r4, 0x22]
- adds r0, r1, 0
- subs r0, 0x10
- lsls r0, 8
- adds r1, 0x10
- orrs r0, r1
- strh r0, [r2]
- ldr r1, =0x00003f3e
- movs r0, 0x48
- bl SetGpuReg
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F707C
-
- thumb_func_start sub_80F7144
-sub_80F7144: @ 80F7144
- push {r4-r7,lr}
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r3, =gSprites
- adds r2, r3
- movs r0, 0x3E
- adds r0, r2
- mov r12, r0
- ldrb r0, [r0]
- movs r1, 0x4
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- ldr r7, =gBattle_WIN0H
- ldr r6, =gBattle_WIN0V
- adds r5, r3, 0
- movs r4, 0x4
- adds r2, 0x2E
- movs r3, 0x2
-_080F7174:
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r0, [r1]
- orrs r0, r4
- strb r0, [r1]
- adds r2, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _080F7174
- movs r0, 0
- strh r0, [r7]
- strh r0, [r6]
- movs r0, 0x40
- movs r1, 0
- bl SetGpuReg
- ldrh r1, [r6]
- movs r0, 0x44
- bl SetGpuReg
- ldr r1, =0x00003f3f
- movs r0, 0x48
- bl SetGpuReg
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7144
-
- thumb_func_start sub_80F71C8
-sub_80F71C8: @ 80F71C8
- push {r4-r6,lr}
- sub sp, 0xC
- movs r5, 0x5
- movs r4, 0x1
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _080F71F8
- ldr r1, =gUnknown_08DC6498
- str r5, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r2, 0x5
- movs r3, 0x1
- bl CopyToBgTilemapBufferRect
- movs r5, 0xA
- b _080F7240
- .pool
-_080F71F8:
- ldr r0, =gSpecialVar_ContestRank
- ldrh r2, [r0]
- cmp r2, 0
- bne _080F720C
- ldr r1, =gUnknown_08DC63F8
- b _080F722E
- .pool
-_080F720C:
- cmp r2, 0x1
- bne _080F7218
- ldr r1, =gUnknown_08DC6420
- b _080F722E
- .pool
-_080F7218:
- cmp r2, 0x2
- bne _080F722C
- ldr r1, =gUnknown_08DC6448
- movs r0, 0xA
- str r0, [sp]
- str r2, [sp, 0x4]
- movs r0, 0x2
- b _080F7236
- .pool
-_080F722C:
- ldr r1, =gUnknown_08DC6470
-_080F722E:
- movs r0, 0xA
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
-_080F7236:
- movs r2, 0x5
- movs r3, 0x1
- bl CopyToBgTilemapBufferRect
- movs r5, 0xF
-_080F7240:
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- cmp r0, 0
- bne _080F725C
- movs r6, 0
- ldr r1, =gUnknown_08DC64AC
- b _080F7298
- .pool
-_080F725C:
- cmp r0, 0x1
- bne _080F726C
- movs r6, 0x1
- ldr r1, =gUnknown_08DC64C0
- b _080F7298
- .pool
-_080F726C:
- cmp r0, 0x2
- bne _080F7290
- movs r6, 0x2
- ldr r1, =gUnknown_08DC64D4
- lsls r2, r5, 24
- lsrs r2, 24
- lsls r4, 24
- lsrs r3, r4, 24
- movs r0, 0x5
- str r0, [sp]
- str r6, [sp, 0x4]
- movs r0, 0x2
- bl CopyToBgTilemapBufferRect
- b _080F72CC
- .pool
-_080F7290:
- cmp r0, 0x3
- bne _080F72B4
- movs r6, 0x3
- ldr r1, =gUnknown_08DC64E8
-_080F7298:
- lsls r2, r5, 24
- lsrs r2, 24
- lsls r4, 24
- lsrs r3, r4, 24
- movs r0, 0x5
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- bl CopyToBgTilemapBufferRect
- b _080F72CC
- .pool
-_080F72B4:
- movs r6, 0x4
- ldr r1, =gUnknown_08DC64FC
- lsls r2, r5, 24
- lsrs r2, 24
- lsls r4, 24
- lsrs r3, r4, 24
- movs r0, 0x5
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- bl CopyToBgTilemapBufferRect
-_080F72CC:
- adds r5, 0x5
- ldr r1, =gUnknown_08DC6510
- lsls r2, r5, 24
- lsrs r2, 24
- lsrs r3, r4, 24
- movs r0, 0x6
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- bl CopyToBgTilemapBufferRect
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0, 0x14]
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x4
- str r0, [sp, 0x4]
- str r6, [sp, 0x8]
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F71C8
-
- thumb_func_start sub_80F7310
-sub_80F7310: @ 80F7310
- push {r4,r5,lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r1, =gContestMonConditions
- lsrs r0, 23
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- lsls r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x3F
- bl __udivsi3
- adds r1, r0, 0
- ldr r0, =0x0000ffff
- ands r0, r1
- cmp r0, 0
- beq _080F733C
- movs r0, 0x80
- lsls r0, 9
- adds r1, r0
-_080F733C:
- lsrs r1, 16
- cmp r1, 0
- bne _080F7348
- cmp r4, 0
- beq _080F7348
- movs r1, 0x1
-_080F7348:
- cmp r5, 0
- beq _080F7352
- cmp r1, 0xA
- bls _080F7352
- movs r1, 0xA
-_080F7352:
- lsls r0, r1, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80F7310
-
thumb_func_start sub_80F7364
sub_80F7364: @ 80F7364
push {r4-r7,lr}
@@ -4628,7 +1490,7 @@ sub_80F7ED0: @ 80F7ED0
thumb_func_start sub_80F7F30
sub_80F7F30: @ 80F7F30
push {r4,r5,lr}
- ldr r0, =gUnknown_02039F24
+ ldr r0, =gContestMonPartyIndex
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -4660,7 +1522,7 @@ _080F7F5E:
sub_80F7F7C: @ 80F7F7C
push {r4,lr}
movs r4, 0
- ldr r0, =gUnknown_02039F24
+ ldr r0, =gContestMonPartyIndex
ldrb r1, [r0]
movs r0, 0x64
muls r1, r0
@@ -4750,7 +1612,7 @@ _080F8034:
.4byte _080F8190
.4byte _080F81F8
_080F8048:
- ldr r6, =gUnknown_02039F24
+ ldr r6, =gContestMonPartyIndex
ldrb r0, [r6]
movs r5, 0x64
muls r0, r5
@@ -4801,7 +1663,7 @@ _080F809C:
.pool
_080F80B8:
mov r4, sp
- ldr r7, =gUnknown_02039F24
+ ldr r7, =gContestMonPartyIndex
ldrb r0, [r7]
movs r6, 0x64
muls r0, r6
@@ -4850,7 +1712,7 @@ _080F810A:
.pool
_080F8124:
mov r4, sp
- ldr r7, =gUnknown_02039F24
+ ldr r7, =gContestMonPartyIndex
ldrb r0, [r7]
movs r6, 0x64
muls r0, r6
@@ -4897,7 +1759,7 @@ _080F814E:
.pool
_080F8190:
mov r4, sp
- ldr r7, =gUnknown_02039F24
+ ldr r7, =gContestMonPartyIndex
ldrb r0, [r7]
movs r6, 0x64
muls r0, r6
@@ -4940,7 +1802,7 @@ _080F8190:
.pool
_080F81F8:
mov r4, sp
- ldr r7, =gUnknown_02039F24
+ ldr r7, =gContestMonPartyIndex
ldrb r0, [r7]
movs r6, 0x64
muls r0, r6
@@ -5320,7 +2182,7 @@ sub_80F8508: @ 80F8508
ands r0, r1
cmp r0, 0
beq _080F8540
- ldr r0, =gUnknown_02039F24
+ ldr r0, =gContestMonPartyIndex
ldrb r0, [r0]
bl sub_80DA8C8
ldr r1, =sub_80FC6BC
@@ -5330,7 +2192,7 @@ sub_80F8508: @ 80F8508
b _080F8556
.pool
_080F8540:
- ldr r0, =gUnknown_02039F24
+ ldr r0, =gContestMonPartyIndex
ldrb r0, [r0]
bl sub_80DA8C8
ldr r1, =gTasks
@@ -5399,7 +2261,7 @@ sub_80F85BC: @ 80F85BC
str r0, [sp]
str r0, [sp, 0x4]
movs r3, 0
- ldr r5, =gUnknown_02039F30
+ ldr r5, =gNumLinkContestPlayers
mov r12, r5
ldr r0, =gSpecialVar_0x8004
mov r9, r0
@@ -5529,7 +2391,7 @@ sub_80F86E0: @ 80F86E0
adds r3, r0, 0
movs r4, 0
movs r2, 0x1
- ldr r0, =gUnknown_02039F30
+ ldr r0, =gNumLinkContestPlayers
ldrb r0, [r0]
cmp r2, r0
bge _080F8708
diff --git a/asm/contest_link_80FC4F4.s b/asm/contest_link_80FC4F4.s
deleted file mode 100644
index 33207e246..000000000
--- a/asm/contest_link_80FC4F4.s
+++ /dev/null
@@ -1,1362 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80FC4F4
-sub_80FC4F4: @ 80FC4F4
- push {r4,r5,lr}
- adds r2, r0, 0
- lsls r4, r1, 16
- lsrs r4, 16
- ldr r5, =gDecompressionBuffer
- adds r0, r5, 0
- adds r1, r2, 0
- adds r2, r4, 0
- bl memcpy
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- adds r1, r5, 0
- adds r2, r4, 0
- bl SendBlock
- lsls r0, 24
- cmp r0, 0
- bne _080FC528
- movs r0, 0
- b _080FC52A
- .pool
-_080FC528:
- movs r0, 0x1
-_080FC52A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80FC4F4
-
- thumb_func_start sub_80FC530
-sub_80FC530: @ 80FC530
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0x80
- lsls r4, 17
- lsls r4, r5
- lsrs r4, 24
- bl GetBlockReceivedStatus
- ands r4, r0
- cmp r4, 0
- beq _080FC552
- adds r0, r5, 0
- bl ResetBlockReceivedFlag
- movs r0, 0x1
- b _080FC554
-_080FC552:
- movs r0, 0
-_080FC554:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80FC530
-
- thumb_func_start sub_80FC55C
-sub_80FC55C: @ 80FC55C
- push {r4,lr}
- bl GetBlockReceivedStatus
- adds r4, r0, 0
- bl sub_800A9D8
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _080FC574
- movs r0, 0
- b _080FC57A
-_080FC574:
- bl ResetBlockReceivedFlags
- movs r0, 0x1
-_080FC57A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80FC55C
-
- thumb_func_start sub_80FC580
-sub_80FC580: @ 80FC580
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r5, =gTasks
- ldr r6, =sub_80FC5C0
- ldr r4, =gBlockRecvBuffer
- movs r3, 0xFF
-_080FC590:
- lsls r0, r1, 8
- adds r0, r4
- strh r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _080FC590
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r5
- movs r1, 0
- strh r1, [r0, 0x8]
- str r6, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC580
-
- thumb_func_start sub_80FC5C0
-sub_80FC5C0: @ 80FC5C0
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, =sub_80FC5DC
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80FC5C0
-
- thumb_func_start sub_80FC5DC
-sub_80FC5DC: @ 80FC5DC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _080FC650
- bl GetMultiplayerId
- ldr r1, =gContestPlayerMonIndex
- strb r0, [r1]
- bl GetLinkPlayerCount
- ldr r4, =gUnknown_02039F30
- strb r0, [r4]
- ldr r1, =gIsLinkContest
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080FC60C
- movs r0, 0x3
- strb r0, [r1]
-_080FC60C:
- movs r3, 0
- ldrb r2, [r4]
- cmp r3, r2
- bge _080FC64A
- ldr r1, =gLinkPlayers
- ldrb r0, [r1]
- subs r0, 0x1
- adds r6, r4, 0
- cmp r0, 0x1
- bls _080FC63A
- adds r4, r2, 0
- adds r2, r1, 0
- movs r5, 0xFF
-_080FC626:
- adds r2, 0x1C
- adds r3, 0x1
- cmp r3, r4
- bge _080FC64A
- ldrh r1, [r2]
- adds r0, r5, 0
- ands r0, r1
- subs r0, 0x1
- cmp r0, 0x1
- bhi _080FC626
-_080FC63A:
- ldrb r6, [r6]
- cmp r3, r6
- bge _080FC64A
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080FC64A:
- adds r0, r7, 0
- bl SwitchTaskToFollowupFunc
-_080FC650:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC5DC
-
- thumb_func_start sub_80FC670
-sub_80FC670: @ 80FC670
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080FC698
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FC6A0
- cmp r0, 0x1
- beq _080FC6AE
- bl IsLinkTaskFinished
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FC6B4
-_080FC698:
- movs r0, 0x1
- b _080FC6B6
- .pool
-_080FC6A0:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FC6B4
- bl sub_800ADF8
-_080FC6AE:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080FC6B4:
- movs r0, 0
-_080FC6B6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80FC670
-
- thumb_func_start sub_80FC6BC
-sub_80FC6BC: @ 80FC6BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r6, r7, 2
- adds r0, r6, r7
- lsls r4, r0, 3
- ldr r5, =gTasks + 0x8
- adds r0, r4, r5
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- bne _080FC6DC
- b _080FC7F4
-_080FC6DC:
- adds r0, r5, 0
- subs r0, 0x8
- adds r4, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080FC758
- cmp r0, 0x1
- bgt _080FC6F8
- cmp r0, 0
- beq _080FC6FE
- b _080FC7DC
- .pool
-_080FC6F8:
- cmp r0, 0xA
- beq _080FC7C0
- b _080FC7DC
-_080FC6FE:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _080FC738
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FC7F4
- ldr r0, =gBlockSendBuffer
- ldr r1, =gContestPlayerMonIndex
- ldrb r1, [r1]
- lsls r1, 6
- ldr r2, =gContestMons
- adds r1, r2
- movs r2, 0x40
- bl memcpy
- movs r0, 0xA
- strh r0, [r4, 0x8]
- b _080FC7F4
- .pool
-_080FC738:
- ldr r0, =gBlockSendBuffer
- ldr r1, =gContestPlayerMonIndex
- ldrb r1, [r1]
- lsls r1, 6
- ldr r2, =gContestMons
- adds r1, r2
- movs r2, 0x40
- bl memcpy
- b _080FC7D6
- .pool
-_080FC758:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FC7F4
- movs r5, 0
- ldr r0, =gUnknown_02039F30
- mov r8, r6
- ldrb r0, [r0]
- cmp r5, r0
- bge _080FC798
- ldr r6, =gLinkPlayers
-_080FC770:
- lsls r4, r5, 6
- ldr r0, =gContestMons
- adds r4, r0
- lsls r1, r5, 8
- ldr r0, =gBlockRecvBuffer
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0x40
- bl memcpy
- ldrh r1, [r6, 0x1A]
- adds r0, r4, 0
- bl sub_80DFA08
- adds r6, 0x1C
- adds r5, 0x1
- ldr r0, =gUnknown_02039F30
- ldrb r0, [r0]
- cmp r5, r0
- blt _080FC770
-_080FC798:
- ldr r0, =gTasks
- mov r2, r8
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080FC7F4
- .pool
-_080FC7C0:
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- lsls r0, 16
- movs r1, 0x96
- lsls r1, 17
- cmp r0, r1
- ble _080FC7F4
- movs r0, 0x2
- bl sub_800A4D8
-_080FC7D6:
- movs r0, 0x1
- strh r0, [r4, 0x8]
- b _080FC7F4
-_080FC7DC:
- ldr r0, =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x8]
- strh r0, [r1, 0x1E]
- strh r0, [r1, 0x20]
- adds r0, r7, 0
- bl SwitchTaskToFollowupFunc
-_080FC7F4:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC6BC
-
- thumb_func_start sub_80FC804
-sub_80FC804: @ 80FC804
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _080FC830
- cmp r0, 0x1
- beq _080FC858
- movs r0, 0
- strh r0, [r5, 0x8]
- adds r0, r2, 0
- bl SwitchTaskToFollowupFunc
- b _080FC880
- .pool
-_080FC830:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _080FC87A
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FC880
- ldr r0, =gRngValue
- movs r1, 0x4
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FC880
- b _080FC87A
- .pool
-_080FC858:
- movs r0, 0
- bl sub_80FC530
- lsls r0, 24
- cmp r0, 0
- beq _080FC880
- ldr r0, =gRngValue
- ldr r4, =gBlockRecvBuffer
- adds r1, r4, 0
- movs r2, 0x4
- bl memcpy
- ldr r0, =gContestRngValue
- adds r1, r4, 0
- movs r2, 0x4
- bl memcpy
-_080FC87A:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_080FC880:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC804
-
- thumb_func_start sub_80FC894
-sub_80FC894: @ 80FC894
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- mov r8, r0
- adds r0, r6
- lsls r5, r0, 3
- ldr r7, =gTasks + 0x8
- adds r0, r5, r7
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _080FC986
- movs r1, 0x8
- negs r1, r1
- adds r1, r7
- mov r9, r1
- adds r4, r5, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080FC90C
- cmp r0, 0x1
- bgt _080FC8D8
- cmp r0, 0
- beq _080FC8DE
- b _080FC96E
- .pool
-_080FC8D8:
- cmp r0, 0xA
- beq _080FC954
- b _080FC96E
-_080FC8DE:
- ldr r1, =gBlockSendBuffer
- ldrh r0, [r4, 0x1A]
- strb r0, [r1]
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _080FC904
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FC986
- movs r0, 0xA
- strh r0, [r4, 0x8]
- b _080FC986
- .pool
-_080FC904:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080FC986
-_080FC90C:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FC986
- movs r3, 0
- ldr r1, =gUnknown_02039F30
- ldrb r0, [r1]
- cmp r3, r0
- bge _080FC93A
- ldr r4, =gBlockRecvBuffer
- adds r0, r7, 0x2
- adds r2, r5, r0
- movs r5, 0x80
- lsls r5, 1
-_080FC92A:
- ldrh r0, [r4]
- strh r0, [r2]
- adds r4, r5
- adds r2, 0x2
- adds r3, 0x1
- ldrb r0, [r1]
- cmp r3, r0
- blt _080FC92A
-_080FC93A:
- mov r0, r8
- adds r1, r0, r6
- lsls r1, 3
- add r1, r9
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080FC986
- .pool
-_080FC954:
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- ble _080FC986
- movs r0, 0x2
- bl sub_800A4D8
- movs r0, 0x1
- strh r0, [r4, 0x8]
- b _080FC986
-_080FC96E:
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x8]
- strh r0, [r1, 0x1E]
- strh r0, [r1, 0x20]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
-_080FC986:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC894
-
- thumb_func_start sub_80FC998
-sub_80FC998: @ 80FC998
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FC9C4
- cmp r0, 0x1
- beq _080FC9E0
- movs r0, 0
- strh r0, [r4, 0x8]
- adds r0, r2, 0
- bl SwitchTaskToFollowupFunc
- b _080FC9F0
- .pool
-_080FC9C4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FC9F0
- ldr r0, =gContestPlayerMonIndex
- movs r1, 0x1
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FC9F0
- b _080FC9EA
- .pool
-_080FC9E0:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FC9F0
-_080FC9EA:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080FC9F0:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FC998
-
- thumb_func_start sub_80FC9F8
-sub_80FC9F8: @ 80FC9F8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gTasks
- mov r8, r0
- lsls r7, r5, 2
- adds r0, r7, r5
- lsls r0, 3
- mov r1, r8
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FCA30
- cmp r0, 0x1
- beq _080FCA68
- movs r0, 0
- strh r0, [r4, 0x8]
- adds r0, r5, 0
- bl SwitchTaskToFollowupFunc
- b _080FCAB2
- .pool
-_080FCA30:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCAB2
- ldr r0, =gContestResources
- ldr r2, [r0]
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- ldr r0, [r2, 0x4]
- adds r0, r1
- adds r0, 0x6
- movs r1, 0x2
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FCAB2
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080FCAB2
- .pool
-_080FCA68:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCAB2
- movs r2, 0
- ldr r6, =gUnknown_02039F30
- mov r9, r8
- mov r12, r7
- ldrb r0, [r6]
- cmp r2, r0
- bge _080FCAA4
- ldr r1, =gContestResources
- mov r8, r1
- ldr r4, =gBlockRecvBuffer
- movs r3, 0
- movs r7, 0x80
- lsls r7, 1
-_080FCA8C:
- mov r1, r8
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r0, r3, r0
- ldrh r1, [r4]
- strh r1, [r0, 0x6]
- adds r4, r7
- adds r3, 0x1C
- adds r2, 0x1
- ldrb r0, [r6]
- cmp r2, r0
- blt _080FCA8C
-_080FCAA4:
- mov r0, r12
- adds r1, r0, r5
- lsls r1, 3
- add r1, r9
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_080FCAB2:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FC9F8
-
- thumb_func_start sub_80FCACC
-sub_80FCACC: @ 80FCACC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r2, r0, r1
- movs r3, 0x8
- ldrsh r0, [r2, r3]
- adds r3, r1, 0
- cmp r0, 0xB
- bls _080FCAE8
- b _080FCC78
-_080FCAE8:
- lsls r0, 2
- ldr r1, =_080FCAFC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080FCAFC:
- .4byte _080FCB2C
- .4byte _080FCB44
- .4byte _080FCB6C
- .4byte _080FCB90
- .4byte _080FCBA4
- .4byte _080FCB6C
- .4byte _080FCBCC
- .4byte _080FCBE0
- .4byte _080FCB6C
- .4byte _080FCC08
- .4byte _080FCC38
- .4byte _080FCB6C
-_080FCB2C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _080FCB38
- b _080FCC82
-_080FCB38:
- ldr r0, =gUnknown_02039F08
- movs r1, 0x8
- b _080FCC16
- .pool
-_080FCB44:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- bne _080FCB50
- b _080FCC82
-_080FCB50:
- ldr r0, =gUnknown_02039F08
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x8
- b _080FCC50
- .pool
-_080FCB6C:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r2, r0, r3
- ldrh r0, [r2, 0xA]
- adds r1, r0, 0x1
- strh r1, [r2, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bgt _080FCB84
- b _080FCC82
-_080FCB84:
- movs r0, 0
- strh r0, [r2, 0xA]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- b _080FCC82
-_080FCB90:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gUnknown_02039F10
- movs r1, 0x8
- b _080FCC16
- .pool
-_080FCBA4:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gUnknown_02039F10
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x8
- b _080FCC50
- .pool
-_080FCBCC:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gUnknown_02039F18
- movs r1, 0x8
- b _080FCC16
- .pool
-_080FCBE0:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gUnknown_02039F18
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x8
- b _080FCC50
- .pool
-_080FCC08:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gContestFinalStandings
- movs r1, 0x4
-_080FCC16:
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FCC82
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080FCC82
- .pool
-_080FCC38:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCC82
- ldr r0, =gContestFinalStandings
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x4
-_080FCC50:
- bl memcpy
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _080FCC82
- .pool
-_080FCC78:
- movs r0, 0
- strh r0, [r2, 0x8]
- adds r0, r4, 0
- bl SwitchTaskToFollowupFunc
-_080FCC82:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FCACC
-
- thumb_func_start sub_80FCC88
-sub_80FCC88: @ 80FCC88
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r2, r0, r1
- movs r3, 0x8
- ldrsh r0, [r2, r3]
- adds r3, r1, 0
- cmp r0, 0xB
- bls _080FCCA4
- b _080FCE38
-_080FCCA4:
- lsls r0, 2
- ldr r1, =_080FCCB8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080FCCB8:
- .4byte _080FCCE8
- .4byte _080FCD04
- .4byte _080FCD30
- .4byte _080FCD54
- .4byte _080FCD6C
- .4byte _080FCD30
- .4byte _080FCD98
- .4byte _080FCDB0
- .4byte _080FCD30
- .4byte _080FCDC8
- .4byte _080FCDF8
- .4byte _080FCD30
-_080FCCE8:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _080FCCF4
- b _080FCE42
-_080FCCF4:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- movs r1, 0x70
- b _080FCDD6
- .pool
-_080FCD04:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- bne _080FCD10
- b _080FCE42
-_080FCD10:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x70
- b _080FCE10
- .pool
-_080FCD30:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r2, r0, r3
- ldrh r0, [r2, 0xA]
- adds r1, r0, 0x1
- strh r1, [r2, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bgt _080FCD48
- b _080FCE42
-_080FCD48:
- movs r0, 0
- strh r0, [r2, 0xA]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- b _080FCE42
-_080FCD54:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- movs r1, 0x14
- b _080FCDD6
- .pool
-_080FCD6C:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x14
- b _080FCE10
- .pool
-_080FCD98:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- b _080FCDD4
- .pool
-_080FCDB0:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- b _080FCE04
- .pool
-_080FCDC8:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gUnknown_02039F26
-_080FCDD4:
- movs r1, 0x4
-_080FCDD6:
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FCE42
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080FCE42
- .pool
-_080FCDF8:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCE42
- ldr r0, =gUnknown_02039F26
-_080FCE04:
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x4
-_080FCE10:
- bl memcpy
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _080FCE42
- .pool
-_080FCE38:
- movs r0, 0
- strh r0, [r2, 0x8]
- adds r0, r4, 0
- bl SwitchTaskToFollowupFunc
-_080FCE42:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FCC88
-
- thumb_func_start sub_80FCE48
-sub_80FCE48: @ 80FCE48
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- mov r8, r0
- adds r0, r6
- lsls r5, r0, 3
- ldr r7, =gTasks + 0x8
- adds r0, r5, r7
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _080FCF2E
- movs r1, 0x8
- negs r1, r1
- adds r1, r7
- mov r9, r1
- adds r4, r5, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080FCEC0
- cmp r0, 0x1
- bgt _080FCE8C
- cmp r0, 0
- beq _080FCE92
- b _080FCF16
- .pool
-_080FCE8C:
- cmp r0, 0xA
- beq _080FCEFC
- b _080FCF16
-_080FCE92:
- ldr r1, =gBlockSendBuffer
- movs r0, 0x6E
- strb r0, [r1]
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _080FCEB8
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCF2E
- movs r0, 0xA
- strh r0, [r4, 0x8]
- b _080FCF2E
- .pool
-_080FCEB8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080FCF2E
-_080FCEC0:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCF2E
- mov r1, r8
- mov r8, r9
- ldr r4, =gBlockRecvBuffer
- adds r0, r7, 0
- adds r0, 0xA
- adds r2, r5, r0
- movs r5, 0x80
- lsls r5, 1
- movs r3, 0x3
-_080FCEDC:
- ldrh r0, [r4]
- strh r0, [r2]
- adds r4, r5
- adds r2, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _080FCEDC
- adds r1, r6
- lsls r1, 3
- add r1, r8
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080FCF2E
- .pool
-_080FCEFC:
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- ble _080FCF2E
- movs r0, 0x2
- bl sub_800A4D8
- movs r0, 0x1
- strh r0, [r4, 0x8]
- b _080FCF2E
-_080FCF16:
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x8]
- strh r0, [r1, 0x1E]
- strh r0, [r1, 0x20]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
-_080FCF2E:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FCE48
-
- thumb_func_start sub_80FCF40
-sub_80FCF40: @ 80FCF40
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r4, r0, 3
- ldr r6, =gTasks + 0x8
- adds r0, r4, r6
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _080FCFBE
- adds r0, r6, 0
- subs r0, 0x8
- adds r4, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FCF80
- cmp r0, 0x1
- beq _080FCF9C
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r5, 0
- bl SwitchTaskToFollowupFunc
- b _080FCFBE
- .pool
-_080FCF80:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FCFBE
- ldr r0, =gContestMonConditions
- movs r1, 0x8
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FCFBE
- b _080FCFB8
- .pool
-_080FCF9C:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FCFBE
- ldr r0, =gContestMonConditions
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x8
- bl memcpy
-_080FCFB8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080FCFBE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FCF40
-
- thumb_func_start sub_80FCFD0
-sub_80FCFD0: @ 80FCFD0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r4, r0, 3
- ldr r6, =gTasks + 0x8
- adds r0, r4, r6
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _080FD04E
- adds r0, r6, 0
- subs r0, 0x8
- adds r4, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FD010
- cmp r0, 0x1
- beq _080FD02C
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r5, 0
- bl SwitchTaskToFollowupFunc
- b _080FD04E
- .pool
-_080FD010:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080FD04E
- ldr r0, =gUnknown_02039F26
- movs r1, 0x4
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _080FD04E
- b _080FD048
- .pool
-_080FD02C:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _080FD04E
- ldr r0, =gUnknown_02039F26
- ldr r1, =gUnknown_02039F2B
- ldrb r1, [r1]
- lsls r1, 8
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x4
- bl memcpy
-_080FD048:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080FD04E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FCFD0
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/contest_link_81D9DE4.s b/asm/contest_link_81D9DE4.s
deleted file mode 100644
index 5a3393374..000000000
--- a/asm/contest_link_81D9DE4.s
+++ /dev/null
@@ -1,890 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_81D9DE4
-sub_81D9DE4: @ 81D9DE4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- cmp r0, 0x4
- bhi _081D9EA4
- lsls r0, 2
- ldr r1, =_081D9E10
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081D9E10:
- .4byte _081D9E24
- .4byte _081D9E44
- .4byte _081D9E64
- .4byte _081D9E84
- .4byte _081D9EA4
-_081D9E24:
- ldr r4, =gUnknown_02039F31
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x32
- b _081D9EB4
- .pool
-_081D9E44:
- ldr r4, =gUnknown_02039F31
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x33
- b _081D9EB4
- .pool
-_081D9E64:
- ldr r4, =gUnknown_02039F31
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x34
- b _081D9EB4
- .pool
-_081D9E84:
- ldr r4, =gUnknown_02039F31
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x35
- b _081D9EB4
- .pool
-_081D9EA4:
- ldr r4, =gUnknown_02039F31
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x36
-_081D9EB4:
- bl GetMonData
- strb r0, [r4]
- ldr r5, =gContestMons
- ldr r4, =gContestPlayerMonIndex
- ldrb r0, [r4]
- lsls r0, 6
- adds r0, r5
- ldr r1, =gUnknown_02039F31
- ldrb r1, [r1]
- adds r0, 0x2C
- strb r1, [r0]
- ldr r0, =0x00000864 @ = FLAG_SYS_GAME_CLEAR
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- negs r0, r0
- lsrs r0, 31
- ldrb r1, [r4]
- lsls r1, 6
- adds r1, r5
- adds r1, 0x2D
- strb r0, [r1]
- ldr r1, =sub_81DA160
- ldr r2, =sub_81D9F14
- adds r0, r6, 0
- bl SetTaskFuncWithFollowupFunc
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9DE4
-
- thumb_func_start sub_81D9F14
-sub_81D9F14: @ 81D9F14
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_81DA244
- ldr r2, =sub_81D9F30
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9F14
-
- thumb_func_start sub_81D9F30
-sub_81D9F30: @ 81D9F30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_81DA2E8
- ldr r2, =sub_81D9F4C
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9F30
-
- thumb_func_start sub_81D9F4C
-sub_81D9F4C: @ 81D9F4C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_81DA3B8
- ldr r2, =sub_81D9F68
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9F4C
-
- thumb_func_start sub_81D9F68
-sub_81D9F68: @ 81D9F68
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r3, 0
- ldr r5, =gUnknown_02039F30
- mov r8, r5
- ldr r0, =gSpecialVar_0x8004
- mov r12, r0
- add r1, sp, 0x4
- mov r9, r1
- ldrb r4, [r5]
- cmp r3, r4
- bcs _081D9FB2
- lsls r0, r6, 2
- adds r0, r6
- lsls r4, r0, 3
- ldr r7, =gTasks + 0x8
-_081D9F98:
- mov r0, sp
- adds r2, r0, r3
- adds r1, r3, 0x1
- lsls r0, r1, 1
- adds r0, r4
- adds r0, r7
- ldrh r0, [r0]
- strb r0, [r2]
- lsls r1, 24
- lsrs r3, r1, 24
- ldrb r1, [r5]
- cmp r3, r1
- bcc _081D9F98
-_081D9FB2:
- movs r3, 0
- mov r4, r8
- ldrb r0, [r4]
- cmp r3, r0
- bcs _081D9FD6
- adds r4, r0, 0
- mov r2, sp
-_081D9FC0:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, r4
- bcs _081D9FD6
- mov r7, sp
- adds r1, r7, r3
- ldrb r0, [r2]
- ldrb r1, [r1]
- cmp r0, r1
- beq _081D9FC0
-_081D9FD6:
- mov r0, r8
- ldrb r0, [r0]
- cmp r3, r0
- bne _081D9FF4
- movs r0, 0
- mov r1, r12
- strh r0, [r1]
- b _081D9FFA
- .pool
-_081D9FF4:
- movs r0, 0x1
- mov r4, r12
- strh r0, [r4]
-_081D9FFA:
- movs r3, 0
- mov r7, r8
- mov r0, r8
- ldrb r0, [r0]
- cmp r3, r0
- bcs _081DA02A
- mov r4, r9
- lsls r0, r6, 2
- adds r0, r6
- lsls r2, r0, 3
- ldr r5, =gTasks + 0x8
-_081DA010:
- adds r1, r4, r3
- adds r0, r3, 0x5
- lsls r0, 1
- adds r0, r2
- adds r0, r5
- ldrh r0, [r0]
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldrb r1, [r7]
- cmp r3, r1
- bcc _081DA010
-_081DA02A:
- mov r4, r8
- ldrb r0, [r4]
- cmp r0, 0x4
- beq _081DA0B8
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _081DA0B8
- ldr r0, =gContestMons
- adds r1, r0, 0
- adds r1, 0x2C
- ldrb r2, [r1]
- movs r3, 0x1
- ldrb r1, [r4]
- adds r5, r0, 0
- cmp r3, r1
- bcs _081DA06C
- adds r4, r5, 0
- mov r7, r8
- ldrb r1, [r7]
-_081DA054:
- lsls r0, r3, 6
- adds r0, r4
- adds r0, 0x2C
- ldrb r7, [r0]
- cmp r2, r7
- bcs _081DA062
- ldrb r2, [r0]
-_081DA062:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, r1
- bcc _081DA054
-_081DA06C:
- cmp r2, 0
- beq _081DA076
- subs r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_081DA076:
- movs r4, 0x1
- movs r3, 0
- mov r0, r8
- ldrb r0, [r0]
- cmp r3, r0
- bcs _081DA0AC
- adds r0, r5, 0
- b _081DA0A2
- .pool
-_081DA090:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- mov r1, r8
- ldrb r1, [r1]
- cmp r3, r1
- bcs _081DA0AC
- lsls r0, r3, 6
- adds r0, r5
-_081DA0A2:
- adds r0, 0x2D
- ldrb r0, [r0]
- cmp r0, 0
- bne _081DA090
- movs r4, 0
-_081DA0AC:
- mov r0, sp
- ldrb r0, [r0]
- adds r1, r2, 0
- adds r2, r4, 0
- bl sub_80DACBC
-_081DA0B8:
- mov r0, r9
- bl sub_80F86E0
- ldr r1, =gUnknown_02039F2B
- strb r0, [r1]
- ldr r0, =gUnknown_02039F30
- ldrb r0, [r0]
- cmp r0, 0x3
- bhi _081DA0E8
- ldr r1, =sub_81DA488
- ldr r2, =sub_81DA10C
- adds r0, r6, 0
- bl SetTaskFuncWithFollowupFunc
- b _081DA0F6
- .pool
-_081DA0E8:
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_81DA10C
- str r0, [r1]
-_081DA0F6:
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9F68
-
- thumb_func_start sub_81DA10C
-sub_81DA10C: @ 81DA10C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gSpecialVar_ContestCategory
- ldrb r0, [r0]
- bl sub_80DB09C
- ldr r1, =sub_80FCF40
- ldr r2, =sub_81DA138
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA10C
-
- thumb_func_start sub_81DA138
-sub_81DA138: @ 81DA138
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl sub_80DCE58
- ldr r1, =sub_80FCFD0
- ldr r2, =sub_80F8714
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA138
-
- thumb_func_start sub_81DA160
-sub_81DA160: @ 81DA160
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r6, r7, 2
- adds r0, r6, r7
- lsls r4, r0, 3
- ldr r5, =gTasks + 0x8
- adds r0, r4, r5
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _081DA224
- adds r0, r5, 0
- subs r0, 0x8
- adds r4, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081DA1A4
- cmp r0, 0x1
- beq _081DA1D4
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r7, 0
- bl SwitchTaskToFollowupFunc
- b _081DA224
- .pool
-_081DA1A4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _081DA224
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- lsls r0, 6
- ldr r1, =gContestMons
- adds r0, r1
- movs r1, 0x40
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _081DA224
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _081DA224
- .pool
-_081DA1D4:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _081DA224
- movs r5, 0
- ldr r0, =gUnknown_02039F30
- mov r8, r6
- ldrb r0, [r0]
- cmp r5, r0
- bge _081DA214
- ldr r6, =gLinkPlayers
-_081DA1EC:
- lsls r4, r5, 6
- ldr r0, =gContestMons
- adds r4, r0
- lsls r1, r5, 8
- ldr r0, =gBlockRecvBuffer
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0x40
- bl memcpy
- ldrh r1, [r6, 0x1A]
- adds r0, r4, 0
- bl sub_80DFA08
- adds r6, 0x1C
- adds r5, 0x1
- ldr r0, =gUnknown_02039F30
- ldrb r0, [r0]
- cmp r5, r0
- blt _081DA1EC
-_081DA214:
- ldr r0, =gTasks
- mov r2, r8
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_081DA224:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA160
-
- thumb_func_start sub_81DA244
-sub_81DA244: @ 81DA244
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r5, r0, 3
- ldr r6, =gTasks + 0x8
- adds r0, r5, r6
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _081DA2D4
- adds r0, r6, 0
- subs r0, 0x8
- adds r5, r0
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _081DA284
- cmp r0, 0x1
- beq _081DA2AC
- movs r0, 0
- strh r0, [r5, 0x8]
- strh r0, [r5, 0x20]
- adds r0, r4, 0
- bl SwitchTaskToFollowupFunc
- b _081DA2D4
- .pool
-_081DA284:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _081DA2CE
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _081DA2D4
- ldr r0, =gRngValue
- movs r1, 0x4
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _081DA2D4
- b _081DA2CE
- .pool
-_081DA2AC:
- movs r0, 0
- bl sub_80FC530
- lsls r0, 24
- cmp r0, 0
- beq _081DA2D4
- ldr r0, =gRngValue
- ldr r4, =gBlockRecvBuffer
- adds r1, r4, 0
- movs r2, 0x4
- bl memcpy
- ldr r0, =gContestRngValue
- adds r1, r4, 0
- movs r2, 0x4
- bl memcpy
-_081DA2CE:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_081DA2D4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA244
-
- thumb_func_start sub_81DA2E8
-sub_81DA2E8: @ 81DA2E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- mov r9, r0
- adds r0, r6
- lsls r5, r0, 3
- ldr r1, =gTasks + 0x8
- mov r8, r1
- adds r0, r5, r1
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _081DA39E
- movs r0, 0x8
- negs r0, r0
- add r0, r8
- mov r10, r0
- adds r4, r5, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081DA338
- cmp r0, 0x1
- beq _081DA35A
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
- b _081DA39E
- .pool
-_081DA338:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _081DA39E
- add r0, sp, 0x8
- movs r1, 0x6E
- strh r1, [r0]
- movs r1, 0x2
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _081DA39E
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _081DA39E
-_081DA35A:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _081DA39E
- movs r1, 0
- ldr r7, =gUnknown_02039F30
- ldrb r0, [r7]
- cmp r1, r0
- bge _081DA390
- mov r0, r8
- adds r0, 0xA
- adds r3, r5, r0
- ldr r4, =gBlockRecvBuffer
- mov r2, sp
- movs r5, 0x80
- lsls r5, 1
-_081DA37C:
- ldrh r0, [r4]
- strh r0, [r2]
- strh r0, [r3]
- adds r3, 0x2
- adds r4, r5
- adds r2, 0x2
- adds r1, 0x1
- ldrb r0, [r7]
- cmp r1, r0
- blt _081DA37C
-_081DA390:
- mov r0, r9
- adds r1, r0, r6
- lsls r1, 3
- add r1, r10
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_081DA39E:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA2E8
-
- thumb_func_start sub_81DA3B8
-sub_81DA3B8: @ 81DA3B8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- mov r9, r0
- adds r0, r6
- lsls r5, r0, 3
- ldr r1, =gTasks + 0x8
- mov r8, r1
- adds r0, r5, r1
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _081DA46E
- movs r0, 0x8
- negs r0, r0
- add r0, r8
- mov r10, r0
- adds r4, r5, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081DA408
- cmp r0, 0x1
- beq _081DA42A
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
- b _081DA46E
- .pool
-_081DA408:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _081DA46E
- ldrh r1, [r4, 0x1A]
- add r0, sp, 0x8
- strh r1, [r0]
- movs r1, 0x2
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _081DA46E
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _081DA46E
-_081DA42A:
- bl sub_80FC55C
- lsls r0, 24
- cmp r0, 0
- beq _081DA46E
- movs r1, 0
- ldr r7, =gUnknown_02039F30
- ldrb r0, [r7]
- cmp r1, r0
- bge _081DA460
- mov r0, r8
- adds r0, 0x2
- adds r3, r5, r0
- ldr r4, =gBlockRecvBuffer
- mov r2, sp
- movs r5, 0x80
- lsls r5, 1
-_081DA44C:
- ldrh r0, [r4]
- strh r0, [r2]
- strh r0, [r3]
- adds r3, 0x2
- adds r4, r5
- adds r2, 0x2
- adds r1, 0x1
- ldrb r0, [r7]
- cmp r1, r0
- blt _081DA44C
-_081DA460:
- mov r0, r9
- adds r1, r0, r6
- lsls r1, 3
- add r1, r10
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_081DA46E:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA3B8
-
- thumb_func_start sub_81DA488
-sub_81DA488: @ 81DA488
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r7, r6, 2
- adds r0, r7, r6
- lsls r4, r0, 3
- ldr r5, =gTasks + 0x8
- adds r0, r4, r5
- adds r0, 0x18
- bl sub_80FC670
- cmp r0, 0
- beq _081DA55C
- adds r0, r5, 0
- subs r0, 0x8
- adds r4, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081DA4CC
- cmp r0, 0x1
- beq _081DA50C
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0x20]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
- b _081DA55C
- .pool
-_081DA4CC:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _081DA4FA
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _081DA55C
- ldr r0, =gUnknown_02039F30
- ldrb r2, [r0]
- lsls r0, r2, 6
- ldr r1, =gContestMons
- adds r0, r1
- movs r1, 0x4
- subs r1, r2
- lsls r1, 22
- lsrs r1, 16
- bl sub_80FC4F4
- cmp r0, 0x1
- bne _081DA55C
-_081DA4FA:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _081DA55C
- .pool
-_081DA50C:
- movs r0, 0
- bl sub_80FC530
- lsls r0, 24
- cmp r0, 0
- beq _081DA55C
- ldr r4, =gUnknown_02039F30
- ldrb r3, [r4]
- lsls r0, r3, 6
- ldr r5, =gContestMons
- adds r0, r5
- ldr r1, =gBlockRecvBuffer
- movs r2, 0x4
- subs r2, r3
- lsls r2, 6
- bl memcpy
- ldrb r4, [r4]
- mov r8, r7
- cmp r4, 0x3
- bgt _081DA54C
- lsls r0, r4, 6
- adds r5, r0, r5
- ldr r7, =gLinkPlayers
-_081DA53C:
- ldrh r1, [r7, 0x1A]
- adds r0, r5, 0
- bl sub_80DFA08
- adds r5, 0x40
- adds r4, 0x1
- cmp r4, 0x3
- ble _081DA53C
-_081DA54C:
- ldr r0, =gTasks
- mov r2, r8
- adds r1, r2, r6
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_081DA55C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81DA488
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokenav.s b/asm/pokenav.s
index 1c0c18f7e..91682a780 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -8173,7 +8173,7 @@ _081CAFA4:
ldrh r0, [r1, 0x1E]
bl GetTrainerIdxByRematchIdx
ldr r1, =gStringVar4
- bl sub_81967AC
+ bl SelectMatchCallMessage
strb r0, [r6]
b _081CAFCC
.pool
diff --git a/asm/roulette.s b/asm/roulette.s
deleted file mode 100644
index 4174924e6..000000000
--- a/asm/roulette.s
+++ /dev/null
@@ -1,9634 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8140238
-sub_8140238: @ 8140238
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0xB8
- ldrb r0, [r1]
- cmp r0, 0
- beq _0814025A
- adds r0, r1, 0
- bl task_tutorial_controls_fadein
-_0814025A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140238
-
- thumb_func_start sub_8140264
-sub_8140264: @ 8140264
- push {r4,lr}
- sub sp, 0x4
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- bl sub_8142814
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- ldrh r0, [r0, 0x26]
- movs r2, 0x80
- lsls r2, 2
- adds r1, r2, 0
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x14
- bl SetGpuReg
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- beq _081402A0
- ldrh r1, [r1, 0x34]
- movs r0, 0x52
- bl SetGpuReg
-_081402A0:
- ldr r2, [r4]
- movs r3, 0x2A
- ldrsh r0, [r2, r3]
- cmp r0, 0
- beq _081402C0
- ldr r1, =0x040000d4
- ldr r3, =0x0000133c
- adds r0, r2, r3
- str r0, [r1]
- ldr r0, =0x060021c0
- str r0, [r1, 0x4]
- ldr r0, =0x800001a0
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r0, 0
- strh r0, [r2, 0x2A]
-_081402C0:
- ldr r0, [r4]
- movs r2, 0x28
- ldrsh r1, [r0, r2]
- cmp r1, 0x1
- beq _081402EC
- cmp r1, 0x1
- ble _08140374
- cmp r1, 0x2
- beq _08140324
- cmp r1, 0xFF
- beq _08140348
- b _08140374
- .pool
-_081402EC:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0
- bl ShowBg
- ldr r1, =0x040000d4
- ldr r2, [r4]
- movs r3, 0xCF
- lsls r3, 2
- adds r0, r2, r3
- str r0, [r1]
- ldr r0, =0x0600f9c0
- str r0, [r1, 0x4]
- ldr r0, =0x800001a0
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r0, 0x2
- strh r0, [r2, 0x28]
- b _08140374
- .pool
-_08140324:
- ldr r1, =0x040000d4
- movs r2, 0xCF
- lsls r2, 2
- adds r0, r2
- str r0, [r1]
- ldr r0, =0x0600f9c0
- str r0, [r1, 0x4]
- ldr r0, =0x800001a0
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- b _08140374
- .pool
-_08140348:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0
- bl ShowBg
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x040000d4
- mov r3, sp
- str r3, [r1]
- ldr r0, =0x0600f9c0
- str r0, [r1, 0x4]
- ldr r0, =0x810001a0
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r1, [r4]
- movs r0, 0
- strh r0, [r1, 0x28]
-_08140374:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140264
-
- thumb_func_start sub_8140388
-sub_8140388: @ 8140388
- push {r4,r5,lr}
- sub sp, 0x4
- movs r5, 0
- str r5, [sp]
- ldr r4, =gUnknown_0203AB88
- movs r0, 0xE6
- lsls r0, 6
- bl AllocZeroed
- str r0, [r4]
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085B6140
- movs r0, 0x1
- movs r2, 0x3
- bl InitBgsFromTemplates
- ldr r1, [r4]
- movs r0, 0xBE
- lsls r0, 1
- adds r1, r0
- movs r0, 0
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- ldr r2, =0x0000117c
- adds r1, r2
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- ldr r0, =0x0000317c
- adds r1, r0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_085B614C
- bl InitWindows
- bl sub_8197200
- ldr r0, =gUnknown_0203AB8C
- strb r5, [r0]
- ldr r0, =gUnknown_085B5DFC
- mov r1, sp
- bl malloc_and_decompress
- ldr r1, [r4]
- ldr r2, =0x0000397c
- adds r1, r2
- str r0, [r1]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140388
-
- thumb_func_start sub_8140418
-sub_8140418: @ 8140418
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- ldr r4, =0x0000397c
- adds r0, r4
- ldr r0, [r0]
- bl Free
- ldr r0, [r5]
- adds r0, r4
- movs r4, 0
- str r4, [r0]
- bl FreeAllWindowBuffers
- movs r0, 0
- bl UnsetBgTilemapBuffer
- movs r0, 0x1
- bl UnsetBgTilemapBuffer
- movs r0, 0x2
- bl UnsetBgTilemapBuffer
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r0, [r5]
- movs r2, 0xE6
- lsls r2, 6
- movs r1, 0
- bl memset
- ldr r0, [r5]
- bl Free
- str r4, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140418
-
- thumb_func_start sub_8140470
-sub_8140470: @ 8140470
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r1, =gUnknown_085B6418
- mov r0, sp
- movs r2, 0x6
- bl memcpy
- ldr r5, =gUnknown_0203AB88
- ldr r3, [r5]
- ldr r4, =gSpecialVar_0x8004
- ldrb r0, [r4]
- movs r1, 0x1
- ands r1, r0
- ldrb r2, [r3, 0x4]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x4]
- ldrh r1, [r4]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _081404AA
- ldr r0, [r5]
- ldrb r1, [r0, 0x4]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0, 0x4]
-_081404AA:
- ldr r1, [r5]
- ldr r2, =gUnknown_085B6348
- ldrb r0, [r1, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r2
- ldrb r0, [r0, 0x3]
- adds r1, 0x22
- strb r0, [r1]
- ldr r1, [r5]
- ldrb r0, [r1, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r2
- ldrb r0, [r0, 0x4]
- adds r1, 0x23
- strb r0, [r1]
- ldr r2, [r5]
- ldr r3, =gUnknown_085B6344
- ldrb r1, [r2, 0x4]
- lsls r0, r1, 30
- lsrs r0, 30
- lsrs r1, 7
- lsls r1, 1
- adds r0, r1
- adds r0, r3
- ldrb r0, [r0]
- strb r0, [r2, 0x19]
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- movs r0, 0xF
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0x1A]
- ldr r0, [r5]
- ldrb r0, [r0, 0x19]
- cmp r0, 0x1
- bne _08140520
- ldr r4, =gPlttBufferUnfaded
- ldr r3, =gPlttBufferFaded
- mov r0, sp
- ldrh r2, [r0]
- b _08140528
- .pool
-_08140520:
- ldr r4, =gPlttBufferUnfaded
- ldr r3, =gPlttBufferFaded
- mov r0, sp
- ldrh r2, [r0, 0x2]
-_08140528:
- adds r0, r3, 0
- adds r0, 0xA2
- strh r2, [r0]
- ldr r1, =0x0000ffff
- adds r0, r1, 0
- ands r0, r2
- strh r0, [r3]
- ands r0, r1
- adds r2, r4, 0
- adds r2, 0xA2
- strh r0, [r2]
- ands r0, r1
- strh r0, [r4]
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0xB8
- bl sub_8151678
- movs r4, 0
-_0814054E:
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- adds r0, 0xB8
- lsls r2, r4, 3
- ldr r1, =gUnknown_085B6388
- adds r2, r1
- adds r1, r4, 0
- bl sub_815168C
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xC
- bls _0814054E
- movs r4, 0
-_0814056C:
- movs r0, 0x64
- muls r0, r4
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- adds r1, r0, 0
- movs r0, 0x98
- lsls r0, 1
- cmp r1, r0
- beq _081405AC
- adds r0, 0x2
- cmp r1, r0
- bne _081405B6
- ldr r0, [r5]
- ldrb r1, [r0, 0x2]
- movs r2, 0x1
- b _081405B2
- .pool
-_081405AC:
- ldr r0, [r5]
- ldrb r1, [r0, 0x2]
- movs r2, 0x2
-_081405B2:
- orrs r1, r2
- strb r1, [r0, 0x2]
-_081405B6:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _0814056C
- bl RtcCalcLocalTime
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8140470
-
- thumb_func_start sub_81405CC
-sub_81405CC: @ 81405CC
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x8
- bls _081405E0
- b _081407F8
-_081405E0:
- lsls r0, 2
- ldr r1, =_081405F4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081405F4:
- .4byte _08140618
- .4byte _08140630
- .4byte _08140650
- .4byte _08140662
- .4byte _0814069C
- .4byte _081406C0
- .4byte _081406E0
- .4byte _08140750
- .4byte _0814077A
-_08140618:
- movs r0, 0
- bl SetVBlankCallback
- bl ScanlineEffect_Stop
- bl SetVBlankHBlankCallbacksToNull
- bl ResetVramOamAndBgCntRegs
- bl ResetAllBgsCoordinates
- b _081407F8
-_08140630:
- bl sub_8140388
- bl DeactivateAllTextPrinters
- movs r1, 0x90
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- ldr r1, =0x0000060a
- movs r0, 0x52
- bl SetGpuReg
- b _081407F8
- .pool
-_08140650:
- bl ResetPaletteFade
- bl ResetSpriteData
- bl ResetTasks
- bl reset_temp_tile_data_buffers
- b _081407F8
-_08140662:
- ldr r0, =gUnknown_085B5BFC
- movs r2, 0xE0
- lsls r2, 1
- movs r1, 0
- bl LoadPalette
- ldr r1, =gRouletteMenuTiles
- movs r4, 0
- str r4, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
- ldr r1, =gRouletteWheelTiles
- str r4, [sp]
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
- b _081407F8
- .pool
-_0814069C:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- cmp r0, 0
- beq _081406A8
- b _08140806
-_081406A8:
- bl sub_8140470
- ldr r1, =gUnknown_085B5FA0
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- b _081407F8
- .pool
-_081406C0:
- movs r0, 0
- bl sub_8142C0C
- bl sub_81439C8
- bl sub_814391C
- bl sub_8143314
- bl sub_8142CD0
- bl sub_8142F7C
- bl sub_81431E4
- b _081407F8
-_081406E0:
- bl AnimateSprites
- bl BuildOamBuffer
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- bl sub_8143514
- movs r0, 0x6
- bl sub_814372C
- movs r0, 0
- bl sub_81436D0
- movs r0, 0
- bl sub_81424FC
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5B89
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r5, 0
- str r5, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =gSpriteCoordOffsetX
- movs r2, 0x3C
- negs r2, r2
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, =gSpriteCoordOffsetY
- strh r5, [r0]
- b _081407F8
- .pool
-_08140750:
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- b _081407F8
-_0814077A:
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_8140264
- bl SetVBlankCallback
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginHardwarePaletteFade
- ldr r0, =sub_81408A8
- movs r1, 0
- bl CreateTask
- ldr r5, =gUnknown_0203AB88
- ldr r1, [r5]
- adds r1, 0xA4
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- movs r0, 0x6
- strh r0, [r4, 0x14]
- bl GetCoins
- strh r0, [r4, 0x22]
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- bl sub_80EDE84
- ldr r0, =sub_8140814
- movs r1, 0x1
- bl CreateTask
- ldr r1, [r5]
- adds r1, 0xA5
- strb r0, [r1]
- ldr r0, =sub_8140238
- bl SetMainCallback2
- b _08140806
- .pool
-_081407F8:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_08140806:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81405CC
-
- thumb_func_start sub_8140814
-sub_8140814: @ 8140814
- push {r4-r6,lr}
- ldr r3, =gUnknown_0203AB88
- ldr r0, [r3]
- adds r0, 0x21
- ldrb r2, [r0]
- adds r1, r2, 0x1
- strb r1, [r0]
- ldr r1, [r3]
- adds r0, r1, 0
- adds r0, 0x23
- lsls r2, 24
- lsrs r2, 24
- adds r6, r3, 0
- ldrb r0, [r0]
- cmp r2, r0
- bne _0814085A
- adds r1, 0x21
- movs r0, 0
- strb r0, [r1]
- ldr r2, [r6]
- adds r3, r2, 0
- adds r3, 0x22
- ldrb r1, [r3]
- ldrh r0, [r2, 0x24]
- subs r0, r1
- strh r0, [r2, 0x24]
- lsls r0, 16
- cmp r0, 0
- bge _0814085A
- ldrb r1, [r3]
- movs r3, 0xB4
- lsls r3, 1
- adds r0, r3, 0
- subs r0, r1
- strh r0, [r2, 0x24]
-_0814085A:
- adds r4, r6, 0
- ldr r0, [r4]
- ldrh r0, [r0, 0x24]
- bl Sin2
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, [r4]
- ldrh r0, [r0, 0x24]
- bl Cos2
- lsls r0, 16
- lsrs r1, r0, 16
- lsls r0, r5, 16
- asrs r0, 16
- cmp r0, 0
- bge _0814087E
- adds r0, 0xF
-_0814087E:
- lsls r0, 12
- lsrs r5, r0, 16
- ldr r3, [r6]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0
- bge _0814088E
- adds r0, 0xF
-_0814088E:
- asrs r0, 4
- strh r0, [r3, 0x32]
- strh r0, [r3, 0x2C]
- strh r5, [r3, 0x2E]
- lsls r0, r5, 16
- asrs r0, 16
- negs r0, r0
- strh r0, [r3, 0x30]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140814
-
- thumb_func_start sub_81408A8
-sub_81408A8: @ 81408A8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl UpdatePaletteFade
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _081408FE
- movs r1, 0x90
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- ldr r1, =0x00000808
- movs r0, 0x52
- bl SetGpuReg
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r5, [r0, 0x14]
- adds r0, r4, 0
- bl sub_8141FF4
- bl sub_8142070
- bl sub_8143A40
- movs r0, 0
- bl sub_81424FC
- movs r0, 0x6
- bl sub_814372C
- ldr r1, =sub_8140968
- ldr r2, =0x0000ffff
- adds r0, r4, 0
- movs r3, 0x3
- bl sub_8141F7C
-_081408FE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81408A8
-
- thumb_func_start sub_8140914
-sub_8140914: @ 8140914
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl DisplayYesNoMenu
- ldr r5, =gUnknown_0203AB8C
- ldrb r0, [r5]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r5]
- ldr r2, =gUnknown_082A5C13
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r5]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =gUnknown_085B6410
- adds r0, r4, 0
- bl sub_8121F68
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140914
-
- thumb_func_start sub_8140968
-sub_8140968: @ 8140968
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_819746C
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8140BD0
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140968
-
- thumb_func_start sub_8140994
-sub_8140994: @ 8140994
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0xA5
- ldrb r0, [r0]
- bl DestroyTask
- adds r0, r4, 0
- bl sub_8141DE4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140994
-
- thumb_func_start sub_81409B8
-sub_81409B8: @ 81409B8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _081409CA
- b _08140AE8
-_081409CA:
- lsls r0, r4, 2
- ldr r1, =_081409D8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081409D8:
- .4byte _08140A18
- .4byte _08140A3C
- .4byte _08140A3C
- .4byte _08140A3C
- .4byte _08140A3C
- .4byte _08140A90
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140A90
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140AE8
- .4byte _08140A90
-_08140A18:
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- movs r1, 0xBE
- lsls r1, 1
- adds r0, r1
- movs r1, 0x10
- str r1, [sp]
- movs r1, 0xD
- str r1, [sp, 0x4]
- movs r1, 0
- movs r2, 0xE
- movs r3, 0x7
- bl sub_8152008
- b _08140B4E
- .pool
-_08140A3C:
- lsls r0, r4, 1
- adds r0, r4
- adds r0, 0xE
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- movs r4, 0xBE
- lsls r4, 1
- adds r0, r4
- movs r1, 0x10
- str r1, [sp]
- movs r6, 0xD
- str r6, [sp, 0x4]
- movs r1, 0
- movs r2, 0xE
- movs r3, 0x7
- bl sub_8152008
- ldr r0, [r5]
- adds r4, r0, r4
- ldr r1, =0x0000397c
- adds r0, r1
- ldr r1, [r0]
- ldr r0, =0x00000232
- adds r1, r0
- movs r0, 0x3
- str r0, [sp]
- str r6, [sp, 0x4]
- adds r0, r4, 0
- mov r2, r8
- movs r3, 0x7
- bl sub_8152058
- b _08140B4E
- .pool
-_08140A90:
- subs r0, r4, 0x1
- movs r1, 0x5
- bl __divsi3
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0xA
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- movs r4, 0xBE
- lsls r4, 1
- adds r0, r4
- movs r6, 0x10
- str r6, [sp]
- movs r1, 0xD
- str r1, [sp, 0x4]
- movs r1, 0
- movs r2, 0xE
- movs r3, 0x7
- bl sub_8152008
- ldr r0, [r5]
- adds r4, r0, r4
- ldr r1, =0x0000397c
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0xA0
- lsls r0, 2
- adds r1, r0
- str r6, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r2, 0xE
- adds r3, r7, 0
- bl sub_8152058
- b _08140B4E
- .pool
-_08140AE8:
- adds r0, r4, 0
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0xE
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- subs r0, r4, 0x1
- movs r1, 0x5
- bl __divsi3
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0x7
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- movs r4, 0xBE
- lsls r4, 1
- adds r0, r4
- movs r1, 0x10
- str r1, [sp]
- movs r1, 0xD
- str r1, [sp, 0x4]
- movs r1, 0
- movs r2, 0xE
- movs r3, 0x7
- bl sub_8152008
- ldr r0, [r5]
- adds r4, r0, r4
- ldr r1, =0x0000397c
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x88
- lsls r0, 2
- adds r1, r0
- movs r0, 0x3
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r4, 0
- mov r2, r8
- adds r3, r7, 0
- bl sub_8152058
-_08140B4E:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81409B8
-
- thumb_func_start sub_8140B64
-sub_8140B64: @ 8140B64
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- ldrb r0, [r4, 0x10]
- bl sub_81436D0
- ldrb r0, [r4, 0x10]
- bl sub_81409B8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140B64
-
- thumb_func_start sub_8140B8C
-sub_8140B8C: @ 8140B8C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gUnknown_0203AB88
- ldr r2, [r5]
- movs r6, 0
- movs r1, 0x1
- strh r1, [r2, 0x28]
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- ldrb r0, [r4, 0x10]
- bl sub_81409B8
- ldr r0, [r5]
- adds r0, 0x23
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x21
- strb r6, [r0]
- ldr r0, =sub_8141040
- str r0, [r4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140B8C
-
- thumb_func_start sub_8140BD0
-sub_8140BD0: @ 8140BD0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gUnknown_0203AB88
- ldr r0, [r1]
- ldr r2, [r0, 0x8]
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _08140C30
- movs r3, 0xB
- ldr r5, =gUnknown_085B6154
- adds r0, r5, 0
- adds r0, 0xE4
- ldr r0, [r0]
- ands r2, r0
- ldr r0, =gTasks
- mov r12, r0
- lsls r7, r6, 2
- cmp r2, 0
- beq _08140C6E
- adds r4, r1, 0
- adds r5, 0x8
-_08140BFE:
- lsls r0, r3, 16
- movs r1, 0x80
- lsls r1, 9
- adds r0, r1
- lsrs r3, r0, 16
- asrs r2, r0, 16
- cmp r2, 0xD
- bgt _08140C6E
- ldr r1, [r4]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- ldr r1, [r1, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08140BFE
- b _08140C6E
- .pool
-_08140C30:
- movs r3, 0x6
- ldr r5, =gUnknown_085B6154
- adds r0, r5, 0
- adds r0, 0x80
- ldr r0, [r0]
- ands r2, r0
- ldr r0, =gTasks
- mov r12, r0
- lsls r7, r6, 2
- cmp r2, 0
- beq _08140C6E
- adds r4, r1, 0
- adds r5, 0x8
-_08140C4A:
- lsls r0, r3, 16
- movs r1, 0x80
- lsls r1, 9
- adds r0, r1
- lsrs r3, r0, 16
- asrs r2, r0, 16
- cmp r2, 0x9
- bgt _08140C6E
- ldr r1, [r4]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- ldr r1, [r1, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08140C4A
-_08140C6E:
- adds r4, r7, r6
- lsls r4, 3
- add r4, r12
- movs r5, 0
- strh r3, [r4, 0x10]
- adds r0, r6, 0
- bl sub_8141FF4
- ldrb r0, [r4, 0x10]
- bl sub_81424FC
- ldrb r0, [r4, 0x10]
- bl sub_81436D0
- ldrb r0, [r4, 0x10]
- bl sub_8142284
- strh r5, [r4, 0xA]
- ldr r0, =sub_8140B8C
- str r0, [r4]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140BD0
-
- thumb_func_start sub_8140CA8
-sub_8140CA8: @ 8140CA8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- movs r6, 0
- movs r7, 0
- ldr r1, =gUnknown_085B641E
- mov r0, sp
- movs r2, 0x4
- bl memcpy
- ldrb r0, [r4]
- mov r8, r0
- cmp r5, 0
- blt _08140D1C
- cmp r5, 0x1
- bgt _08140CF4
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r1, 0x5
- bl __modsi3
- lsls r0, 24
- lsrs r6, r0, 24
- movs r2, 0xF0
- lsls r2, 20
- adds r1, r0, r2
- lsrs r7, r1, 24
- cmp r0, 0
- bne _08140D1C
- movs r6, 0x5
- b _08140D1C
- .pool
-_08140CF4:
- cmp r5, 0x3
- bgt _08140D1C
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r1, 0x5
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 24
- lsrs r6, r1, 24
- movs r2, 0x80
- lsls r2, 19
- adds r0, r1, r2
- lsrs r7, r0, 24
- cmp r1, 0
- bne _08140D1C
- movs r6, 0x1
-_08140D1C:
- mov r1, sp
- adds r0, r1, r5
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r2, [r4]
- adds r0, r2
- strh r0, [r4]
- lsls r1, r6, 24
- asrs r3, r1, 24
- lsls r0, 16
- asrs r0, 16
- lsls r2, r7, 24
- cmp r0, r3
- bge _08140D3E
- asrs r0, r2, 24
- strh r0, [r4]
-_08140D3E:
- movs r0, 0
- ldrsh r1, [r4, r0]
- asrs r0, r2, 24
- cmp r1, r0
- ble _08140D4A
- strh r3, [r4]
-_08140D4A:
- mov r1, r8
- lsls r0, r1, 24
- movs r2, 0
- ldrsh r1, [r4, r2]
- asrs r0, 24
- cmp r1, r0
- bne _08140D5C
- movs r0, 0
- b _08140D5E
-_08140D5C:
- movs r0, 0x1
-_08140D5E:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8140CA8
-
- thumb_func_start sub_8140D6C
-sub_8140D6C: @ 8140D6C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r7, r0, 24
- movs r0, 0
- mov r9, r0
- movs r5, 0
- ldr r4, =gMain
- ldrh r1, [r4, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08140DA8
- movs r5, 0x1
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r0, r1
- adds r0, 0x8
- movs r1, 0
- bl sub_8140CA8
- lsls r0, 24
- cmp r0, 0
- bne _08140DA8
- b _08140F3A
-_08140DA8:
- ldrh r1, [r4, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08140DCE
- movs r5, 0x1
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r0, r1
- adds r0, 0x8
- movs r1, 0x1
- bl sub_8140CA8
- lsls r0, 24
- cmp r0, 0
- bne _08140DCE
- b _08140F3A
-_08140DCE:
- ldrh r1, [r4, 0x2E]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08140DF4
- movs r5, 0x1
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r0, r1
- adds r0, 0x8
- movs r1, 0x2
- bl sub_8140CA8
- lsls r0, 24
- cmp r0, 0
- bne _08140DF4
- b _08140F3A
-_08140DF4:
- ldrh r1, [r4, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08140E1A
- movs r5, 0x1
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r0, r1
- adds r0, 0x8
- movs r1, 0x3
- bl sub_8140CA8
- lsls r0, 24
- cmp r0, 0
- bne _08140E1A
- b _08140F3A
-_08140E1A:
- cmp r5, 0
- bne _08140E20
- b _08140F3A
-_08140E20:
- ldr r0, =gTasks
- lsls r6, r7, 2
- adds r4, r6, r7
- lsls r4, 3
- adds r4, r0
- ldrb r0, [r4, 0x10]
- bl sub_81424FC
- adds r0, r7, 0
- bl sub_8140B64
- mov r1, r9
- strh r1, [r4, 0xA]
- movs r0, 0x5
- bl PlaySE
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- adds r0, 0xB8
- ldr r1, =0x0000ffff
- bl sub_8151A9C
- ldr r5, [r5]
- movs r2, 0xB8
- lsls r2, 1
- adds r3, r5, r2
- ldrb r2, [r3]
- movs r1, 0x7F
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3]
- movs r0, 0xB2
- lsls r0, 1
- adds r3, r5, r0
- ldrb r2, [r3]
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3]
- movs r0, 0xAC
- lsls r0, 1
- adds r2, r5, r0
- ldrb r0, [r2]
- ands r1, r0
- strb r1, [r2]
- ldrb r0, [r4, 0x10]
- bl sub_8142284
- movs r4, 0
- mov r9, r6
- ldr r1, =gSprites
- mov r12, r1
- movs r2, 0x8
- add r2, r12
- mov r10, r2
-_08140E8C:
- ldr r0, =gUnknown_0203AB88
- ldr r5, [r0]
- adds r0, r4, 0
- adds r0, 0x29
- adds r6, r5, 0
- adds r6, 0x3C
- adds r0, r6, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- mov r1, r12
- adds r3, r0, r1
- adds r2, r3, 0
- adds r2, 0x40
- add r0, r10
- ldr r0, [r0]
- ldr r0, [r0]
- ldrh r1, [r0]
- ldrh r2, [r2]
- adds r1, r2
- ldr r2, =0x000003ff
- mov r8, r2
- mov r0, r8
- ands r1, r0
- ldrh r2, [r3, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _08140E8C
- ldr r0, =gTasks
- mov r2, r9
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldrh r3, [r1, 0x10]
- subs r0, r3, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3
- bhi _08140F3A
- ldr r2, =gUnknown_085B6154
- movs r0, 0x10
- ldrsh r1, [r1, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x8
- adds r0, r2
- ldr r1, [r5, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08140F3A
- subs r0, r3, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- adds r0, 0x29
- adds r0, r6, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r3, r0, r1
- adds r2, r3, 0
- adds r2, 0x40
- adds r1, 0x8
- adds r0, r1
- ldr r0, [r0]
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldrh r2, [r2]
- adds r1, r2
- mov r2, r8
- ands r1, r2
- ldrh r2, [r3, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
-_08140F3A:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140D6C
-
- thumb_func_start sub_8140F6C
-sub_8140F6C: @ 8140F6C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80EECA4
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- movs r0, 0xFF
- strh r0, [r1, 0x28]
- ldrb r2, [r1, 0x19]
- cmp r2, 0x1
- bne _08140F90
- adds r0, r1, 0
- adds r0, 0x23
- strb r2, [r0]
- b _08140F96
- .pool
-_08140F90:
- adds r1, 0x23
- movs r0, 0
- strb r0, [r1]
-_08140F96:
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x21
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x20
- strh r1, [r0, 0xA]
- ldr r1, =sub_81410FC
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140F6C
-
- thumb_func_start sub_8140FC4
-sub_8140FC4: @ 8140FC4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gUnknown_0203AB88
- ldr r2, [r4]
- ldrb r1, [r2, 0x1A]
- lsls r1, 28
- lsrs r1, 28
- adds r2, 0x1B
- adds r2, r1
- ldr r3, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r5, r1, r3
- ldrh r0, [r5, 0x10]
- strb r0, [r2]
- ldr r1, [r4]
- ldrb r0, [r1, 0x1A]
- lsls r0, 28
- lsrs r0, 28
- adds r1, 0x1B
- adds r1, r0
- ldrb r0, [r1]
- bl sub_8142758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xC]
- ldr r1, [r4]
- ldrb r0, [r1, 0x1A]
- lsls r0, 28
- lsrs r0, 28
- adds r1, 0x1B
- adds r1, r0
- ldrb r0, [r1]
- bl sub_81436D0
- ldr r0, [r4]
- ldrb r1, [r0, 0x19]
- ldrh r0, [r5, 0x22]
- subs r0, r1
- strh r0, [r5, 0x22]
- lsls r0, 16
- cmp r0, 0
- bge _08141024
- movs r0, 0
- strh r0, [r5, 0x22]
-_08141024:
- ldrh r0, [r5, 0x22]
- bl sub_8143514
- ldr r0, =sub_8140F6C
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8140FC4
-
- thumb_func_start sub_8141040
-sub_8141040: @ 8141040
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl sub_8140D6C
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x1E
- beq _08141076
- cmp r0, 0x1E
- bgt _0814106C
- cmp r0, 0
- beq _08141072
- b _0814108A
- .pool
-_0814106C:
- cmp r0, 0x3B
- beq _08141084
- b _0814108A
-_08141072:
- ldrb r0, [r4, 0x10]
- b _08141078
-_08141076:
- movs r0, 0
-_08141078:
- bl sub_81409B8
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- b _0814109A
-_08141084:
- movs r0, 0
- strh r0, [r4, 0xA]
- b _0814109A
-_0814108A:
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
-_0814109A:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081410F2
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- ldr r2, =gUnknown_085B6154
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x8
- adds r0, r2
- ldr r1, [r3, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _081410E8
- movs r0, 0x16
- bl PlaySE
- b _081410F2
- .pool
-_081410E8:
- movs r0, 0x5F
- bl m4aSongNumStart
- ldr r0, =sub_8140FC4
- str r0, [r4]
-_081410F2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141040
-
- thumb_func_start sub_81410FC
-sub_81410FC: @ 81410FC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0xA]
- subs r1, r0, 0x1
- strh r1, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- ble _08141168
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x2
- ble _08141128
- ldr r1, =gSpriteCoordOffsetX
- ldrh r0, [r1]
- adds r0, 0x2
- strh r0, [r1]
-_08141128:
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- ldrh r0, [r1, 0x26]
- adds r0, 0x4
- strh r0, [r1, 0x26]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x68
- bne _08141180
- ldr r2, =gSprites
- adds r0, r1, 0
- adds r0, 0x55
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- b _08141180
- .pool
-_08141168:
- movs r0, 0x1
- movs r1, 0xFF
- bl sub_8142E70
- movs r0, 0x1
- movs r1, 0xFF
- bl sub_8143038
- ldr r0, =sub_8141344
- str r0, [r4]
- movs r0, 0
- strh r0, [r4, 0xA]
-_08141180:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81410FC
-
- thumb_func_start sub_814118C
-sub_814118C: @ 814118C
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 16
- lsrs r1, 16
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- ldrb r2, [r3, 0x2]
- adds r5, r0, 0
- cmp r2, 0x2
- bgt _081411AC
- cmp r2, 0x1
- bge _081411B2
- b _08141280
- .pool
-_081411AC:
- cmp r2, 0x3
- beq _08141214
- b _08141280
-_081411B2:
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- subs r0, 0x4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bhi _081411E4
- cmp r4, 0xB
- bls _081411CC
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08141296
-_081411CC:
- ldr r0, =gUnknown_085B6348
- ldrb r1, [r3, 0x4]
- lsls r1, 30
- lsrs r1, 25
- adds r1, r0
- ldrb r0, [r1, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_081411E4:
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08141200
- ldr r0, =gUnknown_085B6348
- ldrb r1, [r3, 0x4]
- lsls r1, 30
- lsrs r1, 25
- adds r1, r0
- ldrb r0, [r1, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_08141200:
- ldr r0, =gUnknown_085B6348
- ldrb r1, [r3, 0x4]
- lsls r1, 30
- lsrs r1, 25
- adds r1, r0
- ldrb r0, [r1, 0x2]
- b _0814133A
- .pool
-_08141214:
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- subs r0, 0x4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- bhi _08141248
- cmp r4, 0x5
- bls _0814122E
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08141296
-_0814122E:
- ldr r0, =gUnknown_085B6348
- ldrb r1, [r3, 0x4]
- lsls r1, 30
- lsrs r1, 25
- adds r1, r0
- ldrb r0, [r1, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_08141248:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08141268
- cmp r4, 0x6
- bls _08141268
- ldr r0, =gUnknown_085B6348
- ldrb r1, [r3, 0x4]
- lsls r1, 30
- lsrs r1, 25
- adds r1, r0
- ldrb r0, [r1, 0x2]
- lsrs r0, 2
- b _0814133A
- .pool
-_08141268:
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_08141280:
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- subs r0, 0x4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bhi _081412B8
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _081412A0
-_08141296:
- movs r0, 0x1
- b _0814133A
- .pool
-_081412A0:
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_081412B8:
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _081412F0
- cmp r4, 0xC
- bls _081412DC
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x2]
- lsrs r0, 1
- b _0814133A
- .pool
-_081412DC:
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x2]
- b _0814133A
- .pool
-_081412F0:
- movs r0, 0x80
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- beq _08141328
- cmp r4, 0xC
- bls _08141314
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x2]
- b _0814133A
- .pool
-_08141314:
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x1]
- b _0814133A
- .pool
-_08141328:
- ldr r1, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrb r0, [r0, 0x1]
- lsls r0, 25
- lsrs r0, 24
-_0814133A:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_814118C
-
- thumb_func_start sub_8141344
-sub_8141344: @ 8141344
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- movs r4, 0
- ldr r1, =gUnknown_085B6422
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- bl Random
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r7, 0
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r3, =gUnknown_0203AB88
- ldr r0, [r3]
- ldr r2, =gTasks
- mov r5, r10
- lsls r1, r5, 2
- add r1, r10
- lsls r1, 3
- adds r1, r2
- ldrh r2, [r1, 0x14]
- adds r0, 0x7C
- strb r2, [r0]
- ldr r0, [r3]
- adds r2, r0, 0
- adds r2, 0x7F
- strb r4, [r2]
- subs r2, 0x1
- strb r4, [r2]
- adds r0, 0x7D
- strb r4, [r0]
- ldrh r0, [r1, 0x18]
- adds r1, r7, 0
- bl sub_814118C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r1, r4, 24
- adds r0, r7, 0
- bl __modsi3
- lsrs r4, 25
- subs r0, r4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- lsls r0, 24
- asrs r0, 24
- movs r5, 0x1
- cmp r0, 0xC
- bgt _081413C8
- movs r5, 0
-_081413C8:
- cmp r6, 0x4F
- bhi _081413E0
- lsls r0, r5, 25
- b _081413EA
- .pool
-_081413E0:
- lsls r1, r5, 24
- asrs r1, 24
- movs r0, 0x1
- subs r0, r1
- lsls r0, 25
-_081413EA:
- lsrs r5, r0, 24
- ldr r0, _08141530 @ =gUnknown_0203AB88
- ldr r6, [r0]
- ldrb r0, [r6, 0x4]
- lsls r0, 30
- lsrs r0, 25
- ldr r1, _08141534 @ =gUnknown_085B6348
- adds r0, r1
- lsls r4, 24
- asrs r4, 24
- ldrh r0, [r0, 0x1A]
- adds r4, r0
- adds r0, r6, 0
- adds r0, 0x80
- strh r4, [r0]
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- bl __floatsisf
- cmp r4, 0
- bge _0814141C
- ldr r1, _08141538 @ =0x47800000
- bl __addsf3
-_0814141C:
- ldr r1, _0814153C @ =0x40A00000
- bl __divsf3
- bl __fixunssfsi
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r0, r4, 1
- adds r0, r4
- movs r2, 0x82
- adds r2, r6
- mov r8, r2
- strh r0, [r2]
- adds r0, r6, 0
- adds r0, 0x84
- strh r4, [r0]
- adds r0, 0x2
- strh r4, [r0]
- movs r0, 0x88
- adds r0, r6
- mov r9, r0
- movs r0, 0x1
- ands r0, r7
- lsls r1, r5, 24
- asrs r1, 24
- adds r0, r1
- lsls r0, 1
- add r0, sp
- movs r1, 0
- ldrsh r4, [r0, r1]
- adds r0, r4, 0
- bl __floatsisf
- cmp r4, 0
- bge _08141468
- ldr r1, _08141538 @ =0x47800000
- bl __addsf3
-_08141468:
- mov r2, r9
- str r0, [r2]
- adds r7, r6, 0
- adds r7, 0x8C
- ldrb r0, [r6, 0x4]
- lsls r0, 30
- lsrs r0, 25
- ldr r5, _08141534 @ =gUnknown_085B6348
- adds r0, r5
- movs r1, 0x18
- ldrsh r4, [r0, r1]
- adds r0, r4, 0
- bl __floatsisf
- adds r5, r0, 0
- cmp r4, 0
- bge _08141492
- ldr r1, _08141538 @ =0x47800000
- bl __addsf3
- adds r5, r0, 0
-_08141492:
- str r5, [r7]
- adds r7, r6, 0
- adds r7, 0x90
- ldr r1, _08141540 @ =0x3F000000
- adds r0, r5, 0
- bl __mulsf3
- adds r1, r5, 0
- bl __subsf3
- adds r5, r0, 0
- mov r2, r8
- movs r0, 0
- ldrsh r4, [r2, r0]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _081414C2
- ldr r1, _08141538 @ =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_081414C2:
- adds r0, r5, 0
- adds r1, r2, 0
- bl __divsf3
- str r0, [r7]
- adds r1, r6, 0
- adds r1, 0x94
- ldr r0, _08141544 @ =0x42880000
- str r0, [r1]
- adds r1, 0x8
- ldr r0, _08141548 @ =0x00000000
- str r0, [r1]
- adds r5, r6, 0
- adds r5, 0x98
- mov r1, r8
- movs r2, 0
- ldrsh r4, [r1, r2]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _081414F8
- ldr r1, _08141538 @ =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_081414F8:
- ldr r0, _0814154C @ =0x41000000
- adds r1, r2, 0
- bl __divsf3
- bl __negsf2
- str r0, [r5]
- adds r1, r6, 0
- adds r1, 0xA0
- ldr r0, _08141550 @ =0x42100000
- str r0, [r1]
- ldr r1, _08141554 @ =gTasks
- mov r5, r10
- lsls r0, r5, 2
- add r0, r10
- lsls r0, 3
- adds r0, r1
- ldr r1, _08141558 @ =sub_814155C
- str r1, [r0]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08141530:
- .4byte gUnknown_0203AB88
-_08141534:
- .4byte gUnknown_085B6348
-_08141538:
- .4byte 0x47800000
-_0814153C:
- .4byte 0x40A00000
-_08141540:
- .4byte 0x3F000000
-_08141544:
- .4byte 0x42880000
-_08141548:
- .4byte 0x00000000
-_0814154C:
- .4byte 0x41000000
-_08141550:
- .4byte 0x42100000
-_08141554:
- .4byte gTasks
-_08141558:
- .4byte sub_814155C
- thumb_func_end sub_8141344
-
- thumb_func_start sub_814155C
-sub_814155C: @ 814155C
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gUnknown_0203AB88
- ldr r3, [r4]
- ldrb r1, [r3, 0x3]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r3, 0x3]
- ldr r3, [r4]
- adds r2, r3, 0
- adds r2, 0x7C
- adds r1, r3, 0
- adds r1, 0x3C
- ldrb r2, [r2]
- adds r1, r2
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- ldr r2, =gSprites
- adds r1, r2
- str r1, [r3, 0x38]
- ldr r2, =sub_81446AC
- str r2, [r1, 0x1C]
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- ldrh r1, [r4, 0x14]
- adds r1, 0x1
- strh r1, [r4, 0x14]
- ldrh r0, [r4, 0x18]
- adds r0, 0x1
- strh r0, [r4, 0x18]
- movs r0, 0x6
- subs r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl sub_814372C
- movs r0, 0x5C
- bl m4aSongNumStart
- ldr r0, =sub_81415D4
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814155C
-
- thumb_func_start sub_81415D4
-sub_81415D4: @ 81415D4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r6, =gUnknown_0203AB88
- ldr r3, [r6]
- adds r0, r3, 0
- adds r0, 0x7D
- ldrb r0, [r0]
- cmp r0, 0
- beq _081416C6
- ldrb r1, [r3, 0x3]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08141614
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081416C6
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r3, 0x3]
- ldr r2, [r6]
- ldrb r1, [r2, 0x3]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x3]
- b _081416C6
- .pool
-_08141614:
- ldr r2, =gTasks
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r0, 3
- adds r5, r0, r2
- movs r2, 0xA
- ldrsh r0, [r5, r2]
- adds r7, r1, 0
- cmp r0, 0
- bne _08141660
- adds r0, r3, 0
- adds r0, 0x7E
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_81420D0
- lsls r0, 24
- lsrs r0, 24
- ldr r2, [r6]
- ldrb r1, [r2, 0x1A]
- lsls r1, 28
- lsrs r1, 28
- adds r2, 0x1B
- adds r2, r1
- ldrb r1, [r2]
- bl sub_81421E8
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x12]
- cmp r0, 0x1
- bne _08141660
- ldr r0, [r6]
- adds r0, 0xB8
- movs r1, 0x80
- lsls r1, 5
- bl sub_8151A48
-_08141660:
- ldr r0, =gTasks
- adds r1, r7, r4
- lsls r1, 3
- adds r4, r1, r0
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x3C
- bgt _08141690
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08141680
- movs r0, 0x3C
- strh r0, [r4, 0xA]
-_08141680:
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- b _081416C6
- .pool
-_08141690:
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- ldrb r0, [r1, 0x1A]
- lsls r0, 28
- lsrs r0, 28
- adds r1, 0x1B
- adds r1, r0
- ldrb r0, [r1]
- bl sub_81424FC
- ldrh r1, [r4, 0x20]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_8142E70
- ldrb r1, [r4, 0x14]
- subs r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_8143038
- movs r0, 0x20
- strh r0, [r4, 0xA]
- ldr r0, =sub_81416D4
- str r0, [r4]
-_081416C6:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81415D4
-
- thumb_func_start sub_81416D4
-sub_81416D4: @ 81416D4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0xA]
- subs r1, r0, 0x1
- strh r1, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- ble _08141740
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x2
- ble _08141700
- ldr r1, =gSpriteCoordOffsetX
- ldrh r0, [r1]
- subs r0, 0x2
- strh r0, [r1]
-_08141700:
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- ldrh r0, [r1, 0x26]
- subs r0, 0x4
- strh r0, [r1, 0x26]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x68
- bne _08141768
- ldr r2, =gSprites
- adds r0, r1, 0
- adds r0, 0x55
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, =sub_814390C
- str r1, [r0]
- b _08141768
- .pool
-_08141740:
- ldrh r0, [r4, 0x20]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8143150
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _08141756
- movs r0, 0x79
- b _08141758
-_08141756:
- movs r0, 0x3D
-_08141758:
- strh r0, [r4, 0xA]
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_8141778
- str r0, [r1]
-_08141768:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81416D4
-
- thumb_func_start sub_8141778
-sub_8141778: @ 8141778
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0xA]
- subs r1, r0, 0x1
- strh r1, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _081417E8
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081417A2
- adds r0, 0xF
-_081417A2:
- asrs r0, 4
- lsls r0, 4
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- beq _081417CC
- cmp r0, 0x8
- bne _081417F4
- movs r0, 0
- movs r1, 0xFF
- bl sub_8142E70
- movs r0, 0
- movs r1, 0xFF
- bl sub_8143038
- b _081417F4
- .pool
-_081417CC:
- ldrh r1, [r4, 0x20]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_8142E70
- ldrb r1, [r4, 0x14]
- subs r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_8143038
- b _081417F4
-_081417E8:
- ldr r1, =sub_814189C
- adds r0, r2, 0
- movs r2, 0x1E
- movs r3, 0
- bl sub_8141F7C
-_081417F4:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141778
-
- thumb_func_start sub_8141800
-sub_8141800: @ 8141800
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08141864
- cmp r0, 0
- blt _08141864
- cmp r0, 0x2
- bgt _08141864
- bl IsFanfareTaskInactive
- lsls r0, 24
- cmp r0, 0
- beq _08141888
- movs r0, 0x1D
- bl GetGameStat
- ldrh r1, [r4, 0x1E]
- adds r1, 0x1
- strh r1, [r4, 0x1E]
- lsls r1, 16
- asrs r1, 16
- cmp r0, r1
- bcs _08141848
- movs r0, 0x1E
- ldrsh r1, [r4, r0]
- movs r0, 0x1D
- bl SetGameStat
-_08141848:
- ldr r1, =sub_8141A18
- ldr r2, =0x0000ffff
- adds r0, r5, 0
- movs r3, 0x3
- bl sub_8141F7C
- b _08141888
- .pool
-_08141864:
- bl IsSEPlaying
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _08141888
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x1E]
- ldr r1, =sub_8141AC0
- ldr r2, =0x0000ffff
- adds r0, r5, 0
- movs r3, 0x3
- bl sub_8141F7C
-_08141888:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141800
-
- thumb_func_start sub_814189C
-sub_814189C: @ 814189C
- push {r4,r5,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0x12
- ldrsh r1, [r0, r2]
- cmp r1, 0
- beq _08141928
- cmp r1, 0
- blt _08141928
- cmp r1, 0x2
- bgt _08141928
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- cmp r0, 0xC
- bne _081418EC
- ldr r0, =0x00000185
- bl PlayFanfare
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5BD7
- b _08141902
- .pool
-_081418EC:
- movs r0, 0xC3
- lsls r0, 1
- bl PlayFanfare
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5BCB
-_08141902:
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- b _08141958
- .pool
-_08141928:
- movs r0, 0x20
- bl m4aSongNumStart
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5BE0
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
-_08141958:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xA]
- ldr r1, =sub_8141800
- str r1, [r0]
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814189C
-
- thumb_func_start sub_8141984
-sub_8141984: @ 8141984
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r1
- movs r0, 0x16
- ldrsh r5, [r4, r0]
- cmp r5, 0
- beq _081419AC
- cmp r5, 0x3
- beq _081419DC
- ldrh r0, [r4, 0x16]
- adds r0, 0x1
- b _081419E4
- .pool
-_081419AC:
- ldrh r0, [r4, 0x22]
- adds r0, 0x1
- strh r0, [r4, 0x22]
- movs r0, 0x15
- bl m4aSongNumStart
- ldrh r0, [r4, 0x22]
- bl sub_8143514
- movs r2, 0x22
- ldrsh r1, [r4, r2]
- ldr r0, =0x0000270e
- cmp r1, r0
- ble _081419D0
- strh r5, [r4, 0xA]
- b _081419E6
- .pool
-_081419D0:
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0x16]
- adds r0, 0x1
- b _081419E4
-_081419DC:
- movs r0, 0x15
- bl m4aSongNumStop
- movs r0, 0
-_081419E4:
- strh r0, [r4, 0x16]
-_081419E6:
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- movs r2, 0xA
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08141A04
- ldr r1, =sub_8141AC0
- ldr r2, =0x0000ffff
- adds r0, r6, 0
- movs r3, 0x3
- bl sub_8141F7C
-_08141A04:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141984
-
- thumb_func_start sub_8141A18
-sub_8141A18: @ 8141A18
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gStringVar1
- ldr r1, =gUnknown_0203AB88
- mov r9, r1
- ldr r1, [r1]
- ldrb r2, [r1, 0x19]
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- adds r1, r2, 0
- muls r1, r0
- adds r0, r3, 0
- movs r2, 0
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r2, =gStringVar4
- mov r8, r2
- ldr r1, =gUnknown_082A5BEF
- mov r0, r8
- bl StringExpandPlaceholders
- ldr r5, =gUnknown_0203AB8C
- ldrb r0, [r5]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r5]
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r6, 0
- str r6, [sp, 0x8]
- movs r1, 0x1
- mov r2, r8
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r5]
- movs r1, 0x3
- bl CopyWindowToVram
- mov r1, r9
- ldr r0, [r1]
- ldrb r1, [r0, 0x19]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- muls r0, r1
- strh r0, [r4, 0xA]
- strh r6, [r4, 0x16]
- ldr r0, =sub_8141984
- str r0, [r4]
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141A18
-
- thumb_func_start sub_8141AC0
-sub_8141AC0: @ 8141AC0
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, =gUnknown_0203AB88
- ldr r0, [r5]
- adds r0, 0xB8
- ldr r1, =0x0000ffff
- bl sub_8151A9C
- ldr r6, [r5]
- movs r0, 0xB8
- lsls r0, 1
- adds r3, r6, r0
- ldrb r2, [r3]
- movs r1, 0x7F
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3]
- movs r0, 0xB2
- lsls r0, 1
- adds r3, r6, r0
- ldrb r2, [r3]
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3]
- movs r0, 0xAC
- lsls r0, 1
- adds r2, r6, r0
- ldrb r0, [r2]
- ands r1, r0
- strb r1, [r2]
- ldr r6, =gSprites
- ldr r2, [r5]
- ldr r5, =gUnknown_085B6154
- ldr r0, =gTasks
- lsls r3, r4, 2
- adds r3, r4
- lsls r3, 3
- adds r3, r0
- movs r0, 0x20
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0]
- adds r2, r0
- adds r2, 0x43
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, =sub_8141B58
- str r0, [r3]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141AC0
-
- thumb_func_start sub_8141B58
-sub_8141B58: @ 8141B58
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- strh r5, [r0, 0x10]
- ldr r4, =gUnknown_0203AB88
- ldr r1, [r4]
- ldrb r0, [r1, 0x1A]
- lsls r0, 28
- lsrs r0, 28
- adds r1, 0x1B
- adds r1, r0
- strb r2, [r1]
- movs r0, 0
- bl sub_81424FC
- ldr r3, =gSprites
- ldr r0, [r4]
- adds r0, 0x6C
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- adds r7, r3, 0
- movs r0, 0x8
- adds r0, r7
- mov r12, r0
- ldr r1, =0xfffffc00
- mov r8, r1
-_08141BB0:
- ldr r0, =gUnknown_0203AB88
- ldr r4, [r0]
- adds r0, r4, r5
- adds r0, 0x65
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r7
- adds r2, r3, 0
- adds r2, 0x40
- add r0, r12
- ldr r0, [r0]
- ldr r0, [r0]
- ldrh r1, [r0]
- ldrh r2, [r2]
- adds r1, r2
- ldr r2, =0x000003ff
- adds r0, r2, 0
- ands r1, r0
- ldrh r2, [r3, 0x4]
- mov r0, r8
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _08141BB0
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r2, r1, r0
- movs r1, 0x22
- ldrsh r0, [r2, r1]
- ldrb r4, [r4, 0x19]
- cmp r0, r4
- blt _08141CBC
- movs r1, 0x14
- ldrsh r0, [r2, r1]
- cmp r0, 0x6
- bne _08141C58
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5C21
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =dp01t_12_3_battle_menu
- b _08141C8E
- .pool
-_08141C58:
- movs r0, 0x22
- ldrsh r1, [r2, r0]
- ldr r0, =0x0000270f
- cmp r1, r0
- bne _08141CB0
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5C61
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =sub_8140914
-_08141C8E:
- ldr r2, =0x0000ffff
- adds r0, r6, 0
- movs r3, 0x3
- bl sub_8141F7C
- b _08141CF2
- .pool
-_08141CB0:
- ldr r0, =sub_8140914
- str r0, [r2]
- b _08141CF2
- .pool
-_08141CBC:
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5C04
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =sub_8140994
- adds r0, r6, 0
- movs r2, 0x3C
- movs r3, 0x3
- bl sub_8141F7C
-_08141CF2:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141B58
-
- thumb_func_start dp01t_12_3_battle_menu
-dp01t_12_3_battle_menu: @ 8141D0C
- push {r4-r7,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x14]
- adds r0, r5, 0
- bl sub_8141FF4
- bl sub_8142070
- bl sub_8143A40
- movs r0, 0
- bl sub_81424FC
- movs r0, 0x6
- bl sub_814372C
- ldr r7, =gSprites
- ldr r3, =gUnknown_0203AB88
- movs r6, 0x5
- negs r6, r6
-_08141D44:
- ldr r0, [r3]
- adds r0, r4
- adds r0, 0x43
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- adds r1, 0x3E
- ldrb r2, [r1]
- adds r0, r6, 0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xB
- bls _08141D44
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r1
- movs r0, 0x22
- ldrsh r1, [r2, r0]
- ldr r0, =0x0000270f
- cmp r1, r0
- bne _08141DD4
- ldr r4, =gUnknown_0203AB8C
- ldrb r0, [r4]
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldrb r0, [r4]
- ldr r2, =gUnknown_082A5C61
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =sub_8140914
- ldr r2, =0x0000ffff
- adds r0, r5, 0
- movs r3, 0x3
- bl sub_8141F7C
- b _08141DD8
- .pool
-_08141DD4:
- ldr r0, =sub_8140914
- str r0, [r2]
-_08141DD8:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp01t_12_3_battle_menu
-
- thumb_func_start sub_8141DE4
-sub_8141DE4: @ 8141DE4
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- adds r0, 0xB8
- ldr r1, =0x0000ffff
- bl sub_8151A9C
- ldr r0, [r4]
- adds r0, 0xB8
- bl sub_8151678
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldrh r0, [r0, 0x22]
- bl SetCoins
- bl GetCoins
- ldr r1, [r4]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x19]
- cmp r0, r1
- bcs _08141E38
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x1
- b _08141E3C
- .pool
-_08141E38:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0
-_08141E3C:
- strh r0, [r1]
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- bl sub_80EDD78
- movs r0, 0
- str r0, [sp]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginHardwarePaletteFade
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8141E7C
- str r1, [r0]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141DE4
-
- thumb_func_start sub_8141E7C
-sub_8141E7C: @ 8141E7C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl UpdatePaletteFade
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08141EDE
- movs r0, 0
- bl SetVBlankCallback
- ldr r1, =gSpriteCoordOffsetX
- ldr r0, =gSpriteCoordOffsetY
- strh r4, [r0]
- strh r4, [r1]
- bl ResetVramOamAndBgCntRegs
- bl ResetAllBgsCoordinates
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- bl FreeAllSpritePalettes
- bl ResetPaletteFade
- bl ResetSpriteData
- bl sub_8140418
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF168
- str r0, [r1]
- ldr r0, =CB2_ReturnToField
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_08141EDE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141E7C
-
- thumb_func_start sub_8141EF8
-sub_8141EF8: @ 8141EF8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gUnknown_0203AB88
- ldr r3, [r1]
- adds r0, r3, 0
- adds r0, 0xA8
- ldrh r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- beq _08141F1E
- ldr r0, =gMain
- adds r2, r3, 0
- adds r2, 0xAA
- ldrh r1, [r0, 0x2E]
- ldrh r0, [r2]
- ands r0, r1
- cmp r0, 0
- beq _08141F52
-_08141F1E:
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0xAC
- ldr r1, [r1]
- str r1, [r0]
- adds r0, r3, 0
- adds r0, 0xAA
- ldrh r0, [r0]
- cmp r0, 0
- beq _08141F40
- movs r0, 0x5
- bl PlaySE
-_08141F40:
- ldr r2, [r5]
- adds r0, r2, 0
- adds r0, 0xAC
- movs r1, 0
- str r1, [r0]
- subs r0, 0x2
- strh r1, [r0]
- subs r0, 0x2
- strh r1, [r0]
-_08141F52:
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0xA8
- ldrh r2, [r1]
- ldr r0, =0x0000ffff
- cmp r2, r0
- beq _08141F64
- subs r0, r2, 0x1
- strh r0, [r1]
-_08141F64:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141EF8
-
- thumb_func_start sub_8141F7C
-sub_8141F7C: @ 8141F7C
- push {r4-r7,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 16
- lsrs r4, r2, 16
- lsls r3, 16
- lsrs r7, r3, 16
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- mov r12, r0
- mov r3, r12
- adds r3, 0xB4
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r0, [r0]
- str r0, [r3]
- adds r3, r1, 0
- cmp r5, 0
- bne _08141FAC
- adds r5, r0, 0
-_08141FAC:
- mov r0, r12
- adds r0, 0xAC
- str r5, [r0]
- subs r0, 0x4
- strh r4, [r0]
- ldr r0, =0x0000ffff
- cmp r4, r0
- bne _08141FD8
- cmp r7, 0
- bne _08141FD8
- mov r1, r12
- adds r1, 0xAA
- ldrh r0, [r1]
- orrs r4, r0
- strh r4, [r1]
- b _08141FDE
- .pool
-_08141FD8:
- ldr r0, [r2]
- adds r0, 0xAA
- strh r7, [r0]
-_08141FDE:
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r3
- ldr r1, =sub_8141EF8
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141F7C
-
- thumb_func_start sub_8141FF4
-sub_8141FF4: @ 8141FF4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- ldr r3, =gUnknown_0203AB88
- ldr r0, [r3]
- strb r4, [r0]
- ldr r2, [r3]
- ldrb r1, [r2, 0x3]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x3]
- ldr r2, [r3]
- ldrb r1, [r2, 0x3]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x3]
- ldr r2, [r3]
- ldrb r1, [r2, 0x3]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x3]
- ldr r2, [r3]
- ldrb r1, [r2, 0x3]
- movs r0, 0x20
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x3]
- ldr r6, =gTasks
- adds r2, r3, 0
- movs r1, 0
-_08142036:
- ldr r0, [r2]
- adds r0, 0x1B
- adds r0, r4
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _08142036
- ldr r2, [r3]
- ldrb r1, [r2, 0x1A]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1A]
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r6
- movs r1, 0
- strh r1, [r0, 0xA]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8141FF4
-
- thumb_func_start sub_8142070
-sub_8142070: @ 8142070
- push {lr}
- ldr r2, =gUnknown_0203AB88
- ldr r1, [r2]
- movs r0, 0
- str r0, [r1, 0x8]
- movs r1, 0
- movs r3, 0
-_0814207E:
- ldr r0, [r2]
- adds r0, 0xC
- adds r0, r1
- strb r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x5
- bls _0814207E
- movs r1, 0
- ldr r3, =gUnknown_0203AB88
- movs r2, 0
-_08142096:
- ldr r0, [r3]
- adds r0, 0x12
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _08142096
- movs r1, 0
- ldr r3, =gUnknown_0203AB88
- movs r2, 0
-_081420AE:
- ldr r0, [r3]
- adds r0, 0x16
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _081420AE
- movs r0, 0x1
- movs r1, 0xFF
- bl sub_8143038
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142070
-
- thumb_func_start sub_81420D0
-sub_81420D0: @ 81420D0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x1C
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- mov r1, sp
- ldr r0, =gUnknown_085B642C
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r0, [r0]
- str r0, [r1]
- add r2, sp, 0x10
- adds r1, r2, 0
- ldr r0, =gUnknown_085B643C
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- mov r8, r2
- cmp r5, 0xB
- bls _0814210C
- movs r0, 0
- b _081421C8
- .pool
-_0814210C:
- ldr r6, =gUnknown_0203AB88
- ldr r3, [r6]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r7, 0x14
- ldrsh r1, [r0, r7]
- adds r3, r1
- ldr r4, =gUnknown_085B62E4
- lsls r5, 3
- adds r2, r5, r4
- ldrb r1, [r2, 0x2]
- strb r1, [r3, 0xB]
- ldrb r1, [r2, 0x2]
- strh r1, [r0, 0x20]
- ldr r2, [r6]
- adds r0, r4, 0x4
- adds r0, r5, r0
- ldr r1, [r2, 0x8]
- ldr r0, [r0]
- orrs r1, r0
- str r1, [r2, 0x8]
- movs r3, 0
- mov r9, r4
- mov r12, r5
- adds r5, r0, 0
-_08142144:
- lsls r0, r3, 2
- mov r1, sp
- adds r4, r1, r0
- ldr r0, [r4]
- ands r0, r5
- cmp r0, 0
- beq _0814215E
- ldr r1, [r6]
- adds r1, 0x12
- adds r1, r3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0814215E:
- ldr r2, [r6]
- adds r0, r2, 0
- adds r0, 0x12
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x2
- bls _08142174
- ldr r0, [r2, 0x8]
- ldr r1, [r4]
- orrs r0, r1
- str r0, [r2, 0x8]
-_08142174:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x3
- bls _08142144
- movs r6, 0
- ldr r0, =gUnknown_085B62E4+0x4
- add r0, r12
- ldr r7, [r0]
- ldr r4, =gUnknown_0203AB88
- mov r5, r8
-_0814218A:
- lsls r0, r6, 2
- adds r2, r5, r0
- ldr r0, [r2]
- ands r0, r7
- cmp r0, 0
- beq _081421A2
- ldr r1, [r4]
- adds r1, 0x16
- adds r1, r6
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_081421A2:
- ldr r3, [r4]
- adds r0, r3, 0
- adds r0, 0x16
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x3
- bls _081421B8
- ldr r0, [r3, 0x8]
- ldr r1, [r2]
- orrs r0, r1
- str r0, [r3, 0x8]
-_081421B8:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _0814218A
- mov r0, r12
- add r0, r9
- ldrb r0, [r0, 0x2]
-_081421C8:
- add sp, 0x1C
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81420D0
-
- thumb_func_start sub_81421E8
-sub_81421E8: @ 81421E8
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r2, r1, 24
- lsrs r3, r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x12
- bhi _0814227C
- cmp r2, 0xF
- bhi _08142278
- lsls r0, r2, 2
- ldr r1, =_08142210
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08142210:
- .4byte _08142250
- .4byte _08142254
- .4byte _08142254
- .4byte _08142254
- .4byte _08142254
- .4byte _08142268
- .4byte _08142278
- .4byte _08142278
- .4byte _08142278
- .4byte _08142278
- .4byte _08142268
- .4byte _08142278
- .4byte _08142278
- .4byte _08142278
- .4byte _08142278
- .4byte _08142268
-_08142250:
- movs r0, 0x3
- b _0814227E
-_08142254:
- adds r0, r2, 0x5
- cmp r3, r0
- beq _08142274
- adds r0, 0x5
- cmp r3, r0
- beq _08142274
- adds r0, 0x5
- cmp r3, r0
- bne _0814227C
- b _08142274
-_08142268:
- adds r0, r2, 0x1
- cmp r3, r0
- blt _0814227C
- adds r0, r2, 0x4
- cmp r3, r0
- bgt _0814227C
-_08142274:
- movs r0, 0x1
- b _0814227E
-_08142278:
- cmp r3, r2
- beq _08142274
-_0814227C:
- movs r0, 0
-_0814227E:
- pop {r1}
- bx r1
- thumb_func_end sub_81421E8
-
- thumb_func_start sub_8142284
-sub_8142284: @ 8142284
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- lsls r0, 24
- lsrs r7, r0, 24
- movs r0, 0
- str r0, [sp, 0x18]
- cmp r7, 0xA
- beq _081422AA
- cmp r7, 0xA
- bgt _081422A6
- cmp r7, 0x5
- beq _081422AA
- b _0814230C
-_081422A6:
- cmp r7, 0xF
- bne _0814230C
-_081422AA:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- adds r2, r7, 0x5
- ldr r1, =gUnknown_0203AB88
- mov r12, r1
- cmp r4, r2
- bge _081422E8
- ldr r0, [r1]
- ldr r3, =gUnknown_085B6154
- ldr r5, [r0, 0x8]
- adds r6, r3, 0
- adds r6, 0x8
-_081422C4:
- lsls r0, r4, 2
- adds r0, r4
- lsls r1, r0, 2
- adds r0, r1, r6
- ldr r0, [r0]
- ands r0, r5
- cmp r0, 0
- bne _081422DE
- adds r0, r1, r3
- ldrh r0, [r0, 0x10]
- ldr r1, [sp, 0x18]
- orrs r1, r0
- str r1, [sp, 0x18]
-_081422DE:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r2
- blt _081422C4
-_081422E8:
- mov r2, r12
- ldr r0, [r2]
- adds r0, 0xB8
- ldr r1, =0x0000dfff
- ldr r3, [sp, 0x18]
- ands r3, r1
- str r3, [sp, 0x18]
- adds r1, r3, 0
- bl sub_8151A48
- b _081424E2
- .pool
-_0814230C:
- mov r0, sp
- ldr r1, =gUnknown_085B63F0
- ldm r1!, {r2,r4,r5}
- stm r0!, {r2,r4,r5}
- ldm r1!, {r3-r5}
- stm r0!, {r3-r5}
- subs r0, r7, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- mov r9, r1
- cmp r0, 0x3
- bhi _0814232A
- movs r2, 0x3
- mov r9, r2
-_0814232A:
- adds r0, r7, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 8
- ldr r3, =0xffff0000
- adds r0, r3
- lsrs r0, 16
- mov r8, r0
- adds r0, r7, 0
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08142390
- cmp r0, 0x2
- bgt _08142368
- cmp r0, 0x1
- beq _0814237C
- ldr r4, =gUnknown_0203AB88
- mov r12, r4
- b _081423D4
- .pool
-_08142368:
- cmp r0, 0x3
- beq _081423A4
- cmp r0, 0x4
- beq _081423B8
- ldr r5, =gUnknown_0203AB88
- mov r12, r5
- b _081423D4
- .pool
-_0814237C:
- ldr r3, =gSprites
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- adds r0, 0x43
- b _081423C0
- .pool
-_08142390:
- ldr r3, =gSprites
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- adds r0, 0x44
- b _081423C0
- .pool
-_081423A4:
- ldr r3, =gSprites
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- adds r0, 0x45
- b _081423C0
- .pool
-_081423B8:
- ldr r3, =gSprites
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- adds r0, 0x46
-_081423C0:
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x5]
- lsrs r0, 4
- lsls r0, 4
- mov r8, r0
- mov r12, r2
-_081423D4:
- mov r0, r9
- cmp r0, 0x1
- bne _08142430
- mov r1, r12
- ldr r4, [r1]
- ldr r1, =gUnknown_085B6154
- lsls r2, r7, 2
- adds r0, r2, r7
- lsls r0, 2
- adds r1, 0x8
- adds r0, r1
- ldr r1, [r4, 0x8]
- ldr r0, [r0]
- ands r1, r0
- str r2, [sp, 0x1C]
- cmp r1, 0
- bne _081424E2
- adds r0, r7, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- subs r1, r0, 0x1
- lsls r1, 3
- mov r3, sp
- adds r2, r3, r1
- ldrh r1, [r2, 0x2]
- add r1, r8
- strh r1, [r2, 0x2]
- adds r1, r4, 0
- adds r1, 0xB8
- lsls r0, 3
- subs r0, 0x8
- adds r2, r3, r0
- adds r0, r1, 0
- movs r1, 0xD
- bl sub_815168C
- b _081424C4
- .pool
-_08142430:
- movs r4, 0
- lsls r5, r7, 2
- str r5, [sp, 0x1C]
- ldr r0, =gUnknown_085B6154
- mov r10, r0
-_0814243A:
- lsls r0, r4, 2
- adds r0, r4
- adds r0, r7, r0
- adds r0, 0x5
- lsls r0, 24
- lsrs r3, r0, 24
- mov r1, r12
- ldr r5, [r1]
- lsls r0, r3, 2
- adds r0, r3
- lsls r6, r0, 2
- mov r0, r10
- adds r0, 0x8
- adds r0, r6, r0
- ldr r1, [r5, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _081424B0
- adds r0, r3, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- subs r1, r0, 0x1
- lsls r1, 3
- mov r3, sp
- adds r2, r3, r1
- ldrh r1, [r2, 0x2]
- add r1, r8
- strh r1, [r2, 0x2]
- adds r3, r5, 0
- adds r3, 0xB8
- adds r1, r4, 0
- adds r1, 0xD
- lsls r1, 24
- lsrs r1, 24
- lsls r0, 3
- subs r0, 0x8
- mov r5, sp
- adds r2, r5, r0
- adds r0, r3, 0
- bl sub_815168C
- mov r0, r9
- cmp r0, 0x3
- bne _081424A2
- mov r1, r10
- adds r0, r6, r1
- ldrh r0, [r0, 0x10]
- str r0, [sp, 0x18]
-_081424A2:
- mov r0, r9
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r2, =gUnknown_0203AB88
- mov r12, r2
-_081424B0:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _0814243A
- mov r3, r9
- cmp r3, 0x2
- beq _081424C4
- movs r4, 0
- str r4, [sp, 0x18]
-_081424C4:
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0xB8
- ldr r2, =gUnknown_085B6154
- ldr r5, [sp, 0x1C]
- adds r1, r5, r7
- lsls r1, 2
- adds r1, r2
- ldrh r1, [r1, 0x10]
- ldr r2, [sp, 0x18]
- orrs r2, r1
- str r2, [sp, 0x18]
- adds r1, r2, 0
- bl sub_8151A48
-_081424E2:
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142284
-
- thumb_func_start sub_81424FC
-sub_81424FC: @ 81424FC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x2C
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gUnknown_0203AB88
- ldr r1, [r4]
- movs r0, 0x1
- strh r0, [r1, 0x2A]
- movs r0, 0
- movs r1, 0
- bl sub_8142E70
- ldr r1, [r4]
- ldr r2, =0x0000117c
- adds r0, r1, r2
- ldr r2, =0x0000397c
- adds r1, r2
- ldr r1, [r1]
- movs r2, 0x10
- str r2, [sp]
- movs r2, 0xD
- str r2, [sp, 0x4]
- movs r2, 0xE
- movs r3, 0x7
- bl sub_8152058
- cmp r5, 0xF
- bhi _081425FC
- lsls r0, r5, 2
- ldr r1, =_08142558
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08142558:
- .4byte _08142738
- .4byte _08142598
- .4byte _08142598
- .4byte _08142598
- .4byte _08142598
- .4byte _081425CC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425CC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425FC
- .4byte _081425CC
-_08142598:
- movs r0, 0x4
- str r0, [sp, 0x18]
- add r1, sp, 0x8
- movs r0, 0
- strb r0, [r1]
- adds r0, r1, 0
- ldrb r0, [r0]
- cmp r0, 0x3
- bhi _08142604
- add r4, sp, 0x10
- adds r3, r1, 0
-_081425AE:
- ldrb r2, [r3]
- adds r2, r4
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- adds r0, r5, r0
- strb r0, [r2]
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
- ldrb r0, [r3]
- ldr r1, [sp, 0x18]
- cmp r0, r1
- bcc _081425AE
- b _08142604
-_081425CC:
- movs r2, 0x5
- str r2, [sp, 0x18]
- add r1, sp, 0x8
- movs r0, 0
- strb r0, [r1]
- adds r0, r1, 0
- ldrb r0, [r0]
- cmp r0, 0x4
- bhi _08142604
- add r3, sp, 0x10
- adds r2, r1, 0
-_081425E2:
- ldrb r1, [r2]
- adds r1, r3
- ldrb r0, [r2]
- adds r0, r5, r0
- strb r0, [r1]
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldrb r0, [r2]
- ldr r1, [sp, 0x18]
- cmp r0, r1
- bcc _081425E2
- b _08142604
-_081425FC:
- movs r2, 0x1
- str r2, [sp, 0x18]
- add r0, sp, 0x10
- strb r5, [r0]
-_08142604:
- add r1, sp, 0x8
- movs r0, 0
- strb r0, [r1]
- adds r0, r1, 0
- ldrb r0, [r0]
- ldr r1, [sp, 0x18]
- cmp r0, r1
- bcc _08142616
- b _08142738
-_08142616:
- mov r2, sp
- adds r2, 0xE
- str r2, [sp, 0x1C]
- add r0, sp, 0x10
- mov r10, r0
- add r1, sp, 0x8
- mov r9, r1
- subs r2, 0x4
- str r2, [sp, 0x20]
-_08142628:
- mov r1, r9
- ldrb r0, [r1]
- add r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- ldr r2, =gUnknown_085B6154
- adds r0, r2
- ldrb r0, [r0, 0x6]
- ldr r1, [sp, 0x1C]
- strb r0, [r1]
- mov r2, r9
- ldrb r0, [r2]
- add r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- ldr r1, =gUnknown_085B6154
- adds r0, r1
- ldrb r0, [r0, 0x3]
- ldr r2, [sp, 0x20]
- strh r0, [r2]
- mov r7, sp
- adds r7, 0x9
- movs r0, 0
- strb r0, [r7]
- ldrb r0, [r7]
- cmp r0, 0x2
- bhi _08142726
- add r6, sp, 0xC
- mov r8, r2
- ldr r0, [sp, 0x1C]
- mov r12, r0
- ldr r1, =gUnknown_0203AB88
- str r1, [sp, 0x28]
-_08142672:
- mov r2, r9
- ldrb r0, [r2]
- add r0, r10
- ldrb r0, [r0]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- ldr r0, =gUnknown_085B6154
- adds r1, r0
- str r7, [sp, 0x24]
- ldrb r0, [r7]
- ldrb r1, [r1, 0x4]
- adds r0, r1
- lsls r0, 5
- strh r0, [r6]
- ldr r1, [sp, 0x28]
- ldr r4, [r1]
- mov r2, r8
- ldrh r0, [r2]
- ldrh r2, [r6]
- adds r2, r0
- lsls r2, 1
- ldr r0, =0x0000117c
- adds r5, r4, r0
- adds r2, r5, r2
- mov r1, r12
- ldrb r0, [r1]
- ldrb r1, [r7]
- adds r1, r0
- ldr r0, =0x0000397c
- adds r4, r0
- ldr r3, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- adds r0, r3
- movs r1, 0xD0
- lsls r1, 1
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- mov r2, r8
- ldrh r0, [r2]
- ldrh r2, [r6]
- adds r2, r0
- adds r2, 0x1
- lsls r2, 1
- adds r2, r5, r2
- mov r1, r12
- ldrb r0, [r1]
- ldrb r1, [r7]
- adds r1, r0
- ldr r3, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- adds r0, r3
- movs r1, 0xD1
- lsls r1, 1
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- mov r2, r8
- ldrh r1, [r2]
- ldrh r0, [r6]
- adds r0, r1
- adds r0, 0x2
- lsls r0, 1
- adds r5, r0
- mov r1, r12
- ldrb r0, [r1]
- ldrb r1, [r7]
- adds r1, r0
- ldr r2, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- adds r0, r2
- movs r2, 0xD2
- lsls r2, 1
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r5]
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- ldr r1, [sp, 0x24]
- ldrb r0, [r1]
- cmp r0, 0x2
- bls _08142672
-_08142726:
- mov r2, r9
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldrb r0, [r2]
- ldr r1, [sp, 0x18]
- cmp r0, r1
- bcs _08142738
- b _08142628
-_08142738:
- add sp, 0x2C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81424FC
-
- thumb_func_start sub_8142758
-sub_8142758: @ 8142758
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gUnknown_085B6448
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- cmp r4, 0x13
- bls _08142770
- movs r4, 0
-_08142770:
- ldr r3, =gUnknown_085B6154
- lsls r0, r4, 2
- adds r0, r4
- lsls r2, r0, 2
- adds r0, r2, r3
- ldrb r0, [r0, 0x1]
- lsls r0, 28
- lsrs r0, 28
- cmp r0, 0x4
- beq _081427C4
- cmp r0, 0x4
- bgt _08142798
- cmp r0, 0x3
- beq _0814279E
- b _08142808
- .pool
-_08142798:
- cmp r0, 0xC
- beq _081427E8
- b _08142808
-_0814279E:
- adds r0, r4, 0
- movs r1, 0x5
- bl __udivsi3
- subs r0, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x16
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0x3
- bhi _08142808
- ldrb r0, [r1]
- adds r0, 0x1
- b _081427DC
- .pool
-_081427C4:
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x12
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0x2
- bhi _08142808
- ldrb r0, [r1]
- adds r0, 0x2
-_081427DC:
- add r0, sp
- ldrb r0, [r0]
- b _0814280A
- .pool
-_081427E8:
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- adds r0, r3, 0
- adds r0, 0x8
- adds r0, r2, r0
- ldr r1, [r1, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08142808
- mov r0, sp
- ldrb r0, [r0, 0x4]
- b _0814280A
- .pool
-_08142808:
- movs r0, 0
-_0814280A:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8142758
-
- thumb_func_start sub_8142814
-sub_8142814: @ 8142814
- push {r4-r6,lr}
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- ldrh r1, [r0, 0x2C]
- movs r0, 0x20
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x2E]
- movs r0, 0x22
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x30]
- movs r0, 0x24
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x32]
- movs r0, 0x26
- bl SetGpuReg
- ldr r3, [r4]
- movs r0, 0x2E
- ldrsh r1, [r3, r0]
- ldr r0, =gSpriteCoordOffsetY
- movs r4, 0
- ldrsh r2, [r0, r4]
- adds r2, 0x50
- adds r0, r1, 0
- muls r0, r2
- movs r4, 0xE8
- lsls r4, 7
- subs r4, r0
- movs r6, 0x2C
- ldrsh r5, [r3, r6]
- ldr r0, =gSpriteCoordOffsetX
- movs r6, 0
- ldrsh r1, [r0, r6]
- adds r1, 0x74
- adds r0, r5, 0
- muls r0, r1
- subs r4, r0
- movs r5, 0x32
- ldrsh r0, [r3, r5]
- muls r0, r2
- movs r5, 0xA8
- lsls r5, 7
- subs r5, r0
- movs r6, 0x30
- ldrsh r0, [r3, r6]
- muls r0, r1
- subs r5, r0
- lsls r1, r4, 16
- lsrs r1, 16
- movs r0, 0x28
- bl SetGpuReg
- ldr r6, =0x0fff0000
- ands r4, r6
- lsrs r4, 16
- movs r0, 0x2A
- adds r1, r4, 0
- bl SetGpuReg
- lsls r1, r5, 16
- lsrs r1, 16
- movs r0, 0x2C
- bl SetGpuReg
- ands r5, r6
- lsrs r5, 16
- movs r0, 0x2E
- adds r1, r5, 0
- bl SetGpuReg
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142814
-
- thumb_func_start sub_81428C4
-sub_81428C4: @ 81428C4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl DisplayYesNoMenu
- ldr r1, =gUnknown_085B6408
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81428C4
-
- thumb_func_start sub_81428E4
-sub_81428E4: @ 81428E4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08142908
- movs r0, 0
- bl SetVBlankCallback
- ldr r0, =sub_81405CC
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_08142908:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81428E4
-
- thumb_func_start sub_8142918
-sub_8142918: @ 8142918
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_819746C
- bl HideCoinsWindow
- bl FreeAllWindowBuffers
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x8]
- lsls r1, 26
- lsrs r1, 26
- ldrb r3, [r2, 0x4]
- movs r0, 0x40
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2, 0x4]
- bl UpdatePaletteFade
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81428E4
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142918
-
- thumb_func_start sub_814297C
-sub_814297C: @ 814297C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- bl sub_819746C
- bl HideCoinsWindow
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_814297C
-
- thumb_func_start sub_81429A0
-sub_81429A0: @ 81429A0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _081429DE
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x1
- strh r0, [r1]
- bl HideCoinsWindow
- movs r0, 0
- movs r1, 0x1
- bl sub_819746C
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
-_081429DE:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81429A0
-
- thumb_func_start sub_81429F0
-sub_81429F0: @ 81429F0
- push {r4-r6,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08142A60
- ldr r2, =gUnknown_085B6344
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- lsrs r1, 7
- lsls r1, 1
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- ldr r0, =gStringVar1
- movs r2, 0x2
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gUnknown_082A5B12
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- str r5, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0x1
- adds r2, r4, 0
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81428C4
- str r1, [r0]
-_08142A60:
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81429F0
-
- thumb_func_start sub_8142A88
-sub_8142A88: @ 8142A88
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r6, r0, r1
- movs r1, 0x22
- ldrsh r0, [r6, r1]
- bl PrintCoinsString
- ldr r2, =gUnknown_085B6344
- ldr r0, =gSpecialVar_0x8004
- mov r8, r0
- ldrh r1, [r0]
- movs r7, 0x1
- adds r0, r7, 0
- ands r0, r1
- lsrs r1, 7
- lsls r1, 1
- adds r0, r1
- adds r0, r2
- ldrb r4, [r0]
- ldr r0, =gStringVar1
- adds r1, r4, 0
- movs r2, 0x2
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- movs r1, 0x22
- ldrsh r0, [r6, r1]
- cmp r0, r4
- blt _08142B78
- mov r0, r8
- ldrh r1, [r0]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08142B28
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _08142B28
- movs r0, 0
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- ldr r2, =gUnknown_082A5B6B
- str r7, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, =sub_81429F0
- str r0, [r6]
- b _08142BB0
- .pool
-_08142B28:
- ldr r4, =gStringVar4
- ldr r1, =gUnknown_082A5B12
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0x1
- adds r2, r4, 0
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81428C4
- str r1, [r0]
- b _08142BB0
- .pool
-_08142B78:
- ldr r5, =gStringVar4
- ldr r1, =gUnknown_082A5B4E
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0
- movs r1, 0
- bl NewMenuHelpers_DrawStdWindowFrame
- str r7, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0x8]
- movs r0, 0
- movs r1, 0x1
- adds r2, r5, 0
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, =sub_81429A0
- str r0, [r6]
- strh r4, [r6, 0x22]
- strh r4, [r6, 0x8]
-_08142BB0:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142A88
-
- thumb_func_start sub_8142BC8
-sub_8142BC8: @ 8142BC8
- push {r4,lr}
- bl ScriptContext2_Enable
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- movs r2, 0x1
- bl ShowCoinsWindow
- ldr r0, =sub_8142A88
- movs r1, 0
- bl CreateTask
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl GetCoins
- ldr r2, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- strh r0, [r1, 0x22]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142BC8
-
- thumb_func_start sub_8142C0C
-sub_8142C0C: @ 8142C0C
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _08142C44
- bl FreeAllSpritePalettes
- ldr r0, =gUnknown_085B7384
- bl LoadSpritePalettes
- ldr r0, =gUnknown_085B7864
- bl LoadCompressedSpriteSheet
- ldr r0, =gUnknown_085B7978
- bl LoadCompressedSpriteSheet
- ldr r0, =gUnknown_085B7A40
- bl LoadCompressedSpriteSheet
- b _08142C5A
- .pool
-_08142C44:
- movs r0, 0xE
- bl FreeSpriteTilesByTag
- movs r0, 0xD
- bl FreeSpriteTilesByTag
- movs r0, 0xC
- bl FreeSpriteTilesByTag
- bl FreeAllSpritePalettes
-_08142C5A:
- pop {r0}
- bx r0
- thumb_func_end sub_8142C0C
-
- thumb_func_start sub_8142C60
-sub_8142C60: @ 8142C60
- push {r4-r6,lr}
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, [r0, 0x4]
- ldrb r3, [r1]
- movs r1, 0x74
- movs r2, 0x50
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r0, =gSprites
- lsls r1, r5, 4
- adds r1, r5
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r6]
- strh r0, [r1, 0x2E]
- strh r4, [r1, 0x30]
- adds r3, r1, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r3]
- adds r1, 0x2C
- ldrb r0, [r1]
- movs r2, 0x40
- orrs r0, r2
- movs r2, 0x80
- orrs r0, r2
- strb r0, [r1]
- ldrh r2, [r6]
- adds r0, r2, 0
- adds r0, 0x1E
- strh r0, [r6]
- lsls r0, 16
- ldr r1, =0x01670000
- cmp r0, r1
- bls _08142CBC
- ldr r1, =0xfffffeb6
- adds r0, r2, r1
- strh r0, [r6]
-_08142CBC:
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8142C60
-
- thumb_func_start sub_8142CD0
-sub_8142CD0: @ 8142CD0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- ldr r4, =gUnknown_085B7488
- ldr r0, [r4]
- ldr r5, =gDecompressionBuffer
- adds r1, r5, 0
- bl LZ77UnCompWram
- str r5, [sp]
- mov r6, sp
- ldrh r1, [r4, 0x6]
- lsls r1, 16
- ldrh r0, [r4, 0x4]
- orrs r0, r1
- str r0, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- ldr r4, =gUnknown_085B7490
- ldr r0, [r4]
- adds r1, r5, 0
- bl LZ77UnCompWram
- str r5, [sp]
- ldrh r0, [r4, 0x4]
- strh r0, [r6, 0x4]
- ldrh r0, [r4, 0x6]
- strh r0, [r6, 0x6]
- mov r0, sp
- bl LoadSpriteSheet
- movs r6, 0
- ldr r0, =gSprites
- mov r8, r0
-_08142D18:
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 27
- lsrs r4, r0, 24
- movs r5, 0
- lsls r7, r6, 2
-_08142D24:
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- ldr r0, =gSpriteTemplate_85B75B0
- adds r0, r1, r0
- adds r1, 0x94
- adds r2, r4, 0
- adds r2, 0x5C
- movs r3, 0x1E
- bl CreateSprite
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- adds r2, r5, 0
- adds r2, 0x1D
- adds r2, r7, r2
- adds r1, 0x3C
- adds r1, r2
- strb r0, [r1]
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- adds r0, r4, 0
- adds r0, 0x18
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x47
- bls _08142D6E
- movs r4, 0
-_08142D6E:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _08142D24
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _08142D18
- movs r6, 0
- ldr r4, =gSprites
-_08142D86:
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- ldr r0, =gSpriteTemplate_85B7508
- adds r0, r1, r0
- adds r1, 0x94
- lsls r1, 16
- asrs r1, 16
- movs r2, 0x46
- movs r3, 0x1E
- bl CreateSprite
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- adds r1, r6
- adds r1, 0x65
- strb r0, [r1]
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _08142D86
- movs r6, 0
- ldr r4, =gSprites
-_08142DCC:
- lsls r2, r6, 1
- adds r2, r6
- lsls r2, 3
- ldr r0, =gSpriteTemplate_85B7568
- adds r0, r2, r0
- adds r2, 0x5C
- lsls r2, 16
- asrs r2, 16
- movs r1, 0x7E
- movs r3, 0x1E
- bl CreateSprite
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- adds r1, r6
- adds r1, 0x69
- strb r0, [r1]
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _08142DCC
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142CD0
-
- thumb_func_start sub_8142E3C
-sub_8142E3C: @ 8142E3C
- push {r4,lr}
- movs r4, 0
-_08142E40:
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, r4
- adds r0, 0x59
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xB
- bls _08142E40
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142E3C
-
- thumb_func_start sub_8142E70
-sub_8142E70: @ 8142E70
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r12, r1
- cmp r0, 0
- beq _08142EC0
- cmp r0, 0x1
- bne _08142F66
- movs r4, 0
- ldr r5, =gSprites
- ldr r3, =gUnknown_0203AB88
- movs r2, 0x4
-_08142E92:
- ldr r0, [r3]
- adds r0, r4
- adds r0, 0x59
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x12
- bls _08142E92
- b _08142F66
- .pool
-_08142EC0:
- movs r4, 0
- ldr r0, =gUnknown_0203AB88
- mov r9, r0
- ldr r7, =gUnknown_085B62E4
- adds r1, r7, 0x4
- mov r8, r1
- ldr r5, =gSprites
- movs r6, 0x5
- negs r6, r6
-_08142ED2:
- mov r0, r9
- ldr r2, [r0]
- lsls r3, r4, 3
- mov r1, r8
- adds r0, r3, r1
- ldr r1, [r2, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08142F14
- adds r0, r3, r7
- ldrb r0, [r0, 0x2]
- cmp r0, r12
- beq _08142F14
- adds r0, r2, r4
- adds r0, 0x59
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- b _08142F2C
- .pool
-_08142F14:
- adds r0, r2, r4
- adds r0, 0x59
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r2, [r1]
- adds r0, r6, 0
- ands r0, r2
- strb r0, [r1]
-_08142F2C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xB
- bls _08142ED2
- cmp r4, 0x12
- bhi _08142F66
- ldr r6, =gSprites
- ldr r3, =gUnknown_0203AB88
- movs r5, 0x5
- negs r5, r5
-_08142F42:
- ldr r0, [r3]
- adds r0, r4
- adds r0, 0x59
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r1, 0x3E
- ldrb r2, [r1]
- adds r0, r5, 0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x12
- bls _08142F42
-_08142F66:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142E70
-
- thumb_func_start sub_8142F7C
-sub_8142F7C: @ 8142F7C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r5, 0
- ldr r6, =gUnknown_0203AB88
- ldr r4, =gSprites
- movs r0, 0x4
- mov r8, r0
-_08142F8C:
- ldr r0, =gSpriteTemplate_85B7928
- movs r1, 0x74
- movs r2, 0x14
- movs r3, 0xA
- bl CreateSprite
- ldr r1, [r6]
- adds r3, r5, 0
- adds r3, 0x31
- adds r1, 0x3C
- adds r1, r3
- strb r0, [r1]
- ldr r0, [r6]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- mov r2, r8
- orrs r1, r2
- strb r1, [r0]
- ldr r2, [r6]
- adds r2, 0x3C
- adds r2, r3
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =sub_814390C
- str r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x5]
- movs r7, 0xD
- negs r7, r7
- adds r2, r7, 0
- ands r1, r2
- mov r2, r8
- orrs r1, r2
- strb r1, [r0, 0x5]
- ldr r0, [r6]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x8
- bl StartSpriteAnim
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08142F8C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8142F7C
-
- thumb_func_start sub_8143038
-sub_8143038: @ 8143038
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- movs r6, 0
- cmp r0, 0
- beq _08143084
- ldr r4, =gSprites
- ldr r3, =gUnknown_0203AB88
- movs r2, 0x4
-_08143056:
- ldr r0, [r3]
- adds r0, r6
- adds r0, 0x6D
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x5
- bls _08143056
- b _08143142
- .pool
-_08143084:
- ldr r0, =gUnknown_0203AB88
- mov r8, r0
- ldr r7, =gSprites
- ldr r0, =gUnknown_085B6154
- mov r12, r0
- movs r0, 0x5
- negs r0, r0
- mov r10, r0
-_08143094:
- mov r0, r8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xC
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0
- beq _081430A8
- cmp r6, r9
- bne _081430D0
-_081430A8:
- adds r0, r1, r6
- adds r0, 0x6D
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- b _08143138
- .pool
-_081430D0:
- adds r5, r6, 0
- adds r5, 0x31
- adds r0, r1, 0
- adds r0, 0x3C
- adds r0, r5
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- adds r1, 0x3E
- ldrb r2, [r1]
- mov r0, r10
- ands r0, r2
- strb r0, [r1]
- mov r0, r8
- ldr r3, [r0]
- adds r4, r3, 0
- adds r4, 0x3C
- adds r4, r5
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r7
- adds r3, 0xC
- adds r3, r6
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r0, [r0, 0x3]
- adds r0, 0x1
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r2, 0x20]
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r7
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r0, [r0, 0x4]
- adds r0, 0x1
- lsls r0, 3
- adds r0, 0x3
- strh r0, [r2, 0x22]
-_08143138:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x5
- bls _08143094
-_08143142:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8143038
-
- thumb_func_start sub_8143150
-sub_8143150: @ 8143150
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _08143180
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x6C
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- b _081431D0
- .pool
-_08143180:
- ldr r4, =gSprites
- ldr r3, =gUnknown_0203AB88
- ldr r0, [r3]
- adds r0, 0x6C
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r3, [r3]
- adds r3, 0x6C
- ldrb r0, [r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldr r0, =gUnknown_085B6154
- lsls r2, r5, 2
- adds r2, r5
- lsls r2, 2
- adds r2, r0
- ldrb r0, [r2, 0x3]
- adds r0, 0x2
- lsls r0, 3
- strh r0, [r1, 0x20]
- ldrb r0, [r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r2, 0x4]
- adds r0, 0x2
- lsls r0, 3
- strh r0, [r1, 0x22]
-_081431D0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143150
-
- thumb_func_start sub_81431E4
-sub_81431E4: @ 81431E4
- push {r4-r7,lr}
- sub sp, 0xC
- ldr r4, =gUnknown_085B741C
- ldr r0, [r4]
- ldr r5, =gDecompressionBuffer
- adds r1, r5, 0
- bl LZ77UnCompWram
- str r5, [sp, 0x4]
- add r0, sp, 0x4
- ldrh r2, [r4, 0x6]
- lsls r2, 16
- ldrh r1, [r4, 0x4]
- orrs r1, r2
- str r1, [r0, 0x4]
- bl LoadSpriteSheet
- movs r1, 0xF
- mov r0, sp
- strh r1, [r0]
- movs r0, 0
- ldr r7, =gSprites
-_08143210:
- movs r4, 0
- adds r6, r0, 0x1
- lsls r5, r0, 2
-_08143216:
- adds r1, r5, r4
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- ldr r1, =gSpriteTemplate_85B7610
- adds r0, r1
- movs r1, 0x28
- mov r2, sp
- bl sub_8142C60
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- adds r2, r4, 0x7
- adds r2, r5, r2
- adds r1, 0x3C
- adds r1, r2
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- adds r1, 0x2C
- ldrb r0, [r1]
- movs r2, 0x40
- orrs r0, r2
- movs r2, 0x80
- orrs r0, r2
- strb r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _08143216
- lsls r0, r6, 24
- lsrs r0, 24
- cmp r0, 0x2
- bls _08143210
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81431E4
-
- thumb_func_start sub_8143280
-sub_8143280: @ 8143280
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- ldrh r0, [r6, 0x2E]
- ldrh r1, [r1, 0x24]
- adds r0, r1
- lsls r0, 16
- lsrs r4, r0, 16
- asrs r1, r0, 16
- ldr r0, =0x00000167
- cmp r1, r0
- ble _081432A2
- ldr r2, =0xfffffe98
- adds r0, r1, r2
- lsls r0, 16
- lsrs r4, r0, 16
-_081432A2:
- adds r0, r4, 0
- bl Sin2
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- bl Cos2
- lsls r2, r5, 16
- asrs r2, 16
- movs r3, 0x30
- ldrsh r1, [r6, r3]
- muls r1, r2
- asrs r1, 12
- strh r1, [r6, 0x24]
- lsls r0, 16
- asrs r4, r0, 16
- negs r1, r4
- movs r3, 0x30
- ldrsh r0, [r6, r3]
- muls r0, r1
- asrs r0, 12
- strh r0, [r6, 0x26]
- ldrb r0, [r6, 0x3]
- lsls r0, 26
- lsrs r3, r0, 27
- cmp r2, 0
- bge _081432DC
- adds r2, 0xF
-_081432DC:
- lsls r0, r2, 12
- lsrs r5, r0, 16
- ldr r1, =gOamMatrices
- lsls r0, r3, 3
- adds r1, r0, r1
- adds r0, r4, 0
- cmp r0, 0
- bge _081432EE
- adds r0, 0xF
-_081432EE:
- asrs r0, 4
- strh r0, [r1, 0x6]
- strh r0, [r1]
- strh r5, [r1, 0x2]
- lsls r0, r5, 16
- asrs r0, 16
- negs r0, r0
- strh r0, [r1, 0x4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143280
-
- thumb_func_start sub_8143314
-sub_8143314: @ 8143314
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- movs r5, 0
- ldr r7, =gDecompressionBuffer
- mov r6, sp
-_08143322:
- ldr r0, =gUnknown_085B7750
- lsls r4, r5, 3
- adds r4, r0
- ldr r0, [r4]
- adds r1, r7, 0
- bl LZ77UnCompWram
- str r7, [sp]
- ldrh r2, [r4, 0x4]
- ldr r0, =0xffff0000
- ldr r1, [r6, 0x4]
- ands r1, r0
- orrs r1, r2
- str r1, [r6, 0x4]
- ldrh r2, [r4, 0x6]
- lsls r2, 16
- ldr r0, =0x0000ffff
- ands r0, r1
- orrs r0, r2
- str r0, [r6, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _08143322
- ldr r0, =gSpriteTemplate_85B77E4
- movs r1, 0xD0
- movs r2, 0x10
- movs r3, 0x4
- bl CreateSprite
- ldr r3, =gUnknown_0203AB88
- ldr r1, [r3]
- adds r1, 0x50
- strb r0, [r1]
- ldr r4, =gSprites
- ldr r0, [r3]
- adds r0, 0x50
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- movs r5, 0
- adds r7, r3, 0
-_0814338C:
- lsls r1, r5, 19
- movs r0, 0xC4
- lsls r0, 16
- adds r1, r0
- asrs r1, 16
- ldr r0, =gUnknown_085B77FC
- movs r2, 0x18
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r3, r5, 0
- adds r3, 0x15
- adds r1, 0x3C
- adds r1, r3
- strb r0, [r1]
- ldr r0, [r7]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r7]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r6, 0x40
- orrs r1, r6
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _0814338C
- ldr r0, =gUnknown_085B7814
- movs r1, 0x78
- movs r2, 0x44
- movs r3, 0x4
- bl CreateSprite
- ldr r2, =gUnknown_0203AB88
- ldr r1, [r2]
- adds r1, 0x55
- strb r0, [r1]
- ldr r3, =gSprites
- ldr r0, [r2]
- adds r0, 0x55
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x2C
- ldrb r1, [r0]
- orrs r1, r6
- strb r1, [r0]
- movs r5, 0
- adds r4, r2, 0
- adds r7, r3, 0
-_0814341C:
- lsls r1, r5, 20
- movs r2, 0xC0
- lsls r2, 16
- adds r1, r2
- asrs r1, 16
- ldr r0, =gUnknown_085B782C
- movs r2, 0x24
- movs r3, 0x4
- bl CreateSprite
- ldr r1, [r4]
- adds r2, r5, 0
- adds r2, 0x1A
- adds r1, 0x3C
- adds r1, r2
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0x3C
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r3, 0x4
- mov r8, r3
- mov r3, r8
- orrs r1, r3
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x3C
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r6, 0x40
- orrs r1, r6
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _0814341C
- ldr r0, =gUnknown_085B7844
- movs r1, 0x98
- movs r2, 0x60
- movs r3, 0x9
- bl CreateSprite
- ldr r3, =gUnknown_0203AB88
- ldr r1, [r3]
- adds r1, 0x6C
- strb r0, [r1]
- ldr r4, =gSprites
- ldr r0, [r3]
- adds r0, 0x6C
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- mov r2, r8
- orrs r0, r2
- strb r0, [r1, 0x5]
- ldr r0, [r3]
- adds r0, 0x6C
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x2C
- ldrb r1, [r0]
- orrs r1, r6
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0x6C
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143314
-
- thumb_func_start sub_8143514
-sub_8143514: @ 8143514
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r7, r0, 16
- movs r0, 0xFA
- lsls r0, 2
- mov r8, r0
- movs r4, 0
- movs r6, 0
- ldr r1, =gSprites
- mov r9, r1
- ldr r0, =gUnknown_0203AB88
- mov r10, r0
-_08143534:
- adds r0, r7, 0
- mov r1, r8
- bl __udivsi3
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gUnknown_0203AB88
- ldr r0, [r1]
- adds r3, r6, 0
- adds r3, 0x15
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- cmp r5, 0
- bne _0814356E
- cmp r4, 0
- bne _0814356E
- cmp r6, 0x3
- bne _081435CC
-_0814356E:
- mov r4, r10
- ldr r0, [r4]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r9
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r4, 0x5
- negs r4, r4
- adds r2, r4, 0
- ands r1, r2
- strb r1, [r0]
- mov r1, r10
- ldr r0, [r1]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- mov r4, r9
- adds r3, r0, r4
- adds r4, r3, 0
- adds r4, 0x40
- ldr r1, =gSprites + 8
- adds r0, r1
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r0, r1
- ldrh r2, [r0]
- ldrh r4, [r4]
- adds r2, r4
- ldr r4, =0x000003ff
- adds r0, r4, 0
- ands r2, r0
- ldrh r0, [r3, 0x4]
- ldr r4, =0xfffffc00
- adds r1, r4, 0
- ands r0, r1
- orrs r0, r2
- strh r0, [r3, 0x4]
- movs r4, 0x1
-_081435CC:
- adds r0, r7, 0
- mov r1, r8
- bl __umodsi3
- lsls r0, 16
- lsrs r7, r0, 16
- mov r0, r8
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _08143534
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143514
-
- thumb_func_start sub_8143614
-sub_8143614: @ 8143614
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gUnknown_085B7B04
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- cmp r4, 0x13
- bls _0814362C
- movs r4, 0
-_0814362C:
- ldr r3, =gUnknown_085B6154
- lsls r0, r4, 2
- adds r0, r4
- lsls r2, r0, 2
- adds r0, r2, r3
- ldrb r0, [r0, 0x1]
- lsls r0, 28
- lsrs r0, 28
- cmp r0, 0x4
- beq _08143680
- cmp r0, 0x4
- bgt _08143654
- cmp r0, 0x3
- beq _0814365A
- b _081436C4
- .pool
-_08143654:
- cmp r0, 0xC
- beq _081436A4
- b _081436C4
-_0814365A:
- adds r0, r4, 0
- movs r1, 0x5
- bl __udivsi3
- subs r0, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x16
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0x3
- bhi _081436C4
- ldrb r0, [r1]
- adds r0, 0x1
- b _08143698
- .pool
-_08143680:
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x12
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0x2
- bhi _081436C4
- ldrb r0, [r1]
- adds r0, 0x2
-_08143698:
- add r0, sp
- ldrb r0, [r0]
- b _081436C6
- .pool
-_081436A4:
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- adds r0, r3, 0
- adds r0, 0x8
- adds r0, r2, r0
- ldr r1, [r1, 0x8]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _081436C4
- mov r0, sp
- ldrb r0, [r0, 0x4]
- b _081436C6
- .pool
-_081436C4:
- movs r0, 0
-_081436C6:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8143614
-
- thumb_func_start sub_81436D0
-sub_81436D0: @ 81436D0
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- adds r1, 0x55
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- ldr r2, =gSprites
- adds r4, r1, r2
- bl sub_8143614
- adds r3, r4, 0
- adds r3, 0x2B
- strb r0, [r3]
- adds r2, r4, 0
- adds r2, 0x40
- ldr r1, [r4, 0x8]
- ldrb r0, [r3]
- ldr r1, [r1]
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0]
- ldrh r2, [r2]
- adds r1, r2
- ldr r2, =0x000003ff
- adds r0, r2, 0
- ands r1, r0
- ldrh r2, [r4, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r4, 0x4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81436D0
-
- thumb_func_start sub_814372C
-sub_814372C: @ 814372C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r6, 0
- ldr r1, =gUnknown_0203AB88
- ldr r0, [r1]
- ldrb r0, [r0, 0x19]
- adds r5, r1, 0
- cmp r0, 0x1
- bne _08143746
- movs r6, 0x2
-_08143746:
- cmp r2, 0x6
- bls _0814374C
- b _081438A8
-_0814374C:
- lsls r0, r2, 2
- ldr r1, =_08143760
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08143760:
- .4byte _081438A8
- .4byte _08143864
- .4byte _0814383C
- .4byte _08143830
- .4byte _08143808
- .4byte _081437FC
- .4byte _0814377C
-_0814377C:
- movs r4, 0
- ldr r5, =gSprites
- ldr r6, =gUnknown_0203AB88
- movs r0, 0x5
- negs r0, r0
- mov r12, r0
- adds r7, r5, 0
- adds r7, 0x8
- ldr r2, =0xfffffc00
- mov r8, r2
-_08143790:
- ldr r0, [r6]
- adds r3, r4, 0
- adds r3, 0x1A
- adds r0, 0x3C
- adds r0, r3
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r2, [r1]
- mov r0, r12
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r6]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r5
- adds r2, r3, 0
- adds r2, 0x40
- adds r0, r7
- ldr r0, [r0]
- ldr r0, [r0]
- ldrh r1, [r0]
- ldrh r2, [r2]
- adds r1, r2
- ldr r2, =0x000003ff
- adds r0, r2, 0
- ands r1, r0
- ldrh r2, [r3, 0x4]
- mov r0, r8
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _08143790
- b _081438F4
- .pool
-_081437FC:
- ldr r2, =gSprites
- ldr r0, [r5]
- adds r0, 0x58
- b _0814386A
- .pool
-_08143808:
- ldr r2, =gSprites
- ldr r0, [r5]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r2
- adds r4, r3, 0
- adds r4, 0x40
- adds r2, 0x8
- adds r0, r2
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r6, 2
- adds r0, r1
- ldrh r1, [r0, 0x8]
- b _08143886
- .pool
-_08143830:
- ldr r2, =gSprites
- ldr r0, [r5]
- adds r0, 0x57
- b _0814386A
- .pool
-_0814383C:
- ldr r2, =gSprites
- ldr r0, [r5]
- adds r0, 0x57
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r2
- adds r4, r3, 0
- adds r4, 0x40
- adds r2, 0x8
- adds r0, r2
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r6, 2
- adds r0, r1
- ldrh r1, [r0, 0x8]
- b _08143886
- .pool
-_08143864:
- ldr r2, =gSprites
- ldr r0, [r5]
- adds r0, 0x56
-_0814386A:
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r2
- adds r4, r3, 0
- adds r4, 0x40
- adds r2, 0x8
- adds r0, r2
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r6, 2
- adds r0, r1
- ldrh r1, [r0, 0x4]
-_08143886:
- ldrh r4, [r4]
- adds r1, r4
- ldr r2, =0x000003ff
- adds r0, r2, 0
- ands r1, r0
- ldrh r2, [r3, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- b _081438F4
- .pool
-_081438A8:
- movs r4, 0
- lsls r7, r6, 2
- ldr r6, =gSprites
- movs r0, 0x8
- adds r0, r6
- mov r12, r0
- ldr r2, =0xfffffc00
- mov r8, r2
-_081438B8:
- ldr r0, [r5]
- adds r0, r4
- adds r0, 0x56
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r6
- adds r2, r3, 0
- adds r2, 0x40
- add r0, r12
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, r7, r0
- ldrh r1, [r0, 0x8]
- ldrh r2, [r2]
- adds r1, r2
- ldr r2, =0x000003ff
- adds r0, r2, 0
- ands r1, r0
- ldrh r2, [r3, 0x4]
- mov r0, r8
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _081438B8
-_081438F4:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814372C
-
- thumb_func_start sub_814390C
-sub_814390C: @ 814390C
- ldr r1, =gUnknown_0203AB88
- ldr r1, [r1]
- ldrh r1, [r1, 0x26]
- strh r1, [r0, 0x24]
- bx lr
- .pool
- thumb_func_end sub_814390C
-
- thumb_func_start sub_814391C
-sub_814391C: @ 814391C
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r4, =gUnknown_085B7948
- ldr r0, [r4]
- ldr r5, =gDecompressionBuffer
- adds r1, r5, 0
- bl LZ77UnCompWram
- str r5, [sp]
- ldrh r1, [r4, 0x6]
- lsls r1, 16
- ldrh r0, [r4, 0x4]
- orrs r0, r1
- str r0, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- ldr r0, =gSpriteTemplate_85B7950
- movs r1, 0x74
- movs r2, 0x50
- movs r3, 0x51
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldrh r0, [r0, 0x24]
- movs r2, 0
- strh r0, [r1, 0x2E]
- strh r2, [r1, 0x30]
- adds r3, r1, 0
- adds r3, 0x2C
- ldrb r0, [r3]
- movs r2, 0x40
- orrs r0, r2
- movs r2, 0x80
- orrs r0, r2
- strb r0, [r3]
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1]
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814391C
-
- thumb_func_start sub_814399C
-sub_814399C: @ 814399C
- ldrb r0, [r0, 0x3]
- lsls r0, 26
- lsrs r0, 27
- ldr r1, =gOamMatrices
- lsls r0, 3
- adds r0, r1
- ldr r1, =gUnknown_0203AB88
- ldr r2, [r1]
- ldrh r1, [r2, 0x2C]
- strh r1, [r0, 0x6]
- ldrh r1, [r2, 0x2C]
- strh r1, [r0]
- ldrh r1, [r2, 0x2E]
- strh r1, [r0, 0x2]
- ldrh r1, [r2, 0x30]
- strh r1, [r0, 0x4]
- bx lr
- .pool
- thumb_func_end sub_814399C
-
- thumb_func_start sub_81439C8
-sub_81439C8: @ 81439C8
- push {r4-r6,lr}
- movs r4, 0
- ldr r5, =gUnknown_0203AB88
- ldr r6, =gSprites
-_081439D0:
- movs r3, 0x39
- subs r3, r4
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gSpriteTemplate_85B7928
- movs r1, 0x74
- movs r2, 0x50
- bl CreateSprite
- ldr r1, [r5]
- adds r1, 0x3C
- adds r1, r4
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x3C
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0x40
- beq _08143A24
- adds r1, r0, 0
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x3C
- adds r0, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
-_08143A24:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _081439D0
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81439C8
-
- thumb_func_start sub_8143A40
-sub_8143A40: @ 8143A40
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x3C
- ldrb r5, [r0]
- movs r6, 0
- ldr r7, =gSprites
- movs r0, 0x1C
- adds r0, r7
- mov r10, r0
- movs r1, 0x2E
- adds r1, r7
- mov r9, r1
- mov r8, r6
-_08143A64:
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- adds r0, r4, r7
- adds r3, r0, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r3]
- mov r1, r10
- adds r2, r4, r1
- ldr r1, =SpriteCallbackDummy
- str r1, [r2]
- movs r1, 0
- bl StartSpriteAnim
- movs r1, 0
- adds r2, r5, 0x1
- adds r3, r6, 0x1
-_08143A8C:
- lsls r0, r1, 1
- adds r0, r4
- add r0, r9
- mov r5, r8
- strh r5, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x7
- bls _08143A8C
- lsls r0, r2, 24
- lsrs r5, r0, 24
- lsls r0, r3, 24
- lsrs r6, r0, 24
- cmp r6, 0x5
- bls _08143A64
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143A40
-
- thumb_func_start sub_8143AC8
-sub_8143AC8: @ 8143AC8
- push {r4,r5,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldrh r4, [r0, 0x24]
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldrh r2, [r3, 0x34]
- movs r5, 0x34
- ldrsh r0, [r3, r5]
- cmp r1, r0
- ble _08143B04
- movs r1, 0xB4
- lsls r1, 1
- adds r0, r2, r1
- subs r2, r0, r4
- strh r2, [r3, 0x3A]
- lsls r1, r2, 16
- ldr r0, =0x01670000
- cmp r1, r0
- ble _08143B08
- ldr r5, =0xfffffe98
- adds r0, r2, r5
- b _08143B06
- .pool
-_08143B04:
- subs r0, r2, r4
-_08143B06:
- strh r0, [r3, 0x3A]
-_08143B08:
- movs r1, 0x3A
- ldrsh r0, [r3, r1]
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8143AC8
-
- thumb_func_start sub_8143B14
-sub_8143B14: @ 8143B14
- push {r4,r5,lr}
- bl sub_8143AC8
- ldr r5, =gUnknown_0203AB88
- ldr r4, [r5]
- lsls r0, 16
- asrs r0, 16
- bl __floatsisf
- ldr r1, =0x41f00000
- bl __divsf3
- bl __fixunssfsi
- adds r4, 0x7E
- strb r0, [r4]
- ldr r0, [r5]
- adds r0, 0x7E
- ldrb r0, [r0]
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8143B14
-
- thumb_func_start sub_8143B48
-sub_8143B48: @ 8143B48
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8143AC8
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1E
- bl __modsi3
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0xE
- bne _08143B68
- movs r0, 0
- strh r0, [r4, 0x32]
- b _08143B7E
-_08143B68:
- cmp r1, 0xD
- bgt _08143B70
- movs r0, 0xE
- b _08143B72
-_08143B70:
- movs r0, 0x2B
-_08143B72:
- subs r0, r1
- lsls r0, 16
- lsrs r0, 16
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
-_08143B7E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8143B48
-
- thumb_func_start sub_8143B84
-sub_8143B84: @ 8143B84
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- ldr r5, _08143BCC @ =gUnknown_0203AB88
- ldr r6, [r5]
- adds r4, r6, 0
- adds r4, 0x8C
- adds r1, r6, 0
- adds r1, 0x90
- ldr r0, [r4]
- ldr r1, [r1]
- bl __addsf3
- adds r1, r0, 0
- str r1, [r4]
- subs r4, 0x4
- ldr r0, [r4]
- bl __addsf3
- adds r6, r0, 0
- str r6, [r4]
- ldr r0, _08143BD0 @ =0x43B40000
- mov r8, r0
- adds r0, r6, 0
- mov r1, r8
- bl __gesf2
- cmp r0, 0
- blt _08143BD4
- adds r0, r6, 0
- mov r1, r8
- bl __subsf3
- b _08143BE8
- .align 2, 0
-_08143BCC:
- .4byte gUnknown_0203AB88
-_08143BD0:
- .4byte 0x43B40000
-_08143BD4:
- ldr r1, _08143C80 @ =0x00000000
- adds r0, r6, 0
- bl __ltsf2
- cmp r0, 0
- bge _08143BEA
- adds r0, r6, 0
- mov r1, r8
- bl __addsf3
-_08143BE8:
- str r0, [r4]
-_08143BEA:
- ldr r5, [r5]
- adds r0, r5, 0
- adds r0, 0x88
- ldr r0, [r0]
- bl __fixsfsi
- strh r0, [r7, 0x34]
- adds r4, r5, 0
- adds r4, 0x98
- adds r1, r5, 0
- adds r1, 0x9C
- ldr r0, [r4]
- ldr r1, [r1]
- bl __addsf3
- adds r1, r0, 0
- str r1, [r4]
- subs r4, 0x4
- ldr r0, [r4]
- bl __addsf3
- str r0, [r4]
- bl __fixsfsi
- strh r0, [r7, 0x36]
- ldrh r0, [r7, 0x34]
- bl Sin2
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldrh r0, [r7, 0x34]
- bl Cos2
- lsls r4, 16
- asrs r4, 16
- movs r2, 0x36
- ldrsh r1, [r7, r2]
- muls r1, r4
- asrs r1, 12
- strh r1, [r7, 0x24]
- lsls r0, 16
- asrs r0, 16
- negs r0, r0
- movs r2, 0x36
- ldrsh r1, [r7, r2]
- muls r0, r1
- asrs r0, 12
- strh r0, [r7, 0x26]
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _08143C74
- ldr r0, _08143C84 @ =gMPlayInfo_SE1
- ldr r4, _08143C88 @ =0x0000FFFF
- ldrh r2, [r7, 0x24]
- lsls r2, 24
- asrs r2, 24
- adds r1, r4, 0
- bl m4aMPlayPanpotControl
- ldr r0, _08143C8C @ =gMPlayInfo_SE2
- ldrh r2, [r7, 0x24]
- lsls r2, 24
- asrs r2, 24
- adds r1, r4, 0
- bl m4aMPlayPanpotControl
-_08143C74:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08143C80:
- .4byte 0x00000000
-_08143C84:
- .4byte gMPlayInfo_SE1
-_08143C88:
- .4byte 0x0000FFFF
-_08143C8C:
- .4byte gMPlayInfo_SE2
- thumb_func_end sub_8143B84
-
- thumb_func_start sub_8143C90
-sub_8143C90: @ 8143C90
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, =gUnknown_0203AB88
- ldr r1, [r0]
- ldrh r0, [r5, 0x3A]
- ldrh r1, [r1, 0x24]
- adds r2, r0, r1
- strh r2, [r5, 0x34]
- lsls r1, r2, 16
- ldr r0, =0x01670000
- cmp r1, r0
- ble _08143CAE
- ldr r1, =0xfffffe98
- adds r0, r2, r1
- strh r0, [r5, 0x34]
-_08143CAE:
- ldrh r0, [r5, 0x34]
- bl Sin2
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldrh r0, [r5, 0x34]
- bl Cos2
- lsls r4, 16
- asrs r4, 16
- movs r2, 0x36
- ldrsh r1, [r5, r2]
- muls r1, r4
- asrs r1, 12
- strh r1, [r5, 0x24]
- lsls r0, 16
- asrs r0, 16
- negs r0, r0
- movs r2, 0x36
- ldrsh r1, [r5, r2]
- muls r0, r1
- ldr r1, =gSpriteCoordOffsetY
- asrs r0, 12
- ldrh r1, [r1]
- adds r0, r1
- strh r0, [r5, 0x26]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143C90
-
- thumb_func_start sub_8143CFC
-sub_8143CFC: @ 8143CFC
- push {r4-r7,lr}
- adds r5, r0, 0
- bl sub_8143B84
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x36]
- adds r0, 0x84
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xD4
- bls _08143D22
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- b _08143D2E
-_08143D22:
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
-_08143D2E:
- strb r0, [r2]
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- cmp r0, 0x1D
- ble _08143DF8
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _08143D6C
- ldr r7, _08143D64 @ =gUnknown_0203AB88
- ldr r6, [r7]
- adds r4, r6, 0
- adds r4, 0x94
- adds r0, r6, 0
- adds r0, 0xA0
- ldr r0, [r0]
- ldr r1, _08143D68 @ =0x40000000
- bl __subsf3
- adds r1, r0, 0
- ldr r0, [r4]
- bl __lesf2
- cmp r0, 0
- bgt _08143DF8
- b _08143D8C
- .align 2, 0
-_08143D64:
- .4byte gUnknown_0203AB88
-_08143D68:
- .4byte 0x40000000
-_08143D6C:
- ldr r7, _08143E00 @ =gUnknown_0203AB88
- ldr r6, [r7]
- adds r4, r6, 0
- adds r4, 0x94
- adds r0, r6, 0
- adds r0, 0xA0
- ldr r0, [r0]
- ldr r1, _08143E04 @ =0x40000000
- bl __subsf3
- adds r1, r0, 0
- ldr r0, [r4]
- bl __gesf2
- cmp r0, 0
- blt _08143DF8
-_08143D8C:
- adds r1, r6, 0
- adds r1, 0x7D
- movs r0, 0xFF
- strb r0, [r1]
- ldr r2, [r7]
- ldrb r1, [r2, 0x3]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x3]
- adds r0, r5, 0
- adds r0, 0x2B
- ldrb r1, [r0]
- adds r1, 0x3
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- adds r0, r5, 0
- bl sub_8143B14
- movs r0, 0x1E
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl sub_8143AC8
- movs r1, 0x3A
- ldrsh r0, [r5, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 1
- adds r1, 0xF
- strh r1, [r5, 0x3A]
- ldr r0, _08143E08 @ =sub_8143C90
- str r0, [r5, 0x1C]
- movs r0, 0x47
- bl m4aSongNumStartOrChange
- ldr r3, [r7]
- adds r2, r3, 0
- adds r2, 0x9C
- adds r1, r3, 0
- adds r1, 0x98
- ldr r0, _08143E0C @ =0x00000000
- str r0, [r1]
- str r0, [r2]
- subs r1, 0xC
- ldr r0, _08143E10 @ =0xBF800000
- str r0, [r1]
-_08143DF8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08143E00:
- .4byte gUnknown_0203AB88
-_08143E04:
- .4byte 0x40000000
-_08143E08:
- .4byte sub_8143C90
-_08143E0C:
- .4byte 0x00000000
-_08143E10:
- .4byte 0xBF800000
- thumb_func_end sub_8143CFC
-
- thumb_func_start sub_8143E14
-sub_8143E14: @ 8143E14
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r7, r0, 0
- bl sub_8143B84
- movs r1, 0x34
- ldrsh r0, [r7, r1]
- cmp r0, 0
- beq _08143E32
- cmp r0, 0xB4
- beq _08143E9C
- b _08143F80
-_08143E32:
- movs r1, 0x2E
- ldrsh r0, [r7, r1]
- cmp r0, 0x1
- bne _08143E3C
- b _08143F80
-_08143E3C:
- movs r1, 0x3C
- ldrsh r0, [r7, r1]
- bl __floatsisf
- mov r9, r0
- ldr r0, =gUnknown_085B6348
- mov r10, r0
- ldr r1, =gUnknown_0203AB88
- mov r8, r1
- ldr r0, [r1]
- ldrb r4, [r0, 0x4]
- lsls r4, 30
- lsrs r0, r4, 25
- add r0, r10
- ldrb r0, [r0, 0x1]
- bl __floatsisf
- adds r1, r0, 0
- mov r0, r9
- bl __mulsf3
- adds r6, r0, 0
- lsrs r0, r4, 25
- add r0, r10
- ldrb r0, [r0, 0x2]
- subs r0, 0x1
- bl __floatsisf
- adds r1, r0, 0
- adds r0, r6, 0
- bl __addsf3
- adds r5, r0, 0
- lsrs r4, 25
- add r4, r10
- ldrh r0, [r4, 0xC]
- bl __floatsisf
- adds r1, r0, 0
- mov r0, r9
- bl __divsf3
- b _08143EFC
- .pool
-_08143E9C:
- movs r1, 0x2E
- ldrsh r0, [r7, r1]
- cmp r0, 0
- beq _08143F80
- movs r1, 0x3C
- ldrsh r0, [r7, r1]
- bl __floatsisf
- mov r9, r0
- ldr r0, _08143F90 @ =gUnknown_085B6348
- mov r10, r0
- ldr r1, _08143F94 @ =gUnknown_0203AB88
- mov r8, r1
- ldr r0, [r1]
- ldrb r4, [r0, 0x4]
- lsls r4, 30
- lsrs r0, r4, 25
- add r0, r10
- ldrb r0, [r0, 0x1]
- bl __floatsisf
- adds r1, r0, 0
- mov r0, r9
- bl __mulsf3
- adds r6, r0, 0
- lsrs r0, r4, 25
- add r0, r10
- ldrb r0, [r0, 0x2]
- subs r0, 0x1
- bl __floatsisf
- adds r1, r0, 0
- adds r0, r6, 0
- bl __addsf3
- adds r5, r0, 0
- lsrs r4, 25
- add r4, r10
- ldrh r0, [r4, 0xC]
- bl __floatsisf
- adds r1, r0, 0
- mov r0, r9
- bl __divsf3
- bl __negsf2
-_08143EFC:
- adds r2, r0, 0
- mov r0, r8
- ldr r6, [r0]
- adds r1, r6, 0
- adds r1, 0xA0
- adds r0, r6, 0
- adds r0, 0x94
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r6, 0
- adds r0, 0x98
- str r2, [r0]
- movs r0, 0x9C
- adds r0, r6
- mov r8, r0
- adds r0, r2, 0
- adds r1, r2, 0
- bl __addsf3
- adds r1, r5, 0
- bl __divsf3
- adds r4, r0, 0
- adds r0, r5, 0
- adds r1, r5, 0
- bl __mulsf3
- adds r1, r0, 0
- ldr r0, _08143F98 @ =0x40000000
- bl __divsf3
- adds r1, r0, 0
- adds r0, r4, 0
- bl __addsf3
- bl __negsf2
- mov r1, r8
- str r0, [r1]
- adds r1, r6, 0
- adds r1, 0x8C
- ldr r0, _08143F9C @ =0x00000000
- str r0, [r1]
- adds r2, r7, 0
- adds r2, 0x2C
- ldrb r1, [r2]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- adds r0, r7, 0
- adds r0, 0x2A
- movs r2, 0
- strb r2, [r0]
- adds r3, r7, 0
- adds r3, 0x3F
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x11
- negs r1, r1
- ands r0, r1
- strb r0, [r3]
- ldr r0, _08143FA0 @ =sub_8143CFC
- str r0, [r7, 0x1C]
- strh r2, [r7, 0x32]
-_08143F80:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08143F90:
- .4byte gUnknown_085B6348
-_08143F94:
- .4byte gUnknown_0203AB88
-_08143F98:
- .4byte 0x40000000
-_08143F9C:
- .4byte 0x00000000
-_08143FA0:
- .4byte sub_8143CFC
- thumb_func_end sub_8143E14
-
- thumb_func_start sub_8143FA4
-sub_8143FA4: @ 8143FA4
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- bl __floatsisf
- adds r4, r0, 0
- ldr r1, =0x3d4ccccd
- bl __mulsf3
- adds r1, r4, 0
- bl __mulsf3
- bl __fixsfsi
- adds r1, r0, 0
- subs r1, 0x2D
- strh r1, [r5, 0x26]
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1D
- ble _0814403E
- lsls r0, r1, 16
- cmp r0, 0
- blt _0814403E
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- adds r0, 0x7D
- movs r1, 0xFF
- strb r1, [r0]
- ldr r2, [r4]
- ldrb r1, [r2, 0x3]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x3]
- adds r0, r5, 0
- adds r0, 0x2B
- ldrb r1, [r0]
- adds r1, 0x3
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- adds r0, r5, 0
- bl sub_8143B14
- movs r0, 0x1E
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl sub_8143AC8
- movs r1, 0x3A
- ldrsh r0, [r5, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 1
- adds r1, 0xF
- strh r1, [r5, 0x3A]
- ldr r0, =sub_8143C90
- str r0, [r5, 0x1C]
- movs r0, 0x47
- bl m4aSongNumStartOrChange
- ldr r2, [r4]
- ldrb r0, [r2, 0x3]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0x3]
-_0814403E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8143FA4
-
- thumb_func_start sub_8144050
-sub_8144050: @ 8144050
- push {r4,lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x32]
- adds r1, r0, 0x1
- strh r1, [r3, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2C
- bgt _08144098
- ldrh r4, [r3, 0x26]
- subs r0, r4, 0x1
- strh r0, [r3, 0x26]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x2D
- bne _0814411E
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x73
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _0814411E
- strh r4, [r3, 0x26]
- b _0814411E
- .pool
-_08144098:
- lsls r0, r1, 16
- asrs r0, 16
- movs r2, 0x3C
- ldrsh r1, [r3, r2]
- cmp r0, r1
- bge _081440E4
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x73
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x2C
- ldrb r0, [r0]
- lsls r0, 26
- cmp r0, 0
- bne _0814411E
- adds r0, r1, 0
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081440DC
- ldrh r0, [r3, 0x26]
- adds r0, 0x1
- strh r0, [r3, 0x26]
- b _0814411E
- .pool
-_081440DC:
- ldrh r0, [r3, 0x26]
- subs r0, 0x1
- strh r0, [r3, 0x26]
- b _0814411E
-_081440E4:
- adds r2, r3, 0
- adds r2, 0x2C
- ldrb r1, [r2]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- adds r1, r3, 0
- adds r1, 0x2A
- movs r2, 0
- movs r0, 0x1
- strb r0, [r1]
- movs r0, 0x3F
- adds r0, r3
- mov r12, r0
- ldrb r0, [r0]
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x11
- negs r1, r1
- ands r0, r1
- mov r1, r12
- strb r0, [r1]
- strh r2, [r3, 0x32]
- ldr r0, =sub_8143FA4
- str r0, [r3, 0x1C]
- movs r0, 0x3D
- bl m4aSongNumStart
-_0814411E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144050
-
- thumb_func_start sub_8144128
-sub_8144128: @ 8144128
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8143B84
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- cmp r1, 0x5A
- beq _08144142
- movs r0, 0x87
- lsls r0, 1
- cmp r1, r0
- beq _0814414C
- b _0814415C
-_08144142:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _0814415C
- b _08144154
-_0814414C:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0814415C
-_08144154:
- ldr r0, =sub_8144050
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x32]
-_0814415C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144128
-
- thumb_func_start sub_8144168
-sub_8144168: @ 8144168
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8143B84
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldrb r0, [r0, 0x3]
- lsls r0, 27
- lsrs r0, 27
- cmp r0, 0
- beq _08144182
- cmp r0, 0x1
- beq _08144194
-_08144182:
- adds r0, r4, 0
- bl sub_81446DC
- ldr r0, =sub_8143E14
- b _0814419C
- .pool
-_08144194:
- adds r0, r4, 0
- bl sub_81448B8
- ldr r0, =sub_8144128
-_0814419C:
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144168
-
- thumb_func_start prev_quest_read_x24_hm_usage
-prev_quest_read_x24_hm_usage: @ 81441A8
- push {r4,r5,lr}
- adds r5, r0, 0
- bl sub_8143B84
- ldrh r0, [r5, 0x32]
- subs r0, 0x1
- strh r0, [r5, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- bne _081441CE
- ldr r0, =gUnknown_0203AB88
- ldr r4, [r0]
- adds r4, 0x98
- ldr r0, [r4]
- ldr r1, =0xbf800000
- bl __mulsf3
- str r0, [r4]
-_081441CE:
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0814425C
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _08144244
- ldr r2, =gUnknown_0203AB88
- ldr r0, [r2]
- adds r0, 0x7D
- movs r1, 0xFF
- strb r1, [r0]
- ldr r2, [r2]
- ldrb r1, [r2, 0x3]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x3]
- adds r0, r5, 0
- adds r0, 0x2B
- ldrb r1, [r0]
- adds r1, 0x3
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- adds r0, r5, 0
- bl sub_8143B14
- movs r0, 0x1E
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl sub_8143AC8
- movs r1, 0x3A
- ldrsh r0, [r5, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 1
- adds r1, 0xF
- strh r1, [r5, 0x3A]
- ldr r0, =sub_8143C90
- str r0, [r5, 0x1C]
- movs r0, 0x47
- bl m4aSongNumStartOrChange
- b _0814425C
- .pool
-_08144244:
- adds r0, r5, 0
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- movs r0, 0x38
- bl m4aSongNumStart
- adds r0, r5, 0
- bl sub_8144A24
-_0814425C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end prev_quest_read_x24_hm_usage
-
- thumb_func_start sub_8144264
-sub_8144264: @ 8144264
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- bl sub_8143B84
- movs r0, 0
- strh r0, [r6, 0x32]
- adds r0, r6, 0
- bl sub_8143B14
- ldr r1, _081442F0 @ =gUnknown_085B62E4
- ldr r4, _081442F4 @ =gUnknown_0203AB88
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x7E
- ldrb r0, [r0]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- ldr r1, [r2, 0x8]
- ands r0, r1
- cmp r0, 0
- bne _081442FC
- adds r1, r2, 0
- adds r1, 0x7D
- movs r0, 0xFF
- strb r0, [r1]
- ldr r2, [r4]
- ldrb r1, [r2, 0x3]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x3]
- adds r0, r6, 0
- adds r0, 0x2B
- ldrb r1, [r0]
- adds r1, 0x3
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl StartSpriteAnim
- adds r0, r6, 0
- bl sub_8143B14
- movs r0, 0x1E
- strh r0, [r6, 0x36]
- adds r0, r6, 0
- bl sub_8143AC8
- movs r1, 0x3A
- ldrsh r0, [r6, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 1
- adds r1, 0xF
- strh r1, [r6, 0x3A]
- ldr r0, _081442F8 @ =sub_8143C90
- str r0, [r6, 0x1C]
- movs r0, 0x47
- bl m4aSongNumStartOrChange
- b _081443F8
- .align 2, 0
-_081442F0:
- .4byte gUnknown_085B62E4
-_081442F4:
- .4byte gUnknown_0203AB88
-_081442F8:
- .4byte sub_8143C90
-_081442FC:
- movs r0, 0x38
- bl m4aSongNumStart
- bl Random
- movs r1, 0x1
- mov r8, r1
- ands r1, r0
- mov r8, r1
- cmp r1, 0
- beq _08144340
- ldr r4, [r4]
- adds r1, r4, 0
- adds r1, 0x8C
- ldr r0, _08144338 @ =0x00000000
- str r0, [r1]
- adds r0, r4, 0
- adds r0, 0x7E
- ldrb r0, [r0]
- adds r0, 0x1
- movs r1, 0xC
- bl __modsi3
- lsls r1, r0, 24
- lsrs r2, r1, 24
- adds r1, r4, 0
- adds r1, 0x7F
- strb r0, [r1]
- ldr r5, _0814433C @ =gUnknown_085B6348
- b _08144378
-_08144338:
- .4byte 0x00000000
-_0814433C:
- .4byte gUnknown_085B6348
-_08144340:
- ldr r7, [r4]
- adds r4, r7, 0
- adds r4, 0x8C
- ldr r5, =gUnknown_085B6348
- ldrb r0, [r7, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, [r0]
- adds r0, r1, 0
- bl __addsf3
- str r0, [r4]
- adds r0, r7, 0
- adds r0, 0x7E
- ldrb r4, [r0]
- adds r0, r4, 0
- adds r0, 0xB
- movs r1, 0xC
- bl __modsi3
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r7, 0
- adds r0, 0x7F
- strb r4, [r0]
-_08144378:
- ldr r0, =gUnknown_085B62E4
- lsls r1, r2, 3
- adds r0, 0x4
- adds r1, r0
- ldr r2, =gUnknown_0203AB88
- ldr r3, [r2]
- ldr r1, [r1]
- ldr r0, [r3, 0x8]
- ands r1, r0
- cmp r1, 0
- beq _081443AC
- movs r0, 0x1
- strh r0, [r6, 0x2E]
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r5
- ldrb r0, [r0, 0x2]
- strh r0, [r6, 0x32]
- b _081443E8
- .pool
-_081443AC:
- strh r1, [r6, 0x2E]
- ldrb r1, [r3, 0x4]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _081443C4
- lsls r0, r1, 30
- lsrs r0, 25
- adds r0, r5
- ldrb r0, [r0, 0x1]
- strh r0, [r6, 0x32]
- b _081443E8
-_081443C4:
- lsls r0, r1, 30
- lsrs r0, 25
- adds r0, r5
- ldrb r0, [r0, 0x2]
- strh r0, [r6, 0x32]
- mov r0, r8
- cmp r0, 0
- beq _081443E0
- adds r1, r3, 0
- adds r1, 0x8C
- ldr r0, =0x3f000000
- b _081443E6
- .pool
-_081443E0:
- adds r1, r3, 0
- adds r1, 0x8C
- ldr r0, =0xbfc00000
-_081443E6:
- str r0, [r1]
-_081443E8:
- ldr r0, [r2]
- adds r0, 0x98
- ldr r1, =0x3dae147b
- str r1, [r0]
- ldr r0, =prev_quest_read_x24_hm_usage
- str r0, [r6, 0x1C]
- movs r0, 0x5
- strh r0, [r6, 0x30]
-_081443F8:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144264
-
- thumb_func_start sub_8144410
-sub_8144410: @ 8144410
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- bl sub_8143B84
- ldr r4, _081444A4 @ =gUnknown_0203AB88
- ldr r0, [r4]
- adds r0, 0x8C
- ldr r0, [r0]
- ldr r1, _081444A8 @ =0x3F000000
- bl __gtsf2
- cmp r0, 0
- bgt _081444FA
- adds r0, r6, 0
- bl sub_8143B14
- adds r0, r6, 0
- bl sub_8143B48
- lsls r0, 16
- cmp r0, 0
- bne _081444BC
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0x90
- ldr r0, _081444AC @ =0x00000000
- str r0, [r1]
- movs r0, 0x8C
- adds r0, r2
- mov r8, r0
- ldr r1, _081444B0 @ =gUnknown_085B6348
- mov r9, r1
- ldrb r0, [r2, 0x4]
- lsls r7, r0, 30
- lsrs r0, r7, 25
- add r0, r9
- movs r4, 0x3
- ldrsb r4, [r0, r4]
- adds r0, r4, 0
- bl __floatsisf
- adds r5, r0, 0
- cmp r4, 0
- bge _08144476
- ldr r1, _081444B4 @ =0x43800000
- bl __addsf3
- adds r5, r0, 0
-_08144476:
- lsrs r0, r7, 25
- add r0, r9
- ldrb r0, [r0, 0x4]
- adds r0, 0x1
- bl __floatsisf
- adds r1, r0, 0
- adds r0, r5, 0
- bl __divsf3
- adds r1, r0, 0
- mov r2, r8
- ldr r0, [r2]
- bl __subsf3
- mov r1, r8
- str r0, [r1]
- movs r0, 0x4
- strh r0, [r6, 0x30]
- ldr r0, _081444B8 @ =sub_8144264
- str r0, [r6, 0x1C]
- b _081444FA
- .align 2, 0
-_081444A4:
- .4byte gUnknown_0203AB88
-_081444A8:
- .4byte 0x3F000000
-_081444AC:
- .4byte 0x00000000
-_081444B0:
- .4byte gUnknown_085B6348
-_081444B4:
- .4byte 0x43800000
-_081444B8:
- .4byte sub_8144264
-_081444BC:
- ldr r4, [r4]
- adds r7, r4, 0
- adds r7, 0x90
- ldr r0, [r7]
- ldr r6, _08144508 @ =0x00000000
- adds r1, r6, 0
- bl __nesf2
- cmp r0, 0
- beq _081444FA
- adds r5, r4, 0
- adds r5, 0x8C
- ldr r0, [r5]
- adds r1, r6, 0
- bl __ltsf2
- cmp r0, 0
- bge _081444FA
- str r6, [r7]
- str r6, [r5]
- adds r4, 0x98
- ldr r0, [r4]
- bl __extendsfdf2
- ldr r2, _0814450C @ =0x3FF33333
- ldr r3, _08144510 @ =0x33333333
- bl __divdf3
- bl __truncdfsf2
- str r0, [r4]
-_081444FA:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08144508:
- .4byte 0x00000000
-_0814450C:
- .4byte 0x3FF33333
-_08144510:
- .4byte 0x33333333
- thumb_func_end sub_8144410
-
- thumb_func_start sub_8144514
-sub_8144514: @ 8144514
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- bl sub_8143B84
- ldr r0, =gUnknown_0203AB88
- ldr r5, [r0]
- adds r0, r5, 0
- adds r0, 0x94
- ldr r0, [r0]
- ldr r1, =0x42200000
- bl __gtsf2
- cmp r0, 0
- bgt _081445B8
- movs r0, 0x98
- adds r0, r5
- mov r8, r0
- adds r7, r5, 0
- adds r7, 0x86
- movs r1, 0
- ldrsh r4, [r7, r1]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _08144556
- ldr r1, =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_08144556:
- ldr r0, =0x40800000
- adds r1, r2, 0
- bl __divsf3
- bl __negsf2
- mov r1, r8
- str r0, [r1]
- movs r0, 0x90
- adds r0, r5
- mov r8, r0
- adds r5, 0x8C
- movs r1, 0
- ldrsh r4, [r7, r1]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _08144586
- ldr r1, =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_08144586:
- ldr r0, [r5]
- adds r1, r2, 0
- bl __divsf3
- bl __negsf2
- mov r1, r8
- str r0, [r1]
- adds r1, r6, 0
- adds r1, 0x2A
- movs r0, 0x2
- strb r0, [r1]
- adds r2, r6, 0
- adds r2, 0x3F
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x11
- negs r1, r1
- ands r0, r1
- strb r0, [r2]
- movs r0, 0x3
- strh r0, [r6, 0x30]
- ldr r0, =sub_8144410
- str r0, [r6, 0x1C]
-_081445B8:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144514
-
- thumb_func_start sub_81445D8
-sub_81445D8: @ 81445D8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- bl sub_8143B84
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- adds r0, 0x94
- ldr r0, [r0]
- ldr r1, =0x42700000
- bl __gtsf2
- cmp r0, 0
- bgt _0814468A
- movs r0, 0x5D
- bl m4aSongNumStartOrChange
- ldr r5, [r4]
- movs r0, 0x98
- adds r0, r5
- mov r8, r0
- adds r7, r5, 0
- adds r7, 0x84
- movs r1, 0
- ldrsh r4, [r7, r1]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _08144620
- ldr r1, =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_08144620:
- ldr r0, =0x41a00000
- adds r1, r2, 0
- bl __divsf3
- bl __negsf2
- mov r1, r8
- str r0, [r1]
- movs r0, 0x90
- adds r0, r5
- mov r8, r0
- adds r0, r5, 0
- adds r0, 0x8C
- ldr r1, [r0]
- ldr r0, =0x3f800000
- bl __subsf3
- adds r5, r0, 0
- movs r1, 0
- ldrsh r4, [r7, r1]
- adds r0, r4, 0
- bl __floatsisf
- adds r2, r0, 0
- cmp r4, 0
- bge _0814465C
- ldr r1, =0x47800000
- bl __addsf3
- adds r2, r0, 0
-_0814465C:
- adds r0, r5, 0
- adds r1, r2, 0
- bl __divsf3
- mov r1, r8
- str r0, [r1]
- adds r1, r6, 0
- adds r1, 0x2A
- movs r0, 0x1
- strb r0, [r1]
- adds r2, r6, 0
- adds r2, 0x3F
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x11
- negs r1, r1
- ands r0, r1
- strb r0, [r2]
- movs r0, 0x2
- strh r0, [r6, 0x30]
- ldr r0, =sub_8144514
- str r0, [r6, 0x1C]
-_0814468A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81445D8
-
- thumb_func_start sub_81446AC
-sub_81446AC: @ 81446AC
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0
- movs r0, 0x1
- strh r0, [r4, 0x30]
- strh r1, [r4, 0x32]
- adds r0, r4, 0
- bl sub_8143B84
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, =sub_81445D8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81446AC
-
- thumb_func_start sub_81446DC
-sub_81446DC: @ 81446DC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- mov r8, r0
- ldr r1, =gUnknown_085B7B0A
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- mov r1, r8
- ldrh r0, [r1, 0x3C]
- subs r0, 0x2
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- ldr r5, =gUnknown_0203AB88
- ldr r0, =gSpriteTemplate_85B79F8
- movs r2, 0xC
- negs r2, r2
- movs r1, 0x24
- movs r3, 0x32
- bl CreateSprite
- ldr r1, [r5]
- adds r1, 0x73
- strb r0, [r1]
- ldr r4, =gSpriteTemplate_85B7ABC
- mov r3, r8
- movs r0, 0x2E
- ldrsh r2, [r3, r0]
- lsls r2, 2
- mov r1, sp
- adds r0, r1, r2
- movs r3, 0
- ldrsh r1, [r0, r3]
- mov r0, sp
- adds r0, 0x2
- adds r0, r2
- movs r3, 0
- ldrsh r2, [r0, r3]
- adds r0, r4, 0
- movs r3, 0x3B
- bl CreateSprite
- ldr r1, [r5]
- adds r1, 0x74
- strb r0, [r1]
- adds r4, 0x18
- adds r0, r4, 0
- movs r1, 0x24
- movs r2, 0x8C
- movs r3, 0x33
- bl CreateSprite
- ldr r1, [r5]
- adds r1, 0x75
- strb r0, [r1]
- ldr r3, =gSprites
- ldr r0, [r5]
- adds r0, 0x75
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r2, [r0, 0x1]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0, 0x1]
- movs r7, 0
- adds r6, r3, 0
- ldr r0, =gUnknown_085B6348
- mov r12, r0
- mov r10, r5
-_0814477C:
- ldr r0, [r5]
- adds r3, r7, 0
- adds r3, 0x37
- adds r0, 0x3C
- adds r0, r3
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x3C
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
- ldr r4, [r5]
- adds r2, r4, 0
- adds r2, 0x3C
- adds r2, r3
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r1, r4, 0
- adds r1, 0x73
- ldrb r1, [r1]
- strh r1, [r0, 0x36]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r1, r4, 0
- adds r1, 0x74
- ldrb r1, [r1]
- strh r1, [r0, 0x38]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r1, r4, 0
- adds r1, 0x75
- ldrb r1, [r1]
- strh r1, [r0, 0x3A]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r9
- strh r1, [r0, 0x32]
- ldrb r0, [r2]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- mov r0, r8
- movs r1, 0x3C
- ldrsh r3, [r0, r1]
- ldrb r1, [r4, 0x4]
- lsls r1, 30
- lsrs r0, r1, 25
- add r0, r12
- ldrb r0, [r0, 0x1]
- muls r3, r0
- lsrs r1, 25
- add r1, r12
- ldrb r0, [r1, 0x2]
- ldr r1, =0x0000ffff
- adds r0, r1
- adds r3, r0
- strh r3, [r2, 0x34]
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r2, =gSprites
- cmp r7, 0x2
- bls _0814477C
- mov r3, r10
- ldr r0, [r3]
- adds r0, 0x74
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r3]
- mov r1, r8
- str r1, [r0, 0x38]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81446DC
-
- thumb_func_start sub_81448B8
-sub_81448B8: @ 81448B8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- adds r7, r0, 0
- movs r0, 0
- mov r8, r0
- ldr r1, =gUnknown_085B7B12
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- ldrh r0, [r7, 0x3C]
- subs r0, 0x2
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- ldr r0, =gSpriteTemplate_85B7A10
- movs r1, 0x2E
- ldrsh r2, [r7, r1]
- lsls r2, 2
- mov r3, sp
- adds r1, r3, r2
- movs r3, 0
- ldrsh r1, [r1, r3]
- mov r4, sp
- adds r4, 0x2
- adds r2, r4, r2
- movs r3, 0
- ldrsh r2, [r2, r3]
- movs r3, 0x32
- bl CreateSprite
- ldr r5, =gUnknown_0203AB88
- ldr r1, [r5]
- adds r1, 0x73
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x73
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r6, =gSprites
- adds r0, r6
- ldrh r1, [r7, 0x2E]
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- ldr r0, =gUnknown_085B7AEC
- movs r1, 0x2E
- ldrsh r2, [r7, r1]
- lsls r2, 2
- mov r3, sp
- adds r1, r3, r2
- movs r3, 0
- ldrsh r1, [r1, r3]
- adds r4, r2
- movs r3, 0
- ldrsh r2, [r4, r3]
- movs r3, 0x33
- bl CreateSprite
- ldr r1, [r5]
- adds r1, 0x74
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x74
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x74
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- mov r0, r9
- lsls r2, r0, 16
- asrs r2, 16
- ldr r3, =gUnknown_085B6348
- ldr r0, [r5]
- ldrb r1, [r0, 0x4]
- lsls r1, 30
- lsrs r0, r1, 25
- adds r0, r3
- ldrb r0, [r0, 0x1]
- muls r2, r0
- lsrs r1, 25
- adds r1, r3
- ldrh r0, [r1, 0x10]
- adds r0, 0x2D
- adds r2, r0
- strh r2, [r7, 0x3C]
-_08144992:
- ldr r0, =gUnknown_0203AB88
- ldr r4, [r0]
- mov r1, r8
- adds r2, r4, r1
- adds r2, 0x73
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r1, r4, 0
- adds r1, 0x73
- ldrb r1, [r1]
- strh r1, [r0, 0x36]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r3, r4, 0
- adds r3, 0x74
- ldrb r1, [r3]
- strh r1, [r0, 0x38]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r3]
- strh r1, [r0, 0x3A]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r3, r9
- strh r3, [r0, 0x32]
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r7, 0x3C]
- subs r0, 0x2D
- strh r0, [r1, 0x34]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- cmp r0, 0x1
- bls _08144992
- str r7, [r4, 0x38]
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81448B8
-
- thumb_func_start sub_8144A24
-sub_8144A24: @ 8144A24
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- adds r7, r0, 0
- movs r0, 0
- mov r9, r0
- movs r1, 0x5
- mov r8, r1
- str r0, [sp, 0xC]
- mov r0, sp
- movs r1, 0
- movs r2, 0xA
- bl memset
- bl Random
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0x10]
- ldr r3, _08144B10 @ =gUnknown_0203AB88
- ldr r0, [r3]
- adds r0, 0x7D
- movs r5, 0x1
- strb r5, [r0]
- ldr r2, [r3]
- ldrb r0, [r2, 0x3]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2, 0x3]
- ldr r2, [r3]
- ldrb r1, [r2, 0x3]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x3]
- ldr r0, [r3]
- adds r0, 0x7E
- movs r1, 0xFF
- strb r1, [r0]
- ldr r6, [r3]
- adds r4, r6, 0
- adds r4, 0x88
- movs r1, 0x34
- ldrsh r0, [r7, r1]
- bl __floatsisf
- str r0, [r4]
- adds r1, r6, 0
- adds r1, 0x98
- ldr r0, _08144B14 @ =0x00000000
- str r0, [r1]
- adds r2, r6, 0
- adds r2, 0x8C
- ldr r1, _08144B18 @ =gUnknown_085B6348
- ldrb r0, [r6, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r1, 0x1C
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- ldrb r0, [r6, 0x4]
- lsls r0, 30
- lsrs r0, 30
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 1
- adds r1, 0x21
- ldrb r0, [r6, 0x3]
- lsls r0, 27
- lsrs r0, 27
- subs r5, r0
- lsls r0, r5, 4
- subs r0, r5
- adds r1, r0
- lsls r1, 16
- lsrs r1, 16
- mov r5, r9
- movs r0, 0x34
- ldrsh r2, [r7, r0]
-_08144ACA:
- cmp r1, r2
- bge _08144AD6
- adds r0, r1, 0
- adds r0, 0x5A
- cmp r2, r0
- ble _08144B38
-_08144AD6:
- cmp r5, 0x3
- beq _08144B1C
- adds r0, r1, 0
- adds r0, 0x5A
- lsls r0, 16
- lsrs r1, r0, 16
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _08144ACA
-_08144AEC:
- ldr r0, _08144B10 @ =gUnknown_0203AB88
- ldr r0, [r0]
- ldrb r1, [r0, 0x3]
- movs r0, 0x1F
- ands r0, r1
- cmp r0, 0
- beq _08144B64
- movs r1, 0x2E
- ldrsh r0, [r7, r1]
- cmp r0, 0
- beq _08144B58
- movs r0, 0x98
- lsls r0, 1
- movs r1, 0x3F
- negs r1, r1
- bl PlayCry1
- b _08144B70
- .align 2, 0
-_08144B10:
- .4byte gUnknown_0203AB88
-_08144B14:
- .4byte 0x00000000
-_08144B18:
- .4byte gUnknown_085B6348
-_08144B1C:
- movs r0, 0x1
- strh r0, [r7, 0x2E]
- ldr r0, =gUnknown_0203AB88
- ldr r2, [r0]
- ldrb r1, [r2, 0x3]
- movs r0, 0x20
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x3]
- b _08144AEC
- .pool
-_08144B38:
- lsrs r0, r5, 1
- strh r0, [r7, 0x2E]
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- movs r1, 0x1
- ands r1, r5
- ldrb r2, [r3, 0x3]
- movs r0, 0x20
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x3]
- b _08144AEC
- .pool
-_08144B58:
- movs r0, 0x98
- lsls r0, 1
- movs r1, 0x3F
- bl PlayCry1
- b _08144B70
-_08144B64:
- movs r0, 0x99
- lsls r0, 1
- movs r1, 0x3F
- negs r1, r1
- bl PlayCry1
-_08144B70:
- movs r0, 0x2
- mov r10, r0
- ldr r4, =gUnknown_0203AB88
- ldr r5, [r4]
- adds r0, r5, 0
- adds r0, 0x7F
- ldrb r0, [r0]
- adds r0, 0x2
- movs r1, 0xC
- bl __modsi3
- lsls r0, 24
- lsrs r6, r0, 24
- ldrb r1, [r5, 0x3]
- movs r0, 0x1F
- ands r0, r1
- cmp r0, 0x1
- bne _08144BA8
- ldrb r1, [r5, 0x4]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0x1
- bne _08144BA8
- mov r0, r8
- adds r0, 0x6
- b _08144BAC
- .pool
-_08144BA8:
- mov r0, r8
- add r0, r10
-_08144BAC:
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r5, r10
- cmp r5, r8
- bcs _08144C18
- ldr r1, =gUnknown_085B6154+0xC
- mov r10, r1
-_08144BBC:
- ldr r3, [r4]
- lsls r0, r6, 3
- ldr r1, =gUnknown_085B62E4+0x4
- adds r0, r1
- ldr r1, [r3, 0x8]
- ldr r2, [r0]
- ands r1, r2
- cmp r1, 0
- bne _08144C02
- mov r0, r9
- adds r1, r0, 0x1
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- add r0, sp
- strb r5, [r0]
- ldr r0, [sp, 0xC]
- cmp r0, 0
- bne _08144C02
- ldrb r1, [r3, 0x1A]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r3, 0
- adds r0, 0x1B
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldr r0, [r0]
- ands r2, r0
- cmp r2, 0
- beq _08144C02
- str r5, [sp, 0xC]
-_08144C02:
- adds r0, r6, 0x1
- movs r1, 0xC
- bl __modsi3
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r8
- bcc _08144BBC
-_08144C18:
- ldr r0, [r4]
- ldrb r1, [r0, 0x3]
- lsls r1, 27
- lsrs r1, 27
- adds r1, 0x1
- ldrb r0, [r0, 0x2]
- ands r1, r0
- cmp r1, 0
- beq _08144C48
- ldr r1, [sp, 0xC]
- cmp r1, 0
- beq _08144C48
- movs r0, 0xFF
- ldr r1, [sp, 0x10]
- ands r0, r1
- cmp r0, 0xBF
- bhi _08144C48
- mov r0, sp
- ldrh r0, [r0, 0xC]
- b _08144C54
- .pool
-_08144C48:
- ldr r0, [sp, 0x10]
- mov r1, r9
- bl __modsi3
- add r0, sp
- ldrb r0, [r0]
-_08144C54:
- strh r0, [r7, 0x3C]
- ldr r1, =sub_8144168
- str r1, [r7, 0x1C]
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144A24
-
- thumb_func_start sub_8144C70
-sub_8144C70: @ 8144C70
- push {r4,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x30]
- adds r1, r0, 0x1
- strh r1, [r2, 0x30]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x34
- ldrsh r1, [r2, r3]
- cmp r0, r1
- blt _08144CC0
- ldrh r0, [r2, 0x20]
- subs r0, 0x2
- strh r0, [r2, 0x20]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- negs r1, r1
- cmp r0, r1
- bge _08144CC0
- ldr r4, =gUnknown_0203AB88
- ldr r3, [r4]
- ldrb r1, [r3, 0x3]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _08144CAC
- movs r0, 0x40
- orrs r0, r1
- strb r0, [r3, 0x3]
-_08144CAC:
- adds r0, r2, 0
- bl DestroySprite
- ldr r1, [r4]
- movs r0, 0
- strb r0, [r1, 0x1]
- ldr r1, [r4]
- ldr r0, =gUnknown_085B7B1A
- ldrh r0, [r0]
- strh r0, [r1, 0x34]
-_08144CC0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144C70
-
- thumb_func_start sub_8144CD0
-sub_8144CD0: @ 8144CD0
- push {r4,lr}
- sub sp, 0x18
- adds r4, r0, 0
- ldr r1, =gUnknown_085B7B2E
- mov r0, sp
- movs r2, 0x18
- bl memcpy
- ldrh r0, [r4, 0x30]
- adds r2, r0, 0x1
- strh r2, [r4, 0x30]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x34
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bge _08144D54
- movs r0, 0x1
- ands r2, r0
- cmp r2, 0
- beq _08144D2E
- ldr r3, =gSpriteCoordOffsetY
- movs r0, 0x3C
- ldrsh r2, [r4, r0]
- lsls r2, 1
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- lsls r0, 3
- adds r2, r0
- mov r1, sp
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r3]
- movs r3, 0x3C
- ldrsh r2, [r4, r3]
- adds r1, r2, 0x1
- adds r0, r1, 0
- cmp r1, 0
- bge _08144D26
- adds r0, r2, 0x4
-_08144D26:
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- strh r0, [r4, 0x3C]
-_08144D2E:
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _08144D7E
- .pool
-_08144D54:
- ldr r1, =gSpriteCoordOffsetY
- movs r0, 0
- strh r0, [r1]
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- adds r0, 0x73
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x2C
- ldrb r2, [r0]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- adds r0, r4, 0
- bl DestroySprite
-_08144D7E:
- add sp, 0x18
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144CD0
-
- thumb_func_start sub_8144D94
-sub_8144D94: @ 8144D94
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0x30]
- adds r0, 0x1
- strh r0, [r5, 0x30]
- movs r1, 0x30
- ldrsh r0, [r5, r1]
- bl __floatsisf
- adds r4, r0, 0
- ldr r1, =0x3d1fbe77
- bl __mulsf3
- adds r1, r4, 0
- bl __mulsf3
- bl __fixsfsi
- strh r0, [r5, 0x26]
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- ldr r2, =gUnknown_085B7B1A
- ldrb r0, [r3, 0x1]
- subs r0, 0x1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r3, 0x34]
- ldrb r0, [r3, 0x1]
- cmp r0, 0x12
- bhi _08144DDC
- adds r0, 0x1
- strb r0, [r3, 0x1]
-_08144DDC:
- movs r1, 0x30
- ldrsh r0, [r5, r1]
- cmp r0, 0x3C
- ble _08144E3E
- movs r0, 0
- strh r0, [r5, 0x30]
- ldr r3, =sub_8144C70
- str r3, [r5, 0x1C]
- ldr r2, =gSprites
- movs r0, 0x3A
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r2, 0
- adds r4, 0x1C
- adds r0, r4
- str r3, [r0]
- movs r0, 0x3A
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =0x0000fffe
- strh r1, [r0, 0x30]
- movs r0, 0x38
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- movs r0, 0x38
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, =sub_8144CD0
- str r1, [r0]
- movs r0, 0xD6
- bl m4aSongNumStart
-_08144E3E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144D94
-
- thumb_func_start sub_8144E60
-sub_8144E60: @ 8144E60
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08144EE4
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- ldr r1, [r3, 0x38]
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08144E94
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0x8]
- b _08144EA6
- .pool
-_08144E94:
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0x8]
- adds r0, 0xB4
-_08144EA6:
- cmp r2, r0
- bne _08144F7C
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- movs r0, 0x2B
- bl m4aSongNumStart
- ldr r2, =gUnknown_0203AB88
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- ldr r1, [r2]
- ldr r0, =gUnknown_085B7B1A
- ldrh r0, [r0]
- strh r0, [r1, 0x34]
- b _08144F7C
- .pool
-_08144EE4:
- ldr r5, =gUnknown_0203AB88
- ldr r3, [r5]
- ldr r2, =gUnknown_085B7B1A
- ldrb r0, [r3, 0x1]
- subs r0, 0x1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r3, 0x34]
- ldrb r0, [r3, 0x1]
- cmp r0, 0x12
- bhi _08144F06
- adds r0, 0x1
- strb r0, [r3, 0x1]
-_08144F06:
- ldr r3, [r5]
- ldr r1, [r3, 0x38]
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08144F30
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0xA]
- b _08144F42
- .pool
-_08144F30:
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0xA]
- adds r0, 0xB4
-_08144F42:
- cmp r2, r0
- bne _08144F7C
- ldr r2, =gSprites
- movs r0, 0x36
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r2, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =sub_8144D94
- str r1, [r0]
- movs r0, 0x36
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r0, =SpriteCallbackDummy
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3C]
-_08144F7C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144E60
-
- thumb_func_start sub_8144F94
-sub_8144F94: @ 8144F94
- adds r0, 0x3E
- ldrb r3, [r0]
- lsls r1, r3, 29
- lsrs r1, 31
- movs r2, 0x1
- eors r2, r1
- lsls r2, 2
- movs r1, 0x5
- negs r1, r1
- ands r1, r3
- orrs r1, r2
- strb r1, [r0]
- bx lr
- thumb_func_end sub_8144F94
-
- thumb_func_start sub_8144FB0
-sub_8144FB0: @ 8144FB0
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r2, [r4, 0x22]
- movs r0, 0x22
- ldrsh r1, [r4, r0]
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- ble _08144FC8
- subs r0, r2, 0x1
- strh r0, [r4, 0x22]
- b _0814501C
-_08144FC8:
- ldr r0, =SpriteCallbackDummy
- str r0, [r4, 0x1C]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- subs r2, 0x12
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x5E
- bl m4aSongNumStop
- adds r0, r4, 0
- bl DestroySprite
- ldr r5, =gSprites
- ldr r4, =gUnknown_0203AB88
- ldr r0, [r4]
- adds r0, 0x74
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldr r0, [r4]
- adds r0, 0x74
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
-_0814501C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8144FB0
-
- thumb_func_start sub_8145030
-sub_8145030: @ 8145030
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x30]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- cmp r0, 0
- blt _0814505A
- subs r1, 0x1
- strh r1, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- subs r0, 0x1
- strh r0, [r4, 0x22]
- lsls r1, 16
- cmp r1, 0
- bne _081450C6
- adds r0, r4, 0
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081450C6
- b _08145080
-_0814505A:
- ldrh r1, [r4, 0x34]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- cmp r0, 0
- blt _08145090
- subs r0, r1, 0x1
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r0, 0x3F
- ands r0, r1
- cmp r0, 0
- bne _081450C6
- adds r0, r4, 0
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08145088
-_08145080:
- ldrh r0, [r4, 0x26]
- adds r0, 0x1
- strh r0, [r4, 0x26]
- b _081450C6
-_08145088:
- ldrh r0, [r4, 0x26]
- subs r0, 0x1
- strh r0, [r4, 0x26]
- b _081450C6
-_08145090:
- movs r0, 0x2B
- bl m4aSongNumStart
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- ldrh r1, [r0, 0x2E]
- adds r1, 0x4
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- ldr r0, =sub_8144FB0
- str r0, [r4, 0x1C]
- ldr r2, =gSprites
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x2C
- ldrb r2, [r0]
- movs r1, 0x7F
- ands r1, r2
- strb r1, [r0]
-_081450C6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8145030
-
- thumb_func_start sub_81450D8
-sub_81450D8: @ 81450D8
- push {r4,r5,lr}
- sub sp, 0x14
- adds r4, r0, 0
- ldr r1, =gUnknown_085B7B46
- mov r0, sp
- movs r2, 0x2
- bl memcpy
- add r5, sp, 0x4
- ldr r1, =gUnknown_085B7B48
- adds r0, r5, 0
- movs r2, 0x10
- bl memcpy
- ldrh r0, [r4, 0x30]
- subs r1, r0, 0x1
- strh r1, [r4, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _0814516C
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- add r0, sp
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 1
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _08145208
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- movs r4, 0x74
- subs r4, r0
- lsrs r0, r4, 31
- adds r4, r0
- asrs r4, 1
- negs r4, r4
- ldr r0, =gMPlayInfo_SE1
- ldr r5, =0x0000ffff
- lsls r4, 24
- asrs r4, 24
- adds r1, r5, 0
- adds r2, r4, 0
- bl m4aMPlayPanpotControl
- ldr r0, =gMPlayInfo_SE2
- adds r1, r5, 0
- adds r2, r4, 0
- bl m4aMPlayPanpotControl
- b _08145208
- .pool
-_0814516C:
- lsls r0, r1, 16
- cmp r0, 0
- blt _081451BC
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- movs r2, 0x2E
- ldrsh r0, [r0, r2]
- add r0, sp
- movs r2, 0
- ldrsb r2, [r0, r2]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x7
- subs r0, r1, r0
- lsls r0, 1
- adds r0, r5, r0
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- muls r0, r2
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- subs r1, r0
- lsls r1, 1
- mov r0, sp
- adds r0, 0x5
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r4, 0x22]
- b _08145208
- .pool
-_081451BC:
- movs r0, 0x5E
- bl m4aSongNumStartOrChange
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- movs r2, 0x2E
- ldrsh r0, [r0, r2]
- cmp r0, 0
- bne _081451E0
- movs r0, 0x98
- lsls r0, 1
- movs r1, 0x3F
- bl PlayCry1
- b _081451EC
- .pool
-_081451E0:
- movs r0, 0x98
- lsls r0, 1
- movs r1, 0x3F
- negs r1, r1
- bl PlayCry1
-_081451EC:
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- ldrh r1, [r0, 0x2E]
- adds r1, 0x2
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- movs r0, 0x2D
- strh r0, [r4, 0x30]
- ldr r0, =sub_8145030
- str r0, [r4, 0x1C]
-_08145208:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81450D8
-
- thumb_func_start sub_8145218
-sub_8145218: @ 8145218
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldr r1, =gUnknown_085B7B46
- mov r0, sp
- movs r2, 0x2
- bl memcpy
- ldrh r0, [r4, 0x30]
- subs r1, r0, 0x1
- strh r1, [r4, 0x30]
- lsls r0, 16
- cmp r0, 0
- blt _08145284
- ldr r0, =gUnknown_0203AB88
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- add r0, sp
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 1
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- ldr r1, =gSprites
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- adds r2, 0x3E
- ldrb r3, [r2]
- lsls r0, r3, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- b _08145288
- .pool
-_08145284:
- ldr r0, =sub_8144F94
- str r0, [r4, 0x1C]
-_08145288:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8145218
-
- thumb_func_start sub_8145294
-sub_8145294: @ 8145294
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gUnknown_0203AB88
- ldr r3, [r0]
- ldr r1, [r3, 0x38]
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _081452DC
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0x12]
- adds r0, 0x5A
- cmp r2, r0
- bne _0814533E
- ldr r2, =gSprites
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r3, 0x34
- b _08145306
- .pool
-_081452DC:
- movs r0, 0x34
- ldrsh r2, [r1, r0]
- ldr r1, =gUnknown_085B6348
- ldrb r0, [r3, 0x4]
- lsls r0, 30
- lsrs r0, 25
- adds r0, r1
- ldrh r0, [r0, 0x14]
- movs r1, 0x87
- lsls r1, 1
- adds r0, r1
- cmp r2, r0
- bne _0814533E
- ldr r2, =gSprites
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r3, 0x2E
-_08145306:
- strh r3, [r0, 0x30]
- movs r0, 0x36
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r3, [r0, 0x30]
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, =sub_8145218
- str r1, [r0]
- movs r0, 0x36
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =sub_81450D8
- str r1, [r0]
- movs r0, 0x2B
- bl m4aSongNumStart
-_0814533E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8145294
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/data/battle_frontier_1.s b/data/battle_frontier_1.s
deleted file mode 100644
index b1375e05f..000000000
--- a/data/battle_frontier_1.s
+++ /dev/null
@@ -1,434 +0,0 @@
-#include "constants/flags.h"
-
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gUnknown_0860DEB8:: @ 860DEB8 //struct
- .2byte 0x0025, 0x0000, 0x0108, 0x0208, 0x0308, 0x0103, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x02e1, 0x0000, 0x010c, 0x020c, 0x030c, 0x013e, 0x000c, 0x010c, 0x020c, 0x0000
- .2byte 0x002c, 0x0000, 0x010c, 0x020c, 0x030c, 0x0104, 0x000c, 0x010c, 0x020c, 0x0000
- .2byte 0x0039, 0x0000, 0x0102, 0x0202, 0x0302, 0x0105, 0x0002, 0x0102, 0x0202, 0x0000
- .2byte 0x0040, 0x0000, 0x0101, 0x0201, 0x0301, 0x0106, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x02af, 0x0004, 0x0101, 0x0201, 0x0301, 0x013d, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x02ff, 0x0000, 0x010a, 0x020a, 0x030a, 0x0140, 0x000a, 0x010a, 0x020a, 0x0000
- .2byte 0x005e, 0x0000, 0x0109, 0x0209, 0x0309, 0x0108, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x004e, 0x0000, 0x0106, 0x0206, 0x0306, 0x0107, 0x0006, 0x0106, 0x0206, 0x0000
- .2byte 0x006c, 0x0000, 0x0108, 0x0208, 0x0308, 0x0109, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x0072, 0x0000, 0x0108, 0x0208, 0x0308, 0x010a, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x0090, 0x0000, 0x0108, 0x020a, 0x030a, 0x010e, 0x000a, 0x0108, 0x020a, 0x0000
- .2byte 0x007f, 0x0000, 0x010a, 0x020a, 0x030a, 0x010b, 0x000a, 0x0108, 0x020a, 0x0000
- .2byte 0x0088, 0x0000, 0x0104, 0x0204, 0x0304, 0x010c, 0x0004, 0x0104, 0x0204, 0x0000
- .2byte 0x008f, 0x0000, 0x0107, 0x0207, 0x0307, 0x010d, 0x0007, 0x0107, 0x0207, 0x0000
- .2byte 0x009b, 0x0000, 0x0105, 0x0205, 0x0305, 0x010f, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x00b7, 0x0000, 0x0103, 0x0203, 0x0303, 0x0110, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x02a0, 0x0000, 0x0103, 0x0203, 0x0303, 0x013b, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x00c3, 0x0000, 0x0106, 0x0206, 0x0306, 0x0111, 0x0006, 0x0106, 0x0206, 0x0000
- .2byte 0x00c4, 0x0000, 0x0104, 0x0204, 0x0304, 0x0112, 0x0004, 0x0104, 0x0204, 0x0000
- .2byte 0x00ce, 0x0000, 0x010b, 0x020b, 0x030b, 0x0113, 0x000b, 0x010b, 0x020b, 0x0000
- .2byte 0x00d8, 0x0000, 0x0101, 0x0201, 0x0301, 0x0114, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x02a9, 0x0003, 0x010c, 0x020c, 0x030c, 0x013c, 0x000c, 0x010c, 0x020c, 0x0000
- .2byte 0x00e2, 0x0000, 0x0107, 0x0207, 0x0307, 0x0115, 0x0007, 0x0107, 0x0207, 0x0000
- .2byte 0x00ee, 0x0000, 0x0104, 0x0204, 0x0304, 0x0116, 0x0001, 0x0104, 0x0204, 0x0000
- .2byte 0x00f9, 0x0000, 0x0108, 0x0208, 0x0308, 0x0117, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x00fe, 0x0000, 0x010c, 0x020c, 0x030c, 0x0118, 0x000c, 0x010c, 0x020c, 0x0000
- .2byte 0x0118, 0x0000, 0x0102, 0x0202, 0x0302, 0x011a, 0x0002, 0x0102, 0x0202, 0x0000
- .2byte 0x0111, 0x0000, 0x0101, 0x0201, 0x0301, 0x0119, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x011f, 0x0006, 0x0109, 0x0209, 0x0309, 0x011b, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x012e, 0x0000, 0x010e, 0x020e, 0x030e, 0x011d, 0x000e, 0x010e, 0x020e, 0x0000
- .2byte 0x0125, 0x0000, 0x010b, 0x020b, 0x030b, 0x011c, 0x000b, 0x010b, 0x020b, 0x0000
- .2byte 0x0133, 0x0000, 0x010c, 0x020c, 0x030c, 0x011e, 0x000c, 0x010c, 0x020c, 0x0000
- .2byte 0x0139, 0x0000, 0x010d, 0x020d, 0x030d, 0x011f, 0x000d, 0x010d, 0x020d, 0x0000
- .2byte 0x013e, 0x0000, 0x0101, 0x0201, 0x0301, 0x0120, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x0153, 0x0000, 0x0103, 0x0203, 0x0303, 0x0121, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x0178, 0x0000, 0x0105, 0x0205, 0x0305, 0x0126, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x0171, 0x0000, 0x0109, 0x0209, 0x0309, 0x0125, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x0166, 0x0000, 0x0109, 0x0209, 0x0309, 0x0123, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x016c, 0x0000, 0x0105, 0x0205, 0x0305, 0x0124, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x0182, 0x0000, 0x0109, 0x0209, 0x0309, 0x0128, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x0161, 0x0000, 0x0105, 0x0205, 0x0305, 0x0122, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x0179, 0x0000, 0x0105, 0x0205, 0x0305, 0x0127, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x0188, 0x0000, 0x0104, 0x0204, 0x0304, 0x0129, 0x0004, 0x0104, 0x0204, 0x0000
- .2byte 0x0196, 0x0000, 0x0106, 0x0206, 0x0306, 0x012a, 0x0006, 0x0106, 0x0206, 0x0000
- .2byte 0x01a3, 0x0000, 0x0101, 0x0201, 0x0301, 0x012b, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x01ab, 0x0000, 0x0109, 0x0209, 0x0309, 0x012c, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x01b2, 0x0000, 0x0108, 0x0208, 0x0308, 0x012d, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x01c1, 0x0000, 0x0109, 0x0209, 0x0309, 0x012e, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x01da, 0x0000, 0x0102, 0x0202, 0x0302, 0x012f, 0x0002, 0x0102, 0x0202, 0x0000
- .2byte 0x01e1, 0x0002, 0x0102, 0x0202, 0x0302, 0x0130, 0x0001, 0x0102, 0x0202, 0x0000
- .2byte 0x01ec, 0x0000, 0x0103, 0x0203, 0x0303, 0x0131, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x02e4, 0x0000, 0x0103, 0x0203, 0x0303, 0x013f, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x0200, 0x0000, 0x0107, 0x0207, 0x0307, 0x0132, 0x0007, 0x0107, 0x0207, 0x0000
- .2byte 0x0221, 0x0000, 0x0108, 0x0208, 0x0308, 0x0134, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x021a, 0x0000, 0x0105, 0x0205, 0x0305, 0x0133, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x0009, 0x0000, 0x0108, 0x0208, 0x0308, 0x0102, 0x0008, 0x0108, 0x0208, 0x0000
- .2byte 0x022f, 0x0000, 0x0109, 0x0209, 0x0309, 0x0136, 0x0009, 0x0109, 0x0209, 0x0000
- .2byte 0x0228, 0x0000, 0x0105, 0x0205, 0x0305, 0x0135, 0x0005, 0x0105, 0x0205, 0x0000
- .2byte 0x025c, 0x0000, 0x0102, 0x0202, 0x0302, 0x0137, 0x0002, 0x0102, 0x0202, 0x0000
- .2byte 0x026d, 0x0000, 0x0101, 0x0201, 0x0301, 0x0138, 0x0001, 0x0101, 0x0201, 0x0000
- .2byte 0x0273, 0x0000, 0x0103, 0x0203, 0x0303, 0x0139, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x0001, 0x0000, 0x010f, 0x0203, 0x0303, 0x0101, 0x0003, 0x0103, 0x0203, 0x0000
- .2byte 0x0282, 0x0001, 0x0109, 0x0209, 0x0309, 0x013a, 0x0009, 0x0109, 0x0209, 0x0000
-
- .align 2
-gUnknown_0860E3B8:: @ 860E3B8
- .4byte BattleFrontier_PokeNav_2A971C, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9798, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9813, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A98A8, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9977, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A99FD, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9A78, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9AE8, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9BA7, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9C36, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9CC8, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9D44, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9DD7, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9E70, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2A9EFD, 0x00ff0200
-
- .align 2
-gUnknown_0860E430:: @ 860E430
- .4byte BattleFrontier_PokeNav_2A9FAB, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA028, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA099, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA100, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA188, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA214, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA2A1, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA31B, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA3A8, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA442, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA4C5, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA520, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA5AD, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AA64D, 0x00ffff00
-
- .align 2
-gUnknown_0860E4A0:: @ 860E4A0
- .4byte BattleFrontier_PokeNav_2AA6AF, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA730, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA77A, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA81C, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA88C, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA934, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AA9D3, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAA40, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAAE4, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAB8C, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAC25, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAC9D, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAD41, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AAE00, 0x00ff0300
-
- .align 2
-gUnknown_0860E510:: @ 860E510
- .4byte BattleFrontier_PokeNav_2AAE7F, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AAEF1, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AAF69, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB010, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB076, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB11A, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB1B4, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB23D, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB2E9, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB382, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB410, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB4B0, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB538, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB5E4, 0x00ff0100
-
- .align 2
-gUnknown_0860E580:: @ 860E580
- .4byte BattleFrontier_PokeNav_2AB670, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB6CD, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB73C, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB808, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB8B7, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AB95D, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABA03, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABA9F, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABB62, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABC26, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABCE9, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABDA2, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABE5E, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2ABF36, 0x00ff0100
-
- .align 2
-gUnknown_0860E5F0:: @ 860E5F0
- .4byte BattleFrontier_PokeNav_2AC009, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AC0BD, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC18C, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC228, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC30C, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC3B6, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC446, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC5C7, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC682, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC755, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC82C, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AC914, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ACA59, 0x00ff0200
- .4byte BattleFrontier_PokeNav_2ACB02, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ACC3F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ACD2F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ACE1E, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ACF32, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2ACFBE, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD0AC, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD194, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD1DF, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD2A8, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD34F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD44E, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD53A, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD642, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AD801, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AD92E, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2ADA8F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ADB9B, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ADC92, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ADE08, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2ADF07, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE0D9, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE1FD, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE327, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE3DA, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE489, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE5CD, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE698, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE704, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AE78F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE859, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AE8E6, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AE998, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AEA8F, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AEB77, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AEBFA, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AECC1, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AED52, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AEE35, 0x00ff0300
- .4byte BattleFrontier_PokeNav_2AEEF4, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AEFDA, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF0E7, 0x00ff0100
- .4byte BattleFrontier_PokeNav_2AF1B8, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF2C4, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF371, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF480, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF671, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF7D8, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AF8F7, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AFA39, 0x00ffff00
- .4byte BattleFrontier_PokeNav_2AFB26, 0x00ffff00
-
- .align 2
-gUnknown_0860E7F0:: @860E7F0
- .4byte BattleFrontier_PokeNav_2AFC07, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFC78, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFCFF, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFDA7, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFE3D, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFECA, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFF64, 0x00050400
- .4byte BattleFrontier_PokeNav_2AFFF0, 0x00050400
- .4byte BattleFrontier_PokeNav_2B00B5, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0129, 0x00050400
- .4byte BattleFrontier_PokeNav_2B01A5, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0232, 0x00050400
- .4byte BattleFrontier_PokeNav_2B02D9, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0366, 0x00050400
-
- .align 2
-gUnknown_0860E860:: @860E860
- .4byte BattleFrontier_PokeNav_2B03E6, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0457, 0x00050400
- .4byte BattleFrontier_PokeNav_2B04DE, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0586, 0x00050400
- .4byte BattleFrontier_PokeNav_2B061C, 0x00050400
- .4byte BattleFrontier_PokeNav_2B06A3, 0x00050400
- .4byte BattleFrontier_PokeNav_2B073B, 0x00050400
- .4byte BattleFrontier_PokeNav_2B07C7, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0894, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0908, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0984, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0A11, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0AB8, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0B45, 0x00050400
-
- .align 2
-gUnknown_0860E8D0:: @860E8D0
- .4byte BattleFrontier_PokeNav_2B0BC5, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0C4A, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0CC7, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0D4A, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0DC8, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0E35, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0ED1, 0x00050400
- .4byte BattleFrontier_PokeNav_2B0F72, 0x00050400
- .4byte BattleFrontier_PokeNav_2B102A, 0x00050400
- .4byte BattleFrontier_PokeNav_2B10A7, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1121, 0x00050400
- .4byte BattleFrontier_PokeNav_2B11D3, 0x00050400
- .4byte BattleFrontier_PokeNav_2B124D, 0x00050400
- .4byte BattleFrontier_PokeNav_2B12D0, 0x00050400
-
- .align 2
-gUnknown_0860E940:: @860E940
- .4byte BattleFrontier_PokeNav_2B1347, 0x00050400
- .4byte BattleFrontier_PokeNav_2B13B1, 0x00050400
- .4byte BattleFrontier_PokeNav_2B142B, 0x00050400
- .4byte BattleFrontier_PokeNav_2B14B4, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1525, 0x00050400
- .4byte BattleFrontier_PokeNav_2B158E, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1622, 0x00050400
- .4byte BattleFrontier_PokeNav_2B169D, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1775, 0x00050400
- .4byte BattleFrontier_PokeNav_2B17F8, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1877, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1946, 0x00050400
- .4byte BattleFrontier_PokeNav_2B19C7, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1A4C, 0x00050400
-
- .align 2
-gUnknown_0860E9B0:: @860E9B0
- .4byte BattleFrontier_PokeNav_2B1ACA, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1B50, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1BE4, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1C6A, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1CCF, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1D38, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1DCD, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1E4B, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1F24, 0x00050400
- .4byte BattleFrontier_PokeNav_2B1FA8, 0x00050400
- .4byte BattleFrontier_PokeNav_2B2022, 0x00050400
- .4byte BattleFrontier_PokeNav_2B20F3, 0x00050400
- .4byte BattleFrontier_PokeNav_2B2175, 0x00050400
- .4byte BattleFrontier_PokeNav_2B21FC, 0x00050400
-
- .align 2
-gUnknown_0860EA20:: @ 860EA20
- .4byte gUnknown_0860E3B8
- .4byte gUnknown_0860E430
- .4byte gUnknown_0860E4A0
-
- .align 2
-gUnknown_0860EA2C:: @ 860EA2C
- .4byte gUnknown_0860E510
- .4byte gUnknown_0860E580
-
- .align 2
-gUnknown_0860EA34:: @ 860EA34
- .4byte gUnknown_0860E5F0
- .4byte gUnknown_0860E7F0
- .4byte gUnknown_0860E860
- .4byte gUnknown_0860E8D0
- .4byte gUnknown_0860E940
- .4byte gUnknown_0860E9B0
-
- .align 2
-gUnknown_0860EA4C:: @ 860EA4C
- .incbin "graphics/unknown/unknown_60EA4C.gbapal"
-
- .align 2
-gUnknown_0860EA6C:: @ 860EA6C
- .incbin "graphics/interface/menu_border.4bpp"
-
- .align 2
-gUnknown_0860EB6C:: @ 860EB6C
- .incbin "graphics/pokenav/icon.gbapal"
-
- .align 2
-gUnknown_0860EB8C:: @ 860EB8C
- .incbin "graphics/pokenav/icon.4bpp.lz"
-
- .align 2
-gText_PokenavCallEllipsis:: @ 860EF70
- .string "………………\p$"
-
- .align 2
-gUnknown_0860EF78:: @ 860EF78
- .4byte sub_819612C
- .4byte sub_81961F0
- .4byte sub_8196274
- .4byte sub_81962B0
- .4byte sub_81962D8
- .4byte sub_8196330
- .4byte sub_8196390
- .4byte sub_81963F0
-
- .align 2
-gUnknown_0860EF98:: @ 860EF98
- window_template 0x00, 0x01, 0x0f, 0x1c, 0x04, 0x0f, 0x0200
-
- .align 2
-gUnknown_0860EFA0:: @ 860EFA0
- .4byte gStringVar1
- .4byte gStringVar2
- .4byte gStringVar3
-
- .align 2
-gUnknown_0860EFAC:: @ 860EFAC
- .4byte sub_8196A44
- .4byte sub_8196A9C
- .4byte sub_8196B98
- .4byte sub_8196C70
- .4byte sub_8196CF4
- .4byte sub_8196D14
-
- .align 2
-gUnknown_0860EFC4:: @ 860EFC4
- .4byte 0x00000282, gText_Kira
- .4byte 0x000001e1, gText_Amy
- .4byte 0x000002a9, gText_John
- .4byte 0x000002af, gText_Roy
- .4byte 0x00000033, gText_Gabby
- .4byte 0x0000011f, gText_Anna
-
- .align 2
-gUnknown_0860EFF4:: @ 860EFF4
- .4byte gText_BattleTower2
- .4byte gText_BattleDome
- .4byte gText_BattlePalace
- .4byte gText_BattleArena
- .4byte gText_BattlePike
- .4byte gText_BattleFactory
- .4byte gText_BattlePyramid
-
- .align 2
-gUnknown_0860F010:: @ 860F010
- .2byte FLAG_BADGE01_GET
- .2byte FLAG_BADGE02_GET
- .2byte FLAG_BADGE03_GET
- .2byte FLAG_BADGE04_GET
- .2byte FLAG_BADGE05_GET
- .2byte FLAG_BADGE06_GET
- .2byte FLAG_BADGE07_GET
- .2byte FLAG_BADGE08_GET
-
-gUnknown_0860F020:: @ 860F020
- .4byte gBirchDexRatingText_LessThan10
- .4byte gBirchDexRatingText_LessThan20
- .4byte gBirchDexRatingText_LessThan30
- .4byte gBirchDexRatingText_LessThan40
- .4byte gBirchDexRatingText_LessThan50
- .4byte gBirchDexRatingText_LessThan60
- .4byte gBirchDexRatingText_LessThan70
- .4byte gBirchDexRatingText_LessThan80
- .4byte gBirchDexRatingText_LessThan90
- .4byte gBirchDexRatingText_LessThan100
- .4byte gBirchDexRatingText_LessThan110
- .4byte gBirchDexRatingText_LessThan120
- .4byte gBirchDexRatingText_LessThan130
- .4byte gBirchDexRatingText_LessThan140
- .4byte gBirchDexRatingText_LessThan150
- .4byte gBirchDexRatingText_LessThan160
- .4byte gBirchDexRatingText_LessThan170
- .4byte gBirchDexRatingText_LessThan180
- .4byte gBirchDexRatingText_LessThan190
- .4byte gBirchDexRatingText_LessThan200
- .4byte gBirchDexRatingText_DexCompleted
diff --git a/data/event_scripts.s b/data/event_scripts.s
index 5d847719e..34a8484e5 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -452,7 +452,7 @@ EventScript_SecretBasePC:: @ 823B4BB
EventScript_23B4D3:: @ 823B4D3
message Text_27681A
waitmessage
- goto_if_set FLAG_0x10C, EventScript_23B4EF
+ goto_if_set FLAG_DECORATION_16, EventScript_23B4EF
goto EventScript_23B531
end
@@ -1050,7 +1050,7 @@ EventScript_2715DE:: @ 82715DE
setflag FLAG_HIDE_LILYCOVE_HARBOR_EON_TICKET_TAKER
setflag FLAG_HIDE_SOUTHERN_ISLAND_EON_STONE
setflag FLAG_HIDE_SOUTHERN_ISLAND_UNCHOSEN_EON_DUO_MON
- setflag FLAG_0x393
+ setflag FLAG_UNKNOWN_0x393
setflag FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE
setflag FLAG_HIDE_MAUVILLE_CITY_WATTSON
setflag FLAG_HIDE_MAUVILLE_CITY_SCOTT
@@ -1107,7 +1107,7 @@ EventScript_2715DE:: @ 82715DE
EverGrandeCity_HallOfFame_EventScript_2717C1:: @ 82717C1
special sub_81AFDD0
- setflag FLAG_0x87F
+ setflag FLAG_IS_CHAMPION
call EverGrandeCity_HallOfFame_EventScript_271829
compare VAR_0x40CC, 0
call_if_eq EverGrandeCity_HallOfFame_EventScript_271839
@@ -1125,8 +1125,8 @@ EverGrandeCity_HallOfFame_EventScript_2717C1:: @ 82717C1
clearflag FLAG_HIDE_SAFARI_ZONE_SOUTH_EAST_EXPANSION
setflag FLAG_HIDE_LILYCOVE_CITY_RIVAL
special sub_813BA60
- call_if_unset FLAG_0x123, EverGrandeCity_HallOfFame_EventScript_271843
- call_if_unset FLAG_0x12A, EverGrandeCity_HallOfFame_EventScript_27183F
+ call_if_unset FLAG_RECEIVED_SS_TICKET, EverGrandeCity_HallOfFame_EventScript_271843
+ call_if_unset FLAG_RECEIVED_BELDUM, EverGrandeCity_HallOfFame_EventScript_27183F
setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM
setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM
compare VAR_0x40D3, 0
@@ -1134,11 +1134,11 @@ EverGrandeCity_HallOfFame_EventScript_2717C1:: @ 82717C1
return
EverGrandeCity_HallOfFame_EventScript_271829:: @ 8271829
- clearflag FLAG_0x1C7
- clearflag FLAG_0x1C8
- clearflag FLAG_0x1AC
- clearflag FLAG_0x1DD
- clearflag FLAG_0x1DC
+ clearflag FLAG_DEFEATED_MEW
+ clearflag FLAG_DEFEATED_LATIAS_OR_LATIOS
+ clearflag FLAG_DEFEATED_DEOXYS
+ clearflag FLAG_DEFEATED_LUGIA
+ clearflag FLAG_DEFEATED_HO_OH
return
EverGrandeCity_HallOfFame_EventScript_271839:: @ 8271839
@@ -1206,10 +1206,10 @@ EverGrandeCity_HallOfFame_EventScript_2718B3:: @ 82718B3
end
EverGrandeCity_HallOfFame_EventScript_2718CC:: @ 82718CC
- clearflag FLAG_0x4FB
- clearflag FLAG_0x4FC
- clearflag FLAG_0x4FD
- clearflag FLAG_0x4FE
+ clearflag FLAG_DEFEATED_ELITE_4_SYDNEY
+ clearflag FLAG_DEFEATED_ELITE_4_PHOEBE
+ clearflag FLAG_DEFEATED_ELITE_4_GLACIA
+ clearflag FLAG_DEFEATED_ELITE_4_DRAKE
setvar VAR_0x409C, 0
return
@@ -1222,8 +1222,8 @@ PetalburgCity_PokemonCenter_1F_EventScript_2718DE:: @ 82718DE
RustboroCity_PokemonCenter_1F_EventScript_2718DE:: @ 82718DE
SlateportCity_PokemonCenter_1F_EventScript_2718DE:: @ 82718DE
VerdanturfTown_PokemonCenter_1F_EventScript_2718DE:: @ 82718DE
- goto_if_unset FLAG_0x0BC, OldaleTown_PokemonCenter_1F_EventScript_27374E
- goto_if_set FLAG_0x4F4, OldaleTown_PokemonCenter_1F_EventScript_27374E
+ goto_if_unset FLAG_RECEIVED_POKENAV, OldaleTown_PokemonCenter_1F_EventScript_27374E
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, OldaleTown_PokemonCenter_1F_EventScript_27374E
goto_if_unset FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT, OldaleTown_PokemonCenter_1F_EventScript_27190C
goto_if_unset FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN, OldaleTown_PokemonCenter_1F_EventScript_271912
goto_if_unset FLAG_HIDE_ROUTE_108_MR_BRINEY, OldaleTown_PokemonCenter_1F_EventScript_271918
@@ -1284,7 +1284,7 @@ OldaleTown_PokemonCenter_1F_EventScript_27195A:: @ 827195A
call_if_eq OldaleTown_PokemonCenter_1F_EventScript_27198D
waitmessage
call OldaleTown_PokemonCenter_1F_EventScript_271993
- goto_if_unset FLAG_0x111, OldaleTown_PokemonCenter_1F_EventScript_271A43
+ goto_if_unset FLAG_POKERUS_EXPLAINED, OldaleTown_PokemonCenter_1F_EventScript_271A43
goto OldaleTown_PokemonCenter_1F_EventScript_2719B1
end
@@ -1337,9 +1337,9 @@ OldaleTown_PokemonCenter_1F_EventScript_271A03:: @ 8271A03
return
OldaleTown_PokemonCenter_1F_EventScript_271A19:: @ 8271A19
- goto_if_set FLAG_0x880, OldaleTown_PokemonCenter_1F_EventScript_2719E2
+ goto_if_set FLAG_NURSE_UNION_ROOM_REMINDER, OldaleTown_PokemonCenter_1F_EventScript_2719E2
msgbox gUnknown_08272798, MSGBOX_DEFAULT
- setflag FLAG_0x880
+ setflag FLAG_NURSE_UNION_ROOM_REMINDER
message OldaleTown_PokemonCenter_1F_Text_278A48
waitmessage
applymovement VAR_0x800B, OldaleTown_PokemonCenter_1F_Movement_271AD0
@@ -1357,12 +1357,12 @@ OldaleTown_PokemonCenter_1F_EventScript_271A43:: @ 8271A43
OldaleTown_PokemonCenter_1F_EventScript_271A5F:: @ 8271A5F
message gUnknown_08272F07
- setflag FLAG_0x111
+ setflag FLAG_POKERUS_EXPLAINED
return
OldaleTown_PokemonCenter_1F_EventScript_271A68:: @ 8271A68
- goto_if_set FLAG_0x159, OldaleTown_PokemonCenter_1F_EventScript_271AAC
- setflag FLAG_0x159
+ goto_if_set FLAG_OLDALE_NURSE_MENTIONS_GOLD_CARD, OldaleTown_PokemonCenter_1F_EventScript_271AAC
+ setflag FLAG_OLDALE_NURSE_MENTIONS_GOLD_CARD
msgbox gUnknown_082727F5, MSGBOX_DEFAULT
playse SE_PIN
applymovement VAR_0x800B, OldaleTown_PokemonCenter_1F_Movement_272598
@@ -1745,7 +1745,7 @@ LavaridgeTown_Gym_1F_EventScript_271E84:: @ 8271E84
MauvilleCity_Gym_EventScript_271E84:: @ 8271E84
RustboroCity_Gym_EventScript_271E84:: @ 8271E84
clearflag FLAG_HIDE_PETALBURG_GYM_GREETER
- setflag FLAG_0x128
+ setflag FLAG_PETALBURG_MART_EXPANDED_ITEMS
return
DewfordTown_EventScript_271E8B:: @ 8271E8B
@@ -2135,7 +2135,7 @@ Route103_EventScript_272141:: @ 8272141
lock
faceplayer
goto_if_unset FLAG_HAS_MATCH_CALL, Route101_EventScript_272155
- goto_if_unset FLAG_0x119, Route101_EventScript_1FA2D2
+ goto_if_unset FLAG_ENABLE_PROF_BIRCH_MATCH_CALL, Route101_EventScript_1FA2D2
Route101_EventScript_272155:: @ 8272155
msgbox gUnknown_082A5C9C, MSGBOX_YESNO
@@ -3197,7 +3197,7 @@ EventScript_2736D9:: @ 82736D9
special sub_80B05B4
waitstate
fadescreen 1
- call_if_set FLAG_0x06C, EventScript_2736F4
+ call_if_set FLAG_FLANNERY_GIVES_BADGE_INFO, EventScript_2736F4
special sp0C8_whiteout_maybe
waitstate
end
@@ -4288,8 +4288,8 @@ SlateportCity_OceanicMuseum_1F_EventScript_28C883:: @ 828C883
compare VAR_RESULT, 1
goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_28C939
copyvar VAR_0x8009, VAR_0x8006
- goto_if_set FLAG_0x069, SlateportCity_OceanicMuseum_1F_EventScript_28C8C8
- setflag FLAG_0x069
+ goto_if_set FLAG_OCEANIC_MUSEUM_MET_REPORTER, SlateportCity_OceanicMuseum_1F_EventScript_28C8C8
+ setflag FLAG_OCEANIC_MUSEUM_MET_REPORTER
msgbox SlateportCity_OceanicMuseum_1F_Text_2811A0, MSGBOX_YESNO
compare VAR_RESULT, 1
goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_28C8E7
@@ -4695,7 +4695,7 @@ MauvilleCity_GameCorner_EventScript_2A5ADF:: @ 82A5ADF
end
MauvilleCity_GameCorner_EventScript_2A5B0D:: @ 82A5B0D
- special sub_8142BC8
+ special PlayRoulette
waitstate
end
@@ -5630,2960 +5630,7 @@ LilycoveCity_PokemonCenter_1F_Text_2A9703: @ 82A9703
LilycoveCity_PokemonCenter_1F_Text_2A970E: @ 82A970E
.string "{STR_VAR_1}: Umyaaaan!$"
-BattleFrontier_PokeNav_2A971C:: @ 82A971C
- .string "Hi! {PLAYER}{STRING 5}, hello!\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I saw this {STR_VAR_2} a while back\n"
- .string "but I couldn't catch it.\p"
- .string "It was so close, too!\n"
- .string "Well, see you again!$"
-
-BattleFrontier_PokeNav_2A9798:: @ 82A9798
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's {STR_VAR_1}.\p"
- .string "I tried to catch a nice {STR_VAR_2}\n"
- .string "a little while ago.\p"
- .string "But, it got away.\n"
- .string "I was sure disappointed!\p"
- .string "Okay, bye!$"
-
-BattleFrontier_PokeNav_2A9813:: @ 82A9813
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I just took a shot at catching\n"
- .string "this {STR_VAR_2}, but it took off.\p"
- .string "I came oh so close, too!\p"
- .string "It spoiled my day…\n"
- .string "All right, see you!$"
-
-BattleFrontier_PokeNav_2A98A8:: @ 82A98A8
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "You know the POKéMON {STR_VAR_2}?\n"
- .string "I came close to getting one.\p"
- .string "It was just a while back.\n"
- .string "I thought I had it but it escaped.\p"
- .string "If I see it again, I'll get it for\n"
- .string "sure, though.\p"
- .string "Okay, catch you later.$"
-
-BattleFrontier_PokeNav_2A9977:: @ 82A9977
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\l"
- .string "Catching any POKéMON lately?\p"
- .string "A little while ago I came close to\n"
- .string "nabbing one, but it got loose.\p"
- .string "Right, take care!$"
-
-BattleFrontier_PokeNav_2A99FD:: @ 82A99FD
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\l"
- .string "Caught any POKéMON lately?\p"
- .string "I nearly nabbed one the other day.\n"
- .string "But it evaded me somehow.\p"
- .string "You take care.$"
-
-BattleFrontier_PokeNav_2A9A78:: @ 82A9A78
- .string "…Uh, {PLAYER}{STRING 5}?\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "Oh, wait! Wait!\n"
- .string "I can catch this {STR_VAR_2}…\p"
- .string "Aaarrrgh! It bolted loose!\n"
- .string "That wasn't just close!$"
-
-BattleFrontier_PokeNav_2A9AE8:: @ 82A9AE8
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\p"
- .string "Have you had success catching\n"
- .string "POKéMON lately?\p"
- .string "I came very close a little while\n"
- .string "ago, but my target got free.\p"
- .string "I need to try harder!\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2A9BA7:: @ 82A9BA7
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "So? Are you getting more POKéMON\n"
- .string "together?\p"
- .string "I'm having a rotten time of it!\n"
- .string "They all get away from me!\p"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2A9C36:: @ 82A9C36
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Listen, I came within a whisker of\n"
- .string "catching this {STR_VAR_2}…\p"
- .string "But, it gave me the slip…\p"
- .string "I need to try harder.\n"
- .string "See you around.$"
-
-BattleFrontier_PokeNav_2A9CC8:: @ 82A9CC8
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "How are things with you?\p"
- .string "I tried to catch a wild {STR_VAR_2}\n"
- .string "earlier, but it managed to flee.\p"
- .string "I feel defeated…$"
-
-BattleFrontier_PokeNav_2A9D44:: @ 82A9D44
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you still catching POKéMON?\p"
- .string "I've been trying to catch them\n"
- .string "myself, but it's not so easy.\p"
- .string "The way of POKéMON is deep!$"
-
-BattleFrontier_PokeNav_2A9DD7:: @ 82A9DD7
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "Have you been catching POKéMON?\p"
- .string "I've been trying to catch them\n"
- .string "myself, but with little success.\p"
- .string "The way of POKéMON is deep!$"
-
-BattleFrontier_PokeNav_2A9E70:: @ 82A9E70
- .string "Oh, hi, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Just now, I tried to catch a cute\n"
- .string "{STR_VAR_2}.\p"
- .string "It got away, though!\n"
- .string "Oh, you bet I was disappointed!\p"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2A9EFD:: @ 82A9EFD
- .string "Hey, {PLAYER}!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I've been thinking about trying\n"
- .string "to catch me some POKéMON.\p"
- .string "But I can't seem to find any.\n"
- .string "It's a real puzzler for me!\p"
- .string "I'm at my wit's end!\n"
- .string "See you around!$"
-
-BattleFrontier_PokeNav_2A9FAB:: @ 82A9FAB
- .string "Hi! {PLAYER}{STRING 5}, hello!\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I tried battling another TRAINER,\n"
- .string "but I lost.\p"
- .string "It was really disappointing.\n"
- .string "Well, see you again!$"
-
-BattleFrontier_PokeNav_2AA028:: @ 82AA028
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's {STR_VAR_1}.\p"
- .string "I challenged someone else after\n"
- .string "we battled.\p"
- .string "I came close, but I ended up\n"
- .string "losing. Oh, well!$"
-
-BattleFrontier_PokeNav_2AA099:: @ 82AA099
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I just got cleaned in a battle.\p"
- .string "I guess I need to raise my team\n"
- .string "some more!$"
-
-BattleFrontier_PokeNav_2AA100:: @ 82AA100
- .string "Hey, {PLAYER}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "I tried another battle yesterday,\n"
- .string "but I couldn't pull out the win.\p"
- .string "My team needs more raising.\n"
- .string "Okay, catch you later.$"
-
-BattleFrontier_PokeNav_2AA188:: @ 82AA188
- .string "Hiya, {PLAYER}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "How are things with you?\p"
- .string "I've been battling on,\n"
- .string "but I haven't won very often.\p"
- .string "I can't get it together.\n"
- .string "Right, take care!$"
-
-BattleFrontier_PokeNav_2AA214:: @ 82AA214
- .string "Hey, {PLAYER}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "How's it going for you?\p"
- .string "I've been battling hard lately,\n"
- .string "but to little success.\p"
- .string "I can't get into the groove.\n"
- .string "You take care.$"
-
-BattleFrontier_PokeNav_2AA2A1:: @ 82AA2A1
- .string "{STR_VAR_1} here.\n"
- .string "How's it going lately?\p"
- .string "I lost a battle yesterday,\n"
- .string "and it's filled my thoughts.\p"
- .string "I have to devise a plan…\n"
- .string "See you.$"
-
-BattleFrontier_PokeNav_2AA31B:: @ 82AA31B
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\p"
- .string "How are your POKéMON doing?\n"
- .string "I lost a match the other day.\p"
- .string "I need to try harder!\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2AA3A8:: @ 82AA3A8
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "Listen, listen, you have to hear\n"
- .string "this!\p"
- .string "I had a POKéMON battle earlier,\n"
- .string "but I lost at the last second.\p"
- .string "Oh, it burns me up!$"
-
-BattleFrontier_PokeNav_2AA442:: @ 82AA442
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "A little earlier, I was in a battle.\n"
- .string "I lost, though.\p"
- .string "I need to raise my POKéMON more.\n"
- .string "See you around.$"
-
-BattleFrontier_PokeNav_2AA4C5:: @ 82AA4C5
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "How are your POKéMON?\p"
- .string "I just lost yet another battle.\p"
- .string "Well, see you!$"
-
-BattleFrontier_PokeNav_2AA520:: @ 82AA520
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you still battling hard?\p"
- .string "As for me, I lost recently, so I've\n"
- .string "been training my team all over.\p"
- .string "Let's meet again.$"
-
-BattleFrontier_PokeNav_2AA5AD:: @ 82AA5AD
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I hope you've been keeping well.\p"
- .string "I was in a battle just a little\n"
- .string "while before this.\p"
- .string "{PLAYER}{STRING 5}, try to be active like me.\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2AA64D:: @ 82AA64D
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Are you doing good?\p"
- .string "You should go home every so often,\n"
- .string "though.\p"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2AA6AF:: @ 82AA6AF
- .string "Hi! {PLAYER}{STRING 5}, hello!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I battled another TRAINER earlier.\n"
- .string "I won! I won!\p"
- .string "My {STR_VAR_2} really worked hard\n"
- .string "for me. This is so great!$"
-
-BattleFrontier_PokeNav_2AA730:: @ 82AA730
- .string "Hello, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}!\p"
- .string "I had a battle yesterday and\n"
- .string "I won! It's fantastic!$"
-
-BattleFrontier_PokeNav_2AA77A:: @ 82AA77A
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}!\l"
- .string "How's your battling?\p"
- .string "Me, I had a battle the other day,\n"
- .string "and my {STR_VAR_2} came up huge!\p"
- .string "The next time I battle you,\n"
- .string "{PLAYER}, it won't be me losing!$"
-
-BattleFrontier_PokeNav_2AA81C:: @ 82AA81C
- .string "Hey, {PLAYER}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "I had a match earlier.\n"
- .string "I managed to win, but it was close.\p"
- .string "My {STR_VAR_2} put on one\n"
- .string "inspired showing.$"
-
-BattleFrontier_PokeNav_2AA88C:: @ 82AA88C
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "How are things with you?\n"
- .string "Battling much?\p"
- .string "I just won a while back!\n"
- .string "My {STR_VAR_2} was brilliant!\p"
- .string "You wait. I'm going to beat you\n"
- .string "next time! Right, take care!$"
-
-BattleFrontier_PokeNav_2AA934:: @ 82AA934
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "How's it going for you?\p"
- .string "I've been riding a hot streak.\n"
- .string "Why, I just won a battle.\p"
- .string "When we have our next battle,\n"
- .string "I'm sure not going to lose!$"
-
-BattleFrontier_PokeNav_2AA9D3:: @ 82AA9D3
- .string "{PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here.\p"
- .string "My {STR_VAR_2} is a force!\n"
- .string "It won me another battle just now!\p"
- .string "I can't wait to have a rematch\n"
- .string "with you.$"
-
-BattleFrontier_PokeNav_2AAA40:: @ 82AAA40
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\p"
- .string "I hope you've been well.\n"
- .string "I wanted to tell you I just won.\p"
- .string "My {STR_VAR_2} worked especially\n"
- .string "hard to get the win.\p"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2AAAE4:: @ 82AAAE4
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "How are your POKéMON holding up?\n"
- .string "Mine just won a battle!\p"
- .string "My {STR_VAR_2} was spectacular,\n"
- .string "I must say!\p"
- .string "I wish I could've shown you!\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2AAB8C:: @ 82AAB8C
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "How has life been treating you?\p"
- .string "My POKéMON appear to be charged\n"
- .string "with energy.\p"
- .string "I just won a battle with them.\n"
- .string "See you around.$"
-
-BattleFrontier_PokeNav_2AAC25:: @ 82AAC25
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Been in any battles lately?\n"
- .string "I just won another one today!\p"
- .string "I'm on a roll! Gahahaha!\n"
- .string "Well, see you!$"
-
-BattleFrontier_PokeNav_2AAC9D:: @ 82AAC9D
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I trust you've been well?\n"
- .string "I'm still bursting with life!\p"
- .string "Why, just now, I won another match.\n"
- .string "I'm not stepping aside to you\l"
- .string "youngsters yet!$"
-
-BattleFrontier_PokeNav_2AAD41:: @ 82AAD41
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I hope you've been keeping well.\n"
- .string "I still have a bounce in my step!\p"
- .string "Why, I just won a battle yet again.\n"
- .string "Oh, I won't lose to young people\l"
- .string "quite yet!\p"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2AAE00:: @ 82AAE00
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I was in a battle recently, and my\n"
- .string "{STR_VAR_2} was exceptional!\p"
- .string "I wish you could have seen it,\n"
- .string "{PLAYER}{STRING 5}. Bye-bye!$"
-
-BattleFrontier_PokeNav_2AAE7F:: @ 82AAE7F
- .string "Hi! {PLAYER}, hello!\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Huh? Wait, you're near\n"
- .string "{STR_VAR_2}?\p"
- .string "Oh, wow, we have to battle, then!\n"
- .string "I'll be waiting! See you!$"
-
-BattleFrontier_PokeNav_2AAEF1:: @ 82AAEF1
- .string "Hello, {PLAYER}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "Oh? You happen to be around\n"
- .string "{STR_VAR_2} right now?\p"
- .string "Would you like to battle now?\n"
- .string "I'll wait for you! See you!$"
-
-BattleFrontier_PokeNav_2AAF69:: @ 82AAF69
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "Oh, hey, are you near\n"
- .string "{STR_VAR_2} right now?\p"
- .string "How would you like to battle with\n"
- .string "me right now?\p"
- .string "I'm not losing again!\n"
- .string "I'll be waiting! Catch you soon!$"
-
-BattleFrontier_PokeNav_2AB010:: @ 82AB010
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "Whereabouts are you now?\n"
- .string "Huh? {STR_VAR_2}?\p"
- .string "Want to battle now?\n"
- .string "I'll wait for you. See you!$"
-
-BattleFrontier_PokeNav_2AB076:: @ 82AB076
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\l"
- .string "How are things with you?\p"
- .string "You're where now?\n"
- .string "{STR_VAR_2}?\p"
- .string "Well, how about we have a quick\n"
- .string "rematch right away?\p"
- .string "I'll keep an eye out for you.\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2AB11A:: @ 82AB11A
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\l"
- .string "How are your POKéMON keeping?\p"
- .string "Oh, is that right? You're around\n"
- .string "{STR_VAR_2}?\p"
- .string "Well, then, we'd better have\n"
- .string "a rematch.\p"
- .string "I can wait, sure.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AB1B4:: @ 82AB1B4
- .string "…Er, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here…\p"
- .string "Oh, you happen to be around\n"
- .string "{STR_VAR_2}?\p"
- .string "Then, let's battle.\n"
- .string "Right away, I mean.\p"
- .string "I'll show you my POKéMON.\n"
- .string "I'll wait for you.$"
-
-BattleFrontier_PokeNav_2AB23D:: @ 82AB23D
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\p"
- .string "I hope you're doing well.\n"
- .string "Oh, you're near {STR_VAR_2}.\p"
- .string "Would you like to have a battle\n"
- .string "with me, then?\p"
- .string "I'll wait for you.\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2AB2E9:: @ 82AB2E9
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "Are you keeping up?\n"
- .string "Oh, you're near {STR_VAR_2}?\p"
- .string "Oh, well, then don't you think we\n"
- .string "should battle?\p"
- .string "Don't keep me waiting too long!$"
-
-BattleFrontier_PokeNav_2AB382:: @ 82AB382
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "How are things with you?\n"
- .string "Oh, you're near {STR_VAR_2}.\p"
- .string "We should have a battle now, then.\p"
- .string "I'm ready and waiting.\n"
- .string "Be quick!$"
-
-BattleFrontier_PokeNav_2AB410:: @ 82AB410
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Ah, so where you are now is\n"
- .string "{STR_VAR_2}?\p"
- .string "Well, then, we just have to have\n"
- .string "a battle, don't you think?\p"
- .string "I'll wait around for you!\n"
- .string "See you real quick!$"
-
-BattleFrontier_PokeNav_2AB4B0:: @ 82AB4B0
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Where might you be now?\p"
- .string "{STR_VAR_2}?\n"
- .string "That's quite close by!\p"
- .string "What do you say we have a battle\n"
- .string "now?\p"
- .string "I can wait.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AB538:: @ 82AB538
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I hope you've been keeping well.\n"
- .string "Oh, you're near {STR_VAR_2}?\p"
- .string "Since that's not very far away,\n"
- .string "come see me for a battle.\p"
- .string "I'll wait for you.\n"
- .string "Bye for now.$"
-
-BattleFrontier_PokeNav_2AB5E4:: @ 82AB5E4
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You're what? …{STR_VAR_2}?\n"
- .string "That's very close.\p"
- .string "Don't you think we ought to have\n"
- .string "a battle?\p"
- .string "I'll be looking for you!\n"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2AB670:: @ 82AB670
- .string "Hi! {PLAYER}, hello!\n"
- .string "This is {STR_VAR_1}.\p"
- .string "Want to have a battle with me?\p"
- .string "I'll be waiting for you around\n"
- .string "{STR_VAR_2}!$"
-
-BattleFrontier_PokeNav_2AB6CD:: @ 82AB6CD
- .string "Hello, {PLAYER}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "Would you like to have a battle\n"
- .string "with me again?\p"
- .string "You can find me around\n"
- .string "{STR_VAR_2}. I'll be waiting!$"
-
-BattleFrontier_PokeNav_2AB73C:: @ 82AB73C
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "My POKéMON have grown a lot\n"
- .string "tougher since last time.\p"
- .string "I want to see how strong they've\n"
- .string "become with your POKéMON, {PLAYER}.\p"
- .string "So, let's have a battle!\p"
- .string "I'll be waiting for you around\n"
- .string "{STR_VAR_2}.$"
-
-BattleFrontier_PokeNav_2AB808:: @ 82AB808
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\l"
- .string "How are things with you?\p"
- .string "My POKéMON have grown pretty\n"
- .string "tough lately.\p"
- .string "Hey, how would you like to have\n"
- .string "another battle with me?\p"
- .string "Let's meet up around\n"
- .string "{STR_VAR_2}, okay?$"
-
-BattleFrontier_PokeNav_2AB8B7:: @ 82AB8B7
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "My POKéMON are growing up in\n"
- .string "decent ways.\p"
- .string "I'd really like to have another\n"
- .string "battle with you.\p"
- .string "I'll keep an eye out for you around\n"
- .string "{STR_VAR_2}. See you soon!$"
-
-BattleFrontier_PokeNav_2AB95D:: @ 82AB95D
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\l"
- .string "I hope you're on top of things.\p"
- .string "I was thinking I'd like another\n"
- .string "battle with you. What do you say?\p"
- .string "If you feel like a battle,\n"
- .string "come to {STR_VAR_2}.\p"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2ABA03:: @ 82ABA03
- .string "…Er, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here…\l"
- .string "So? Are your POKéMON growing?\p"
- .string "Mine sure got stronger.\n"
- .string "I'd like to show you.\p"
- .string "I'll be around {STR_VAR_2}.\n"
- .string "Come see me for a match.\p"
- .string "See you around.$"
-
-BattleFrontier_PokeNav_2ABA9F:: @ 82ABA9F
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\p"
- .string "I hope you're doing well.\n"
- .string "My POKéMON are very frisky.\p"
- .string "If you're ever in the area, please\n"
- .string "give me a rematch.\p"
- .string "I'll be around {STR_VAR_2}.\n"
- .string "Until then, good-bye!$"
-
-BattleFrontier_PokeNav_2ABB62:: @ 82ABB62
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "How are your POKéMON doing?\p"
- .string "My POKéMON keep getting better.\n"
- .string "I'd like to show you, {PLAYER}{STRING 5}.\p"
- .string "I'm around {STR_VAR_2} now,\n"
- .string "so let's battle if you're close by.\p"
- .string "Hope I see you soon!$"
-
-BattleFrontier_PokeNav_2ABC26:: @ 82ABC26
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\l"
- .string "So, how are things with you?\p"
- .string "My POKéMON have grown much\n"
- .string "stronger than before.\p"
- .string "I'd love another battle with you,\n"
- .string "{PLAYER}{STRING 5}.\p"
- .string "I'll be around {STR_VAR_2}.\n"
- .string "Come see me if you're close.$"
-
-BattleFrontier_PokeNav_2ABCE9:: @ 82ABCE9
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "Where might you be now?\p"
- .string "My POKéMON are full of life.\n"
- .string "They appear to be looking forward\l"
- .string "to seeing your POKéMON, {PLAYER}{STRING 5}.\p"
- .string "I'm around {STR_VAR_2} now.\n"
- .string "I hope you'll seek us out.$"
-
-BattleFrontier_PokeNav_2ABDA2:: @ 82ABDA2
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I should tell you, my POKéMON have\n"
- .string "grown to be quite robust lately.\p"
- .string "I would like to see them in a battle\n"
- .string "with you, {PLAYER}{STRING 5}.\p"
- .string "We'll be around {STR_VAR_2}.\n"
- .string "Come see us anytime!$"
-
-BattleFrontier_PokeNav_2ABE5E:: @ 82ABE5E
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "Are your POKéMON keeping well?\p"
- .string "My POKéMON have been so healthy,\n"
- .string "they don't look capable of losing!\p"
- .string "I would surely love to have another\n"
- .string "battle with you.\p"
- .string "If you're near {STR_VAR_2},\n"
- .string "do come see us.$"
-
-BattleFrontier_PokeNav_2ABF36:: @ 82ABF36
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "Keeping well, I hope.\p"
- .string "Oh, yes! My POKéMON are\n"
- .string "much stronger than before.\p"
- .string "Don't you think we ought to have\n"
- .string "a battle, {PLAYER}{STRING 5}?\p"
- .string "We'll be waiting for you around\n"
- .string "{STR_VAR_2}.\p"
- .string "Come see us anytime, okay?$"
-
-BattleFrontier_PokeNav_2AC009:: @ 82AC009
- .string "It's me, the mountain-loving\n"
- .string "{STR_VAR_1}!\p"
- .string "Well, since we met, have you grown\n"
- .string "to appreciate the mountains more?\p"
- .string "I rarely see you in the mountains…\p"
- .string "Next time, we'll meet somewhere\n"
- .string "around {STR_VAR_2}.$"
-
-BattleFrontier_PokeNav_2AC0BD:: @ 82AC0BD
- .string "This is {STR_VAR_1}.\n"
- .string "Hello.\p"
- .string "I was just telling a new TRAINER\n"
- .string "about you.\p"
- .string "I told her about a strong TRAINER\n"
- .string "who raises POKéMON with care.\p"
- .string "I hope you'll become a TRAINER\n"
- .string "that everyone will admire.\p"
- .string "I hope we meet again!$"
-
-BattleFrontier_PokeNav_2AC18C:: @ 82AC18C
- .string "Hello! It's {STR_VAR_1}.\p"
- .string "I love where I am now.\n"
- .string "It's pleasant with sweet aromas!\p"
- .string "I think someone planted BERRIES,\n"
- .string "and they burst into bloom.\p"
- .string "See you again sometime!$"
-
-BattleFrontier_PokeNav_2AC228:: @ 82AC228
- .string "Hello! Thirty years of exploration,\n"
- .string "{STR_VAR_1} at your service!\p"
- .string "It seems that you're energetically\n"
- .string "traveling here and there.\p"
- .string "Have you discovered any new ruins?\n"
- .string "Please tell if you have!\p"
- .string "Now, if you'll excuse me,\n"
- .string "I have ruins to explore.$"
-
-BattleFrontier_PokeNav_2AC30C:: @ 82AC30C
- .string "It's {STR_VAR_1}!\p"
- .string "Know what I'm doing today?\n"
- .string "Looking at waves from the beach!\p"
- .string "Sigh… The waves are all sparkly.\n"
- .string "The sea is the prettiest from here.\l"
- .string "I'm getting hungry, so bye-bye!$"
-
-BattleFrontier_PokeNav_2AC3B6:: @ 82AC3B6
- .string "Munch-chew…\n"
- .string "Oh, hi, it's {STR_VAR_1}.\l"
- .string "I love eating on the beach.\p"
- .string "My POKéMON and I have been doing\n"
- .string "great. We're fully fueled!\l"
- .string "I'm going for a swim. Bye!$"
-
-BattleFrontier_PokeNav_2AC446:: @ 82AC446
- .string "Hello, this is {STR_VAR_1}…\p"
- .string "I've grown a little jaded with this\n"
- .string "whole COOLTRAINER thing…\p"
- .string "Everyone thinks I'm a perfect\n"
- .string "TRAINER, and that makes me try to\l"
- .string "live up to that expectation.\p"
- .string "But I guess that goes with being\n"
- .string "a COOLTRAINER.\p"
- .string "I'll just have to buckle down…\n"
- .string "and grin and bear it.\p"
- .string "You're the only person that I could\n"
- .string "confide in like this.\p"
- .string "But when I see you next,\n"
- .string "don't worry, I won't whine!$"
-
-BattleFrontier_PokeNav_2AC5C7:: @ 82AC5C7
- .string "Yahoo, it's {STR_VAR_1}!\n"
- .string "How do you do?\p"
- .string "I've been raising my POKéMON with\n"
- .string "you as the target.\p"
- .string "I don't intend to lose when we\n"
- .string "battle again.\p"
- .string "Isn't it great to have TRAINER\n"
- .string "friends? Let's meet again!$"
-
-BattleFrontier_PokeNav_2AC682:: @ 82AC682
- .string "It's {STR_VAR_1}…\n"
- .string "Right now, behind you…\l"
- .string "Wasn't there something…?\p"
- .string "The power of the POKéMON that\n"
- .string "sleep here at MT. PYRE…\p"
- .string "It's telling me about you…\p"
- .string "You should walk away quickly and\n"
- .string "never once look back…\p"
- .string "Giggle…\n"
- .string "Farewell…$"
-
-BattleFrontier_PokeNav_2AC755:: @ 82AC755
- .string "This is {STR_VAR_1}.\n"
- .string "How do you do?\p"
- .string "Isn't it convenient that we can\n"
- .string "chat like this at a distance?\p"
- .string "Before, if I wanted to speak with\n"
- .string "anyone, I had to have my father\l"
- .string "drive me…\p"
- .string "I should be going now.\n"
- .string "I'm glad we had this chat.$"
-
-BattleFrontier_PokeNav_2AC82C:: @ 82AC82C
- .string "It's {STR_VAR_1}!\n"
- .string "Will you listen to this?\p"
- .string "I like the SAFARI ZONE a lot,\n"
- .string "but whenever I go, I get lost!\p"
- .string "All that tall grass!\n"
- .string "And it's much too spread out!\p"
- .string "I feel better getting that off\n"
- .string "my chest!\p"
- .string "I'm off to the SAFARI ZONE again!\n"
- .string "Catch you!$"
-
-BattleFrontier_PokeNav_2AC914:: @ 82AC914
- .string "Hello, {STR_VAR_1} here.\n"
- .string "Yes, correct, I am rich, yes.\p"
- .string "I should tell you, my wealth has\n"
- .string "grown since we last met.\p"
- .string "What's more, my POKéMON have also\n"
- .string "grown stronger.\p"
- .string "I can't shake the feeling that\n"
- .string "this world exists for me!\p"
- .string "Oh, no need to say a word!\n"
- .string "Everyone knows it's true!\p"
- .string "Oh, you must excuse me, I have this\n"
- .string "formal dinner to attend.$"
-
-BattleFrontier_PokeNav_2ACA59:: @ 82ACA59
- .string "Ufufufufu…\n"
- .string "It's me, {STR_VAR_1}…\p"
- .string "Can you guess what I'm seeing?\n"
- .string "A pair of {STR_VAR_2} in a battle.\p"
- .string "Maybe I'll try catching the winner…\n"
- .string "Ufufufufufu…\p"
- .string "I… I'm kind of busy now.\n"
- .string "I have to go.$"
-
-BattleFrontier_PokeNav_2ACB02:: @ 82ACB02
- .string "Oh, it's {STR_VAR_1}!\p"
- .string "I was just thinking I'm getting\n"
- .string "bored of the ABANDONED SHIP.\p"
- .string "But since I'm already here,\n"
- .string "and I want to beat you once,\l"
- .string "I'll be sticking around a bit more.\p"
- .string "If you feel compelled, why don't\n"
- .string "you come see me?\p"
- .string "I think today will be the day that\n"
- .string "I finally challenge the man next\l"
- .string "door to a match.\p"
- .string "Be seeing you!$"
-
-BattleFrontier_PokeNav_2ACC3F:: @ 82ACC3F
- .string "I'm {STR_VAR_1}!\n"
- .string "The man of the sea!\p"
- .string "You know what I think?\p"
- .string "The TRAINERS out at sea are\n"
- .string "the toughest of the tough!\p"
- .string "You should learn from me and train\n"
- .string "in the sea…\p"
- .string "Whoops, giant surf rising!\p"
- .string "It's a great training opportunity!\n"
- .string "Sorry, but I have to go!$"
-
-BattleFrontier_PokeNav_2ACD2F:: @ 82ACD2F
- .string "It's {STR_VAR_1}! Listen, I've been\n"
- .string "teaching karate to my POKéMON.\p"
- .string "But now they're better than me!\n"
- .string "I've done nothing but lose to them!\p"
- .string "But even though I may lose to\n"
- .string "POKéMON, I won't lose to another\l"
- .string "TRAINER, no sir!\p"
- .string "We have to battle again!\n"
- .string "Ugwaah!$"
-
-BattleFrontier_PokeNav_2ACE1E:: @ 82ACE1E
- .string "It's me, {STR_VAR_1}.\n"
- .string "How're your travels unwinding?\p"
- .string "…Whoa, is that right?\n"
- .string "Sounds awfully stimulating!\p"
- .string "I think I could write a song about\n"
- .string "one of your episodes.\p"
- .string "…Oh, hey, I'm feeling it.\n"
- .string "I hear the riffs in my head.\p"
- .string "I'd better get this tune properly\n"
- .string "written, so I've got to fly! Later!$"
-
-BattleFrontier_PokeNav_2ACF32:: @ 82ACF32
- .string "This is {STR_VAR_1}…\n"
- .string "Hear my new song.\p"
- .string "Lalala, {STR_VAR_2}, {STR_VAR_2}!\n"
- .string "Why are you that {STR_VAR_2}?\l"
- .string "Why can't I be you, {STR_VAR_2}?\l"
- .string "Lala, {STR_VAR_2} and {STR_VAR_1},\l"
- .string "{STR_VAR_1} and {STR_VAR_2}…\p"
- .string "Repeat chorus, fade…$"
-
-BattleFrontier_PokeNav_2ACFBE:: @ 82ACFBE
- .string "I'm {STR_VAR_1}, you know,\n"
- .string "the camping expert!\p"
- .string "When we battled, I couldn't help\n"
- .string "but lose to you.\p"
- .string "After all, my expertise is in\n"
- .string "camping.\p"
- .string "But win or lose, I like to battle\n"
- .string "when I'm camping.\p"
- .string "Battle with us again, okay?\n"
- .string "Oh, and let's go camping, too!$"
-
-BattleFrontier_PokeNav_2AD0AC:: @ 82AD0AC
- .string "It's me, me, {STR_VAR_1}!\p"
- .string "I'd like to climb other mountains\n"
- .string "than this one, to be honest.\p"
- .string "But I'm not sure if there'd be any\n"
- .string "ladies like on MT. CHIMNEY.\p"
- .string "If you know any other mountain\n"
- .string "with ladies around, let me know!\p"
- .string "Ehehehe, see you around!$"
-
-BattleFrontier_PokeNav_2AD194:: @ 82AD194
- .string "… … … … … …\n"
- .string "… … … … … …\l"
- .string "It's {STR_VAR_1}…\p"
- .string "… … … … … …\n"
- .string "… … … … … …\l"
- .string "That's all today…$"
-
-BattleFrontier_PokeNav_2AD1DF:: @ 82AD1DF
- .string "This is {STR_VAR_1}. Today, I had\n"
- .string "this feeling I would chat with you.\p"
- .string "My desire to defeat you builds\n"
- .string "by day and by night.\p"
- .string "You have a rival like that, yes?\n"
- .string "I wish it were me…\p"
- .string "I'm glad you heard me out.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AD2A8:: @ 82AD2A8
- .string "It's {STR_VAR_1}.\p"
- .string "When there's a strong TRAINER\n"
- .string "nearby, I can sometimes sense that\l"
- .string "somehow.\p"
- .string "Did you pass close by, {PLAYER}{STRING 5}?\n"
- .string "Maybe it was you.\p"
- .string "I'll be waiting for your visit.\n"
- .string "Bye!$"
-
-BattleFrontier_PokeNav_2AD34F:: @ 82AD34F
- .string "Hello, this is {STR_VAR_1}.\n"
- .string "You sound well, {PLAYER}{STRING 5}.\p"
- .string "I've traveled around the world,\n"
- .string "but I must say I've taken a great\l"
- .string "shine to this region.\p"
- .string "I plan to stay here a while.\n"
- .string "Perhaps we can meet again?\p"
- .string "I've not forgotten your dazzling\n"
- .string "techniques.\p"
- .string "I do hope for a rematch.$"
-
-BattleFrontier_PokeNav_2AD44E:: @ 82AD44E
- .string "Snivel… It's… {STR_VAR_1}…\n"
- .string "…Sob…\p"
- .string "ROXANNE chewed me out in class\n"
- .string "today.\p"
- .string "But I don't dislike her or anything.\p"
- .string "ROXANNE tells me exactly what\n"
- .string "I did wrong so I can learn from it.\p"
- .string "You bet I'll be going to\n"
- .string "the TRAINER'S SCHOOL tomorrow!\p"
- .string "See you later!$"
-
-BattleFrontier_PokeNav_2AD53A:: @ 82AD53A
- .string "It's {STR_VAR_1}!\p"
- .string "ROXANNE let me battle with her\n"
- .string "yesterday.\p"
- .string "The results…\n"
- .string "Terrible, like you needed to ask.\p"
- .string "But I was delighted that ROXANNE\n"
- .string "would even let me challenge her!\p"
- .string "You wouldn't believe how much\n"
- .string "more I admire her!\p"
- .string "I'm going to really focus and work!\n"
- .string "I'd better go!$"
-
-BattleFrontier_PokeNav_2AD642:: @ 82AD642
- .string "Hi, it's ANNA! I'm with my junior\n"
- .string "partner MEG again today.\p"
- .string "I really love caring for MEG and\n"
- .string "POKéMON. They're so cute!\p"
- .string "I wish I could look after them\n"
- .string "as if they were my siblings!\p"
- .string "Oh, hi, MEG!\n"
- .string "Did you get the buns?\p"
- .string "Huh? No, no, I'm not treating you\n"
- .string "like my personal slave!\p"
- .string "You lost the match, so you have\n"
- .string "to go buy the bread as punishment!\p"
- .string "I wouldn't treat you like a slave,\n"
- .string "MEG! You're too special to me!\p"
- .string "I have to go now.\n"
- .string "It's time for our snack!$"
-
-BattleFrontier_PokeNav_2AD801:: @ 82AD801
- .string "I love POKéMON!\n"
- .string "It's {STR_VAR_1} from the FAN CLUB!\p"
- .string "You have to hear this!\n"
- .string "My sweet POKéMON…\p"
- .string "Snort! Wahaha!\n"
- .string "I can't say any more! It's a secret!\l"
- .string "It's just too cute for words!\p"
- .string "Oh, my sweet {STR_VAR_2} is begging\n"
- .string "for a {POKEBLOCK}!\p"
- .string "It's the picture of cuteness!\p"
- .string "Sorry, but I can't talk now!\n"
- .string "You'll have to hear this next time!$"
-
-BattleFrontier_PokeNav_2AD92E:: @ 82AD92E
- .string "Ohoho!\p"
- .string "This is {STR_VAR_1}! I can't wait to\n"
- .string "tell you about my darling POKéMON!\p"
- .string "Please, you must listen to this.\n"
- .string "It's about my darling {STR_VAR_2}.\p"
- .string "Whenever anyone picks it up,\n"
- .string "it leaps straight into my arms!\p"
- .string "Oh… Oh… Could there be anything\n"
- .string "more blissful?\p"
- .string "Oh, it feels so heavenly!\p"
- .string "I'm so glad I could share some of\n"
- .string "my happiness with you.\p"
- .string "Well, I must be going.\n"
- .string "Bye, now!$"
-
-BattleFrontier_PokeNav_2ADA8F:: @ 82ADA8F
- .string "I am… {STR_VAR_1}.\n"
- .string "People call me an EXPERT.\p"
- .string "But there is one thing I know.\n"
- .string "I could not be an EXPERT on my own\l"
- .string "power.\p"
- .string "Only with the help of POKéMON can\n"
- .string "a TRAINER become an EXPERT.\p"
- .string "Humph! I believe I may have said\n"
- .string "something deep and profound!\p"
- .string "I shall leave you in good spirits!$"
-
-BattleFrontier_PokeNav_2ADB9B:: @ 82ADB9B
- .string "It's {STR_VAR_1}.\n"
- .string "I'm glad to chat with you!\p"
- .string "I am feeling alive and refreshed\n"
- .string "soaking in this hot-spring tub.\p"
- .string "I've been battling young TRAINERS\n"
- .string "since we met, but you're still\l"
- .string "the best of the lot.\p"
- .string "I imagine you'll become an EXPERT\n"
- .string "in your old age! Ohohoho…$"
-
-BattleFrontier_PokeNav_2ADC92:: @ 82ADC92
- .string "Yay! This is {STR_VAR_1}!\n"
- .string "What's up?\p"
- .string "I might be imagining this, but when\n"
- .string "I win battles, my shorts seem to\l"
- .string "feel, like, better. Materially.\p"
- .string "What do I mean by that?\n"
- .string "It's kind of hard to explain, but…\l"
- .string "How would I say this now…\l"
- .string "My shorts feel silkier!\p"
- .string "And when I battled you, {PLAYER}{STRING 5},\n"
- .string "my shorts felt icky and coarse.\p"
- .string "… … … … … …\n"
- .string "You didn't really believe that?\l"
- .string "Ehehehe, that's all! Bye now!$"
-
-BattleFrontier_PokeNav_2ADE08:: @ 82ADE08
- .string "Ahoy!\n"
- .string "{STR_VAR_1} here!\p"
- .string "As always, I'm fishing with wild\n"
- .string "abandon!\p"
- .string "Are there other places I can fish\n"
- .string "than the sea and rivers?\p"
- .string "I get these powerful urges to\n"
- .string "fish just about anywhere!\p"
- .string "Oh, gosh, darn it!\n"
- .string "My line's tangled up!\p"
- .string "Gotta go!\n"
- .string "Find me some new fishing spots!$"
-
-BattleFrontier_PokeNav_2ADF07:: @ 82ADF07
- .string "Hey, there! It's {STR_VAR_1}.\n"
- .string "Are you taking it casually?\p"
- .string "Ever since I was a kid, you know,\n"
- .string "I've always been placid, huh?\p"
- .string "I never was much for getting all\n"
- .string "stressed or rushing things.\p"
- .string "But wouldn't you know it,\n"
- .string "I'm now a TRIATHLETE.\p"
- .string "You just can't tell where life will\n"
- .string "take you, if you get my drift.\p"
- .string "You're a TRAINER now, but who\n"
- .string "knows what the future holds, huh?\p"
- .string "Imagine yourself as a teacher,\n"
- .string "or maybe an artist. Cool, huh?\p"
- .string "But, hey, be cool. Take it casual.\n"
- .string "See you around.$"
-
-BattleFrontier_PokeNav_2AE0D9:: @ 82AE0D9
- .string "This is {STR_VAR_1}!\n"
- .string "I'm cycling right now.\p"
- .string "I love swimming and running,\n"
- .string "but cycling is my first love!\p"
- .string "It makes my whole body feel as if\n"
- .string "I'm one with the wind.\p"
- .string "It exhilarates me as if I were\n"
- .string "flying!\p"
- .string "Okay! Today, I'm going to set a new\n"
- .string "CYCLING ROAD record!\p"
- .string "You should make the challenge, too!\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AE1FD:: @ 82AE1FD
- .string "Yo, this is {STR_VAR_1}! I'm smack\n"
- .string "in the middle of a triathlon!\p"
- .string "But, hey, I've always got time to\n"
- .string "shoot the breeze!\p"
- .string "Working out with POKéMON feels\n"
- .string "mighty good!\p"
- .string "Without exchanging words, we synch\n"
- .string "as if we shared a heart.\p"
- .string "It's inspiring!\p"
- .string "Gasp… Chatting while running…\n"
- .string "I'm getting run down…\l"
- .string "Gasp… Have…to…go…$"
-
-BattleFrontier_PokeNav_2AE327:: @ 82AE327
- .string "Hi, it's {STR_VAR_1}.\n"
- .string "If you want to improve endurance,\l"
- .string "high-altitude training is it!\p"
- .string "Try running on a mountaintop.\n"
- .string "You'll be gasping in no time!\p"
- .string "I'm getting oxygen starved, too!\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AE3DA:: @ 82AE3DA
- .string "Oh, it's {STR_VAR_1}, hello.\p"
- .string "I've been swimming a lot but I still\n"
- .string "can't seem to reach EVERGRANDE.\p"
- .string "Maybe I'm just going in circles.\p"
- .string "No, no, that can't be possible.\n"
- .string "Wahahaha.\l"
- .string "Take care!$"
-
-BattleFrontier_PokeNav_2AE489:: @ 82AE489
- .string "Hey, it's {STR_VAR_1}…\n"
- .string "Whoops!\p"
- .string "Splash!\p"
- .string "Blug-blug-blug-blug…\p"
- .string "Sploosh!\p"
- .string "Whiff-whiff! Whiff-whiff!\p"
- .string "Hey! Sorry about that!\n"
- .string "I just put on some suntan oil.\p"
- .string "So my POKéNAV went whoopsy\n"
- .string "out of my hand into the water!\p"
- .string "But, boy, DEVON's POKéNAV is built\n"
- .string "tough. It survived that dunking!\p"
- .string "Anyways, I'm busy sunbathing,\n"
- .string "so let's chat another time.$"
-
-BattleFrontier_PokeNav_2AE5CD:: @ 82AE5CD
- .string "Hello, this is {STR_VAR_1}.\p"
- .string "Out of the three triathlon events,\n"
- .string "I like swimming best.\p"
- .string "But if I stay in the sea too long,\n"
- .string "won't I get all prune-like?\p"
- .string "Ooh, triathlon is such a grueling\n"
- .string "test of human endurance! Bye!$"
-
-BattleFrontier_PokeNav_2AE698:: @ 82AE698
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "How are your POKéMON doing?\p"
- .string "My DRAGON POKéMON appear to be\n"
- .string "in peak form. Bye for now.$"
-
-BattleFrontier_PokeNav_2AE704:: @ 82AE704
- .string "{STR_VAR_1} here.\p"
- .string "My {STR_VAR_2} has grown even more\n"
- .string "tough than that last time.\p"
- .string "I'm not going to lose again to you.\n"
- .string "You wait till next time!\p"
- .string "See you around!$"
-
-BattleFrontier_PokeNav_2AE78F:: @ 82AE78F
- .string "It is {STR_VAR_1} here.\p"
- .string "I have continued with my studies\n"
- .string "in the art of concealment.\p"
- .string "But I have been too successful.\n"
- .string "No one has been able to find me.\l"
- .string "My success makes me lonely…\p"
- .string "Like smoke I disappear!\n"
- .string "Farewell!$"
-
-BattleFrontier_PokeNav_2AE859:: @ 82AE859
- .string "This is {STR_VAR_1}.\n"
- .string "I kept up my training since we met.\p"
- .string "My {STR_VAR_2} is getting pretty\n"
- .string "tough.\p"
- .string "Training on a beach is effective,\n"
- .string "just as I thought. Bye now!$"
-
-BattleFrontier_PokeNav_2AE8E6:: @ 82AE8E6
- .string "How do you do?\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I wonder when this yucky volcanic\n"
- .string "ash will stop falling?\p"
- .string "If it gets too deep, it will cover\n"
- .string "up the pattern on my parasol…\p"
- .string "Let's promise to meet again!$"
-
-BattleFrontier_PokeNav_2AE998:: @ 82AE998
- .string "Hi, {STR_VAR_1} here.\p"
- .string "Did you know that it's easier to\n"
- .string "float in the sea than a pool?\p"
- .string "Just by lying still, your body will\n"
- .string "float on its own.\p"
- .string "But if you float for too long,\n"
- .string "watch that you don't get carried\l"
- .string "off too far out.\p"
- .string "…Where am I, anyway?\n"
- .string "I'd better go!$"
-
-BattleFrontier_PokeNav_2AEA8F:: @ 82AEA8F
- .string "Oh, {PLAYER}{STRING 5}, hello!\n"
- .string "This is {STR_VAR_1}.\l"
- .string "I'm up in the mountains now.\p"
- .string "But the ground is too bumpy.\n"
- .string "I can't pitch my tent here…\p"
- .string "Oh, I had a brilliant idea!\p"
- .string "Maybe I can get my POKéMON to tamp\n"
- .string "the ground flat here!\p"
- .string "I'm going to try that!\n"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2AEB77:: @ 82AEB77
- .string "Oh, hi, hi, this is {STR_VAR_1}!\p"
- .string "I'm raising POKéMON with LIV!\n"
- .string "We're trying very hard!\p"
- .string "If we try harder, can we become\n"
- .string "number one? Bye-bye!$"
-
-BattleFrontier_PokeNav_2AEBFA:: @ 82AEBFA
- .string "{STR_VAR_1} here!\p"
- .string "I'm a SAILOR, but I'm not on a boat\n"
- .string "now.\p"
- .string "It makes me wonder--what should\n"
- .string "a SAILOR on land be called?\p"
- .string "That's what I've been thinking\n"
- .string "while staring out across the waves.\p"
- .string "All right, next time!$"
-
-BattleFrontier_PokeNav_2AECC1:: @ 82AECC1
- .string "It's {STR_VAR_1}.\n"
- .string "So? Get any more POKéMON?\p"
- .string "If you catch a new POKéMON,\n"
- .string "you have to come show me.\p"
- .string "I won't whine for it, honest.\n"
- .string "I'll be waiting. See you.$"
-
-BattleFrontier_PokeNav_2AED52:: @ 82AED52
- .string "This is {STR_VAR_1}.\p"
- .string "Are you raising your POKéMON\n"
- .string "in the optimal way?\p"
- .string "The air is clean where I am.\n"
- .string "It's the perfect environment for\l"
- .string "raising POKéMON.\p"
- .string "If you're going to focus on raising\n"
- .string "POKéMON, you should come out to\l"
- .string "{STR_VAR_2}. Take care now.$"
-
-BattleFrontier_PokeNav_2AEE35:: @ 82AEE35
- .string "Hi, this is {STR_VAR_1}.\p"
- .string "I gave a {POKEBLOCK} to my {STR_VAR_2}.\n"
- .string "It seemed to enjoy it very much.\p"
- .string "It looks like POKéMON have their\n"
- .string "likes and dislikes with {POKEBLOCK}S.\p"
- .string "I find that quite fascinating.\n"
- .string "Please do take care.$"
-
-BattleFrontier_PokeNav_2AEEF4:: @ 82AEEF4
- .string "{STR_VAR_1} here.\p"
- .string "If you cooperate with POKéMON,\n"
- .string "one can be comfortable in the wild.\p"
- .string "Everyone should realize that and\n"
- .string "cooperate with POKéMON more.\p"
- .string "That would be ideal.\n"
- .string "I really think so.\p"
- .string "I think you're on the right track!\n"
- .string "Catch you later!$"
-
-BattleFrontier_PokeNav_2AEFDA:: @ 82AEFDA
- .string "Hi, it's {STR_VAR_1}. You know,\n"
- .string "the TRAINER who's always prepared!\p"
- .string "{PLAYER}{STRING 5}, do you have enough items?\n"
- .string "Are your POKéMON fit for action?\p"
- .string "Keeping everything perfect around\n"
- .string "you all the time is the secret to\l"
- .string "keeping your journey going.\p"
- .string "I'd better go check my own\n"
- .string "supplies! Be vigilant!$"
-
-BattleFrontier_PokeNav_2AF0E7:: @ 82AF0E7
- .string "It's {STR_VAR_1}!\n"
- .string "It's {STR_VAR_1}!\p"
- .string "{STR_VAR_2} is a very busy\n"
- .string "thoroughfare, so I get challenged\l"
- .string "by all kinds of TRAINERS every day.\p"
- .string "Today, I won five battles and lost\n"
- .string "only three!\p"
- .string "How did you do today?\n"
- .string "Tell me about it next time, okay?$"
-
-BattleFrontier_PokeNav_2AF1B8:: @ 82AF1B8
- .string "It's me, {STR_VAR_1}.\p"
- .string "I'm popular because I have lots\n"
- .string "of BUG POKéMON, right?\p"
- .string "Well, I took a bunch of my fave\n"
- .string "bugs to school today.\p"
- .string "This girl I like started crying!\n"
- .string "Go ahead and laugh if you want.\p"
- .string "I have to try teaching her what\n"
- .string "makes BUG POKéMON so appealing.\p"
- .string "Snivel…\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AF2C4:: @ 82AF2C4
- .string "Hah! Hah! Hah! Hah!\p"
- .string "Hi! It's {STR_VAR_1}! Hah! Hah!\p"
- .string "Trying to chat…\n"
- .string "While climbing…\l"
- .string "Is harsh exercise… Hah! Hah!\p"
- .string "Urgh! Oof…\n"
- .string "It's steeper now…\l"
- .string "We'll chat…another time…\l"
- .string "Hah! Hah! Hah!$"
-
-BattleFrontier_PokeNav_2AF371:: @ 82AF371
- .string "Oh, hi!\p"
- .string "I'm still searching for treasures\n"
- .string "with KIRA!\p"
- .string "Maybe there isn't any treasure\n"
- .string "here at all…\p"
- .string "But the important thing is for me\n"
- .string "to search alongside KIRA.\p"
- .string "Oh, hey, KIRA!\n"
- .string "Wh-why are you angry?\p"
- .string "I'm not ignoring you, honey!\n"
- .string "You're my one and only!\p"
- .string "…{PLAYER}, I have to go, bye!$"
-
-BattleFrontier_PokeNav_2AF480:: @ 82AF480
- .string "This is {STR_VAR_1}!\p"
- .string "I went to DEWFORD's GYM again\n"
- .string "for training.\p"
- .string "BRAWLY, the GYM LEADER, seems\n"
- .string "to be tougher now.\p"
- .string "Something about being toughened\n"
- .string "by the wild waves…\p"
- .string "But he's still as cool as ever.\n"
- .string "The ladies adore him!\l"
- .string "It makes me envious, frankly.\p"
- .string "I wonder… Is his friend BRUNO\n"
- .string "the same way as BRAWLY?\p"
- .string "You know, all sweaty or smelly,\n"
- .string "and prone to calling people\l"
- .string "“big wave,” that sort of thing.\p"
- .string "But, hey, this jealousy thing isn't\n"
- .string "very seemly, is it?\p"
- .string "Forget this chat ever happened,\n"
- .string "how about it? So long!$"
-
-BattleFrontier_PokeNav_2AF671:: @ 82AF671
- .string "It's a pleasure to chat with\n"
- .string "a young TRAINER like you.\p"
- .string "I imagine that you will continue to\n"
- .string "enjoy POKéMON whatever your age.\p"
- .string "Wouldn't it be good if you had\n"
- .string "a partnership like ours?\p"
- .string "Of course, {PLAYER}{STRING 5}, you already\n"
- .string "enjoy the trust and companionship\l"
- .string "of your POKéMON now.\p"
- .string "You have the makings of long and\n"
- .string "enduring relationships already!\p"
- .string "Hahaha!\n"
- .string "Never be discouraged!$"
-
-BattleFrontier_PokeNav_2AF7D8:: @ 82AF7D8
- .string "Hi, this is {STR_VAR_1}!\n"
- .string "We just won a battle!\p"
- .string "We don't win often, but it was this\n"
- .string "cool SWIMMER guy.\p"
- .string "My sister was steamed!\p"
- .string "She wanted to pretend that she\n"
- .string "was weak to make an impression!\p"
- .string "She always chews me out whether\n"
- .string "we win or lose!\p"
- .string "{PLAYER}{STRING 5}, can you say something\n"
- .string "to her next time?\p"
- .string "Okay, see you!$"
-
-BattleFrontier_PokeNav_2AF8F7:: @ 82AF8F7
- .string "{STR_VAR_1} here, yes.\n"
- .string "I headed out to sea yesterday.\p"
- .string "I had been hoping to find a new\n"
- .string "ruin to explore.\p"
- .string "But the tides somehow seemed to\n"
- .string "carry me back where I started.\p"
- .string "I'm still weak at battling, too…\n"
- .string "Feel free to mock me…\l"
- .string "But I won't give up.\p"
- .string "My day will come when I discover\n"
- .string "a new ruin!\p"
- .string "That's all I have to say!\n"
- .string "Farewell for now!$"
-
-BattleFrontier_PokeNav_2AFA39:: @ 82AFA39
- .string "Ahoy there!\n"
- .string "It's me, {STR_VAR_1}!\l"
- .string "I'm out on ROUTE 108 now!\l"
- .string "In other words, where I always am!\p"
- .string "Today, a gorgeous SWIMMER \n"
- .string "swam by me!\p"
- .string "So I startled her with a shout!\p"
- .string "And she gave me a nasty glare!\p"
- .string "That's all from ROUTE 108!\n"
- .string "Brought to you by {STR_VAR_1}!$"
-
-BattleFrontier_PokeNav_2AFB26:: @ 82AFB26
- .string "It's {STR_VAR_1}!\p"
- .string "I'm kind of busy, but I figured\n"
- .string "I should let you know that I've\l"
- .string "beaten five TRAINERS again today.\p"
- .string "If I keep this pace up, I can\n"
- .string "probably beat you next time.\p"
- .string "I think we'll be good rivals,\n"
- .string "you and I. Good-bye for now!$"
-
-BattleFrontier_PokeNav_2AFC07:: @ 82AFC07
- .string "Hi! This is {STR_VAR_1}.\n"
- .string "I heard the news!\p"
- .string "They say you did excellent at\n"
- .string "the {STR_VAR_2}.\p"
- .string "It's awesome, {STR_VAR_3} straight wins?\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AFC78:: @ 82AFC78
- .string "Hello, it's {STR_VAR_1}!\n"
- .string "I heard about you!\p"
- .string "They said you won {STR_VAR_3} straight\n"
- .string "battles at the {STR_VAR_2}.\p"
- .string "That's special! I should try\n"
- .string "harder, too! See you!$"
-
-BattleFrontier_PokeNav_2AFCFF:: @ 82AFCFF
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I heard you went on a tear at\n"
- .string "the {STR_VAR_2}!\p"
- .string "A big {STR_VAR_3}-win streak…\n"
- .string "That is a big record, isn't it?\p"
- .string "I'd better get it together, too!\n"
- .string "Catch you soon!$"
-
-BattleFrontier_PokeNav_2AFDA7:: @ 82AFDA7
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here. What's up?\p"
- .string "There's a rumor going around that\n"
- .string "you strung together {STR_VAR_3} straight\l"
- .string "wins at the {STR_VAR_2}.\p"
- .string "I'd better step it up, too.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2AFE3D:: @ 82AFE3D
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "You were at the {STR_VAR_2}\n"
- .string "and won {STR_VAR_3} battles in a row?\l"
- .string "Isn't that something!\p"
- .string "I'd better work on my POKéMON more.\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2AFECA:: @ 82AFECA
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here. How are you?\p"
- .string "By the way, I heard you pulled off\n"
- .string "the feat of {STR_VAR_3} straight wins at\l"
- .string "the {STR_VAR_2}.\p"
- .string "That inspires me to focus on\n"
- .string "raising my team.$"
-
-BattleFrontier_PokeNav_2AFF64:: @ 82AFF64
- .string "…Er, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here…\p"
- .string "Oh, yeah, you were over at\n"
- .string "the {STR_VAR_2}, right?\p"
- .string "And you won {STR_VAR_3} battles in a row.\p"
- .string "Oh, there goes a rare POKéMON!\n"
- .string "I have to go!$"
-
-BattleFrontier_PokeNav_2AFFF0:: @ 82AFFF0
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\l"
- .string "I hope you're doing well.\p"
- .string "Oh, but, you are. I've heard that\n"
- .string "you won {STR_VAR_3} matches in a row at\l"
- .string "the {STR_VAR_2}.\p"
- .string "That's very impressive!\n"
- .string "I hope you stay successful.$"
-
-BattleFrontier_PokeNav_2B00B5:: @ 82B00B5
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I heard! Your {STR_VAR_3}-win streak at\n"
- .string "the {STR_VAR_2}!\p"
- .string "That is so cool!\n"
- .string "I'd better try harder, too!$"
-
-BattleFrontier_PokeNav_2B0129:: @ 82B0129
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You won {STR_VAR_3} straight battles at\n"
- .string "the {STR_VAR_2}?\p"
- .string "That's quite the accomplishment.\n"
- .string "I need to work harder.$"
-
-BattleFrontier_PokeNav_2B01A5:: @ 82B01A5
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I hear you're the terror of\n"
- .string "the {STR_VAR_2}?\p"
- .string "You won, what, {STR_VAR_3} matches in\n"
- .string "a row?\p"
- .string "You're good, you.\n"
- .string "I wonder how many I can win?$"
-
-BattleFrontier_PokeNav_2B0232:: @ 82B0232
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you keeping well?\p"
- .string "Someone passed on word about you.\n"
- .string "How you won {STR_VAR_3} straight battles\l"
- .string "at a place named {STR_VAR_2}?\p"
- .string "That's quite the tale.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B02D9:: @ 82B02D9
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "I hope you've been keeping well.\p"
- .string "They say you won {STR_VAR_3} straight\n"
- .string "battles at the {STR_VAR_2}.\p"
- .string "I admire your energy!\n"
- .string "Bye now.$"
-
-BattleFrontier_PokeNav_2B0366:: @ 82B0366
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I heard about you!\n"
- .string "Didn't you just win {STR_VAR_3} battles in\l"
- .string "a row at the {STR_VAR_2}?\p"
- .string "You're an inspiration!\n"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2B03E6:: @ 82B03E6
- .string "Hi! This is {STR_VAR_1}.\n"
- .string "I heard the news!\p"
- .string "They say you did excellent at\n"
- .string "the {STR_VAR_2}.\p"
- .string "It's awesome--{STR_VAR_3} straight wins?\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B0457:: @ 82B0457
- .string "Hello, it's {STR_VAR_1}!\n"
- .string "I heard about you!\p"
- .string "They said you won {STR_VAR_3} straight\n"
- .string "battles at the {STR_VAR_2}.\p"
- .string "That's special! I should try\n"
- .string "harder, too! See you!$"
-
-BattleFrontier_PokeNav_2B04DE:: @ 82B04DE
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\p"
- .string "I heard you went on a tear at\n"
- .string "the {STR_VAR_2}!\p"
- .string "A big {STR_VAR_3}-win streak…\n"
- .string "That is a big record, isn't it?\p"
- .string "I'd better get it together, too!\n"
- .string "Catch you soon!$"
-
-BattleFrontier_PokeNav_2B0586:: @ 82B0586
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here. What's up?\p"
- .string "There's a rumor going around that\n"
- .string "you strung together {STR_VAR_3} straight\l"
- .string "wins at the {STR_VAR_2}.\p"
- .string "I'd better step it up, too.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B061C:: @ 82B061C
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "You were at the {STR_VAR_2}\n"
- .string "and won {STR_VAR_3} battles in a row?\l"
- .string "Isn't that something!\p"
- .string "Me? I'd say I'm coming along.\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2B06A3:: @ 82B06A3
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here. How are you?\p"
- .string "By the way, I heard you pulled off\n"
- .string "the feat of {STR_VAR_3} straight wins at\l"
- .string "the {STR_VAR_2}.\p"
- .string "I'd better try harder myself!\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2B073B:: @ 82B073B
- .string "…Er, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here…\p"
- .string "Oh, yeah, you were over at\n"
- .string "the {STR_VAR_2}, right?\p"
- .string "And you won {STR_VAR_3} battles in a row.\p"
- .string "Oh, there goes a rare POKéMON!\n"
- .string "I have to go!$"
-
-BattleFrontier_PokeNav_2B07C7:: @ 82B07C7
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\l"
- .string "I hope you're doing well.\p"
- .string "Oh, but, you are. I've heard that\n"
- .string "you won {STR_VAR_3} matches in a row at\l"
- .string "the {STR_VAR_2}.\p"
- .string "That's very impressive!\n"
- .string "I'd better work on my POKéMON, too!$"
-
-BattleFrontier_PokeNav_2B0894:: @ 82B0894
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I heard! Your {STR_VAR_3}-win streak at\n"
- .string "the {STR_VAR_2}!\p"
- .string "That is so cool!\n"
- .string "I'd better try harder, too!$"
-
-BattleFrontier_PokeNav_2B0908:: @ 82B0908
- .string "Oh, {PLAYER}{STRING 5}, hello…\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You won {STR_VAR_3} straight battles at\n"
- .string "the {STR_VAR_2}?\p"
- .string "That's quite the accomplishment.\n"
- .string "I need to work harder.$"
-
-BattleFrontier_PokeNav_2B0984:: @ 82B0984
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I hear you're the terror of\n"
- .string "the {STR_VAR_2}?\p"
- .string "You won, what, {STR_VAR_3} matches in\n"
- .string "a row?\p"
- .string "You're good, you.\n"
- .string "I wonder how many I can win?$"
-
-BattleFrontier_PokeNav_2B0A11:: @ 82B0A11
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you keeping well?\p"
- .string "Someone passed on word about you.\n"
- .string "How you won {STR_VAR_3} straight battles\l"
- .string "at a place named {STR_VAR_2}?\p"
- .string "That's quite the tale.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B0AB8:: @ 82B0AB8
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "I hope you've been keeping well.\p"
- .string "They say you won {STR_VAR_3} straight\n"
- .string "battles at the {STR_VAR_2}.\p"
- .string "I admire your energy!\n"
- .string "Bye now.$"
-
-BattleFrontier_PokeNav_2B0B45:: @ 82B0B45
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "I heard about you!\p"
- .string "Didn't you just win {STR_VAR_3} battles in\n"
- .string "a row at the {STR_VAR_2}?\p"
- .string "You're an inspiration!\n"
- .string "Bye-bye!$"
-
-BattleFrontier_PokeNav_2B0BC5:: @ 82B0BC5
- .string "Hi! {PLAYER}?\n"
- .string "Hello, this is {STR_VAR_1}!\l"
- .string "I heard the news!\p"
- .string "You became the champion at\n"
- .string "the {STR_VAR_2} {STR_VAR_3} times?\p"
- .string "It's awesome! I have to do better!\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B0C4A:: @ 82B0C4A
- .string "Hello, it's {STR_VAR_1}!\n"
- .string "I heard about you!\p"
- .string "They said you won {STR_VAR_3} titles\n"
- .string "at the {STR_VAR_2}.\p"
- .string "That's super! I wonder if I can\n"
- .string "become a champion?$"
-
-BattleFrontier_PokeNav_2B0CC7:: @ 82B0CC7
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "How's it going?\p"
- .string "I heard you won events {STR_VAR_3} times\n"
- .string "at the {STR_VAR_2}!\p"
- .string "Make it one more next time!\n"
- .string "Catch you soon!$"
-
-BattleFrontier_PokeNav_2B0D4A:: @ 82B0D4A
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "I heard you became the champion\n"
- .string "at the {STR_VAR_2} {STR_VAR_3} times.\p"
- .string "Sounds like you're working hard.\n"
- .string "I'll try to keep up!$"
-
-BattleFrontier_PokeNav_2B0DC8:: @ 82B0DC8
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "I heard you won {STR_VAR_3} times\n"
- .string "outright at the {STR_VAR_2}.\p"
- .string "I'd better get with it, too!\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2B0E35:: @ 82B0E35
- .string "Hey, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here. How are you?\p"
- .string "By the way, I heard you became\n"
- .string "the champion {STR_VAR_3} times at\l"
- .string "the {STR_VAR_2}.\p"
- .string "I'd better raise my POKéMON before\n"
- .string "you pull farther ahead.$"
-
-BattleFrontier_PokeNav_2B0ED1:: @ 82B0ED1
- .string "{PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here.\p"
- .string "You were at the {STR_VAR_2}\n"
- .string "and became the champ {STR_VAR_3} times?\p"
- .string "That's neat. By the way, have you\n"
- .string "caught any rare POKéMON lately?\p"
- .string "Oh, is that right.\n"
- .string "Okay, bye.$"
-
-BattleFrontier_PokeNav_2B0F72:: @ 82B0F72
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\l"
- .string "I hope you're doing well.\l"
- .string "Oh, but, you are.\p"
- .string "I've heard that you won {STR_VAR_3} titles\n"
- .string "at the {STR_VAR_2}.\p"
- .string "I must raise my POKéMON like you.\n"
- .string "See you again.$"
-
-BattleFrontier_PokeNav_2B102A:: @ 82B102A
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I heard! You took the title\n"
- .string "{STR_VAR_3} times at the {STR_VAR_2}!\p"
- .string "That is so cool!\n"
- .string "I'd better try harder, too!$"
-
-BattleFrontier_PokeNav_2B10A7:: @ 82B10A7
- .string "Oh, {PLAYER}{STRING 5}, hello.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You won {STR_VAR_3} straight times at\n"
- .string "the {STR_VAR_2}?\p"
- .string "That's quite the accomplishment.\n"
- .string "I need to work harder.$"
-
-BattleFrontier_PokeNav_2B1121:: @ 82B1121
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I hear you're the terror of\n"
- .string "the {STR_VAR_2}?\p"
- .string "You won, what, {STR_VAR_3} straight times\n"
- .string "now?\p"
- .string "I wonder if I can ever become\n"
- .string "a champion?\p"
- .string "…Pretty well impossible?\n"
- .string "Well, see you!$"
-
-BattleFrontier_PokeNav_2B11D3:: @ 82B11D3
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you keeping well?\p"
- .string "You've won {STR_VAR_3} events at a place\n"
- .string "named {STR_VAR_2}?\p"
- .string "That's quite the tale.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B124D:: @ 82B124D
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "I hope you've been keeping well.\p"
- .string "They say you won {STR_VAR_3} events\n"
- .string "at the {STR_VAR_2}?\p"
- .string "I admire your energy!\n"
- .string "Bye now.$"
-
-BattleFrontier_PokeNav_2B12D0:: @ 82B12D0
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "I heard about you!\p"
- .string "Didn't you win {STR_VAR_3} titles\n"
- .string "at the {STR_VAR_2}?\p"
- .string "You're an inspiration!\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2B1347:: @ 82B1347
- .string "Hi! {PLAYER}?\n"
- .string "Hello, this is {STR_VAR_1}!\l"
- .string "I heard the news!\p"
- .string "You got through {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}!\p"
- .string "That's awesome!\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B13B1:: @ 82B13B1
- .string "Hello, it's {STR_VAR_1}!\n"
- .string "I heard about you!\p"
- .string "They said you won your way through\n"
- .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
- .string "I have to try much harder!\n"
- .string "Bye!$"
-
-BattleFrontier_PokeNav_2B142B:: @ 82B142B
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "How's it going?\p"
- .string "I heard you won through {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}!\p"
- .string "Try to do even better next time!\n"
- .string "Catch you soon!$"
-
-BattleFrontier_PokeNav_2B14B4:: @ 82B14B4
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "I heard you blew through {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}.\p"
- .string "I'd better train my POKéMON and\n"
- .string "try to keep up!$"
-
-BattleFrontier_PokeNav_2B1525:: @ 82B1525
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "I heard you got past {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}.\p"
- .string "I'd better get with it, too!\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2B158E:: @ 82B158E
- .string "Hey, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here. How are you?\p"
- .string "By the way, I heard you got through\n"
- .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
- .string "I'd better raise my POKéMON before\n"
- .string "you pull further ahead.$"
-
-BattleFrontier_PokeNav_2B1622:: @ 82B1622
- .string "{PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here.\p"
- .string "You were at the {STR_VAR_2}\n"
- .string "and won your way past {STR_VAR_3} rooms?\p"
- .string "That's wicked.\p"
- .string "Oh, there goes a rare POKéMON!\n"
- .string "Okay, bye.$"
-
-BattleFrontier_PokeNav_2B169D:: @ 82B169D
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\l"
- .string "I hope you're doing well.\l"
- .string "Oh, but, you are.\p"
- .string "I've heard that you got through\n"
- .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
- .string "That's quite impressive!\n"
- .string "I must raise my POKéMON like you.\l"
- .string "See you again.$"
-
-BattleFrontier_PokeNav_2B1775:: @ 82B1775
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I heard! You won your way through\n"
- .string "{STR_VAR_3} rooms at the {STR_VAR_2}!\p"
- .string "That is so cool!\n"
- .string "I'd better try harder, too!$"
-
-BattleFrontier_PokeNav_2B17F8:: @ 82B17F8
- .string "Oh, {PLAYER}{STRING 5}, hello.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You won your way past {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}?\p"
- .string "That's quite the accomplishment.\n"
- .string "I need to work harder.$"
-
-BattleFrontier_PokeNav_2B1877:: @ 82B1877
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I hear you're the terror of\n"
- .string "the {STR_VAR_2}?\p"
- .string "You got through, what, {STR_VAR_3} rooms?\n"
- .string "That's gotta count for something.\p"
- .string "I wonder if I can ever become\n"
- .string "a champion?\p"
- .string "…Pretty well impossible?\n"
- .string "Well, see you!$"
-
-BattleFrontier_PokeNav_2B1946:: @ 82B1946
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you keeping well?\p"
- .string "You've won through {STR_VAR_3} rooms at\n"
- .string "a place named {STR_VAR_2}?\p"
- .string "That's quite the tale.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B19C7:: @ 82B19C7
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "I hope you've been keeping well.\p"
- .string "They say you won in {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}?\p"
- .string "I admire your energy!\n"
- .string "Bye now.$"
-
-BattleFrontier_PokeNav_2B1A4C:: @ 82B1A4C
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "I heard about you!\p"
- .string "Didn't you get through {STR_VAR_3} rooms\n"
- .string "at the {STR_VAR_2}?\p"
- .string "You're an inspiration!\n"
- .string "See you again!$"
-
-BattleFrontier_PokeNav_2B1ACA:: @ 82B1ACA
- .string "Hi! {PLAYER}?\n"
- .string "Hello, this is {STR_VAR_1}!\l"
- .string "I heard the news!\p"
- .string "You climbed {STR_VAR_3} floors inside\n"
- .string "the {STR_VAR_2}, right?\p"
- .string "That's awesome!\n"
- .string "I should try that challenge.$"
-
-BattleFrontier_PokeNav_2B1B50:: @ 82B1B50
- .string "Hello, it's {STR_VAR_1}!\n"
- .string "I heard about you!\p"
- .string "They said you won your way through\n"
- .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
- .string "Wow, that's fantastic!\n"
- .string "I'd better raise my POKéMON, too!$"
-
-BattleFrontier_PokeNav_2B1BE4:: @ 82B1BE4
- .string "Hey there, {PLAYER}!\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "How's it going?\p"
- .string "I heard you climbed {STR_VAR_3} floors\n"
- .string "in the {STR_VAR_2}!\p"
- .string "Try to do even better next time!\n"
- .string "Catch you soon!$"
-
-BattleFrontier_PokeNav_2B1C6A:: @ 82B1C6A
- .string "Hey, {PLAYER}{STRING 5}.\n"
- .string "{STR_VAR_1} here.\p"
- .string "I heard you scaled {STR_VAR_3} floors\n"
- .string "in the {STR_VAR_2}.\p"
- .string "I'd better work hard and try\n"
- .string "to keep up!$"
-
-BattleFrontier_PokeNav_2B1CCF:: @ 82B1CCF
- .string "Hiya, {PLAYER}{STRING 5}!\n"
- .string "It's {STR_VAR_1}.\p"
- .string "I heard you climbed {STR_VAR_3} floors\n"
- .string "in the {STR_VAR_2}.\p"
- .string "I'd better get with it, too!\n"
- .string "See you soon!$"
-
-BattleFrontier_PokeNav_2B1D38:: @ 82B1D38
- .string "Hey, {PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here. How are you?\p"
- .string "By the way, I heard you got through\n"
- .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
- .string "I'd better raise my POKéMON before\n"
- .string "you pull further ahead.$"
-
-BattleFrontier_PokeNav_2B1DCD:: @ 82B1DCD
- .string "{PLAYER}{STRING 5}?\n"
- .string "{STR_VAR_1} here.\p"
- .string "You were at the {STR_VAR_2}\n"
- .string "and won your way up {STR_VAR_3} floors?\p"
- .string "Neat. Were there any rare POKéMON\n"
- .string "there?\p"
- .string "No, huh?\n"
- .string "Okay, bye.$"
-
-BattleFrontier_PokeNav_2B1E4B:: @ 82B1E4B
- .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
- .string "This is {STR_VAR_1} speaking.\l"
- .string "I hope you're doing well.\l"
- .string "Oh, but, you are.\p"
- .string "I've heard that you got through\n"
- .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
- .string "That's quite impressive!\n"
- .string "I must raise my POKéMON like you.\l"
- .string "See you again.$"
-
-BattleFrontier_PokeNav_2B1F24:: @ 82B1F24
- .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
- .string "This is {STR_VAR_1}!\p"
- .string "I heard! You won your way through\n"
- .string "{STR_VAR_3} floors in the {STR_VAR_2}!\p"
- .string "That is so cool!\n"
- .string "I'd better try harder, too!$"
-
-BattleFrontier_PokeNav_2B1FA8:: @ 82B1FA8
- .string "Oh, {PLAYER}{STRING 5}, hello.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "You climbed {STR_VAR_3} floors inside\n"
- .string "the {STR_VAR_2}?\p"
- .string "That's quite the accomplishment.\n"
- .string "I need to work harder.$"
-
-BattleFrontier_PokeNav_2B2022:: @ 82B2022
- .string "Ah, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\p"
- .string "I hear you're the terror of\n"
- .string "the {STR_VAR_2}?\p"
- .string "You rose through, what, {STR_VAR_3} floors?\n"
- .string "That's gotta count for something.\p"
- .string "I wonder if I can ever become\n"
- .string "a champion?\p"
- .string "…Pretty well impossible?\n"
- .string "Well, see you!$"
-
-BattleFrontier_PokeNav_2B20F3:: @ 82B20F3
- .string "Hello, {PLAYER}{STRING 5}.\n"
- .string "It's me, {STR_VAR_1}.\l"
- .string "Are you keeping well?\p"
- .string "You've won through {STR_VAR_3} floors in\n"
- .string "a place named {STR_VAR_2}?\p"
- .string "That's quite the tale.\n"
- .string "See you!$"
-
-BattleFrontier_PokeNav_2B2175:: @ 82B2175
- .string "Ah, hello, {PLAYER}{STRING 5}!\n"
- .string "This is {STR_VAR_1}!\l"
- .string "I hope you've been keeping well.\p"
- .string "They say you climbed {STR_VAR_3} floors\n"
- .string "in the {STR_VAR_2}?\p"
- .string "I admire your energy!\n"
- .string "Bye now.$"
-
-BattleFrontier_PokeNav_2B21FC:: @ 82B21FC
- .string "Oh, hi, {PLAYER}{STRING 5}.\n"
- .string "This is {STR_VAR_1}.\l"
- .string "I heard about you!\p"
- .string "Didn't you get through {STR_VAR_3} floors\n"
- .string "in the {STR_VAR_2}?\p"
- .string "You're an inspiration!\n"
- .string "See you again!$"
-
-gText_Mom_Pokenav_2B227B:: @ 82B227B
- .string "MOM: Your father and you…\n"
- .string "Everyone is captivated by POKéMON.\p"
- .string "What is the charm of POKéMON?\p"
- .string "Me?\n"
- .string "I adore POKéMON that help me with\l"
- .string "my everyday chores.$"
-
-gText_Mom_Pokenav_2B2310:: @ 82B2310
- .string "MOM: Hi, {PLAYER}!\n"
- .string "Your father keeps himself locked\l"
- .string "away in the PETALBURG GYM.\p"
- .string "He comes home every so often.\n"
- .string "But he goes back to the GYM when\l"
- .string "he's eaten everything he can.\p"
- .string "I'm guessing that losing to you\n"
- .string "was a big blow to his pride!$"
-
-gText_Mom_Pokenav_2B23F3:: @ 82B23F3
- .string "MOM: {PLAYER}…\n"
- .string "Don't worry about me or the house.\p"
- .string "Wear those RUNNING SHOES until\n"
- .string "they fall apart, honey!$"
-
-gText_Roxanne_Pokenav_2B2456:: @ 82B2456
- .string "ROXANNE: Oh, hello, {PLAYER}!\p"
- .string "I've been hard at work retraining\n"
- .string "since we met.\p"
- .string "I will still need some more time\n"
- .string "before I can reopen the GYM.\p"
- .string "But when I do, please visit my GYM\n"
- .string "for a rematch!$"
-
-gText_Roxanne_Pokenav_2B250E:: @ 82B250E
- .string "ROXANNE: Is this {PLAYER}?\n"
- .string "Congratulations!\l"
- .string "I've been hearing about you!\p"
- .string "As for me, I need some more time\n"
- .string "before I can reopen the GYM.\p"
- .string "But when I do, please visit my GYM\n"
- .string "for a rematch!$"
-
-gText_Roxanne_Pokenav_2B25C1:: @ 82B25C1
- .string "ROXANNE: {PLAYER}!\n"
- .string "My GYM is ready!\p"
- .string "Please visit RUSTBORO whenever\n"
- .string "you can!$"
-
-gText_Roxanne_Pokenav_2B2607:: @ 82B2607
- .string "ROXANNE: At the RUSTBORO GYM,\n"
- .string "the fact that we battled, {PLAYER},\l"
- .string "is a matter of pride.$"
-
-gText_Brawly_Pokenav_2B2659:: @ 82B2659
- .string "BRAWLY: Hey, there, {PLAYER}{STRING 5}!\p"
- .string "I learned a lot from the battle we\n"
- .string "had together.\p"
- .string "I intend to do my training over,\n"
- .string "then reopen the GYM.\p"
- .string "It's going to take some time before\n"
- .string "I'm ready to run the GYM again.\p"
- .string "But if I can reopen the GYM,\n"
- .string "I want you to challenge us again.$"
-
-gText_Brawly_Pokenav_2B275D:: @ 82B275D
- .string "BRAWLY: Hey, {PLAYER}{STRING 5}!\n"
- .string "Congratulations!\p"
- .string "Word about your exploits arrived\n"
- .string "on tidal winds!\p"
- .string "It appears as if I need to work on\n"
- .string "my training some more.\p"
- .string "It's going to take some time before\n"
- .string "I'm ready to run the GYM again.\p"
- .string "But if I can reopen the GYM,\n"
- .string "I want you to challenge us again.$"
-
-gText_Brawly_Pokenav_2B286F:: @ 82B286F
- .string "BRAWLY: Hey, {PLAYER}{STRING 5}!\n"
- .string "My GYM's ready for action!\p"
- .string "Come back to DEWFORD anytime\n"
- .string "for another challenge!$"
-
-gText_Brawly_Pokenav_2B28D1:: @ 82B28D1
- .string "BRAWLY: {PLAYER}{STRING 5}, I don't think\n"
- .string "I'll ever get bored of battling you!$"
-
-gText_Wattson_Pokenav_2B2912:: @ 82B2912
- .string "WATTSON: Oh, it's you!\p"
- .string "After you left, I've been redoing\n"
- .string "my training from scratch.\p"
- .string "I'd say I could use a wee bit more\n"
- .string "time to reopen my GYM.\p"
- .string "You'll have to wait till then!\n"
- .string "Wahahahaha!$"
-
-gText_Wattson_Pokenav_2B29CA:: @ 82B29CA
- .string "WATTSON: Wahahahaha!\p"
- .string "You've really done it, haven't you?\n"
- .string "I've been getting word about you!\p"
- .string "It seems I need to retrain some\n"
- .string "more still.\p"
- .string "I'd say I could use a wee bit more\n"
- .string "time to reopen my GYM.\p"
- .string "You'll have to wait till then!\n"
- .string "Wahahahaha!$"
-
-gText_Wattson_Pokenav_2B2AB6:: @ 82B2AB6
- .string "WATTSON: Oh, it's you!\n"
- .string "My GYM's ready!\p"
- .string "Visit MAUVILLE anytime!\n"
- .string "Wahahahaha!$"
-
-gText_Wattson_Pokenav_2B2B01:: @ 82B2B01
- .string "WATTSON: Wahahaha!\p"
- .string "A battle with you is always charged\n"
- .string "with shocking power!$"
-
-gText_Flannery_Pokenav_2B2B4D:: @ 82B2B4D
- .string "FLANNERY: {PLAYER}…\p"
- .string "When we battled, I learned exactly\n"
- .string "how immature I was.\p"
- .string "But I'm not done yet!\p"
- .string "I'm going to redo my training and\n"
- .string "reopen the GYM.\p"
- .string "When the time comes, {PLAYER},\n"
- .string "please challenge us again.$"
-
-gText_Flannery_Pokenav_2B2C0E:: @ 82B2C0E
- .string "FLANNERY: Hello, {PLAYER}?\n"
- .string "Congratulations!\p"
- .string "Word of your success has reached\n"
- .string "us like the heat of a volcano!\p"
- .string "Our training is coming along very\n"
- .string "well here.\p"
- .string "When the GYM's ready, a mark will\n"
- .string "appear beside my name in the\l"
- .string "MATCH CALL list.$"
-
-gText_Flannery_Pokenav_2B2CF1:: @ 82B2CF1
- .string "FLANNERY: Oh, {PLAYER}?\n"
- .string "Our GYM's ready!\p"
- .string "Come to LAVARIDGE for a soak\n"
- .string "in the hot spring and a challenge!$"
-
-gText_Flannery_Pokenav_2B2D54:: @ 82B2D54
- .string "FLANNERY: {PLAYER}…\n"
- .string "I'm positive that you keep getting\l"
- .string "better at training every time.$"
-
-gText_Winona_Pokenav_2B2DA4:: @ 82B2DA4
- .string "WINONA: Hello, {PLAYER}!\p"
- .string "Thanks to our battle, I've come\n"
- .string "to understand my weak points!\p"
- .string "When I reopen the GYM, I won't go\n"
- .string "down in defeat again!$"
-
-gText_Winona_Pokenav_2B2E2B:: @ 82B2E2B
- .string "WINONA: You've done it, {PLAYER}!\p"
- .string "News about the new CHAMPION\n"
- .string "has reached us in FORTREE!\p"
- .string "But… The next time we battle,\n"
- .string "it's not going to end the same way.$"
-
-gText_Winona_Pokenav_2B2EC2:: @ 82B2EC2
- .string "WINONA: Is this {PLAYER}?\n"
- .string "Our GYM is back in operation!\p"
- .string "We're waiting for you in FORTREE!$"
-
-gText_Winona_Pokenav_2B2F16:: @ 82B2F16
- .string "WINONA: {PLAYER}…\n"
- .string "Though I have lost, my wings will\l"
- .string "never break.\p"
- .string "Yes, in exactly the same way that\n"
- .string "you never lost sight of your dream.$"
-
-gText_TateLiza_Pokenav_2B2F97:: @ 82B2F97
- .string "TATE: Oh! You're…\n"
- .string "LIZA: {PLAYER}!\p"
- .string "TATE: We're in training again…\n"
- .string "LIZA: So we can reopen our GYM!\p"
- .string "TATE: When our GYM is ready…\n"
- .string "LIZA: When our GYM is ready…\p"
- .string "TATE: A mark'll appear by our name…\n"
- .string "LIZA: On the MATCH CALL list.$"
-
-gText_TateLiza_Pokenav_2B306E:: @ 82B306E
- .string "TATE: {PLAYER}, congratulations!\n"
- .string "LIZA: {PLAYER}, congratulations!\p"
- .string "TATE: The two of us are…\n"
- .string "LIZA: Still in training!\p"
- .string "TATE: We need some more time, but…\n"
- .string "LIZA: When our GYM is ready…\p"
- .string "TATE: A mark'll appear by our name…\n"
- .string "LIZA: On the MATCH CALL list.$"
-
-gText_TateLiza_Pokenav_2B3158:: @ 82B3158
- .string "TATE: {PLAYER}!\n"
- .string "LIZA: {PLAYER}!\p"
- .string "TATE: Our GYM is ready!\n"
- .string "LIZA: Our GYM is ready!\p"
- .string "TATE: Please come visit…\n"
- .string "LIZA: MOSSDEEP anytime!$"
-
-gText_TateLiza_Pokenav_2B31CD:: @ 82B31CD
- .string "TATE: {PLAYER}, the battle we had…\n"
- .string "LIZA: Is an invaluable experience.\p"
- .string "TATE: It would be nice if…\n"
- .string "LIZA: We could all battle again!$"
-
-gText_Juan_Pokenav_2B3249:: @ 82B3249
- .string "JUAN: Hmm…\n"
- .string "{PLAYER}{STRING 5}… Was it?\p"
- .string "Our battle together--it brought\n"
- .string "to me memories of when I first\l"
- .string "encountered WALLACE.\p"
- .string "Perhaps you are a genius who may\n"
- .string "yet surpass WALLACE!$"
-
-gText_Juan_Pokenav_2B32EC:: @ 82B32EC
- .string "JUAN: Fufu… {PLAYER}{STRING 5}…\n"
- .string "You've finally achieved your goal.\p"
- .string "My eye for appraising talent wasn't\n"
- .string "mistaken…\p"
- .string "I wish for another chance to meet\n"
- .string "you, for you have scaled the peak\l"
- .string "of power and prestige.$"
-
-gText_Juan_Pokenav_2B33AA:: @ 82B33AA
- .string "JUAN: Hoho… {PLAYER}{STRING 5}…\p"
- .string "Our SOOTOPOLIS GYM has finally\n"
- .string "reopened.\p"
- .string "If you wish to see me, you are\n"
- .string "welcome to visit anytime.$"
-
-gText_Juan_Pokenav_2B341E:: @ 82B341E
- .string "JUAN: {PLAYER}{STRING 5}…\p"
- .string "Like the finest music, the battles\n"
- .string "we wage together strike chords\l"
- .string "of inspiration in my heart…\p"
- .string "When I close my eyes, I see visions\n"
- .string "of you soaring with the melody…$"
-
-gText_Sidney_Pokenav_2B34CC:: @ 82B34CC
- .string "SIDNEY: Yo, {PLAYER}!\p"
- .string "If you want to battle with me\n"
- .string "again, you come on back whenever\l"
- .string "you like to the POKéMON LEAGUE.\p"
- .string "I'll always be here!\n"
- .string "I'll be waiting!$"
-
-gText_Phoebe_Pokenav_2B3561:: @ 82B3561
- .string "PHOEBE: Hi, {PLAYER}!\p"
- .string "How about coming back here again\n"
- .string "sometime?\p"
- .string "I'd like to see how much tighter\n"
- .string "your bond has grown with your\l"
- .string "POKéMON.$"
-
-gText_Glacia_Pokenav_2B35E4:: @ 82B35E4
- .string "GLACIA: Hello, {PLAYER}.\p"
- .string "I trust you haven't become\n"
- .string "complacent with your power?\p"
- .string "If you feel the need to cool your\n"
- .string "hot emotions just a little, do come\l"
- .string "to the POKéMON LEAGUE…$"
-
-gText_Drake_Pokenav_2B368B:: @ 82B368B
- .string "DRAKE: That voice… {PLAYER}, is it?\n"
- .string "You sound well…\p"
- .string "I understand that there is now\n"
- .string "a facility called the BATTLE\l"
- .string "FRONTIER that tests the skills of\l"
- .string "TRAINERS.\p"
- .string "However, if you wish to have real\n"
- .string "battles, there is no substitute for\l"
- .string "the POKéMON LEAGUE!\p"
- .string "Don't you agree, {PLAYER}?$"
-
-gText_Wallace_Pokenav_2B3790:: @ 82B3790
- .string "WALLACE: Hello, {PLAYER}{STRING 5}.\n"
- .string "Have you met STEVEN?\p"
- .string "He is…\n"
- .string "Actually incredibly skilled.\p"
- .string "However, he's an odd soul who\n"
- .string "rarely battles.\p"
- .string "Instead, he would rather look for\n"
- .string "rare stones.\p"
- .string "I'm sure he's digging in a cave or\n"
- .string "a craggy mountain somewhere.\p"
- .string "But what is a rare stone exactly?\n"
- .string "All I can think of is a METEORITE…$"
-
-MossdeepCity_SpaceCenter_2F_Text_2B38C1: @ 82B38C1
- .string "… … … … … …\n"
- .string "… … … … … Beep!\p"
- .string "MAY: Hi, {PLAYER}{KUN}!\p"
- .string "I was just in PACIFIDLOG a little\n"
- .string "while ago.\p"
- .string "I saw a giant green POKéMON\n"
- .string "flying high in the sky.\p"
- .string "I…\n"
- .string "I've never seen anything like it.\p"
- .string "I wonder what it was.\n"
- .string "Is this maybe a major discovery?\p"
- .string "… … … … … …\n"
- .string "… … … … … Click!$"
-
-MossdeepCity_SpaceCenter_2F_Text_2B39C6: @ 82B39C6
- .string "… … … … … …\n"
- .string "… … … … … Beep!\p"
- .string "BRENDAN: Hey, {PLAYER}!\n"
- .string "I was in PACIFIDLOG just now.\p"
- .string "I saw this huge green POKéMON\n"
- .string "flying across the sky.\p"
- .string "I've never seen anything that\n"
- .string "amazing before.\p"
- .string "I wish you could've seen it,\n"
- .string "{PLAYER}.\p"
- .string "… … … … … …\n"
- .string "… … … … … Click!$"
-
-gText_May_Pokenav_2B3AB3:: @ 2B3AB3
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "MR. BRINEY retired as a SAILOR,\n"
- .string "but I still see him out on the sea\l"
- .string "with his pet PEEKO sometimes.\p"
- .string "He must love the sea still.$"
-
-gText_May_Pokenav_2B3B3F:: @ 2B3B3F
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "You know how little towns like\n"
- .string "PETALBURG and DEWFORD have GYMS?\p"
- .string "For some reason, the big port of\n"
- .string "SLATEPORT doesn't have a GYM.\p"
- .string "When they finally build a GYM there,\n"
- .string "I should apply to be the LEADER.$"
-
-gText_May_Pokenav_2B3C13:: @ 2B3C13
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "Do you remember a man named\n"
- .string "the CUTTER in RUSTBORO?\l"
- .string "He had a house there, remember?\p"
- .string "Well, I found out his younger\n"
- .string "brother lives in MAUVILLE.\p"
- .string "Can you guess his name?\p"
- .string "… … … … … …\n"
- .string "… … … … … …\p"
- .string "The ROCK SMASH GUY!$"
-
-gText_May_Pokenav_2B3CF3:: @ 2B3CF3
- .string "MAY: {PLAYER}{STRING 5}?\p"
- .string "RUSTURF TUNNEL…\n"
- .string "They named it that because it\l"
- .string "joins RUSTBORO and VERDANTURF.$"
-
-gText_May_Pokenav_2B3D4B:: @ 2B3D4B
- .string "MAY: {PLAYER}{STRING 5}, how are you?\p"
- .string "I'm out on ROUTE 111 now.\p"
- .string "I'm going to get a rest at an old\n"
- .string "lady's house.\p"
- .string "She lives just north of\n"
- .string "the desert.$"
-
-gText_May_Pokenav_2B3DD1:: @ 2B3DD1
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "Did you know about the MIRAGE\n"
- .string "TOWER in the desert?\p"
- .string "They say, like a mirage, it seems\n"
- .string "to mysteriously come and go.\p"
- .string "I wish I could see it.$"
-
-gText_May_Pokenav_2B3E69:: @ 2B3E69
- .string "MAY: {PLAYER}{STRING 5}, yahoo!\n"
- .string "I'm on ROUTE 119 now.\p"
- .string "There's a big river here, and\n"
- .string "it often rains.\p"
- .string "I got soaked!$"
-
-gText_May_Pokenav_2B3ECD:: @ 2B3ECD
- .string "MAY: {PLAYER}{STRING 5}, hi.\p"
- .string "MT. PYRE is a memorial to POKéMON\n"
- .string "whose lives have ended.\p"
- .string "Maybe as a result, it's infested\n"
- .string "with many GHOST-type POKéMON!$"
-
-gText_May_Pokenav_2B3F2B:: @ 2B3F2B
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "I was thinking of going to the hot\n"
- .string "spring in LAVARIDGE.\p"
- .string "But on the way, around JAGGED\n"
- .string "PASS, I ran into some bad-looking\l"
- .string "characters. The mood was ugly!$"
-
-gText_May_Pokenav_2B3FFB:: @ 2B3FFB
- .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
- .string "Did you see the news?\p"
- .string "They say CAPT. STERN discovered\n"
- .string "the SEAFLOOR CAVERN while on his\l"
- .string "submarine expedition.$"
-
-gText_May_Pokenav_2B402B:: @ 2B402B
- .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
- .string "Don't you think it's neat?\p"
- .string "Even if you don't have a boat,\n"
- .string "you can cross the sea using\l"
- .string "a POKéMON's move.\p"
- .string "Did you know there's more?\p"
- .string "There's a POKéMON move that lets\n"
- .string "you go to the bottom of the sea.$"
-
-gText_May_Pokenav_2B414B:: @ 2B414B
- .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
- .string "Hope things are okay!\p"
- .string "Have you been on the sea and\n"
- .string "found your way to the other side\l"
- .string "blocked?\p"
- .string "Try diving deep underwater and\n"
- .string "following trenches.\p"
- .string "When you get to the other side,\n"
- .string "come up to the surface. Easy!$"
-
-gText_May_Pokenav_2B4228:: @ 2B4228
- .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
- .string "How's it going?\n"
- .string "Are you filling your POKéDEX?\p"
- .string "I heard a rumor that there are\n"
- .string "super-ancient POKéMON out there.\l"
- .string "And there are three of them!\p"
- .string "I would love to see even one…$"
-
-gText_May_Pokenav_2B42E0:: @ 2B42E0
- .string "MAY: {PLAYER}{STRING 5}!\n"
- .string "I heard the rumors!\p"
- .string "You beat the SOOTOPOLIS GYM\n"
- .string "LEADER?\p"
- .string "That means you don't have far\n"
- .string "to go, do you?$"
-
-gText_May_Pokenav_2B4350:: @ 2B4350
- .string "MAY: There isn't a single TRAINER\n"
- .string "left in HOENN who doesn't know who\l"
- .string "you are, {PLAYER}{STRING 5}!\p"
- .string "When I tell people that I'm friends\n"
- .string "with you, {PLAYER}{STRING 5}, they're all\l"
- .string "surprised!$"
-
-gText_Brendan_Pokenav_2B43EF:: @ 2B43EF
- .string "BRENDAN: Hey, {PLAYER}!\p"
- .string "MR. BRINEY retired as a SAILOR,\n"
- .string "but I still see him out on the sea\l"
- .string "with his pet PEEKO sometimes.\p"
- .string "I guess he must love\n"
- .string "the sea still.$"
-
-gText_Brendan_Pokenav_2B4486:: @ 2B4486
- .string "BRENDAN: Hey, {PLAYER}!\p"
- .string "I don't get how little towns like\n"
- .string "PETALBURG and DEWFORD have GYMS.\p"
- .string "I mean, not when the big port of\n"
- .string "SLATEPORT doesn't have a GYM.\p"
- .string "When they finally build a GYM there,\n"
- .string "I should apply to be the LEADER.$"
-
-gText_Brendan_Pokenav_2B4560:: @ 2B4560
- .string "BRENDAN: Yo, {PLAYER}!\p"
- .string "Do you remember a guy named\n"
- .string "the CUTTER in RUSTBORO?\l"
- .string "He had a house there, right?\p"
- .string "Well, it turns out his little\n"
- .string "brother lives in MAUVILLE.\p"
- .string "Can you guess his name?\p"
- .string "… … … … … …\n"
- .string "… … … … … …\p"
- .string "The ROCK SMASH GUY!$"
-
-gText_Brendan_Pokenav_2B463F:: @ 2B463F
- .string "BRENDAN: This voice… {PLAYER}?\p"
- .string "They gave RUSTURF TUNNEL its name\n"
- .string "because it joins RUSTBORO and\l"
- .string "VERDANTURF.\p"
- .string "Did you know that?$"
-
-gText_Brendan_Pokenav_2B46B7:: @ 2B46B7
- .string "BRENDAN: {PLAYER}, what's up?\p"
- .string "Hey, I'm out on ROUTE 111 now.\p"
- .string "I'm going to rest up at an old\n"
- .string "lady's house north of the desert.\p"
- .string "If you're in the area, you should\n"
- .string "visit her, too.$"
-
-gText_Brendan_Pokenav_2B4761:: @ 2B4761
- .string "BRENDAN: Hey, {PLAYER}!\p"
- .string "Did you know about the MIRAGE\n"
- .string "TOWER in the desert?\p"
- .string "They say, like a mirage, it can be\n"
- .string "seen only sometimes.\p"
- .string "I'd like to see that!$"
-
-gText_Brendan_Pokenav_2B47F4:: @ 2B47F4
- .string "BRENDAN: Who's this? Oh, {PLAYER}?\n"
- .string "Guess what? I'm on ROUTE 119 now.\p"
- .string "There's a big river here, and\n"
- .string "it rains all the time.\p"
- .string "I got soaked to the bone!$"
-
-gText_Brendan_Pokenav_2B4882:: @ 2B4882
- .string "BRENDAN: {PLAYER}!\p"
- .string "MT. PYRE is a memorial to POKéMON\n"
- .string "whose lives have ended.\p"
- .string "That's probably why it's infested\n"
- .string "with many GHOST-type POKéMON!$"
-
-gText_Brendan_Pokenav_2B4909:: @ 2B4909
- .string "BRENDAN: Hey there, {PLAYER}.\p"
- .string "I was on my way back to the hot\n"
- .string "spring in LAVARIDGE.\p"
- .string "But around JAGGED PASS, I ran into\n"
- .string "some nasty-looking characters.\p"
- .string "Those creeps…\n"
- .string "I think they were TEAM MAGMA.$"
-
-gText_Brendan_Pokenav_2B49C4:: @ 2B49C4
- .string "BRENDAN: Hi, {PLAYER}!\n"
- .string "Did you catch the news?\p"
- .string "They say CAPT. STERN discovered\n"
- .string "the SEAFLOOR CAVERN while on his\l"
- .string "submarine expedition.$"
-
-gText_Brendan_Pokenav_2B4A44:: @ 2B4A44
- .string "BRENDAN: Hey there, {PLAYER}!\n"
- .string "Don't you think it's awesome?\p"
- .string "Even if you don't have a boat,\n"
- .string "you can cross the sea using\l"
- .string "a POKéMON's move.\p"
- .string "And, there's a move that lets you\n"
- .string "travel to the bottom of the sea.\p"
- .string "Man, POKéMON can do anything!$"
-
-gText_Brendan_Pokenav_2B4B28:: @ 2B4B28
- .string "BRENDAN: Howdy, {PLAYER}!\n"
- .string "How are you holding up?\p"
- .string "Ever found your way to the other\n"
- .string "side blocked while on the sea?\p"
- .string "Try diving deep underwater and\n"
- .string "following trenches at the bottom.\p"
- .string "When you get to the other side,\n"
- .string "come up to the surface. Simple!$"
-
-gText_Brendan_Pokenav_2B4C15:: @ 2B4C15
- .string "BRENDAN: Hey there, {PLAYER}!\p"
- .string "How's it going? Filling up your\n"
- .string "POKéDEX successfully?\p"
- .string "I heard a rumor that there are\n"
- .string "super-ancient POKéMON out there.\l"
- .string "And not just one--three!\p"
- .string "I'd love to catch even one…$"
-
-gText_Brendan_Pokenav_2B4CD8:: @ 2B4CD8
- .string "BRENDAN: {PLAYER}!\n"
- .string "I heard the rumors!\p"
- .string "You beat the SOOTOPOLIS GYM\n"
- .string "LEADER? Awesome!\p"
- .string "You're getting awful close now!$"
-
-gText_Brendan_Pokenav_2B4D46:: @ 2B4D46
- .string "BRENDAN: There isn't a TRAINER in\n"
- .string "all of HOENN who doesn't know who\l"
- .string "you are, {PLAYER}!\p"
- .string "When I tell people that I'm friends\n"
- .string "with you, {PLAYER}, they get pretty\l"
- .string "envious!$"
-
-gText_Wally_Pokenav_2B4DE2:: @ 2B4DE2
- .string "WALLY: Oh, {PLAYER}!\p"
- .string "I've been getting healthier and\n"
- .string "more physically fit.\p"
- .string "I hope I can become a TRAINER like\n"
- .string "you soon, {PLAYER}!$"
-
-gText_Wally_Pokenav_2B4E57:: @ 2B4E57
- .string "WALLY: {PLAYER}, hello!\p"
- .string "After RUSTURF TUNNEL went\n"
- .string "through, WANDA's been very happy!$"
-
-gText_Wally_Pokenav_2B4EA5:: @ 2B4EA5
- .string "WALLY: Oh, {PLAYER}!\p"
- .string "I… I left my uncle's place in\n"
- .string "VERDANTURF without telling anyone.\p"
- .string "I wonder if he's furious with me…\p"
- .string "{PLAYER}, you understand how\n"
- .string "I feel, don't you?$"
-
-gText_Wally_Pokenav_2B4F41:: @ 2B4F41
- .string "WALLY: {PLAYER}?\n"
- .string "It's me, WALLY!\p"
- .string "The world of TRAINERS is amazing!\p"
- .string "When I have my POKéMON with me,\n"
- .string "all sorts of people say hi!\p"
- .string "It's as if everyone's getting\n"
- .string "connected through POKéMON!$"
-
-gText_Wally_Pokenav_2B4FF3:: @ 2B4FF3
- .string "WALLY: {PLAYER}? It's awesome!\n"
- .string "That RALTS we caught together?\l"
- .string "It evolved, {PLAYER}!\p"
- .string "Maybe I'm talented…\p"
- .string "Oh, but I shouldn't get a big head\n"
- .string "like that!\p"
- .string "After all, it's the POKéMON that\n"
- .string "should be praised!$"
-
-gText_Wally_Pokenav_2B50B1:: @ 2B50B1
- .string "… … … … … …\n"
- .string "… … … … … …\p"
- .string "WALLY appears to be out of\n"
- .string "the POKéNAV's service area…$"
-
-gText_Wally_Pokenav_2B5100:: @ 2B5100
- .string "WALLY: Oh, {PLAYER}!\p"
- .string "Before I met you, I hardly ever\n"
- .string "left my house…\p"
- .string "But now, I'm on an adventure with\n"
- .string "my very own POKéMON…\p"
- .string "{PLAYER}…\n"
- .string "Thank you…$"
-
-gText_Scott_Pokenav_2B5184:: @ 2B5184
- .string "SCOTT: Howdy, {PLAYER}{STRING 5}!\p"
- .string "You know how POKéMON can be found\n"
- .string "everywhere?\p"
- .string "Like in the mountains, in the sea,\n"
- .string "in tall grass anywhere?\p"
- .string "Just like POKéMON, you can find\n"
- .string "TRAINERS everywhere, too.\p"
- .string "As a result, I have to hurry\n"
- .string "everywhere, too. Busy, busy!$"
-
-gText_Scott_Pokenav_2B5275:: @ 2B5275
- .string "SCOTT: I'm on ROUTE 119 right now.\n"
- .string "It's teeming with TRAINERS!\p"
- .string "It's also overgrown with tall grass\n"
- .string "everywhere, it seems.\p"
- .string "Walking around in shorts here\n"
- .string "makes me all ticklish!$"
-
-gText_Scott_Pokenav_2B5323:: @ 2B5323
- .string "SCOTT: Hi, hi, {PLAYER}{STRING 5}!\p"
- .string "Have you had the chance to climb\n"
- .string "MT. PYRE?\p"
- .string "The place is a memorial to POKéMON\n"
- .string "that have passed away.\p"
- .string "It's somewhere every TRAINER\n"
- .string "should climb to the top of once.$"
-
-gText_Scott_Pokenav_2B53DB:: @ 2B53DB
- .string "SCOTT: Hi, {PLAYER}{STRING 5}!\p"
- .string "I've been hearing about these odd\n"
- .string "gangs being a nuisance.\p"
- .string "TEAM MAGMA and TEAM AQUA,\n"
- .string "I think they were.\p"
- .string "I would think there'd be some\n"
- .string "skilled TRAINERS among them.\p"
- .string "…But if they're thugs…$"
-
-gText_Scott_Pokenav_2B54A5:: @ 2B54A5
- .string "SCOTT: Oh, hi, {PLAYER}{STRING 5}.\p"
- .string "Might there be tough TRAINERS\n"
- .string "at the bottom of the sea?\p"
- .string "I can't go check for myself.\n"
- .string "I can't swim, for one.\l"
- .string "And I don't raise POKéMON…$"
-
-gText_Scott_Pokenav_2B5541:: @ 2B5541
- .string "SCOTT: Hi, hi, {PLAYER}{STRING 5}!\p"
- .string "You know that you can challenge\n"
- .string "the POKéMON LEAGUE when you've\l"
- .string "collected all the GYM BADGES?\p"
- .string "With your talent, becoming the\n"
- .string "CHAMPION isn't a pipe dream.\p"
- .string "But did you know?\n"
- .string "There's somewhere even better.\p"
- .string "But, that's all I'm willing to say\n"
- .string "for the time being.\p"
- .string "It's something you can look\n"
- .string "forward to.\p"
- .string "When you've won your way through\n"
- .string "the POKéMON LEAGUE into the HALL\l"
- .string "OF FAME!$"
-
-gText_Scott_Pokenav_2B56CA:: @ 2B56CA
- .string "… … … … … …\n"
- .string "… … … … … …\p"
- .string "SCOTT appears to be out of\n"
- .string "the POKéNAV's service area…$"
-
-gText_Norman_Pokenav_2B5719:: @ 82B5719
- .string "DAD: In RUSTBORO, there's a man\n"
- .string "that goes by the odd name of\l"
- .string "the CUTTER.\p"
- .string "If you're in the area, you should\n"
- .string "pay him a visit.$"
-
-gText_Norman_Pokenav_2B5795:: @ 82B5795
- .string "DAD: Hm… Little by little, but also\n"
- .string "very surely, you're getting\l"
- .string "tougher, {PLAYER}.\p"
- .string "The stronger you get, the farther\n"
- .string "and higher you soar from Mother\l"
- .string "and me…\p"
- .string "This feeling is hard to explain.$"
-
-gText_Norman_Pokenav_2B584D:: @ 82B584D
- .string "DAD: I see…\n"
- .string "You've collected four GYM BADGES…\p"
- .string "There's no avoiding it now.\n"
- .string "We will battle like I promised.\p"
- .string "Come anytime.\n"
- .string "We'll all be waiting for you!$"
-
-gText_Norman_Pokenav_2B58E3:: @ 82B58E3
- .string "DAD: {PLAYER}! You'd better go visit\n"
- .string "Mother every so often.\p"
- .string "I'm going to remain here and\n"
- .string "redouble my training.\p"
- .string "The way of battling is deep\n"
- .string "and unforgiving!$"
-
-gText_Norman_Pokenav_2B5979:: @ 82B5979
- .string "DAD: Oh, hi, {PLAYER}!\p"
- .string "What's that? MAGMA EMBLEM?\n"
- .string "I don't know what that's about.\p"
- .string "But with a name like that, it may\n"
- .string "be somehow linked to a volcano!$"
-
-gText_Norman_Pokenav_2B5A07:: @ 82B5A07
- .string "DAD: Hiyah! Haah! Dwah!\p"
- .string "…Oh? {PLAYER}!\p"
- .string "You caught me right in the middle\n"
- .string "of a POKéMON training session!$"
-
-gText_Norman_Pokenav_2B5A69:: @ 82B5A69
- .string "DAD: {PLAYER}!\p"
- .string "Who would've thought you'd become\n"
- .string "the POKéMON LEAGUE CHAMPION…\p"
- .string "Okay!\n"
- .string "I won't be left behind!$"
-
-gText_Norman_Pokenav_2B5ACF:: @ 82B5ACF
- .string "DAD: Hm? {PLAYER}?\n"
- .string "What good timing!\p"
- .string "This time, I'm going to challenge\n"
- .string "you to battle.\p"
- .string "I'm waiting in the PETALBURG GYM.\n"
- .string "Accept my challenge anytime!$"
-
-gText_Norman_Pokenav_2B5B5E:: @ 82B5B5E
- .string "DAD: …You amaze me, {PLAYER}.\n"
- .string "How much higher will you soar?$"
-
-gText_Steven_Pokenav_2B5B95:: @ 82B5B95
- .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
- .string "Have you been to MAUVILLE\n"
- .string "already?\p"
- .string "You should visit the BIKE SHOP\n"
- .string "and get a MACH BIKE.\p"
- .string "Then, try exploring the GRANITE\n"
- .string "CAVE thoroughly.\p"
- .string "You may make a new discovery\n"
- .string "there.$"
-
-gText_Steven_Pokenav_2B5C53:: @ 82B5C53
- .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
- .string "I've met a lot of different\n"
- .string "TRAINERS so far.\p"
- .string "But you're one of a kind.\n"
- .string "You're not like anyone else.$"
-
-gText_Steven_Pokenav_2B5CC9:: @ 82B5CC9
- .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
- .string "When you're on an adventure with\n"
- .string "your POKéMON, what do you think?\p"
- .string "Do you consider them to be strong\n"
- .string "partners?\p"
- .string "Do you think of them as fun\n"
- .string "companions?\p"
- .string "Depending on how you think, your\n"
- .string "adventure's significance changes.$"
-
-gText_Steven_Pokenav_2B5DB4:: @ 82B5DB4
- .string "STEVEN: Hello?\n"
- .string "{PLAYER}{STRING 5}?\p"
- .string "I'm involved in a spot of trouble\n"
- .string "at the SPACE CENTER.\p"
- .string "I'm sorry, but I can't talk now.\n"
- .string "Bye!$"
-
-gText_Steven_Pokenav_2B5E26:: @ 82B5E26
- .string "STEVEN: Oh!\n"
- .string "{PLAYER}{STRING 5}!\p"
- .string "There's no need to talk.\n"
- .string "It's past time for talking.\p"
- .string "You have to believe in yourself\n"
- .string "and do what's right.$"
-
-gText_Steven_Pokenav_2B5EA2:: @ 82B5EA2
- .string "… … … … … …\p"
- .string "STEVEN appears not to be getting\n"
- .string "the call…$"
-
-gText_Steven_Pokenav_2B5ED9:: @ 82B5ED9
- .string "STEVEN: {PLAYER}{STRING 5}… Congratulations\n"
- .string "for entering the HALL OF FAME.\p"
- .string "… … … … … …\n"
- .string "… … … … … …\p"
- .string "I hope we can meet again\n"
- .string "somewhere!$"
-
-Route101_Text_2B5F52: @ 82B5F52
- .string "PROF. BIRCH: Oh, {PLAYER}{KUN}!\n"
- .string "I've already heard about you!\p"
- .string "It seems your POKéNAV's been\n"
- .string "upgraded with MATCH CALL.\p"
- .string "Well, I should register, too!\p"
- .string "That way, I'd be able to examine\n"
- .string "your POKéDEX even while you're\l"
- .string "out in the field.\p"
- .string "… … … … … …$"
-
-Route101_Text_2B603A: @ 82B603A
- .string "Registered PROF. BIRCH\n"
- .string "in the POKéNAV.$"
-
- .string "PROF. BIRCH: When one has both\n"
- .string "the POKéDEX and POKéNAV, studying\l"
- .string "POKéMON becomes more fun, eh?$"
-
-gText_MrStone_Pokenav_2B60C0:: @ 82B60C0
- .string "MR. STONE: Oh? {PLAYER}{STRING 5}!\p"
- .string "Since you called me, the POKéNAV\n"
- .string "must be working properly!\p"
- .string "Other people will be registered,\n"
- .string "so try calling them up, too!\p"
- .string "Good! Good!\n"
- .string "You seem to be quite happy!\p"
- .string "Hm…\n"
- .string "How could I know that?\p"
- .string "It's because I'm looking down at\n"
- .string "you from my office window!\p"
- .string "Wahahaha!\n"
- .string "See you again!$"
-
-gText_MrStone_Pokenav_2B61E6:: @ 82B61E6
- .string "MR. STONE: Oh? {PLAYER}{STRING 5}!\p"
- .string "What's wrong? Have you forgotten\n"
- .string "about that little errand of mine?\p"
- .string "I need you to deliver my letter\n"
- .string "to STEVEN in DEWFORD.\p"
- .string "After that, deliver our parcel to\n"
- .string "CAPT. STERN in SLATEPORT.\p"
- .string "You remember, don't you?\p"
- .string "Now, since I am a busy PRESIDENT,\n"
- .string "I have to go! Bye-bye!$"
-
-gText_MrStone_Pokenav_2B6302:: @ 82B6302
- .string "MR. STONE: Oh! {PLAYER}{STRING 5}!\p"
- .string "Ah, so you've met STEVEN!\n"
- .string "I'd better reward you, then!\p"
- .string "When you visit RUSTBORO again,\n"
- .string "come see me at my office.\p"
- .string "I'll be waiting for you!$"
-
-gText_MrStone_Pokenav_2B63A0:: @ 82B63A0
- .string "MR. STONE: Oh! {PLAYER}{STRING 5}!\p"
- .string "Did you know that DEVON was\n"
- .string "digging the RUSTURF TUNNEL?\p"
- .string "But we shut down the operation to\n"
- .string "protect the POKéMON in the area.\p"
- .string "It's a no-brainer, really.\p"
- .string "It's more important to let POKéMON\n"
- .string "live in peace than worry about our\l"
- .string "own convenience.$"
-
-gText_MrStone_Pokenav_2B64A2:: @ 82B64A2
- .string "MR. STONE: Hello, hello, {PLAYER}{STRING 5}!\p"
- .string "I heard from someone in PETALBURG\n"
- .string "that you're NORMAN's child!\p"
- .string "No wonder you're such a capable\n"
- .string "being!$"
-
-gText_MrStone_Pokenav_2B6526:: @ 82B6526
- .string "MR. STONE: What's that?\p"
- .string "You battled your own father and\n"
- .string "defeated him?\p"
- .string "That's astounding!\p"
- .string "I had no idea that I befriended\n"
- .string "someone so special! Wahaha!$"
-
-gText_MrStone_Pokenav_2B65BB:: @ 82B65BB
- .string "Hello!\n"
- .string "This is DEVON CORPORATI…\l"
- .string "Oh, hello, {PLAYER}!\p"
- .string "Our PRESIDENT was here a little\n"
- .string "while ago, but he's gone out.\p"
- .string "Our PRESIDENT is busy, but you\n"
- .string "seem to be just as busy, {PLAYER}.$"
-
-gText_MrStone_Pokenav_2B6664:: @ 82B6664
- .string "…Huh? …What's that?\p"
- .string "GROU… Yes? …DON?\p"
- .string "You're breaking up…\n"
- .string "…can't hear…\p"
- .string "BZZZZ…$"
-
-gText_MrStone_Pokenav_2B66B1:: @ 82B66B1
- .string "…Huh? …What's that?\p"
- .string "Seaflo… Yes? …Caver…?\p"
- .string "You're breaking up…\n"
- .string "…can't hear…\p"
- .string "BZZZZ…$"
-
-gText_MrStone_Pokenav_2B6703:: @ 82B6703
- .string "MR. STONE: {PLAYER}{STRING 5}! It's me!\p"
- .string "You were apparently involved in all\n"
- .string "sorts of things, but I, being busy,\l"
- .string "haven't a clue exactly what!\p"
- .string "However, I urge you to take\n"
- .string "the road you believe in and walk it.\p"
- .string "I'll always be in your corner!\n"
- .string "Take care!$"
-
-gText_MrStone_Pokenav_2B67ED:: @ 82B67ED
- .string "MR. STONE: … … … … … …\n"
- .string "Is this maybe {PLAYER}{STRING 5}?\p"
- .string "Your voice is so full of confidence,\n"
- .string "I didn't recognize you right off!\p"
- .string "Hm! You must come visit us at DEVON\n"
- .string "sometime!$"
-
+ .include "data/text/match_call.inc"
.include "data/scripts/apprentice.inc"
gBattleDomeOpponentPotential1::
@@ -10059,7 +7106,7 @@ PacifidlogTown_PokemonCenter_1F_Text_2C7E7A: @ 82C7E7A
SlateportCity_PokemonFanClub_EventScript_2C7F16:: @ 82C7F16
lock
faceplayer
- goto_if_set FLAG_0x1B1, SlateportCity_PokemonFanClub_EventScript_2C7F74
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SWAGGER, SlateportCity_PokemonFanClub_EventScript_2C7F74
msgbox SlateportCity_PokemonFanClub_Text_2C6E37, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_2C7F6A
@@ -10071,7 +7118,7 @@ SlateportCity_PokemonFanClub_EventScript_2C7F16:: @ 82C7F16
call SlateportCity_PokemonFanClub_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_2C7F6A
- setflag FLAG_0x1B1
+ setflag FLAG_MOVE_TUTOR_TAUGHT_SWAGGER
goto SlateportCity_PokemonFanClub_EventScript_2C7F74
end
@@ -10088,7 +7135,7 @@ SlateportCity_PokemonFanClub_EventScript_2C7F74:: @ 82C7F74
MauvilleCity_EventScript_2C7F7E:: @ 82C7F7E
lock
faceplayer
- goto_if_set FLAG_0x1B2, MauvilleCity_EventScript_2C7FDC
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT, MauvilleCity_EventScript_2C7FDC
msgbox MauvilleCity_Text_2C6FDB, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MauvilleCity_EventScript_2C7FD2
@@ -10100,7 +7147,7 @@ MauvilleCity_EventScript_2C7F7E:: @ 82C7F7E
call MauvilleCity_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq MauvilleCity_EventScript_2C7FD2
- setflag FLAG_0x1B2
+ setflag FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT
goto MauvilleCity_EventScript_2C7FDC
end
@@ -10117,7 +7164,7 @@ MauvilleCity_EventScript_2C7FDC:: @ 82C7FDC
VerdanturfTown_PokemonCenter_1F_EventScript_2C7FE6:: @ 82C7FE6
lock
faceplayer
- goto_if_set FLAG_0x1B3, VerdanturfTown_PokemonCenter_1F_EventScript_2C8044
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER, VerdanturfTown_PokemonCenter_1F_EventScript_2C8044
msgbox VerdanturfTown_PokemonCenter_1F_Text_2C7174, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq VerdanturfTown_PokemonCenter_1F_EventScript_2C803A
@@ -10129,7 +7176,7 @@ VerdanturfTown_PokemonCenter_1F_EventScript_2C7FE6:: @ 82C7FE6
call VerdanturfTown_PokemonCenter_1F_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq VerdanturfTown_PokemonCenter_1F_EventScript_2C803A
- setflag FLAG_0x1B3
+ setflag FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER
goto VerdanturfTown_PokemonCenter_1F_EventScript_2C8044
end
@@ -10146,7 +7193,7 @@ VerdanturfTown_PokemonCenter_1F_EventScript_2C8044:: @ 82C8044
LavaridgeTown_House_EventScript_2C804E:: @ 82C804E
lock
faceplayer
- goto_if_set FLAG_0x1B4, LavaridgeTown_House_EventScript_2C80AC
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_MIMIC, LavaridgeTown_House_EventScript_2C80AC
msgbox LavaridgeTown_House_Text_2C72B6, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_House_EventScript_2C80A2
@@ -10158,7 +7205,7 @@ LavaridgeTown_House_EventScript_2C804E:: @ 82C804E
call LavaridgeTown_House_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_House_EventScript_2C80A2
- setflag FLAG_0x1B4
+ setflag FLAG_MOVE_TUTOR_TAUGHT_MIMIC
goto LavaridgeTown_House_EventScript_2C80AC
end
@@ -10175,7 +7222,7 @@ LavaridgeTown_House_EventScript_2C80AC:: @ 82C80AC
FallarborTown_Mart_EventScript_2C80B6:: @ 82C80B6
lock
faceplayer
- goto_if_set FLAG_0x1B5, FallarborTown_Mart_EventScript_2C8114
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_METRONOME, FallarborTown_Mart_EventScript_2C8114
msgbox FallarborTown_Mart_Text_2C7449, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq FallarborTown_Mart_EventScript_2C810A
@@ -10187,7 +7234,7 @@ FallarborTown_Mart_EventScript_2C80B6:: @ 82C80B6
call FallarborTown_Mart_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq FallarborTown_Mart_EventScript_2C810A
- setflag FLAG_0x1B5
+ setflag FLAG_MOVE_TUTOR_TAUGHT_METRONOME
goto FallarborTown_Mart_EventScript_2C8114
end
@@ -10204,7 +7251,7 @@ FallarborTown_Mart_EventScript_2C8114:: @ 82C8114
FortreeCity_House2_EventScript_2C811E:: @ 82C811E
lock
faceplayer
- goto_if_set FLAG_0x1B6, FortreeCity_House2_EventScript_2C817C
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK, FortreeCity_House2_EventScript_2C817C
msgbox FortreeCity_House2_Text_2C7637, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq FortreeCity_House2_EventScript_2C8172
@@ -10216,7 +7263,7 @@ FortreeCity_House2_EventScript_2C811E:: @ 82C811E
call FortreeCity_House2_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq FortreeCity_House2_EventScript_2C8172
- setflag FLAG_0x1B6
+ setflag FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK
goto FortreeCity_House2_EventScript_2C817C
end
@@ -10233,7 +7280,7 @@ FortreeCity_House2_EventScript_2C817C:: @ 82C817C
LilycoveCity_DepartmentStoreRooftop_EventScript_2C8186:: @ 82C8186
lock
faceplayer
- goto_if_set FLAG_0x1B7, LilycoveCity_DepartmentStoreRooftop_EventScript_2C81E4
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE, LilycoveCity_DepartmentStoreRooftop_EventScript_2C81E4
msgbox LilycoveCity_DepartmentStoreRooftop_Text_2C77C6, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_2C81DA
@@ -10245,7 +7292,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_2C8186:: @ 82C8186
call LilycoveCity_DepartmentStoreRooftop_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_2C81DA
- setflag FLAG_0x1B7
+ setflag FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE
goto LilycoveCity_DepartmentStoreRooftop_EventScript_2C81E4
end
@@ -10262,7 +7309,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_2C81E4:: @ 82C81E4
MossdeepCity_EventScript_2C81EE:: @ 82C81EE
lock
faceplayer
- goto_if_set FLAG_0x1B8, MossdeepCity_EventScript_2C824C
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH, MossdeepCity_EventScript_2C824C
msgbox MossdeepCity_Text_2C79A6, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_EventScript_2C8242
@@ -10274,7 +7321,7 @@ MossdeepCity_EventScript_2C81EE:: @ 82C81EE
call MossdeepCity_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_EventScript_2C8242
- setflag FLAG_0x1B8
+ setflag FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH
goto MossdeepCity_EventScript_2C824C
end
@@ -10291,7 +7338,7 @@ MossdeepCity_EventScript_2C824C:: @ 82C824C
SootopolisCity_PokemonCenter_1F_EventScript_2C8256:: @ 82C8256
lock
faceplayer
- goto_if_set FLAG_0x1B9, SootopolisCity_PokemonCenter_1F_EventScript_2C82B4
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE, SootopolisCity_PokemonCenter_1F_EventScript_2C82B4
msgbox SootopolisCity_PokemonCenter_1F_Text_2C7B8E, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_PokemonCenter_1F_EventScript_2C82AA
@@ -10303,7 +7350,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_2C8256:: @ 82C8256
call SootopolisCity_PokemonCenter_1F_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_PokemonCenter_1F_EventScript_2C82AA
- setflag FLAG_0x1B9
+ setflag FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE
goto SootopolisCity_PokemonCenter_1F_EventScript_2C82B4
end
@@ -10320,7 +7367,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_2C82B4:: @ 82C82B4
PacifidlogTown_PokemonCenter_1F_EventScript_2C82BE:: @ 82C82BE
lock
faceplayer
- goto_if_set FLAG_0x1BA, PacifidlogTown_PokemonCenter_1F_EventScript_2C831C
+ goto_if_set FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION, PacifidlogTown_PokemonCenter_1F_EventScript_2C831C
msgbox PacifidlogTown_PokemonCenter_1F_Text_2C7CFA, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq PacifidlogTown_PokemonCenter_1F_EventScript_2C8312
@@ -10332,7 +7379,7 @@ PacifidlogTown_PokemonCenter_1F_EventScript_2C82BE:: @ 82C82BE
call PacifidlogTown_PokemonCenter_1F_EventScript_2C8326
compare VAR_RESULT, 0
goto_if_eq PacifidlogTown_PokemonCenter_1F_EventScript_2C8312
- setflag FLAG_0x1BA
+ setflag FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION
goto PacifidlogTown_PokemonCenter_1F_EventScript_2C831C
end
diff --git a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc
index 796b91c02..011ea4a07 100644
--- a/data/maps/AbandonedShip_CaptainsOffice/scripts.inc
+++ b/data/maps/AbandonedShip_CaptainsOffice/scripts.inc
@@ -4,7 +4,7 @@ AbandonedShip_CaptainsOffice_MapScripts:: @ 82387E1
AbandonedShip_CaptainsOffice_EventScript_2387E2:: @ 82387E2
lock
faceplayer
- goto_if_set FLAG_TRADED_SCANNER_TO_STERN, AbandonedShip_CaptainsOffice_EventScript_23881A
+ goto_if_set FLAG_EXCHANGED_SCANNER, AbandonedShip_CaptainsOffice_EventScript_23881A
checkitem ITEM_SCANNER, 1
compare VAR_RESULT, 1
goto_if_eq AbandonedShip_CaptainsOffice_EventScript_238810
diff --git a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc
index cfdf40163..e89d72c23 100644
--- a/data/maps/AbandonedShip_Corridors_B1F/scripts.inc
+++ b/data/maps/AbandonedShip_Corridors_B1F/scripts.inc
@@ -8,8 +8,8 @@ AbandonedShip_Corridors_B1F_MapScript1_237D8F: @ 8237D8F
end
AbandonedShip_Corridors_B1F_MapScript1_237D98: @ 8237D98
- call_if_unset FLAG_0x0EF, AbandonedShip_Corridors_B1F_EventScript_237DAB
- call_if_set FLAG_0x0EF, AbandonedShip_Corridors_B1F_EventScript_237DB5
+ call_if_unset FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_237DAB
+ call_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_237DB5
end
AbandonedShip_Corridors_B1F_EventScript_237DAB:: @ 8237DAB
@@ -26,14 +26,14 @@ AbandonedShip_Corridors_B1F_EventScript_237DBF:: @ 8237DBF
AbandonedShip_Corridors_B1F_EventScript_237DC8:: @ 8237DC8
lockall
- goto_if_set FLAG_0x0EF, AbandonedShip_Corridors_B1F_EventScript_237E09
+ goto_if_set FLAG_USED_STORAGE_KEY, AbandonedShip_Corridors_B1F_EventScript_237E09
checkitem ITEM_STORAGE_KEY, 1
compare VAR_RESULT, 0
goto_if_eq AbandonedShip_Corridors_B1F_EventScript_237DFF
msgbox AbandonedShip_Corridors_B1F_Text_237F4B, MSGBOX_DEFAULT
playse SE_PIN
takeitem ITEM_STORAGE_KEY, 1
- setflag FLAG_0x0EF
+ setflag FLAG_USED_STORAGE_KEY
call AbandonedShip_Corridors_B1F_EventScript_237DB5
special DrawWholeMapView
releaseall
diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc
index cb60d7962..f8b5bcc65 100644
--- a/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc
+++ b/data/maps/AbandonedShip_HiddenFloorCorridors/scripts.inc
@@ -8,14 +8,14 @@ AbandonedShip_HiddenFloorCorridors_MapScript1_238977: @ 8238977
end
AbandonedShip_HiddenFloorCorridors_MapScript1_238980: @ 8238980
- call_if_unset FLAG_0x0F0, AbandonedShip_HiddenFloorCorridors_EventScript_2389F1
- call_if_unset FLAG_0x0F1, AbandonedShip_HiddenFloorCorridors_EventScript_2389FB
- call_if_unset FLAG_0x0F2, AbandonedShip_HiddenFloorCorridors_EventScript_238A05
- call_if_unset FLAG_0x0F3, AbandonedShip_HiddenFloorCorridors_EventScript_238A0F
- call_if_set FLAG_0x0F0, AbandonedShip_HiddenFloorCorridors_EventScript_2389C9
- call_if_set FLAG_0x0F1, AbandonedShip_HiddenFloorCorridors_EventScript_2389D3
- call_if_set FLAG_0x0F2, AbandonedShip_HiddenFloorCorridors_EventScript_2389DD
- call_if_set FLAG_0x0F3, AbandonedShip_HiddenFloorCorridors_EventScript_2389E7
+ call_if_unset FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389F1
+ call_if_unset FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389FB
+ call_if_unset FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238A05
+ call_if_unset FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238A0F
+ call_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389C9
+ call_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389D3
+ call_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389DD
+ call_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_2389E7
end
AbandonedShip_HiddenFloorCorridors_EventScript_2389C9:: @ 82389C9
@@ -52,14 +52,14 @@ AbandonedShip_HiddenFloorCorridors_EventScript_238A0F:: @ 8238A0F
AbandonedShip_HiddenFloorCorridors_EventScript_238A19:: @ 8238A19
lockall
- goto_if_set FLAG_0x0F0, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
+ goto_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
checkitem ITEM_ROOM_1_KEY, 1
compare VAR_RESULT, 0
goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_238AF5
msgbox AbandonedShip_HiddenFloorCorridors_Text_238BF7, MSGBOX_DEFAULT
playse SE_PIN
takeitem ITEM_ROOM_1_KEY, 1
- setflag FLAG_0x0F0
+ setflag FLAG_USED_ROOM_1_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_2389C9
special DrawWholeMapView
releaseall
@@ -67,14 +67,14 @@ AbandonedShip_HiddenFloorCorridors_EventScript_238A19:: @ 8238A19
AbandonedShip_HiddenFloorCorridors_EventScript_238A50:: @ 8238A50
lockall
- goto_if_set FLAG_0x0F1, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
+ goto_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
checkitem ITEM_ROOM_2_KEY, 1
compare VAR_RESULT, 0
goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_238AFF
msgbox AbandonedShip_HiddenFloorCorridors_Text_238BF7, MSGBOX_DEFAULT
playse SE_PIN
takeitem ITEM_ROOM_2_KEY, 1
- setflag FLAG_0x0F1
+ setflag FLAG_USED_ROOM_2_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_2389D3
special DrawWholeMapView
releaseall
@@ -82,14 +82,14 @@ AbandonedShip_HiddenFloorCorridors_EventScript_238A50:: @ 8238A50
AbandonedShip_HiddenFloorCorridors_EventScript_238A87:: @ 8238A87
lockall
- goto_if_set FLAG_0x0F2, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
+ goto_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
checkitem ITEM_ROOM_4_KEY, 1
compare VAR_RESULT, 0
goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_238B09
msgbox AbandonedShip_HiddenFloorCorridors_Text_238BF7, MSGBOX_DEFAULT
playse SE_PIN
takeitem ITEM_ROOM_4_KEY, 1
- setflag FLAG_0x0F2
+ setflag FLAG_USED_ROOM_4_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_2389DD
special DrawWholeMapView
releaseall
@@ -97,14 +97,14 @@ AbandonedShip_HiddenFloorCorridors_EventScript_238A87:: @ 8238A87
AbandonedShip_HiddenFloorCorridors_EventScript_238ABE:: @ 8238ABE
lockall
- goto_if_set FLAG_0x0F3, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
+ goto_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_238B1D
checkitem ITEM_ROOM_6_KEY, 1
compare VAR_RESULT, 0
goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_238B13
msgbox AbandonedShip_HiddenFloorCorridors_Text_238BF7, MSGBOX_DEFAULT
playse SE_PIN
takeitem ITEM_ROOM_6_KEY, 1
- setflag FLAG_0x0F3
+ setflag FLAG_USED_ROOM_6_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_2389E7
special DrawWholeMapView
releaseall
diff --git a/data/maps/AncientTomb/scripts.inc b/data/maps/AncientTomb/scripts.inc
index 133db13a5..45bb9e007 100644
--- a/data/maps/AncientTomb/scripts.inc
+++ b/data/maps/AncientTomb/scripts.inc
@@ -17,7 +17,7 @@ AncientTomb_EventScript_238FCD:: @ 8238FCD
AncientTomb_MapScript1_238FE1: @ 8238FE1
setflag FLAG_LANDMARK_ANCIENT_TOMB
- call_if_unset FLAG_0x1BD, AncientTomb_EventScript_238FEE
+ call_if_unset FLAG_DEFEATED_REGISTEEL, AncientTomb_EventScript_238FEE
end
AncientTomb_EventScript_238FEE:: @ 8238FEE
@@ -78,12 +78,12 @@ AncientTomb_EventScript_23905A:: @ 823905A
goto_if_eq AncientTomb_EventScript_2390AA
compare VAR_RESULT, 5
goto_if_eq AncientTomb_EventScript_2390AA
- setflag FLAG_0x1BD
+ setflag FLAG_DEFEATED_REGISTEEL
release
end
AncientTomb_EventScript_2390A1:: @ 82390A1
- setflag FLAG_0x1BD
+ setflag FLAG_DEFEATED_REGISTEEL
goto AncientTomb_EventScript_27376D
end
diff --git a/data/maps/AquaHideout_1F/scripts.inc b/data/maps/AquaHideout_1F/scripts.inc
index 0b44908e0..653e0f7c7 100644
--- a/data/maps/AquaHideout_1F/scripts.inc
+++ b/data/maps/AquaHideout_1F/scripts.inc
@@ -4,8 +4,8 @@ AquaHideout_1F_MapScripts:: @ 8233493
AquaHideout_1F_EventScript_233494:: @ 8233494
lock
faceplayer
- goto_if_set FLAG_0x06F, AquaHideout_1F_EventScript_2334BC
- goto_if_set FLAG_0x0D4, AquaHideout_1F_EventScript_2334B2
+ goto_if_set FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, AquaHideout_1F_EventScript_2334BC
+ goto_if_set FLAG_RECEIVED_RED_OR_BLUE_ORB, AquaHideout_1F_EventScript_2334B2
msgbox AquaHideout_1F_Text_23351D, MSGBOX_DEFAULT
release
end
@@ -23,8 +23,8 @@ AquaHideout_1F_EventScript_2334BC:: @ 82334BC
AquaHideout_1F_EventScript_2334C6:: @ 82334C6
lock
faceplayer
- goto_if_set FLAG_0x06F, AquaHideout_1F_EventScript_2334EE
- goto_if_set FLAG_0x0D4, AquaHideout_1F_EventScript_2334E4
+ goto_if_set FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, AquaHideout_1F_EventScript_2334EE
+ goto_if_set FLAG_RECEIVED_RED_OR_BLUE_ORB, AquaHideout_1F_EventScript_2334E4
msgbox AquaHideout_1F_Text_233739, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/AquaHideout_B1F/scripts.inc b/data/maps/AquaHideout_B1F/scripts.inc
index 6a388e625..1763bcd5d 100644
--- a/data/maps/AquaHideout_B1F/scripts.inc
+++ b/data/maps/AquaHideout_B1F/scripts.inc
@@ -15,8 +15,8 @@ AquaHideout_B1F_EventScript_2339BC:: @ 82339BC
return
AquaHideout_B1F_MapScript1_2339D0: @ 82339D0
- call_if_unset FLAG_0x1C4, AquaHideout_B1F_EventScript_2339E3
- call_if_unset FLAG_0x1C5, AquaHideout_B1F_EventScript_2339E7
+ call_if_unset FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT, AquaHideout_B1F_EventScript_2339E3
+ call_if_unset FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT, AquaHideout_B1F_EventScript_2339E7
end
AquaHideout_B1F_EventScript_2339E3:: @ 82339E3
@@ -45,12 +45,12 @@ AquaHideout_B1F_EventScript_2339EB:: @ 82339EB
goto_if_eq AquaHideout_B1F_EventScript_233A2F
compare VAR_RESULT, 5
goto_if_eq AquaHideout_B1F_EventScript_233A2F
- setflag FLAG_0x1C4
+ setflag FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT
release
end
AquaHideout_B1F_EventScript_233A2F:: @ 8233A2F
- setflag FLAG_0x1C4
+ setflag FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT
goto AquaHideout_B1F_EventScript_27376D
end
@@ -72,12 +72,12 @@ AquaHideout_B1F_EventScript_233A38:: @ 8233A38
goto_if_eq AquaHideout_B1F_EventScript_233A7C
compare VAR_RESULT, 5
goto_if_eq AquaHideout_B1F_EventScript_233A7C
- setflag FLAG_0x1C5
+ setflag FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT
release
end
AquaHideout_B1F_EventScript_233A7C:: @ 8233A7C
- setflag FLAG_0x1C5
+ setflag FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT
goto AquaHideout_B1F_EventScript_27376D
end
@@ -165,4 +165,3 @@ AquaHideout_B1F_Text_233D6E: @ 8233D6E
AquaHideout_B1F_Text_233D84: @ 8233D84
.string "If you have a cool uniform, you look\n"
.string "good even in a loss, don't you think?$"
-
diff --git a/data/maps/AquaHideout_B2F/scripts.inc b/data/maps/AquaHideout_B2F/scripts.inc
index ab120193d..ba20cb681 100644
--- a/data/maps/AquaHideout_B2F/scripts.inc
+++ b/data/maps/AquaHideout_B2F/scripts.inc
@@ -3,7 +3,7 @@ AquaHideout_B2F_MapScripts:: @ 8233DCF
.byte 0
AquaHideout_B2F_MapScript1_233DD5: @ 8233DD5
- call_if_set FLAG_0x070, AquaHideout_B2F_EventScript_233DDF
+ call_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, AquaHideout_B2F_EventScript_233DDF
end
AquaHideout_B2F_EventScript_233DDF:: @ 8233DDF
@@ -46,7 +46,7 @@ AquaHideout_B2F_EventScript_233E25:: @ 8233E25
applymovement VAR_0x8008, AquaHideout_B2F_Movement_27259E
waitmovement 0
msgbox AquaHideout_B2F_Text_233FF2, MSGBOX_DEFAULT
- setflag FLAG_0x070
+ setflag FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE
setflag FLAG_HIDE_LILYCOVE_CITY_AQUA_GRUNTS
release
end
@@ -156,4 +156,3 @@ AquaHideout_B2F_Text_2342CC: @ 82342CC
AquaHideout_B2F_Text_2342FF: @ 82342FF
.string "I'll have to learn about how I can\n"
.string "battle more effectively…$"
-
diff --git a/data/maps/ArtisanCave_B1F/scripts.inc b/data/maps/ArtisanCave_B1F/scripts.inc
index 059343a56..e46737583 100644
--- a/data/maps/ArtisanCave_B1F/scripts.inc
+++ b/data/maps/ArtisanCave_B1F/scripts.inc
@@ -3,6 +3,6 @@ ArtisanCave_B1F_MapScripts:: @ 823AFAD
.byte 0
ArtisanCave_B1F_MapScript1_23AFB3: @ 823AFB3
- setflag FLAG_0x8DF
+ setflag FLAG_LANDMARK_ARTISAN_CAVE
end
diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
index 1e953db23..b89d2e061 100644
--- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
@@ -513,7 +513,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_2421FC:: @ 82421FC
end
BattleFrontier_BattleTowerBattleRoom_EventScript_24220E:: @ 824220E
- setflag FLAG_0x077
+ setflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE
goto BattleFrontier_BattleTowerBattleRoom_EventScript_241C03
end
diff --git a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
index 0479641a7..3dbd5eca3 100644
--- a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
@@ -40,7 +40,7 @@ BattleFrontier_BattleTowerElevator_EventScript_241A55:: @ 8241A55
return
BattleFrontier_BattleTowerElevator_EventScript_241A5F:: @ 8241A5F
- goto_if_unset FLAG_0x152, BattleFrontier_BattleTowerElevator_EventScript_241A7C
+ goto_if_unset FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerElevator_EventScript_241A7C
warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR2, 255, 7, 2
waitstate
return
diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
index 29315eff5..e1bec2c21 100644
--- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
@@ -15,7 +15,7 @@ BattleFrontier_BattleTowerLobby_MapScript1_23E694: @ 823E694
special CallApprenticeFunction
compare VAR_0x8004, 0
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23E6B5
- goto_if_set FLAG_0x934, BattleFrontier_BattleTowerLobby_EventScript_23E6C1
+ goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, BattleFrontier_BattleTowerLobby_EventScript_23E6C1
BattleFrontier_BattleTowerLobby_EventScript_23E6B5:: @ 823E6B5
clearflag FLAG_HIDE_APPRENTICE
@@ -120,7 +120,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23E7E2:: @ 823E7E2
BattleFrontier_BattleTowerLobby_EventScript_23E7F2:: @ 823E7F2
compare VAR_FRONTIER_BATTLE_MODE, 2
goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_23E81E
- goto_if_set FLAG_0x152, BattleFrontier_BattleTowerLobby_EventScript_23E81E
+ goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerLobby_EventScript_23E81E
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
special sub_8161F74
@@ -398,7 +398,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EC08:: @ 823EC08
lock
faceplayer
setvar VAR_FRONTIER_FACILITY, 0
- clearflag FLAG_0x152
+ clearflag FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER
special SavePlayerParty
msgbox BattleFrontier_BattleTowerLobby_Text_240A8B, MSGBOX_DEFAULT
@@ -744,7 +744,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23F108:: @ 823F108
compare VAR_RESULT, 6
goto_if_ne BattleFrontier_BattleTowerLobby_EventScript_23F108
call BattleFrontier_BattleTowerLobby_EventScript_23F135
- clearflag FLAG_0x077
+ clearflag FLAG_CANCEL_BATTLE_ROOM_CHALLENGE
warp MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR, 255, 1, 6
setvar VAR_TEMP_0, 0
waitstate
diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
index ee63e72a1..7dbfbbc13 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
@@ -11,7 +11,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_MapScript1_243DA7: @ 8243DA7
end
BattleFrontier_BattleTowerMultiBattleRoom_MapScript1_243DB0: @ 8243DB0
- goto_if_set FLAG_0x152, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243DDA
+ goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243DDA
clearflag FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_1
clearflag FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_2
clearflag FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_3
@@ -165,7 +165,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243F29:: @ 8243F29
end
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243F36:: @ 8243F36
- goto_if_set FLAG_0x152, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243FC3
+ goto_if_set FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243FC3
setvar VAR_0x8004, 11
setvar VAR_0x8005, 0
special sub_8161F74
@@ -195,7 +195,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243F36:: @ 8243F36
compare VAR_FACING, 1
call_if_eq BattleFrontier_BattleTowerMultiBattleRoom_EventScript_243FDF
removeobject VAR_LAST_TALKED
- setflag FLAG_0x152
+ setflag FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER
warpsilent MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM, 255, 10, 3
waitstate
release
diff --git a/data/maps/BattleFrontier_Lounge1/scripts.inc b/data/maps/BattleFrontier_Lounge1/scripts.inc
index a12c54334..28aab432b 100644
--- a/data/maps/BattleFrontier_Lounge1/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge1/scripts.inc
@@ -4,9 +4,9 @@ BattleFrontier_Lounge1_MapScripts:: @ 825E774
BattleFrontier_Lounge1_EventScript_25E775:: @ 825E775
lock
faceplayer
- call_if_unset FLAG_0x153, BattleFrontier_Lounge1_EventScript_25E7AD
- call_if_set FLAG_0x153, BattleFrontier_Lounge1_EventScript_25E7B6
- setflag FLAG_0x153
+ call_if_unset FLAG_MET_BATTLE_FRONTIER_BREEDER, BattleFrontier_Lounge1_EventScript_25E7AD
+ call_if_set FLAG_MET_BATTLE_FRONTIER_BREEDER, BattleFrontier_Lounge1_EventScript_25E7B6
+ setflag FLAG_MET_BATTLE_FRONTIER_BREEDER
goto BattleFrontier_Lounge1_EventScript_25E792
end
diff --git a/data/maps/BattleFrontier_Lounge2/scripts.inc b/data/maps/BattleFrontier_Lounge2/scripts.inc
index e8c5db1f7..435eb4127 100644
--- a/data/maps/BattleFrontier_Lounge2/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge2/scripts.inc
@@ -4,8 +4,8 @@ BattleFrontier_Lounge2_MapScripts:: @ 8260642
BattleFrontier_Lounge2_EventScript_260643:: @ 8260643
lock
faceplayer
- goto_if_set FLAG_0x154, BattleFrontier_Lounge2_EventScript_26065F
- setflag FLAG_0x154
+ goto_if_set FLAG_MET_BATTLE_FRONTIER_MANIAC, BattleFrontier_Lounge2_EventScript_26065F
+ setflag FLAG_MET_BATTLE_FRONTIER_MANIAC
msgbox BattleFrontier_Lounge2_Text_260766, MSGBOX_DEFAULT
goto BattleFrontier_Lounge2_EventScript_26066D
end
diff --git a/data/maps/BattleFrontier_Lounge3/scripts.inc b/data/maps/BattleFrontier_Lounge3/scripts.inc
index 4b0b23bc8..6a817d50a 100644
--- a/data/maps/BattleFrontier_Lounge3/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge3/scripts.inc
@@ -4,11 +4,11 @@ BattleFrontier_Lounge3_MapScripts:: @ 8261D82
BattleFrontier_Lounge3_EventScript_261D83:: @ 8261D83
lock
faceplayer
- goto_if_set FLAG_0x157, BattleFrontier_Lounge3_EventScript_261EF9
+ goto_if_set FLAG_MET_BATTLE_FRONTIER_BETTOR, BattleFrontier_Lounge3_EventScript_261EF9
call BattleFrontier_Lounge3_EventScript_261EA0
compare VAR_0x8004, 2
goto_if_le BattleFrontier_Lounge3_EventScript_261EEB
- setflag FLAG_0x157
+ setflag FLAG_MET_BATTLE_FRONTIER_BETTOR
msgbox BattleFrontier_Lounge3_Text_262061, MSGBOX_DEFAULT
goto BattleFrontier_Lounge3_EventScript_261DAF
end
@@ -472,4 +472,3 @@ BattleFrontier_Lounge3_Text_263545:: @ 8263545
.string "Those TRAINERS…\n"
.string "What are they doing?\l"
.string "They should be taking challenges.$"
-
diff --git a/data/maps/BattleFrontier_Lounge6/scripts.inc b/data/maps/BattleFrontier_Lounge6/scripts.inc
index 411291e7d..2b14c43c5 100644
--- a/data/maps/BattleFrontier_Lounge6/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge6/scripts.inc
@@ -4,7 +4,7 @@ BattleFrontier_Lounge6_MapScripts:: @ 8264FEC
BattleFrontier_Lounge6_EventScript_264FED:: @ 8264FED
lock
faceplayer
- goto_if_set FLAG_0x09C, BattleFrontier_Lounge6_EventScript_265083
+ goto_if_set FLAG_BATTLE_FRONTIER_TRADE_DONE, BattleFrontier_Lounge6_EventScript_265083
setvar VAR_0x8008, 3
copyvar VAR_0x8004, VAR_0x8008
specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
@@ -28,7 +28,7 @@ BattleFrontier_Lounge6_EventScript_264FED:: @ 8264FED
special DoInGameTradeScene
waitstate
msgbox BattleFrontier_Lounge6_Text_265128, MSGBOX_DEFAULT
- setflag FLAG_0x09C
+ setflag FLAG_BATTLE_FRONTIER_TRADE_DONE
release
end
@@ -78,4 +78,3 @@ BattleFrontier_Lounge6_Text_26520E: @ 826520E
.string "Giggle!\n"
.string "A SKITTY is so much cuter than I had\l"
.string "imagined. I'm delighted!$"
-
diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc
index 0f9376125..1339b54c9 100644
--- a/data/maps/BattleFrontier_Lounge7/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge7/scripts.inc
@@ -5,9 +5,9 @@ BattleFrontier_Lounge7_EventScript_265255:: @ 8265255
lock
faceplayer
setvar VAR_TEMP_C, 9
- goto_if_set FLAG_0x15A, BattleFrontier_Lounge7_EventScript_265276
+ goto_if_set FLAG_MET_FRONTIER_BEAUTY_MOVE_TUTOR, BattleFrontier_Lounge7_EventScript_265276
msgbox BattleFrontier_Lounge7_Text_2656ED, MSGBOX_DEFAULT
- setflag FLAG_0x15A
+ setflag FLAG_MET_FRONTIER_BEAUTY_MOVE_TUTOR
goto BattleFrontier_Lounge7_EventScript_265284
end
@@ -119,9 +119,9 @@ BattleFrontier_Lounge7_EventScript_265445:: @ 8265445
lock
faceplayer
setvar VAR_TEMP_C, 10
- goto_if_set FLAG_0x15B, BattleFrontier_Lounge7_EventScript_265466
+ goto_if_set FLAG_MET_FRONTIER_SWIMMER_MOVE_TUTOR, BattleFrontier_Lounge7_EventScript_265466
msgbox BattleFrontier_Lounge7_Text_265A6C, MSGBOX_DEFAULT
- setflag FLAG_0x15B
+ setflag FLAG_MET_FRONTIER_SWIMMER_MOVE_TUTOR
goto BattleFrontier_Lounge7_EventScript_265474
end
@@ -477,4 +477,3 @@ BattleFrontier_Lounge7_Text_2661B5:: @ 82661B5
.string "A fiery punch\n"
.string "that may burn\n"
.string "the foe.$"
-
diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc
index 401f5565d..9a90f23f9 100644
--- a/data/maps/BattleFrontier_OutsideEast/scripts.inc
+++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc
@@ -17,7 +17,7 @@ BattleFrontier_OutsideEast_EventScript_242C19:: @ 8242C19
BattleFrontier_OutsideEast_MapScript1_242C2D: @ 8242C2D
setvar VAR_0x40BC, 0
setflag FLAG_HIDE_BATTLE_TOWER_REPORTER
- call_if_unset FLAG_0x1C6, BattleFrontier_OutsideEast_EventScript_242C3F
+ call_if_unset FLAG_DEFEATED_SUDOWOODO, BattleFrontier_OutsideEast_EventScript_242C3F
end
BattleFrontier_OutsideEast_EventScript_242C3F:: @ 8242C3F
@@ -139,12 +139,12 @@ BattleFrontier_OutsideEast_EventScript_242CFC:: @ 8242CFC
goto_if_eq BattleFrontier_OutsideEast_EventScript_242D60
compare VAR_RESULT, 5
goto_if_eq BattleFrontier_OutsideEast_EventScript_242D60
- setflag FLAG_0x1C6
+ setflag FLAG_DEFEATED_SUDOWOODO
release
end
BattleFrontier_OutsideEast_EventScript_242D60:: @ 8242D60
- setflag FLAG_0x1C6
+ setflag FLAG_DEFEATED_SUDOWOODO
goto IslandCave_EventScript_27376D
end
@@ -221,7 +221,7 @@ BattleFrontier_OutsideEast_EventScript_242DE0:: @ 8242DE0
BattleFrontier_OutsideEast_EventScript_242DE9:: @ 8242DE9
lock
faceplayer
- goto_if_set FLAG_0x1C6, BattleFrontier_OutsideEast_EventScript_242DFE
+ goto_if_set FLAG_DEFEATED_SUDOWOODO, BattleFrontier_OutsideEast_EventScript_242DFE
msgbox BattleFrontier_OutsideEast_Text_243C2C, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc
index 9f42bc89e..6f8d6ee4b 100644
--- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc
+++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc
@@ -11,15 +11,15 @@ BattleFrontier_ScottsHouse_EventScript_2636A8:: @ 82636A8
end
BattleFrontier_ScottsHouse_EventScript_2636CB:: @ 82636CB
- goto_if_unset FLAG_0x1D1, BattleFrontier_ScottsHouse_EventScript_263943
- goto_if_unset FLAG_0x05C, BattleFrontier_ScottsHouse_EventScript_263704
- goto_if_unset FLAG_0x1D2, BattleFrontier_ScottsHouse_EventScript_26376A
+ goto_if_unset FLAG_SCOTT_GIVES_BATTLE_POINTS, BattleFrontier_ScottsHouse_EventScript_263943
+ goto_if_unset FLAG_COLLECTED_ALL_SILVER_SYMBOLS, BattleFrontier_ScottsHouse_EventScript_263704
+ goto_if_unset FLAG_RECEIVED_STARF_BERRY_FROM_SCOTT, BattleFrontier_ScottsHouse_EventScript_26376A
goto BattleFrontier_ScottsHouse_EventScript_2636EC
end
BattleFrontier_ScottsHouse_EventScript_2636EC:: @ 82636EC
- goto_if_unset FLAG_0x0ED, BattleFrontier_ScottsHouse_EventScript_26381B
- goto_if_unset FLAG_0x0EE, BattleFrontier_ScottsHouse_EventScript_2638B4
+ goto_if_unset FLAG_RECEIVED_SILVER_SHIELD, BattleFrontier_ScottsHouse_EventScript_26381B
+ goto_if_unset FLAG_RECEIVED_GOLD_SHIELD, BattleFrontier_ScottsHouse_EventScript_2638B4
goto BattleFrontier_ScottsHouse_EventScript_2637E4
end
@@ -35,7 +35,7 @@ BattleFrontier_ScottsHouse_EventScript_263704:: @ 8263704
giveitem_std ITEM_LANSAT_BERRY
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_ScottsHouse_EventScript_2637D0
- setflag FLAG_0x05C
+ setflag FLAG_COLLECTED_ALL_SILVER_SYMBOLS
setflag FLAG_TEMP_4
release
end
@@ -52,7 +52,7 @@ BattleFrontier_ScottsHouse_EventScript_26376A:: @ 826376A
giveitem_std ITEM_STARF_BERRY
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_ScottsHouse_EventScript_2637D0
- setflag FLAG_0x1D2
+ setflag FLAG_RECEIVED_STARF_BERRY_FROM_SCOTT
setflag FLAG_TEMP_4
release
end
@@ -115,7 +115,7 @@ BattleFrontier_ScottsHouse_EventScript_26387A:: @ 826387A
givedecoration_std 42
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_ScottsHouse_EventScript_2638A0
- setflag FLAG_0x0ED
+ setflag FLAG_RECEIVED_SILVER_SHIELD
setflag FLAG_TEMP_3
goto BattleFrontier_ScottsHouse_EventScript_2638AA
end
@@ -158,7 +158,7 @@ BattleFrontier_ScottsHouse_EventScript_263913:: @ 8263913
givedecoration_std 43
compare VAR_RESULT, 0
goto_if_eq BattleFrontier_ScottsHouse_EventScript_2638A0
- setflag FLAG_0x0EE
+ setflag FLAG_RECEIVED_GOLD_SHIELD
setflag FLAG_TEMP_3
goto BattleFrontier_ScottsHouse_EventScript_2638AA
end
@@ -221,7 +221,7 @@ BattleFrontier_ScottsHouse_EventScript_2639F8:: @ 82639F8
special sub_813A9D0
msgbox BattleFrontier_ScottsHouse_Text_263CB0, 9
msgbox BattleFrontier_ScottsHouse_Text_263CD0, MSGBOX_DEFAULT
- setflag FLAG_0x1D1
+ setflag FLAG_SCOTT_GIVES_BATTLE_POINTS
setflag FLAG_TEMP_2
release
end
diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc
index 8e0a475a7..5bff32eb6 100644
--- a/data/maps/BirthIsland_Exterior/scripts.inc
+++ b/data/maps/BirthIsland_Exterior/scripts.inc
@@ -9,12 +9,12 @@ BirthIsland_Exterior_MapScript1_267F25: @ 8267F25
end
BirthIsland_Exterior_MapScript1_267F29: @ 8267F29
- setflag FLAG_0x8D3
+ setflag FLAG_MAP_SCRIPT_CHECKED_DEOXYS
setvar VAR_OBJ_GFX_ID_0, EVENT_OBJ_GFX_RIVAL_BRENDAN_NORMAL
setvar VAR_DEOXYS_ROCK_STEP_COUNT, 0
setvar VAR_DEOXYS_ROCK_LEVEL, 0
- call_if_set FLAG_0x1AD, BirthIsland_Exterior_EventScript_267F4E
- call_if_unset FLAG_0x1AD, BirthIsland_Exterior_EventScript_267F55
+ call_if_set FLAG_BATTLED_DEOXYS, BirthIsland_Exterior_EventScript_267F4E
+ call_if_unset FLAG_BATTLED_DEOXYS, BirthIsland_Exterior_EventScript_267F55
end
BirthIsland_Exterior_EventScript_267F4E:: @ 8267F4E
@@ -23,7 +23,7 @@ BirthIsland_Exterior_EventScript_267F4E:: @ 8267F4E
return
BirthIsland_Exterior_EventScript_267F55:: @ 8267F55
- goto_if_set FLAG_0x1AC, BirthIsland_Exterior_EventScript_27374E
+ goto_if_set FLAG_DEFEATED_DEOXYS, BirthIsland_Exterior_EventScript_27374E
clearflag FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE
clearflag FLAG_DEOXYS_ROCK_COMPLETE
return
@@ -94,12 +94,12 @@ BirthIsland_Exterior_EventScript_267FC1:: @ 8267FC1
goto_if_eq BirthIsland_Exterior_EventScript_268049
compare VAR_RESULT, 5
goto_if_eq BirthIsland_Exterior_EventScript_268049
- setflag FLAG_0x1AD
+ setflag FLAG_BATTLED_DEOXYS
release
end
BirthIsland_Exterior_EventScript_26803B:: @ 826803B
- setflag FLAG_0x1AC
+ setflag FLAG_DEFEATED_DEOXYS
setvar VAR_0x8004, 410
goto BirthIsland_Exterior_EventScript_273776
end
@@ -118,4 +118,3 @@ BirthIsland_Exterior_Movement_268054: @ 8268054
walk_slow_down
walk_slow_down
step_end
-
diff --git a/data/maps/CaveOfOrigin_1F/scripts.inc b/data/maps/CaveOfOrigin_1F/scripts.inc
index f42cb92f6..1804e58ea 100644
--- a/data/maps/CaveOfOrigin_1F/scripts.inc
+++ b/data/maps/CaveOfOrigin_1F/scripts.inc
@@ -3,6 +3,5 @@ CaveOfOrigin_1F_MapScripts:: @ 8235768
.byte 0
CaveOfOrigin_1F_MapScript1_23576E: @ 823576E
- call_if_set FLAG_0x071, CaveOfOrigin_1F_EventScript_2722C1
+ call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_1F_EventScript_2722C1
end
-
diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc
index cf7582e0d..371ea1ba5 100644
--- a/data/maps/CaveOfOrigin_B1F/scripts.inc
+++ b/data/maps/CaveOfOrigin_B1F/scripts.inc
@@ -51,7 +51,7 @@ CaveOfOrigin_B1F_EventScript_23584D:: @ 823584D
closemessage
playse SE_KAIDAN
fadescreenspeed 1, 4
- setflag FLAG_0x137
+ setflag FLAG_WALLACE_GOES_TO_SKY_PILLAR
setvar VAR_0x405E, 3
removeobject 1
clearflag FLAG_HIDE_SKY_PILLAR_WALLACE
diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc
index 9ac7e4741..79c00f28c 100644
--- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc
+++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/scripts.inc
@@ -3,6 +3,5 @@ CaveOfOrigin_UnusedRubySapphireMap1_MapScripts:: @ 8235778
.byte 0
CaveOfOrigin_UnusedRubySapphireMap1_MapScript1_23577E: @ 823577E
- call_if_set FLAG_0x071, CaveOfOrigin_UnusedRubySapphireMap1_EventScript_2722C1
+ call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_UnusedRubySapphireMap1_EventScript_2722C1
end
-
diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc
index 5743c7c8c..6f9812c38 100644
--- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc
+++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/scripts.inc
@@ -3,6 +3,6 @@ CaveOfOrigin_UnusedRubySapphireMap2_MapScripts:: @ 8235788
.byte 0
CaveOfOrigin_UnusedRubySapphireMap2_MapScript1_23578E: @ 823578E
- call_if_set FLAG_0x071, CaveOfOrigin_UnusedRubySapphireMap2_EventScript_2722C1
+ call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_UnusedRubySapphireMap2_EventScript_2722C1
end
diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc
index c831218a4..baa40934a 100644
--- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc
+++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/scripts.inc
@@ -3,6 +3,6 @@ CaveOfOrigin_UnusedRubySapphireMap3_MapScripts:: @ 8235798
.byte 0
CaveOfOrigin_UnusedRubySapphireMap3_MapScript1_23579E: @ 823579E
- call_if_set FLAG_0x071, CaveOfOrigin_UnusedRubySapphireMap3_EventScript_2722C1
+ call_if_set FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE, CaveOfOrigin_UnusedRubySapphireMap3_EventScript_2722C1
end
diff --git a/data/maps/DesertRuins/scripts.inc b/data/maps/DesertRuins/scripts.inc
index 685d8f5cf..62828e971 100644
--- a/data/maps/DesertRuins/scripts.inc
+++ b/data/maps/DesertRuins/scripts.inc
@@ -30,7 +30,7 @@ DesertRuins_EventScript_22D993:: @ 822D993
DesertRuins_MapScript1_22D9CA: @ 822D9CA
setflag FLAG_LANDMARK_DESERT_RUINS
- call_if_unset FLAG_0x1BB, DesertRuins_EventScript_22D9D7
+ call_if_unset FLAG_DEFEATED_REGIROCK, DesertRuins_EventScript_22D9D7
end
DesertRuins_EventScript_22D9D7:: @ 822D9D7
@@ -78,12 +78,12 @@ DesertRuins_EventScript_22DA02:: @ 822DA02
goto_if_eq DesertRuins_EventScript_22DA52
compare VAR_RESULT, 5
goto_if_eq DesertRuins_EventScript_22DA52
- setflag FLAG_0x1BB
+ setflag FLAG_DEFEATED_REGIROCK
release
end
DesertRuins_EventScript_22DA49:: @ 822DA49
- setflag FLAG_0x1BB
+ setflag FLAG_DEFEATED_REGIROCK
goto DesertRuins_EventScript_27376D
end
diff --git a/data/maps/DesertUnderpass/scripts.inc b/data/maps/DesertUnderpass/scripts.inc
index d9913cb76..c64597d6c 100644
--- a/data/maps/DesertUnderpass/scripts.inc
+++ b/data/maps/DesertUnderpass/scripts.inc
@@ -9,8 +9,8 @@ DesertUnderpass_MapScript1_23AF3D: @ 823AF3D
DesertUnderpass_EventScript_23AF41:: @ 823AF41
lock
faceplayer
- goto_if_set FLAG_0x14F, DesertUnderpass_EventScript_23AF57
- goto_if_set FLAG_0x150, DesertUnderpass_EventScript_23AF68
+ goto_if_set FLAG_CHOSE_CLAW_FOSSIL, DesertUnderpass_EventScript_23AF57
+ goto_if_set FLAG_CHOSE_ROOT_FOSSIL, DesertUnderpass_EventScript_23AF68
release
end
diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc
index b08a0e8a3..6c66f4860 100644
--- a/data/maps/DewfordTown/scripts.inc
+++ b/data/maps/DewfordTown/scripts.inc
@@ -9,7 +9,7 @@ DewfordTown_MapScript1_1E950D: @ 81E950D
DewfordTown_EventScript_1E9511:: @ 81E9511
lock
faceplayer
- goto_if_unset FLAG_0x0BD, DewfordTown_EventScript_1E9585
+ goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, DewfordTown_EventScript_1E9585
message DewfordTown_Text_1E9C8A
waitmessage
multichoicedefault 21, 6, 0, 2, 0
@@ -73,7 +73,7 @@ DewfordTown_EventScript_1E95CC:: @ 81E95CC
DewfordTown_EventScript_1E95D5:: @ 81E95D5
lock
faceplayer
- goto_if_set FLAG_0x101, DewfordTown_EventScript_1E962A
+ goto_if_set FLAG_RECEIVED_OLD_ROD, DewfordTown_EventScript_1E962A
msgbox DewfordTown_Text_1E9DD1, MSGBOX_YESNO
compare VAR_RESULT, 1
goto_if_eq DewfordTown_EventScript_1E95FF
@@ -84,7 +84,7 @@ DewfordTown_EventScript_1E95D5:: @ 81E95D5
DewfordTown_EventScript_1E95FF:: @ 81E95FF
msgbox DewfordTown_Text_1E9E14, MSGBOX_DEFAULT
giveitem_std ITEM_OLD_ROD
- setflag FLAG_0x101
+ setflag FLAG_RECEIVED_OLD_ROD
msgbox DewfordTown_Text_1E9E65, MSGBOX_DEFAULT
release
end
@@ -174,8 +174,8 @@ DewfordTown_EventScript_1E96E7:: @ 81E96E7
clearflag FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT
setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN
hideobjectat 4, MAP_DEWFORD_TOWN
- call_if_unset FLAG_0x095, DewfordTown_EventScript_1E9790
- call_if_set FLAG_0x095, DewfordTown_EventScript_1E9799
+ call_if_unset FLAG_DELIVERED_DEVON_GOODS, DewfordTown_EventScript_1E9790
+ call_if_set FLAG_DELIVERED_DEVON_GOODS, DewfordTown_EventScript_1E9799
closemessage
copyvar VAR_0x4096, VAR_0x8008
resetobjectpriority EVENT_OBJ_ID_PLAYER, MAP_DEWFORD_TOWN
diff --git a/data/maps/DewfordTown_Gym/scripts.inc b/data/maps/DewfordTown_Gym/scripts.inc
index 1251c714e..90fd3d4ae 100644
--- a/data/maps/DewfordTown_Gym/scripts.inc
+++ b/data/maps/DewfordTown_Gym/scripts.inc
@@ -160,7 +160,7 @@ DewfordTown_Gym_EventScript_1FC7C2:: @ 81FC7C2
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq DewfordTown_Gym_EventScript_1FC89C
- goto_if_unset FLAG_0x0A6, DewfordTown_Gym_EventScript_1FC878
+ goto_if_unset FLAG_RECEIVED_TM08, DewfordTown_Gym_EventScript_1FC878
msgbox DewfordTown_Gym_Text_1FD20D, MSGBOX_DEFAULT
release
end
@@ -171,7 +171,7 @@ DewfordTown_Gym_EventScript_1FC7F7:: @ 81FC7F7
waitmessage
call DewfordTown_Gym_EventScript_27207E
msgbox DewfordTown_Gym_Text_1FD0A8, MSGBOX_DEFAULT
- setflag FLAG_0x4F1
+ setflag FLAG_DEFEATED_DEWFORD_GYM
setflag FLAG_BADGE02_GET
addvar VAR_0x4085, 1
compare VAR_0x4085, 6
@@ -186,9 +186,9 @@ DewfordTown_Gym_EventScript_1FC7F7:: @ 81FC7F7
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D4
+ setflag FLAG_ENABLE_BRAWLY_MATCH_CALL
setvar VAR_0x40F4, 0
- setflag FLAG_0x080
+ setflag FLAG_ENABLE_ROXANNE_FIRST_CALL
release
end
@@ -197,7 +197,7 @@ DewfordTown_Gym_EventScript_1FC855:: @ 81FC855
compare VAR_RESULT, 0
goto_if_eq DewfordTown_Gym_EventScript_27205E
msgbox DewfordTown_Gym_Text_1FD181, MSGBOX_DEFAULT
- setflag FLAG_0x0A6
+ setflag FLAG_RECEIVED_TM08
return
DewfordTown_Gym_EventScript_1FC878:: @ 81FC878
@@ -205,7 +205,7 @@ DewfordTown_Gym_EventScript_1FC878:: @ 81FC878
compare VAR_RESULT, 0
goto_if_eq DewfordTown_Gym_EventScript_272054
msgbox DewfordTown_Gym_Text_1FD181, MSGBOX_DEFAULT
- setflag FLAG_0x0A6
+ setflag FLAG_RECEIVED_TM08
release
end
@@ -277,7 +277,7 @@ DewfordTown_Gym_EventScript_1FC97C:: @ 81FC97C
DewfordTown_Gym_EventScript_1FC983:: @ 81FC983
lock
faceplayer
- goto_if_set FLAG_0x4F1, DewfordTown_Gym_EventScript_1FC998
+ goto_if_set FLAG_DEFEATED_DEWFORD_GYM, DewfordTown_Gym_EventScript_1FC998
msgbox DewfordTown_Gym_Text_1FC9D6, MSGBOX_DEFAULT
release
end
@@ -484,4 +484,3 @@ DewfordTown_Gym_Text_1FD3DE: @ 81FD3DE
.string "that can battle.\p"
.string "I'm sorry, but I'd like you to come back\n"
.string "with at least two POKéMON.$"
-
diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc
index 450ccb4ec..0d9cf514c 100644
--- a/data/maps/DewfordTown_Hall/scripts.inc
+++ b/data/maps/DewfordTown_Hall/scripts.inc
@@ -252,12 +252,12 @@ DewfordTown_Hall_EventScript_1FD7DA:: @ 81FD7DA
lock
faceplayer
call DewfordTown_Hall_EventScript_271E8B
- goto_if_set FLAG_RECEIVED_TM_36, DewfordTown_Hall_EventScript_1FD80E
+ goto_if_set FLAG_RECEIVED_TM36, DewfordTown_Hall_EventScript_1FD80E
msgbox DewfordTown_Hall_Text_1FE142, MSGBOX_DEFAULT
giveitem_std ITEM_TM36
compare VAR_RESULT, 0
goto_if_eq DewfordTown_Hall_EventScript_272054
- setflag FLAG_RECEIVED_TM_36
+ setflag FLAG_RECEIVED_TM36
release
end
diff --git a/data/maps/DewfordTown_House2/scripts.inc b/data/maps/DewfordTown_House2/scripts.inc
index cff58306e..eb6beb951 100644
--- a/data/maps/DewfordTown_House2/scripts.inc
+++ b/data/maps/DewfordTown_House2/scripts.inc
@@ -4,12 +4,12 @@ DewfordTown_House2_MapScripts:: @ 81FE22D
DewfordTown_House2_EventScript_1FE22E:: @ 81FE22E
lock
faceplayer
- goto_if_set FLAG_0x121, DewfordTown_House2_EventScript_1FE267
+ goto_if_set FLAG_RECEIVED_SILK_SCARF, DewfordTown_House2_EventScript_1FE267
msgbox DewfordTown_House2_Text_1FE27A, MSGBOX_DEFAULT
giveitem_std ITEM_SILK_SCARF
compare VAR_RESULT, 0
goto_if_eq DewfordTown_House2_EventScript_1FE25D
- setflag FLAG_0x121
+ setflag FLAG_RECEIVED_SILK_SCARF
release
end
diff --git a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
index 06dd58d26..2c0949842 100644
--- a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
@@ -24,7 +24,7 @@ EverGrandeCity_DrakesRoom_EventScript_2286C5:: @ 82286C5
end
EverGrandeCity_DrakesRoom_MapScript1_2286D2: @ 82286D2
- call_if_set FLAG_0x4FE, EverGrandeCity_DrakesRoom_EventScript_2286E7
+ call_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_2286E7
compare VAR_0x409C, 4
call_if_eq EverGrandeCity_DrakesRoom_EventScript_2286ED
end
@@ -40,7 +40,7 @@ EverGrandeCity_DrakesRoom_EventScript_2286ED:: @ 82286ED
EverGrandeCity_DrakesRoom_EventScript_2286F3:: @ 82286F3
lock
faceplayer
- goto_if_set FLAG_0x4FE, EverGrandeCity_DrakesRoom_EventScript_22871A
+ goto_if_set FLAG_DEFEATED_ELITE_4_DRAKE, EverGrandeCity_DrakesRoom_EventScript_22871A
playbgm MUS_SITENNOU, 0
msgbox EverGrandeCity_DrakesRoom_Text_22873E, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_DRAKE, EverGrandeCity_DrakesRoom_Text_228895
@@ -55,7 +55,7 @@ EverGrandeCity_DrakesRoom_EventScript_22871A:: @ 822871A
EverGrandeCity_DrakesRoom_EventScript_228724:: @ 8228724
setvar VAR_0x8004, 0
special sub_813BF7C
- setflag FLAG_0x4FE
+ setflag FLAG_DEFEATED_ELITE_4_DRAKE
call EverGrandeCity_DrakesRoom_EventScript_2723F8
msgbox EverGrandeCity_DrakesRoom_Text_2288B0, MSGBOX_DEFAULT
release
diff --git a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
index 641c994a5..7510f468f 100644
--- a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
@@ -24,7 +24,7 @@ EverGrandeCity_GlaciasRoom_EventScript_22843B:: @ 822843B
end
EverGrandeCity_GlaciasRoom_MapScript1_228448: @ 8228448
- call_if_set FLAG_0x4FD, EverGrandeCity_GlaciasRoom_EventScript_22845D
+ call_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_22845D
compare VAR_0x409C, 3
call_if_eq EverGrandeCity_GlaciasRoom_EventScript_228463
end
@@ -40,7 +40,7 @@ EverGrandeCity_GlaciasRoom_EventScript_228463:: @ 8228463
EverGrandeCity_GlaciasRoom_EventScript_228469:: @ 8228469
lock
faceplayer
- goto_if_set FLAG_0x4FD, EverGrandeCity_GlaciasRoom_EventScript_228490
+ goto_if_set FLAG_DEFEATED_ELITE_4_GLACIA, EverGrandeCity_GlaciasRoom_EventScript_228490
playbgm MUS_SITENNOU, 0
msgbox EverGrandeCity_GlaciasRoom_Text_2284AC, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GLACIA, EverGrandeCity_GlaciasRoom_Text_2285B4
@@ -53,7 +53,7 @@ EverGrandeCity_GlaciasRoom_EventScript_228490:: @ 8228490
end
EverGrandeCity_GlaciasRoom_EventScript_22849A:: @ 822849A
- setflag FLAG_0x4FD
+ setflag FLAG_DEFEATED_ELITE_4_GLACIA
call EverGrandeCity_GlaciasRoom_EventScript_2723F8
msgbox EverGrandeCity_GlaciasRoom_Text_228640, MSGBOX_DEFAULT
release
diff --git a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
index 84ead3766..77f951d76 100644
--- a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
@@ -24,7 +24,7 @@ EverGrandeCity_PhoebesRoom_EventScript_22819D:: @ 822819D
end
EverGrandeCity_PhoebesRoom_MapScript1_2281AA: @ 82281AA
- call_if_set FLAG_0x4FC, EverGrandeCity_PhoebesRoom_EventScript_2281BF
+ call_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_2281BF
compare VAR_0x409C, 2
call_if_eq EverGrandeCity_PhoebesRoom_EventScript_2281C5
end
@@ -40,7 +40,7 @@ EverGrandeCity_PhoebesRoom_EventScript_2281C5:: @ 82281C5
EverGrandeCity_PhoebesRoom_EventScript_2281CB:: @ 82281CB
lock
faceplayer
- goto_if_set FLAG_0x4FC, EverGrandeCity_PhoebesRoom_EventScript_2281F2
+ goto_if_set FLAG_DEFEATED_ELITE_4_PHOEBE, EverGrandeCity_PhoebesRoom_EventScript_2281F2
playbgm MUS_SITENNOU, 0
msgbox EverGrandeCity_PhoebesRoom_Text_22820E, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_PHOEBE, EverGrandeCity_PhoebesRoom_Text_228325
@@ -53,7 +53,7 @@ EverGrandeCity_PhoebesRoom_EventScript_2281F2:: @ 82281F2
end
EverGrandeCity_PhoebesRoom_EventScript_2281FC:: @ 82281FC
- setflag FLAG_0x4FC
+ setflag FLAG_DEFEATED_ELITE_4_PHOEBE
call EverGrandeCity_PhoebesRoom_EventScript_2723F8
msgbox EverGrandeCity_PhoebesRoom_Text_228343, MSGBOX_DEFAULT
release
diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
index c029571d0..0ec0acbb2 100644
--- a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
@@ -5,7 +5,7 @@ EverGrandeCity_PokemonCenter_1F_MapScripts:: @ 8229A34
EverGrandeCity_PokemonCenter_1F_MapScript1_229A3F: @ 8229A3F
setrespawn HEAL_LOCATION_EVER_GRANDE_CITY_1
- call_if_unset FLAG_0x1CF, EverGrandeCity_PokemonCenter_1F_EventScript_229A4C
+ call_if_unset FLAG_MET_SCOTT_IN_EVERGRANDE, EverGrandeCity_PokemonCenter_1F_EventScript_229A4C
end
EverGrandeCity_PokemonCenter_1F_EventScript_229A4C:: @ 8229A4C
@@ -41,7 +41,7 @@ EverGrandeCity_PokemonCenter_1F_EventScript_229A79:: @ 8229A79
compare VAR_FACING, 3
call_if_eq EverGrandeCity_PokemonCenter_1F_EventScript_229AC1
addvar VAR_0x40D1, 1
- setflag FLAG_0x1CF
+ setflag FLAG_MET_SCOTT_IN_EVERGRANDE
playse SE_KAIDAN
waitse
removeobject 4
diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
index 9b9c561eb..ce4be66f8 100644
--- a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
+++ b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
@@ -6,7 +6,7 @@ EverGrandeCity_PokemonLeague_1F_MapScripts:: @ 82295D2
EverGrandeCity_PokemonLeague_1F_MapScript1_2295DD: @ 82295DD
setrespawn HEAL_LOCATION_EVER_GRANDE_CITY_2
setflag FLAG_LANDMARK_POKEMON_LEAGUE
- call_if_unset FLAG_0x107, EverGrandeCity_PokemonLeague_1F_EventScript_2295ED
+ call_if_unset FLAG_ENTERED_ELITE_FOUR, EverGrandeCity_PokemonLeague_1F_EventScript_2295ED
end
EverGrandeCity_PokemonLeague_1F_EventScript_2295ED:: @ 82295ED
@@ -47,7 +47,7 @@ EverGrandeCity_PokemonLeague_1F_Pokemart_229624: @ 8229624
EverGrandeCity_PokemonLeague_1F_EventScript_229636:: @ 8229636
lockall
- goto_if_set FLAG_0x107, EverGrandeCity_PokemonLeague_1F_EventScript_2296BB
+ goto_if_set FLAG_ENTERED_ELITE_FOUR, EverGrandeCity_PokemonLeague_1F_EventScript_2296BB
getplayerxy VAR_TEMP_0, VAR_TEMP_1
compare VAR_TEMP_0, 11
call_if_ge EverGrandeCity_PokemonLeague_1F_EventScript_229698
@@ -69,7 +69,7 @@ EverGrandeCity_PokemonLeague_1F_EventScript_229636:: @ 8229636
closemessage
moveobjectoffscreen 3
moveobjectoffscreen 4
- setflag FLAG_0x107
+ setflag FLAG_ENTERED_ELITE_FOUR
releaseall
end
diff --git a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
index 8324e19cf..9152254b3 100644
--- a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
@@ -6,12 +6,12 @@ EverGrandeCity_SidneysRoom_MapScripts:: @ 8227F01
.byte 0
EverGrandeCity_SidneysRoom_MapScript1_227F16: @ 8227F16
- setflag FLAG_0x1CF
+ setflag FLAG_MET_SCOTT_IN_EVERGRANDE
setflag FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT
end
EverGrandeCity_SidneysRoom_MapScript1_227F1D: @ 8227F1D
- call_if_set FLAG_0x4FB, EverGrandeCity_SidneysRoom_EventScript_227F32
+ call_if_set FLAG_DEFEATED_ELITE_4_SYDNEY, EverGrandeCity_SidneysRoom_EventScript_227F32
compare VAR_0x409C, 1
call_if_eq EverGrandeCity_SidneysRoom_EventScript_227F38
end
@@ -47,7 +47,7 @@ EverGrandeCity_SidneysRoom_EventScript_227F57:: @ 8227F57
EverGrandeCity_SidneysRoom_EventScript_227F64:: @ 8227F64
lock
faceplayer
- goto_if_set FLAG_0x4FB, EverGrandeCity_SidneysRoom_EventScript_227F8B
+ goto_if_set FLAG_DEFEATED_ELITE_4_SYDNEY, EverGrandeCity_SidneysRoom_EventScript_227F8B
playbgm MUS_SITENNOU, 0
msgbox EverGrandeCity_SidneysRoom_Text_227FA7, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_SIDNEY, EverGrandeCity_SidneysRoom_Text_2280A2
@@ -60,7 +60,7 @@ EverGrandeCity_SidneysRoom_EventScript_227F8B:: @ 8227F8B
end
EverGrandeCity_SidneysRoom_EventScript_227F95:: @ 8227F95
- setflag FLAG_0x4FB
+ setflag FLAG_DEFEATED_ELITE_4_SYDNEY
call EverGrandeCity_SidneysRoom_EventScript_2723F8
msgbox EverGrandeCity_SidneysRoom_Text_2280EC, MSGBOX_DEFAULT
release
diff --git a/data/maps/FallarborTown/scripts.inc b/data/maps/FallarborTown/scripts.inc
index 7b157c5f3..5e06ed4cb 100644
--- a/data/maps/FallarborTown/scripts.inc
+++ b/data/maps/FallarborTown/scripts.inc
@@ -5,13 +5,13 @@ FallarborTown_MapScripts:: @ 81EB1FA
FallarborTown_MapScript1_1EB200: @ 81EB200
setflag FLAG_VISITED_FALLARBOR_TOWN
setvar VAR_0x4086, 0
- clearflag FLAG_0x10E
+ clearflag FLAG_CONTEST_SKETCH_CREATED
end
FallarborTown_EventScript_1EB20C:: @ 81EB20C
lock
faceplayer
- goto_if_set FLAG_0x08B, FallarborTown_EventScript_1EB221
+ goto_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, FallarborTown_EventScript_1EB221
msgbox FallarborTown_Text_1EB26B, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
index cfc468994..5d05570cc 100644
--- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
@@ -294,10 +294,10 @@ FallarborTown_BattleTentLobby_EventScript_20021F:: @ 820021F
FallarborTown_BattleTentLobby_EventScript_200228:: @ 8200228
lock
faceplayer
- goto_if_set FLAG_0x1CD, FallarborTown_BattleTentLobby_EventScript_200245
+ goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_200245
msgbox FallarborTown_BattleTentLobby_Text_200501, MSGBOX_DEFAULT
addvar VAR_0x40D1, 1
- setflag FLAG_0x1CD
+ setflag FLAG_MET_SCOTT_IN_FALLARBOR
release
end
diff --git a/data/maps/FallarborTown_House1/scripts.inc b/data/maps/FallarborTown_House1/scripts.inc
index 699f5e4ed..caf915e85 100644
--- a/data/maps/FallarborTown_House1/scripts.inc
+++ b/data/maps/FallarborTown_House1/scripts.inc
@@ -4,7 +4,7 @@ FallarborTown_House1_MapScripts:: @ 8200F12
FallarborTown_House1_EventScript_200F13:: @ 8200F13
lock
faceplayer
- goto_if_set FLAG_0x0E5, FallarborTown_House1_EventScript_200FB2
+ goto_if_set FLAG_RECEIVED_TM27, FallarborTown_House1_EventScript_200FB2
checkitem ITEM_METEORITE, 1
compare VAR_RESULT, 1
goto_if_eq FallarborTown_House1_EventScript_200F38
@@ -23,7 +23,7 @@ FallarborTown_House1_EventScript_200F38:: @ 8200F38
goto_if_eq FallarborTown_House1_EventScript_272054
setvar VAR_0x8004, 280
call FallarborTown_House1_EventScript_2723E4
- setflag FLAG_0x0E5
+ setflag FLAG_RECEIVED_TM27
msgbox FallarborTown_House1_Text_2011A5, MSGBOX_DEFAULT
release
end
@@ -51,8 +51,8 @@ FallarborTown_House1_EventScript_200FB2:: @ 8200FB2
FallarborTown_House1_EventScript_200FBC:: @ 8200FBC
lock
faceplayer
- goto_if_set FLAG_0x0E5, FallarborTown_House1_EventScript_200FE4
- goto_if_set FLAG_0x08B, FallarborTown_House1_EventScript_200FDA
+ goto_if_set FLAG_RECEIVED_TM27, FallarborTown_House1_EventScript_200FE4
+ goto_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, FallarborTown_House1_EventScript_200FDA
msgbox FallarborTown_House1_Text_2012BC, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc
index 8661c4c52..37c16885f 100644
--- a/data/maps/FarawayIsland_Entrance/scripts.inc
+++ b/data/maps/FarawayIsland_Entrance/scripts.inc
@@ -3,7 +3,7 @@ FarawayIsland_Entrance_MapScripts:: @ 8267C8E
.byte 0
FarawayIsland_Entrance_MapScript1_267C94: @ 8267C94
- setflag FLAG_0x8D8
+ setflag FLAG_ARRIVED_ON_FARAWAY_ISLAND
end
FarawayIsland_Entrance_EventScript_267C98:: @ 8267C98
diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc
index 55fd591e2..a1038edac 100644
--- a/data/maps/FarawayIsland_Interior/scripts.inc
+++ b/data/maps/FarawayIsland_Interior/scripts.inc
@@ -40,11 +40,11 @@ FarawayIsland_Interior_EventScript_267D5E:: @ 8267D5E
FarawayIsland_Interior_MapScript1_267D72: @ 8267D72
setvar VAR_0x403A, 0
setvar VAR_TEMP_1, 1
- call_if_unset FLAG_0x1CA, FarawayIsland_Interior_EventScript_267D86
+ call_if_unset FLAG_CAUGHT_MEW, FarawayIsland_Interior_EventScript_267D86
end
FarawayIsland_Interior_EventScript_267D86:: @ 8267D86
- goto_if_set FLAG_0x1C7, FarawayIsland_Interior_EventScript_27374E
+ goto_if_set FLAG_DEFEATED_MEW, FarawayIsland_Interior_EventScript_27374E
clearflag FLAG_HIDE_MEW
setvar VAR_TEMP_1, 0
return
@@ -153,12 +153,12 @@ FarawayIsland_Interior_EventScript_267DF2:: @ 8267DF2
goto_if_eq FarawayIsland_Interior_EventScript_267EA4
compare VAR_RESULT, 10
goto_if_eq FarawayIsland_Interior_EventScript_267EA4
- setflag FLAG_0x1CA
+ setflag FLAG_CAUGHT_MEW
release
end
FarawayIsland_Interior_EventScript_267E96:: @ 8267E96
- setflag FLAG_0x1C7
+ setflag FLAG_DEFEATED_MEW
setvar VAR_0x8004, 151
goto FarawayIsland_Interior_EventScript_273776
end
diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc
index d1c80c9f9..d5c1ab29e 100644
--- a/data/maps/FortreeCity/scripts.inc
+++ b/data/maps/FortreeCity/scripts.inc
@@ -18,7 +18,7 @@ FortreeCity_EventScript_1E25B6:: @ 81E25B6
FortreeCity_EventScript_1E25BF:: @ 81E25BF
lock
faceplayer
- goto_if_set FLAG_0x127, FortreeCity_EventScript_1E25D4
+ goto_if_set FLAG_KECLEON_FLED_FORTREE, FortreeCity_EventScript_1E25D4
msgbox FortreeCity_Text_1E2738, MSGBOX_DEFAULT
release
end
@@ -81,7 +81,7 @@ FortreeCity_EventScript_1E2645:: @ 81E2645
applymovement VAR_LAST_TALKED, FortreeCity_Movement_1E2674
waitmovement 0
removeobject VAR_LAST_TALKED
- setflag FLAG_0x127
+ setflag FLAG_KECLEON_FLED_FORTREE
release
end
diff --git a/data/maps/FortreeCity_Gym/scripts.inc b/data/maps/FortreeCity_Gym/scripts.inc
index f45d87c58..17633c0d5 100644
--- a/data/maps/FortreeCity_Gym/scripts.inc
+++ b/data/maps/FortreeCity_Gym/scripts.inc
@@ -20,7 +20,7 @@ FortreeCity_Gym_EventScript_2165C8:: @ 82165C8
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq FortreeCity_Gym_EventScript_21668D
- goto_if_unset FLAG_0x0AA, FortreeCity_Gym_EventScript_216646
+ goto_if_unset FLAG_RECEIVED_TM40, FortreeCity_Gym_EventScript_216646
msgbox FortreeCity_Gym_Text_217071, MSGBOX_DEFAULT
release
end
@@ -30,7 +30,7 @@ FortreeCity_Gym_EventScript_2165FD:: @ 82165FD
waitmessage
call FortreeCity_Gym_EventScript_27207E
msgbox FortreeCity_Gym_Text_216F17, MSGBOX_DEFAULT
- setflag FLAG_0x4F5
+ setflag FLAG_DEFEATED_FORTREE_GYM
setflag FLAG_BADGE06_GET
setvar VAR_0x8008, 6
call FortreeCity_Gym_EventScript_271F43
@@ -42,9 +42,9 @@ FortreeCity_Gym_EventScript_2165FD:: @ 82165FD
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D7
+ setflag FLAG_ENABLE_WINONA_MATCH_CALL
setvar VAR_0x40F3, 0
- setflag FLAG_0x08A
+ setflag FLAG_REGISTER_WINONA_POKENAV
release
end
@@ -53,7 +53,7 @@ FortreeCity_Gym_EventScript_216646:: @ 8216646
compare VAR_RESULT, 0
goto_if_eq FortreeCity_Gym_EventScript_272054
msgbox FortreeCity_Gym_Text_216FEC, MSGBOX_DEFAULT
- setflag FLAG_0x0AA
+ setflag FLAG_RECEIVED_TM40
release
end
@@ -62,7 +62,7 @@ FortreeCity_Gym_EventScript_21666A:: @ 821666A
compare VAR_RESULT, 0
goto_if_eq FortreeCity_Gym_EventScript_27205E
msgbox FortreeCity_Gym_Text_216FEC, MSGBOX_DEFAULT
- setflag FLAG_0x0AA
+ setflag FLAG_RECEIVED_TM40
return
FortreeCity_Gym_EventScript_21668D:: @ 821668D
@@ -103,7 +103,7 @@ FortreeCity_Gym_EventScript_21671B:: @ 821671B
FortreeCity_Gym_EventScript_216732:: @ 8216732
lock
faceplayer
- goto_if_set FLAG_0x4F5, FortreeCity_Gym_EventScript_216747
+ goto_if_set FLAG_DEFEATED_FORTREE_GYM, FortreeCity_Gym_EventScript_216747
msgbox FortreeCity_Gym_Text_216785, MSGBOX_DEFAULT
release
end
@@ -318,4 +318,3 @@ FortreeCity_Gym_Text_217292: @ 8217292
.string "POKéMON with you?\p"
.string "Please return with two POKéMON\n"
.string "at the very least.$"
-
diff --git a/data/maps/FortreeCity_House1/scripts.inc b/data/maps/FortreeCity_House1/scripts.inc
index a1fe9b0d3..87aa7a643 100644
--- a/data/maps/FortreeCity_House1/scripts.inc
+++ b/data/maps/FortreeCity_House1/scripts.inc
@@ -4,7 +4,7 @@ FortreeCity_House1_MapScripts:: @ 82162BA
FortreeCity_House1_EventScript_2162BB:: @ 82162BB
lock
faceplayer
- goto_if_set FLAG_0x09B, FortreeCity_House1_EventScript_216355
+ goto_if_set FLAG_FORTREE_NPC_TRADE_COMPLETED, FortreeCity_House1_EventScript_216355
setvar VAR_0x8008, 1
copyvar VAR_0x8004, VAR_0x8008
specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
@@ -29,7 +29,7 @@ FortreeCity_House1_EventScript_2162BB:: @ 82162BB
waitstate
bufferspeciesname 0, VAR_0x8009
msgbox FortreeCity_House1_Text_216440, MSGBOX_DEFAULT
- setflag FLAG_0x09B
+ setflag FLAG_FORTREE_NPC_TRADE_COMPLETED
release
end
diff --git a/data/maps/FortreeCity_House2/scripts.inc b/data/maps/FortreeCity_House2/scripts.inc
index db8b14029..cebd18884 100644
--- a/data/maps/FortreeCity_House2/scripts.inc
+++ b/data/maps/FortreeCity_House2/scripts.inc
@@ -4,8 +4,8 @@ FortreeCity_House2_MapScripts:: @ 82177CA
FortreeCity_House2_EventScript_2177CB:: @ 82177CB
lock
faceplayer
- goto_if_set FLAG_0x108, FortreeCity_House2_EventScript_21786E
- call_if_unset FLAG_0x076, FortreeCity_House2_EventScript_217862
+ goto_if_set FLAG_RECEIVED_TM10, FortreeCity_House2_EventScript_21786E
+ call_if_unset FLAG_MET_HIDDEN_POWER_GIVER, FortreeCity_House2_EventScript_217862
msgbox FortreeCity_House2_Text_2178D6, MSGBOX_DEFAULT
multichoice 21, 8, 54, 1
switch VAR_RESULT
@@ -22,14 +22,14 @@ FortreeCity_House2_EventScript_2177CB:: @ 82177CB
giveitem_std ITEM_TM10
compare VAR_RESULT, 0
goto_if_eq FortreeCity_House2_EventScript_272054
- setflag FLAG_0x108
+ setflag FLAG_RECEIVED_TM10
msgbox FortreeCity_House2_Text_217A91, MSGBOX_DEFAULT
release
end
FortreeCity_House2_EventScript_217862:: @ 8217862
msgbox FortreeCity_House2_Text_217882, MSGBOX_DEFAULT
- setflag FLAG_0x076
+ setflag FLAG_MET_HIDDEN_POWER_GIVER
return
FortreeCity_House2_EventScript_21786E:: @ 821786E
diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc
index 742fce6e9..fe4aefe5f 100644
--- a/data/maps/FortreeCity_House4/scripts.inc
+++ b/data/maps/FortreeCity_House4/scripts.inc
@@ -7,12 +7,12 @@ FortreeCity_House4_EventScript_217C81:: @ 8217C81
FortreeCity_House4_EventScript_217C8A:: @ 8217C8A
lockall
- goto_if_set FLAG_0x0DF, FortreeCity_House4_EventScript_217D06
- goto_if_set FLAG_0x0E0, FortreeCity_House4_EventScript_217CD8
- goto_if_set FLAG_0x0DE, FortreeCity_House4_EventScript_217CC4
+ goto_if_set FLAG_RECEIVED_MENTAL_HERB, FortreeCity_House4_EventScript_217D06
+ goto_if_set FLAG_WINGULL_DELIVERED_MAIL, FortreeCity_House4_EventScript_217CD8
+ goto_if_set FLAG_WINGULL_SENT_ON_ERRAND, FortreeCity_House4_EventScript_217CC4
msgbox FortreeCity_House4_Text_217DB9, MSGBOX_DEFAULT
closemessage
- setflag FLAG_0x0DE
+ setflag FLAG_WINGULL_SENT_ON_ERRAND
clearflag FLAG_HIDE_MOSSDEEP_CITY_HOUSE_2_WINGULL
applymovement 3, FortreeCity_House4_Movement_217D1A
waitmovement 0
@@ -34,7 +34,7 @@ FortreeCity_House4_EventScript_217CD8:: @ 8217CD8
giveitem_std ITEM_MENTAL_HERB
compare VAR_RESULT, 0
goto_if_eq FortreeCity_House4_EventScript_272054
- setflag FLAG_0x0DF
+ setflag FLAG_RECEIVED_MENTAL_HERB
releaseall
end
diff --git a/data/maps/GraniteCave_1F/scripts.inc b/data/maps/GraniteCave_1F/scripts.inc
index 1ace4071b..b9e68d43c 100644
--- a/data/maps/GraniteCave_1F/scripts.inc
+++ b/data/maps/GraniteCave_1F/scripts.inc
@@ -4,10 +4,10 @@ GraniteCave_1F_MapScripts:: @ 822DA5D
GraniteCave_1F_EventScript_22DA5E:: @ 822DA5E
lock
faceplayer
- goto_if_set FLAG_0x06D, GraniteCave_1F_EventScript_22DA8A
+ goto_if_set FLAG_RECEIVED_HM05, GraniteCave_1F_EventScript_22DA8A
msgbox GraniteCave_1F_Text_22DA94, MSGBOX_DEFAULT
giveitem_std ITEM_HM05
- setflag FLAG_0x06D
+ setflag FLAG_RECEIVED_HM05
msgbox GraniteCave_1F_Text_22DBB7, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/GraniteCave_StevensRoom/scripts.inc b/data/maps/GraniteCave_StevensRoom/scripts.inc
index e08dfffd7..d29ee13f2 100644
--- a/data/maps/GraniteCave_StevensRoom/scripts.inc
+++ b/data/maps/GraniteCave_StevensRoom/scripts.inc
@@ -7,7 +7,7 @@ GraniteCave_StevensRoom_EventScript_22DC7B:: @ 822DC7B
msgbox GraniteCave_StevensRoom_Text_22DD5A, MSGBOX_DEFAULT
setvar VAR_0x8004, 274
call GraniteCave_StevensRoom_EventScript_2723E4
- setflag FLAG_0x0BD
+ setflag FLAG_DELIVERED_STEVEN_LETTER
msgbox GraniteCave_StevensRoom_Text_22DDBD, MSGBOX_DEFAULT
giveitem_std ITEM_TM47
compare VAR_RESULT, 0
@@ -20,7 +20,7 @@ GraniteCave_StevensRoom_EventScript_22DC7B:: @ 822DC7B
waitfanfare
closemessage
delay 30
- setflag FLAG_0x131
+ setflag FLAG_REGISTERED_STEVEN_POKENAV
msgbox GraniteCave_StevensRoom_Text_22DF8C, MSGBOX_DEFAULT
closemessage
compare VAR_FACING, 2
diff --git a/data/maps/IslandCave/scripts.inc b/data/maps/IslandCave/scripts.inc
index 218a92205..7b551b4a7 100644
--- a/data/maps/IslandCave/scripts.inc
+++ b/data/maps/IslandCave/scripts.inc
@@ -31,7 +31,7 @@ IslandCave_EventScript_238E62:: @ 8238E62
IslandCave_MapScript1_238E99: @ 8238E99
setflag FLAG_LANDMARK_ISLAND_CAVE
call IslandCave_EventScript_238F45
- call_if_unset FLAG_0x1BC, IslandCave_EventScript_238EAB
+ call_if_unset FLAG_DEFEATED_REGICE, IslandCave_EventScript_238EAB
end
IslandCave_EventScript_238EAB:: @ 8238EAB
@@ -107,12 +107,12 @@ IslandCave_EventScript_238F58:: @ 8238F58
goto_if_eq IslandCave_EventScript_238FA8
compare VAR_RESULT, 5
goto_if_eq IslandCave_EventScript_238FA8
- setflag FLAG_0x1BC
+ setflag FLAG_DEFEATED_REGICE
release
end
IslandCave_EventScript_238F9F:: @ 8238F9F
- setflag FLAG_0x1BC
+ setflag FLAG_DEFEATED_REGICE
goto IslandCave_EventScript_27376D
end
diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc
index a140093ca..93788a703 100644
--- a/data/maps/JaggedPass/scripts.inc
+++ b/data/maps/JaggedPass/scripts.inc
@@ -68,7 +68,7 @@ JaggedPass_EventScript_2306BB:: @ 82306BB
JaggedPass_EventScript_230718:: @ 8230718
lockall
- goto_if_set FLAG_0x139, JaggedPass_EventScript_230766
+ goto_if_set FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS, JaggedPass_EventScript_230766
waitse
playse SE_PIN
applymovement 5, JaggedPass_Movement_272598
@@ -80,7 +80,7 @@ JaggedPass_EventScript_230718:: @ 8230718
msgbox JaggedPass_Text_230CCB, MSGBOX_DEFAULT
closemessage
trainerbattle_no_intro TRAINER_GRUNT_30, JaggedPass_Text_230D2D
- setflag FLAG_0x139
+ setflag FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS
applymovement 5, JaggedPass_Movement_2725A2
waitmovement 0
releaseall
diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc
index 8d7ab36db..82a3b8469 100644
--- a/data/maps/LavaridgeTown/scripts.inc
+++ b/data/maps/LavaridgeTown/scripts.inc
@@ -5,8 +5,8 @@ LavaridgeTown_MapScripts:: @ 81EA4D3
LavaridgeTown_MapScript1_1EA4DE: @ 81EA4DE
setflag FLAG_VISITED_LAVARIDGE_TOWN
- call_if_set FLAG_0x06C, LavaridgeTown_EventScript_1EA514
- call_if_set FLAG_0x08B, LavaridgeTown_EventScript_1EA53F
+ call_if_set FLAG_FLANNERY_GIVES_BADGE_INFO, LavaridgeTown_EventScript_1EA514
+ call_if_set FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, LavaridgeTown_EventScript_1EA53F
call LavaridgeTown_EventScript_271ED7
call LavaridgeTown_EventScript_271EFB
compare VAR_0x4053, 1
@@ -16,7 +16,7 @@ LavaridgeTown_MapScript1_1EA4DE: @ 81EA4DE
end
LavaridgeTown_EventScript_1EA514:: @ 81EA514
- clearflag FLAG_0x06C
+ clearflag FLAG_FLANNERY_GIVES_BADGE_INFO
return
LavaridgeTown_EventScript_1EA518:: @ 81EA518
@@ -71,7 +71,7 @@ LavaridgeTown_EventScript_1EA551:: @ 81EA551
LavaridgeTown_EventScript_1EA5B5:: @ 81EA5B5
msgbox LavaridgeTown_Text_1EA7C0, MSGBOX_DEFAULT
giveitem_std ITEM_GO_GOGGLES
- setflag FLAG_0x0DD
+ setflag FLAG_RECEIVED_GO_GOGGLES
msgbox LavaridgeTown_Text_1EA897, MSGBOX_DEFAULT
goto LavaridgeTown_EventScript_1EA5FF
end
@@ -79,7 +79,7 @@ LavaridgeTown_EventScript_1EA5B5:: @ 81EA5B5
LavaridgeTown_EventScript_1EA5DA:: @ 81EA5DA
msgbox LavaridgeTown_Text_1EA9A2, MSGBOX_DEFAULT
giveitem_std ITEM_GO_GOGGLES
- setflag FLAG_0x0DD
+ setflag FLAG_RECEIVED_GO_GOGGLES
msgbox LavaridgeTown_Text_1EAA2E, MSGBOX_DEFAULT
goto LavaridgeTown_EventScript_1EA5FF
end
@@ -246,7 +246,7 @@ LavaridgeTown_EventScript_1EA73B:: @ 81EA73B
LavaridgeTown_EventScript_1EA744:: @ 81EA744
lock
faceplayer
- goto_if_set FLAG_0x10A, LavaridgeTown_EventScript_1EA787
+ goto_if_set FLAG_RECEIVED_LAVARIDGE_EGG, LavaridgeTown_EventScript_1EA787
msgbox LavaridgeTown_Text_1EAB80, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_EventScript_1EA79B
@@ -254,7 +254,7 @@ LavaridgeTown_EventScript_1EA744:: @ 81EA744
compare VAR_RESULT, 6
goto_if_eq LavaridgeTown_EventScript_1EA791
msgbox LavaridgeTown_Text_1EACC0, MSGBOX_DEFAULT
- setflag FLAG_0x10A
+ setflag FLAG_RECEIVED_LAVARIDGE_EGG
playfanfare MUS_FANFA4
message LavaridgeTown_Text_1EACF4
waitfanfare
diff --git a/data/maps/LavaridgeTown_Gym_1F/scripts.inc b/data/maps/LavaridgeTown_Gym_1F/scripts.inc
index c0c8f1093..06ea54a98 100644
--- a/data/maps/LavaridgeTown_Gym_1F/scripts.inc
+++ b/data/maps/LavaridgeTown_Gym_1F/scripts.inc
@@ -63,7 +63,7 @@ LavaridgeTown_Gym_1F_EventScript_1FE78C:: @ 81FE78C
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq LavaridgeTown_Gym_1F_EventScript_1FE864
- goto_if_unset FLAG_0x0A8, LavaridgeTown_Gym_1F_EventScript_1FE81D
+ goto_if_unset FLAG_RECEIVED_TM50, LavaridgeTown_Gym_1F_EventScript_1FE81D
msgbox LavaridgeTown_Gym_1F_Text_1FF546, MSGBOX_DEFAULT
release
end
@@ -73,8 +73,8 @@ LavaridgeTown_Gym_1F_EventScript_1FE7C1:: @ 81FE7C1
waitmessage
call LavaridgeTown_Gym_1F_EventScript_27207E
msgbox LavaridgeTown_Gym_1F_Text_1FF359, MSGBOX_DEFAULT
- setflag FLAG_0x06C
- setflag FLAG_0x4F3
+ setflag FLAG_FLANNERY_GIVES_BADGE_INFO
+ setflag FLAG_DEFEATED_LAVARIDGE_GYM
setflag FLAG_BADGE04_GET
addvar VAR_0x4085, 1
compare VAR_0x4085, 6
@@ -91,7 +91,7 @@ LavaridgeTown_Gym_1F_EventScript_1FE7C1:: @ 81FE7C1
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D6
+ setflag FLAG_ENABLE_FLANNERY_MATCH_CALL
release
end
@@ -100,7 +100,7 @@ LavaridgeTown_Gym_1F_EventScript_1FE81D:: @ 81FE81D
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_Gym_1F_EventScript_272054
msgbox LavaridgeTown_Gym_1F_Text_1FF45C, MSGBOX_DEFAULT
- setflag FLAG_0x0A8
+ setflag FLAG_RECEIVED_TM50
release
end
@@ -109,7 +109,7 @@ LavaridgeTown_Gym_1F_EventScript_1FE841:: @ 81FE841
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_Gym_1F_EventScript_27205E
msgbox LavaridgeTown_Gym_1F_Text_1FF45C, MSGBOX_DEFAULT
- setflag FLAG_0x0A8
+ setflag FLAG_RECEIVED_TM50
return
LavaridgeTown_Gym_1F_EventScript_1FE864:: @ 81FE864
@@ -169,7 +169,7 @@ LavaridgeTown_Gym_B1F_EventScript_1FE951:: @ 81FE951
LavaridgeTown_Gym_1F_EventScript_1FE96C:: @ 81FE96C
lock
faceplayer
- goto_if_set FLAG_0x4F3, LavaridgeTown_Gym_1F_EventScript_1FE981
+ goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, LavaridgeTown_Gym_1F_EventScript_1FE981
msgbox LavaridgeTown_Gym_1F_Text_1FE9BF, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/LavaridgeTown_HerbShop/scripts.inc b/data/maps/LavaridgeTown_HerbShop/scripts.inc
index d627d4fa7..e57996318 100644
--- a/data/maps/LavaridgeTown_HerbShop/scripts.inc
+++ b/data/maps/LavaridgeTown_HerbShop/scripts.inc
@@ -28,12 +28,12 @@ LavaridgeTown_HerbShop_EventScript_1FE4FC:: @ 81FE4FC
LavaridgeTown_HerbShop_EventScript_1FE505:: @ 81FE505
lock
faceplayer
- goto_if_set FLAG_0x0FE, LavaridgeTown_HerbShop_EventScript_1FE534
+ goto_if_set FLFLAG_RECEIVED_CHARCOAL, LavaridgeTown_HerbShop_EventScript_1FE534
msgbox LavaridgeTown_HerbShop_Text_1FE584, MSGBOX_DEFAULT
giveitem_std ITEM_CHARCOAL
compare VAR_RESULT, 0
goto_if_eq LavaridgeTown_HerbShop_EventScript_272054
- setflag FLAG_0x0FE
+ setflag FLFLAG_RECEIVED_CHARCOAL
release
end
diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc
index 20baacc89..02319e8cf 100644
--- a/data/maps/LilycoveCity/scripts.inc
+++ b/data/maps/LilycoveCity/scripts.inc
@@ -12,7 +12,7 @@ LilycoveCity_MapScript1_1E2B47: @ 81E2B47
end
LilycoveCity_MapScript1_1E2B61: @ 81E2B61
- call_if_unset FLAG_0x070, LilycoveCity_EventScript_1E2B6B
+ call_if_unset FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_1E2B6B
end
LilycoveCity_EventScript_1E2B6B:: @ 81E2B6B
@@ -34,14 +34,14 @@ LilycoveCity_EventScript_1E2BD8:: @ 81E2BD8
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x92F, LilycoveCity_EventScript_1E2C18
+ goto_if_set FLAG_DAILY_LILYCOVE_RECEIVED_BERRY, LilycoveCity_EventScript_1E2C18
msgbox LilycoveCity_Text_2A7244, MSGBOX_DEFAULT
random 10
addvar VAR_RESULT, 133
giveitem_std VAR_RESULT
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_EventScript_272054
- setflag FLAG_0x92F
+ setflag FLAG_DAILY_LILYCOVE_RECEIVED_BERRY
msgbox LilycoveCity_Text_2A72E3, MSGBOX_DEFAULT
release
end
@@ -75,7 +75,7 @@ LilycoveCity_EventScript_1E2C4A:: @ 81E2C4A
LilycoveCity_EventScript_1E2C53:: @ 81E2C53
lock
faceplayer
- goto_if_set FLAG_0x070, LilycoveCity_EventScript_1E2C68
+ goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_1E2C68
msgbox LilycoveCity_Text_1E3FAB, MSGBOX_DEFAULT
release
end
@@ -88,7 +88,7 @@ LilycoveCity_EventScript_1E2C68:: @ 81E2C68
LilycoveCity_EventScript_1E2C72:: @ 81E2C72
lock
faceplayer
- goto_if_set FLAG_0x070, LilycoveCity_EventScript_1E2C87
+ goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, LilycoveCity_EventScript_1E2C87
msgbox LilycoveCity_Text_1E40AD, MSGBOX_DEFAULT
release
end
@@ -195,14 +195,14 @@ LilycoveCity_EventScript_1E2D74:: @ 81E2D74
LilycoveCity_EventScript_1E2D7D:: @ 81E2D7D
lockall
- goto_if_set FLAG_0x0DA, LilycoveCity_EventScript_1E2DB0
+ goto_if_set FLAG_MET_WAILMER_TRAINER, LilycoveCity_EventScript_1E2DB0
msgbox LilycoveCity_Text_1E3D1F, MSGBOX_DEFAULT
applymovement VAR_LAST_TALKED, LilycoveCity_Movement_27259E
waitmovement 0
msgbox LilycoveCity_Text_1E3D4A, MSGBOX_DEFAULT
applymovement VAR_LAST_TALKED, LilycoveCity_Movement_2725A2
waitmovement 0
- setflag FLAG_0x0DA
+ setflag FLAG_MET_WAILMER_TRAINER
releaseall
end
@@ -239,8 +239,8 @@ LilycoveCity_EventScript_1E2DDE:: @ 81E2DDE
LilycoveCity_EventScript_1E2DF8:: @ 81E2DF8
playbgm MUS_GIRL_SUP, 1
- call_if_set FLAG_0x11E, LilycoveCity_EventScript_1E2E48
- call_if_unset FLAG_0x11E, LilycoveCity_EventScript_1E2E51
+ call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_1E2E48
+ call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_1E2E51
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_EventScript_1E2E5A
msgbox LilycoveCity_Text_1E3234, MSGBOX_DEFAULT
@@ -259,7 +259,7 @@ LilycoveCity_EventScript_1E2E51:: @ 81E2E51
return
LilycoveCity_EventScript_1E2E5A:: @ 81E2E5A
- setflag FLAG_0x11E
+ setflag FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE
msgbox LilycoveCity_Text_1E318D, MSGBOX_DEFAULT
savebgm MUS_DUMMY
fadedefaultbgm
@@ -268,8 +268,8 @@ LilycoveCity_EventScript_1E2E5A:: @ 81E2E5A
LilycoveCity_EventScript_1E2E6B:: @ 81E2E6B
playbgm MUS_BOY_SUP, 1
- call_if_set FLAG_0x11E, LilycoveCity_EventScript_1E2EBB
- call_if_unset FLAG_0x11E, LilycoveCity_EventScript_1E2EC4
+ call_if_set FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_1E2EBB
+ call_if_unset FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE, LilycoveCity_EventScript_1E2EC4
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_EventScript_1E2ECD
msgbox LilycoveCity_Text_1E373C, MSGBOX_DEFAULT
@@ -288,7 +288,7 @@ LilycoveCity_EventScript_1E2EC4:: @ 81E2EC4
return
LilycoveCity_EventScript_1E2ECD:: @ 81E2ECD
- setflag FLAG_0x11E
+ setflag FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE
msgbox LilycoveCity_Text_1E36BF, MSGBOX_DEFAULT
savebgm MUS_DUMMY
fadedefaultbgm
@@ -397,7 +397,7 @@ LilycoveCity_EventScript_1E3006:: @ 81E3006
waitfieldeffect 30
savebgm MUS_DUMMY
fadedefaultbgm
- setflag FLAG_0x124
+ setflag FLAG_MET_RIVAL_LILYCOVE
release
end
diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc
index c60e8fdfc..74bee15d3 100644
--- a/data/maps/LilycoveCity_ContestLobby/scripts.inc
+++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc
@@ -139,23 +139,23 @@ LilycoveCity_ContestLobby_EventScript_21A3B6:: @ 821A3B6
return
LilycoveCity_ContestLobby_EventScript_21A3F3:: @ 821A3F3
- setflag FLAG_0x0A0
+ setflag FLAG_COOL_PAINTING_MADE
return
LilycoveCity_ContestLobby_EventScript_21A3F7:: @ 821A3F7
- setflag FLAG_0x0A1
+ setflag FLAG_BEAUTY_PAINTING_MADE
return
LilycoveCity_ContestLobby_EventScript_21A3FB:: @ 821A3FB
- setflag FLAG_0x0A2
+ setflag FLAG_CUTE_PAINTING_MADE
return
LilycoveCity_ContestLobby_EventScript_21A3FF:: @ 821A3FF
- setflag FLAG_0x0A3
+ setflag FLAG_SMART_PAINTING_MADE
return
LilycoveCity_ContestLobby_EventScript_21A403:: @ 821A403
- setflag FLAG_0x0A4
+ setflag FLAG_TOUGH_PAINTING_MADE
return
LilycoveCity_ContestLobby_Movement_21A407: @ 821A407
@@ -364,7 +364,7 @@ LilycoveCity_ContestLobby_EventScript_21A5CF:: @ 821A5CF
end
LilycoveCity_ContestLobby_EventScript_21A5EF:: @ 821A5EF
- setflag FLAG_0x155
+ setflag FLAG_ENTERED_LINK_CONTEST
switch VAR_CONTEST_CATEGORY
case 0, LilycoveCity_ContestLobby_EventScript_21A62F
case 1, LilycoveCity_ContestLobby_EventScript_21A63C
@@ -1004,7 +1004,7 @@ LilycoveCity_ContestLobby_Movement_21ACEF: @ 821ACEF
LilycoveCity_ContestLobby_EventScript_21ACF1:: @ 821ACF1
lock
faceplayer
- goto_if_set FLAG_0x05F, LilycoveCity_ContestLobby_EventScript_21AD06
+ goto_if_set FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_21AD06
msgbox LilycoveCity_ContestLobby_Text_21AD10, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc
index 2290b7df5..f7fd5f453 100644
--- a/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc
+++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/scripts.inc
@@ -55,10 +55,10 @@ LilycoveCity_CoveLilyMotel_2F_EventScript_218744:: @ 8218744
LilycoveCity_CoveLilyMotel_2F_EventScript_21874D:: @ 821874D
lock
faceplayer
- goto_if_set FLAG_0x1CE, LilycoveCity_CoveLilyMotel_2F_EventScript_21876A
+ goto_if_set FLAG_MET_SCOTT_IN_LILYCOVE, LilycoveCity_CoveLilyMotel_2F_EventScript_21876A
msgbox LilycoveCity_CoveLilyMotel_2F_Text_218ACF, MSGBOX_DEFAULT
addvar VAR_0x40D1, 1
- setflag FLAG_0x1CE
+ setflag FLAG_MET_SCOTT_IN_LILYCOVE
release
end
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
index d2d5f60d6..2f8fcda3a 100644
--- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
@@ -11,11 +11,11 @@ LilycoveCity_DepartmentStore_1F_EventScript_21F69C:: @ 821F69C
dodailyevents
compare VAR_POKELOT_PRIZE, 0
goto_if_ne LilycoveCity_DepartmentStore_1F_EventScript_21F7F7
- goto_if_set FLAG_0x92A, LilycoveCity_DepartmentStore_1F_EventScript_21F78D
+ goto_if_set FLAG_DAILY_PICKED_LOTO_TICKET, LilycoveCity_DepartmentStore_1F_EventScript_21F78D
msgbox LilycoveCity_DepartmentStore_1F_Text_2A6390, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_21F797
- setflag FLAG_0x92A
+ setflag FLAG_DAILY_PICKED_LOTO_TICKET
message LilycoveCity_DepartmentStore_1F_Text_2A64C8
waitmessage
special RetrieveLotteryNumber
diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc
index 62bcc15dd..5e9157826 100644
--- a/data/maps/LilycoveCity_Harbor/scripts.inc
+++ b/data/maps/LilycoveCity_Harbor/scripts.inc
@@ -112,40 +112,40 @@ LilycoveCity_Harbor_EventScript_21E194:: @ 821E194
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_E, 1
- goto_if_set FLAG_0x1AE, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_set FLAG_HAS_EON_TICKET, LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_E, 2
return
LilycoveCity_Harbor_EventScript_21E1C6:: @ 821E1C6
setvar VAR_TEMP_D, 0
- goto_if_unset FLAG_0x8D5, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_unset FLAG_ENABLE_SHIP_BIRTH_ISLAND, LilycoveCity_Harbor_EventScript_27374E
checkitem ITEM_AURORA_TICKET, 1
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_D, 1
- goto_if_set FLAG_0x1AF, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_set FLAG_HAS_AURORA_TICKET, LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_D, 2
return
LilycoveCity_Harbor_EventScript_21E1F8:: @ 821E1F8
setvar VAR_TEMP_C, 0
- goto_if_unset FLAG_0x8D6, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_unset FLAG_ENABLE_SHIP_FARAWAY_ISLAND, LilycoveCity_Harbor_EventScript_27374E
checkitem ITEM_OLD_SEA_MAP, 1
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_C, 1
- goto_if_set FLAG_0x1B0, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_set FLAG_HAS_OLD_SEA_MAP, LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_C, 2
return
LilycoveCity_Harbor_EventScript_21E22A:: @ 821E22A
setvar VAR_TEMP_9, 0
- goto_if_unset FLAG_0x8E0, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_unset FLAG_ENABLE_SHIP_NAVEL_ROCK, LilycoveCity_Harbor_EventScript_27374E
checkitem ITEM_MYSTIC_TICKET, 1
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_9, 1
- goto_if_set FLAG_0x1DB, LilycoveCity_Harbor_EventScript_27374E
+ goto_if_set FLAG_HAS_MYSTIC_TICKET, LilycoveCity_Harbor_EventScript_27374E
setvar VAR_TEMP_9, 2
return
@@ -206,7 +206,7 @@ LilycoveCity_Harbor_EventScript_21E2EA:: @ 821E2EA
return
LilycoveCity_Harbor_EventScript_21E2F0:: @ 821E2F0
- setflag FLAG_0x1AE
+ setflag FLAG_HAS_EON_TICKET
msgbox LilycoveCity_Harbor_Text_2A68D2, MSGBOX_DEFAULT
closemessage
call LilycoveCity_Harbor_EventScript_21E4EE
@@ -223,7 +223,7 @@ LilycoveCity_Harbor_EventScript_21E30F:: @ 821E30F
end
LilycoveCity_Harbor_EventScript_21E320:: @ 821E320
- setflag FLAG_0x1AF
+ setflag FLAG_HAS_AURORA_TICKET
msgbox LilycoveCity_Harbor_Text_2A68D2, MSGBOX_DEFAULT
closemessage
call LilycoveCity_Harbor_EventScript_21E4EE
@@ -240,7 +240,7 @@ LilycoveCity_Harbor_EventScript_21E33F:: @ 821E33F
end
LilycoveCity_Harbor_EventScript_21E350:: @ 821E350
- setflag FLAG_0x1B0
+ setflag FLAG_HAS_OLD_SEA_MAP
msgbox LilycoveCity_Harbor_Text_2A6848, MSGBOX_DEFAULT
closemessage
call LilycoveCity_Harbor_EventScript_21E4EE
@@ -289,7 +289,7 @@ LilycoveCity_Harbor_EventScript_21E40C:: @ 821E40C
end
LilycoveCity_Harbor_EventScript_21E41D:: @ 821E41D
- setflag FLAG_0x1DB
+ setflag FLAG_HAS_MYSTIC_TICKET
msgbox LilycoveCity_Harbor_Text_2A68D2, MSGBOX_DEFAULT
closemessage
call LilycoveCity_Harbor_EventScript_21E4EE
@@ -617,4 +617,3 @@ LilycoveCity_Harbor_Text_21E976: @ 821E976
.string "The folks at the SHIPYARD in SLATEPORT\n"
.string "must've worked extra hard.\p"
.string "Well, it's my turn to get busy now!$"
-
diff --git a/data/maps/LilycoveCity_House2/scripts.inc b/data/maps/LilycoveCity_House2/scripts.inc
index dc526f00b..92adafe5a 100644
--- a/data/maps/LilycoveCity_House2/scripts.inc
+++ b/data/maps/LilycoveCity_House2/scripts.inc
@@ -4,12 +4,12 @@ LilycoveCity_House2_MapScripts:: @ 821ED74
LilycoveCity_House2_EventScript_21ED75:: @ 821ED75
lock
faceplayer
- goto_if_set FLAG_0x0EA, LilycoveCity_House2_EventScript_21EDAC
+ goto_if_set FLAG_RECEIVED_TM44, LilycoveCity_House2_EventScript_21EDAC
msgbox LilycoveCity_House2_Text_21EDB6, MSGBOX_DEFAULT
giveitem_std ITEM_TM44
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_House2_EventScript_272054
- setflag FLAG_0x0EA
+ setflag FLAG_RECEIVED_TM44
msgbox LilycoveCity_House2_Text_21EDF9, MSGBOX_DEFAULT
release
end
@@ -28,4 +28,3 @@ LilycoveCity_House2_Text_21EDF9: @ 821EDF9
.string "Yawn…\p"
.string "Sleep is essential for good health…\n"
.string "Sleep and regain health…$"
-
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
index 325ad0340..da39ee655 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
@@ -4,27 +4,27 @@ LilycoveCity_LilycoveMuseum_2F_MapScripts:: @ 821973A
.byte 0
LilycoveCity_LilycoveMuseum_2F_MapScript1_219745: @ 8219745
- goto_if_set FLAG_0x0A0, LilycoveCity_LilycoveMuseum_2F_EventScript_21978B
+ goto_if_set FLAG_COOL_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_21978B
goto LilycoveCity_LilycoveMuseum_2F_EventScript_219754
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219754:: @ 8219754
- goto_if_set FLAG_0x0A1, LilycoveCity_LilycoveMuseum_2F_EventScript_2197A3
+ goto_if_set FLAG_BEAUTY_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2197A3
goto LilycoveCity_LilycoveMuseum_2F_EventScript_219763
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219763:: @ 8219763
- goto_if_set FLAG_0x0A2, LilycoveCity_LilycoveMuseum_2F_EventScript_2197BB
+ goto_if_set FLAG_CUTE_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2197BB
goto LilycoveCity_LilycoveMuseum_2F_EventScript_219772
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219772:: @ 8219772
- goto_if_set FLAG_0x0A3, LilycoveCity_LilycoveMuseum_2F_EventScript_2197D3
+ goto_if_set FLAG_SMART_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2197D3
goto LilycoveCity_LilycoveMuseum_2F_EventScript_219781
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219781:: @ 8219781
- goto_if_set FLAG_0x0A4, LilycoveCity_LilycoveMuseum_2F_EventScript_2197EB
+ goto_if_set FLAG_TOUGH_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2197EB
end
LilycoveCity_LilycoveMuseum_2F_EventScript_21978B:: @ 821978B
@@ -91,7 +91,7 @@ LilycoveCity_LilycoveMuseum_2F_Movement_219863: @ 8219863
LilycoveCity_LilycoveMuseum_2F_EventScript_219866:: @ 8219866
lockall
- goto_if_set FLAG_0x0EC, LilycoveCity_LilycoveMuseum_2F_EventScript_219921
+ goto_if_set FLAG_RECEIVED_GLASS_ORNAMENT, LilycoveCity_LilycoveMuseum_2F_EventScript_219921
specialvar VAR_0x8004, sub_80F8940
switch VAR_0x8004
case 1, LilycoveCity_LilycoveMuseum_2F_EventScript_2198BA
@@ -121,7 +121,7 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_2198EA:: @ 82198EA
givedecoration_std 44
compare VAR_RESULT, 0
goto_if_eq LilycoveCity_LilycoveMuseum_2F_EventScript_219911
- setflag FLAG_0x0EC
+ setflag FLAG_RECEIVED_GLASS_ORNAMENT
closemessage
releaseall
end
@@ -140,31 +140,31 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_219921:: @ 8219921
LilycoveCity_LilycoveMuseum_2F_EventScript_21992B:: @ 821992B
lockall
- goto_if_set FLAG_0x0A2, LilycoveCity_LilycoveMuseum_2F_EventScript_2199C1
+ goto_if_set FLAG_CUTE_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2199C1
msgbox LilycoveCity_LilycoveMuseum_2F_Text_219FA0, MSGBOX_SIGN
end
LilycoveCity_LilycoveMuseum_2F_EventScript_21993E:: @ 821993E
lockall
- goto_if_set FLAG_0x0A4, LilycoveCity_LilycoveMuseum_2F_EventScript_2199DD
+ goto_if_set FLAG_TOUGH_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2199DD
msgbox LilycoveCity_LilycoveMuseum_2F_Text_219FD3, MSGBOX_SIGN
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219951:: @ 8219951
lockall
- goto_if_set FLAG_0x0A0, LilycoveCity_LilycoveMuseum_2F_EventScript_2199A5
+ goto_if_set FLAG_COOL_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2199A5
msgbox LilycoveCity_LilycoveMuseum_2F_Text_21A03B, MSGBOX_SIGN
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219964:: @ 8219964
lockall
- goto_if_set FLAG_0x0A1, LilycoveCity_LilycoveMuseum_2F_EventScript_2199B3
+ goto_if_set FLAG_BEAUTY_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2199B3
msgbox LilycoveCity_LilycoveMuseum_2F_Text_21A008, MSGBOX_SIGN
end
LilycoveCity_LilycoveMuseum_2F_EventScript_219977:: @ 8219977
lockall
- goto_if_set FLAG_0x0A3, LilycoveCity_LilycoveMuseum_2F_EventScript_2199CF
+ goto_if_set FLAG_SMART_PAINTING_MADE, LilycoveCity_LilycoveMuseum_2F_EventScript_2199CF
msgbox LilycoveCity_LilycoveMuseum_2F_Text_21A06D, MSGBOX_SIGN
end
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
index cf4be3065..77bc40635 100644
--- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
@@ -110,7 +110,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_21C8DA:: @ 821C8DA
compare VAR_RESULT, 1
goto_if_eq LilycoveCity_PokemonTrainerFanClub_EventScript_21C8F1
clearflag FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER
- clearflag FLAG_0x0D2
+ clearflag FLAG_FAN_CLUB_STRENGTH_SHARED
return
LilycoveCity_PokemonTrainerFanClub_EventScript_21C8F1:: @ 821C8F1
@@ -499,8 +499,8 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_21CD71:: @ 821CD71
LilycoveCity_PokemonTrainerFanClub_EventScript_21CD7B:: @ 821CD7B
lock
faceplayer
- goto_if_set FLAG_0x0D2, LilycoveCity_PokemonTrainerFanClub_EventScript_21CEED
- goto_if_unset FLAG_0x0D2, LilycoveCity_PokemonTrainerFanClub_EventScript_21CD90
+ goto_if_set FLAG_FAN_CLUB_STRENGTH_SHARED, LilycoveCity_PokemonTrainerFanClub_EventScript_21CEED
+ goto_if_unset FLAG_FAN_CLUB_STRENGTH_SHARED, LilycoveCity_PokemonTrainerFanClub_EventScript_21CD90
end
LilycoveCity_PokemonTrainerFanClub_EventScript_21CD90:: @ 821CD90
@@ -594,7 +594,7 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_21CED8:: @ 821CED8
setvar VAR_0x8004, 8
special BufferStreakTrainerText
msgbox LilycoveCity_PokemonTrainerFanClub_Text_281D40, MSGBOX_DEFAULT
- setflag FLAG_0x0D2
+ setflag FLAG_FAN_CLUB_STRENGTH_SHARED
release
end
@@ -859,4 +859,3 @@ LilycoveCity_PokemonTrainerFanClub_Text_21DF51: @ 821DF51
.string "True strength is…!\n"
.string "… …\p"
.string "Actually, I have no idea, either.$"
-
diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc
index c0147fedd..b7067f451 100644
--- a/data/maps/LittlerootTown/scripts.inc
+++ b/data/maps/LittlerootTown/scripts.inc
@@ -9,7 +9,7 @@ LittlerootTown_MapScript1_1E7DDB: @ 81E7DDB
call LittlerootTown_EventScript_271ED7
compare VAR_0x4092, 2
call_if_eq LittlerootTown_EventScript_1E7E67
- call_if_unset FLAG_0x052, LittlerootTown_EventScript_1E7E6F
+ call_if_unset FLAG_RESCUED_BIRCH, LittlerootTown_EventScript_1E7E6F
compare VAR_0x4050, 3
call_if_eq LittlerootTown_EventScript_1E7E92
compare VAR_0x4082, 4
@@ -35,7 +35,7 @@ LittlerootTown_EventScript_1E7E4B:: @ 81E7E4B
return
LittlerootTown_EventScript_1E7E4F:: @ 81E7E4F
- setflag FLAG_0x12D
+ setflag FLAG_RIVAL_LEFT_FOR_ROUTE103
return
LittlerootTown_EventScript_1E7E53:: @ 81E7E53
@@ -234,8 +234,8 @@ LittlerootTown_EventScript_1E802B:: @ 81E802B
LittlerootTown_EventScript_1E8034:: @ 81E8034
lock
faceplayer
- goto_if_set FLAG_0x074, LittlerootTown_EventScript_1E8087
- goto_if_set FLAG_0x052, LittlerootTown_EventScript_1E807A
+ goto_if_set FLAG_ADVENTURE_STARTED, LittlerootTown_EventScript_1E8087
+ goto_if_set FLAG_RESCUED_BIRCH, LittlerootTown_EventScript_1E807A
compare VAR_0x4050, 0
goto_if_ne LittlerootTown_EventScript_1E805D
msgbox LittlerootTown_Text_1E8BB8, MSGBOX_DEFAULT
@@ -918,7 +918,7 @@ LittlerootTown_EventScript_1E8693:: @ 81E8693
playfanfare MUS_FANFA4
message LittlerootTown_Text_1E8925
waitfanfare
- setflag FLAG_0x112
+ setflag FLAG_RECEIVED_RUNNING_SHOES
msgbox LittlerootTown_Text_1E894F, MSGBOX_DEFAULT
msgbox LittlerootTown_Text_1E8A03, MSGBOX_DEFAULT
closemessage
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
index 9eab32885..8fa7adbca 100644
--- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
@@ -7,7 +7,7 @@ LittlerootTown_BrendansHouse_1F_MapScripts:: @ 81F7755
LittlerootTown_BrendansHouse_1F_MapScript1_1F7765: @ 81F7765
compare VAR_0x4092, 6
call_if_lt LittlerootTown_BrendansHouse_1F_EventScript_1F777A
- call_if_set FLAG_0x112, LittlerootTown_BrendansHouse_1F_EventScript_1F778D
+ call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_BrendansHouse_1F_EventScript_1F778D
end
LittlerootTown_BrendansHouse_1F_EventScript_1F777A:: @ 81F777A
@@ -99,7 +99,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_1F785E:: @ 81F785E
waitmovement 0
special GetRivalSonDaughterString
msgbox LittlerootTown_BrendansHouse_1F_Text_1F8BC5, MSGBOX_DEFAULT
- setflag FLAG_0x057
+ setflag FLAG_MET_RIVAL_MOM
setvar VAR_0x4082, 2
releaseall
end
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
index 1093e5277..8bd4b43b9 100644
--- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
@@ -15,7 +15,7 @@ LittlerootTown_BrendansHouse_2F_MapScript1_1F83EE: @ 81F83EE
end
LittlerootTown_BrendansHouse_2F_EventScript_1F841A:: @ 81F841A
- goto_if_set FLAG_0x124, LittlerootTown_BrendansHouse_2F_EventScript_1F8433
+ goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_1F8433
compare VAR_0x4084, 2
goto_if_ge LittlerootTown_BrendansHouse_2F_EventScript_1F8456
goto LittlerootTown_BrendansHouse_2F_EventScript_1F8433
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
index 0f71be46a..25ebc1bbd 100644
--- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
+++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
@@ -7,7 +7,7 @@ LittlerootTown_MaysHouse_1F_MapScripts:: @ 81F88A5
LittlerootTown_MaysHouse_1F_MapScript1_1F88B5: @ 81F88B5
compare VAR_0x4092, 6
call_if_lt LittlerootTown_MaysHouse_1F_EventScript_1F88CA
- call_if_set FLAG_0x112, LittlerootTown_MaysHouse_1F_EventScript_1F88DD
+ call_if_set FLAG_RECEIVED_RUNNING_SHOES, LittlerootTown_MaysHouse_1F_EventScript_1F88DD
end
LittlerootTown_MaysHouse_1F_EventScript_1F88CA:: @ 81F88CA
@@ -99,7 +99,7 @@ LittlerootTown_MaysHouse_1F_EventScript_1F89AE:: @ 81F89AE
waitmovement 0
special GetRivalSonDaughterString
msgbox LittlerootTown_MaysHouse_1F_Text_1F8BC5, MSGBOX_DEFAULT
- setflag FLAG_0x057
+ setflag FLAG_MET_RIVAL_MOM
setvar VAR_0x408C, 2
releaseall
end
@@ -117,7 +117,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_1F89F3:: @ 81F89F3
LittlerootTown_MaysHouse_1F_EventScript_1F89F3:: @ 81F89F3
lock
faceplayer
- goto_if_set FLAG_0x082, LittlerootTown_BrendansHouse_1F_EventScript_1F8A33
+ goto_if_set FLAG_DEFEATED_RIVAL_ROUTE103, LittlerootTown_BrendansHouse_1F_EventScript_1F8A33
goto_if_set FLAG_SYS_POKEMON_GET, LittlerootTown_BrendansHouse_1F_EventScript_1F8A29
compare VAR_0x408D, 3
goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_1F8A1F
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
index 4d6661ad7..ffc4a6519 100644
--- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
+++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
@@ -15,7 +15,7 @@ LittlerootTown_MaysHouse_2F_MapScript1_1F92A1: @ 81F92A1
end
LittlerootTown_MaysHouse_2F_EventScript_1F92CD:: @ 81F92CD
- goto_if_set FLAG_0x124, LittlerootTown_MaysHouse_2F_EventScript_1F92E6
+ goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_MaysHouse_2F_EventScript_1F92E6
compare VAR_0x4084, 2
goto_if_ge LittlerootTown_MaysHouse_2F_EventScript_1F9309
goto LittlerootTown_MaysHouse_2F_EventScript_1F92E6
@@ -249,7 +249,7 @@ LittlerootTown_MaysHouse_2F_Movement_1F94BB: @ 81F94BB
LittlerootTown_BrendansHouse_2F_EventScript_1F94C1:: @ 81F94C1
LittlerootTown_MaysHouse_2F_EventScript_1F94C1:: @ 81F94C1
lockall
- goto_if_set FLAG_0x124, LittlerootTown_BrendansHouse_2F_EventScript_1F94F7
+ goto_if_set FLAG_MET_RIVAL_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_1F94F7
checkplayergender
compare VAR_RESULT, MALE
goto_if_eq LittlerootTown_BrendansHouse_2F_EventScript_1F94E3
@@ -275,17 +275,17 @@ LittlerootTown_BrendansHouse_2F_EventScript_1F94F7:: @ 81F94F7
call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_1F951D
compare VAR_RESULT, FEMALE
call_if_eq LittlerootTown_BrendansHouse_2F_EventScript_1F952F
- setflag FLAG_0x125
+ setflag FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE
releaseall
end
LittlerootTown_BrendansHouse_2F_EventScript_1F951D:: @ 81F951D
- goto_if_set FLAG_0x125, LittlerootTown_BrendansHouse_2F_EventScript_1F9541
+ goto_if_set FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_1F9541
msgbox LittlerootTown_BrendansHouse_2F_Text_1F99C9, MSGBOX_DEFAULT
return
LittlerootTown_BrendansHouse_2F_EventScript_1F952F:: @ 81F952F
- goto_if_set FLAG_0x125, LittlerootTown_BrendansHouse_2F_EventScript_1F954A
+ goto_if_set FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE, LittlerootTown_BrendansHouse_2F_EventScript_1F954A
msgbox LittlerootTown_BrendansHouse_2F_Text_1F9B0D, MSGBOX_DEFAULT
return
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
index b5dc7d060..8568a72ef 100644
--- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
@@ -196,7 +196,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1F9E80:: @ 81F9E80
setflag FLAG_HIDE_LITTLEROOT_TOWN_RIVAL
setvar VAR_0x40D3, 2
setvar VAR_0x40F5, 0
- setflag FLAG_0x072
+ setflag FLAG_SCOTT_CALL_NATIONAL_DEX
releaseall
end
@@ -266,9 +266,9 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1F9F84:: @ 81F9F84
faceplayer
compare VAR_0x4084, 3
goto_if_ge LittlerootTown_ProfessorBirchsLab_EventScript_1F9FB1
- goto_if_set FLAG_0x058, LittlerootTown_ProfessorBirchsLab_EventScript_1F9FA7
+ goto_if_set FLAG_BIRCH_AIDE_MET, LittlerootTown_ProfessorBirchsLab_EventScript_1F9FA7
msgbox LittlerootTown_ProfessorBirchsLab_Text_1FA4E2, MSGBOX_DEFAULT
- setflag FLAG_0x058
+ setflag FLAG_BIRCH_AIDE_MET
release
end
@@ -482,7 +482,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1FA25A:: @ 81FA25A
compare VAR_0x40D3, 2
goto_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_1FA294
goto_if_unset FLAG_HAS_MATCH_CALL, LittlerootTown_ProfessorBirchsLab_EventScript_1FA29E
- goto_if_unset FLAG_0x119, LittlerootTown_ProfessorBirchsLab_EventScript_1FA2D2
+ goto_if_unset FLAG_ENABLE_PROF_BIRCH_MATCH_CALL, LittlerootTown_ProfessorBirchsLab_EventScript_1FA2D2
goto LittlerootTown_ProfessorBirchsLab_EventScript_1FA29E
end
@@ -518,7 +518,7 @@ Route101_EventScript_1FA2D2:: @ 81FA2D2
waitfanfare
closemessage
delay 30
- setflag FLAG_0x119
+ setflag FLAG_ENABLE_PROF_BIRCH_MATCH_CALL
setvar VAR_0x40DA, 2
release
end
@@ -538,7 +538,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1FA2F8:: @ 81FA2F8
compare VAR_RESULT, FEMALE
call_if_eq LittlerootTown_ProfessorBirchsLab_EventScript_1FA37F
setvar VAR_0x4084, 5
- setflag FLAG_0x074
+ setflag FLAG_ADVENTURE_STARTED
setvar VAR_0x4051, 1
setvar VAR_0x408D, 4
setvar VAR_0x4050, 3
@@ -569,7 +569,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1FA3AC:: @ 81FA3AC
waitfanfare
setflag FLAG_SYS_POKEDEX_GET
special sub_81AFDA0
- setflag FLAG_0x8E4
+ setflag FLAG_RECEIVED_POKEDEX_FROM_BIRCH
setvar VAR_0x40CD, 1
return
@@ -687,7 +687,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_1FA4D6:: @ 81FA4D6
lockall
pokenavcall LittlerootTown_ProfessorBirchsLab_Text_1FBD1A
waitmessage
- clearflag FLAG_0x072
+ clearflag FLAG_SCOTT_CALL_NATIONAL_DEX
releaseall
end
diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc
index 818b11da7..ba585c98a 100644
--- a/data/maps/MagmaHideout_4F/scripts.inc
+++ b/data/maps/MagmaHideout_4F/scripts.inc
@@ -63,7 +63,7 @@ MagmaHideout_4F_EventScript_23A560:: @ 823A560
clearflag FLAG_HIDE_SLATEPORT_CITY_CAPTAIN_STERN
clearflag FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY
setvar VAR_0x4058, 1
- setflag FLAG_0x06F
+ setflag FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT
setvar VAR_0x40A0, 1
fadescreen 1
removeobject 6
@@ -225,4 +225,3 @@ MagmaHideout_4F_Text_23ABE2: @ 823ABE2
.string "any need for this blasted volcano.\p"
.string "I am going after GROUDON, so this\n"
.string "is where we part!$"
-
diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc
index d42e0e1d6..aae89cb8a 100644
--- a/data/maps/MarineCave_End/scripts.inc
+++ b/data/maps/MarineCave_End/scripts.inc
@@ -15,7 +15,7 @@ MarineCave_End_EventScript_23AFF4:: @ 823AFF4
return
MarineCave_End_MapScript1_23B008: @ 823B008
- call_if_unset FLAG_0x1BE, MarineCave_End_EventScript_23B012
+ call_if_unset FLAG_DEFEATED_KYOGRE, MarineCave_End_EventScript_23B012
end
MarineCave_End_EventScript_23B012:: @ 823B012
@@ -48,13 +48,13 @@ MarineCave_End_EventScript_23B01B:: @ 823B01B
compare VAR_RESULT, 5
goto_if_eq MarineCave_End_EventScript_23B092
setvar VAR_0x4039, 1
- setflag FLAG_0x1BE
+ setflag FLAG_DEFEATED_KYOGRE
releaseall
end
MarineCave_End_EventScript_23B084:: @ 823B084
setvar VAR_0x4039, 1
- setflag FLAG_0x1BE
+ setflag FLAG_DEFEATED_KYOGRE
goto MarineCave_End_EventScript_27376D
end
diff --git a/data/maps/MauvilleCity/scripts.inc b/data/maps/MauvilleCity/scripts.inc
index 79e6f1a5e..21f654888 100644
--- a/data/maps/MauvilleCity/scripts.inc
+++ b/data/maps/MauvilleCity/scripts.inc
@@ -7,7 +7,7 @@ MauvilleCity_MapScript1_1DF38B: @ 81DF38B
clearflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE
clearflag FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION
setflag FLAG_SYS_TV_START
- clearflag FLAG_0x063
+ clearflag FLAG_MAUVILLE_GYM_BARRIERS_STATE
setvar VAR_0x4093, 0
call_if_set FLAG_GOT_TM24_FROM_WATTSON, MauvilleCity_EventScript_1DF3A9
end
@@ -53,9 +53,9 @@ MauvilleCity_EventScript_1DF3F2:: @ 81DF3F2
MauvilleCity_EventScript_1DF3FB:: @ 81DF3FB
lock
faceplayer
- goto_if_set FLAG_0x062, MauvilleCity_EventScript_1DF413
+ goto_if_set FLAG_TV_EXPLAINED, MauvilleCity_EventScript_1DF413
msgbox MauvilleCity_Text_1E056A, MSGBOX_DEFAULT
- setflag FLAG_0x062
+ setflag FLAG_TV_EXPLAINED
release
end
@@ -67,7 +67,7 @@ MauvilleCity_EventScript_1DF413:: @ 81DF413
MauvilleCity_EventScript_1DF41D:: @ 81DF41D
lock
faceplayer
- goto_if_set FLAG_0x11C, MauvilleCity_EventScript_1DF43D
+ goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_1DF43D
msgbox MauvilleCity_Text_1DF7DC, MSGBOX_DEFAULT
closemessage
applymovement 7, MauvilleCity_Movement_2725A2
@@ -85,7 +85,7 @@ MauvilleCity_EventScript_1DF43D:: @ 81DF43D
MauvilleCity_EventScript_1DF452:: @ 81DF452
lockall
- goto_if_set FLAG_0x11C, MauvilleCity_EventScript_1DF690
+ goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_1DF690
applymovement 6, MauvilleCity_Movement_2725A8
waitmovement 0
msgbox MauvilleCity_Text_1DF845, MSGBOX_DEFAULT
@@ -157,9 +157,9 @@ MauvilleCity_EventScript_1DF593:: @ 81DF593
removeobject 7
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLYS_UNCLE
- setflag FLAG_0x0BE
+ setflag FLAG_DEFEATED_WALLY_MAUVILLE
setvar VAR_0x40F2, 0
- setflag FLAG_0x088
+ setflag FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL
compare VAR_FACING, 2
call_if_eq MauvilleCity_EventScript_1DF5F3
compare VAR_FACING, 4
@@ -217,7 +217,7 @@ MauvilleCity_EventScript_1DF63A:: @ 81DF63A
return
MauvilleCity_EventScript_1DF683:: @ 81DF683
- setflag FLAG_0x11C
+ setflag FLAG_DECLINED_WALLY_BATTLE_MAUVILLE
msgbox MauvilleCity_Text_1DFA4A, MSGBOX_DEFAULT
release
end
@@ -461,8 +461,8 @@ MauvilleCity_EventScript_1DF7BA:: @ 81DF7BA
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0D6
- clearflag FLAG_0x088
+ setflag FLAG_ENABLE_WALLY_MATCH_CALL
+ clearflag FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL
releaseall
end
diff --git a/data/maps/MauvilleCity_BikeShop/scripts.inc b/data/maps/MauvilleCity_BikeShop/scripts.inc
index fd390a92c..fe6832423 100644
--- a/data/maps/MauvilleCity_BikeShop/scripts.inc
+++ b/data/maps/MauvilleCity_BikeShop/scripts.inc
@@ -4,8 +4,8 @@ MauvilleCity_BikeShop_MapScripts:: @ 820EBBB
MauvilleCity_BikeShop_EventScript_20EBBC:: @ 820EBBC
lock
faceplayer
- goto_if_set FLAG_0x05A, MauvilleCity_BikeShop_EventScript_20EC94
- goto_if_set FLAG_0x059, MauvilleCity_BikeShop_EventScript_20EBF7
+ goto_if_set FLAG_RECEIVED_BIKE, MauvilleCity_BikeShop_EventScript_20EC94
+ goto_if_set FLAG_DECLINED_BIKE, MauvilleCity_BikeShop_EventScript_20EBF7
msgbox MauvilleCity_BikeShop_Text_20EE22, MSGBOX_DEFAULT
msgbox MauvilleCity_BikeShop_Text_20EE99, MSGBOX_YESNO
compare VAR_RESULT, 1
@@ -32,13 +32,13 @@ MauvilleCity_BikeShop_EventScript_20EC16:: @ 820EC16
end
MauvilleCity_BikeShop_EventScript_20EC3D:: @ 820EC3D
- setflag FLAG_0x059
+ setflag FLAG_DECLINED_BIKE
msgbox MauvilleCity_BikeShop_Text_20EEE8, MSGBOX_DEFAULT
release
end
MauvilleCity_BikeShop_EventScript_20EC4A:: @ 820EC4A
- setflag FLAG_0x05A
+ setflag FLAG_RECEIVED_BIKE
goto MauvilleCity_BikeShop_EventScript_20EC16
end
diff --git a/data/maps/MauvilleCity_GameCorner/scripts.inc b/data/maps/MauvilleCity_GameCorner/scripts.inc
index 45f00c9ee..34125b421 100644
--- a/data/maps/MauvilleCity_GameCorner/scripts.inc
+++ b/data/maps/MauvilleCity_GameCorner/scripts.inc
@@ -404,7 +404,7 @@ MauvilleCity_GameCorner_EventScript_21012E:: @ 821012E
MauvilleCity_GameCorner_EventScript_210137:: @ 8210137
lock
faceplayer
- goto_if_set FLAG_0x0E2, MauvilleCity_GameCorner_EventScript_210213
+ goto_if_set FLAG_RECEIVED_STARTER_DOLL, MauvilleCity_GameCorner_EventScript_210213
msgbox MauvilleCity_GameCorner_Text_210750, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MauvilleCity_GameCorner_EventScript_210209
@@ -421,7 +421,7 @@ MauvilleCity_GameCorner_EventScript_21017C:: @ 821017C
goto_if_eq MauvilleCity_GameCorner_EventScript_2101FA
msgbox MauvilleCity_GameCorner_Text_21079C, MSGBOX_DEFAULT
givedecoration_std 88
- setflag FLAG_0x0E2
+ setflag FLAG_RECEIVED_STARTER_DOLL
goto MauvilleCity_GameCorner_EventScript_210213
end
@@ -432,7 +432,7 @@ MauvilleCity_GameCorner_EventScript_2101A6:: @ 82101A6
goto_if_eq MauvilleCity_GameCorner_EventScript_2101FA
msgbox MauvilleCity_GameCorner_Text_21079C, MSGBOX_DEFAULT
givedecoration_std 89
- setflag FLAG_0x0E2
+ setflag FLAG_RECEIVED_STARTER_DOLL
goto MauvilleCity_GameCorner_EventScript_210213
end
@@ -443,7 +443,7 @@ MauvilleCity_GameCorner_EventScript_2101D0:: @ 82101D0
goto_if_eq MauvilleCity_GameCorner_EventScript_2101FA
msgbox MauvilleCity_GameCorner_Text_21079C, MSGBOX_DEFAULT
givedecoration_std 90
- setflag FLAG_0x0E2
+ setflag FLAG_RECEIVED_STARTER_DOLL
goto MauvilleCity_GameCorner_EventScript_210213
end
@@ -474,11 +474,11 @@ MauvilleCity_GameCorner_EventScript_21021D:: @ 821021D
end
MauvilleCity_GameCorner_EventScript_21023D:: @ 821023D
- goto_if_set FLAG_0x0E1, MauvilleCity_GameCorner_EventScript_21026B
+ goto_if_set FLAG_RECEIVED_20_COINS, MauvilleCity_GameCorner_EventScript_21026B
checkcoins VAR_TEMP_1
compare VAR_TEMP_1, 1
goto_if_ge MauvilleCity_GameCorner_EventScript_21026B
- setflag FLAG_0x0E1
+ setflag FLAG_RECEIVED_20_COINS
givecoins 20
msgbox MauvilleCity_GameCorner_Text_2108A0, MSGBOX_DEFAULT
playse SE_REGI
diff --git a/data/maps/MauvilleCity_Gym/scripts.inc b/data/maps/MauvilleCity_Gym/scripts.inc
index 335a27f56..76bceae56 100644
--- a/data/maps/MauvilleCity_Gym/scripts.inc
+++ b/data/maps/MauvilleCity_Gym/scripts.inc
@@ -3,7 +3,7 @@ MauvilleCity_Gym_MapScripts:: @ 820DD6E
.byte 0
MauvilleCity_Gym_MapScript1_20DD74: @ 820DD74
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20DEE7
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20DEE7
switch VAR_0x4093
case 0, MauvilleCity_Gym_EventScript_20DDBA
case 1, MauvilleCity_Gym_EventScript_20DEAF
@@ -13,7 +13,7 @@ MauvilleCity_Gym_MapScript1_20DD74: @ 820DD74
end
MauvilleCity_Gym_EventScript_20DDBA:: @ 820DDBA
- goto_if_set FLAG_0x063, MauvilleCity_Gym_EventScript_20DDC4
+ goto_if_set FLAG_MAUVILLE_GYM_BARRIERS_STATE, MauvilleCity_Gym_EventScript_20DDC4
end
MauvilleCity_Gym_EventScript_20DDC4:: @ 820DDC4
@@ -78,7 +78,7 @@ MauvilleCity_Gym_EventScript_20DEEB:: @ 820DEEB
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq MauvilleCity_Gym_EventScript_20DFDE
- goto_if_unset FLAG_0x0A7, MauvilleCity_Gym_EventScript_20DF8D
+ goto_if_unset FLAG_RECEIVED_TM34, MauvilleCity_Gym_EventScript_20DF8D
compare VAR_0x40BA, 2
goto_if_eq MauvilleCity_Gym_EventScript_20DFD4
msgbox MauvilleCity_Gym_Text_20E8E3, MSGBOX_DEFAULT
@@ -92,7 +92,7 @@ MauvilleCity_Gym_EventScript_20DF2B:: @ 820DF2B
msgbox MauvilleCity_Gym_Text_20E7AA, MSGBOX_DEFAULT
setvar VAR_0x40D2, 3
clearflag FLAG_HIDE_VERDANTURF_TOWN_SCOTT
- setflag FLAG_0x4F2
+ setflag FLAG_DEFEATED_MAUVILLE_GYM
setflag FLAG_BADGE03_GET
addvar VAR_0x4085, 1
compare VAR_0x4085, 6
@@ -110,7 +110,7 @@ MauvilleCity_Gym_EventScript_20DF2B:: @ 820DF2B
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D5
+ setflag FLAG_ENABLE_WATTSON_MATCH_CALL
release
end
@@ -119,7 +119,7 @@ MauvilleCity_Gym_EventScript_20DF8D:: @ 820DF8D
compare VAR_RESULT, 0
goto_if_eq MauvilleCity_Gym_EventScript_272054
msgbox MauvilleCity_Gym_Text_20E844, MSGBOX_DEFAULT
- setflag FLAG_0x0A7
+ setflag FLAG_RECEIVED_TM34
release
end
@@ -128,7 +128,7 @@ MauvilleCity_Gym_EventScript_20DFB1:: @ 820DFB1
compare VAR_RESULT, 0
goto_if_eq MauvilleCity_Gym_EventScript_27205E
msgbox MauvilleCity_Gym_Text_20E844, MSGBOX_DEFAULT
- setflag FLAG_0x0A7
+ setflag FLAG_RECEIVED_TM34
return
MauvilleCity_Gym_EventScript_20DFD4:: @ 820DFD4
@@ -143,7 +143,7 @@ MauvilleCity_Gym_EventScript_20DFDE:: @ 820DFDE
MauvilleCity_Gym_EventScript_20DFF9:: @ 820DFF9
lockall
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20E0AD
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20E0AD
compare VAR_0x4093, 1
goto_if_eq MauvilleCity_Gym_EventScript_20E0AD
setvar VAR_0x4093, 1
@@ -153,7 +153,7 @@ MauvilleCity_Gym_EventScript_20DFF9:: @ 820DFF9
MauvilleCity_Gym_EventScript_20E01E:: @ 820E01E
lockall
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20E0AD
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20E0AD
compare VAR_0x4093, 2
goto_if_eq MauvilleCity_Gym_EventScript_20E0AD
setvar VAR_0x4093, 2
@@ -163,7 +163,7 @@ MauvilleCity_Gym_EventScript_20E01E:: @ 820E01E
MauvilleCity_Gym_EventScript_20E043:: @ 820E043
lockall
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20E0AD
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20E0AD
compare VAR_0x4093, 3
goto_if_eq MauvilleCity_Gym_EventScript_20E0AD
setvar VAR_0x4093, 3
@@ -173,7 +173,7 @@ MauvilleCity_Gym_EventScript_20E043:: @ 820E043
MauvilleCity_Gym_EventScript_20E068:: @ 820E068
lockall
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20E0AD
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20E0AD
compare VAR_0x4093, 4
goto_if_eq MauvilleCity_Gym_EventScript_20E0AD
setvar VAR_0x4093, 4
@@ -186,8 +186,8 @@ MauvilleCity_Gym_EventScript_20E08D:: @ 820E08D
special MauvilleGymSpecial1
special DrawWholeMapView
playse SE_KI_GASYAN
- goto_if_set FLAG_0x063, MauvilleCity_Gym_EventScript_20E0B4
- goto_if_unset FLAG_0x063, MauvilleCity_Gym_EventScript_20E0AF
+ goto_if_set FLAG_MAUVILLE_GYM_BARRIERS_STATE, MauvilleCity_Gym_EventScript_20E0B4
+ goto_if_unset FLAG_MAUVILLE_GYM_BARRIERS_STATE, MauvilleCity_Gym_EventScript_20E0AF
releaseall
end
@@ -196,12 +196,12 @@ MauvilleCity_Gym_EventScript_20E0AD:: @ 820E0AD
end
MauvilleCity_Gym_EventScript_20E0AF:: @ 820E0AF
- setflag FLAG_0x063
+ setflag FLAG_MAUVILLE_GYM_BARRIERS_STATE
releaseall
end
MauvilleCity_Gym_EventScript_20E0B4:: @ 820E0B4
- clearflag FLAG_0x063
+ clearflag FLAG_MAUVILLE_GYM_BARRIERS_STATE
releaseall
end
@@ -233,7 +233,7 @@ MauvilleCity_Gym_EventScript_20E115:: @ 820E115
MauvilleCity_Gym_EventScript_20E12C:: @ 820E12C
lock
faceplayer
- goto_if_set FLAG_0x4F2, MauvilleCity_Gym_EventScript_20E141
+ goto_if_set FLAG_DEFEATED_MAUVILLE_GYM, MauvilleCity_Gym_EventScript_20E141
msgbox MauvilleCity_Gym_Text_20E17F, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/MauvilleCity_House1/scripts.inc b/data/maps/MauvilleCity_House1/scripts.inc
index 0168f2e9b..50f84d87c 100644
--- a/data/maps/MauvilleCity_House1/scripts.inc
+++ b/data/maps/MauvilleCity_House1/scripts.inc
@@ -4,10 +4,10 @@ MauvilleCity_House1_MapScripts:: @ 820F975
MauvilleCity_House1_EventScript_20F976:: @ 820F976
lock
faceplayer
- goto_if_set FLAG_0x06B, MauvilleCity_House1_EventScript_20F9A5
+ goto_if_set FLAG_RECEIVED_HM06, MauvilleCity_House1_EventScript_20F9A5
msgbox MauvilleCity_House1_Text_20F9AF, MSGBOX_DEFAULT
giveitem_std ITEM_HM06
- setflag FLAG_0x06B
+ setflag FLAG_RECEIVED_HM06
setflag FLAG_HIDE_ROUTE_111_ROCK_SMASH_TIP_GUY
msgbox MauvilleCity_House1_Text_20FAA9, MSGBOX_DEFAULT
release
diff --git a/data/maps/MauvilleCity_House2/scripts.inc b/data/maps/MauvilleCity_House2/scripts.inc
index 288e50725..c49052914 100644
--- a/data/maps/MauvilleCity_House2/scripts.inc
+++ b/data/maps/MauvilleCity_House2/scripts.inc
@@ -4,7 +4,7 @@ MauvilleCity_House2_MapScripts:: @ 8210C5C
MauvilleCity_House2_EventScript_210C5D:: @ 8210C5D
lock
faceplayer
- goto_if_set FLAG_0x102, MauvilleCity_House2_EventScript_210CDA
+ goto_if_set FLAG_RECEIVED_COIN_CASE, MauvilleCity_House2_EventScript_210CDA
msgbox MauvilleCity_House2_Text_210CEE, MSGBOX_DEFAULT
checkitem ITEM_HARBOR_MAIL, 1
compare VAR_RESULT, 1
@@ -29,7 +29,7 @@ MauvilleCity_House2_EventScript_210CB8:: @ 8210CB8
msgbox MauvilleCity_House2_Text_210DB3, MSGBOX_DEFAULT
takeitem ITEM_HARBOR_MAIL, 1
giveitem_std ITEM_COIN_CASE
- setflag FLAG_0x102
+ setflag FLAG_RECEIVED_COIN_CASE
goto MauvilleCity_House2_EventScript_210CDA
end
diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc
index 7732e8e7d..ea161ba23 100644
--- a/data/maps/MeteorFalls_1F_1R/scripts.inc
+++ b/data/maps/MeteorFalls_1F_1R/scripts.inc
@@ -84,7 +84,7 @@ MeteorFalls_1F_1R_EventScript_22BD5F:: @ 822BD5F
removeobject 8
removeobject 9
setflag FLAG_HIDE_ROUTE_112_TEAM_MAGMA
- setflag FLAG_0x0CF
+ setflag FLAG_MET_ARCHIE_METEOR_FALLS
setflag FLAG_HIDE_FALLORBOR_TOWN_BATTLE_TENT_SCOTT
setvar VAR_0x40BF, 1
releaseall
@@ -220,8 +220,8 @@ MeteorFalls_1F_1R_Movement_22BF1D: @ 822BF1D
MeteorFalls_1F_1R_EventScript_22BF25:: @ 822BF25
lock
faceplayer
- goto_if_set FLAG_0x0F4, MeteorFalls_1F_1R_EventScript_22BF3D
- setflag FLAG_0x0F4
+ goto_if_set FLAG_MET_PROF_COSMO, MeteorFalls_1F_1R_EventScript_22BF3D
+ setflag FLAG_MET_PROF_COSMO
msgbox MeteorFalls_1F_1R_Text_22C342, MSGBOX_DEFAULT
release
end
@@ -307,4 +307,3 @@ MeteorFalls_1F_1R_Text_22C47D: @ 822C47D
.string "PROF. COZMO: But that TEAM MAGMA…\p"
.string "What are they going to do with that\n"
.string "METEORITE at MT. CHIMNEY?$"
-
diff --git a/data/maps/MeteorFalls_StevensCave/scripts.inc b/data/maps/MeteorFalls_StevensCave/scripts.inc
index 854105932..ba8d807c5 100644
--- a/data/maps/MeteorFalls_StevensCave/scripts.inc
+++ b/data/maps/MeteorFalls_StevensCave/scripts.inc
@@ -3,7 +3,7 @@ MeteorFalls_StevensCave_MapScripts:: @ 823B181
MeteorFalls_StevensCave_EventScript_23B182:: @ 823B182
lock
- goto_if_set FLAG_0x4F8, MeteorFalls_StevensCave_EventScript_23B1CD
+ goto_if_set FLAG_DEFEATED_METEOR_FALLS_STEVEN, MeteorFalls_StevensCave_EventScript_23B1CD
waitse
playse SE_PIN
applymovement 1, MeteorFalls_StevensCave_Movement_272598
@@ -15,7 +15,7 @@ MeteorFalls_StevensCave_EventScript_23B182:: @ 823B182
msgbox MeteorFalls_StevensCave_Text_23B1E1, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_STEVEN, MeteorFalls_StevensCave_Text_23B32D
msgbox MeteorFalls_StevensCave_Text_23B358, MSGBOX_DEFAULT
- setflag FLAG_0x4F8
+ setflag FLAG_DEFEATED_METEOR_FALLS_STEVEN
release
end
diff --git a/data/maps/MirageTower_1F/scripts.inc b/data/maps/MirageTower_1F/scripts.inc
index d8432293f..94aed55d0 100644
--- a/data/maps/MirageTower_1F/scripts.inc
+++ b/data/maps/MirageTower_1F/scripts.inc
@@ -3,7 +3,7 @@ MirageTower_1F_MapScripts:: @ 823AD01
.byte 0
MirageTower_1F_MapScript1_23AD07: @ 823AD07
- setflag FLAG_0x8DC
+ setflag FLAG_ENTERED_MIRAGE_TOWER
setflag FLAG_FORCE_MIRAGE_TOWER_VISIBLE
setflag FLAG_LANDMARK_MIRAGE_TOWER
end
diff --git a/data/maps/MirageTower_4F/scripts.inc b/data/maps/MirageTower_4F/scripts.inc
index 5476d5e78..312852586 100644
--- a/data/maps/MirageTower_4F/scripts.inc
+++ b/data/maps/MirageTower_4F/scripts.inc
@@ -13,7 +13,7 @@ MirageTower_4F_EventScript_23AD48:: @ 823AD48
setflag FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL
removeobject 1
delay 30
- setflag FLAG_0x14F
+ setflag FLAG_CHOSE_CLAW_FOSSIL
goto MirageTower_4F_EventScript_23ADCA
end
@@ -34,7 +34,7 @@ MirageTower_4F_EventScript_23AD89:: @ 823AD89
setflag FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL
removeobject 2
delay 30
- setflag FLAG_0x150
+ setflag FLAG_CHOSE_ROOT_FOSSIL
goto MirageTower_4F_EventScript_23ADCA
end
diff --git a/data/maps/MossdeepCity/scripts.inc b/data/maps/MossdeepCity/scripts.inc
index 54210e809..b504d7004 100644
--- a/data/maps/MossdeepCity/scripts.inc
+++ b/data/maps/MossdeepCity/scripts.inc
@@ -3,17 +3,17 @@ MossdeepCity_MapScripts:: @ 81E4A96
.byte 0
MossdeepCity_MapScript1_1E4A9C: @ 81E4A9C
- clearflag FLAG_0x064
- clearflag FLAG_0x065
- clearflag FLAG_0x066
- clearflag FLAG_0x067
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_1
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_2
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_3
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_4
call_if_set FLAG_SYS_WEATHER_CTRL, MossdeepCity_EventScript_27207A
end
MossdeepCity_EventScript_1E4AB2:: @ 81E4AB2
lock
faceplayer
- goto_if_set FLAG_0x07B, MossdeepCity_EventScript_1E4AC7
+ goto_if_set FLAG_RECEIVED_HM08, MossdeepCity_EventScript_1E4AC7
msgbox MossdeepCity_Text_1E4E90, MSGBOX_DEFAULT
release
end
@@ -26,7 +26,7 @@ MossdeepCity_EventScript_1E4AC7:: @ 81E4AC7
MossdeepCity_EventScript_1E4AD1:: @ 81E4AD1
lock
faceplayer
- goto_if_set FLAG_0x07B, MossdeepCity_EventScript_1E4AE6
+ goto_if_set FLAG_RECEIVED_HM08, MossdeepCity_EventScript_1E4AE6
msgbox MossdeepCity_Text_1E4F50, MSGBOX_DEFAULT
release
end
@@ -224,7 +224,7 @@ MossdeepCity_EventScript_1E4C10:: @ 81E4C10
MossdeepCity_EventScript_1E4C26:: @ 81E4C26
lock
faceplayer
- goto_if_set FLAG_0x114, MossdeepCity_EventScript_1E4C68
+ goto_if_set FLAG_RECEIVED_KINGS_ROCK, MossdeepCity_EventScript_1E4C68
msgbox MossdeepCity_Text_1E4CED, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_EventScript_1E4C72
@@ -232,7 +232,7 @@ MossdeepCity_EventScript_1E4C26:: @ 81E4C26
giveitem_std ITEM_KINGS_ROCK
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_EventScript_272054
- setflag FLAG_0x114
+ setflag FLAG_RECEIVED_KINGS_ROCK
release
end
diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc
index 84157a362..fc1a73b4d 100644
--- a/data/maps/MossdeepCity_Gym/scripts.inc
+++ b/data/maps/MossdeepCity_Gym/scripts.inc
@@ -3,22 +3,22 @@ MossdeepCity_Gym_MapScripts:: @ 8220800
.byte 0
MossdeepCity_Gym_MapScript1_220806: @ 8220806
- goto_if_set FLAG_0x064, MossdeepCity_Gym_EventScript_22083D
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_1, MossdeepCity_Gym_EventScript_22083D
goto MossdeepCity_Gym_EventScript_220815
end
MossdeepCity_Gym_EventScript_220815:: @ 8220815
- goto_if_set FLAG_0x065, MossdeepCity_Gym_EventScript_220855
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_2, MossdeepCity_Gym_EventScript_220855
goto MossdeepCity_Gym_EventScript_220824
end
MossdeepCity_Gym_EventScript_220824:: @ 8220824
- goto_if_set FLAG_0x066, MossdeepCity_Gym_EventScript_22086D
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_3, MossdeepCity_Gym_EventScript_22086D
goto MossdeepCity_Gym_EventScript_220833
end
MossdeepCity_Gym_EventScript_220833:: @ 8220833
- goto_if_set FLAG_0x067, MossdeepCity_Gym_EventScript_220885
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_4, MossdeepCity_Gym_EventScript_220885
end
MossdeepCity_Gym_EventScript_22083D:: @ 822083D
@@ -49,7 +49,7 @@ MossdeepCity_Gym_EventScript_220898:: @ 8220898
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq MossdeepCity_Gym_EventScript_22097E
- goto_if_unset FLAG_0x0AB, MossdeepCity_Gym_EventScript_220937
+ goto_if_unset FLAG_RECEIVED_TM04, MossdeepCity_Gym_EventScript_220937
msgbox MossdeepCity_Gym_Text_221B1D, MSGBOX_DEFAULT
release
end
@@ -59,11 +59,11 @@ MossdeepCity_Gym_EventScript_2208D1:: @ 82208D1
waitmessage
call MossdeepCity_Gym_EventScript_27207E
msgbox MossdeepCity_Gym_Text_221999, MSGBOX_DEFAULT
- setflag FLAG_0x4F6
+ setflag FLAG_DEFEATED_MOSSDEEP_GYM
setflag FLAG_BADGE07_GET
setflag FLAG_HIDE_AQUA_HIDEOUT_GRUNTS
clearflag FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY
- clearflag FLAG_0x393
+ clearflag FLAG_UNKNOWN_0x393
setvar VAR_0x8008, 7
call MossdeepCity_Gym_EventScript_271F43
clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS
@@ -82,7 +82,7 @@ MossdeepCity_Gym_EventScript_2208D1:: @ 82208D1
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D8
+ setflag FLAG_ENABLE_TATE_AND_LIZA_MATCH_CALL
release
end
@@ -91,7 +91,7 @@ MossdeepCity_Gym_EventScript_220937:: @ 8220937
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_Gym_EventScript_272054
msgbox MossdeepCity_Gym_Text_221A40, MSGBOX_DEFAULT
- setflag FLAG_0x0AB
+ setflag FLAG_RECEIVED_TM04
release
end
@@ -100,7 +100,7 @@ MossdeepCity_Gym_EventScript_22095B:: @ 822095B
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_Gym_EventScript_27205E
msgbox MossdeepCity_Gym_Text_221A40, MSGBOX_DEFAULT
- setflag FLAG_0x0AB
+ setflag FLAG_RECEIVED_TM04
return
MossdeepCity_Gym_EventScript_22097E:: @ 822097E
@@ -110,8 +110,8 @@ MossdeepCity_Gym_EventScript_22097E:: @ 822097E
MossdeepCity_Gym_EventScript_220999:: @ 8220999
lockall
- goto_if_set FLAG_0x064, MossdeepCity_Gym_EventScript_2209D0
- setflag FLAG_0x064
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_1, MossdeepCity_Gym_EventScript_2209D0
+ setflag FLAG_MOSSDEEP_GYM_SWITCH_1
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 5, 5, 516, 0
@@ -126,7 +126,7 @@ MossdeepCity_Gym_EventScript_2209C8:: @ 82209C8
end
MossdeepCity_Gym_EventScript_2209D0:: @ 82209D0
- clearflag FLAG_0x064
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_1
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 5, 5, 524, 0
@@ -136,8 +136,8 @@ MossdeepCity_Gym_EventScript_2209D0:: @ 82209D0
MossdeepCity_Gym_EventScript_2209F5:: @ 82209F5
lockall
- goto_if_set FLAG_0x065, MossdeepCity_Gym_EventScript_220A24
- setflag FLAG_0x065
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_2, MossdeepCity_Gym_EventScript_220A24
+ setflag FLAG_MOSSDEEP_GYM_SWITCH_2
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 8, 14, 516, 0
@@ -146,7 +146,7 @@ MossdeepCity_Gym_EventScript_2209F5:: @ 82209F5
end
MossdeepCity_Gym_EventScript_220A24:: @ 8220A24
- clearflag FLAG_0x065
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_2
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 8, 14, 517, 0
@@ -156,8 +156,8 @@ MossdeepCity_Gym_EventScript_220A24:: @ 8220A24
MossdeepCity_Gym_EventScript_220A49:: @ 8220A49
lockall
- goto_if_set FLAG_0x066, MossdeepCity_Gym_EventScript_220A78
- setflag FLAG_0x066
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_3, MossdeepCity_Gym_EventScript_220A78
+ setflag FLAG_MOSSDEEP_GYM_SWITCH_3
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 15, 17, 524, 0
@@ -166,7 +166,7 @@ MossdeepCity_Gym_EventScript_220A49:: @ 8220A49
end
MossdeepCity_Gym_EventScript_220A78:: @ 8220A78
- clearflag FLAG_0x066
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_3
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 15, 17, 516, 0
@@ -176,8 +176,8 @@ MossdeepCity_Gym_EventScript_220A78:: @ 8220A78
MossdeepCity_Gym_EventScript_220A9D:: @ 8220A9D
lockall
- goto_if_set FLAG_0x067, MossdeepCity_Gym_EventScript_220ACC
- setflag FLAG_0x067
+ goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_4, MossdeepCity_Gym_EventScript_220ACC
+ setflag FLAG_MOSSDEEP_GYM_SWITCH_4
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 1, 23, 525, 0
@@ -186,7 +186,7 @@ MossdeepCity_Gym_EventScript_220A9D:: @ 8220A9D
end
MossdeepCity_Gym_EventScript_220ACC:: @ 8220ACC
- clearflag FLAG_0x067
+ clearflag FLAG_MOSSDEEP_GYM_SWITCH_4
applymovement EVENT_OBJ_ID_PLAYER, MossdeepCity_Gym_Movement_220C30
waitmovement 0
setmetatile 1, 23, 516, 0
@@ -264,7 +264,7 @@ MossdeepCity_Gym_EventScript_220BFA:: @ 8220BFA
MossdeepCity_Gym_EventScript_220C11:: @ 8220C11
lock
faceplayer
- goto_if_set FLAG_0x4F6, MossdeepCity_Gym_EventScript_220C26
+ goto_if_set FLAG_DEFEATED_MOSSDEEP_GYM, MossdeepCity_Gym_EventScript_220C26
msgbox MossdeepCity_Gym_Text_220CD5, MSGBOX_DEFAULT
release
end
@@ -643,4 +643,3 @@ MossdeepCity_Gym_Text_221EB8: @ 8221EB8
.string "LIZA: You brought just one POKéMON!\p"
.string "TATE: We need you to bring at least…\n"
.string "LIZA: Two POKéMON when you come back.$"
-
diff --git a/data/maps/MossdeepCity_House2/scripts.inc b/data/maps/MossdeepCity_House2/scripts.inc
index c2c5ff620..2151b2626 100644
--- a/data/maps/MossdeepCity_House2/scripts.inc
+++ b/data/maps/MossdeepCity_House2/scripts.inc
@@ -17,7 +17,7 @@ MossdeepCity_House2_EventScript_2220F1:: @ 82220F1
msgbox MossdeepCity_House2_Text_22222E, MSGBOX_DEFAULT
waitmoncry
closemessage
- setflag FLAG_0x0E0
+ setflag FLAG_WINGULL_DELIVERED_MAIL
clearflag FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL
compare VAR_FACING, 2
call_if_eq MossdeepCity_House2_EventScript_222124
diff --git a/data/maps/MossdeepCity_House3/scripts.inc b/data/maps/MossdeepCity_House3/scripts.inc
index c61a0751c..257b7cc82 100644
--- a/data/maps/MossdeepCity_House3/scripts.inc
+++ b/data/maps/MossdeepCity_House3/scripts.inc
@@ -4,13 +4,13 @@ MossdeepCity_House3_MapScripts:: @ 82225C2
MossdeepCity_House3_EventScript_2225C3:: @ 82225C3
lock
faceplayer
- goto_if_set FLAG_0x098, MossdeepCity_House3_EventScript_222602
+ goto_if_set FLAG_RECEIVED_SUPER_ROD, MossdeepCity_House3_EventScript_222602
msgbox MossdeepCity_House3_Text_222616, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_House3_EventScript_22260C
msgbox MossdeepCity_House3_Text_2226B6, MSGBOX_DEFAULT
giveitem_std ITEM_SUPER_ROD
- setflag FLAG_0x098
+ setflag FLAG_RECEIVED_SUPER_ROD
msgbox MossdeepCity_House3_Text_2226F0, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
index 6d8b7bd47..91eda813c 100644
--- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
@@ -116,12 +116,12 @@ MossdeepCity_SpaceCenter_1F_EventScript_22308E:: @ 822308E
faceplayer
compare VAR_0x405D, 2
goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_2230DA
- goto_if_set FLAG_0x0C0, MossdeepCity_SpaceCenter_1F_EventScript_2230D0
+ goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_2230D0
msgbox MossdeepCity_SpaceCenter_1F_Text_223540, MSGBOX_DEFAULT
giveitem_std ITEM_SUN_STONE
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_272054
- setflag FLAG_0x0C0
+ setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP
msgbox MossdeepCity_SpaceCenter_1F_Text_2235A6, MSGBOX_DEFAULT
release
end
@@ -132,12 +132,12 @@ MossdeepCity_SpaceCenter_1F_EventScript_2230D0:: @ 82230D0
end
MossdeepCity_SpaceCenter_1F_EventScript_2230DA:: @ 82230DA
- goto_if_set FLAG_0x0C0, MossdeepCity_SpaceCenter_1F_EventScript_223119
+ goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_223119
msgbox MossdeepCity_SpaceCenter_1F_Text_2235F0, MSGBOX_DEFAULT
giveitem_std ITEM_SUN_STONE
compare VAR_RESULT, 0
goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_272054
- setflag FLAG_0x0C0
+ setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP
msgbox MossdeepCity_SpaceCenter_1F_Text_223664, MSGBOX_DEFAULT
applymovement VAR_LAST_TALKED, MossdeepCity_SpaceCenter_1F_Movement_2725A8
waitmovement 0
@@ -232,10 +232,10 @@ MossdeepCity_SpaceCenter_1F_EventScript_223208:: @ 8223208
MossdeepCity_SpaceCenter_1F_EventScript_22321F:: @ 822321F
lock
faceplayer
- goto_if_set FLAG_0x0BF, MossdeepCity_SpaceCenter_1F_EventScript_22326E
+ goto_if_set FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F, MossdeepCity_SpaceCenter_1F_EventScript_22326E
msgbox MossdeepCity_SpaceCenter_1F_Text_223B90, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_23, MossdeepCity_SpaceCenter_1F_Text_223BC2
- setflag FLAG_0x0BF
+ setflag FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F
moveobjectoffscreen 9
switch VAR_FACING
case 3, MossdeepCity_SpaceCenter_1F_EventScript_223278
@@ -431,4 +431,3 @@ MossdeepCity_SpaceCenter_1F_Text_223C2C: @ 8223C2C
.string "We will take the fuel no matter what.\p"
.string "“Let there be more land!\n"
.string " TEAM MAGMA”$"
-
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
index e55bc07f7..163f7045f 100644
--- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
@@ -11,7 +11,7 @@ MossdeepCity_SpaceCenter_2F_MapScript1_223D63: @ 8223D63
end
MossdeepCity_SpaceCenter_2F_EventScript_223D7A:: @ 8223D7A
- clearflag FLAG_0x0CD
+ clearflag FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER
setobjectxyperm 3, 5, 3
setobjectmovementtype 3, 10
setobjectxyperm 1, 3, 2
@@ -186,8 +186,8 @@ MossdeepCity_SpaceCenter_2F_EventScript_223F6F:: @ 8223F6F
MossdeepCity_SpaceCenter_2F_EventScript_223F7A:: @ 8223F7A
lockall
- goto_if_set FLAG_0x0CD, MossdeepCity_SpaceCenter_2F_EventScript_223FDA
- setflag FLAG_0x0CD
+ goto_if_set FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER, MossdeepCity_SpaceCenter_2F_EventScript_223FDA
+ setflag FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER
msgbox MossdeepCity_SpaceCenter_2F_Text_2246B2, MSGBOX_DEFAULT
msgbox MossdeepCity_SpaceCenter_2F_Text_2246F0, MSGBOX_DEFAULT
closemessage
@@ -310,7 +310,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_224071:: @ 8224071
msgbox MossdeepCity_SpaceCenter_2F_Text_224A4A, MSGBOX_DEFAULT
closemessage
fadescreen 1
- setflag FLAG_0x075
+ setflag FLAG_DEFEATED_MAGMA_SPACE_CENTER
setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN
removeobject 4
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_INVISIBLE_NINJA_BOY
@@ -354,7 +354,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_224175:: @ 8224175
compare VAR_RESULT, FEMALE
call_if_eq MossdeepCity_SpaceCenter_2F_EventScript_22419A
closemessage
- clearflag FLAG_0x075
+ clearflag FLAG_DEFEATED_MAGMA_SPACE_CENTER
releaseall
end
@@ -517,4 +517,3 @@ MossdeepCity_SpaceCenter_2F_Text_224A4A: @ 8224A4A
.string "after this.\p"
.string "Oh, yes, I don't live in RUSTBORO CITY.\n"
.string "I live right here on this island.$"
-
diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc
index 8db53c1c6..d2bd91694 100644
--- a/data/maps/MossdeepCity_StevensHouse/scripts.inc
+++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc
@@ -39,8 +39,8 @@ MossdeepCity_StevensHouse_EventScript_2227CA:: @ 82227CA
waitmovement 0
msgbox MossdeepCity_StevensHouse_Text_222936, MSGBOX_DEFAULT
giveitem_std ITEM_HM08
- setflag FLAG_0x07B
- setflag FLAG_0x12E
+ setflag FLAG_RECEIVED_HM08
+ setflag FLAG_OMIT_DIVE_FROM_STEVEN_LETTER
msgbox MossdeepCity_StevensHouse_Text_222A0E, MSGBOX_DEFAULT
closemessage
delay 20
@@ -129,7 +129,7 @@ MossdeepCity_StevensHouse_EventScript_2228EB:: @ 82228EB
MossdeepCity_StevensHouse_EventScript_222901:: @ 8222901
setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL
- setflag FLAG_0x12A
+ setflag FLAG_RECEIVED_BELDUM
releaseall
end
@@ -149,7 +149,7 @@ MossdeepCity_StevensHouse_EventScript_22291B:: @ 822291B
MossdeepCity_StevensHouse_EventScript_222926:: @ 8222926
giveitem_std ITEM_HM08, 1, 1
- setflag FLAG_0x07B
+ setflag FLAG_RECEIVED_HM08
end
MossdeepCity_StevensHouse_Text_222936: @ 8222936
diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc
index 6e7331660..3bfc33f6a 100644
--- a/data/maps/MtChimney/scripts.inc
+++ b/data/maps/MtChimney/scripts.inc
@@ -14,12 +14,12 @@ MtChimney_MapScript1_22EDD2: @ 822EDD2
MtChimney_EventScript_22EDD5:: @ 822EDD5
lock
faceplayer
- call_if_unset FLAG_0x0DB, MtChimney_EventScript_22EDF9
- call_if_set FLAG_0x0DB, MtChimney_EventScript_22EE02
+ call_if_unset FLAG_EVIL_LEADER_PLEASE_STOP, MtChimney_EventScript_22EDF9
+ call_if_set FLAG_EVIL_LEADER_PLEASE_STOP, MtChimney_EventScript_22EE02
closemessage
applymovement 1, MtChimney_Movement_2725A2
waitmovement 0
- setflag FLAG_0x0DB
+ setflag FLAG_EVIL_LEADER_PLEASE_STOP
release
end
@@ -70,7 +70,7 @@ MtChimney_EventScript_22EE0B:: @ 822EE0B
call_if_eq MtChimney_EventScript_22EEE8
removeobject 1
setflag FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA
- setflag FLAG_0x08B
+ setflag FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY
clearflag FLAG_HIDE_FALLARBOR_HOUSE_1_PROF_COZMO
setflag FLAG_HIDE_METEOR_FALLS_1F_1R_COZMO
clearflag FLAG_HIDE_MT_CHIMNEY_LAVA_COOKIE_LADY
@@ -452,14 +452,14 @@ MtChimney_EventScript_22F0DB:: @ 822F0DB
MtChimney_EventScript_22F0E4:: @ 822F0E4
lockall
- goto_if_unset FLAG_0x08B, MtChimney_EventScript_22F137
- goto_if_set FLAG_0x073, MtChimney_EventScript_22F12D
+ goto_if_unset FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, MtChimney_EventScript_22F137
+ goto_if_set FLAG_RECEIVED_METEORITE, MtChimney_EventScript_22F12D
msgbox MtChimney_Text_22FF12, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq MtChimney_EventScript_22F123
msgbox MtChimney_Text_22FF66, MSGBOX_DEFAULT
giveitem_std ITEM_METEORITE
- setflag FLAG_0x073
+ setflag FLAG_RECEIVED_METEORITE
releaseall
end
diff --git a/data/maps/MtPyre_1F/scripts.inc b/data/maps/MtPyre_1F/scripts.inc
index b3f38c296..676df4aee 100644
--- a/data/maps/MtPyre_1F/scripts.inc
+++ b/data/maps/MtPyre_1F/scripts.inc
@@ -4,12 +4,12 @@ MtPyre_1F_MapScripts:: @ 8230F3E
MtPyre_1F_EventScript_230F3F:: @ 8230F3F
lock
faceplayer
- goto_if_set FLAG_0x11A, MtPyre_1F_EventScript_230F6E
+ goto_if_set FLAG_RECEIVED_CLEANSE_TAG, MtPyre_1F_EventScript_230F6E
msgbox MtPyre_1F_Text_230F8A, MSGBOX_DEFAULT
giveitem_std ITEM_CLEANSE_TAG
compare VAR_RESULT, 0
goto_if_eq MtPyre_1F_EventScript_272054
- setflag FLAG_0x11A
+ setflag FLAG_RECEIVED_CLEANSE_TAG
release
end
diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc
index 31ae3348a..6eaf6265f 100644
--- a/data/maps/MtPyre_Summit/scripts.inc
+++ b/data/maps/MtPyre_Summit/scripts.inc
@@ -65,7 +65,7 @@ MtPyre_Summit_EventScript_23203C:: @ 823203C
call_if_eq MtPyre_Summit_EventScript_232117
msgbox MtPyre_Summit_Text_23290E, MSGBOX_DEFAULT
giveitem_std ITEM_MAGMA_EMBLEM
- setflag FLAG_0x0D4
+ setflag FLAG_RECEIVED_RED_OR_BLUE_ORB
setflag FLAG_HIDE_JAGGED_PASS_MAGMA_GUARD
releaseall
end
@@ -131,7 +131,7 @@ MtPyre_Summit_Movement_232139: @ 8232139
MtPyre_Summit_EventScript_23213C:: @ 823213C
lock
faceplayer
- goto_if_set FLAG_0x09E, MtPyre_Summit_EventScript_232167
+ goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, MtPyre_Summit_EventScript_232167
msgbox MtPyre_Summit_Text_232E0C, MSGBOX_YESNO
compare VAR_RESULT, 1
call_if_eq MtPyre_Summit_EventScript_232187
@@ -164,17 +164,17 @@ MtPyre_Summit_EventScript_232199:: @ 8232199
MtPyre_Summit_EventScript_2321A2:: @ 82321A2
lock
faceplayer
- goto_if_set FLAG_0x103, MtPyre_Summit_EventScript_2321E2
+ goto_if_set FLAG_RETURNED_RED_OR_BLUE_ORB, MtPyre_Summit_EventScript_2321E2
compare VAR_0x40B9, 3
call_if_ge MtPyre_Summit_EventScript_2321CB
- goto_if_set FLAG_0x081, MtPyre_Summit_EventScript_2321D8
+ goto_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, MtPyre_Summit_EventScript_2321D8
msgbox MtPyre_Summit_Text_232AD8, MSGBOX_DEFAULT
release
end
MtPyre_Summit_EventScript_2321CB:: @ 82321CB
msgbox MtPyre_Summit_Text_232CA6, MSGBOX_DEFAULT
- setflag FLAG_0x103
+ setflag FLAG_RETURNED_RED_OR_BLUE_ORB
release
end
diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc
index bbe02aadf..cd26de91d 100644
--- a/data/maps/NavelRock_Bottom/scripts.inc
+++ b/data/maps/NavelRock_Bottom/scripts.inc
@@ -4,8 +4,8 @@ NavelRock_Bottom_MapScripts:: @ 8269255
.byte 0
NavelRock_Bottom_MapScript1_269260: @ 8269260
- call_if_set FLAG_0x091, NavelRock_Bottom_EventScript_269273
- call_if_unset FLAG_0x091, NavelRock_Bottom_EventScript_269277
+ call_if_set FLAG_CAUGHT_LUGIA, NavelRock_Bottom_EventScript_269273
+ call_if_unset FLAG_CAUGHT_LUGIA, NavelRock_Bottom_EventScript_269277
end
NavelRock_Bottom_EventScript_269273:: @ 8269273
@@ -13,7 +13,7 @@ NavelRock_Bottom_EventScript_269273:: @ 8269273
return
NavelRock_Bottom_EventScript_269277:: @ 8269277
- goto_if_set FLAG_0x1DD, NavelRock_Bottom_EventScript_27374E
+ goto_if_set FLAG_DEFEATED_LUGIA, NavelRock_Bottom_EventScript_27374E
clearflag FLAG_HIDE_LUGIA
return
@@ -67,12 +67,12 @@ NavelRock_Bottom_EventScript_2692A2:: @ 82692A2
goto_if_eq NavelRock_Bottom_EventScript_269344
compare VAR_RESULT, 5
goto_if_eq NavelRock_Bottom_EventScript_269344
- setflag FLAG_0x091
+ setflag FLAG_CAUGHT_LUGIA
release
end
NavelRock_Bottom_EventScript_269336:: @ 8269336
- setflag FLAG_0x1DD
+ setflag FLAG_DEFEATED_LUGIA
setvar VAR_0x8004, 249
goto NavelRock_Bottom_EventScript_273776
end
@@ -81,4 +81,3 @@ NavelRock_Bottom_EventScript_269344:: @ 8269344
setvar VAR_0x8004, 249
goto NavelRock_Bottom_EventScript_273776
end
-
diff --git a/data/maps/NavelRock_Exterior/scripts.inc b/data/maps/NavelRock_Exterior/scripts.inc
index daa3fc964..21034a4e0 100644
--- a/data/maps/NavelRock_Exterior/scripts.inc
+++ b/data/maps/NavelRock_Exterior/scripts.inc
@@ -3,6 +3,6 @@ NavelRock_Exterior_MapScripts:: @ 82690B2
.byte 0
NavelRock_Exterior_MapScript1_2690B8: @ 82690B8
- setflag FLAG_0x8E1
+ setflag FLAG_ARRIVED_AT_NAVEL_ROCK
end
diff --git a/data/maps/NavelRock_Top/events.inc b/data/maps/NavelRock_Top/events.inc
index abd337cb2..0952b0f67 100644
--- a/data/maps/NavelRock_Top/events.inc
+++ b/data/maps/NavelRock_Top/events.inc
@@ -1,5 +1,5 @@
NavelRock_Top_EventObjects: @ 853DB74
- object_event 1, EVENT_OBJ_GFX_HOOH, 0, 12, 4, 0, MOVEMENT_TYPE_FACE_DOWN, 1, 1, 0, 0, 0x0, FLAG_HIDE_HOOH
+ object_event 1, EVENT_OBJ_GFX_HOOH, 0, 12, 4, 0, MOVEMENT_TYPE_FACE_DOWN, 1, 1, 0, 0, 0x0, FLAG_HIDE_HO_OH
NavelRock_Top_MapWarps: @ 853DB8C
warp_def 13, 20, 3, 1, MAP_NAVEL_ROCK_UP4
diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc
index 28d55d68f..423d998a7 100644
--- a/data/maps/NavelRock_Top/scripts.inc
+++ b/data/maps/NavelRock_Top/scripts.inc
@@ -4,20 +4,20 @@ NavelRock_Top_MapScripts:: @ 8269113
.byte 0
NavelRock_Top_MapScript1_26911E: @ 826911E
- call_if_set FLAG_0x092, NavelRock_Top_EventScript_269131
- call_if_unset FLAG_0x092, NavelRock_Top_EventScript_26913A
+ call_if_set FLAG_CAUGHT_HO_OH, NavelRock_Top_EventScript_269131
+ call_if_unset FLAG_CAUGHT_HO_OH, NavelRock_Top_EventScript_26913A
end
NavelRock_Top_EventScript_269131:: @ 8269131
setvar VAR_TEMP_1, 1
- setflag FLAG_HIDE_HOOH
+ setflag FLAG_HIDE_HO_OH
return
NavelRock_Top_EventScript_26913A:: @ 826913A
setvar VAR_TEMP_1, 1
- goto_if_set FLAG_0x1DC, NavelRock_Top_EventScript_27374E
+ goto_if_set FLAG_DEFEATED_HO_OH, NavelRock_Top_EventScript_27374E
setvar VAR_TEMP_1, 0
- clearflag FLAG_HIDE_HOOH
+ clearflag FLAG_HIDE_HO_OH
return
NavelRock_Top_MapScript1_269151: @ 8269151
@@ -72,12 +72,12 @@ NavelRock_Top_EventScript_26916F:: @ 826916F
goto_if_eq NavelRock_Top_EventScript_269225
compare VAR_RESULT, 5
goto_if_eq NavelRock_Top_EventScript_269225
- setflag FLAG_0x092
+ setflag FLAG_CAUGHT_HO_OH
releaseall
end
NavelRock_Top_EventScript_269217:: @ 8269217
- setflag FLAG_0x1DC
+ setflag FLAG_DEFEATED_HO_OH
setvar VAR_0x8004, 250
goto NavelRock_Top_EventScript_273776
end
@@ -120,4 +120,3 @@ NavelRock_Top_Movement_269243: @ 8269243
walk_in_place_down
walk_in_place_down
step_end
-
diff --git a/data/maps/NewMauville_Inside/scripts.inc b/data/maps/NewMauville_Inside/scripts.inc
index aff38c577..b3d9d868f 100644
--- a/data/maps/NewMauville_Inside/scripts.inc
+++ b/data/maps/NewMauville_Inside/scripts.inc
@@ -22,9 +22,9 @@ NewMauville_Inside_EventScript_237407:: @ 8237407
NewMauville_Inside_MapScript1_23741B: @ 823741B
setvar VAR_TEMP_1, 0
setvar VAR_TEMP_2, 0
- call_if_unset FLAG_0x1C1, NewMauville_Inside_EventScript_237441
- call_if_unset FLAG_0x1C2, NewMauville_Inside_EventScript_237445
- call_if_unset FLAG_0x1C3, NewMauville_Inside_EventScript_237449
+ call_if_unset FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE, NewMauville_Inside_EventScript_237441
+ call_if_unset FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE, NewMauville_Inside_EventScript_237445
+ call_if_unset FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE, NewMauville_Inside_EventScript_237449
end
NewMauville_Inside_EventScript_237441:: @ 8237441
@@ -196,12 +196,12 @@ NewMauville_Inside_EventScript_2377AF:: @ 82377AF
goto_if_eq NewMauville_Inside_EventScript_2377F3
compare VAR_RESULT, 5
goto_if_eq NewMauville_Inside_EventScript_2377F3
- setflag FLAG_0x1C1
+ setflag FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE
release
end
NewMauville_Inside_EventScript_2377F3:: @ 82377F3
- setflag FLAG_0x1C1
+ setflag FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE
goto NewMauville_Inside_EventScript_27376D
end
@@ -223,12 +223,12 @@ NewMauville_Inside_EventScript_2377FC:: @ 82377FC
goto_if_eq NewMauville_Inside_EventScript_237840
compare VAR_RESULT, 5
goto_if_eq NewMauville_Inside_EventScript_237840
- setflag FLAG_0x1C2
+ setflag FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE
release
end
NewMauville_Inside_EventScript_237840:: @ 8237840
- setflag FLAG_0x1C2
+ setflag FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE
goto NewMauville_Inside_EventScript_27376D
end
@@ -250,12 +250,12 @@ NewMauville_Inside_EventScript_237849:: @ 8237849
goto_if_eq NewMauville_Inside_EventScript_23788D
compare VAR_RESULT, 5
goto_if_eq NewMauville_Inside_EventScript_23788D
- setflag FLAG_0x1C3
+ setflag FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE
release
end
NewMauville_Inside_EventScript_23788D:: @ 823788D
- setflag FLAG_0x1C3
+ setflag FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE
goto NewMauville_Inside_EventScript_27376D
end
@@ -275,4 +275,3 @@ NewMauville_Inside_Text_237932: @ 8237932
.string "… … … … … … … …\p"
.string "The generator appears to have\n"
.string "stopped…$"
-
diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc
index a246adc4f..c8a598da9 100644
--- a/data/maps/OldaleTown/scripts.inc
+++ b/data/maps/OldaleTown/scripts.inc
@@ -5,9 +5,9 @@ OldaleTown_MapScripts:: @ 81E8EA2
OldaleTown_MapScript1_1E8EA8: @ 81E8EA8
call OldaleTown_EventScript_271ED7
setflag FLAG_VISITED_OLDALE_TOWN
- call_if_unset FLAG_0x074, OldaleTown_EventScript_1E8ED2
- call_if_unset FLAG_0x084, OldaleTown_EventScript_1E8EDE
- call_if_set FLAG_0x074, OldaleTown_EventScript_1E8ECC
+ call_if_unset FLAG_ADVENTURE_STARTED, OldaleTown_EventScript_1E8ED2
+ call_if_unset FLAG_RECEIVED_POTION_OLDALE, OldaleTown_EventScript_1E8EDE
+ call_if_set FLAG_ADVENTURE_STARTED, OldaleTown_EventScript_1E8ECC
end
OldaleTown_EventScript_1E8ECC:: @ 81E8ECC
@@ -35,7 +35,7 @@ OldaleTown_EventScript_1E8EF3:: @ 81E8EF3
OldaleTown_EventScript_1E8EFC:: @ 81E8EFC
lock
faceplayer
- goto_if_set FLAG_0x084, OldaleTown_EventScript_1E8FB9
+ goto_if_set FLAG_RECEIVED_POTION_OLDALE, OldaleTown_EventScript_1E8FB9
goto_if_set FLAG_TEMP_1, OldaleTown_EventScript_1E8FB9
setflag FLAG_TEMP_1
playbgm MUS_TSURETEK, 0
@@ -74,7 +74,7 @@ OldaleTown_EventScript_1E8F8C:: @ 81E8F8C
compare VAR_RESULT, 0
goto_if_eq OldaleTown_EventScript_1E8FC3
msgbox OldaleTown_Text_1E92AF, MSGBOX_DEFAULT
- setflag FLAG_0x084
+ setflag FLAG_RECEIVED_POTION_OLDALE
fadedefaultbgm
release
end
@@ -190,7 +190,7 @@ OldaleTown_Movement_1E9013: @ 81E9013
OldaleTown_EventScript_1E901F:: @ 81E901F
lock
faceplayer
- goto_if_set FLAG_0x074, OldaleTown_EventScript_1E9066
+ goto_if_set FLAG_ADVENTURE_STARTED, OldaleTown_EventScript_1E9066
msgbox OldaleTown_Text_1E939A, MSGBOX_DEFAULT
closemessage
applymovement 3, OldaleTown_Movement_2725A2
diff --git a/data/maps/OldaleTown_Mart/scripts.inc b/data/maps/OldaleTown_Mart/scripts.inc
index 2eaa483f5..980b0e4d6 100644
--- a/data/maps/OldaleTown_Mart/scripts.inc
+++ b/data/maps/OldaleTown_Mart/scripts.inc
@@ -6,7 +6,7 @@ OldaleTown_Mart_EventScript_1FC240:: @ 81FC240
faceplayer
message gUnknown_08272A21
waitmessage
- goto_if_set FLAG_0x074, OldaleTown_Mart_EventScript_1FC26C
+ goto_if_set FLAG_ADVENTURE_STARTED, OldaleTown_Mart_EventScript_1FC26C
pokemart OldaleTown_Mart_Pokemart_1FC260
msgbox gUnknown_08272A3F, MSGBOX_DEFAULT
release
@@ -41,7 +41,7 @@ OldaleTown_Mart_Pokemart_1FC27C: @ 81FC27C
OldaleTown_Mart_EventScript_1FC28A:: @ 81FC28A
lock
faceplayer
- goto_if_set FLAG_0x074, OldaleTown_Mart_EventScript_1FC29F
+ goto_if_set FLAG_ADVENTURE_STARTED, OldaleTown_Mart_EventScript_1FC29F
msgbox OldaleTown_Mart_Text_1FC2B2, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/PacifidlogTown_House2/scripts.inc b/data/maps/PacifidlogTown_House2/scripts.inc
index d0eb88cf2..b3078fa2d 100644
--- a/data/maps/PacifidlogTown_House2/scripts.inc
+++ b/data/maps/PacifidlogTown_House2/scripts.inc
@@ -6,10 +6,10 @@ PacifidlogTown_House2_EventScript_203792:: @ 8203792
faceplayer
dodailyevents
call PacifidlogTown_House2_EventScript_2037DE
- goto_if_set FLAG_0x12B, PacifidlogTown_House2_EventScript_20387E
- call_if_set FLAG_0x12C, PacifidlogTown_House2_EventScript_2037F8
- call_if_unset FLAG_0x12C, PacifidlogTown_House2_EventScript_203801
- setflag FLAG_0x12C
+ goto_if_set FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK, PacifidlogTown_House2_EventScript_20387E
+ call_if_set FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_2037F8
+ call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_203801
+ setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER
specialvar VAR_RESULT, GetLeadMonFriendshipScore
compare VAR_RESULT, 4
goto_if_ge PacifidlogTown_House2_EventScript_203816
@@ -20,7 +20,7 @@ PacifidlogTown_House2_EventScript_203792:: @ 8203792
end
PacifidlogTown_House2_EventScript_2037DE:: @ 82037DE
- goto_if_unset FLAG_0x12B, PacifidlogTown_House2_EventScript_27374E
+ goto_if_unset FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK, PacifidlogTown_House2_EventScript_27374E
specialvar VAR_RESULT, GetDaysUntilPacifidlogTMAvailable
compare VAR_RESULT, 0
call_if_eq PacifidlogTown_House2_EventScript_203812
@@ -36,7 +36,7 @@ PacifidlogTown_House2_EventScript_203801:: @ 8203801
return
PacifidlogTown_House2_EventScript_203812:: @ 8203812
- clearflag FLAG_0x12B
+ clearflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK
return
PacifidlogTown_House2_EventScript_203816:: @ 8203816
@@ -44,7 +44,7 @@ PacifidlogTown_House2_EventScript_203816:: @ 8203816
giveitem_std ITEM_TM27
compare VAR_RESULT, 0
goto_if_eq PacifidlogTown_House2_EventScript_272054
- setflag FLAG_0x12B
+ setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK
special SetPacifidlogTMReceivedDay
msgbox PacifidlogTown_House2_Text_203A85, MSGBOX_DEFAULT
release
@@ -60,7 +60,7 @@ PacifidlogTown_House2_EventScript_20384F:: @ 820384F
giveitem_std ITEM_TM21
compare VAR_RESULT, 0
goto_if_eq PacifidlogTown_House2_EventScript_272054
- setflag FLAG_0x12B
+ setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK
special SetPacifidlogTMReceivedDay
msgbox PacifidlogTown_House2_Text_203A85, MSGBOX_DEFAULT
release
diff --git a/data/maps/PacifidlogTown_House3/scripts.inc b/data/maps/PacifidlogTown_House3/scripts.inc
index 05c38216d..28f187da9 100644
--- a/data/maps/PacifidlogTown_House3/scripts.inc
+++ b/data/maps/PacifidlogTown_House3/scripts.inc
@@ -4,7 +4,7 @@ PacifidlogTown_House3_MapScripts:: @ 8203C10
PacifidlogTown_House3_EventScript_203C11:: @ 8203C11
lock
faceplayer
- goto_if_set FLAG_0x09A, PacifidlogTown_House3_EventScript_203CAB
+ goto_if_set FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED, PacifidlogTown_House3_EventScript_203CAB
setvar VAR_0x8008, 2
copyvar VAR_0x8004, VAR_0x8008
specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
@@ -29,7 +29,7 @@ PacifidlogTown_House3_EventScript_203C11:: @ 8203C11
waitstate
bufferspeciesname 0, VAR_0x8009
msgbox PacifidlogTown_House3_Text_203D87, MSGBOX_DEFAULT
- setflag FLAG_0x09A
+ setflag FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED
release
end
diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc
index f97825624..66dfab92a 100644
--- a/data/maps/PetalburgCity_Gym/scripts.inc
+++ b/data/maps/PetalburgCity_Gym/scripts.inc
@@ -364,7 +364,7 @@ PetalburgCity_Gym_EventScript_204D80:: @ 8204D80
call PetalburgCity_Gym_EventScript_204DCE
compare VAR_RESULT, 1
goto_if_eq PetalburgCity_Gym_EventScript_204E1D
- goto_if_unset FLAG_0x0A9, PetalburgCity_Gym_EventScript_204DAC
+ goto_if_unset FLAG_RECEIVED_TM42, PetalburgCity_Gym_EventScript_204DAC
goto_if_set FLAG_SYS_GAME_CLEAR, PetalburgCity_Gym_EventScript_20512D
msgbox PetalburgCity_Gym_Text_206417, MSGBOX_DEFAULT
release
@@ -415,7 +415,7 @@ PetalburgCity_Gym_EventScript_204E3B:: @ 8204E3B
waitmessage
call PetalburgCity_Gym_EventScript_27207E
msgbox PetalburgCity_Gym_Text_20618A, MSGBOX_DEFAULT
- setflag FLAG_0x4F4
+ setflag FLAG_DEFEATED_PETALBURG_GYM
setvar VAR_0x4085, 7
setflag FLAG_BADGE05_GET
special sub_813B9A0
@@ -445,7 +445,7 @@ PetalburgCity_Gym_EventScript_204ED2:: @ 8204ED2
giveitem_std ITEM_TM42
compare VAR_RESULT, 0
goto_if_eq PetalburgCity_Gym_EventScript_27205E
- setflag FLAG_0x0A9
+ setflag FLAG_RECEIVED_TM42
msgbox PetalburgCity_Gym_Text_206254, MSGBOX_DEFAULT
return
@@ -956,7 +956,7 @@ PetalburgCity_Gym_EventScript_205387:: @ 8205387
PetalburgCity_Gym_EventScript_2053BA:: @ 82053BA
trainerbattle_single TRAINER_RANDALL, PetalburgCity_Gym_Text_20674F, PetalburgCity_Gym_Text_2067B9, PetalburgCity_Gym_EventScript_2053DE
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_2053ED
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_2053ED
msgbox PetalburgCity_Gym_Text_2067D8, MSGBOX_AUTOCLOSE
end
@@ -973,7 +973,7 @@ PetalburgCity_Gym_EventScript_2053ED:: @ 82053ED
PetalburgCity_Gym_EventScript_2053F6:: @ 82053F6
trainerbattle_single TRAINER_PARKER, PetalburgCity_Gym_Text_2068FD, PetalburgCity_Gym_Text_20694F, PetalburgCity_Gym_EventScript_20541A
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_205429
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_205429
msgbox PetalburgCity_Gym_Text_206996, MSGBOX_AUTOCLOSE
end
@@ -990,7 +990,7 @@ PetalburgCity_Gym_EventScript_205429:: @ 8205429
PetalburgCity_Gym_EventScript_205432:: @ 8205432
trainerbattle_single TRAINER_GEORGE, PetalburgCity_Gym_Text_206A1B, PetalburgCity_Gym_Text_206AB8, PetalburgCity_Gym_EventScript_205456
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_205465
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_205465
msgbox PetalburgCity_Gym_Text_206AE9, MSGBOX_AUTOCLOSE
end
@@ -1007,7 +1007,7 @@ PetalburgCity_Gym_EventScript_205465:: @ 8205465
PetalburgCity_Gym_EventScript_20546E:: @ 820546E
trainerbattle_single TRAINER_BERKE, PetalburgCity_Gym_Text_206BF4, PetalburgCity_Gym_Text_206C7D, PetalburgCity_Gym_EventScript_205492
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_2054A1
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_2054A1
msgbox PetalburgCity_Gym_Text_206C9F, MSGBOX_AUTOCLOSE
end
@@ -1024,7 +1024,7 @@ PetalburgCity_Gym_EventScript_2054A1:: @ 82054A1
PetalburgCity_Gym_EventScript_2054AA:: @ 82054AA
trainerbattle_single TRAINER_MARY, PetalburgCity_Gym_Text_206DB2, PetalburgCity_Gym_Text_206E0D, PetalburgCity_Gym_EventScript_2054CE
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_2054DD
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_2054DD
msgbox PetalburgCity_Gym_Text_206E26, MSGBOX_AUTOCLOSE
end
@@ -1041,7 +1041,7 @@ PetalburgCity_Gym_EventScript_2054DD:: @ 82054DD
PetalburgCity_Gym_EventScript_2054E6:: @ 82054E6
trainerbattle_single TRAINER_ALEXIA, PetalburgCity_Gym_Text_206F44, PetalburgCity_Gym_Text_206F82, PetalburgCity_Gym_EventScript_20550A
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_205519
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_205519
msgbox PetalburgCity_Gym_Text_206F9F, MSGBOX_AUTOCLOSE
end
@@ -1058,7 +1058,7 @@ PetalburgCity_Gym_EventScript_205519:: @ 8205519
PetalburgCity_Gym_EventScript_205522:: @ 8205522
trainerbattle_single TRAINER_JODY, PetalburgCity_Gym_Text_207088, PetalburgCity_Gym_Text_2070E6, PetalburgCity_Gym_EventScript_205546
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_205555
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_205555
msgbox PetalburgCity_Gym_Text_2070FB, MSGBOX_AUTOCLOSE
end
@@ -1205,7 +1205,7 @@ PetalburgCity_Gym_EventScript_20574B:: @ 820574B
PetalburgCity_Gym_EventScript_20574F:: @ 820574F
lock
faceplayer
- goto_if_set FLAG_0x4F4, PetalburgCity_Gym_EventScript_205764
+ goto_if_set FLAG_DEFEATED_PETALBURG_GYM, PetalburgCity_Gym_EventScript_205764
msgbox PetalburgCity_Gym_Text_206542, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/PetalburgCity_Mart/scripts.inc b/data/maps/PetalburgCity_Mart/scripts.inc
index 4303f1504..2bd72b69e 100644
--- a/data/maps/PetalburgCity_Mart/scripts.inc
+++ b/data/maps/PetalburgCity_Mart/scripts.inc
@@ -6,7 +6,7 @@ PetalburgCity_Mart_EventScript_207D69:: @ 8207D69
faceplayer
message gUnknown_08272A21
waitmessage
- goto_if_set FLAG_0x128, PetalburgCity_Mart_EventScript_207DA6
+ goto_if_set FLAG_PETALBURG_MART_EXPANDED_ITEMS, PetalburgCity_Mart_EventScript_207DA6
pokemart PetalburgCity_Mart_Pokemart_207D8C
msgbox gUnknown_08272A3F, MSGBOX_DEFAULT
release
diff --git a/data/maps/PetalburgCity_WallysHouse/scripts.inc b/data/maps/PetalburgCity_WallysHouse/scripts.inc
index 7645828ef..ac41aaa28 100644
--- a/data/maps/PetalburgCity_WallysHouse/scripts.inc
+++ b/data/maps/PetalburgCity_WallysHouse/scripts.inc
@@ -20,7 +20,7 @@ PetalburgCity_WallysHouse_EventScript_204251:: @ 8204251
lockall
msgbox PetalburgCity_WallysHouse_Text_20446E, MSGBOX_DEFAULT
giveitem_std ITEM_HM03
- setflag FLAG_0x07A
+ setflag FLAG_RECEIVED_HM03
msgbox PetalburgCity_WallysHouse_Text_20461A, MSGBOX_DEFAULT
setvar VAR_0x4057, 5
releaseall
@@ -29,11 +29,11 @@ PetalburgCity_WallysHouse_EventScript_204251:: @ 8204251
PetalburgCity_WallysHouse_EventScript_204278:: @ 8204278
lock
faceplayer
- goto_if_set FLAG_0x07E, PetalburgCity_WallysHouse_EventScript_2042AC
- goto_if_set FLAG_0x07A, PetalburgCity_WallysHouse_EventScript_2042A2
- goto_if_set FLAG_0x087, PetalburgCity_WallysHouse_EventScript_2042B6
+ goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, PetalburgCity_WallysHouse_EventScript_2042AC
+ goto_if_set FLAG_RECEIVED_HM03, PetalburgCity_WallysHouse_EventScript_2042A2
+ goto_if_set FLAG_THANKED_FOR_PLAYING_WITH_WALLY, PetalburgCity_WallysHouse_EventScript_2042B6
msgbox PetalburgCity_WallysHouse_Text_2042DF, MSGBOX_DEFAULT
- setflag FLAG_0x087
+ setflag FLAG_THANKED_FOR_PLAYING_WITH_WALLY
release
end
@@ -55,7 +55,7 @@ PetalburgCity_WallysHouse_EventScript_2042B6:: @ 82042B6
PetalburgCity_WallysHouse_EventScript_2042C0:: @ 82042C0
lock
faceplayer
- goto_if_set FLAG_0x07A, PetalburgCity_WallysHouse_EventScript_2042D5
+ goto_if_set FLAG_RECEIVED_HM03, PetalburgCity_WallysHouse_EventScript_2042D5
msgbox PetalburgCity_WallysHouse_Text_204732, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc
index 57797588f..eec9100f1 100644
--- a/data/maps/PetalburgWoods/scripts.inc
+++ b/data/maps/PetalburgWoods/scripts.inc
@@ -249,12 +249,12 @@ PetalburgWoods_EventScript_22E219:: @ 822E219
PetalburgWoods_EventScript_22E222:: @ 822E222
lock
faceplayer
- goto_if_set FLAG_0x129, PetalburgWoods_EventScript_22E251
+ goto_if_set FLAG_RECEIVED_MIRACLE_SEED, PetalburgWoods_EventScript_22E251
msgbox PetalburgWoods_Text_22EAFE, MSGBOX_DEFAULT
giveitem_std ITEM_MIRACLE_SEED
compare VAR_RESULT, 0
goto_if_eq PetalburgWoods_EventScript_272054
- setflag FLAG_0x129
+ setflag FLAG_RECEIVED_MIRACLE_SEED
release
end
diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc
index e7f5f0af6..15722a3f3 100644
--- a/data/maps/Route101/scripts.inc
+++ b/data/maps/Route101/scripts.inc
@@ -219,7 +219,7 @@ Route101_EventScript_1EBE16:: @ 81EBE16
lock
faceplayer
setflag FLAG_SYS_POKEMON_GET
- setflag FLAG_0x052
+ setflag FLAG_RESCUED_BIRCH
fadescreen 1
removeobject 4
setobjectxy EVENT_OBJ_ID_PLAYER, 6, 13
diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc
index 463db7b49..e13bad76d 100644
--- a/data/maps/Route103/scripts.inc
+++ b/data/maps/Route103/scripts.inc
@@ -142,7 +142,7 @@ Route103_EventScript_1EC5A2:: @ 81EC5A2
removeobject 2
setvar VAR_0x4084, 4
clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL
- setflag FLAG_0x082
+ setflag FLAG_DEFEATED_RIVAL_ROUTE103
setvar VAR_0x40C7, 1
clearflag FLAG_HIDE_OLDALE_TOWN_RIVAL
savebgm MUS_DUMMY
diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc
index 1b3adf2a2..e904f69b7 100644
--- a/data/maps/Route104/scripts.inc
+++ b/data/maps/Route104/scripts.inc
@@ -19,7 +19,7 @@ Route104_MapScript1_1ECC4E: @ 81ECC4E
end
Route104_EventScript_1ECC5E:: @ 81ECC5E
- goto_if_unset FLAG_0x07F, Route104_EventScript_1ECC74
+ goto_if_unset FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_EventScript_1ECC74
goto_if_unset FLAG_BADGE03_GET, Route104_EventScript_1ECC74
clearflag FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST
return
@@ -31,8 +31,8 @@ Route104_EventScript_1ECC74:: @ 81ECC74
Route104_EventScript_1ECC78:: @ 81ECC78
compare VAR_0x408E, 1
goto_if_ge Route104_EventScript_1ECC9D
- goto_if_set FLAG_0x120, Route104_EventScript_1ECC9D
- goto_if_unset FLAG_0x07C, Route104_EventScript_1ECC9D
+ goto_if_set FLAG_MET_RIVAL_RUSTBORO, Route104_EventScript_1ECC9D
+ goto_if_unset FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_1ECC9D
setobjectxyperm 34, 17, 52
return
@@ -95,9 +95,9 @@ Route104_EventScript_1ECD33:: @ 81ECD33
end
Route104_EventScript_1ECD4B:: @ 81ECD4B
- goto_if_set FLAG_0x07D, Route104_EventScript_1ECE1C
- goto_if_set FLAG_0x07C, Route104_EventScript_1ECDD0
- setflag FLAG_0x07C
+ goto_if_set FLAG_DEFEATED_RIVAL_ROUTE_104, Route104_EventScript_1ECE1C
+ goto_if_set FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_1ECDD0
+ setflag FLAG_REGISTER_RIVAL_POKENAV
msgbox Route104_Text_1EDBFF, MSGBOX_DEFAULT
closemessage
delay 30
@@ -106,7 +106,7 @@ Route104_EventScript_1ECD4B:: @ 81ECD4B
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0FD
+ setflag FLAG_ENABLE_RIVAL_MATCH_CALL
applymovement EVENT_OBJ_ID_PLAYER, Route104_Movement_1ECDCD
applymovement 34, Route104_Movement_1ECDC8
msgbox Route104_Text_1EDCB1, MSGBOX_DEFAULT
@@ -167,26 +167,26 @@ Route104_EventScript_1ECE31:: @ 81ECE31
Route104_EventScript_1ECE36:: @ 81ECE36
trainerbattle_no_intro TRAINER_MAY_14, Route104_Text_1EDE18
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECE1C
end
Route104_EventScript_1ECE49:: @ 81ECE49
trainerbattle_no_intro TRAINER_MAY_15, Route104_Text_1EDE18
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECE1C
end
Route104_EventScript_1ECE5C:: @ 81ECE5C
trainerbattle_no_intro TRAINER_MAY_10, Route104_Text_1EDE18
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECE1C
end
Route104_EventScript_1ECE6F:: @ 81ECE6F
- goto_if_set FLAG_0x07D, Route104_EventScript_1ECF38
- goto_if_set FLAG_0x07C, Route104_EventScript_1ECEEC
- setflag FLAG_0x07C
+ goto_if_set FLAG_DEFEATED_RIVAL_ROUTE_104, Route104_EventScript_1ECF38
+ goto_if_set FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_1ECEEC
+ setflag FLAG_REGISTER_RIVAL_POKENAV
msgbox Route104_Text_1EDF04, MSGBOX_DEFAULT
closemessage
delay 30
@@ -195,7 +195,7 @@ Route104_EventScript_1ECE6F:: @ 81ECE6F
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0FD
+ setflag FLAG_ENABLE_RIVAL_MATCH_CALL
applymovement EVENT_OBJ_ID_PLAYER, Route104_Movement_1ECDCD
applymovement 34, Route104_Movement_1ECDC8
msgbox Route104_Text_1EDFC6, MSGBOX_DEFAULT
@@ -237,19 +237,19 @@ Route104_EventScript_1ECF38:: @ 81ECF38
Route104_EventScript_1ECF4D:: @ 81ECF4D
trainerbattle_no_intro TRAINER_BRENDAN_10, Route104_Text_1EE107
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECF38
end
Route104_EventScript_1ECF60:: @ 81ECF60
trainerbattle_no_intro TRAINER_BRENDAN_12, Route104_Text_1EE107
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECF38
end
Route104_EventScript_1ECF73:: @ 81ECF73
trainerbattle_no_intro TRAINER_BRENDAN_11, Route104_Text_1EE107
- setflag FLAG_0x07D
+ setflag FLAG_DEFEATED_RIVAL_ROUTE_104
goto Route104_EventScript_1ECF38
end
@@ -266,12 +266,12 @@ Route104_Movement_1ECF8A: @ 81ECF8A
Route104_EventScript_1ECF8C:: @ 81ECF8C
lock
faceplayer
- goto_if_set FLAG_0x0F6, Route104_EventScript_1ECFC3
+ goto_if_set FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104, Route104_EventScript_1ECFC3
msgbox Route104_Text_2A6D86, MSGBOX_DEFAULT
giveitem_std ITEM_CHESTO_BERRY
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_272054
- setflag FLAG_0x0F6
+ setflag FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104
msgbox Route104_Text_2A6E32, MSGBOX_DEFAULT
release
end
@@ -284,12 +284,12 @@ Route104_EventScript_1ECFC3:: @ 81ECFC3
Route104_EventScript_1ECFCD:: @ 81ECFCD
lock
faceplayer
- goto_if_set FLAG_0x117, Route104_EventScript_1ECFFC
+ goto_if_set FLAG_RECEIVED_WHITE_HERB, Route104_EventScript_1ECFFC
msgbox Route104_Text_1ED96A, MSGBOX_DEFAULT
giveitem_std ITEM_WHITE_HERB
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_272054
- setflag FLAG_0x117
+ setflag FLAG_RECEIVED_WHITE_HERB
release
end
@@ -337,12 +337,12 @@ Route104_EventScript_1ED04E:: @ 81ED04E
Route104_EventScript_1ED057:: @ 81ED057
lock
faceplayer
- goto_if_set FLAG_0x106, Route104_EventScript_1ED086
+ goto_if_set FLAG_RECEIVED_TM09, Route104_EventScript_1ED086
msgbox Route104_Text_1ED838, MSGBOX_DEFAULT
giveitem_std ITEM_TM09
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_272054
- setflag FLAG_0x106
+ setflag FLAG_RECEIVED_TM09
release
end
@@ -365,8 +365,8 @@ Route104_EventScript_1ED099:: @ 81ED099
waitmovement 0
hideobjectat EVENT_OBJ_ID_PLAYER, MAP_ROUTE104
call Route104_EventScript_2720A0
- goto_if_set FLAG_0x132, Route104_EventScript_1ED0D9
- goto_if_unset FLAG_0x132, Route104_EventScript_1ED0EF
+ goto_if_set FLAG_ENABLE_NORMAN_MATCH_CALL, Route104_EventScript_1ED0D9
+ goto_if_unset FLAG_ENABLE_NORMAN_MATCH_CALL, Route104_EventScript_1ED0EF
end
Route104_EventScript_1ED0D9:: @ 81ED0D9
@@ -387,7 +387,7 @@ Route104_EventScript_1ED0EF:: @ 81ED0EF
waitfanfare
closemessage
delay 30
- setflag FLAG_0x132
+ setflag FLAG_ENABLE_NORMAN_MATCH_CALL
applymovement EVENT_OBJ_ID_PLAYER, Route104_Movement_1ED22A
applymovement 7, Route104_Movement_1ED22A, MAP_ROUTE104
waitmovement 7, MAP_ROUTE104
@@ -418,8 +418,8 @@ Route104_EventScript_1ED139:: @ 81ED139
resetobjectpriority 2, MAP_DEWFORD_TOWN
moveobjectoffscreen 2
setvar VAR_0x408E, 0
- goto_if_unset FLAG_0x0BD, Route104_EventScript_1ED1B4
- goto_if_set FLAG_0x0BD, Route104_EventScript_1ED1BE
+ goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_1ED1B4
+ goto_if_set FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_1ED1BE
end
Route104_EventScript_1ED1B4:: @ 81ED1B4
@@ -1185,4 +1185,3 @@ Route104_Text_1EE120: @ 81EE120
.string "making POKéMON battle.\p"
.string "Like MR. BRINEY, it's important to\n"
.string "become friends with your POKéMON.$"
-
diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc
index 90298a924..ba1afc428 100644
--- a/data/maps/Route104_MrBrineysHouse/scripts.inc
+++ b/data/maps/Route104_MrBrineysHouse/scripts.inc
@@ -6,7 +6,7 @@ Route104_MrBrineysHouse_MapScript1_229D34: @ 8229D34
setflag FLAG_LANDMARK_MR_BRINEY_HOUSE
compare VAR_0x4090, 1
call_if_eq Route104_MrBrineysHouse_EventScript_229D50
- call_if_set FLAG_0x0BC, Route104_MrBrineysHouse_EventScript_229D4C
+ call_if_set FLAG_RECEIVED_POKENAV, Route104_MrBrineysHouse_EventScript_229D4C
end
Route104_MrBrineysHouse_EventScript_229D4C:: @ 8229D4C
@@ -23,14 +23,14 @@ Route104_MrBrineysHouse_EventScript_229D50:: @ 8229D50
Route104_MrBrineysHouse_EventScript_229D67:: @ 8229D67
lock
faceplayer
- call_if_unset FLAG_0x093, Route104_MrBrineysHouse_EventScript_229D8A
- goto_if_unset FLAG_0x0BD, Route104_MrBrineysHouse_EventScript_229DE1
- goto_if_unset FLAG_0x095, Route104_MrBrineysHouse_EventScript_229DFA
+ call_if_unset FLAG_MR_BRINEY_SAILING_INTRO, Route104_MrBrineysHouse_EventScript_229D8A
+ goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, Route104_MrBrineysHouse_EventScript_229DE1
+ goto_if_unset FLAG_DELIVERED_DEVON_GOODS, Route104_MrBrineysHouse_EventScript_229DFA
goto Route104_MrBrineysHouse_EventScript_229DAE
end
Route104_MrBrineysHouse_EventScript_229D8A:: @ 8229D8A
- setflag FLAG_0x093
+ setflag FLAG_MR_BRINEY_SAILING_INTRO
msgbox Route104_MrBrineysHouse_Text_229E70, MSGBOX_DEFAULT
msgbox Route104_MrBrineysHouse_Text_229E9B, MSGBOX_YESNO
compare VAR_RESULT, 0
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
index fc0acf329..e9af43d73 100644
--- a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
+++ b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
@@ -4,7 +4,7 @@ Route104_PrettyPetalFlowerShop_MapScripts:: @ 822A34C
Route104_PrettyPetalFlowerShop_MapScript1_22A352: @ 822A352
setflag FLAG_LANDMARK_FLOWER_SHOP
- goto_if_unset FLAG_0x07F, Route104_PrettyPetalFlowerShop_EventScript_22A36B
+ goto_if_unset FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_PrettyPetalFlowerShop_EventScript_22A36B
goto_if_unset FLAG_BADGE03_GET, Route104_PrettyPetalFlowerShop_EventScript_22A36B
setflag FLAG_TEMP_1
end
@@ -18,8 +18,8 @@ Route104_PrettyPetalFlowerShop_EventScript_22A373:: @ 822A373
faceplayer
goto_if_set FLAG_TEMP_1, Route104_PrettyPetalFlowerShop_EventScript_22A3E4
msgbox Route104_PrettyPetalFlowerShop_Text_2A7686, MSGBOX_DEFAULT
- goto_if_set FLAG_0x07F, Route104_PrettyPetalFlowerShop_EventScript_22A3B2
- setflag FLAG_0x07F
+ goto_if_set FLAG_MET_PRETTY_PETAL_SHOP_OWNER, Route104_PrettyPetalFlowerShop_EventScript_22A3B2
+ setflag FLAG_MET_PRETTY_PETAL_SHOP_OWNER
msgbox Route104_PrettyPetalFlowerShop_Text_2A7706, MSGBOX_YESNO
compare VAR_RESULT, 1
call_if_eq Route104_PrettyPetalFlowerShop_EventScript_22A3D2
@@ -68,7 +68,7 @@ Route104_PrettyPetalFlowerShop_Pokemart_22A3FC: @ 822A3FC
Route104_PrettyPetalFlowerShop_EventScript_22A40C:: @ 822A40C
lock
faceplayer
- goto_if_unset FLAG_0x05E, Route104_PrettyPetalFlowerShop_EventScript_22A421
+ goto_if_unset FLAG_RECEIVED_WAILMER_PAIL, Route104_PrettyPetalFlowerShop_EventScript_22A421
msgbox Route104_PrettyPetalFlowerShop_Text_2A79A6, MSGBOX_DEFAULT
release
end
@@ -77,7 +77,7 @@ Route104_PrettyPetalFlowerShop_EventScript_22A421:: @ 822A421
msgbox Route104_PrettyPetalFlowerShop_Text_2A7916, MSGBOX_DEFAULT
giveitem_std ITEM_WAILMER_PAIL
msgbox Route104_PrettyPetalFlowerShop_Text_2A79A6, MSGBOX_DEFAULT
- setflag FLAG_0x05E
+ setflag FLAG_RECEIVED_WAILMER_PAIL
release
end
@@ -85,14 +85,14 @@ Route104_PrettyPetalFlowerShop_EventScript_22A442:: @ 822A442
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x930, Route104_PrettyPetalFlowerShop_EventScript_22A482
+ goto_if_set FLAG_DAILY_FLOWER_SHOP_RECEIVED_BERRY, Route104_PrettyPetalFlowerShop_EventScript_22A482
msgbox Route104_PrettyPetalFlowerShop_Text_2A7A98, MSGBOX_DEFAULT
random 8
addvar VAR_RESULT, 133
giveitem_std VAR_RESULT
compare VAR_RESULT, 0
goto_if_eq Route104_PrettyPetalFlowerShop_EventScript_272054
- setflag FLAG_0x930
+ setflag FLAG_DAILY_FLOWER_SHOP_RECEIVED_BERRY
msgbox Route104_PrettyPetalFlowerShop_Text_2A7AF3, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/Route105/scripts.inc b/data/maps/Route105/scripts.inc
index adb8c4f8e..b4213af5b 100644
--- a/data/maps/Route105/scripts.inc
+++ b/data/maps/Route105/scripts.inc
@@ -5,7 +5,7 @@ Route105_MapScripts:: @ 81EE1DB
.byte 0
Route105_MapScript1_1EE1EB: @ 81EE1EB
- call_if_unset FLAG_0x0E4, Route105_EventScript_1EE20B
+ call_if_unset FLAG_REGI_DOORS_OPENED, Route105_EventScript_1EE20B
compare VAR_0x4037, 9
call_if_eq Route105_EventScript_2739AB
compare VAR_0x4037, 10
diff --git a/data/maps/Route109/events.inc b/data/maps/Route109/events.inc
index 322055874..89ee11bb3 100644
--- a/data/maps/Route109/events.inc
+++ b/data/maps/Route109/events.inc
@@ -21,7 +21,7 @@ Route109_EventObjects: @ 8528A34
object_event 20, EVENT_OBJ_GFX_ZIGZAGOON_2, 0, 32, 6, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route109_EventScript_1EEA18, 0
object_event 21, EVENT_OBJ_GFX_TUBER_F, 0, 17, 13, 3, MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT, 1, 1, 1, 6, Route109_EventScript_1EEBEF, 0
object_event 22, EVENT_OBJ_GFX_TUBER_M, 0, 27, 7, 3, MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT, 1, 1, 1, 4, Route109_EventScript_1EEBD8, 0
- object_event 23, EVENT_OBJ_GFX_ITEM_BALL, 0, 25, 6, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route109_EventScript_290D67, FLAG_0x474
+ object_event 23, EVENT_OBJ_GFX_ITEM_BALL, 0, 25, 6, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route109_EventScript_290D67, FLAG_ITEM_ROUTE_109_POTION
object_event 24, EVENT_OBJ_GFX_MAN_5, 0, 17, 56, 3, MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT, 1, 1, 1, 3, Route109_EventScript_1EEC06, 0
Route109_MapWarps: @ 8528C74
@@ -39,4 +39,3 @@ Route109_MapBGEvents: @ 8528C7C
Route109_MapEvents:: @ 8528CDC
map_events Route109_EventObjects, Route109_MapWarps, 0x0, Route109_MapBGEvents
-
diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc
index 2e588f813..ebf9398d1 100644
--- a/data/maps/Route109/scripts.inc
+++ b/data/maps/Route109/scripts.inc
@@ -272,7 +272,7 @@ Route109_Movement_1EE90D: @ 81EE90D
Route109_EventScript_1EE910:: @ 81EE910
lock
faceplayer
- goto_if_unset FLAG_0x095, Route109_EventScript_1EE921
+ goto_if_unset FLAG_DELIVERED_DEVON_GOODS, Route109_EventScript_1EE921
goto Route109_EventScript_1EE93F
end
@@ -328,7 +328,7 @@ Route109_EventScript_1EE9B5:: @ 81EE9B5
lock
faceplayer
special GetPlayerBigGuyGirlString
- goto_if_set FLAG_0x118, Route109_EventScript_1EE9F2
+ goto_if_set FLAG_RECEIVED_SOFT_SAND, Route109_EventScript_1EE9F2
msgbox Route109_Text_1EEFDE, MSGBOX_DEFAULT
giveitem_std ITEM_SOFT_SAND
compare VAR_RESULT, 0
@@ -336,7 +336,7 @@ Route109_EventScript_1EE9B5:: @ 81EE9B5
closemessage
applymovement VAR_LAST_TALKED, Route109_Movement_2725A2
waitmovement 0
- setflag FLAG_0x118
+ setflag FLAG_RECEIVED_SOFT_SAND
release
end
diff --git a/data/maps/Route109_SeashoreHouse/scripts.inc b/data/maps/Route109_SeashoreHouse/scripts.inc
index 3056159cd..951356409 100644
--- a/data/maps/Route109_SeashoreHouse/scripts.inc
+++ b/data/maps/Route109_SeashoreHouse/scripts.inc
@@ -9,8 +9,8 @@ Route109_SeashoreHouse_MapScript1_2693FA: @ 82693FA
Route109_SeashoreHouse_EventScript_2693FE:: @ 82693FE
lock
faceplayer
- goto_if_set FLAG_0x08C, Route109_SeashoreHouse_EventScript_269460
- goto_if_set FLAG_0x08D, Route109_SeashoreHouse_EventScript_269432
+ goto_if_set FLAG_RECEIVED_6_SODA_POP, Route109_SeashoreHouse_EventScript_269460
+ goto_if_set FLAG_DEFEATED_SEASHORE_HOUSE, Route109_SeashoreHouse_EventScript_269432
goto_if_set FLAG_TEMP_2, Route109_SeashoreHouse_EventScript_269428
msgbox Route109_SeashoreHouse_Text_269555, MSGBOX_DEFAULT
setflag FLAG_TEMP_2
@@ -27,7 +27,7 @@ Route109_SeashoreHouse_EventScript_269432:: @ 8269432
giveitem_std ITEM_SODA_POP, 6
compare VAR_RESULT, 0
goto_if_eq Route109_SeashoreHouse_EventScript_269456
- setflag FLAG_0x08C
+ setflag FLAG_RECEIVED_6_SODA_POP
release
end
@@ -104,7 +104,7 @@ Route109_SeashoreHouse_EventScript_269533:: @ 8269533
goto_if_lt Route109_SeashoreHouse_EventScript_269553
checktrainerflag TRAINER_SIMON
goto_if_lt Route109_SeashoreHouse_EventScript_269553
- setflag FLAG_0x08D
+ setflag FLAG_DEFEATED_SEASHORE_HOUSE
release
end
diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc
index 4e96a592c..0455ebb1f 100644
--- a/data/maps/Route110/scripts.inc
+++ b/data/maps/Route110/scripts.inc
@@ -648,7 +648,7 @@ Route110_EventScript_1EF9F7:: @ 81EF9F7
waitfanfare
closemessage
delay 30
- setflag FLAG_0x119
+ setflag FLAG_ENABLE_PROF_BIRCH_MATCH_CALL
msgbox Route110_Text_1F0C33, MSGBOX_DEFAULT
closemessage
compare VAR_0x8008, 1
diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc
index 76e8ac769..3babdbd45 100644
--- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc
+++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc
@@ -10,11 +10,11 @@ Route110_TrickHousePuzzle7_MapScript1_26E0A6: @ 826E0A6
end
Route110_TrickHousePuzzle7_EventScript_26E0AC:: @ 826E0AC
- call_if_set FLAG_0x0C2, Route110_TrickHousePuzzle7_EventScript_26E0DA
- call_if_set FLAG_0x0C3, Route110_TrickHousePuzzle7_EventScript_26E0ED
- call_if_set FLAG_0x0C4, Route110_TrickHousePuzzle7_EventScript_26E100
- call_if_set FLAG_0x0C5, Route110_TrickHousePuzzle7_EventScript_26E113
- call_if_set FLAG_0x0C6, Route110_TrickHousePuzzle7_EventScript_26E126
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_26E0DA
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_26E0ED
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_26E100
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_26E113
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_26E126
return
Route110_TrickHousePuzzle7_EventScript_26E0DA:: @ 826E0DA
@@ -70,11 +70,11 @@ Route110_TrickHousePuzzle7_EventScript_26E185:: @ 826E185
Route110_TrickHousePuzzle7_MapScript1_26E198: @ 826E198
compare VAR_0x40B6, 1
goto_if_eq Route110_TrickHousePuzzle7_EventScript_26E1B3
- clearflag FLAG_0x0C2
- clearflag FLAG_0x0C3
- clearflag FLAG_0x0C4
- clearflag FLAG_0x0C5
- clearflag FLAG_0x0C6
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
end
Route110_TrickHousePuzzle7_EventScript_26E1B3:: @ 826E1B3
@@ -116,105 +116,105 @@ Route110_TrickHousePuzzle7_EventScript_26E1ED:: @ 826E1ED
Route110_TrickHousePuzzle7_EventScript_26E1FE:: @ 826E1FE
lockall
delay 32
- call_if_unset FLAG_0x0C2, Route110_TrickHousePuzzle7_EventScript_26E0DA
- call_if_set FLAG_0x0C2, Route110_TrickHousePuzzle7_EventScript_26E139
+ call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_26E0DA
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_26E139
special DrawWholeMapView
playse SE_TK_KASYA
- goto_if_unset FLAG_0x0C2, Route110_TrickHousePuzzle7_EventScript_26E2E9
- goto_if_set FLAG_0x0C2, Route110_TrickHousePuzzle7_EventScript_26E2EE
+ goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_26E2E9
+ goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1, Route110_TrickHousePuzzle7_EventScript_26E2EE
end
Route110_TrickHousePuzzle7_EventScript_26E22D:: @ 826E22D
lockall
delay 32
- call_if_unset FLAG_0x0C3, Route110_TrickHousePuzzle7_EventScript_26E0ED
- call_if_set FLAG_0x0C3, Route110_TrickHousePuzzle7_EventScript_26E14C
+ call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_26E0ED
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_26E14C
special DrawWholeMapView
playse SE_TK_KASYA
- goto_if_unset FLAG_0x0C3, Route110_TrickHousePuzzle7_EventScript_26E2F3
- goto_if_set FLAG_0x0C3, Route110_TrickHousePuzzle7_EventScript_26E2F8
+ goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_26E2F3
+ goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2, Route110_TrickHousePuzzle7_EventScript_26E2F8
end
Route110_TrickHousePuzzle7_EventScript_26E25C:: @ 826E25C
lockall
delay 32
- call_if_unset FLAG_0x0C4, Route110_TrickHousePuzzle7_EventScript_26E100
- call_if_set FLAG_0x0C4, Route110_TrickHousePuzzle7_EventScript_26E15F
+ call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_26E100
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_26E15F
special DrawWholeMapView
playse SE_TK_KASYA
- goto_if_unset FLAG_0x0C4, Route110_TrickHousePuzzle7_EventScript_26E2FD
- goto_if_set FLAG_0x0C4, Route110_TrickHousePuzzle7_EventScript_26E302
+ goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_26E2FD
+ goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3, Route110_TrickHousePuzzle7_EventScript_26E302
end
Route110_TrickHousePuzzle7_EventScript_26E28B:: @ 826E28B
lockall
delay 32
- call_if_unset FLAG_0x0C5, Route110_TrickHousePuzzle7_EventScript_26E113
- call_if_set FLAG_0x0C5, Route110_TrickHousePuzzle7_EventScript_26E172
+ call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_26E113
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_26E172
special DrawWholeMapView
playse SE_TK_KASYA
- goto_if_unset FLAG_0x0C5, Route110_TrickHousePuzzle7_EventScript_26E307
- goto_if_set FLAG_0x0C5, Route110_TrickHousePuzzle7_EventScript_26E30C
+ goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_26E307
+ goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4, Route110_TrickHousePuzzle7_EventScript_26E30C
end
Route110_TrickHousePuzzle7_EventScript_26E2BA:: @ 826E2BA
lockall
delay 32
- call_if_unset FLAG_0x0C6, Route110_TrickHousePuzzle7_EventScript_26E126
- call_if_set FLAG_0x0C6, Route110_TrickHousePuzzle7_EventScript_26E185
+ call_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_26E126
+ call_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_26E185
special DrawWholeMapView
playse SE_TK_KASYA
- goto_if_unset FLAG_0x0C6, Route110_TrickHousePuzzle7_EventScript_26E311
- goto_if_set FLAG_0x0C6, Route110_TrickHousePuzzle7_EventScript_26E316
+ goto_if_unset FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_26E311
+ goto_if_set FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5, Route110_TrickHousePuzzle7_EventScript_26E316
end
Route110_TrickHousePuzzle7_EventScript_26E2E9:: @ 826E2E9
- setflag FLAG_0x0C2
+ setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E2EE:: @ 826E2EE
- clearflag FLAG_0x0C2
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E2F3:: @ 826E2F3
- setflag FLAG_0x0C3
+ setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E2F8:: @ 826E2F8
- clearflag FLAG_0x0C3
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E2FD:: @ 826E2FD
- setflag FLAG_0x0C4
+ setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E302:: @ 826E302
- clearflag FLAG_0x0C4
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E307:: @ 826E307
- setflag FLAG_0x0C5
+ setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E30C:: @ 826E30C
- clearflag FLAG_0x0C5
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E311:: @ 826E311
- setflag FLAG_0x0C6
+ setflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
releaseall
end
Route110_TrickHousePuzzle7_EventScript_26E316:: @ 826E316
- clearflag FLAG_0x0C6
+ clearflag FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5
releaseall
end
diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc
index ad6a16572..c89fcb3dc 100644
--- a/data/maps/Route111/scripts.inc
+++ b/data/maps/Route111/scripts.inc
@@ -6,7 +6,7 @@ Route111_MapScripts:: @ 81F0CA7
.byte 0
Route111_MapScript1_1F0CBC: @ 81F0CBC
- call_if_unset FLAG_0x0E4, Route111_EventScript_1F0CD1
+ call_if_unset FLAG_REGI_DOORS_OPENED, Route111_EventScript_1F0CD1
compare VAR_0x40CB, 1
call_if_eq Route111_EventScript_1F0CE4
end
@@ -136,7 +136,7 @@ Route111_EventScript_1F0E60:: @ 81F0E60
waitstate
setvar VAR_0x40CB, 2
clearflag FLAG_HIDE_DESERT_UNDERPASS_FOSSIL
- goto_if_set FLAG_0x150, Route111_EventScript_1F0EA7
+ goto_if_set FLAG_CHOSE_ROOT_FOSSIL, Route111_EventScript_1F0EA7
msgbox Route111_Text_1F1C74, MSGBOX_DEFAULT
releaseall
end
@@ -160,12 +160,12 @@ Route111_EventScript_1F0EB9:: @ 81F0EB9
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x92C, Route111_EventScript_1F0EF4
+ goto_if_set FLAG_DAILY_ROUTE_111_RECEIVED_BERRY, Route111_EventScript_1F0EF4
msgbox Route111_Text_2A6EBD, MSGBOX_DEFAULT
giveitem_std ITEM_RAZZ_BERRY
compare VAR_RESULT, 0
goto_if_eq Route111_EventScript_272054
- setflag FLAG_0x92C
+ setflag FLAG_DAILY_ROUTE_111_RECEIVED_BERRY
special GetPlayerBigGuyGirlString
msgbox Route111_Text_2A6F3D, MSGBOX_DEFAULT
release
diff --git a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
index cd862b7e3..b54fe564e 100644
--- a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
+++ b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
@@ -13,12 +13,12 @@ Route111_WinstrateFamilysHouse_EventScript_22A4A2:: @ 822A4A2
lock
faceplayer
setvar VAR_0x8008, 3
- goto_if_set FLAG_0x115, Route111_WinstrateFamilysHouse_EventScript_22A4DA
+ goto_if_set FLAG_RECEIVED_MACHO_BRACE, Route111_WinstrateFamilysHouse_EventScript_22A4DA
msgbox Route111_WinstrateFamilysHouse_Text_22A5F4, MSGBOX_DEFAULT
giveitem_std ITEM_MACHO_BRACE
compare VAR_RESULT, 0
goto_if_eq Route111_WinstrateFamilysHouse_EventScript_272054
- setflag FLAG_0x115
+ setflag FLAG_RECEIVED_MACHO_BRACE
goto Route111_WinstrateFamilysHouse_EventScript_22A52C
end
diff --git a/data/maps/Route114/scripts.inc b/data/maps/Route114/scripts.inc
index b66b54910..8f0c1c6ac 100644
--- a/data/maps/Route114/scripts.inc
+++ b/data/maps/Route114/scripts.inc
@@ -28,7 +28,7 @@ Route114_EventScript_1F2582:: @ 81F2582
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x92B, Route114_EventScript_1F25C7
+ goto_if_set FLAG_DAILY_ROUTE_114_RECEIVED_BERRY, Route114_EventScript_1F25C7
msgbox Route114_Text_2A6FCB, MSGBOX_DEFAULT
random 5
addvar VAR_RESULT, 15
@@ -36,7 +36,7 @@ Route114_EventScript_1F2582:: @ 81F2582
giveitem_std VAR_RESULT
compare VAR_RESULT, 0
goto_if_eq Route114_EventScript_272054
- setflag FLAG_0x92B
+ setflag FLAG_DAILY_ROUTE_114_RECEIVED_BERRY
msgbox Route114_Text_2A7034, MSGBOX_DEFAULT
release
end
@@ -49,12 +49,12 @@ Route114_EventScript_1F25C7:: @ 81F25C7
Route114_EventScript_1F25D1:: @ 81F25D1
lock
faceplayer
- goto_if_set FLAG_0x0E7, Route114_EventScript_1F2608
+ goto_if_set FLAG_RECEIVED_TM05, Route114_EventScript_1F2608
msgbox Route114_Text_1F2809, MSGBOX_DEFAULT
giveitem_std ITEM_TM05
compare VAR_RESULT, 0
goto_if_eq Route114_EventScript_272054
- setflag FLAG_0x0E7
+ setflag FLAG_RECEIVED_TM05
msgbox Route114_Text_1F2872, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/Route114_FossilManiacsHouse/scripts.inc b/data/maps/Route114_FossilManiacsHouse/scripts.inc
index 4985089c2..e229c756d 100644
--- a/data/maps/Route114_FossilManiacsHouse/scripts.inc
+++ b/data/maps/Route114_FossilManiacsHouse/scripts.inc
@@ -9,12 +9,12 @@ Route114_FossilManiacsHouse_MapScript1_22AD36: @ 822AD36
Route114_FossilManiacsHouse_EventScript_22AD3A:: @ 822AD3A
lock
faceplayer
- goto_if_set FLAG_0x105, Route114_FossilManiacsHouse_EventScript_22AD69
+ goto_if_set FLAG_RECEIVED_TM28, Route114_FossilManiacsHouse_EventScript_22AD69
msgbox Route114_FossilManiacsHouse_Text_22AD85, MSGBOX_DEFAULT
giveitem_std ITEM_TM28
compare VAR_RESULT, 0
goto_if_eq Route114_FossilManiacsHouse_EventScript_272054
- setflag FLAG_0x105
+ setflag FLAG_RECEIVED_TM28
release
end
diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc
index 850e970e3..b98fd3321 100644
--- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc
+++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc
@@ -34,7 +34,7 @@ Route114_FossilManiacsTunnel_EventScript_22AF66:: @ 822AF66
Route114_FossilManiacsTunnel_EventScript_22AF87:: @ 822AF87
lock
faceplayer
- goto_if_set FLAG_0x10B, Route114_FossilManiacsTunnel_EventScript_22AFC6
+ goto_if_set FLAG_RECEIVED_REVIVED_FOSSIL_MON, Route114_FossilManiacsTunnel_EventScript_22AFC6
checkitem ITEM_ROOT_FOSSIL, 1
compare VAR_RESULT, 1
goto_if_eq Route114_FossilManiacsTunnel_EventScript_22AFBC
diff --git a/data/maps/Route114_LanettesHouse/scripts.inc b/data/maps/Route114_LanettesHouse/scripts.inc
index 984bca574..b54365523 100644
--- a/data/maps/Route114_LanettesHouse/scripts.inc
+++ b/data/maps/Route114_LanettesHouse/scripts.inc
@@ -9,13 +9,13 @@ Route114_LanettesHouse_MapScript1_22B2CE: @ 822B2CE
Route114_LanettesHouse_EventScript_22B2D2:: @ 822B2D2
lock
faceplayer
- goto_if_set FLAG_0x083, Route114_LanettesHouse_EventScript_22B2FF
+ goto_if_set FLAG_RECEIVED_DOLL_LANETTE, Route114_LanettesHouse_EventScript_22B2FF
setflag FLAG_SYS_PC_LANETTE
msgbox Route114_LanettesHouse_Text_22B34E, MSGBOX_DEFAULT
givedecoration_std 99
compare VAR_RESULT, 0
goto_if_eq Route114_LanettesHouse_EventScript_272067
- setflag FLAG_0x083
+ setflag FLAG_RECEIVED_DOLL_LANETTE
release
end
diff --git a/data/maps/Route116/scripts.inc b/data/maps/Route116/scripts.inc
index 519bc0447..623c74e3c 100644
--- a/data/maps/Route116/scripts.inc
+++ b/data/maps/Route116/scripts.inc
@@ -5,7 +5,7 @@ Route116_MapScripts:: @ 81F2C0C
.byte 0
Route116_MapScript1_1F2C1C: @ 81F2C1C
- call_if_set FLAG_0x08F, Route116_EventScript_1F2C47
+ call_if_set FLAG_RECOVERED_DEVON_GOODS, Route116_EventScript_1F2C47
compare VAR_0x4039, 1
call_if_eq Route116_EventScript_273D13
compare VAR_0x4037, 5
@@ -32,8 +32,8 @@ Route116_MapScript2_1F2C66: @ 81F2C66
Route116_EventScript_1F2C70:: @ 81F2C70
lock
faceplayer
- goto_if_set FLAG_0x08F, Route116_EventScript_1F2C8E
- goto_if_set FLAG_0x08E, Route116_EventScript_1F2C98
+ goto_if_set FLAG_RECOVERED_DEVON_GOODS, Route116_EventScript_1F2C8E
+ goto_if_set FLAG_DEVON_GOODS_STOLEN, Route116_EventScript_1F2C98
msgbox Route116_Text_1F3140, MSGBOX_DEFAULT
release
end
@@ -51,13 +51,13 @@ Route116_EventScript_1F2C98:: @ 81F2C98
Route116_EventScript_1F2CA2:: @ 81F2CA2
lock
faceplayer
- goto_if_set FLAG_0x11F, Route116_EventScript_1F2D2B
+ goto_if_set FLAG_MET_DEVON_EMPLOYEE, Route116_EventScript_1F2D2B
msgbox Route116_Text_1F3317, MSGBOX_DEFAULT
goto Route116_EventScript_1F2CBB
end
Route116_EventScript_1F2CBB:: @ 81F2CBB
- setflag FLAG_0x11F
+ setflag FLAG_MET_DEVON_EMPLOYEE
giveitem_std ITEM_REPEAT_BALL
compare VAR_RESULT, 0
goto_if_eq Route116_EventScript_1F2D39
@@ -73,7 +73,7 @@ Route116_EventScript_1F2CBB:: @ 81F2CBB
call_if_eq Route116_EventScript_1F2D20
removeobject VAR_LAST_TALKED
clearflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE
- setflag FLAG_0x100
+ setflag FLAG_RECEIVED_REPEAT_BALL
release
end
diff --git a/data/maps/Route118/scripts.inc b/data/maps/Route118/scripts.inc
index 91067e786..45b8665b0 100644
--- a/data/maps/Route118/scripts.inc
+++ b/data/maps/Route118/scripts.inc
@@ -28,7 +28,7 @@ Route118_MapScript2_1F3E0A: @ 81F3E0A
Route118_EventScript_1F3E14:: @ 81F3E14
lock
faceplayer
- goto_if_set FLAG_0x0E3, Route118_EventScript_1F3E69
+ goto_if_set FLAG_RECEIVED_GOOD_ROD, Route118_EventScript_1F3E69
msgbox Route118_Text_1F427B, MSGBOX_YESNO
compare VAR_RESULT, 1
goto_if_eq Route118_EventScript_1F3E3E
@@ -39,7 +39,7 @@ Route118_EventScript_1F3E14:: @ 81F3E14
Route118_EventScript_1F3E3E:: @ 81F3E3E
msgbox Route118_Text_1F42AF, MSGBOX_DEFAULT
giveitem_std ITEM_GOOD_ROD
- setflag FLAG_0x0E3
+ setflag FLAG_RECEIVED_GOOD_ROD
msgbox Route118_Text_1F42E7, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc
index 978067ddf..dee76d71d 100644
--- a/data/maps/Route119/scripts.inc
+++ b/data/maps/Route119/scripts.inc
@@ -139,7 +139,7 @@ Route119_EventScript_1F45E4:: @ 81F45E4
Route119_EventScript_1F45FF:: @ 81F45FF
giveitem_std ITEM_HM02
- setflag FLAG_0x06E
+ setflag FLAG_RECEIVED_HM02
return
Route119_EventScript_1F460F:: @ 81F460F
@@ -490,7 +490,7 @@ Route119_EventScript_1F49EC:: @ 81F49EC
lockall
pokenavcall Route119_Text_1F4FBA
waitmessage
- clearflag FLAG_0x08A
+ clearflag FLAG_REGISTER_WINONA_POKENAV
addvar VAR_0x40D1, 1
releaseall
end
diff --git a/data/maps/Route119_WeatherInstitute_1F/scripts.inc b/data/maps/Route119_WeatherInstitute_1F/scripts.inc
index b0426ea2e..8dada27e8 100644
--- a/data/maps/Route119_WeatherInstitute_1F/scripts.inc
+++ b/data/maps/Route119_WeatherInstitute_1F/scripts.inc
@@ -32,8 +32,8 @@ Route119_WeatherInstitute_1F_EventScript_26FAC8:: @ 826FAC8
faceplayer
goto_if_unset FLAG_SYS_GAME_CLEAR, Route119_WeatherInstitute_1F_EventScript_26FB05
setvar VAR_0x8004, 0
- call_if_set FLAG_0x1BE, Route119_WeatherInstitute_1F_EventScript_26FAFF
- call_if_set FLAG_0x1BF, Route119_WeatherInstitute_1F_EventScript_26FAFF
+ call_if_set FLAG_DEFEATED_KYOGRE, Route119_WeatherInstitute_1F_EventScript_26FAFF
+ call_if_set FLAG_DEFEATED_GROUDON, Route119_WeatherInstitute_1F_EventScript_26FAFF
compare VAR_0x8004, 2
goto_if_eq Route119_WeatherInstitute_1F_EventScript_26FB05
msgbox Route119_WeatherInstitute_1F_Text_26FDE8, MSGBOX_DEFAULT
diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
index 6d54e62ad..e7d2cb03d 100644
--- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc
+++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
@@ -126,7 +126,7 @@ Route119_WeatherInstitute_2F_EventScript_2700DB:: @ 82700DB
Route119_WeatherInstitute_2F_EventScript_2700EA:: @ 82700EA
msgbox Route119_WeatherInstitute_2F_Text_2706FE, MSGBOX_DEFAULT
- setflag FLAG_0x097
+ setflag FLAG_RECEIVED_CASTFORM
release
end
@@ -138,8 +138,8 @@ Route119_WeatherInstitute_2F_EventScript_2700F7:: @ 82700F7
Route119_WeatherInstitute_2F_EventScript_27010A:: @ 827010A
setvar VAR_0x8004, 0
- call_if_set FLAG_0x1BE, Route119_WeatherInstitute_2F_EventScript_270160
- call_if_set FLAG_0x1BF, Route119_WeatherInstitute_2F_EventScript_270160
+ call_if_set FLAG_DEFEATED_KYOGRE, Route119_WeatherInstitute_2F_EventScript_270160
+ call_if_set FLAG_DEFEATED_GROUDON, Route119_WeatherInstitute_2F_EventScript_270160
compare VAR_0x8004, 2
goto_if_eq Route119_WeatherInstitute_2F_EventScript_270166
call_if_unset FLAG_TEMP_2, Route119_WeatherInstitute_2F_EventScript_270159
@@ -207,7 +207,7 @@ Route119_WeatherInstitute_2F_Movement_270187: @ 8270187
Route119_WeatherInstitute_2F_EventScript_27018B:: @ 827018B
lock
faceplayer
- goto_if_set FLAG_0x097, Route119_WeatherInstitute_2F_EventScript_2700F7
+ goto_if_set FLAG_RECEIVED_CASTFORM, Route119_WeatherInstitute_2F_EventScript_2700F7
goto Route119_WeatherInstitute_2F_EventScript_27004D
end
diff --git a/data/maps/Route120/events.inc b/data/maps/Route120/events.inc
index 4400081f7..24b289060 100644
--- a/data/maps/Route120/events.inc
+++ b/data/maps/Route120/events.inc
@@ -29,7 +29,7 @@ Route120_EventObjects: @ 852B3F8
object_event 28, EVENT_OBJ_GFX_ITEM_BALL, 0, 22, 13, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route120_EventScript_290F6F, FLAG_ITEM_ROUTE_120_NEST_BALL
object_event 29, EVENT_OBJ_GFX_ITEM_BALL, 0, 23, 82, 5, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route120_EventScript_290F62, FLAG_ITEM_ROUTE_120_HYPER_POTION
object_event 30, EVENT_OBJ_GFX_KECLEON_1, 0, 12, 16, 4, MOVEMENT_TYPE_INVISIBLE, 1, 1, 0, 0, Route120_EventScript_1F57BC, FLAG_HIDE_ROUTE_120_KECLEON_1
- object_event 31, EVENT_OBJ_GFX_STEVEN, 0, 13, 15, 4, MOVEMENT_TYPE_FACE_DOWN, 1, 1, 0, 0, Route120_EventScript_1F5641, FLAG_0x3CC
+ object_event 31, EVENT_OBJ_GFX_STEVEN, 0, 13, 15, 4, MOVEMENT_TYPE_FACE_DOWN, 1, 1, 0, 0, Route120_EventScript_1F5641, FLAG_HIDE_ROUTE_120_STEVEN
object_event 32, EVENT_OBJ_GFX_CUTTABLE_TREE, 0, 20, 1, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route120_EventScript_2906BB, FLAG_TEMP_14
object_event 33, EVENT_OBJ_GFX_CUTTABLE_TREE, 0, 15, 1, 3, MOVEMENT_TYPE_LOOK_AROUND, 1, 1, 0, 0, Route120_EventScript_2906BB, FLAG_TEMP_12
object_event 34, EVENT_OBJ_GFX_NINJA_BOY, 0, 10, 72, 3, MOVEMENT_TYPE_MOUNTAIN_DISGUISE, 1, 1, 1, 3, Route120_EventScript_1F593C, 0
diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc
index cde0fbbd3..5a601678d 100644
--- a/data/maps/Route120/scripts.inc
+++ b/data/maps/Route120/scripts.inc
@@ -39,9 +39,9 @@ Route120_EventScript_1F5460:: @ 81F5460
return
Route120_MapScript1_1F5474: @ 81F5474
- call_if_unset FLAG_0x0E4, Route120_EventScript_1F5490
- call_if_set FLAG_0x11D, Route120_EventScript_1F54A3
- call_if_unset FLAG_0x11D, Route120_EventScript_1F54C8
+ call_if_unset FLAG_REGI_DOORS_OPENED, Route120_EventScript_1F5490
+ call_if_set FLAG_RECEIVED_DEVON_SCOPE, Route120_EventScript_1F54A3
+ call_if_unset FLAG_RECEIVED_DEVON_SCOPE, Route120_EventScript_1F54C8
end
Route120_EventScript_1F5490:: @ 81F5490
@@ -99,7 +99,7 @@ Route120_EventScript_1F5527:: @ 81F5527
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x92E, Route120_EventScript_1F5625
+ goto_if_set FLAG_DAILY_ROUTE_120_RECEIVED_BERRY, Route120_EventScript_1F5625
msgbox Route120_Text_2A70C7, MSGBOX_YESNO
compare VAR_RESULT, 1
call_if_eq Route120_EventScript_1F562F
@@ -148,7 +148,7 @@ Route120_EventScript_1F5601:: @ 81F5601
giveitem_std VAR_0x8004
compare VAR_RESULT, 0
goto_if_eq Route120_EventScript_272054
- setflag FLAG_0x92E
+ setflag FLAG_DAILY_ROUTE_120_RECEIVED_BERRY
msgbox Route120_Text_2A71D5, MSGBOX_DEFAULT
release
end
@@ -169,7 +169,7 @@ Route120_EventScript_1F5638:: @ 81F5638
Route120_EventScript_1F5641:: @ 81F5641
lock
faceplayer
- goto_if_set FLAG_0x122, Route120_EventScript_1F5672
+ goto_if_set FLAG_NOT_READY_FOR_BATTLE_ROUTE_120, Route120_EventScript_1F5672
msgbox Route120_Text_1F5998, MSGBOX_YESNO
compare VAR_RESULT, 0
goto_if_eq Route120_EventScript_1F5665
@@ -178,7 +178,7 @@ Route120_EventScript_1F5641:: @ 81F5641
Route120_EventScript_1F5665:: @ 81F5665
msgbox Route120_Text_1F5AAC, MSGBOX_DEFAULT
- setflag FLAG_0x122
+ setflag FLAG_NOT_READY_FOR_BATTLE_ROUTE_120
release
end
@@ -238,7 +238,7 @@ Route120_EventScript_1F572C:: @ 81F572C
waitmovement 0
msgbox Route120_Text_1F5BAF, MSGBOX_DEFAULT
giveitem_std ITEM_DEVON_SCOPE
- setflag FLAG_0x11D
+ setflag FLAG_RECEIVED_DEVON_SCOPE
msgbox Route120_Text_1F5C7B, MSGBOX_DEFAULT
closemessage
applymovement 31, Route120_Movement_2725AA
diff --git a/data/maps/Route121/events.inc b/data/maps/Route121/events.inc
index 4f27079a6..432071ed1 100644
--- a/data/maps/Route121/events.inc
+++ b/data/maps/Route121/events.inc
@@ -10,9 +10,9 @@ Route121_EventObjects: @ 852BA14
object_event 9, EVENT_OBJ_GFX_BERRY_TREE, 0, 67, 14, 3, MOVEMENT_TYPE_BERRY_TREE_GROWTH, 0, 0, 0, 54, BerryTreeScript, 0
object_event 10, EVENT_OBJ_GFX_LASS, 0, 39, 9, 3, MOVEMENT_TYPE_FACE_DOWN, 0, 0, 1, 1, Route121_EventScript_1F5F04, 0
object_event 11, EVENT_OBJ_GFX_LASS, 0, 40, 9, 3, MOVEMENT_TYPE_FACE_DOWN, 0, 0, 1, 1, Route121_EventScript_1F5F1F, 0
- object_event 12, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 30, 8, 3, MOVEMENT_TYPE_FACE_UP, 0, 0, 0, 0, 0x0, FLAG_0x392
- object_event 13, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 30, 7, 3, MOVEMENT_TYPE_FACE_RIGHT, 0, 0, 0, 0, 0x0, FLAG_0x392
- object_event 14, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 31, 7, 3, MOVEMENT_TYPE_FACE_LEFT, 0, 0, 0, 0, 0x0, FLAG_0x392
+ object_event 12, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 30, 8, 3, MOVEMENT_TYPE_FACE_UP, 0, 0, 0, 0, 0x0, FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS
+ object_event 13, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 30, 7, 3, MOVEMENT_TYPE_FACE_RIGHT, 0, 0, 0, 0, 0x0, FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS
+ object_event 14, EVENT_OBJ_GFX_AQUA_MEMBER_M, 0, 31, 7, 3, MOVEMENT_TYPE_FACE_LEFT, 0, 0, 0, 0, 0x0, FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS
object_event 15, EVENT_OBJ_GFX_CUTTABLE_TREE, 0, 32, 5, 3, MOVEMENT_TYPE_LOOK_AROUND, 0, 0, 0, 0, Route121_EventScript_2906BB, FLAG_TEMP_11
object_event 16, EVENT_OBJ_GFX_CUTTABLE_TREE, 0, 65, 4, 3, MOVEMENT_TYPE_LOOK_AROUND, 0, 0, 0, 0, Route121_EventScript_2906BB, FLAG_TEMP_12
object_event 17, EVENT_OBJ_GFX_POKEFAN_F, 0, 63, 5, 3, MOVEMENT_TYPE_FACE_LEFT, 0, 0, 1, 4, Route121_EventScript_1F5E74, 0
diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc
index 4a26d8075..d4ef73f9b 100644
--- a/data/maps/Route121_SafariZoneEntrance/scripts.inc
+++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc
@@ -82,7 +82,7 @@ Route121_SafariZoneEntrance_EventScript_22BC48:: @ 822BC48
waitmovement 0
special EnterSafariMode
setvar VAR_0x40A4, 2
- clearflag FLAG_0x05D
+ clearflag FLAG_GOOD_LUCK_SAFARI_ZONE
warp MAP_SAFARI_ZONE_SOUTH, 255, 32, 33
waitstate
end
diff --git a/data/maps/Route123/scripts.inc b/data/maps/Route123/scripts.inc
index d56a543da..86a6e767e 100644
--- a/data/maps/Route123/scripts.inc
+++ b/data/maps/Route123/scripts.inc
@@ -9,7 +9,7 @@ Route123_MapScript1_1F614D: @ 81F614D
Route123_EventScript_1F6151:: @ 81F6151
lock
faceplayer
- goto_if_set FLAG_0x0E8, Route123_EventScript_1F61A0
+ goto_if_set FLAG_RECEIVED_TM19, Route123_EventScript_1F61A0
msgbox Route123_Text_1F641E, MSGBOX_DEFAULT
special IsGrassTypeInParty
compare VAR_RESULT, 0
@@ -18,7 +18,7 @@ Route123_EventScript_1F6151:: @ 81F6151
giveitem_std ITEM_TM19
compare VAR_RESULT, 0
goto_if_eq Route123_EventScript_272054
- setflag FLAG_0x0E8
+ setflag FLAG_RECEIVED_TM19
msgbox Route123_Text_1F64CF, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/Route123_BerryMastersHouse/scripts.inc b/data/maps/Route123_BerryMastersHouse/scripts.inc
index a10bf7664..a3ae5df93 100644
--- a/data/maps/Route123_BerryMastersHouse/scripts.inc
+++ b/data/maps/Route123_BerryMastersHouse/scripts.inc
@@ -10,7 +10,7 @@ Route123_BerryMastersHouse_EventScript_26F845:: @ 826F845
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x92D, Route123_BerryMastersHouse_EventScript_26F8B6
+ goto_if_set FLAG_DAILY_BERRY_MASTER_RECEIVED_BERRY, Route123_BerryMastersHouse_EventScript_26F8B6
msgbox Route123_BerryMastersHouse_Text_2A7386, MSGBOX_DEFAULT
random 10
addvar VAR_RESULT, 20
@@ -18,7 +18,7 @@ Route123_BerryMastersHouse_EventScript_26F845:: @ 826F845
giveitem_std VAR_RESULT
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x92D
+ setflag FLAG_DAILY_BERRY_MASTER_RECEIVED_BERRY
msgbox Route123_BerryMastersHouse_Text_2A7428, MSGBOX_DEFAULT
random 10
addvar VAR_RESULT, 20
@@ -39,7 +39,7 @@ Route123_BerryMastersHouse_EventScript_26F8C0:: @ 826F8C0
lock
faceplayer
dodailyevents
- goto_if_set FLAG_0x931, Route123_BerryMastersHouse_EventScript_26FA6F
+ goto_if_set FLAG_DAILY_BERRY_MASTERS_WIFE, Route123_BerryMastersHouse_EventScript_26FA6F
msgbox Route123_BerryMastersHouse_Text_2A74E6, MSGBOX_DEFAULT
setvar VAR_0x8004, 13
call Route123_BerryMastersHouse_EventScript_271E7C
@@ -84,52 +84,52 @@ Route123_BerryMastersHouse_EventScript_26F94C:: @ 826F94C
end
Route123_BerryMastersHouse_EventScript_26F97A:: @ 826F97A
- goto_if_set FLAG_0x0F8, Route123_BerryMastersHouse_EventScript_26F94C
+ goto_if_set FLAG_RECEIVED_SPELON_BERRY, Route123_BerryMastersHouse_EventScript_26F94C
msgbox Route123_BerryMastersHouse_Text_2A7583, MSGBOX_DEFAULT
giveitem_std ITEM_SPELON_BERRY
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x0F8
+ setflag FLAG_RECEIVED_SPELON_BERRY
goto Route123_BerryMastersHouse_EventScript_26FA79
end
Route123_BerryMastersHouse_EventScript_26F9AB:: @ 826F9AB
- goto_if_set FLAG_0x0F9, Route123_BerryMastersHouse_EventScript_26F94C
+ goto_if_set FLAG_RECEIVED_PAMTRE_BERRY, Route123_BerryMastersHouse_EventScript_26F94C
msgbox Route123_BerryMastersHouse_Text_2A7583, MSGBOX_DEFAULT
giveitem_std ITEM_PAMTRE_BERRY
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x0F9
+ setflag FLAG_RECEIVED_PAMTRE_BERRY
goto Route123_BerryMastersHouse_EventScript_26FA79
end
Route123_BerryMastersHouse_EventScript_26F9DC:: @ 826F9DC
- goto_if_set FLAG_0x0FA, Route123_BerryMastersHouse_EventScript_26F94C
+ goto_if_set FLAG_RECEIVED_WATMEL_BERRY, Route123_BerryMastersHouse_EventScript_26F94C
msgbox Route123_BerryMastersHouse_Text_2A7583, MSGBOX_DEFAULT
giveitem_std ITEM_WATMEL_BERRY
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x0FA
+ setflag FLAG_RECEIVED_WATMEL_BERRY
goto Route123_BerryMastersHouse_EventScript_26FA79
end
Route123_BerryMastersHouse_EventScript_26FA0D:: @ 826FA0D
- goto_if_set FLAG_0x0FB, Route123_BerryMastersHouse_EventScript_26F94C
+ goto_if_set FLAG_RECEIVED_DURIN_BERRY, Route123_BerryMastersHouse_EventScript_26F94C
msgbox Route123_BerryMastersHouse_Text_2A7583, MSGBOX_DEFAULT
giveitem_std ITEM_DURIN_BERRY
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x0FB
+ setflag FLAG_RECEIVED_DURIN_BERRY
goto Route123_BerryMastersHouse_EventScript_26FA79
end
Route123_BerryMastersHouse_EventScript_26FA3E:: @ 826FA3E
- goto_if_set FLAG_0x0FC, Route123_BerryMastersHouse_EventScript_26F94C
+ goto_if_set FLAG_RECEIVED_BELUE_BERRY, Route123_BerryMastersHouse_EventScript_26F94C
msgbox Route123_BerryMastersHouse_Text_2A7583, MSGBOX_DEFAULT
giveitem_std ITEM_BELUE_BERRY
compare VAR_RESULT, 0
goto_if_eq Route123_BerryMastersHouse_EventScript_272054
- setflag FLAG_0x0FC
+ setflag FLAG_RECEIVED_BELUE_BERRY
goto Route123_BerryMastersHouse_EventScript_26FA79
end
@@ -139,7 +139,7 @@ Route123_BerryMastersHouse_EventScript_26FA6F:: @ 826FA6F
end
Route123_BerryMastersHouse_EventScript_26FA79:: @ 826FA79
- setflag FLAG_0x931
+ setflag FLAG_DAILY_BERRY_MASTERS_WIFE
msgbox Route123_BerryMastersHouse_Text_2A761B, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc
index 4fa64e6b9..934c6757d 100644
--- a/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc
+++ b/data/maps/Route124_DivingTreasureHuntersHouse/scripts.inc
@@ -9,9 +9,9 @@ Route124_DivingTreasureHuntersHouse_MapScript1_270A2E: @ 8270A2E
Route124_DivingTreasureHuntersHouse_EventScript_270A32:: @ 8270A32
lock
faceplayer
- goto_if_set FLAG_0x0D9, Route124_DivingTreasureHuntersHouse_EventScript_270A4E
+ goto_if_set FLAG_MET_DIVING_TREASURE_HUNTER, Route124_DivingTreasureHuntersHouse_EventScript_270A4E
msgbox Route124_DivingTreasureHuntersHouse_Text_270F6C, MSGBOX_DEFAULT
- setflag FLAG_0x0D9
+ setflag FLAG_MET_DIVING_TREASURE_HUNTER
goto Route124_DivingTreasureHuntersHouse_EventScript_270A5C
end
diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc
index 345faa51c..7c1e14118 100644
--- a/data/maps/RustboroCity/scripts.inc
+++ b/data/maps/RustboroCity/scripts.inc
@@ -77,7 +77,7 @@ RustboroCity_EventScript_1E07AC:: @ 81E07AC
goto RustboroCity_EventScript_1E07BD
RustboroCity_EventScript_1E07BD:: @ 81E07BD
- setflag FLAG_0x130
+ setflag FLAG_ADDED_MATCH_CALL_TO_POKENAV
special sp106_CreateStartMenu
waitstate
switch VAR_RESULT
@@ -134,7 +134,7 @@ RustboroCity_Movement_1E085D: @ 81E085D
RustboroCity_EventScript_1E085F:: @ 81E085F
lock
faceplayer
- goto_if_set FLAG_0x08E, RustboroCity_EventScript_1E0874
+ goto_if_set FLAG_DEVON_GOODS_STOLEN, RustboroCity_EventScript_1E0874
msgbox RustboroCity_Text_1E123F, MSGBOX_DEFAULT
release
end
@@ -171,7 +171,7 @@ RustboroCity_EventScript_1E08A8:: @ 81E08A8
RustboroCity_EventScript_1E08B2:: @ 81E08B2
lock
faceplayer
- goto_if_set FLAG_0x0BC, RustboroCity_EventScript_1E08C7
+ goto_if_set FLAG_RECEIVED_POKENAV, RustboroCity_EventScript_1E08C7
msgbox RustboroCity_Text_1E1520, MSGBOX_DEFAULT
release
end
@@ -301,7 +301,7 @@ RustboroCity_EventScript_1E09CD:: @ 81E09CD
removeobject 9
setobjectxyperm 9, 30, 10
clearflag FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1
- setflag FLAG_0x08E
+ setflag FLAG_DEVON_GOODS_STOLEN
setvar VAR_0x405A, 2
setvar VAR_RUSTURF_TUNNEL_STATE, 2
setvar VAR_0x406F, 1
@@ -448,7 +448,7 @@ RustboroCity_Movement_1E0AD5: @ 81E0AD5
RustboroCity_EventScript_1E0ADD:: @ 81E0ADD
lock
faceplayer
- goto_if_set FLAG_0x08F, RustboroCity_EventScript_1E0AF2
+ goto_if_set FLAG_RECOVERED_DEVON_GOODS, RustboroCity_EventScript_1E0AF2
msgbox RustboroCity_Text_1E1904, MSGBOX_DEFAULT
release
end
@@ -492,7 +492,7 @@ RustboroCity_EventScript_1E0B2E:: @ 81E0B2E
call_if_eq RustboroCity_EventScript_1E0BC7
compare VAR_TEMP_1, 3
call_if_eq RustboroCity_EventScript_1E0BF3
- setflag FLAG_0x09F
+ setflag FLAG_INTERACTED_WITH_DEVON_EMPLOYEE_GOODS_STOLEN
setvar VAR_0x405A, 3
moveobjectoffscreen 9
msgbox RustboroCity_Text_1E183E, MSGBOX_DEFAULT
@@ -594,7 +594,7 @@ RustboroCity_EventScript_1E0C5B:: @ 81E0C5B
call_if_eq RustboroCity_EventScript_1E0CD3
msgbox RustboroCity_Text_1E1A21, MSGBOX_DEFAULT
closemessage
- setflag FLAG_0x090
+ setflag FLAG_RETURNED_DEVON_GOODS
setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1
setvar VAR_0x405A, 5
delay 30
@@ -669,7 +669,7 @@ RustboroCity_EventScript_1E0D96:: @ 81E0D96
RustboroCity_EventScript_1E0DB8:: @ 81E0DB8
lockall
- call_if_unset FLAG_0x120, RustboroCity_EventScript_1E0DD1
+ call_if_unset FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_1E0DD1
applymovement 14, RustboroCity_Movement_27259E
waitmovement 0
goto RustboroCity_EventScript_1E0FF3
@@ -828,9 +828,9 @@ RustboroCity_EventScript_1E0FF3:: @ 81E0FF3
end
RustboroCity_EventScript_1E100B:: @ 81E100B
- goto_if_set FLAG_0x0D3, RustboroCity_EventScript_1E10C1
- goto_if_set FLAG_0x120, RustboroCity_EventScript_1E1070
- setflag FLAG_0x120
+ goto_if_set FLAG_DEFEATED_RIVAL_RUSTBORO, RustboroCity_EventScript_1E10C1
+ goto_if_set FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_1E1070
+ setflag FLAG_MET_RIVAL_RUSTBORO
msgbox RustboroCity_Text_1E1A49, MSGBOX_DEFAULT
closemessage
delay 30
@@ -839,7 +839,7 @@ RustboroCity_EventScript_1E100B:: @ 81E100B
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0FD
+ setflag FLAG_ENABLE_RIVAL_MATCH_CALL
setvar VAR_0x405A, 8
setvar VAR_0x4063, 2
setvar VAR_0x8008, 0
@@ -882,26 +882,26 @@ RustboroCity_EventScript_1E10D6:: @ 81E10D6
RustboroCity_EventScript_1E10DB:: @ 81E10DB
trainerbattle_no_intro TRAINER_MAY_14, RustboroCity_Text_1E1CC1
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E10C1
end
RustboroCity_EventScript_1E10EE:: @ 81E10EE
trainerbattle_no_intro TRAINER_MAY_15, RustboroCity_Text_1E1CC1
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E10C1
end
RustboroCity_EventScript_1E1101:: @ 81E1101
trainerbattle_no_intro TRAINER_MAY_10, RustboroCity_Text_1E1CC1
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E10C1
end
RustboroCity_EventScript_1E1114:: @ 81E1114
- goto_if_set FLAG_0x0D3, RustboroCity_EventScript_1E11C0
- goto_if_set FLAG_0x120, RustboroCity_EventScript_1E1174
- setflag FLAG_0x120
+ goto_if_set FLAG_DEFEATED_RIVAL_RUSTBORO, RustboroCity_EventScript_1E11C0
+ goto_if_set FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_1E1174
+ setflag FLAG_MET_RIVAL_RUSTBORO
msgbox RustboroCity_Text_1E1D7D, MSGBOX_DEFAULT
closemessage
delay 30
@@ -910,7 +910,7 @@ RustboroCity_EventScript_1E1114:: @ 81E1114
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0FD
+ setflag FLAG_ENABLE_RIVAL_MATCH_CALL
setvar VAR_0x405A, 8
setvar VAR_0x4063, 2
msgbox RustboroCity_Text_1E1E34, MSGBOX_YESNO
@@ -946,19 +946,19 @@ RustboroCity_EventScript_1E11C0:: @ 81E11C0
RustboroCity_EventScript_1E11D5:: @ 81E11D5
trainerbattle_no_intro TRAINER_BRENDAN_10, RustboroCity_Text_1E1FE9
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E11C0
end
RustboroCity_EventScript_1E11E8:: @ 81E11E8
trainerbattle_no_intro TRAINER_BRENDAN_12, RustboroCity_Text_1E1FE9
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E11C0
end
RustboroCity_EventScript_1E11FB:: @ 81E11FB
trainerbattle_no_intro TRAINER_BRENDAN_11, RustboroCity_Text_1E1FE9
- setflag FLAG_0x0D3
+ setflag FLAG_DEFEATED_RIVAL_RUSTBORO
goto RustboroCity_EventScript_1E11C0
end
@@ -1298,4 +1298,3 @@ RustboroCity_Text_1E249D: @ 81E249D
.string "they'll both challenge you.\p"
.string "Don't you think it'd be cool if you\n"
.string "could beat two TRAINERS by yourself?$"
-
diff --git a/data/maps/RustboroCity_CuttersHouse/scripts.inc b/data/maps/RustboroCity_CuttersHouse/scripts.inc
index b73744094..ab74d5340 100644
--- a/data/maps/RustboroCity_CuttersHouse/scripts.inc
+++ b/data/maps/RustboroCity_CuttersHouse/scripts.inc
@@ -4,10 +4,10 @@ RustboroCity_CuttersHouse_MapScripts:: @ 8215BD3
RustboroCity_CuttersHouse_EventScript_215BD4:: @ 8215BD4
lock
faceplayer
- goto_if_set FLAG_0x089, RustboroCity_CuttersHouse_EventScript_215C00
+ goto_if_set FLAG_RECEIVED_HM01, RustboroCity_CuttersHouse_EventScript_215C00
msgbox RustboroCity_CuttersHouse_Text_215C13, MSGBOX_DEFAULT
giveitem_std ITEM_HM01
- setflag FLAG_0x089
+ setflag FLAG_RECEIVED_HM01
msgbox RustboroCity_CuttersHouse_Text_215D33, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
index bbfd1bd53..157947c2d 100644
--- a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
@@ -3,7 +3,7 @@ RustboroCity_DevonCorp_1F_MapScripts:: @ 8211245
.byte 0
RustboroCity_DevonCorp_1F_MapScript1_21124B: @ 821124B
- call_if_unset FLAG_0x090, RustboroCity_DevonCorp_1F_EventScript_211255
+ call_if_unset FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_211255
end
RustboroCity_DevonCorp_1F_EventScript_211255:: @ 8211255
@@ -14,8 +14,8 @@ RustboroCity_DevonCorp_1F_EventScript_211255:: @ 8211255
RustboroCity_DevonCorp_1F_EventScript_211261:: @ 8211261
lock
faceplayer
- goto_if_set FLAG_0x090, RustboroCity_DevonCorp_1F_EventScript_211289
- goto_if_set FLAG_0x08E, RustboroCity_DevonCorp_1F_EventScript_21127F
+ goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_211289
+ goto_if_set FLAG_DEVON_GOODS_STOLEN, RustboroCity_DevonCorp_1F_EventScript_21127F
msgbox RustboroCity_DevonCorp_1F_Text_2113D1, MSGBOX_DEFAULT
release
end
@@ -33,9 +33,9 @@ RustboroCity_DevonCorp_1F_EventScript_211289:: @ 8211289
RustboroCity_DevonCorp_1F_EventScript_211293:: @ 8211293
lock
faceplayer
- goto_if_set FLAG_0x090, RustboroCity_DevonCorp_1F_EventScript_2112BA
- goto_if_set FLAG_0x08F, RustboroCity_DevonCorp_1F_EventScript_2112C4
- goto_if_set FLAG_0x08E, RustboroCity_DevonCorp_1F_EventScript_2112C4
+ goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_2112BA
+ goto_if_set FLAG_RECOVERED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_2112C4
+ goto_if_set FLAG_DEVON_GOODS_STOLEN, RustboroCity_DevonCorp_1F_EventScript_2112C4
msgbox RustboroCity_DevonCorp_1F_Text_21151B, MSGBOX_DEFAULT
release
end
@@ -53,9 +53,9 @@ RustboroCity_DevonCorp_1F_EventScript_2112C4:: @ 82112C4
RustboroCity_DevonCorp_1F_EventScript_2112CE:: @ 82112CE
lock
faceplayer
- goto_if_set FLAG_0x090, RustboroCity_DevonCorp_1F_EventScript_2112F5
- goto_if_set FLAG_0x08F, RustboroCity_DevonCorp_1F_EventScript_2112FF
- goto_if_set FLAG_0x08E, RustboroCity_DevonCorp_1F_EventScript_2112FF
+ goto_if_set FLAG_RETURNED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_2112F5
+ goto_if_set FLAG_RECOVERED_DEVON_GOODS, RustboroCity_DevonCorp_1F_EventScript_2112FF
+ goto_if_set FLAG_DEVON_GOODS_STOLEN, RustboroCity_DevonCorp_1F_EventScript_2112FF
msgbox RustboroCity_DevonCorp_1F_Text_21131B, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
index 8ce86352d..cce9ae394 100644
--- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
@@ -25,7 +25,7 @@ RustboroCity_DevonCorp_2F_EventScript_211886:: @ 8211886
faceplayer
compare VAR_0x40C4, 1
call_if_eq RustboroCity_DevonCorp_2F_EventScript_211869
- goto_if_set FLAG_0x11F, RustboroCity_DevonCorp_2F_EventScript_2118A6
+ goto_if_set FLAG_MET_DEVON_EMPLOYEE, RustboroCity_DevonCorp_2F_EventScript_2118A6
msgbox RustboroCity_DevonCorp_2F_Text_211C50, MSGBOX_DEFAULT
release
end
@@ -40,7 +40,7 @@ RustboroCity_DevonCorp_2F_EventScript_2118B0:: @ 82118B0
faceplayer
compare VAR_0x40C4, 1
call_if_eq RustboroCity_DevonCorp_2F_EventScript_211869
- goto_if_set FLAG_0x0BC, RustboroCity_DevonCorp_2F_EventScript_2118D0
+ goto_if_set FLAG_RECEIVED_POKENAV, RustboroCity_DevonCorp_2F_EventScript_2118D0
msgbox RustboroCity_DevonCorp_2F_Text_211D9F, MSGBOX_DEFAULT
release
end
@@ -200,7 +200,7 @@ RustboroCity_DevonCorp_2F_EventScript_211AC4:: @ 8211AC4
RustboroCity_DevonCorp_2F_EventScript_211AD7:: @ 8211AD7
setvar VAR_0x40C4, 0
- setflag FLAG_0x10B
+ setflag FLAG_RECEIVED_REVIVED_FOSSIL_MON
release
end
@@ -249,7 +249,7 @@ RustboroCity_DevonCorp_2F_EventScript_211B67:: @ 8211B67
RustboroCity_DevonCorp_2F_EventScript_211B7A:: @ 8211B7A
setvar VAR_0x40C4, 0
- setflag FLAG_0x10B
+ setflag FLAG_RECEIVED_REVIVED_FOSSIL_MON
release
end
diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
index 0e21b4c38..da78ccb4b 100644
--- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
@@ -54,7 +54,7 @@ RustboroCity_DevonCorp_3F_EventScript_21246E:: @ 821246E
message RustboroCity_DevonCorp_3F_Text_212820
waitfanfare
setflag FLAG_SYS_POKENAV_GET
- setflag FLAG_0x0BC
+ setflag FLAG_RECEIVED_POKENAV
setflag FLAG_HIDE_RUSTBORO_CITY_POKEMON_SCHOOL_SCOTT
msgbox RustboroCity_DevonCorp_3F_Text_212837, MSGBOX_DEFAULT
closemessage
@@ -150,8 +150,8 @@ RustboroCity_DevonCorp_3F_Movement_212566: @ 8212566
RustboroCity_DevonCorp_3F_EventScript_21256C:: @ 821256C
lock
faceplayer
- goto_if_set FLAG_0x110, RustboroCity_DevonCorp_3F_EventScript_2125CC
- goto_if_set FLAG_0x0BD, RustboroCity_DevonCorp_3F_EventScript_212595
+ goto_if_set FLAG_RECEIVED_EXP_SHARE, RustboroCity_DevonCorp_3F_EventScript_2125CC
+ goto_if_set FLAG_DELIVERED_STEVEN_LETTER, RustboroCity_DevonCorp_3F_EventScript_212595
msgbox RustboroCity_DevonCorp_3F_Text_212A09, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, RustboroCity_DevonCorp_3F_Movement_2725A2
@@ -164,7 +164,7 @@ RustboroCity_DevonCorp_3F_EventScript_212595:: @ 8212595
giveitem_std ITEM_EXP_SHARE
compare VAR_RESULT, 0
goto_if_eq RustboroCity_DevonCorp_3F_EventScript_272054
- setflag FLAG_0x110
+ setflag FLAG_RECEIVED_EXP_SHARE
msgbox RustboroCity_DevonCorp_3F_Text_212A9E, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, RustboroCity_DevonCorp_3F_Movement_2725A2
@@ -183,7 +183,7 @@ RustboroCity_DevonCorp_3F_EventScript_2125CC:: @ 82125CC
RustboroCity_DevonCorp_3F_EventScript_2125E1:: @ 82125E1
lock
faceplayer
- goto_if_set FLAG_0x100, RustboroCity_DevonCorp_3F_EventScript_2125F6
+ goto_if_set FLAG_RECEIVED_REPEAT_BALL, RustboroCity_DevonCorp_3F_EventScript_2125F6
msgbox RustboroCity_DevonCorp_3F_Text_212E41, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/RustboroCity_Flat2_2F/scripts.inc b/data/maps/RustboroCity_Flat2_2F/scripts.inc
index e08d599ac..639e93884 100644
--- a/data/maps/RustboroCity_Flat2_2F/scripts.inc
+++ b/data/maps/RustboroCity_Flat2_2F/scripts.inc
@@ -8,12 +8,12 @@ RustboroCity_Flat2_2F_EventScript_215FD8:: @ 8215FD8
RustboroCity_Flat2_2F_EventScript_215FE1:: @ 8215FE1
lock
faceplayer
- goto_if_set FLAG_0x0D5, RustboroCity_Flat2_2F_EventScript_216010
+ goto_if_set FLAG_RECEIVED_PREMIER_BALL_RUSTBORO, RustboroCity_Flat2_2F_EventScript_216010
msgbox RustboroCity_Flat2_2F_Text_21605A, MSGBOX_DEFAULT
giveitem_std ITEM_PREMIER_BALL
compare VAR_RESULT, 0
goto_if_eq RustboroCity_Flat2_2F_EventScript_272054
- setflag FLAG_0x0D5
+ setflag FLAG_RECEIVED_PREMIER_BALL_RUSTBORO
release
end
diff --git a/data/maps/RustboroCity_Gym/scripts.inc b/data/maps/RustboroCity_Gym/scripts.inc
index 170ae4324..4581707ce 100644
--- a/data/maps/RustboroCity_Gym/scripts.inc
+++ b/data/maps/RustboroCity_Gym/scripts.inc
@@ -6,7 +6,7 @@ RustboroCity_Gym_EventScript_212F31:: @ 8212F31
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq RustboroCity_Gym_EventScript_212FC8
- goto_if_unset FLAG_0x0A5, RustboroCity_Gym_EventScript_212FA4
+ goto_if_unset FLAG_RECEIVED_TM39, RustboroCity_Gym_EventScript_212FA4
msgbox RustboroCity_Gym_Text_2139A7, MSGBOX_DEFAULT
release
end
@@ -16,7 +16,7 @@ RustboroCity_Gym_EventScript_212F66:: @ 8212F66
waitmessage
call RustboroCity_Gym_EventScript_27207E
msgbox RustboroCity_Gym_Text_213816, MSGBOX_DEFAULT
- setflag FLAG_0x4F0
+ setflag FLAG_DEFEATED_RUSTBORO_GYM
setflag FLAG_BADGE01_GET
setvar VAR_0x405A, 1
addvar VAR_0x4085, 1
@@ -31,7 +31,7 @@ RustboroCity_Gym_EventScript_212FA4:: @ 8212FA4
giveitem_std ITEM_TM39
compare VAR_RESULT, 0
goto_if_eq RustboroCity_Gym_EventScript_272054
- setflag FLAG_0x0A5
+ setflag FLAG_RECEIVED_TM39
msgbox RustboroCity_Gym_Text_2138B1, MSGBOX_DEFAULT
release
end
@@ -59,7 +59,7 @@ RustboroCity_Gym_EventScript_213011:: @ 8213011
RustboroCity_Gym_EventScript_213028:: @ 8213028
lock
faceplayer
- goto_if_set FLAG_0x4F0, RustboroCity_Gym_EventScript_21303D
+ goto_if_set FLAG_DEFEATED_RUSTBORO_GYM, RustboroCity_Gym_EventScript_21303D
msgbox RustboroCity_Gym_Text_21309D, MSGBOX_DEFAULT
release
end
@@ -101,8 +101,8 @@ RustboroCity_Gym_EventScript_21307B:: @ 821307B
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D3
- clearflag FLAG_0x080
+ setflag FLAG_ENABLE_ROXANNE_MATCH_CALL
+ clearflag FLAG_ENABLE_ROXANNE_FIRST_CALL
releaseall
end
diff --git a/data/maps/RustboroCity_House1/scripts.inc b/data/maps/RustboroCity_House1/scripts.inc
index effe69665..eb5655b1a 100644
--- a/data/maps/RustboroCity_House1/scripts.inc
+++ b/data/maps/RustboroCity_House1/scripts.inc
@@ -4,7 +4,7 @@ RustboroCity_House1_MapScripts:: @ 821593E
RustboroCity_House1_EventScript_21593F:: @ 821593F
lock
faceplayer
- goto_if_set FLAG_0x099, RustboroCity_House1_EventScript_2159D5
+ goto_if_set FLAG_RUSTBORO_NPC_TRADE_COMPLETED, RustboroCity_House1_EventScript_2159D5
setvar VAR_0x8008, 0
copyvar VAR_0x8004, VAR_0x8008
specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
@@ -28,7 +28,7 @@ RustboroCity_House1_EventScript_21593F:: @ 821593F
special DoInGameTradeScene
waitstate
msgbox RustboroCity_House1_Text_215A77, MSGBOX_DEFAULT
- setflag FLAG_0x099
+ setflag FLAG_RUSTBORO_NPC_TRADE_COMPLETED
release
end
diff --git a/data/maps/RustboroCity_Mart/scripts.inc b/data/maps/RustboroCity_Mart/scripts.inc
index 78492e962..a5693847c 100644
--- a/data/maps/RustboroCity_Mart/scripts.inc
+++ b/data/maps/RustboroCity_Mart/scripts.inc
@@ -6,8 +6,8 @@ RustboroCity_Mart_EventScript_214F06:: @ 8214F06
faceplayer
message gUnknown_08272A21
waitmessage
- goto_if_unset FLAG_0x11F, RustboroCity_Mart_EventScript_214F21
- goto_if_set FLAG_0x11F, RustboroCity_Mart_EventScript_214F48
+ goto_if_unset FLAG_MET_DEVON_EMPLOYEE, RustboroCity_Mart_EventScript_214F21
+ goto_if_set FLAG_MET_DEVON_EMPLOYEE, RustboroCity_Mart_EventScript_214F48
end
RustboroCity_Mart_EventScript_214F21:: @ 8214F21
diff --git a/data/maps/RustboroCity_PokemonSchool/scripts.inc b/data/maps/RustboroCity_PokemonSchool/scripts.inc
index 2bba066b2..c01e4a436 100644
--- a/data/maps/RustboroCity_PokemonSchool/scripts.inc
+++ b/data/maps/RustboroCity_PokemonSchool/scripts.inc
@@ -77,7 +77,7 @@ RustboroCity_PokemonSchool_EventScript_213F8C:: @ 8213F8C
RustboroCity_PokemonSchool_EventScript_213F95:: @ 8213F95
lock
faceplayer
- goto_if_set FLAG_0x113, RustboroCity_PokemonSchool_EventScript_213FFB
+ goto_if_set FLAG_RECEIVED_QUICK_CLAW, RustboroCity_PokemonSchool_EventScript_213FFB
compare VAR_FACING, 4
call_if_eq RustboroCity_PokemonSchool_EventScript_213FE5
compare VAR_FACING, 3
@@ -89,7 +89,7 @@ RustboroCity_PokemonSchool_EventScript_213F95:: @ 8213F95
closemessage
applymovement VAR_LAST_TALKED, RustboroCity_PokemonSchool_Movement_2725AA
waitmovement 0
- setflag FLAG_0x113
+ setflag FLAG_RECEIVED_QUICK_CLAW
release
end
@@ -166,12 +166,12 @@ RustboroCity_PokemonSchool_Movement_214027: @ 8214027
RustboroCity_PokemonSchool_EventScript_214040:: @ 8214040
lock
faceplayer
- goto_if_set FLAG_0x1CB, RustboroCity_PokemonSchool_EventScript_2140A8
- goto_if_set FLAG_0x136, RustboroCity_PokemonSchool_EventScript_21406F
+ goto_if_set FLAG_MET_SCOTT_AFTER_OBTAINING_STONE_BADGE, RustboroCity_PokemonSchool_EventScript_2140A8
+ goto_if_set FLAG_MET_SCOTT_RUSTBORO, RustboroCity_PokemonSchool_EventScript_21406F
goto_if_set FLAG_BADGE01_GET, RustboroCity_PokemonSchool_EventScript_214082
msgbox RustboroCity_PokemonSchool_Text_2148C0, MSGBOX_DEFAULT
addvar VAR_0x40D1, 1
- setflag FLAG_0x136
+ setflag FLAG_MET_SCOTT_RUSTBORO
release
end
@@ -193,7 +193,7 @@ RustboroCity_PokemonSchool_EventScript_214090:: @ 8214090
RustboroCity_PokemonSchool_EventScript_21409E:: @ 821409E
addvar VAR_0x40D1, 1
- setflag FLAG_0x1CB
+ setflag FLAG_MET_SCOTT_AFTER_OBTAINING_STONE_BADGE
release
end
diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc
index 8985f5b43..59d0789ba 100644
--- a/data/maps/RusturfTunnel/scripts.inc
+++ b/data/maps/RusturfTunnel/scripts.inc
@@ -63,7 +63,7 @@ RusturfTunnel_EventScript_22CEAE:: @ 822CEAE
compare VAR_TEMP_1, 3
call_if_eq RusturfTunnel_EventScript_22CFC8
giveitem_std ITEM_HM04
- setflag FLAG_0x06A
+ setflag FLAG_RECEIVED_HM04
msgbox RusturfTunnel_Text_22D6D2, MSGBOX_DEFAULT
closemessage
compare VAR_TEMP_1, 1
@@ -343,8 +343,8 @@ RusturfTunnel_EventScript_22D0C2:: @ 822D0C2
waitmovement 0
removeobject 5
removeobject 7
- clearflag FLAG_0x08E
- setflag FLAG_0x08F
+ clearflag FLAG_DEVON_GOODS_STOLEN
+ setflag FLAG_RECOVERED_DEVON_GOODS
setvar VAR_0x405A, 4
setvar VAR_0x4090, 1
setflag FLAG_HIDE_ROUTE_116_MR_BRINEY
diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc
index 86d85fccc..204d70e14 100644
--- a/data/maps/SSTidalCorridor/scripts.inc
+++ b/data/maps/SSTidalCorridor/scripts.inc
@@ -125,7 +125,7 @@ SSTidalCorridor_EventScript_23C119:: @ 823C119
SSTidalCorridor_EventScript_23C13B:: @ 823C13B
setrespawn HEAL_LOCATION_LILYCOVE_CITY
msgbox SSTidalCorridor_Text_23C64F, MSGBOX_DEFAULT
- call_if_set FLAG_0x104, SSTidalCorridor_EventScript_23C179
+ call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_23C179
warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11
waitstate
release
@@ -134,7 +134,7 @@ SSTidalCorridor_EventScript_23C13B:: @ 823C13B
SSTidalCorridor_EventScript_23C15A:: @ 823C15A
setrespawn HEAL_LOCATION_SLATEPORT_CITY
msgbox SSTidalCorridor_Text_23C64F, MSGBOX_DEFAULT
- call_if_set FLAG_0x104, SSTidalCorridor_EventScript_23C179
+ call_if_set FLAG_RECEIVED_TM49, SSTidalCorridor_EventScript_23C179
warp MAP_SLATEPORT_CITY_HARBOR, 255, 8, 11
waitstate
release
@@ -162,7 +162,7 @@ SSTidalCorridor_EventScript_23C19E:: @ 823C19E
SSTidalCorridor_EventScript_23C1A3:: @ 823C1A3
lock
faceplayer
- goto_if_set FLAG_0x0F7, SSTidalCorridor_EventScript_23C1BD
+ goto_if_set FLAG_DEFEATED_SS_TIDAL_TRAINERS, SSTidalCorridor_EventScript_23C1BD
call SSTidalCorridor_EventScript_23C1C7
msgbox SSTidalCorridor_Text_23C65E, MSGBOX_DEFAULT
release
@@ -190,7 +190,7 @@ SSTidalCorridor_EventScript_23C1C7:: @ 823C1C7
goto_if_lt SSTidalCorridor_EventScript_23C218
checktrainerflag TRAINER_NAOMI
goto_if_lt SSTidalCorridor_EventScript_23C218
- setflag FLAG_0x0F7
+ setflag FLAG_DEFEATED_SS_TIDAL_TRAINERS
goto SSTidalCorridor_EventScript_23C1BD
return
@@ -215,7 +215,7 @@ SSTidalCorridor_EventScript_23C219:: @ 823C219
applymovement 1, SSTidalCorridor_Movement_23C28B
waitmovement 0
delay 30
- setflag FLAG_0x1D0
+ setflag FLAG_MET_SCOTT_ON_SS_TIDAL
setvar VAR_0x40D4, 1
releaseall
end
diff --git a/data/maps/SSTidalRooms/scripts.inc b/data/maps/SSTidalRooms/scripts.inc
index d4c088536..a021f5272 100644
--- a/data/maps/SSTidalRooms/scripts.inc
+++ b/data/maps/SSTidalRooms/scripts.inc
@@ -4,12 +4,12 @@ SSTidalRooms_MapScripts:: @ 823C9F1
SSTidalRooms_EventScript_23C9F2:: @ 823C9F2
lock
faceplayer
- goto_if_set FLAG_0x104, SSTidalRooms_EventScript_23CA29
+ goto_if_set FLAG_RECEIVED_TM49, SSTidalRooms_EventScript_23CA29
msgbox SSTidalRooms_Text_23D098, MSGBOX_DEFAULT
giveitem_std ITEM_TM49
compare VAR_RESULT, 0
goto_if_eq SSTidalRooms_EventScript_272054
- setflag FLAG_0x104
+ setflag FLAG_RECEIVED_TM49
msgbox SSTidalRooms_Text_23D145, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc
index 06b050f67..ab6f70f86 100644
--- a/data/maps/SafariZone_South/scripts.inc
+++ b/data/maps/SafariZone_South/scripts.inc
@@ -51,7 +51,7 @@ SafariZone_South_EventScript_23D2DC:: @ 823D2DC
SafariZone_South_EventScript_23D2E5:: @ 823D2E5
lock
faceplayer
- goto_if_unset FLAG_0x05D, SafariZone_South_EventScript_23D30D
+ goto_if_unset FLAG_GOOD_LUCK_SAFARI_ZONE, SafariZone_South_EventScript_23D30D
msgbox SafariZone_South_Text_2A51D4, MSGBOX_YESNO
compare VAR_RESULT, 1
goto_if_eq SafariZone_South_EventScript_23D31A
@@ -60,7 +60,7 @@ SafariZone_South_EventScript_23D2E5:: @ 823D2E5
end
SafariZone_South_EventScript_23D30D:: @ 823D30D
- setflag FLAG_0x05D
+ setflag FLAG_GOOD_LUCK_SAFARI_ZONE
msgbox SafariZone_South_Text_2A52AB, MSGBOX_DEFAULT
release
end
@@ -150,4 +150,3 @@ SafariZone_Northeast_EventScript_23D3CF:: @ 823D3CF
SafariZone_Northeast_EventScript_23D3D8:: @ 823D3D8
msgbox SafariZone_Northeast_Text_2A5A44, MSGBOX_NPC
end
-
diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc
index 212496eef..6ab802ee4 100644
--- a/data/maps/SeafloorCavern_Room9/scripts.inc
+++ b/data/maps/SeafloorCavern_Room9/scripts.inc
@@ -131,7 +131,7 @@ SeafloorCavern_Room9_EventScript_234DC9:: @ 8234DC9
clearflag FLAG_HIDE_ROUTE_128_ARCHIE
clearflag FLAG_HIDE_ROUTE_128_MAXIE
setflag FLAG_SYS_WEATHER_CTRL
- setflag FLAG_0x081
+ setflag FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN
setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN
setvar VAR_0x40C6, 2
setvar VAR_0x40A2, 1
@@ -320,4 +320,3 @@ SeafloorCavern_Room9_Text_235692: @ 8235692
SeafloorCavern_Room9_Text_235723: @ 8235723
.string "MAXIE: {PLAYER}, come on, you have\n"
.string "to get out of here, too!$"
-
diff --git a/data/maps/SealedChamber_InnerRoom/scripts.inc b/data/maps/SealedChamber_InnerRoom/scripts.inc
index 36836fb49..5c4cb2199 100644
--- a/data/maps/SealedChamber_InnerRoom/scripts.inc
+++ b/data/maps/SealedChamber_InnerRoom/scripts.inc
@@ -6,7 +6,7 @@ SealedChamber_InnerRoom_EventScript_2391F8:: @ 82391F8
braillemessage SealedChamber_InnerRoom_Braille_2A6B99
waitbuttonpress
hidebox2
- goto_if_set FLAG_0x0E4, SealedChamber_InnerRoom_EventScript_239253
+ goto_if_set FLAG_REGI_DOORS_OPENED, SealedChamber_InnerRoom_EventScript_239253
specialvar VAR_RESULT, CheckRelicanthWailord
compare VAR_RESULT, 0
goto_if_eq SealedChamber_InnerRoom_EventScript_239253
@@ -30,7 +30,7 @@ SealedChamber_InnerRoom_EventScript_2391F8:: @ 82391F8
msgbox gUnknown_0827301B, MSGBOX_DEFAULT
closemessage
fadeinbgm 0
- setflag FLAG_0x0E4
+ setflag FLAG_REGI_DOORS_OPENED
releaseall
end
diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc
index 5f95bf8ed..c596ba687 100644
--- a/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc
+++ b/data/maps/ShoalCave_LowTideEntranceRoom/scripts.inc
@@ -88,14 +88,13 @@ ShoalCave_LowTideEntranceRoom_EventScript_236ECF:: @ 8236ECF
end
ShoalCave_LowTideEntranceRoom_EventScript_236ED9:: @ 8236ED9
- clearflag FLAG_0x3B8
- clearflag FLAG_0x3B9
- clearflag FLAG_0x3BA
- clearflag FLAG_0x3BB
- clearflag FLAG_0x3BC
- clearflag FLAG_0x3BD
- clearflag FLAG_0x3BE
- clearflag FLAG_0x3BF
+ clearflag FLAG_RECEIVED_SHOAL_SALT_1
+ clearflag FLAG_RECEIVED_SHOAL_SALT_2
+ clearflag FLAG_RECEIVED_SHOAL_SALT_3
+ clearflag FLAG_RECEIVED_SHOAL_SALT_4
+ clearflag FLAG_RECEIVED_SHOAL_SHELL_1
+ clearflag FLAG_RECEIVED_SHOAL_SHELL_2
+ clearflag FLAG_RECEIVED_SHOAL_SHELL_3
+ clearflag FLAG_RECEIVED_SHOAL_SHELL_4
clearflag FLAG_SYS_SHOAL_ITEM
return
-
diff --git a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc
index 226f89708..65bdd73b8 100644
--- a/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc
+++ b/data/maps/ShoalCave_LowTideInnerRoom/scripts.inc
@@ -20,39 +20,39 @@ ShoalCave_LowTideInnerRoom_MapScript1_236F16: @ 8236F16
end
ShoalCave_LowTideInnerRoom_EventScript_236F1C:: @ 8236F1C
- goto_if_set FLAG_0x3B8, ShoalCave_LowTideInnerRoom_EventScript_236F3D
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_236F3D
goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_236F3D
setmetatile 31, 8, 856, 1
goto ShoalCave_LowTideInnerRoom_EventScript_236F3D
end
ShoalCave_LowTideInnerRoom_EventScript_236F3D:: @ 8236F3D
- goto_if_set FLAG_0x3B9, ShoalCave_LowTideInnerRoom_EventScript_236F5E
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_236F5E
goto_if_set FLAG_SYS_SHOAL_TIDE, ShoalCave_LowTideInnerRoom_EventScript_236F5E
setmetatile 14, 26, 856, 1
goto ShoalCave_LowTideInnerRoom_EventScript_236F5E
end
ShoalCave_LowTideInnerRoom_EventScript_236F5E:: @ 8236F5E
- goto_if_set FLAG_0x3BC, ShoalCave_LowTideInnerRoom_EventScript_236F76
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_236F76
setmetatile 41, 20, 857, 1
goto ShoalCave_LowTideInnerRoom_EventScript_236F76
end
ShoalCave_LowTideInnerRoom_EventScript_236F76:: @ 8236F76
- goto_if_set FLAG_0x3BD, ShoalCave_LowTideInnerRoom_EventScript_236F8E
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_236F8E
setmetatile 41, 10, 857, 1
goto ShoalCave_LowTideInnerRoom_EventScript_236F8E
end
ShoalCave_LowTideInnerRoom_EventScript_236F8E:: @ 8236F8E
- goto_if_set FLAG_0x3BE, ShoalCave_LowTideInnerRoom_EventScript_236FA6
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_236FA6
setmetatile 6, 9, 857, 1
goto ShoalCave_LowTideInnerRoom_EventScript_236FA6
end
ShoalCave_LowTideInnerRoom_EventScript_236FA6:: @ 8236FA6
- goto_if_set FLAG_0x3BF, ShoalCave_LowTideInnerRoom_EventScript_236FB9
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_236FB9
setmetatile 16, 13, 857, 1
return
@@ -61,13 +61,13 @@ ShoalCave_LowTideInnerRoom_EventScript_236FB9:: @ 8236FB9
ShoalCave_LowTideInnerRoom_EventScript_236FBA:: @ 8236FBA
lockall
- goto_if_set FLAG_0x3BC, ShoalCave_LowTideInnerRoom_EventScript_236FEC
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_1, ShoalCave_LowTideInnerRoom_EventScript_236FEC
giveitem_std ITEM_SHOAL_SHELL
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 41, 20, 859, 0
special DrawWholeMapView
- setflag FLAG_0x3BC
+ setflag FLAG_RECEIVED_SHOAL_SHELL_1
releaseall
end
@@ -78,49 +78,49 @@ ShoalCave_LowTideInnerRoom_EventScript_236FEC:: @ 8236FEC
ShoalCave_LowTideInnerRoom_EventScript_236FF6:: @ 8236FF6
lockall
- goto_if_set FLAG_0x3BD, ShoalCave_LowTideInnerRoom_EventScript_236FEC
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_2, ShoalCave_LowTideInnerRoom_EventScript_236FEC
giveitem_std ITEM_SHOAL_SHELL
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 41, 10, 859, 0
special DrawWholeMapView
- setflag FLAG_0x3BD
+ setflag FLAG_RECEIVED_SHOAL_SHELL_2
releaseall
end
ShoalCave_LowTideInnerRoom_EventScript_237028:: @ 8237028
lockall
- goto_if_set FLAG_0x3BE, ShoalCave_LowTideInnerRoom_EventScript_236FEC
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_3, ShoalCave_LowTideInnerRoom_EventScript_236FEC
giveitem_std ITEM_SHOAL_SHELL
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 6, 9, 859, 0
special DrawWholeMapView
- setflag FLAG_0x3BE
+ setflag FLAG_RECEIVED_SHOAL_SHELL_3
releaseall
end
ShoalCave_LowTideInnerRoom_EventScript_23705A:: @ 823705A
lockall
- goto_if_set FLAG_0x3BF, ShoalCave_LowTideInnerRoom_EventScript_236FEC
+ goto_if_set FLAG_RECEIVED_SHOAL_SHELL_4, ShoalCave_LowTideInnerRoom_EventScript_236FEC
giveitem_std ITEM_SHOAL_SHELL
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 16, 13, 859, 0
special DrawWholeMapView
- setflag FLAG_0x3BF
+ setflag FLAG_RECEIVED_SHOAL_SHELL_4
releaseall
end
ShoalCave_LowTideInnerRoom_EventScript_23708C:: @ 823708C
lockall
- goto_if_set FLAG_0x3B8, ShoalCave_LowTideInnerRoom_EventScript_2370BE
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_1, ShoalCave_LowTideInnerRoom_EventScript_2370BE
giveitem_std ITEM_SHOAL_SALT
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 31, 8, 858, 0
special DrawWholeMapView
- setflag FLAG_0x3B8
+ setflag FLAG_RECEIVED_SHOAL_SALT_1
releaseall
end
@@ -131,13 +131,12 @@ ShoalCave_LowTideInnerRoom_EventScript_2370BE:: @ 82370BE
ShoalCave_LowTideInnerRoom_EventScript_2370C8:: @ 82370C8
lockall
- goto_if_set FLAG_0x3B9, ShoalCave_LowTideInnerRoom_EventScript_2370BE
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_2, ShoalCave_LowTideInnerRoom_EventScript_2370BE
giveitem_std ITEM_SHOAL_SALT
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_272054
setmetatile 14, 26, 858, 0
special DrawWholeMapView
- setflag FLAG_0x3B9
+ setflag FLAG_RECEIVED_SHOAL_SALT_2
releaseall
end
-
diff --git a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc
index 1e2e756d7..60a6039be 100644
--- a/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc
+++ b/data/maps/ShoalCave_LowTideLowerRoom/scripts.inc
@@ -7,7 +7,7 @@ ShoalCave_LowTideLowerRoom_MapScript1_23715C: @ 823715C
end
ShoalCave_LowTideLowerRoom_EventScript_237162:: @ 8237162
- goto_if_set FLAG_0x3BB, ShoalCave_LowTideLowerRoom_EventScript_237175
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_237175
setmetatile 18, 2, 856, 1
return
@@ -16,13 +16,13 @@ ShoalCave_LowTideLowerRoom_EventScript_237175:: @ 8237175
ShoalCave_LowTideLowerRoom_EventScript_237176:: @ 8237176
lockall
- goto_if_set FLAG_0x3BB, ShoalCave_LowTideLowerRoom_EventScript_2371A8
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_4, ShoalCave_LowTideLowerRoom_EventScript_2371A8
giveitem_std ITEM_SHOAL_SALT
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_272054
setmetatile 18, 2, 858, 0
special DrawWholeMapView
- setflag FLAG_0x3BB
+ setflag FLAG_RECEIVED_SHOAL_SALT_4
releaseall
end
@@ -34,12 +34,12 @@ ShoalCave_LowTideLowerRoom_EventScript_2371A8:: @ 82371A8
ShoalCave_LowTideLowerRoom_EventScript_2371B2:: @ 82371B2
lock
faceplayer
- goto_if_set FLAG_0x11B, ShoalCave_LowTideLowerRoom_EventScript_2371E1
+ goto_if_set FLAG_RECEIVED_FOCUS_BAND, ShoalCave_LowTideLowerRoom_EventScript_2371E1
msgbox ShoalCave_LowTideLowerRoom_Text_2371EB, MSGBOX_DEFAULT
giveitem_std ITEM_FOCUS_BAND
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_272054
- setflag FLAG_0x11B
+ setflag FLAG_RECEIVED_FOCUS_BAND
release
end
diff --git a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc
index 4486c7c61..40275d809 100644
--- a/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc
+++ b/data/maps/ShoalCave_LowTideStairsRoom/scripts.inc
@@ -7,7 +7,7 @@ ShoalCave_LowTideStairsRoom_MapScript1_237100: @ 8237100
end
ShoalCave_LowTideStairsRoom_EventScript_237106:: @ 8237106
- goto_if_set FLAG_0x3BA, ShoalCave_LowTideStairsRoom_EventScript_237119
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_237119
setmetatile 11, 11, 856, 1
return
@@ -16,13 +16,13 @@ ShoalCave_LowTideStairsRoom_EventScript_237119:: @ 8237119
ShoalCave_LowTideStairsRoom_EventScript_23711A:: @ 823711A
lockall
- goto_if_set FLAG_0x3BA, ShoalCave_LowTideStairsRoom_EventScript_23714C
+ goto_if_set FLAG_RECEIVED_SHOAL_SALT_3, ShoalCave_LowTideStairsRoom_EventScript_23714C
giveitem_std ITEM_SHOAL_SALT
compare VAR_RESULT, 0
goto_if_eq ShoalCave_LowTideStairsRoom_EventScript_272054
setmetatile 11, 11, 858, 0
special DrawWholeMapView
- setflag FLAG_0x3BA
+ setflag FLAG_RECEIVED_SHOAL_SALT_3
releaseall
end
diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc
index 4e7701de6..eb57d1227 100644
--- a/data/maps/SkyPillar_Outside/scripts.inc
+++ b/data/maps/SkyPillar_Outside/scripts.inc
@@ -20,7 +20,7 @@ SkyPillar_Outside_EventScript_2392D3:: @ 82392D3
return
SkyPillar_Outside_MapScript1_2392DD: @ 82392DD
- call_if_set FLAG_0x137, SkyPillar_Outside_EventScript_2392E7
+ call_if_set FLAG_WALLACE_GOES_TO_SKY_PILLAR, SkyPillar_Outside_EventScript_2392E7
end
SkyPillar_Outside_EventScript_2392E7:: @ 82392E7
diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc
index 1ac3cf486..c0bc2e4c1 100644
--- a/data/maps/SkyPillar_Top/scripts.inc
+++ b/data/maps/SkyPillar_Top/scripts.inc
@@ -28,7 +28,7 @@ SkyPillar_Top_EventScript_2396FD:: @ 82396FD
return
SkyPillar_Top_EventScript_239705:: @ 8239705
- call_if_unset FLAG_0x1C0, SkyPillar_Top_EventScript_23970F
+ call_if_unset FLAG_DEFEATED_RAYQUAZA, SkyPillar_Top_EventScript_23970F
return
SkyPillar_Top_EventScript_23970F:: @ 823970F
@@ -61,12 +61,12 @@ SkyPillar_Top_EventScript_239722:: @ 8239722
goto_if_eq SkyPillar_Top_EventScript_239771
compare VAR_RESULT, 5
goto_if_eq SkyPillar_Top_EventScript_239771
- setflag FLAG_0x1C0
+ setflag FLAG_DEFEATED_RAYQUAZA
releaseall
end
SkyPillar_Top_EventScript_239768:: @ 8239768
- setflag FLAG_0x1C0
+ setflag FLAG_DEFEATED_RAYQUAZA
goto SkyPillar_Top_EventScript_23977C
end
diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc
index a28d74fa2..7b19c84b8 100644
--- a/data/maps/SlateportCity/scripts.inc
+++ b/data/maps/SlateportCity/scripts.inc
@@ -75,7 +75,7 @@ SlateportCity_EventScript_1DCD1C:: @ 81DCD1C
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0D7
+ setflag FLAG_ENABLE_SCOTT_MATCH_CALL
msgbox SlateportCity_Text_1DF1D3, MSGBOX_DEFAULT
closemessage
applymovement 35, SlateportCity_Movement_1DCDB4
@@ -200,7 +200,7 @@ SlateportCity_EventScript_1DCE84:: @ 81DCE84
faceplayer
compare VAR_0x4058, 1
call_if_eq SlateportCity_EventScript_1DCEA4
- goto_if_set FLAG_0x060, SlateportCity_EventScript_1DCEAE
+ goto_if_set FLAG_RECEIVED_SECRET_POWER, SlateportCity_EventScript_1DCEAE
msgbox SlateportCity_Text_1DD93D, MSGBOX_DEFAULT
release
end
@@ -256,7 +256,7 @@ SlateportCity_EventScript_1DCF0D:: @ 81DCF0D
SlateportCity_EventScript_1DCF17:: @ 81DCF17
lock
faceplayer
- goto_if_set FLAG_0x094, SlateportCity_EventScript_1DCF2C
+ goto_if_set FLAG_DOCK_REJECTED_DEVON_GOODS, SlateportCity_EventScript_1DCF2C
msgbox SlateportCity_Text_1DDBAC, MSGBOX_DEFAULT
release
end
@@ -513,7 +513,7 @@ SlateportCity_EventScript_1DD18E:: @ 81DD18E
SlateportCity_EventScript_1DD198:: @ 81DD198
lock
faceplayer
- goto_if_unset FLAG_0x060, SlateportCity_EventScript_1DD18E
+ goto_if_unset FLAG_RECEIVED_SECRET_POWER, SlateportCity_EventScript_1DD18E
message gUnknown_08272A21
waitmessage
pokemartdecoration SlateportCity_PokemartDecor_1DD1B8
@@ -722,10 +722,10 @@ SlateportCity_EventScript_1DD365:: @ 81DD365
SlateportCity_EventScript_1DD36E:: @ 81DD36E
lock
faceplayer
- goto_if_set FLAG_0x151, SlateportCity_EventScript_1DD39A
+ goto_if_set FLAG_RECEIVED_POWDER_JAR, SlateportCity_EventScript_1DD39A
msgbox SlateportCity_Text_1DEBCE, MSGBOX_DEFAULT
giveitem_std ITEM_POWDER_JAR
- setflag FLAG_0x151
+ setflag FLAG_RECEIVED_POWDER_JAR
msgbox SlateportCity_Text_1DED27, MSGBOX_DEFAULT
release
end
@@ -1373,4 +1373,3 @@ SlateportCity_Text_1DF28C: @ 81DF28C
.string "After all, a tough TRAINER is\n"
.string "the perfect fit for the BATTLE TENT!\p"
.string "Give it your best effort!$"
-
diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
index 2d00095ba..8851c5fa8 100644
--- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
@@ -245,12 +245,12 @@ SlateportCity_BattleTentLobby_Movement_208A38:: @ 8208A38
SlateportCity_BattleTentLobby_EventScript_208A3D:: @ 8208A3D
lock
faceplayer
- goto_if_set FLAG_0x109, SlateportCity_BattleTentLobby_EventScript_208A74
+ goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_208A74
msgbox SlateportCity_BattleTentLobby_Text_208B4E, MSGBOX_DEFAULT
giveitem_std ITEM_TM41
compare VAR_RESULT, 0
goto_if_eq SlateportCity_BattleTentLobby_EventScript_272054
- setflag FLAG_0x109
+ setflag FLAG_RECEIVED_TM41
msgbox SlateportCity_BattleTentLobby_Text_208C5C, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc
index df573aa7a..2f71a2dc9 100644
--- a/data/maps/SlateportCity_Harbor/scripts.inc
+++ b/data/maps/SlateportCity_Harbor/scripts.inc
@@ -63,7 +63,7 @@ SlateportCity_Harbor_EventScript_20C9F5:: @ 820C9F5
removeobject 7
removeobject 8
setvar VAR_0x40A0, 2
- setflag FLAG_0x061
+ setflag FLAG_MET_TEAM_AQUA_HARBOR
setflag FLAG_HIDE_LILCOVE_MOTEL_SCOTT
compare VAR_0x8008, 0
call_if_eq SlateportCity_Harbor_EventScript_20CA89
@@ -174,7 +174,7 @@ SlateportCity_Harbor_EventScript_20CB06:: @ 820CB06
end
SlateportCity_Harbor_EventScript_20CB1A:: @ 820CB1A
- goto_if_set FLAG_0x1D0, SlateportCity_Harbor_EventScript_20CB50
+ goto_if_set FLAG_MET_SCOTT_ON_SS_TIDAL, SlateportCity_Harbor_EventScript_20CB50
multichoicedefault 18, 8, 56, 2, 0
switch VAR_RESULT
case 0, SlateportCity_Harbor_EventScript_20CB92
@@ -269,8 +269,8 @@ SlateportCity_Harbor_EventScript_20CC52:: @ 820CC52
faceplayer
goto_if_unset FLAG_SYS_GAME_CLEAR, SlateportCity_Harbor_EventScript_20CC89
setvar VAR_0x8004, 0
- call_if_set FLAG_0x1BE, SlateportCity_Harbor_EventScript_20CC93
- call_if_set FLAG_0x1BF, SlateportCity_Harbor_EventScript_20CC93
+ call_if_set FLAG_DEFEATED_KYOGRE, SlateportCity_Harbor_EventScript_20CC93
+ call_if_set FLAG_DEFEATED_GROUDON, SlateportCity_Harbor_EventScript_20CC93
compare VAR_0x8004, 2
goto_if_eq SlateportCity_Harbor_EventScript_20CC89
msgbox SlateportCity_Harbor_Text_20D08E, MSGBOX_DEFAULT
@@ -294,8 +294,8 @@ SlateportCity_Harbor_EventScript_20CCA2:: @ 820CCA2
lock
faceplayer
goto_if_set FLAG_BADGE07_GET, SlateportCity_Harbor_EventScript_20CD00
- goto_if_set FLAG_0x10F, SlateportCity_Harbor_EventScript_20CCF6
- goto_if_set FLAG_0x070, SlateportCity_Harbor_EventScript_20CCE9
+ goto_if_set FLAG_EVIL_TEAM_ESCAPED_STERN_SPOKE, SlateportCity_Harbor_EventScript_20CCF6
+ goto_if_set FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, SlateportCity_Harbor_EventScript_20CCE9
compare VAR_0x40A0, 2
goto_if_eq SlateportCity_Harbor_EventScript_20CCDF
msgbox SlateportCity_Harbor_Text_20D232, MSGBOX_DEFAULT
@@ -311,7 +311,7 @@ SlateportCity_Harbor_EventScript_20CCDF:: @ 820CCDF
end
SlateportCity_Harbor_EventScript_20CCE9:: @ 820CCE9
- setflag FLAG_0x10F
+ setflag FLAG_EVIL_TEAM_ESCAPED_STERN_SPOKE
msgbox SlateportCity_Harbor_Text_20D42B, MSGBOX_DEFAULT
release
end
@@ -361,7 +361,7 @@ SlateportCity_Harbor_EventScript_20CD7B:: @ 820CD7B
goto_if_eq SlateportCity_Harbor_EventScript_272054
takeitem ITEM_SCANNER, 1
msgbox SlateportCity_Harbor_Text_20D94A, MSGBOX_DEFAULT
- setflag FLAG_TRADED_SCANNER_TO_STERN
+ setflag FLAG_EXCHANGED_SCANNER
goto SlateportCity_Harbor_EventScript_20CE11
end
@@ -374,7 +374,7 @@ SlateportCity_Harbor_EventScript_20CDBB:: @ 820CDBB
goto_if_eq SlateportCity_Harbor_EventScript_272054
takeitem ITEM_SCANNER, 1
msgbox SlateportCity_Harbor_Text_20D94A, MSGBOX_DEFAULT
- setflag FLAG_TRADED_SCANNER_TO_STERN
+ setflag FLAG_EXCHANGED_SCANNER
goto SlateportCity_Harbor_EventScript_20CE11
end
@@ -554,4 +554,3 @@ SlateportCity_Harbor_Text_20D94A: @ 820D94A
SlateportCity_Harbor_Text_20D970: @ 820D970
.string "CAPT. STERN: Thanks, {PLAYER}{KUN}!\n"
.string "This will help our research a lot!$"
-
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
index 76bc18873..b574ce448 100644
--- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
@@ -50,7 +50,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_20ADE8:: @ 820ADE8
end
SlateportCity_OceanicMuseum_1F_EventScript_20AE18:: @ 820AE18
- goto_if_unset FLAG_0x095, SlateportCity_OceanicMuseum_1F_EventScript_20AE39
+ goto_if_unset FLAG_DELIVERED_DEVON_GOODS, SlateportCity_OceanicMuseum_1F_EventScript_20AE39
msgbox SlateportCity_OceanicMuseum_1F_Text_20B03D, MSGBOX_DEFAULT
closemessage
hidemoneybox
@@ -163,7 +163,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_20AEF8:: @ 820AEF8
giveitem_std ITEM_TM46
compare VAR_RESULT, 0
goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_20AFB5
- setflag FLAG_0x10D
+ setflag FLAG_RECEIVED_TM46
msgbox SlateportCity_OceanicMuseum_1F_Text_20B449, MSGBOX_DEFAULT
closemessage
compare VAR_FACING, 2
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
index 387ffdabf..204ffb4eb 100644
--- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
@@ -83,7 +83,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_20BB00:: @ 820BB00
setflag FLAG_HIDE_ROUTE_110_TEAM_AQUA
compare VAR_0x40DA, 0
call_if_eq SlateportCity_OceanicMuseum_2F_EventScript_20BC8C
- setflag FLAG_0x095
+ setflag FLAG_DELIVERED_DEVON_GOODS
clearflag FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE
setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE
setvar VAR_0x40D2, 1
diff --git a/data/maps/SlateportCity_PokemonFanClub/scripts.inc b/data/maps/SlateportCity_PokemonFanClub/scripts.inc
index 35fcde577..3faf350fc 100644
--- a/data/maps/SlateportCity_PokemonFanClub/scripts.inc
+++ b/data/maps/SlateportCity_PokemonFanClub/scripts.inc
@@ -4,8 +4,8 @@ SlateportCity_PokemonFanClub_MapScripts:: @ 8209E95
SlateportCity_PokemonFanClub_EventScript_209E96:: @ 8209E96
lock
faceplayer
- goto_if_unset FLAG_0x155, SlateportCity_PokemonFanClub_EventScript_20A152
- call_if_unset FLAG_0x156, SlateportCity_PokemonFanClub_EventScript_20A172
+ goto_if_unset FLAG_ENTERED_LINK_CONTEST, SlateportCity_PokemonFanClub_EventScript_20A152
+ call_if_unset FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN, SlateportCity_PokemonFanClub_EventScript_20A172
switch VAR_0x40B7
case 0, SlateportCity_PokemonFanClub_EventScript_209ED2
case 1, SlateportCity_PokemonFanClub_EventScript_209EE5
@@ -21,11 +21,11 @@ SlateportCity_PokemonFanClub_EventScript_209ED2:: @ 8209ED2
SlateportCity_PokemonFanClub_EventScript_209EE5:: @ 8209EE5
setvar VAR_TEMP_2, 0
- call_if_set FLAG_0x0CC, SlateportCity_PokemonFanClub_EventScript_209FD0
- call_if_set FLAG_0x0CB, SlateportCity_PokemonFanClub_EventScript_209FD0
- call_if_set FLAG_0x0CA, SlateportCity_PokemonFanClub_EventScript_209FD0
- call_if_set FLAG_0x0C9, SlateportCity_PokemonFanClub_EventScript_209FD0
- call_if_set FLAG_0x0C8, SlateportCity_PokemonFanClub_EventScript_209FD0
+ call_if_set FLAG_RECEIVED_YELLOW_SCARF, SlateportCity_PokemonFanClub_EventScript_209FD0
+ call_if_set FLAG_RECEIVED_GREEN_SCARF, SlateportCity_PokemonFanClub_EventScript_209FD0
+ call_if_set FLAG_RECEIVED_PINK_SCARF, SlateportCity_PokemonFanClub_EventScript_209FD0
+ call_if_set FLAG_RECEIVED_BLUE_SCARF, SlateportCity_PokemonFanClub_EventScript_209FD0
+ call_if_set FLAG_RECEIVED_RED_SCARF, SlateportCity_PokemonFanClub_EventScript_209FD0
compare VAR_TEMP_2, 5
call_if_eq SlateportCity_PokemonFanClub_EventScript_209FCA
compare VAR_0x40B7, 2
@@ -42,11 +42,11 @@ SlateportCity_PokemonFanClub_EventScript_209F3B:: @ 8209F3B
SlateportCity_PokemonFanClub_EventScript_209F45:: @ 8209F45
msgbox SlateportCity_PokemonFanClub_Text_20A65F, MSGBOX_DEFAULT
setvar VAR_TEMP_1, 0
- call_if_unset FLAG_0x0CC, SlateportCity_PokemonFanClub_EventScript_20A13B
- call_if_unset FLAG_0x0CB, SlateportCity_PokemonFanClub_EventScript_20A124
- call_if_unset FLAG_0x0CA, SlateportCity_PokemonFanClub_EventScript_20A10D
- call_if_unset FLAG_0x0C9, SlateportCity_PokemonFanClub_EventScript_20A0F6
- call_if_unset FLAG_0x0C8, SlateportCity_PokemonFanClub_EventScript_20A0DF
+ call_if_unset FLAG_RECEIVED_YELLOW_SCARF, SlateportCity_PokemonFanClub_EventScript_20A13B
+ call_if_unset FLAG_RECEIVED_GREEN_SCARF, SlateportCity_PokemonFanClub_EventScript_20A124
+ call_if_unset FLAG_RECEIVED_PINK_SCARF, SlateportCity_PokemonFanClub_EventScript_20A10D
+ call_if_unset FLAG_RECEIVED_BLUE_SCARF, SlateportCity_PokemonFanClub_EventScript_20A0F6
+ call_if_unset FLAG_RECEIVED_RED_SCARF, SlateportCity_PokemonFanClub_EventScript_20A0DF
bufferleadmonspeciesname 0
switch VAR_TEMP_1
case 0, SlateportCity_PokemonFanClub_EventScript_209FD6
@@ -76,7 +76,7 @@ SlateportCity_PokemonFanClub_EventScript_209FE0:: @ 8209FE0
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_20A0D5
msgbox SlateportCity_PokemonFanClub_Text_20A795, MSGBOX_DEFAULT
- setflag FLAG_0x0C8
+ setflag FLAG_RECEIVED_RED_SCARF
giveitem_std ITEM_RED_SCARF
msgbox SlateportCity_PokemonFanClub_Text_20A827, MSGBOX_DEFAULT
release
@@ -87,7 +87,7 @@ SlateportCity_PokemonFanClub_EventScript_20A011:: @ 820A011
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_20A0D5
msgbox SlateportCity_PokemonFanClub_Text_20A795, MSGBOX_DEFAULT
- setflag FLAG_0x0C9
+ setflag FLAG_RECEIVED_BLUE_SCARF
giveitem_std ITEM_BLUE_SCARF
msgbox SlateportCity_PokemonFanClub_Text_20A880, MSGBOX_DEFAULT
release
@@ -98,7 +98,7 @@ SlateportCity_PokemonFanClub_EventScript_20A042:: @ 820A042
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_20A0D5
msgbox SlateportCity_PokemonFanClub_Text_20A795, MSGBOX_DEFAULT
- setflag FLAG_0x0CA
+ setflag FLAG_RECEIVED_PINK_SCARF
giveitem_std ITEM_PINK_SCARF
msgbox SlateportCity_PokemonFanClub_Text_20A8D7, MSGBOX_DEFAULT
release
@@ -109,7 +109,7 @@ SlateportCity_PokemonFanClub_EventScript_20A073:: @ 820A073
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_20A0D5
msgbox SlateportCity_PokemonFanClub_Text_20A795, MSGBOX_DEFAULT
- setflag FLAG_0x0CB
+ setflag FLAG_RECEIVED_GREEN_SCARF
giveitem_std ITEM_GREEN_SCARF
msgbox SlateportCity_PokemonFanClub_Text_20A933, MSGBOX_DEFAULT
release
@@ -120,7 +120,7 @@ SlateportCity_PokemonFanClub_EventScript_20A0A4:: @ 820A0A4
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_20A0D5
msgbox SlateportCity_PokemonFanClub_Text_20A795, MSGBOX_DEFAULT
- setflag FLAG_0x0CC
+ setflag FLAG_RECEIVED_YELLOW_SCARF
giveitem_std ITEM_YELLOW_SCARF
msgbox SlateportCity_PokemonFanClub_Text_20A984, MSGBOX_DEFAULT
release
@@ -182,9 +182,9 @@ SlateportCity_PokemonFanClub_EventScript_20A14C:: @ 820A14C
return
SlateportCity_PokemonFanClub_EventScript_20A152:: @ 820A152
- goto_if_set FLAG_0x156, SlateportCity_PokemonFanClub_EventScript_20A168
+ goto_if_set FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN, SlateportCity_PokemonFanClub_EventScript_20A168
msgbox SlateportCity_PokemonFanClub_Text_20A233, MSGBOX_DEFAULT
- setflag FLAG_0x156
+ setflag FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN
release
end
@@ -195,13 +195,13 @@ SlateportCity_PokemonFanClub_EventScript_20A168:: @ 820A168
SlateportCity_PokemonFanClub_EventScript_20A172:: @ 820A172
msgbox SlateportCity_PokemonFanClub_Text_20A233, MSGBOX_DEFAULT
- setflag FLAG_0x156
+ setflag FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN
return
SlateportCity_PokemonFanClub_EventScript_20A17E:: @ 820A17E
lock
faceplayer
- goto_if_set FLAG_0x116, SlateportCity_PokemonFanClub_EventScript_20A1DE
+ goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_20A1DE
msgbox SlateportCity_PokemonFanClub_Text_20AA77, MSGBOX_DEFAULT
specialvar VAR_RESULT, GetLeadMonFriendshipScore
compare VAR_RESULT, 4
@@ -219,7 +219,7 @@ SlateportCity_PokemonFanClub_EventScript_20A1A3:: @ 820A1A3
giveitem_std ITEM_SOOTHE_BELL
compare VAR_RESULT, 0
goto_if_eq SlateportCity_PokemonFanClub_EventScript_272054
- setflag FLAG_0x116
+ setflag FLAG_RECEIVED_SOOTHE_BELL
release
end
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
index da264c2ee..adf1bd3a2 100644
--- a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
+++ b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
@@ -5,8 +5,8 @@ SlateportCity_SternsShipyard_1F_EventScript_207F40:: @ 8207F40
lockall
goto_if_set FLAG_SYS_GAME_CLEAR, SlateportCity_SternsShipyard_1F_EventScript_207F92
goto_if_set FLAG_BADGE07_GET, SlateportCity_SternsShipyard_1F_EventScript_207FA6
- goto_if_set FLAG_0x095, SlateportCity_SternsShipyard_1F_EventScript_207FD9
- goto_if_set FLAG_0x094, SlateportCity_SternsShipyard_1F_EventScript_207FBA
+ goto_if_set FLAG_DELIVERED_DEVON_GOODS, SlateportCity_SternsShipyard_1F_EventScript_207FD9
+ goto_if_set FLAG_DOCK_REJECTED_DEVON_GOODS, SlateportCity_SternsShipyard_1F_EventScript_207FBA
msgbox SlateportCity_SternsShipyard_1F_Text_208008, MSGBOX_DEFAULT
applymovement 1, SlateportCity_SternsShipyard_1F_Movement_27259E
waitmovement 0
@@ -14,7 +14,7 @@ SlateportCity_SternsShipyard_1F_EventScript_207F40:: @ 8207F40
closemessage
applymovement 1, SlateportCity_SternsShipyard_1F_Movement_2725A2
waitmovement 0
- setflag FLAG_0x094
+ setflag FLAG_DOCK_REJECTED_DEVON_GOODS
setflag FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA
releaseall
end
diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc
index ceff8f4e4..da5caab3f 100644
--- a/data/maps/SootopolisCity/scripts.inc
+++ b/data/maps/SootopolisCity/scripts.inc
@@ -7,9 +7,9 @@ SootopolisCity_MapScripts:: @ 81E565C
.byte 0
SootopolisCity_MapScript1_1E5676: @ 81E5676
- call_if_unset FLAG_0x09E, SootopolisCity_EventScript_1E56E5
- goto_if_unset FLAG_0x081, SootopolisCity_EventScript_1E5692
- call_if_unset FLAG_0x09E, SootopolisCity_EventScript_1E5693
+ call_if_unset FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_1E56E5
+ goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_EventScript_1E5692
+ call_if_unset FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_1E5693
end
SootopolisCity_EventScript_1E5692:: @ 81E5692
@@ -121,7 +121,7 @@ SootopolisCity_EventScript_1E583E:: @ 81E583E
return
SootopolisCity_EventScript_1E5842:: @ 81E5842
- goto_if_set FLAG_0x133, SootopolisCity_EventScript_1E584C
+ goto_if_set FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN, SootopolisCity_EventScript_1E584C
return
SootopolisCity_EventScript_1E584C:: @ 81E584C
@@ -744,7 +744,7 @@ SootopolisCity_EventScript_1E5F10:: @ 81E5F10
SootopolisCity_EventScript_1E5F1B:: @ 81E5F1B
dodailyevents
special GetPlayerBigGuyGirlString
- goto_if_set FLAG_0x932, SootopolisCity_EventScript_1E5FBB
+ goto_if_set FLAG_DAILY_SOOTOPOLIS_RECEIVED_BERRY, SootopolisCity_EventScript_1E5FBB
msgbox SootopolisCity_Text_2A7BB0, MSGBOX_DEFAULT
random 10
addvar VAR_RESULT, 20
@@ -752,7 +752,7 @@ SootopolisCity_EventScript_1E5F1B:: @ 81E5F1B
giveitem_std VAR_RESULT
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_EventScript_272054
- setflag FLAG_0x932
+ setflag FLAG_DAILY_SOOTOPOLIS_RECEIVED_BERRY
msgbox SootopolisCity_Text_2A7C7C, MSGBOX_DEFAULT
random 2
compare VAR_RESULT, 0
@@ -929,14 +929,14 @@ SootopolisCity_EventScript_1E6166:: @ 81E6166
lockall
applymovement 7, SootopolisCity_Movement_27259E
waitmovement 0
- call_if_unset FLAG_0x133, SootopolisCity_EventScript_1E61CC
+ call_if_unset FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN, SootopolisCity_EventScript_1E61CC
compare VAR_0x405E, 2
goto_if_eq SootopolisCity_EventScript_1E61AE
compare VAR_0x405E, 3
goto_if_eq SootopolisCity_EventScript_1E61C2
compare VAR_0x405E, 4
goto_if_eq SootopolisCity_EventScript_1E61C2
- goto_if_set FLAG_0x09E, SootopolisCity_EventScript_1E61B8
+ goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_1E61B8
msgbox SootopolisCity_Text_1E78E5, MSGBOX_DEFAULT
releaseall
end
@@ -976,7 +976,7 @@ SootopolisCity_EventScript_1E61CC:: @ 81E61CC
waitmovement 0
msgbox SootopolisCity_Text_1E77F0, MSGBOX_DEFAULT
closemessage
- setflag FLAG_0x133
+ setflag FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN
applymovement EVENT_OBJ_ID_PLAYER, SootopolisCity_Movement_1E635A
waitmovement 0
warp MAP_CAVE_OF_ORIGIN_ENTRANCE, 255, 9, 20
@@ -1342,8 +1342,8 @@ SootopolisCity_EventScript_1E6446:: @ 81E6446
faceplayer
compare VAR_0x405E, 4
goto_if_eq SootopolisCity_EventScript_1E64D8
- goto_if_set FLAG_0x138, SootopolisCity_EventScript_1E64E2
- goto_if_set FLAG_0x09E, SootopolisCity_EventScript_1E646F
+ goto_if_set FLAG_RECEIVED_HM07, SootopolisCity_EventScript_1E64E2
+ goto_if_set FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE, SootopolisCity_EventScript_1E646F
msgbox SootopolisCity_Text_1E7A3E, MSGBOX_DEFAULT
release
end
@@ -1351,7 +1351,7 @@ SootopolisCity_EventScript_1E6446:: @ 81E6446
SootopolisCity_EventScript_1E646F:: @ 81E646F
msgbox SootopolisCity_Text_1E7ACF, MSGBOX_DEFAULT
giveitem_std ITEM_HM07
- setflag FLAG_0x138
+ setflag FLAG_RECEIVED_HM07
msgbox SootopolisCity_Text_1E7B86, MSGBOX_DEFAULT
closemessage
compare VAR_FACING, 2
@@ -1408,8 +1408,8 @@ SootopolisCity_EventScript_1E64F2:: @ 81E64F2
SootopolisCity_EventScript_1E6509:: @ 81E6509
msgbox SootopolisCity_Text_1E737E, MSGBOX_DEFAULT
- setflag FLAG_0x135
- goto_if_set FLAG_0x134, SootopolisCity_EventScript_1E654C
+ setflag FLAG_MET_MAXIE_SOOTOPOLIS
+ goto_if_set FLAG_MET_ARCHIE_SOOTOPOLIS, SootopolisCity_EventScript_1E654C
releaseall
end
@@ -1424,15 +1424,15 @@ SootopolisCity_EventScript_1E651F:: @ 81E651F
SootopolisCity_EventScript_1E6536:: @ 81E6536
msgbox SootopolisCity_Text_1E74F6, MSGBOX_DEFAULT
- setflag FLAG_0x134
- goto_if_set FLAG_0x135, SootopolisCity_EventScript_1E654C
+ setflag FLAG_MET_ARCHIE_SOOTOPOLIS
+ goto_if_set FLAG_MET_MAXIE_SOOTOPOLIS, SootopolisCity_EventScript_1E654C
releaseall
end
SootopolisCity_EventScript_1E654C:: @ 81E654C
setflag FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE
setflag FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE
- setflag FLAG_0x09E
+ setflag FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE
clearflag FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE
clearflag FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE
setvar VAR_0x40B9, 2
diff --git a/data/maps/SootopolisCity_Gym_1F/scripts.inc b/data/maps/SootopolisCity_Gym_1F/scripts.inc
index e4f062fe3..22cd864cf 100644
--- a/data/maps/SootopolisCity_Gym_1F/scripts.inc
+++ b/data/maps/SootopolisCity_Gym_1F/scripts.inc
@@ -90,7 +90,7 @@ SootopolisCity_Gym_1F_EventScript_224F44:: @ 8224F44
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq SootopolisCity_Gym_1F_EventScript_225025
- goto_if_unset FLAG_0x0AC, SootopolisCity_Gym_1F_EventScript_224FF7
+ goto_if_unset FLAG_RECEIVED_TM03, SootopolisCity_Gym_1F_EventScript_224FF7
goto_if_unset FLAG_BADGE06_GET, SootopolisCity_Gym_1F_EventScript_22501B
msgbox SootopolisCity_Gym_1F_Text_225778, MSGBOX_DEFAULT
release
@@ -101,7 +101,7 @@ SootopolisCity_Gym_1F_EventScript_224F82:: @ 8224F82
waitmessage
call SootopolisCity_Gym_1F_EventScript_27207E
msgbox SootopolisCity_Gym_1F_Text_2255BE, MSGBOX_DEFAULT
- setflag FLAG_0x4F7
+ setflag FLAG_DEFEATED_SOOTOPOLIS_GYM
setflag FLAG_BADGE08_GET
setflag FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS
setflag FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN
@@ -118,7 +118,7 @@ SootopolisCity_Gym_1F_EventScript_224F82:: @ 8224F82
waitfanfare
closemessage
delay 30
- setflag FLAG_0x1D9
+ setflag FLAG_ENABLE_JUAN_MATCH_CALL
release
end
@@ -127,7 +127,7 @@ SootopolisCity_Gym_1F_EventScript_224FD4:: @ 8224FD4
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_Gym_1F_EventScript_27205E
msgbox SootopolisCity_Gym_1F_Text_2256C1, MSGBOX_DEFAULT
- setflag FLAG_0x0AC
+ setflag FLAG_RECEIVED_TM03
return
SootopolisCity_Gym_1F_EventScript_224FF7:: @ 8224FF7
@@ -135,7 +135,7 @@ SootopolisCity_Gym_1F_EventScript_224FF7:: @ 8224FF7
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_Gym_1F_EventScript_272054
msgbox SootopolisCity_Gym_1F_Text_2256C1, MSGBOX_DEFAULT
- setflag FLAG_0x0AC
+ setflag FLAG_RECEIVED_TM03
release
end
@@ -152,7 +152,7 @@ SootopolisCity_Gym_1F_EventScript_225025:: @ 8225025
SootopolisCity_Gym_1F_EventScript_225040:: @ 8225040
lock
faceplayer
- goto_if_set FLAG_0x4F7, SootopolisCity_Gym_1F_EventScript_225055
+ goto_if_set FLAG_DEFEATED_SOOTOPOLIS_GYM, SootopolisCity_Gym_1F_EventScript_225055
msgbox SootopolisCity_Gym_1F_Text_225093, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SootopolisCity_House1/scripts.inc b/data/maps/SootopolisCity_House1/scripts.inc
index 5b59c3033..9dcc1031d 100644
--- a/data/maps/SootopolisCity_House1/scripts.inc
+++ b/data/maps/SootopolisCity_House1/scripts.inc
@@ -4,12 +4,12 @@ SootopolisCity_House1_MapScripts:: @ 822694C
SootopolisCity_House1_EventScript_22694D:: @ 822694D
lock
faceplayer
- goto_if_set FLAG_0x079, SootopolisCity_House1_EventScript_226984
+ goto_if_set FLAG_RECEIVED_TM31, SootopolisCity_House1_EventScript_226984
msgbox SootopolisCity_House1_Text_2269A1, MSGBOX_DEFAULT
giveitem_std ITEM_TM31
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_House1_EventScript_272054
- setflag FLAG_0x079
+ setflag FLAG_RECEIVED_TM31
msgbox SootopolisCity_House1_Text_226A13, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SootopolisCity_House6/scripts.inc b/data/maps/SootopolisCity_House6/scripts.inc
index 499c01893..efa197c8d 100644
--- a/data/maps/SootopolisCity_House6/scripts.inc
+++ b/data/maps/SootopolisCity_House6/scripts.inc
@@ -4,7 +4,7 @@ SootopolisCity_House6_MapScripts:: @ 8226F5B
SootopolisCity_House6_EventScript_226F5C:: @ 8226F5C
lock
faceplayer
- goto_if_set FLAG_0x0F5, SootopolisCity_House6_EventScript_226FA3
+ goto_if_set FLAG_RECEIVED_WAILMER_DOLL, SootopolisCity_House6_EventScript_226FA3
msgbox SootopolisCity_House6_Text_226FC3, MSGBOX_YESNO
compare VAR_RESULT, 0
call_if_eq SootopolisCity_House6_EventScript_226F99
@@ -12,7 +12,7 @@ SootopolisCity_House6_EventScript_226F5C:: @ 8226F5C
givedecoration_std 117
compare VAR_RESULT, 0
goto_if_eq SootopolisCity_House6_EventScript_226FAD
- setflag FLAG_0x0F5
+ setflag FLAG_RECEIVED_WAILMER_DOLL
release
end
diff --git a/data/maps/SootopolisCity_Mart/scripts.inc b/data/maps/SootopolisCity_Mart/scripts.inc
index 94f0a8e9f..4a152bcf0 100644
--- a/data/maps/SootopolisCity_Mart/scripts.inc
+++ b/data/maps/SootopolisCity_Mart/scripts.inc
@@ -30,7 +30,7 @@ SootopolisCity_Mart_EventScript_2267C2:: @ 82267C2
faceplayer
compare VAR_0x40CA, 2
goto_if_ge SootopolisCity_Mart_EventScript_2267E2
- goto_if_unset FLAG_0x081, SootopolisCity_Mart_EventScript_2267E2
+ goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_Mart_EventScript_2267E2
msgbox SootopolisCity_Mart_Text_22685D, MSGBOX_DEFAULT
release
end
@@ -45,7 +45,7 @@ SootopolisCity_Mart_EventScript_2267EC:: @ 82267EC
faceplayer
compare VAR_0x40CA, 2
goto_if_ge SootopolisCity_Mart_EventScript_22680C
- goto_if_unset FLAG_0x081, SootopolisCity_Mart_EventScript_22680C
+ goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_Mart_EventScript_22680C
msgbox SootopolisCity_Mart_Text_226928, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
index 448d66981..2e7e804ce 100644
--- a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
@@ -20,7 +20,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_22650E:: @ 822650E
faceplayer
compare VAR_0x40CA, 2
goto_if_ge SootopolisCity_PokemonCenter_1F_EventScript_22652E
- goto_if_unset FLAG_0x081, SootopolisCity_PokemonCenter_1F_EventScript_22652E
+ goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_PokemonCenter_1F_EventScript_22652E
msgbox SootopolisCity_PokemonCenter_1F_Text_22664B, MSGBOX_DEFAULT
release
end
@@ -35,7 +35,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_226538:: @ 8226538
faceplayer
compare VAR_0x40CA, 2
goto_if_ge SootopolisCity_PokemonCenter_1F_EventScript_226558
- goto_if_unset FLAG_0x081, SootopolisCity_PokemonCenter_1F_EventScript_226558
+ goto_if_unset FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, SootopolisCity_PokemonCenter_1F_EventScript_226558
msgbox SootopolisCity_PokemonCenter_1F_Text_22672F, MSGBOX_DEFAULT
release
end
diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc
index 31675c905..4f8dba7e5 100644
--- a/data/maps/SouthernIsland_Interior/scripts.inc
+++ b/data/maps/SouthernIsland_Interior/scripts.inc
@@ -56,10 +56,10 @@ SouthernIsland_Interior_EventScript_242AC4:: @ 8242AC4
SouthernIsland_Interior_EventScript_242AD0:: @ 8242AD0
goto_if_set FLAG_TEMP_2, SouthernIsland_Interior_EventScript_242B9A
- goto_if_set FLAG_0x1C8, SouthernIsland_Interior_EventScript_242B9A
- goto_if_set FLAG_0x1C9, SouthernIsland_Interior_EventScript_242B9A
+ goto_if_set FLAG_DEFEATED_LATIAS_OR_LATIOS, SouthernIsland_Interior_EventScript_242B9A
+ goto_if_set FLAG_CAUGHT_LATIAS_OR_LATIOS, SouthernIsland_Interior_EventScript_242B9A
goto_if_unset FLAG_SYS_HAS_EON_TICKET, SouthernIsland_Interior_EventScript_242B9A
- setflag FLAG_0x0CE
+ setflag FLAG_ENCOUNTERED_LATIAS_OR_LATIOS
setflag FLAG_TEMP_2
special SpawnCameraObject
applymovement EVENT_OBJ_ID_CAMERA, SouthernIsland_Interior_Movement_242BCA
@@ -92,12 +92,12 @@ SouthernIsland_Interior_EventScript_242AD0:: @ 8242AD0
goto_if_eq SouthernIsland_Interior_EventScript_242B8F
compare VAR_RESULT, 5
goto_if_eq SouthernIsland_Interior_EventScript_242B8F
- setflag FLAG_0x1C9
+ setflag FLAG_CAUGHT_LATIAS_OR_LATIOS
releaseall
end
SouthernIsland_Interior_EventScript_242B81:: @ 8242B81
- setflag FLAG_0x1C8
+ setflag FLAG_DEFEATED_LATIAS_OR_LATIOS
copyvar VAR_0x8004, VAR_TEMP_4
goto SouthernIsland_Interior_EventScript_273776
end
@@ -159,4 +159,3 @@ SouthernIsland_Interior_Movement_242BDA: @ 8242BDA
walk_down
walk_down
step_end
-
diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc
index bd057eac6..a3164136d 100644
--- a/data/maps/TerraCave_End/scripts.inc
+++ b/data/maps/TerraCave_End/scripts.inc
@@ -15,7 +15,7 @@ TerraCave_End_EventScript_23B0C5:: @ 823B0C5
return
TerraCave_End_MapScript1_23B0D9: @ 823B0D9
- call_if_unset FLAG_0x1BF, TerraCave_End_EventScript_23B0E3
+ call_if_unset FLAG_DEFEATED_GROUDON, TerraCave_End_EventScript_23B0E3
end
TerraCave_End_EventScript_23B0E3:: @ 823B0E3
@@ -48,13 +48,13 @@ TerraCave_End_EventScript_23B0EC:: @ 823B0EC
compare VAR_RESULT, 5
goto_if_eq TerraCave_End_EventScript_23B163
setvar VAR_0x4039, 1
- setflag FLAG_0x1BF
+ setflag FLAG_DEFEATED_GROUDON
releaseall
end
TerraCave_End_EventScript_23B155:: @ 823B155
setvar VAR_0x4039, 1
- setflag FLAG_0x1BF
+ setflag FLAG_DEFEATED_GROUDON
goto TerraCave_End_EventScript_27376D
end
diff --git a/data/maps/TerraCave_Entrance/scripts.inc b/data/maps/TerraCave_Entrance/scripts.inc
index 1762265ea..b9a17701b 100644
--- a/data/maps/TerraCave_Entrance/scripts.inc
+++ b/data/maps/TerraCave_Entrance/scripts.inc
@@ -3,6 +3,6 @@ TerraCave_Entrance_MapScripts:: @ 823B0A6
.byte 0
TerraCave_Entrance_MapScript1_23B0AC: @ 823B0AC
- setflag FLAG_0x8DA
+ setflag FLAG_ARRIVED_AT_TERRA_CAVE_ENTRANCE
end
diff --git a/data/maps/Underwater_MarineCave/scripts.inc b/data/maps/Underwater_MarineCave/scripts.inc
index ac96e3a9b..d6a3aa0db 100644
--- a/data/maps/Underwater_MarineCave/scripts.inc
+++ b/data/maps/Underwater_MarineCave/scripts.inc
@@ -4,7 +4,7 @@ Underwater_MarineCave_MapScripts:: @ 823AFB8
.byte 0
Underwater_MarineCave_MapScript1_23AFC3: @ 823AFC3
- setflag FLAG_0x8D9
+ setflag FLAG_ARRIVED_AT_MARINE_CAVE_EMERGE_SPOT
end
Underwater_MarineCave_MapScript1_23AFC7: @ 823AFC7
diff --git a/data/maps/Underwater_SeafloorCavern/scripts.inc b/data/maps/Underwater_SeafloorCavern/scripts.inc
index 4d5865511..efd2e9438 100644
--- a/data/maps/Underwater_SeafloorCavern/scripts.inc
+++ b/data/maps/Underwater_SeafloorCavern/scripts.inc
@@ -6,7 +6,7 @@ Underwater_SeafloorCavern_MapScripts:: @ 823433B
Underwater_SeafloorCavern_MapScript1_23434B: @ 823434B
setflag FLAG_LANDMARK_SEAFLOOR_CAVERN
- goto_if_set FLAG_0x081, Underwater_SeafloorCavern_EventScript_234358
+ goto_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, Underwater_SeafloorCavern_EventScript_234358
end
Underwater_SeafloorCavern_EventScript_234358:: @ 8234358
@@ -14,7 +14,7 @@ Underwater_SeafloorCavern_EventScript_234358:: @ 8234358
end
Underwater_SeafloorCavern_MapScript1_23435C: @ 823435C
- call_if_set FLAG_0x081, Underwater_SeafloorCavern_EventScript_234366
+ call_if_set FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, Underwater_SeafloorCavern_EventScript_234366
end
Underwater_SeafloorCavern_EventScript_234366:: @ 8234366
diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
index d526c769a..df56f41ed 100644
--- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
@@ -277,12 +277,12 @@ VerdanturfTown_BattleTentLobby_Movement_201A77: @ 8201A77
VerdanturfTown_BattleTentLobby_EventScript_201A7B:: @ 8201A7B
lock
faceplayer
- goto_if_set FLAG_0x0EB, VerdanturfTown_BattleTentLobby_EventScript_201AB2
+ goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_201AB2
msgbox VerdanturfTown_BattleTentLobby_Text_201D9E, MSGBOX_DEFAULT
giveitem_std ITEM_TM45
compare VAR_RESULT, 0
goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_272054
- setflag FLAG_0x0EB
+ setflag FLAG_RECEIVED_TM45
msgbox VerdanturfTown_BattleTentLobby_Text_201E43, MSGBOX_DEFAULT
release
end
@@ -305,10 +305,10 @@ VerdanturfTown_BattleTentLobby_EventScript_201AC5:: @ 8201AC5
VerdanturfTown_BattleTentLobby_EventScript_201AD0:: @ 8201AD0
lock
faceplayer
- goto_if_set FLAG_0x1CC, VerdanturfTown_BattleTentLobby_EventScript_201AED
+ goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_201AED
msgbox VerdanturfTown_BattleTentLobby_Text_201F3F, MSGBOX_DEFAULT
addvar VAR_0x40D1, 1
- setflag FLAG_0x1CC
+ setflag FLAG_MET_SCOTT_IN_VERDANTURF
release
end
@@ -434,4 +434,3 @@ VerdanturfTown_BattleTentLobby_Text_202025: @ 8202025
.string "SCOTT: I visit here regularly in hopes\n"
.string "of seeing tough TRAINERS in action\l"
.string "in whatever the situation.$"
-
diff --git a/data/maps/VerdanturfTown_WandasHouse/scripts.inc b/data/maps/VerdanturfTown_WandasHouse/scripts.inc
index e185cff51..c63aa3fa1 100644
--- a/data/maps/VerdanturfTown_WandasHouse/scripts.inc
+++ b/data/maps/VerdanturfTown_WandasHouse/scripts.inc
@@ -4,9 +4,9 @@ VerdanturfTown_WandasHouse_MapScripts:: @ 82028BE
VerdanturfTown_WandasHouse_EventScript_2028BF:: @ 82028BF
lock
faceplayer
- goto_if_set FLAG_0x0C1, VerdanturfTown_WandasHouse_EventScript_2028D7
+ goto_if_set FLAG_WALLY_SPEECH, VerdanturfTown_WandasHouse_EventScript_2028D7
msgbox VerdanturfTown_WandasHouse_Text_202993, MSGBOX_DEFAULT
- setflag FLAG_0x0C1
+ setflag FLAG_WALLY_SPEECH
release
end
@@ -18,8 +18,8 @@ VerdanturfTown_WandasHouse_EventScript_2028D7:: @ 82028D7
VerdanturfTown_WandasHouse_EventScript_2028E1:: @ 82028E1
lock
faceplayer
- goto_if_set FLAG_0x07E, VerdanturfTown_WandasHouse_EventScript_202909
- goto_if_set FLAG_0x4F3, VerdanturfTown_WandasHouse_EventScript_2028FF
+ goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, VerdanturfTown_WandasHouse_EventScript_202909
+ goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, VerdanturfTown_WandasHouse_EventScript_2028FF
msgbox VerdanturfTown_WandasHouse_Text_202B37, MSGBOX_DEFAULT
release
end
@@ -41,8 +41,8 @@ VerdanturfTown_WandasHouse_EventScript_202913:: @ 8202913
VerdanturfTown_WandasHouse_EventScript_20291C:: @ 820291C
lock
faceplayer
- goto_if_set FLAG_0x4F3, VerdanturfTown_WandasHouse_EventScript_202944
- goto_if_set FLAG_0x0BE, VerdanturfTown_WandasHouse_EventScript_20293A
+ goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, VerdanturfTown_WandasHouse_EventScript_202944
+ goto_if_set FLAG_DEFEATED_WALLY_MAUVILLE, VerdanturfTown_WandasHouse_EventScript_20293A
msgbox VerdanturfTown_WandasHouse_Text_202D91, MSGBOX_DEFAULT
release
end
@@ -60,8 +60,8 @@ VerdanturfTown_WandasHouse_EventScript_202944:: @ 8202944
VerdanturfTown_WandasHouse_EventScript_20294E:: @ 820294E
lock
faceplayer
- goto_if_set FLAG_0x07E, VerdanturfTown_WandasHouse_EventScript_202989
- goto_if_set FLAG_0x4F3, VerdanturfTown_WandasHouse_EventScript_20297F
+ goto_if_set FLAG_DEFEATED_WALLY_VICTORY_ROAD, VerdanturfTown_WandasHouse_EventScript_202989
+ goto_if_set FLAG_DEFEATED_LAVARIDGE_GYM, VerdanturfTown_WandasHouse_EventScript_20297F
goto_if_set FLAG_RUSTURF_TUNNEL_OPENED, VerdanturfTown_WandasHouse_EventScript_202975
msgbox VerdanturfTown_WandasHouse_Text_202E47, MSGBOX_DEFAULT
release
diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc
index edf45de9c..20f36868e 100644
--- a/data/maps/VictoryRoad_1F/scripts.inc
+++ b/data/maps/VictoryRoad_1F/scripts.inc
@@ -45,7 +45,7 @@ VictoryRoad_1F_EventScript_235DE1:: @ 8235DE1
msgbox VictoryRoad_1F_Text_236020, MSGBOX_DEFAULT
clearflag FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY
moveobjectoffscreen 4
- setflag FLAG_0x07E
+ setflag FLAG_DEFEATED_WALLY_VICTORY_ROAD
copyvar VAR_0x40C3, VAR_0x8008
releaseall
end
diff --git a/data/mystery_event_msg.s b/data/mystery_event_msg.s
index 0105d8815..aa904b0bf 100644
--- a/data/mystery_event_msg.s
+++ b/data/mystery_event_msg.s
@@ -9,7 +9,7 @@
.include "constants/constants.inc"
.section .rodata
-
+
.align 2
MysteryEventScript_StampCard:: @ 8674CB0
@@ -100,7 +100,7 @@ SurfPichu_Slot5: @ 8674DD8
sText_MysteryGiftEgg:
.string "Thank you for using the MYSTERY\nGIFT System.\pFrom the POKéMON CENTER we\nhave a gift--a POKéMON EGG!\pPlease raise it with love and\nkindness.$"
-
+
sText_FullParty:
.string "Oh, your party appears to be full.\pPlease come see me after storing\na POKéMON on a PC.$"
@@ -161,7 +161,7 @@ MysteryEventScript_BattleCardInfo: @ 8675179
sText_MysteryGiftBattleCountCard:
.string "Thank you for using the MYSTERY\nGIFT System.\pYour BATTLE COUNT CARD keeps\ntrack of your battle record against\lTRAINERS with the same CARD.\pLook for and battle TRAINERS who\nhave the same CARD as you.\pYou may check the overall rankings\nby reading the NEWS.\pPlease do give it a try!$"
-
+
sText_MysteryGiftBattleCountCard_2:
.string "Thank you for using the MYSTERY\nGIFT System.\pCongratulations!\pYou have won a prize for winning\nthree battles!\pWe hope you will be inspired to\nbattle some more.$"
@@ -169,9 +169,9 @@ MysteryEventScript_AuroraTicket:: @ 867533C
setvaddress MysteryEventScript_AuroraTicket
lock
faceplayer
- checkflag FLAG_0x13A
+ checkflag FLAG_RECEIVED_AURORA_TICKET
vgoto_if 1, AuroraTicket_Obtained
- checkflag FLAG_0x1AD
+ checkflag FLAG_BATTLED_DEOXYS
vgoto_if 1, AuroraTicket_Obtained
checkitem ITEM_AURORA_TICKET, 1
compare_var_to_value VAR_RESULT, 1
@@ -183,8 +183,8 @@ MysteryEventScript_AuroraTicket:: @ 867533C
compare_var_to_value VAR_RESULT, 0
vgoto_if 1, AuroraTicket_NoBagSpace
giveitem_std ITEM_AURORA_TICKET
- setflag FLAG_0x8D5
- setflag FLAG_0x13A
+ setflag FLAG_ENABLE_SHIP_BIRTH_ISLAND
+ setflag FLAG_RECEIVED_AURORA_TICKET
vmessage sText_AuroraTicket2
waitmessage
waitbuttonpress
@@ -207,13 +207,13 @@ AuroraTicket_Obtained: @ 86753A0
sText_AuroraTicket1:
.string "Thank you for using the MYSTERY\nGIFT System.\pYou must be {PLAYER}.\nThere is a ticket here for you.$"
-
+
sText_AuroraTicket2:
.string "It appears to be for use at the\nLILYCOVE CITY port.\pWhy not give it a try and see what\nit is about?$"
-
+
sText_AuroraTicketGot:
.string "Thank you for using the MYSTERY\nGIFT System.$"
-
+
sText_AuroraTicketNoPlace:
.string "Oh, I'm sorry, {PLAYER}.\nYour BAG's KEY ITEMS POCKET is full.\pPlease store something on your PC,\nthen come back for this.$"
@@ -221,11 +221,11 @@ MysteryEventScript_MysticTicket:: @ 867550B
setvaddress MysteryEventScript_MysticTicket
lock
faceplayer
- checkflag FLAG_0x13B
+ checkflag FLAG_RECEIVED_MYSTIC_TICKET
vgoto_if 1, MysticTicket_Obtained
- checkflag FLAG_0x091
+ checkflag FLAG_CAUGHT_LUGIA
vgoto_if 1, MysticTicket_Obtained
- checkflag FLAG_0x092
+ checkflag FLAG_CAUGHT_HO_OH
vgoto_if 1, MysticTicket_Obtained
checkitem ITEM_MYSTIC_TICKET, 1
compare_var_to_value VAR_RESULT, 1
@@ -237,8 +237,8 @@ MysteryEventScript_MysticTicket:: @ 867550B
compare_var_to_value VAR_RESULT, 0
vgoto_if 1, MysticTicket_NoBagSpace
giveitem_std ITEM_MYSTIC_TICKET
- setflag FLAG_0x8E0
- setflag FLAG_0x13B
+ setflag FLAG_ENABLE_SHIP_NAVEL_ROCK
+ setflag FLAG_RECEIVED_MYSTIC_TICKET
vmessage sText_MysticTicket1
waitmessage
waitbuttonpress
@@ -261,13 +261,13 @@ MysticTicket_Obtained: @ 8675578
sText_MysticTicket2:
.string "Thank you for using the MYSTERY\nGIFT System.\pYou must be {PLAYER}.\nThere is a ticket here for you.$"
-
+
sText_MysticTicket1:
.string "It appears to be for use at the\nLILYCOVE CITY port.\pWhy not give it a try and see what\nit is about?$"
-
+
sText_MysticTicketGot:
.string "Thank you for using the MYSTERY\nGIFT System.$"
-
+
sText_MysticTicketNoPlace:
.string "Oh, I'm sorry, {PLAYER}.\nYour BAG's KEY ITEMS POCKET is full.\pPlease store something on your PC,\nthen come back for this.$"
@@ -293,9 +293,9 @@ MysteryEventScript_OldSeaMap:: @ 86757F4
setvaddress MysteryEventScript_OldSeaMap
lock
faceplayer
- checkflag FLAG_0x13C
+ checkflag FLAG_RECEIVED_OLD_SEA_MAP
vgoto_if 1, OldSeaMap_Obtained
- checkflag FLAG_0x1CA
+ checkflag FLAG_CAUGHT_MEW
vgoto_if 1, OldSeaMap_Obtained
checkitem ITEM_OLD_SEA_MAP, 1
compare_var_to_value VAR_RESULT, 1
@@ -307,8 +307,8 @@ MysteryEventScript_OldSeaMap:: @ 86757F4
compare_var_to_value VAR_RESULT, 0
vgoto_if 1, OldSeaMap_NoBagSpace
giveitem_std ITEM_OLD_SEA_MAP
- setflag FLAG_0x8D6
- setflag FLAG_0x13C
+ setflag FLAG_ENABLE_SHIP_FARAWAY_ISLAND
+ setflag FLAG_RECEIVED_OLD_SEA_MAP
vmessage sText_MysteryGiftOldSeaMap_1
waitmessage
waitbuttonpress
diff --git a/data/roulette.s b/data/roulette.s
deleted file mode 100644
index 3cb412084..000000000
--- a/data/roulette.s
+++ /dev/null
@@ -1,928 +0,0 @@
-
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 1
-gUnknown_085B5BFC:: @ 85B5BFC
- .incbin "graphics/roulette/85B5BFC.gbapal"
-
- .align 2
-gUnknown_085B5DFC:: @ 85B5DFC
- .incbin "graphics/roulette/85B5DFC.bin.lz"
-
- .align 2
-gUnknown_085B5FA0:: @ 85B5FA0
- .incbin "graphics/roulette/wheel_map.bin.lz"
-
- .align 2
-gUnknown_085B6140:: @ 85B6140
- .4byte 0x000001f8, 0x00001241, 0x00002a66
-
- .align 2
-gUnknown_085B614C:: @ 85B614C
- window_template 0x00, 0x03, 0x0f, 0x18, 0x04, 0x0f, 0x00c5
-
- .align 2
-gUnknown_085B6154:: @ 85B6154
- .byte 0xFF, 0x00, 0x00, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- .byte 0x0C, 0x14, 0x00, 0x11, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x42, 0x08, 0x01, 0x00, 0x00, 0xE0, 0x00, 0x00
- .byte 0x0D, 0x24, 0x00, 0x14, 0x07, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x84, 0x10, 0x02, 0x00, 0x00, 0xE0, 0x00, 0x00
- .byte 0x0E, 0x34, 0x00, 0x17, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x21, 0x04, 0x00, 0x00, 0xE0, 0x00, 0x00
- .byte 0x0F, 0x44, 0x00, 0x1A, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x42, 0x08, 0x00, 0x00, 0xE0, 0x00, 0x00
- .byte 0x10, 0x03, 0x01, 0x0E, 0x0A, 0x00, 0x0C, 0x00, 0x20, 0x00, 0x00, 0x00, 0xE0, 0x03, 0x00, 0x00, 0x49, 0x02, 0x00, 0x00
- .byte 0x00, 0x1C, 0x01, 0x11, 0x0A, 0x03, 0x03, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x01, 0x20, 0x00, 0x00
- .byte 0x09, 0x2C, 0x01, 0x14, 0x0A, 0x03, 0x03, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00
- .byte 0x06, 0x3C, 0x01, 0x17, 0x0A, 0x03, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00
- .byte 0x03, 0x4C, 0x01, 0x1A, 0x0A, 0x03, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x08, 0x20, 0x00, 0x00
- .byte 0x11, 0x03, 0x02, 0x0E, 0x0D, 0x03, 0x0F, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x92, 0x04, 0x00, 0x00
- .byte 0x04, 0x1C, 0x02, 0x11, 0x0D, 0x06, 0x06, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x10, 0x20, 0x00, 0x00
- .byte 0x01, 0x2C, 0x02, 0x14, 0x0D, 0x06, 0x06, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x02, 0x20, 0x00, 0x00
- .byte 0x0A, 0x3C, 0x02, 0x17, 0x0D, 0x06, 0x06, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00
- .byte 0x07, 0x4C, 0x02, 0x1A, 0x0D, 0x06, 0x06, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x80, 0x20, 0x00, 0x00
- .byte 0x12, 0x03, 0x03, 0x0E, 0x10, 0x06, 0x12, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x0F, 0x00, 0x24, 0x09, 0x00, 0x00
- .byte 0x08, 0x1C, 0x03, 0x11, 0x10, 0x09, 0x09, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x21, 0x00, 0x00
- .byte 0x05, 0x2C, 0x03, 0x14, 0x10, 0x09, 0x09, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20, 0x20, 0x00, 0x00
- .byte 0x02, 0x3C, 0x03, 0x17, 0x10, 0x09, 0x09, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x04, 0x20, 0x00, 0x00
- .byte 0x0B, 0x4C, 0x03, 0x1A, 0x10, 0x09, 0x09, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x28, 0x00, 0x00
-
- .align 2
-gUnknown_085B62E4:: @ 85B62E4
- .byte 0, 1, 6, 0, 64, 0, 0, 0
- .byte 1, 3, 12, 0, 0, 16, 0, 0
- .byte 2, 5, 18, 0, 0, 0, 4, 0
- .byte 3, 7, 9, 0, 0, 2, 0, 0
- .byte 4, 9, 11, 0, 0, 8, 0, 0
- .byte 5, 11, 17, 0, 0, 0, 2, 0
- .byte 6, 13, 8, 0, 0, 1, 0, 0
- .byte 7, 15, 14, 0, 0, 64, 0, 0
- .byte 8, 17, 16, 0, 0, 0, 1, 0
- .byte 9, 19, 7, 0, 128, 0, 0, 0
- .byte 10, 21, 13, 0, 0, 32, 0, 0
- .byte 11, 23, 19, 0, 0, 0, 8, 0
-
-gUnknown_085B6344:: @ 85B6344
- .byte 1, 3
- .byte 1, 6
-
- .align 2
-gUnknown_085B6348:: @ 85B6348
- .byte 0x01, 0x3C, 0x1E, 0x01, 0x01, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x1E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x1B, 0x00, 0x18, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x68, 0x01, 0x00, 0x00, 0x00, 0xBF
- .byte 0x03, 0x1E, 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x3C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x30, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x0E, 0x01, 0x00, 0x00, 0x80, 0xBF
-
- .align 2
-gUnknown_085B6388:: @ 85B6388
- .byte 0x00, 0x80, 0x05, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x0A, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x15, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x55, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x5A, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x65, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x75, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x7A, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x85, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x95, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0x9A, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0x00, 0x80, 0xA5, 0x00, 0x01, 0x01, 0xFF, 0x48
- .byte 0xD6, 0x77, 0x28, 0x00, 0x02, 0x0A, 0xFF, 0x4E
-
- .align 1
-gUnknown_085B63F0:: @ 85B63F0
- .2byte 0x53FF
- .2byte 0x0101
- .2byte 0x1E05
- .2byte 0x4EFF
- .2byte 0x7FFB
- .2byte 0x0106
- .2byte 0x1E05
- .2byte 0x4EFF
- .2byte 0x7F7F
- .2byte 0x010B
- .2byte 0x1E05
- .2byte 0x4EFF
-
- .align 2
-gUnknown_085B6408:: @ 85B6408
- .4byte sub_8142918
- .4byte sub_814297C
-
- .align 2
-gUnknown_085B6410:: @ 85B6410
- .4byte sub_8140968
- .4byte sub_8140994
-
- .align 1
-gUnknown_085B6418:: @ 85B6418
- .2byte 0x2898
- .2byte 0x1A6A
- .2byte 0x2898
-
-gUnknown_085B641E:: @ 85B641E
- .byte 0xFB, 0x05, 0xFF, 0x01
-
- .align 1
-gUnknown_085B6422:: @ 85B6422
- .2byte 0, 180
- .2byte 90, 270
-
- .align 2
-gUnknown_085B642C:: @ 85B642C
- .4byte 0x10842
- .4byte 0x21084
- .4byte 0x42108
- .4byte 0x84210
-
- .align 2
-gUnknown_085B643C:: @ 85B643C
- .4byte 0x3E0
- .4byte 0x7C00
- .4byte 0xF8000
-
-gUnknown_085B6448:: @ 85B6448
- .byte 0, 3, 4, 6, 12
-
- .align 2
-RouletteSpritePalette_01: @ 85B6450
- .incbin "graphics/roulette/shadow.gbapal"
-
- .align 2
-RouletteSpritePalette_02: @ 85B6470
- .incbin "graphics/roulette/ball.gbapal"
-
- .align 2
-RouletteSpritePalette_03: @ 85B6490
- .incbin "graphics/roulette/ball_counter.gbapal"
-
- .align 2
-RouletteSpritePalette_04: @ 85B64B0
- .incbin "graphics/roulette/cursor.gbapal"
-
- .align 2
-RouletteSpritePalette_05: @ 85B64D0
- .incbin "graphics/roulette/credit.gbapal"
-
- .align 2
-RouletteSpritePalette_06: @ 85B64F0
- .incbin "graphics/roulette/shroomish.gbapal"
-
- .align 2
-RouletteSpritePalette_07: @ 85B6510
- .incbin "graphics/roulette/tailow.gbapal"
-
- .align 2
-RouletteSpritePalette_08: @ 85B6530
- .incbin "graphics/roulette/poke_icons.gbapal"
-
- .align 2
-RouletteSpritePalette_09: @ 85B6550
- .incbin "graphics/roulette/wynaut.gbapal"
-
- .align 2
-RouletteSpritePalette_10: @ 85B6570
- .incbin "graphics/roulette/azurill.gbapal"
-
- .align 2
-RouletteSpritePalette_11: @ 85B6590
- .incbin "graphics/roulette/skitty.gbapal"
-
- .align 2
-RouletteSpritePalette_12: @ 85B65B0
- .incbin "graphics/roulette/makuhita.gbapal"
-
- .align 2
-RouletteSpritePalette_13: @ 85B65D0
- .incbin "graphics/roulette/85B65D0.gbapal"
-
- .align 2
-RouletteSpritePalette_14: @ 85B65F0
- .incbin "graphics/roulette/85B65F0.gbapal"
-
- .align 2
-RouletteSpritePalette_15: @ 85B6610
- .incbin "graphics/roulette/85B6610.gbapal"
-
- .align 2
-RouletteSpritePalette_16: @ 85B6630
- .incbin "graphics/roulette/85B6630.gbapal"
-
- .align 2
-gUnknown_085B6650:: @ 85B6650
- .incbin "graphics/roulette/ball.4bpp.lz"
-
- .align 2
-RouletteBallCounterTiles: @ 85B6798
- .incbin "graphics/roulette/ball_counter.4bpp.lz"
-
- .align 2
-gUnknown_085B67FC:: @ 85B67FC
- .incbin "graphics/roulette/roulette_tilt.4bpp.lz"
-
- .align 2
-RoulettePokeIconsTiles: @ 85B6BEC
- .incbin "graphics/roulette/poke_icons.4bpp.lz"
-
- .align 2
-RoulettePokeIcons2Tiles: @ 85B6D90
- .incbin "graphics/roulette/poke_icons2.4bpp.lz"
-
- .align 2
-gUnknown_085B7290:: @ 85B7290
- .incbin "graphics/roulette/shadow.4bpp.lz"
-
- .align 2
-RouletteCursorTiles: @ 85B7328
- .incbin "graphics/roulette/cursor.4bpp.lz"
-
- .align 2
-gUnknown_085B7384:: @ 85B7384
- obj_pal RouletteSpritePalette_01, 1
- obj_pal RouletteSpritePalette_02, 2
- obj_pal RouletteSpritePalette_03, 3
- obj_pal RouletteSpritePalette_04, 4
- obj_pal RouletteSpritePalette_05, 5
- obj_pal RouletteSpritePalette_06, 6
- obj_pal RouletteSpritePalette_07, 7
- obj_pal RouletteSpritePalette_08, 8
- obj_pal RouletteSpritePalette_09, 9
- obj_pal RouletteSpritePalette_10, 10
- obj_pal RouletteSpritePalette_11, 11
- obj_pal RouletteSpritePalette_12, 12
- null_obj_pal
-
- .align 2
-gOamData_85B73EC:: @ 85B73EC
- .2byte 0x0000
- .2byte 0x8000
- .2byte 0x0400
-
- .align 2
-gOamData_85B73F4:: @ 85B73F4
- .2byte 0x0000
- .2byte 0x4000
- .2byte 0x0400
-
- .align 2
-gOamData_85B73FC:: @ 85B73FC
- .2byte 0x833C
- .2byte 0x8000
- .2byte 0x0800
-
- .align 2
-gSpriteAnim_85B7404:: @ 85B7404
- obj_image_anim_frame 0, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B740C:: @ 85B740C
- .4byte gSpriteAnim_85B7404
-
- .align 2
-gSpriteAffineAnim_85B7410:: @ 85B7410
- obj_rot_scal_anim_end
-
- .align 2
-gSpriteAffineAnimTable_85B7418:: @ 85B7418
- .4byte gSpriteAffineAnim_85B7410
-
- .align 2
-gUnknown_085B741C:: @ 85B741C
- obj_tiles RoulettePokeIcons2Tiles, 0xC00, 0
-
- .align 2
-gSpriteAnim_85B7420:: @ 85B7420
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 32, 0
- obj_image_anim_frame 64, 0
- obj_image_anim_frame 72, 0
- obj_image_anim_frame 8, 0
- obj_image_anim_frame 40, 0
- obj_image_anim_frame 48, 0
- obj_image_anim_frame 80, 0
- obj_image_anim_frame 16, 0
- obj_image_anim_frame 24, 0
- obj_image_anim_frame 56, 0
- obj_image_anim_frame 88, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B7458:: @ 85B7458
- .4byte gSpriteAnim_85B7420
-
- .align 2
-gSpriteAnimTable_85B745C:: @ 85B745C
- .4byte gSpriteAnim_85B7420 + 0x4
-
- .align 2
-gSpriteAnimTable_85B7460:: @ 85B7460
- .4byte gSpriteAnim_85B7420 + 0x8
-
- .align 2
-gSpriteAnimTable_85B7464:: @ 85B7464
- .4byte gSpriteAnim_85B7420 + 0xC
-
- .align 2
-gSpriteAnimTable_85B7468:: @ 85B7468
- .4byte gSpriteAnim_85B7420 + 0x10
-
- .align 2
-gSpriteAnimTable_85B746C:: @ 85B746C
- .4byte gSpriteAnim_85B7420 + 0x14
-
- .align 2
-gSpriteAnimTable_85B7470:: @ 85B7470
- .4byte gSpriteAnim_85B7420 + 0x18
-
- .align 2
-gSpriteAnimTable_85B7474:: @ 85B7474
- .4byte gSpriteAnim_85B7420 + 0x1C
-
- .align 2
-gSpriteAnimTable_85B7478:: @ 85B7478
- .4byte gSpriteAnim_85B7420 + 0x20
-
- .align 2
-gSpriteAnimTable_85B747C:: @ 85B747C
- .4byte gSpriteAnim_85B7420 + 0x24
-
- .align 2
-gSpriteAnimTable_85B7480:: @ 85B7480
- .4byte gSpriteAnim_85B7420 + 0x28
-
- .align 2
-gSpriteAnimTable_85B7484:: @ 85B7484
- .4byte gSpriteAnim_85B7420 + 0x2C
-
- .align 2
-gUnknown_085B7488:: @ 85B7488
- obj_tiles gRouletteHeadersTiles, 0x1600, 4
-
- .align 2
-gUnknown_085B7490:: @ 85B7490
- obj_tiles RoulettePokeIconsTiles, 0x400, 5
-
- .align 2
-gSpriteAnim_85B7498:: @ 85B7498
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 16, 0
- obj_image_anim_frame 32, 0
- obj_image_anim_frame 48, 0
- obj_image_anim_frame 64, 0
- obj_image_anim_frame 80, 0
- obj_image_anim_frame 96, 0
- obj_image_anim_frame 112, 0
- obj_image_anim_frame 128, 0
- obj_image_anim_frame 144, 0
- obj_image_anim_frame 160, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B74C8:: @ 85B74C8
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 4, 0
- obj_image_anim_frame 8, 0
- obj_image_anim_frame 12, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B74DC:: @ 85B74DC
- .4byte gSpriteAnim_85B7498
-
- .align 2
-gSpriteAnimTable_85B74E0:: @ 85B74E0
- .4byte gSpriteAnim_85B7498 + 0x8
-
- .align 2
-gSpriteAnimTable_85B74E4:: @ 85B74E4
- .4byte gSpriteAnim_85B7498 + 0x10
-
- .align 2
-gSpriteAnimTable_85B74E8:: @ 85B74E8
- .4byte gSpriteAnim_85B7498 + 0x18
-
- .align 2
-gSpriteAnimTable_85B74EC:: @ 85B74EC
- .4byte gSpriteAnim_85B7498 + 0x20
-
- .align 2
-gSpriteAnimTable_85B74F0:: @ 85B74F0
- .4byte gSpriteAnim_85B7498 + 0x24
-
- .align 2
-gSpriteAnimTable_85B74F4:: @ 85B74F4
- .4byte gSpriteAnim_85B7498 + 0x28
-
- .align 2
-gSpriteAnimTable_85B74F8:: @ 85B74F8
- .4byte gSpriteAnim_85B74C8
-
- .align 2
-gSpriteAnimTable_85B74FC:: @ 85B74FC
- .4byte gSpriteAnim_85B74C8 + 0x4
-
- .align 2
-gSpriteAnimTable_85B7500:: @ 85B7500
- .4byte gSpriteAnim_85B74C8 + 0x8
-
- .align 2
-gSpriteAnimTable_85B7504:: @ 85B7504
- .4byte gSpriteAnim_85B74C8 + 0xC
-
- .align 2
-gSpriteTemplate_85B7508:: @ 85B7508
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74DC, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7520:: @ 85B7520
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74E0, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7538:: @ 85B7538
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74E4, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7550:: @ 85B7550
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74E8, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7568:: @ 85B7568
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74EC, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7580:: @ 85B7580
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74F0, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7598:: @ 85B7598
- spr_template 4, 8, gOamData_85B73EC, gSpriteAnimTable_85B74F4, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B75B0:: @ 85B75B0
- spr_template 5, 8, gOamData_85B73F4, gSpriteAnimTable_85B74F8, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B75C8:: @ 85B75C8
- spr_template 5, 8, gOamData_85B73F4, gSpriteAnimTable_85B74FC, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B75E0:: @ 85B75E0
- spr_template 5, 8, gOamData_85B73F4, gSpriteAnimTable_85B7500, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B75F8:: @ 85B75F8
- spr_template 5, 8, gOamData_85B73F4, gSpriteAnimTable_85B7504, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gSpriteTemplate_85B7610:: @ 85B7610
- spr_template 0, 9, gOamData_85B73FC, gSpriteAnimTable_85B7458, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7628:: @ 85B7628
- spr_template 0, 10, gOamData_85B73FC, gSpriteAnimTable_85B745C, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7640:: @ 85B7640
- spr_template 0, 11, gOamData_85B73FC, gSpriteAnimTable_85B7460, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7658:: @ 85B7658
- spr_template 0, 12, gOamData_85B73FC, gSpriteAnimTable_85B7464, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7670:: @ 85B7670
- spr_template 0, 9, gOamData_85B73FC, gSpriteAnimTable_85B7468, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7688:: @ 85B7688
- spr_template 0, 10, gOamData_85B73FC, gSpriteAnimTable_85B746C, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B76A0:: @ 85B76A0
- spr_template 0, 11, gOamData_85B73FC, gSpriteAnimTable_85B7470, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B76B8:: @ 85B76B8
- spr_template 0, 12, gOamData_85B73FC, gSpriteAnimTable_85B7474, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B76D0:: @ 85B76D0
- spr_template 0, 9, gOamData_85B73FC, gSpriteAnimTable_85B7478, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B76E8:: @ 85B76E8
- spr_template 0, 10, gOamData_85B73FC, gSpriteAnimTable_85B747C, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7700:: @ 85B7700
- spr_template 0, 11, gOamData_85B73FC, gSpriteAnimTable_85B7480, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gSpriteTemplate_85B7718:: @ 85B7718
- spr_template 0, 12, gOamData_85B73FC, gSpriteAnimTable_85B7484, NULL, gDummySpriteAffineAnimTable, sub_8143280
-
- .align 2
-gOamData_85B7730:: @ 85B7730
- .2byte 0x4000
- .2byte 0xC000
- .2byte 0x0400
-
- .align 2
-gOamData_85B7738:: @ 85B7738
- .2byte 0x8000
- .2byte 0x0000
- .2byte 0x0400
-
- .align 2
-gOamData_85B7740:: @ 85B7740
- .2byte 0x4000
- .2byte 0x8000
- .2byte 0x0400
-
- .align 2
-gOamData_85B7748:: @ 85B7748
- .2byte 0x4000
- .2byte 0x0000
- .2byte 0x0400
-
- .align 2
-gUnknown_085B7750:: @ 85B7750
- obj_tiles gRouletteCreditTiles, 0x400, 7
- obj_tiles gRouletteNumbersTiles, 0x280, 8
- obj_tiles gRouletteMultiplierTiles, 0x500, 9
- obj_tiles RouletteBallCounterTiles, 0x140, 10
- obj_tiles RouletteCursorTiles, 0x200, 11
- null_obj_tiles
-
- .align 2
-gSpriteAnim_85B7780:: @ 85B7780
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 2, 0
- obj_image_anim_frame 4, 0
- obj_image_anim_frame 6, 0
- obj_image_anim_frame 8, 0
- obj_image_anim_frame 10, 0
- obj_image_anim_frame 12, 0
- obj_image_anim_frame 14, 0
- obj_image_anim_frame 16, 0
- obj_image_anim_frame 18, 0
-
- .align 2
-gSpriteAnimTable_85B77A8:: @ 85B77A8
- .4byte gSpriteAnim_85B7780
-
- .align 2
-gSpriteAnim_85B77AC:: @ 85B77AC
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 8, 0
- obj_image_anim_frame 16, 0
- obj_image_anim_frame 24, 0
- obj_image_anim_frame 32, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B77C4:: @ 85B77C4
- .4byte gSpriteAnim_85B77AC
-
- .align 2
-gSpriteAnim_85B77C8:: @ 85B77C8
- obj_image_anim_frame 0, 0
- obj_image_anim_frame 2, 0
- obj_image_anim_frame 4, 0
- obj_image_anim_frame 6, 0
- obj_image_anim_frame 8, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B77E0:: @ 85B77E0
- .4byte gSpriteAnim_85B77C8
-
- .align 2
-gSpriteTemplate_85B77E4:: @ 85B77E4
- spr_template 7, 5, gOamData_85B7730, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gUnknown_085B77FC:: @ 85B77FC
- spr_template 8, 5, gOamData_85B7738, gSpriteAnimTable_85B77A8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gUnknown_085B7814:: @ 85B7814
- spr_template 9, 5, gOamData_85B7740, gSpriteAnimTable_85B77C4, NULL, gDummySpriteAffineAnimTable, sub_814390C
-
- .align 2
-gUnknown_085B782C:: @ 85B782C
- spr_template 10, 3, gOamData_85B7748, gSpriteAnimTable_85B77E0, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gUnknown_085B7844:: @ 85B7844
- spr_template 11, 5, gOamData_85B73EC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gOamData_85B785C:: @ 85B785C
- .2byte 0x0000
- .2byte 0x4000
- .2byte 0x0800
-
- .align 2
-gUnknown_085B7864:: @ 85B7864
- obj_tiles gUnknown_085B6650, 0x200, 0xC
-
- .align 2
-gSpriteAnim_85B786C:: @ 85B786C
- obj_image_anim_frame 0, 5
- obj_image_anim_frame 4, 5
- obj_image_anim_frame 8, 5
- obj_image_anim_frame 4, 5
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B7880:: @ 85B7880
- obj_image_anim_frame 0, 10
- obj_image_anim_frame 4, 10
- obj_image_anim_frame 8, 10
- obj_image_anim_frame 4, 10
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B7894:: @ 85B7894
- obj_image_anim_frame 0, 15
- obj_image_anim_frame 4, 15
- obj_image_anim_frame 8, 15
- obj_image_anim_frame 4, 15
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B78A8:: @ 85B78A8
- obj_image_anim_frame 4, 2
- obj_image_anim_frame 8, 5
- obj_image_anim_frame 4, 5
- obj_image_anim_frame 12, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B78BC:: @ 85B78BC
- obj_image_anim_frame 4, 2
- obj_image_anim_frame 0, 4
- obj_image_anim_frame 4, 4
- obj_image_anim_frame 8, 4
- obj_image_anim_frame 12, 4
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B78D4:: @ 85B78D4
- obj_image_anim_frame 0, 2
- obj_image_anim_frame 4, 5
- obj_image_anim_frame 8, 5
- obj_image_anim_frame 12, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B78E8:: @ 85B78E8
- obj_image_anim_frame 12, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B78F0:: @ 85B78F0
- obj_image_anim_frame 8, 2
- obj_image_anim_frame 4, 5
- obj_image_anim_frame 0, 5
- obj_image_anim_frame 12, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B7904:: @ 85B7904
- .4byte gSpriteAnim_85B786C
- .4byte gSpriteAnim_85B7880
- .4byte gSpriteAnim_85B7894
- .4byte gSpriteAnim_85B78A8
- .4byte gSpriteAnim_85B78F0
- .4byte gSpriteAnim_85B78BC
- .4byte gSpriteAnim_85B78D4
- .4byte gSpriteAnim_85B78D4
- .4byte gSpriteAnim_85B78E8
-
- .align 2
-gSpriteTemplate_85B7928:: @ 85B7928
- spr_template 12, 2, gOamData_85B785C, gSpriteAnimTable_85B7904, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gOamData_85B7940:: @ 85B7940
- .2byte 0x0351
- .2byte 0xC000
- .2byte 0x0800
-
- .align 2
-gUnknown_085B7948:: @ 85B7948
- obj_tiles gRouletteCenter_Gfx, 2048, 0x0006
-
- .align 2
-gSpriteTemplate_85B7950:: @ 85B7950
- spr_template 6, 2, gOamData_85B7940, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_814399C
-
- .align 2
-gOamData_85B7968:: @ 85B7968
- .2byte 0x0000
- .2byte 0x8000
- .2byte 0x0800
-
- .align 2
-gOamData_85B7970:: @ 85B7970
- .2byte 0x0000
- .2byte 0x8000
- .2byte 0x0800
-
- .align 2
-gUnknown_085B7978:: @ 85B7978
- obj_tiles gUnknown_085B67FC, 0xE00, 0x000D
-
- .align 2
-gSpriteAnim_85B7980:: @ 85B7980
- obj_image_anim_frame 0x00, 6
- obj_image_anim_frame 0x10, 6
- obj_image_anim_frame 0x20, 6
- obj_image_anim_frame 0x30, 6
- obj_image_anim_frame 0x20, 6
- obj_image_anim_frame 0x40, 6
- obj_image_anim_jump 2
-
- .align 2
-gSpriteAnim_85B799C:: @ 85B799C
- obj_image_anim_frame 0x50, 10
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B79A4:: @ 85B79A4
- obj_image_anim_frame 0x50, 10, OBJ_IMAGE_ANIM_H_FLIP
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B79AC:: @ 85B79AC
- obj_image_anim_frame 0x50, 20
- obj_image_anim_frame 0x60, 20
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B79B8:: @ 85B79B8
- obj_image_anim_frame 0x50, 20, OBJ_IMAGE_ANIM_H_FLIP
- obj_image_anim_frame 0x60, 20, OBJ_IMAGE_ANIM_H_FLIP
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B79C4:: @ 85B79C4
- obj_image_anim_frame 0x50, 10
- obj_image_anim_frame 0x60, 10
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnim_85B79D0:: @ 85B79D0
- obj_image_anim_frame 0x50, 10, OBJ_IMAGE_ANIM_H_FLIP
- obj_image_anim_frame 0x60, 10, OBJ_IMAGE_ANIM_H_FLIP
- obj_image_anim_jump 0
-
- .align 2
-gSpriteAnimTable_85B79DC:: @ 85B79DC
- .4byte gSpriteAnim_85B7980
-
- .align 2
-gSpriteAnimTable_85B79E0:: @ 85B79E0
- .4byte gSpriteAnim_85B799C
- .4byte gSpriteAnim_85B79A4
- .4byte gSpriteAnim_85B79AC
- .4byte gSpriteAnim_85B79B8
- .4byte gSpriteAnim_85B79C4
- .4byte gSpriteAnim_85B79D0
-
- .align 2
-gSpriteTemplate_85B79F8:: @ 85B79F8
- spr_template 13, 6, gOamData_85B7968, gSpriteAnimTable_85B79DC, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_85B7A10:: @ 85B7A10
- spr_template 13, 7, gOamData_85B7970, gSpriteAnimTable_85B79E0, NULL, gDummySpriteAffineAnimTable, sub_8145294
-
- .align 2
-gOamData_85B7A28:: @ 85B7A28
- .2byte 0x0000
- .2byte 0x4000
- .2byte 0x0800
-
- .align 2
-gOamData_85B7A30:: @ 85B7A30
- .2byte 0x4000
- .2byte 0x8000
- .2byte 0x0800
-
- .align 2
-gOamData_85B7A38:: @ 85B7A38
- .2byte 0x4100
- .2byte 0x8000
- .2byte 0x0800
-
- .align 2
-gUnknown_085B7A40:: @ 85B7A40
- obj_tiles gUnknown_085B7290, 0x180, 0x000E
-
- .align 2
-gSpriteAffineAnim_85B7A48:: @ 85B7A48
- obj_rot_scal_anim_frame 0x80, 0x80, 0, 0
- obj_rot_scal_anim_frame 0x2, 0x2, 0, 60
- obj_rot_scal_anim_end
-
- .align 2
-gSpriteAffineAnim_85B7A60:: @ 85B7A60
- obj_rot_scal_anim_frame 0x100, 0x100, 0, 0
- obj_rot_scal_anim_frame 0xFFFE, 0x0, 0, 15
- obj_rot_scal_anim_frame 0xFFFF, 0xFFFE, 0, 15
- obj_rot_scal_anim_frame 0xFFFF, 0xFFFB, 0, 24
- obj_rot_scal_anim_end
-
- .align 2
-gSpriteAffineAnimTable_85B7A88:: @ 85B7A88
- .4byte gSpriteAffineAnim_85B7A48
-
- .align 2
-gSpriteAffineAnimTable_85B7A8C:: @ 85B7A8C
- .4byte gSpriteAffineAnim_85B7A60
-
- .align 2
-gSpriteAffineAnim_85B7A90:: @ 85B7A90
- obj_rot_scal_anim_frame 0x100, 0x100, 0, 0
- obj_rot_scal_anim_end
-
- .align 2
-gSpriteAffineAnimTable_85B7AA0:: @ 85B7AA0
- .4byte gSpriteAffineAnim_85B7A90
-
- .align 2
-gSpriteAnim_85B7AA4:: @ 85B7AA4
- obj_image_anim_frame 0, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_85B7AAC:: @ 85B7AAC
- obj_image_anim_frame 4, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_85B7AB4:: @ 85B7AB4
- .4byte gSpriteAnim_85B7AA4
-
- .align 2
-gSpriteAnimTable_85B7AB8:: @ 85B7AB8
- .4byte gSpriteAnim_85B7AAC
-
- .align 2
-gSpriteTemplate_85B7ABC:: @ 85B7ABC
- spr_template 14, 1, gOamData_85B7A28, gSpriteAnimTable_85B7AB4, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_83FA5D8:: @ 83FA5D8
- spr_template 14, 1, gOamData_85B7A30, gSpriteAnimTable_85B7AB8, NULL, gDummySpriteAffineAnimTable, sub_8144E60
-
- .align 2
-gUnknown_085B7AEC:: @ 85B7AEC
- spr_template 14, 1, gOamData_85B7A38, gSpriteAnimTable_85B7AB8, NULL, gSpriteAffineAnimTable_85B7A8C, sub_8145294
-
-gUnknown_085B7B04:: @ 85B7B04
- .byte 0, 1, 2, 3, 4
-
- .align 1
-gUnknown_085B7B0A:: @ 85B7B0A
- .2byte 0x74, 0x2C
- .2byte 0x74, 0x70
-
- .align 1
-gUnknown_085B7B12:: @ 85B7B12
- .2byte 256, 84
- .2byte -16, 84
-
- .align 1
-gUnknown_085B7B1A:: @ 85B7B1A
- .2byte 0x907
- .2byte 0x808
- .2byte 0x709
- .2byte 0x60A
- .2byte 0x50B
- .2byte 0x40C
- .2byte 0x30D
- .2byte 0x20E
- .2byte 0x10F
- .2byte 0x10
-
- .align 1
-gUnknown_085B7B2E:: @ 85B7B2E
- .2byte -1, 0, 1, 0
- .2byte -2, 0, 2, 0
- .2byte -3, 0, 3, 0
-
-gUnknown_085B7B46:: @ 85B7B46
- .byte -1, 1
-
-gUnknown_085B7B48:: @ 85B7B48
- .byte 2, 0
- .byte 2, 0
- .byte 2, -1
- .byte 2, -1
- .byte 2, -1
- .byte 2, -1
- .byte 2, -2
- .byte 2, -2
diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc
index 034732db2..ac4bd1979 100644
--- a/data/scripts/apprentice.inc
+++ b/data/scripts/apprentice.inc
@@ -33,7 +33,7 @@ EventScript_Apprentice:: @ 82B688D
special CallApprenticeFunction
compare VAR_0x8004, 0
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_2B68BE
- goto_if_set FLAG_0x934, Script_Apprentice_ReleaseAndEnd
+ goto_if_set FLAG_DAILY_APPRENTICE_LEAVES, Script_Apprentice_ReleaseAndEnd
BattleFrontier_BattleTowerLobby_EventScript_2B68BE:
setvar VAR_0x8004, 11
@@ -289,7 +289,7 @@ BattleFrontier_BattleTowerLobby_EventScript_2B6DD4:
Script_Apprentice_SetLeavingFlags:
setflag FLAG_HIDE_APPRENTICE
- setflag FLAG_0x934
+ setflag FLAG_DAILY_APPRENTICE_LEAVES
return
Script_Apprentice_LeaveGoRight:
diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc
index 927d61439..f85ebd3d2 100644
--- a/data/scripts/contest_hall.inc
+++ b/data/scripts/contest_hall.inc
@@ -3,8 +3,8 @@ LilycoveCity_ContestLobby_EventScript_279CC5:: @ 8279CC5
faceplayer
compare VAR_0x408A, 0
goto_if_ne LilycoveCity_ContestLobby_EventScript_279D13
- call_if_set FLAG_0x05F, LilycoveCity_ContestLobby_EventScript_279CEA
- call_if_unset FLAG_0x05F, LilycoveCity_ContestLobby_EventScript_279CF3
+ call_if_set FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_279CEA
+ call_if_unset FLAG_RECEIVED_POKEBLOCK_CASE, LilycoveCity_ContestLobby_EventScript_279CF3
goto LilycoveCity_ContestLobby_EventScript_279D5A
end
@@ -15,7 +15,7 @@ LilycoveCity_ContestLobby_EventScript_279CEA:: @ 8279CEA
LilycoveCity_ContestLobby_EventScript_279CF3:: @ 8279CF3
msgbox LilycoveCity_ContestLobby_Text_27ADA7, MSGBOX_DEFAULT
giveitem_std ITEM_POKEBLOCK_CASE
- setflag FLAG_0x05F
+ setflag FLAG_RECEIVED_POKEBLOCK_CASE
msgbox LilycoveCity_ContestLobby_Text_27AE47, MSGBOX_DEFAULT
return
@@ -1131,7 +1131,7 @@ LinkContestRoom1_EventScript_27ABCD:: @ 827ABCD
return
LinkContestRoom1_EventScript_27ABCE:: @ 827ABCE
- setflag FLAG_0x10E
+ setflag FLAG_CONTEST_SKETCH_CREATED
return
LinkContestRoom1_EventScript_27ABD2:: @ 827ABD2
diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc
index 166134abf..eb29ef6e0 100644
--- a/data/scripts/players_house.inc
+++ b/data/scripts/players_house.inc
@@ -59,12 +59,12 @@ LittlerootTown_MaysHouse_2F_EventScript_29278D:: @ 829278D
LittlerootTown_BrendansHouse_2F_EventScript_292799:: @ 8292799
LittlerootTown_MaysHouse_2F_EventScript_292799:: @ 8292799
- goto_if_set FLAG_0x051, LittlerootTown_BrendansHouse_2F_EventScript_29283F
+ goto_if_set FLAG_SET_WALL_CLOCK, LittlerootTown_BrendansHouse_2F_EventScript_29283F
msgbox LittlerootTown_BrendansHouse_2F_Text_1F8668, MSGBOX_DEFAULT
call LittlerootTown_BrendansHouse_2F_EventScript_292849
delay 30
setvar VAR_0x4092, 6
- setflag FLAG_0x051
+ setflag FLAG_SET_WALL_CLOCK
setflag FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1
setflag FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2
checkplayergender
@@ -318,7 +318,7 @@ LittlerootTown_MaysHouse_1F_EventScript_2929C5:: @ 82929C5
compare VAR_0x408C, 4
goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292A0F
goto_if_set FLAG_HAS_MATCH_CALL, LittlerootTown_BrendansHouse_1F_EventScript_292A19
- goto_if_set FLAG_0x052, LittlerootTown_BrendansHouse_1F_EventScript_292A86
+ goto_if_set FLAG_RESCUED_BIRCH, LittlerootTown_BrendansHouse_1F_EventScript_292A86
compare VAR_TEMP_1, 1
goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292A94
compare VAR_0x4092, 7
@@ -333,7 +333,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_292A0F:: @ 8292A0F
end
LittlerootTown_BrendansHouse_1F_EventScript_292A19:: @ 8292A19
- goto_if_set FLAG_0x0D8, LittlerootTown_BrendansHouse_1F_EventScript_292A43
+ goto_if_set FLAG_ENABLE_MOM_MATCH_CALL, LittlerootTown_BrendansHouse_1F_EventScript_292A43
msgbox LittlerootTown_BrendansHouse_1F_Text_1F7E0E, MSGBOX_DEFAULT
closemessage
delay 30
@@ -342,7 +342,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_292A19:: @ 8292A19
waitfanfare
closemessage
delay 30
- setflag FLAG_0x0D8
+ setflag FLAG_ENABLE_MOM_MATCH_CALL
release
end
@@ -351,13 +351,13 @@ LittlerootTown_BrendansHouse_1F_EventScript_292A43:: @ 8292A43
goto LittlerootTown_BrendansHouse_1F_EventScript_292A86
LittlerootTown_BrendansHouse_1F_EventScript_292A51:: @ 8292A51
- goto_if_set FLAG_0x085, LittlerootTown_BrendansHouse_1F_EventScript_292A86
+ goto_if_set FLAG_MOM_SAYS_GOODBYE, LittlerootTown_BrendansHouse_1F_EventScript_292A86
msgbox LittlerootTown_BrendansHouse_1F_Text_1F7D73, MSGBOX_DEFAULT
giveitem_std ITEM_AMULET_COIN
compare VAR_RESULT, 0
goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_272054
msgbox LittlerootTown_BrendansHouse_1F_Text_1F7DBE, MSGBOX_DEFAULT
- setflag FLAG_0x085
+ setflag FLAG_MOM_SAYS_GOODBYE
release
end
@@ -475,7 +475,7 @@ LittlerootTown_MaysHouse_1F_EventScript_292AF2:: @ 8292AF2
call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292CEF
playse SE_DOOR
removeobject VAR_0x8009
- setflag FLAG_0x123
+ setflag FLAG_RECEIVED_SS_TICKET
delay 30
compare VAR_0x8008, 0
call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292D48
@@ -484,7 +484,7 @@ LittlerootTown_MaysHouse_1F_EventScript_292AF2:: @ 8292AF2
delay 20
msgbox LittlerootTown_BrendansHouse_1F_Text_1F81B9, MSGBOX_DEFAULT
closemessage
- setflag FLAG_SYS_TV_LATI
+ setflag FLAG_SYS_TV_LATIAS_LATIOS
special TurnOnTVScreen
delay 60
compare VAR_0x8008, 0
@@ -499,8 +499,8 @@ LittlerootTown_MaysHouse_1F_EventScript_292AF2:: @ 8292AF2
call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292D33
msgbox LittlerootTown_BrendansHouse_1F_Text_1F826F, MSGBOX_DEFAULT
closemessage
- clearflag FLAG_SYS_TV_LATI
- setflag FLAG_0x0FF
+ clearflag FLAG_SYS_TV_LATIAS_LATIOS
+ setflag FLAG_LATIOS_OR_LATIAS_ROAMING
special TurnOffTVScreen
compare VAR_0x8008, 0
call_if_eq LittlerootTown_BrendansHouse_1F_EventScript_292D88
@@ -519,7 +519,7 @@ LittlerootTown_MaysHouse_1F_EventScript_292AF2:: @ 8292AF2
end
LittlerootTown_BrendansHouse_1F_EventScript_292C72:: @ 8292C72
- setflag FLAG_SYS_TV_LATI
+ setflag FLAG_SYS_TV_LATIAS_LATIOS
return
LittlerootTown_BrendansHouse_1F_EventScript_292C76:: @ 8292C76
diff --git a/data/scripts/pokeblocks.inc b/data/scripts/pokeblocks.inc
index 834fc38a2..05b468e23 100644
--- a/data/scripts/pokeblocks.inc
+++ b/data/scripts/pokeblocks.inc
@@ -265,7 +265,7 @@ EventScript_Pblock1_No: @ 8293C70
EventScript_Pblock1_NoBerries: @ 8293C7A
msgbox Text_Pblock1_NoBerries, MSGBOX_DEFAULT
dodailyevents
- goto_if_set FLAG_0x921, LilycoveCity_ContestLobby_EventScript_293C92
+ goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, LilycoveCity_ContestLobby_EventScript_293C92
goto LilycoveCity_ContestLobby_EventScript_293C9C
end
@@ -277,7 +277,7 @@ LilycoveCity_ContestLobby_EventScript_293C92: @ 8293C92
LilycoveCity_ContestLobby_EventScript_293C9C: @ 8293C9C
msgbox LilycoveCity_ContestLobby_Text_292FD1, MSGBOX_DEFAULT
giveitem_std ITEM_PECHA_BERRY
- setflag FLAG_0x921
+ setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY
goto EventScript_Pblock1_KnowHow
end
@@ -552,7 +552,7 @@ LilycoveCity_ContestLobby_EventScript_293FF8: @ 8293FF8
compare VAR_RESULT, 65535
goto_if_eq LilycoveCity_ContestLobby_EventScript_294028
dodailyevents
- goto_if_set FLAG_0x921, LilycoveCity_ContestLobby_EventScript_294028
+ goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, LilycoveCity_ContestLobby_EventScript_294028
goto LilycoveCity_ContestLobby_EventScript_294032
end
@@ -564,7 +564,7 @@ LilycoveCity_ContestLobby_EventScript_294028: @ 8294028
LilycoveCity_ContestLobby_EventScript_294032: @ 8294032
msgbox LilycoveCity_ContestLobby_Text_293AF0, MSGBOX_DEFAULT
giveitem_std ITEM_PECHA_BERRY
- setflag FLAG_0x921
+ setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY
msgbox LilycoveCity_ContestLobby_Text_293B76, MSGBOX_DEFAULT
release
end
diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc
index ff5e53a06..db8aece85 100644
--- a/data/scripts/secret_base.inc
+++ b/data/scripts/secret_base.inc
@@ -455,7 +455,7 @@ SecretBase_RedCave1_EventScript_275B81:: @ 8275B81
SecretBase_RedCave1_EventScript_275BAB:: @ 8275BAB
closemessage
- setflag FLAG_0x060
+ setflag FLAG_RECEIVED_SECRET_POWER
special sub_80E91F8
waitstate
end
diff --git a/data/scripts/secret_power_tm.inc b/data/scripts/secret_power_tm.inc
index 072d154f0..ed7216357 100644
--- a/data/scripts/secret_power_tm.inc
+++ b/data/scripts/secret_power_tm.inc
@@ -49,7 +49,7 @@ Route111_EventScript_27661E:: @ 827661E
goto_if_eq Route111_EventScript_276680
msgbox Route111_Text_27636E, MSGBOX_DEFAULT
closemessage
- setflag FLAG_0x060
+ setflag FLAG_RECEIVED_SECRET_POWER
clearflag FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN
compare VAR_FACING, 3
call_if_eq Route111_EventScript_27666A
diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc
index 0b1224503..acc75f76a 100644
--- a/data/scripts/tv.inc
+++ b/data/scripts/tv.inc
@@ -43,8 +43,8 @@ EventScript_27EE9A:: @ 827EE9A
EventScript_27EEA4:: @ 827EEA4
msgbox LittlerootTown_BrendansHouse_1F_Text_1F826F, MSGBOX_DEFAULT
special InitRoamer
- clearflag FLAG_SYS_TV_LATI
- setflag FLAG_0x0FF
+ clearflag FLAG_SYS_TV_LATIAS_LATIOS
+ setflag FLAG_LATIOS_OR_LATIAS_ROAMING
special TurnOffTVScreen
releaseall
end
diff --git a/data/specials.inc b/data/specials.inc
index dd8a51b34..5ac4930c7 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -173,7 +173,7 @@ gSpecials:: @ 81DBA64
def_special sub_81B94B0
def_special GetFirstFreePokeblockSlot
def_special DoBerryBlending
- def_special sub_8142BC8
+ def_special PlayRoulette
def_special ShouldMoveLilycoveFanClubMember
def_special GetNumMovedLilycoveFanClubMembers
def_special BufferStreakTrainerText
diff --git a/data/text/match_call.inc b/data/text/match_call.inc
new file mode 100644
index 000000000..b25b72ebf
--- /dev/null
+++ b/data/text/match_call.inc
@@ -0,0 +1,2953 @@
+MatchCall_WildBattleText1:: @ 82A971C
+ .string "Hi! {PLAYER}{STRING 5}, hello!\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I saw this {STR_VAR_2} a while back\n"
+ .string "but I couldn't catch it.\p"
+ .string "It was so close, too!\n"
+ .string "Well, see you again!$"
+
+MatchCall_WildBattleText2:: @ 82A9798
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "I tried to catch a nice {STR_VAR_2}\n"
+ .string "a little while ago.\p"
+ .string "But, it got away.\n"
+ .string "I was sure disappointed!\p"
+ .string "Okay, bye!$"
+
+MatchCall_WildBattleText3:: @ 82A9813
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I just took a shot at catching\n"
+ .string "this {STR_VAR_2}, but it took off.\p"
+ .string "I came oh so close, too!\p"
+ .string "It spoiled my day…\n"
+ .string "All right, see you!$"
+
+MatchCall_WildBattleText4:: @ 82A98A8
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "You know the POKéMON {STR_VAR_2}?\n"
+ .string "I came close to getting one.\p"
+ .string "It was just a while back.\n"
+ .string "I thought I had it but it escaped.\p"
+ .string "If I see it again, I'll get it for\n"
+ .string "sure, though.\p"
+ .string "Okay, catch you later.$"
+
+MatchCall_WildBattleText5:: @ 82A9977
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\l"
+ .string "Catching any POKéMON lately?\p"
+ .string "A little while ago I came close to\n"
+ .string "nabbing one, but it got loose.\p"
+ .string "Right, take care!$"
+
+MatchCall_WildBattleText6:: @ 82A99FD
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\l"
+ .string "Caught any POKéMON lately?\p"
+ .string "I nearly nabbed one the other day.\n"
+ .string "But it evaded me somehow.\p"
+ .string "You take care.$"
+
+MatchCall_WildBattleText7:: @ 82A9A78
+ .string "…Uh, {PLAYER}{STRING 5}?\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "Oh, wait! Wait!\n"
+ .string "I can catch this {STR_VAR_2}…\p"
+ .string "Aaarrrgh! It bolted loose!\n"
+ .string "That wasn't just close!$"
+
+MatchCall_WildBattleText8:: @ 82A9AE8
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\p"
+ .string "Have you had success catching\n"
+ .string "POKéMON lately?\p"
+ .string "I came very close a little while\n"
+ .string "ago, but my target got free.\p"
+ .string "I need to try harder!\n"
+ .string "See you again!$"
+
+MatchCall_WildBattleText9:: @ 82A9BA7
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "So? Are you getting more POKéMON\n"
+ .string "together?\p"
+ .string "I'm having a rotten time of it!\n"
+ .string "They all get away from me!\p"
+ .string "See you!$"
+
+MatchCall_WildBattleText10:: @ 82A9C36
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Listen, I came within a whisker of\n"
+ .string "catching this {STR_VAR_2}…\p"
+ .string "But, it gave me the slip…\p"
+ .string "I need to try harder.\n"
+ .string "See you around.$"
+
+MatchCall_WildBattleText11:: @ 82A9CC8
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "How are things with you?\p"
+ .string "I tried to catch a wild {STR_VAR_2}\n"
+ .string "earlier, but it managed to flee.\p"
+ .string "I feel defeated…$"
+
+MatchCall_WildBattleText12:: @ 82A9D44
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you still catching POKéMON?\p"
+ .string "I've been trying to catch them\n"
+ .string "myself, but it's not so easy.\p"
+ .string "The way of POKéMON is deep!$"
+
+MatchCall_WildBattleText13:: @ 82A9DD7
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "Have you been catching POKéMON?\p"
+ .string "I've been trying to catch them\n"
+ .string "myself, but with little success.\p"
+ .string "The way of POKéMON is deep!$"
+
+MatchCall_WildBattleText14:: @ 82A9E70
+ .string "Oh, hi, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Just now, I tried to catch a cute\n"
+ .string "{STR_VAR_2}.\p"
+ .string "It got away, though!\n"
+ .string "Oh, you bet I was disappointed!\p"
+ .string "Bye-bye!$"
+
+MatchCall_WildBattleText15:: @ 82A9EFD
+ .string "Hey, {PLAYER}!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I've been thinking about trying\n"
+ .string "to catch me some POKéMON.\p"
+ .string "But I can't seem to find any.\n"
+ .string "It's a real puzzler for me!\p"
+ .string "I'm at my wit's end!\n"
+ .string "See you around!$"
+
+MatchCall_NegativeBattleText1:: @ 82A9FAB
+ .string "Hi! {PLAYER}{STRING 5}, hello!\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I tried battling another TRAINER,\n"
+ .string "but I lost.\p"
+ .string "It was really disappointing.\n"
+ .string "Well, see you again!$"
+
+MatchCall_NegativeBattleText2:: @ 82AA028
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "I challenged someone else after\n"
+ .string "we battled.\p"
+ .string "I came close, but I ended up\n"
+ .string "losing. Oh, well!$"
+
+MatchCall_NegativeBattleText3:: @ 82AA099
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I just got cleaned in a battle.\p"
+ .string "I guess I need to raise my team\n"
+ .string "some more!$"
+
+MatchCall_NegativeBattleText4:: @ 82AA100
+ .string "Hey, {PLAYER}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "I tried another battle yesterday,\n"
+ .string "but I couldn't pull out the win.\p"
+ .string "My team needs more raising.\n"
+ .string "Okay, catch you later.$"
+
+MatchCall_NegativeBattleText5:: @ 82AA188
+ .string "Hiya, {PLAYER}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "How are things with you?\p"
+ .string "I've been battling on,\n"
+ .string "but I haven't won very often.\p"
+ .string "I can't get it together.\n"
+ .string "Right, take care!$"
+
+MatchCall_NegativeBattleText6:: @ 82AA214
+ .string "Hey, {PLAYER}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "How's it going for you?\p"
+ .string "I've been battling hard lately,\n"
+ .string "but to little success.\p"
+ .string "I can't get into the groove.\n"
+ .string "You take care.$"
+
+MatchCall_NegativeBattleText7:: @ 82AA2A1
+ .string "{STR_VAR_1} here.\n"
+ .string "How's it going lately?\p"
+ .string "I lost a battle yesterday,\n"
+ .string "and it's filled my thoughts.\p"
+ .string "I have to devise a plan…\n"
+ .string "See you.$"
+
+MatchCall_NegativeBattleText8:: @ 82AA31B
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\p"
+ .string "How are your POKéMON doing?\n"
+ .string "I lost a match the other day.\p"
+ .string "I need to try harder!\n"
+ .string "See you again!$"
+
+MatchCall_NegativeBattleText9:: @ 82AA3A8
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "Listen, listen, you have to hear\n"
+ .string "this!\p"
+ .string "I had a POKéMON battle earlier,\n"
+ .string "but I lost at the last second.\p"
+ .string "Oh, it burns me up!$"
+
+MatchCall_NegativeBattleText10:: @ 82AA442
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "A little earlier, I was in a battle.\n"
+ .string "I lost, though.\p"
+ .string "I need to raise my POKéMON more.\n"
+ .string "See you around.$"
+
+MatchCall_NegativeBattleText11:: @ 82AA4C5
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "How are your POKéMON?\p"
+ .string "I just lost yet another battle.\p"
+ .string "Well, see you!$"
+
+MatchCall_NegativeBattleText12:: @ 82AA520
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you still battling hard?\p"
+ .string "As for me, I lost recently, so I've\n"
+ .string "been training my team all over.\p"
+ .string "Let's meet again.$"
+
+MatchCall_NegativeBattleText13:: @ 82AA5AD
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I hope you've been keeping well.\p"
+ .string "I was in a battle just a little\n"
+ .string "while before this.\p"
+ .string "{PLAYER}{STRING 5}, try to be active like me.\n"
+ .string "See you again!$"
+
+MatchCall_NegativeBattleText14:: @ 82AA64D
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Are you doing good?\p"
+ .string "You should go home every so often,\n"
+ .string "though.\p"
+ .string "Bye-bye!$"
+
+MatchCall_PositiveBattleText1:: @ 82AA6AF
+ .string "Hi! {PLAYER}{STRING 5}, hello!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I battled another TRAINER earlier.\n"
+ .string "I won! I won!\p"
+ .string "My {STR_VAR_2} really worked hard\n"
+ .string "for me. This is so great!$"
+
+MatchCall_PositiveBattleText2:: @ 82AA730
+ .string "Hello, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}!\p"
+ .string "I had a battle yesterday and\n"
+ .string "I won! It's fantastic!$"
+
+MatchCall_PositiveBattleText3:: @ 82AA77A
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}!\l"
+ .string "How's your battling?\p"
+ .string "Me, I had a battle the other day,\n"
+ .string "and my {STR_VAR_2} came up huge!\p"
+ .string "The next time I battle you,\n"
+ .string "{PLAYER}, it won't be me losing!$"
+
+MatchCall_PositiveBattleText4:: @ 82AA81C
+ .string "Hey, {PLAYER}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "I had a match earlier.\n"
+ .string "I managed to win, but it was close.\p"
+ .string "My {STR_VAR_2} put on one\n"
+ .string "inspired showing.$"
+
+MatchCall_PositiveBattleText5:: @ 82AA88C
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "How are things with you?\n"
+ .string "Battling much?\p"
+ .string "I just won a while back!\n"
+ .string "My {STR_VAR_2} was brilliant!\p"
+ .string "You wait. I'm going to beat you\n"
+ .string "next time! Right, take care!$"
+
+MatchCall_PositiveBattleText6:: @ 82AA934
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "How's it going for you?\p"
+ .string "I've been riding a hot streak.\n"
+ .string "Why, I just won a battle.\p"
+ .string "When we have our next battle,\n"
+ .string "I'm sure not going to lose!$"
+
+MatchCall_PositiveBattleText7:: @ 82AA9D3
+ .string "{PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "My {STR_VAR_2} is a force!\n"
+ .string "It won me another battle just now!\p"
+ .string "I can't wait to have a rematch\n"
+ .string "with you.$"
+
+MatchCall_PositiveBattleText8:: @ 82AAA40
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\p"
+ .string "I hope you've been well.\n"
+ .string "I wanted to tell you I just won.\p"
+ .string "My {STR_VAR_2} worked especially\n"
+ .string "hard to get the win.\p"
+ .string "See you again!$"
+
+MatchCall_PositiveBattleText9:: @ 82AAAE4
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "How are your POKéMON holding up?\n"
+ .string "Mine just won a battle!\p"
+ .string "My {STR_VAR_2} was spectacular,\n"
+ .string "I must say!\p"
+ .string "I wish I could've shown you!\n"
+ .string "See you again!$"
+
+MatchCall_PositiveBattleText10:: @ 82AAB8C
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "How has life been treating you?\p"
+ .string "My POKéMON appear to be charged\n"
+ .string "with energy.\p"
+ .string "I just won a battle with them.\n"
+ .string "See you around.$"
+
+MatchCall_PositiveBattleText11:: @ 82AAC25
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Been in any battles lately?\n"
+ .string "I just won another one today!\p"
+ .string "I'm on a roll! Gahahaha!\n"
+ .string "Well, see you!$"
+
+MatchCall_PositiveBattleText12:: @ 82AAC9D
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I trust you've been well?\n"
+ .string "I'm still bursting with life!\p"
+ .string "Why, just now, I won another match.\n"
+ .string "I'm not stepping aside to you\l"
+ .string "youngsters yet!$"
+
+MatchCall_PositiveBattleText13:: @ 82AAD41
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I hope you've been keeping well.\n"
+ .string "I still have a bounce in my step!\p"
+ .string "Why, I just won a battle yet again.\n"
+ .string "Oh, I won't lose to young people\l"
+ .string "quite yet!\p"
+ .string "See you again!$"
+
+MatchCall_PositiveBattleText14:: @ 82AAE00
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I was in a battle recently, and my\n"
+ .string "{STR_VAR_2} was exceptional!\p"
+ .string "I wish you could have seen it,\n"
+ .string "{PLAYER}{STRING 5}. Bye-bye!$"
+
+MatchCall_SameRouteBattleRequestText1:: @ 82AAE7F
+ .string "Hi! {PLAYER}, hello!\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Huh? Wait, you're near\n"
+ .string "{STR_VAR_2}?\p"
+ .string "Oh, wow, we have to battle, then!\n"
+ .string "I'll be waiting! See you!$"
+
+MatchCall_SameRouteBattleRequestText2:: @ 82AAEF1
+ .string "Hello, {PLAYER}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "Oh? You happen to be around\n"
+ .string "{STR_VAR_2} right now?\p"
+ .string "Would you like to battle now?\n"
+ .string "I'll wait for you! See you!$"
+
+MatchCall_SameRouteBattleRequestText3:: @ 82AAF69
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "Oh, hey, are you near\n"
+ .string "{STR_VAR_2} right now?\p"
+ .string "How would you like to battle with\n"
+ .string "me right now?\p"
+ .string "I'm not losing again!\n"
+ .string "I'll be waiting! Catch you soon!$"
+
+MatchCall_SameRouteBattleRequestText4:: @ 82AB010
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "Whereabouts are you now?\n"
+ .string "Huh? {STR_VAR_2}?\p"
+ .string "Want to battle now?\n"
+ .string "I'll wait for you. See you!$"
+
+MatchCall_SameRouteBattleRequestText5:: @ 82AB076
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\l"
+ .string "How are things with you?\p"
+ .string "You're where now?\n"
+ .string "{STR_VAR_2}?\p"
+ .string "Well, how about we have a quick\n"
+ .string "rematch right away?\p"
+ .string "I'll keep an eye out for you.\n"
+ .string "See you soon!$"
+
+MatchCall_SameRouteBattleRequestText6:: @ 82AB11A
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\l"
+ .string "How are your POKéMON keeping?\p"
+ .string "Oh, is that right? You're around\n"
+ .string "{STR_VAR_2}?\p"
+ .string "Well, then, we'd better have\n"
+ .string "a rematch.\p"
+ .string "I can wait, sure.\n"
+ .string "See you!$"
+
+MatchCall_SameRouteBattleRequestText7:: @ 82AB1B4
+ .string "…Er, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here…\p"
+ .string "Oh, you happen to be around\n"
+ .string "{STR_VAR_2}?\p"
+ .string "Then, let's battle.\n"
+ .string "Right away, I mean.\p"
+ .string "I'll show you my POKéMON.\n"
+ .string "I'll wait for you.$"
+
+MatchCall_SameRouteBattleRequestText8:: @ 82AB23D
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\p"
+ .string "I hope you're doing well.\n"
+ .string "Oh, you're near {STR_VAR_2}.\p"
+ .string "Would you like to have a battle\n"
+ .string "with me, then?\p"
+ .string "I'll wait for you.\n"
+ .string "See you soon!$"
+
+MatchCall_SameRouteBattleRequestText9:: @ 82AB2E9
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "Are you keeping up?\n"
+ .string "Oh, you're near {STR_VAR_2}?\p"
+ .string "Oh, well, then don't you think we\n"
+ .string "should battle?\p"
+ .string "Don't keep me waiting too long!$"
+
+MatchCall_SameRouteBattleRequestText10:: @ 82AB382
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "How are things with you?\n"
+ .string "Oh, you're near {STR_VAR_2}.\p"
+ .string "We should have a battle now, then.\p"
+ .string "I'm ready and waiting.\n"
+ .string "Be quick!$"
+
+MatchCall_SameRouteBattleRequestText11:: @ 82AB410
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Ah, so where you are now is\n"
+ .string "{STR_VAR_2}?\p"
+ .string "Well, then, we just have to have\n"
+ .string "a battle, don't you think?\p"
+ .string "I'll wait around for you!\n"
+ .string "See you real quick!$"
+
+MatchCall_SameRouteBattleRequestText12:: @ 82AB4B0
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Where might you be now?\p"
+ .string "{STR_VAR_2}?\n"
+ .string "That's quite close by!\p"
+ .string "What do you say we have a battle\n"
+ .string "now?\p"
+ .string "I can wait.\n"
+ .string "See you!$"
+
+MatchCall_SameRouteBattleRequestText13:: @ 82AB538
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I hope you've been keeping well.\n"
+ .string "Oh, you're near {STR_VAR_2}?\p"
+ .string "Since that's not very far away,\n"
+ .string "come see me for a battle.\p"
+ .string "I'll wait for you.\n"
+ .string "Bye for now.$"
+
+MatchCall_SameRouteBattleRequestText14:: @ 82AB5E4
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You're what? …{STR_VAR_2}?\n"
+ .string "That's very close.\p"
+ .string "Don't you think we ought to have\n"
+ .string "a battle?\p"
+ .string "I'll be looking for you!\n"
+ .string "Bye-bye!$"
+
+MatchCall_DifferentRouteBattleRequestText1:: @ 82AB670
+ .string "Hi! {PLAYER}, hello!\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "Want to have a battle with me?\p"
+ .string "I'll be waiting for you around\n"
+ .string "{STR_VAR_2}!$"
+
+MatchCall_DifferentRouteBattleRequestText2:: @ 82AB6CD
+ .string "Hello, {PLAYER}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "Would you like to have a battle\n"
+ .string "with me again?\p"
+ .string "You can find me around\n"
+ .string "{STR_VAR_2}. I'll be waiting!$"
+
+MatchCall_DifferentRouteBattleRequestText3:: @ 82AB73C
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "My POKéMON have grown a lot\n"
+ .string "tougher since last time.\p"
+ .string "I want to see how strong they've\n"
+ .string "become with your POKéMON, {PLAYER}.\p"
+ .string "So, let's have a battle!\p"
+ .string "I'll be waiting for you around\n"
+ .string "{STR_VAR_2}.$"
+
+MatchCall_DifferentRouteBattleRequestText4:: @ 82AB808
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\l"
+ .string "How are things with you?\p"
+ .string "My POKéMON have grown pretty\n"
+ .string "tough lately.\p"
+ .string "Hey, how would you like to have\n"
+ .string "another battle with me?\p"
+ .string "Let's meet up around\n"
+ .string "{STR_VAR_2}, okay?$"
+
+MatchCall_DifferentRouteBattleRequestText5:: @ 82AB8B7
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "My POKéMON are growing up in\n"
+ .string "decent ways.\p"
+ .string "I'd really like to have another\n"
+ .string "battle with you.\p"
+ .string "I'll keep an eye out for you around\n"
+ .string "{STR_VAR_2}. See you soon!$"
+
+MatchCall_DifferentRouteBattleRequestText6:: @ 82AB95D
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\l"
+ .string "I hope you're on top of things.\p"
+ .string "I was thinking I'd like another\n"
+ .string "battle with you. What do you say?\p"
+ .string "If you feel like a battle,\n"
+ .string "come to {STR_VAR_2}.\p"
+ .string "See you!$"
+
+MatchCall_DifferentRouteBattleRequestText7:: @ 82ABA03
+ .string "…Er, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here…\l"
+ .string "So? Are your POKéMON growing?\p"
+ .string "Mine sure got stronger.\n"
+ .string "I'd like to show you.\p"
+ .string "I'll be around {STR_VAR_2}.\n"
+ .string "Come see me for a match.\p"
+ .string "See you around.$"
+
+MatchCall_DifferentRouteBattleRequestText8:: @ 82ABA9F
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\p"
+ .string "I hope you're doing well.\n"
+ .string "My POKéMON are very frisky.\p"
+ .string "If you're ever in the area, please\n"
+ .string "give me a rematch.\p"
+ .string "I'll be around {STR_VAR_2}.\n"
+ .string "Until then, good-bye!$"
+
+MatchCall_DifferentRouteBattleRequestText9:: @ 82ABB62
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "How are your POKéMON doing?\p"
+ .string "My POKéMON keep getting better.\n"
+ .string "I'd like to show you, {PLAYER}{STRING 5}.\p"
+ .string "I'm around {STR_VAR_2} now,\n"
+ .string "so let's battle if you're close by.\p"
+ .string "Hope I see you soon!$"
+
+MatchCall_DifferentRouteBattleRequestText10:: @ 82ABC26
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "So, how are things with you?\p"
+ .string "My POKéMON have grown much\n"
+ .string "stronger than before.\p"
+ .string "I'd love another battle with you,\n"
+ .string "{PLAYER}{STRING 5}.\p"
+ .string "I'll be around {STR_VAR_2}.\n"
+ .string "Come see me if you're close.$"
+
+MatchCall_DifferentRouteBattleRequestText11:: @ 82ABCE9
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "Where might you be now?\p"
+ .string "My POKéMON are full of life.\n"
+ .string "They appear to be looking forward\l"
+ .string "to seeing your POKéMON, {PLAYER}{STRING 5}.\p"
+ .string "I'm around {STR_VAR_2} now.\n"
+ .string "I hope you'll seek us out.$"
+
+MatchCall_DifferentRouteBattleRequestText12:: @ 82ABDA2
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I should tell you, my POKéMON have\n"
+ .string "grown to be quite robust lately.\p"
+ .string "I would like to see them in a battle\n"
+ .string "with you, {PLAYER}{STRING 5}.\p"
+ .string "We'll be around {STR_VAR_2}.\n"
+ .string "Come see us anytime!$"
+
+MatchCall_DifferentRouteBattleRequestText13:: @ 82ABE5E
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "Are your POKéMON keeping well?\p"
+ .string "My POKéMON have been so healthy,\n"
+ .string "they don't look capable of losing!\p"
+ .string "I would surely love to have another\n"
+ .string "battle with you.\p"
+ .string "If you're near {STR_VAR_2},\n"
+ .string "do come see us.$"
+
+MatchCall_DifferentRouteBattleRequestText14:: @ 82ABF36
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "Keeping well, I hope.\p"
+ .string "Oh, yes! My POKéMON are\n"
+ .string "much stronger than before.\p"
+ .string "Don't you think we ought to have\n"
+ .string "a battle, {PLAYER}{STRING 5}?\p"
+ .string "We'll be waiting for you around\n"
+ .string "{STR_VAR_2}.\p"
+ .string "Come see us anytime, okay?$"
+
+MatchCall_PersonalizedText1:: @ 82AC009
+ .string "It's me, the mountain-loving\n"
+ .string "{STR_VAR_1}!\p"
+ .string "Well, since we met, have you grown\n"
+ .string "to appreciate the mountains more?\p"
+ .string "I rarely see you in the mountains…\p"
+ .string "Next time, we'll meet somewhere\n"
+ .string "around {STR_VAR_2}.$"
+
+MatchCall_PersonalizedText2:: @ 82AC0BD
+ .string "This is {STR_VAR_1}.\n"
+ .string "Hello.\p"
+ .string "I was just telling a new TRAINER\n"
+ .string "about you.\p"
+ .string "I told her about a strong TRAINER\n"
+ .string "who raises POKéMON with care.\p"
+ .string "I hope you'll become a TRAINER\n"
+ .string "that everyone will admire.\p"
+ .string "I hope we meet again!$"
+
+MatchCall_PersonalizedText3:: @ 82AC18C
+ .string "Hello! It's {STR_VAR_1}.\p"
+ .string "I love where I am now.\n"
+ .string "It's pleasant with sweet aromas!\p"
+ .string "I think someone planted BERRIES,\n"
+ .string "and they burst into bloom.\p"
+ .string "See you again sometime!$"
+
+MatchCall_PersonalizedText4:: @ 82AC228
+ .string "Hello! Thirty years of exploration,\n"
+ .string "{STR_VAR_1} at your service!\p"
+ .string "It seems that you're energetically\n"
+ .string "traveling here and there.\p"
+ .string "Have you discovered any new ruins?\n"
+ .string "Please tell if you have!\p"
+ .string "Now, if you'll excuse me,\n"
+ .string "I have ruins to explore.$"
+
+MatchCall_PersonalizedText5:: @ 82AC30C
+ .string "It's {STR_VAR_1}!\p"
+ .string "Know what I'm doing today?\n"
+ .string "Looking at waves from the beach!\p"
+ .string "Sigh… The waves are all sparkly.\n"
+ .string "The sea is the prettiest from here.\l"
+ .string "I'm getting hungry, so bye-bye!$"
+
+MatchCall_PersonalizedText6:: @ 82AC3B6
+ .string "Munch-chew…\n"
+ .string "Oh, hi, it's {STR_VAR_1}.\l"
+ .string "I love eating on the beach.\p"
+ .string "My POKéMON and I have been doing\n"
+ .string "great. We're fully fueled!\l"
+ .string "I'm going for a swim. Bye!$"
+
+MatchCall_PersonalizedText7:: @ 82AC446
+ .string "Hello, this is {STR_VAR_1}…\p"
+ .string "I've grown a little jaded with this\n"
+ .string "whole COOLTRAINER thing…\p"
+ .string "Everyone thinks I'm a perfect\n"
+ .string "TRAINER, and that makes me try to\l"
+ .string "live up to that expectation.\p"
+ .string "But I guess that goes with being\n"
+ .string "a COOLTRAINER.\p"
+ .string "I'll just have to buckle down…\n"
+ .string "and grin and bear it.\p"
+ .string "You're the only person that I could\n"
+ .string "confide in like this.\p"
+ .string "But when I see you next,\n"
+ .string "don't worry, I won't whine!$"
+
+MatchCall_PersonalizedText8:: @ 82AC5C7
+ .string "Yahoo, it's {STR_VAR_1}!\n"
+ .string "How do you do?\p"
+ .string "I've been raising my POKéMON with\n"
+ .string "you as the target.\p"
+ .string "I don't intend to lose when we\n"
+ .string "battle again.\p"
+ .string "Isn't it great to have TRAINER\n"
+ .string "friends? Let's meet again!$"
+
+MatchCall_PersonalizedText9:: @ 82AC682
+ .string "It's {STR_VAR_1}…\n"
+ .string "Right now, behind you…\l"
+ .string "Wasn't there something…?\p"
+ .string "The power of the POKéMON that\n"
+ .string "sleep here at MT. PYRE…\p"
+ .string "It's telling me about you…\p"
+ .string "You should walk away quickly and\n"
+ .string "never once look back…\p"
+ .string "Giggle…\n"
+ .string "Farewell…$"
+
+MatchCall_PersonalizedText10:: @ 82AC755
+ .string "This is {STR_VAR_1}.\n"
+ .string "How do you do?\p"
+ .string "Isn't it convenient that we can\n"
+ .string "chat like this at a distance?\p"
+ .string "Before, if I wanted to speak with\n"
+ .string "anyone, I had to have my father\l"
+ .string "drive me…\p"
+ .string "I should be going now.\n"
+ .string "I'm glad we had this chat.$"
+
+MatchCall_PersonalizedText11:: @ 82AC82C
+ .string "It's {STR_VAR_1}!\n"
+ .string "Will you listen to this?\p"
+ .string "I like the SAFARI ZONE a lot,\n"
+ .string "but whenever I go, I get lost!\p"
+ .string "All that tall grass!\n"
+ .string "And it's much too spread out!\p"
+ .string "I feel better getting that off\n"
+ .string "my chest!\p"
+ .string "I'm off to the SAFARI ZONE again!\n"
+ .string "Catch you!$"
+
+MatchCall_PersonalizedText12:: @ 82AC914
+ .string "Hello, {STR_VAR_1} here.\n"
+ .string "Yes, correct, I am rich, yes.\p"
+ .string "I should tell you, my wealth has\n"
+ .string "grown since we last met.\p"
+ .string "What's more, my POKéMON have also\n"
+ .string "grown stronger.\p"
+ .string "I can't shake the feeling that\n"
+ .string "this world exists for me!\p"
+ .string "Oh, no need to say a word!\n"
+ .string "Everyone knows it's true!\p"
+ .string "Oh, you must excuse me, I have this\n"
+ .string "formal dinner to attend.$"
+
+MatchCall_PersonalizedText13:: @ 82ACA59
+ .string "Ufufufufu…\n"
+ .string "It's me, {STR_VAR_1}…\p"
+ .string "Can you guess what I'm seeing?\n"
+ .string "A pair of {STR_VAR_2} in a battle.\p"
+ .string "Maybe I'll try catching the winner…\n"
+ .string "Ufufufufufu…\p"
+ .string "I… I'm kind of busy now.\n"
+ .string "I have to go.$"
+
+MatchCall_PersonalizedText14:: @ 82ACB02
+ .string "Oh, it's {STR_VAR_1}!\p"
+ .string "I was just thinking I'm getting\n"
+ .string "bored of the ABANDONED SHIP.\p"
+ .string "But since I'm already here,\n"
+ .string "and I want to beat you once,\l"
+ .string "I'll be sticking around a bit more.\p"
+ .string "If you feel compelled, why don't\n"
+ .string "you come see me?\p"
+ .string "I think today will be the day that\n"
+ .string "I finally challenge the man next\l"
+ .string "door to a match.\p"
+ .string "Be seeing you!$"
+
+MatchCall_PersonalizedText15:: @ 82ACC3F
+ .string "I'm {STR_VAR_1}!\n"
+ .string "The man of the sea!\p"
+ .string "You know what I think?\p"
+ .string "The TRAINERS out at sea are\n"
+ .string "the toughest of the tough!\p"
+ .string "You should learn from me and train\n"
+ .string "in the sea…\p"
+ .string "Whoops, giant surf rising!\p"
+ .string "It's a great training opportunity!\n"
+ .string "Sorry, but I have to go!$"
+
+MatchCall_PersonalizedText16:: @ 82ACD2F
+ .string "It's {STR_VAR_1}! Listen, I've been\n"
+ .string "teaching karate to my POKéMON.\p"
+ .string "But now they're better than me!\n"
+ .string "I've done nothing but lose to them!\p"
+ .string "But even though I may lose to\n"
+ .string "POKéMON, I won't lose to another\l"
+ .string "TRAINER, no sir!\p"
+ .string "We have to battle again!\n"
+ .string "Ugwaah!$"
+
+MatchCall_PersonalizedText17:: @ 82ACE1E
+ .string "It's me, {STR_VAR_1}.\n"
+ .string "How're your travels unwinding?\p"
+ .string "…Whoa, is that right?\n"
+ .string "Sounds awfully stimulating!\p"
+ .string "I think I could write a song about\n"
+ .string "one of your episodes.\p"
+ .string "…Oh, hey, I'm feeling it.\n"
+ .string "I hear the riffs in my head.\p"
+ .string "I'd better get this tune properly\n"
+ .string "written, so I've got to fly! Later!$"
+
+MatchCall_PersonalizedText18:: @ 82ACF32
+ .string "This is {STR_VAR_1}…\n"
+ .string "Hear my new song.\p"
+ .string "Lalala, {STR_VAR_2}, {STR_VAR_2}!\n"
+ .string "Why are you that {STR_VAR_2}?\l"
+ .string "Why can't I be you, {STR_VAR_2}?\l"
+ .string "Lala, {STR_VAR_2} and {STR_VAR_1},\l"
+ .string "{STR_VAR_1} and {STR_VAR_2}…\p"
+ .string "Repeat chorus, fade…$"
+
+MatchCall_PersonalizedText19:: @ 82ACFBE
+ .string "I'm {STR_VAR_1}, you know,\n"
+ .string "the camping expert!\p"
+ .string "When we battled, I couldn't help\n"
+ .string "but lose to you.\p"
+ .string "After all, my expertise is in\n"
+ .string "camping.\p"
+ .string "But win or lose, I like to battle\n"
+ .string "when I'm camping.\p"
+ .string "Battle with us again, okay?\n"
+ .string "Oh, and let's go camping, too!$"
+
+MatchCall_PersonalizedText20:: @ 82AD0AC
+ .string "It's me, me, {STR_VAR_1}!\p"
+ .string "I'd like to climb other mountains\n"
+ .string "than this one, to be honest.\p"
+ .string "But I'm not sure if there'd be any\n"
+ .string "ladies like on MT. CHIMNEY.\p"
+ .string "If you know any other mountain\n"
+ .string "with ladies around, let me know!\p"
+ .string "Ehehehe, see you around!$"
+
+MatchCall_PersonalizedText21:: @ 82AD194
+ .string "… … … … … …\n"
+ .string "… … … … … …\l"
+ .string "It's {STR_VAR_1}…\p"
+ .string "… … … … … …\n"
+ .string "… … … … … …\l"
+ .string "That's all today…$"
+
+MatchCall_PersonalizedText22:: @ 82AD1DF
+ .string "This is {STR_VAR_1}. Today, I had\n"
+ .string "this feeling I would chat with you.\p"
+ .string "My desire to defeat you builds\n"
+ .string "by day and by night.\p"
+ .string "You have a rival like that, yes?\n"
+ .string "I wish it were me…\p"
+ .string "I'm glad you heard me out.\n"
+ .string "See you!$"
+
+MatchCall_PersonalizedText23:: @ 82AD2A8
+ .string "It's {STR_VAR_1}.\p"
+ .string "When there's a strong TRAINER\n"
+ .string "nearby, I can sometimes sense that\l"
+ .string "somehow.\p"
+ .string "Did you pass close by, {PLAYER}{STRING 5}?\n"
+ .string "Maybe it was you.\p"
+ .string "I'll be waiting for your visit.\n"
+ .string "Bye!$"
+
+MatchCall_PersonalizedText24:: @ 82AD34F
+ .string "Hello, this is {STR_VAR_1}.\n"
+ .string "You sound well, {PLAYER}{STRING 5}.\p"
+ .string "I've traveled around the world,\n"
+ .string "but I must say I've taken a great\l"
+ .string "shine to this region.\p"
+ .string "I plan to stay here a while.\n"
+ .string "Perhaps we can meet again?\p"
+ .string "I've not forgotten your dazzling\n"
+ .string "techniques.\p"
+ .string "I do hope for a rematch.$"
+
+MatchCall_PersonalizedText25:: @ 82AD44E
+ .string "Snivel… It's… {STR_VAR_1}…\n"
+ .string "…Sob…\p"
+ .string "ROXANNE chewed me out in class\n"
+ .string "today.\p"
+ .string "But I don't dislike her or anything.\p"
+ .string "ROXANNE tells me exactly what\n"
+ .string "I did wrong so I can learn from it.\p"
+ .string "You bet I'll be going to\n"
+ .string "the TRAINER'S SCHOOL tomorrow!\p"
+ .string "See you later!$"
+
+MatchCall_PersonalizedText26:: @ 82AD53A
+ .string "It's {STR_VAR_1}!\p"
+ .string "ROXANNE let me battle with her\n"
+ .string "yesterday.\p"
+ .string "The results…\n"
+ .string "Terrible, like you needed to ask.\p"
+ .string "But I was delighted that ROXANNE\n"
+ .string "would even let me challenge her!\p"
+ .string "You wouldn't believe how much\n"
+ .string "more I admire her!\p"
+ .string "I'm going to really focus and work!\n"
+ .string "I'd better go!$"
+
+MatchCall_PersonalizedText27:: @ 82AD642
+ .string "Hi, it's ANNA! I'm with my junior\n"
+ .string "partner MEG again today.\p"
+ .string "I really love caring for MEG and\n"
+ .string "POKéMON. They're so cute!\p"
+ .string "I wish I could look after them\n"
+ .string "as if they were my siblings!\p"
+ .string "Oh, hi, MEG!\n"
+ .string "Did you get the buns?\p"
+ .string "Huh? No, no, I'm not treating you\n"
+ .string "like my personal slave!\p"
+ .string "You lost the match, so you have\n"
+ .string "to go buy the bread as punishment!\p"
+ .string "I wouldn't treat you like a slave,\n"
+ .string "MEG! You're too special to me!\p"
+ .string "I have to go now.\n"
+ .string "It's time for our snack!$"
+
+MatchCall_PersonalizedText28:: @ 82AD801
+ .string "I love POKéMON!\n"
+ .string "It's {STR_VAR_1} from the FAN CLUB!\p"
+ .string "You have to hear this!\n"
+ .string "My sweet POKéMON…\p"
+ .string "Snort! Wahaha!\n"
+ .string "I can't say any more! It's a secret!\l"
+ .string "It's just too cute for words!\p"
+ .string "Oh, my sweet {STR_VAR_2} is begging\n"
+ .string "for a {POKEBLOCK}!\p"
+ .string "It's the picture of cuteness!\p"
+ .string "Sorry, but I can't talk now!\n"
+ .string "You'll have to hear this next time!$"
+
+MatchCall_PersonalizedText29:: @ 82AD92E
+ .string "Ohoho!\p"
+ .string "This is {STR_VAR_1}! I can't wait to\n"
+ .string "tell you about my darling POKéMON!\p"
+ .string "Please, you must listen to this.\n"
+ .string "It's about my darling {STR_VAR_2}.\p"
+ .string "Whenever anyone picks it up,\n"
+ .string "it leaps straight into my arms!\p"
+ .string "Oh… Oh… Could there be anything\n"
+ .string "more blissful?\p"
+ .string "Oh, it feels so heavenly!\p"
+ .string "I'm so glad I could share some of\n"
+ .string "my happiness with you.\p"
+ .string "Well, I must be going.\n"
+ .string "Bye, now!$"
+
+MatchCall_PersonalizedText30:: @ 82ADA8F
+ .string "I am… {STR_VAR_1}.\n"
+ .string "People call me an EXPERT.\p"
+ .string "But there is one thing I know.\n"
+ .string "I could not be an EXPERT on my own\l"
+ .string "power.\p"
+ .string "Only with the help of POKéMON can\n"
+ .string "a TRAINER become an EXPERT.\p"
+ .string "Humph! I believe I may have said\n"
+ .string "something deep and profound!\p"
+ .string "I shall leave you in good spirits!$"
+
+MatchCall_PersonalizedText31:: @ 82ADB9B
+ .string "It's {STR_VAR_1}.\n"
+ .string "I'm glad to chat with you!\p"
+ .string "I am feeling alive and refreshed\n"
+ .string "soaking in this hot-spring tub.\p"
+ .string "I've been battling young TRAINERS\n"
+ .string "since we met, but you're still\l"
+ .string "the best of the lot.\p"
+ .string "I imagine you'll become an EXPERT\n"
+ .string "in your old age! Ohohoho…$"
+
+MatchCall_PersonalizedText32:: @ 82ADC92
+ .string "Yay! This is {STR_VAR_1}!\n"
+ .string "What's up?\p"
+ .string "I might be imagining this, but when\n"
+ .string "I win battles, my shorts seem to\l"
+ .string "feel, like, better. Materially.\p"
+ .string "What do I mean by that?\n"
+ .string "It's kind of hard to explain, but…\l"
+ .string "How would I say this now…\l"
+ .string "My shorts feel silkier!\p"
+ .string "And when I battled you, {PLAYER}{STRING 5},\n"
+ .string "my shorts felt icky and coarse.\p"
+ .string "… … … … … …\n"
+ .string "You didn't really believe that?\l"
+ .string "Ehehehe, that's all! Bye now!$"
+
+MatchCall_PersonalizedText33:: @ 82ADE08
+ .string "Ahoy!\n"
+ .string "{STR_VAR_1} here!\p"
+ .string "As always, I'm fishing with wild\n"
+ .string "abandon!\p"
+ .string "Are there other places I can fish\n"
+ .string "than the sea and rivers?\p"
+ .string "I get these powerful urges to\n"
+ .string "fish just about anywhere!\p"
+ .string "Oh, gosh, darn it!\n"
+ .string "My line's tangled up!\p"
+ .string "Gotta go!\n"
+ .string "Find me some new fishing spots!$"
+
+MatchCall_PersonalizedText34:: @ 82ADF07
+ .string "Hey, there! It's {STR_VAR_1}.\n"
+ .string "Are you taking it casually?\p"
+ .string "Ever since I was a kid, you know,\n"
+ .string "I've always been placid, huh?\p"
+ .string "I never was much for getting all\n"
+ .string "stressed or rushing things.\p"
+ .string "But wouldn't you know it,\n"
+ .string "I'm now a TRIATHLETE.\p"
+ .string "You just can't tell where life will\n"
+ .string "take you, if you get my drift.\p"
+ .string "You're a TRAINER now, but who\n"
+ .string "knows what the future holds, huh?\p"
+ .string "Imagine yourself as a teacher,\n"
+ .string "or maybe an artist. Cool, huh?\p"
+ .string "But, hey, be cool. Take it casual.\n"
+ .string "See you around.$"
+
+MatchCall_PersonalizedText35:: @ 82AE0D9
+ .string "This is {STR_VAR_1}!\n"
+ .string "I'm cycling right now.\p"
+ .string "I love swimming and running,\n"
+ .string "but cycling is my first love!\p"
+ .string "It makes my whole body feel as if\n"
+ .string "I'm one with the wind.\p"
+ .string "It exhilarates me as if I were\n"
+ .string "flying!\p"
+ .string "Okay! Today, I'm going to set a new\n"
+ .string "CYCLING ROAD record!\p"
+ .string "You should make the challenge, too!\n"
+ .string "See you!$"
+
+MatchCall_PersonalizedText36:: @ 82AE1FD
+ .string "Yo, this is {STR_VAR_1}! I'm smack\n"
+ .string "in the middle of a triathlon!\p"
+ .string "But, hey, I've always got time to\n"
+ .string "shoot the breeze!\p"
+ .string "Working out with POKéMON feels\n"
+ .string "mighty good!\p"
+ .string "Without exchanging words, we synch\n"
+ .string "as if we shared a heart.\p"
+ .string "It's inspiring!\p"
+ .string "Gasp… Chatting while running…\n"
+ .string "I'm getting run down…\l"
+ .string "Gasp… Have…to…go…$"
+
+MatchCall_PersonalizedText37:: @ 82AE327
+ .string "Hi, it's {STR_VAR_1}.\n"
+ .string "If you want to improve endurance,\l"
+ .string "high-altitude training is it!\p"
+ .string "Try running on a mountaintop.\n"
+ .string "You'll be gasping in no time!\p"
+ .string "I'm getting oxygen starved, too!\n"
+ .string "See you!$"
+
+MatchCall_PersonalizedText38:: @ 82AE3DA
+ .string "Oh, it's {STR_VAR_1}, hello.\p"
+ .string "I've been swimming a lot but I still\n"
+ .string "can't seem to reach EVERGRANDE.\p"
+ .string "Maybe I'm just going in circles.\p"
+ .string "No, no, that can't be possible.\n"
+ .string "Wahahaha.\l"
+ .string "Take care!$"
+
+MatchCall_PersonalizedText39:: @ 82AE489
+ .string "Hey, it's {STR_VAR_1}…\n"
+ .string "Whoops!\p"
+ .string "Splash!\p"
+ .string "Blug-blug-blug-blug…\p"
+ .string "Sploosh!\p"
+ .string "Whiff-whiff! Whiff-whiff!\p"
+ .string "Hey! Sorry about that!\n"
+ .string "I just put on some suntan oil.\p"
+ .string "So my POKéNAV went whoopsy\n"
+ .string "out of my hand into the water!\p"
+ .string "But, boy, DEVON's POKéNAV is built\n"
+ .string "tough. It survived that dunking!\p"
+ .string "Anyways, I'm busy sunbathing,\n"
+ .string "so let's chat another time.$"
+
+MatchCall_PersonalizedText40:: @ 82AE5CD
+ .string "Hello, this is {STR_VAR_1}.\p"
+ .string "Out of the three triathlon events,\n"
+ .string "I like swimming best.\p"
+ .string "But if I stay in the sea too long,\n"
+ .string "won't I get all prune-like?\p"
+ .string "Ooh, triathlon is such a grueling\n"
+ .string "test of human endurance! Bye!$"
+
+MatchCall_PersonalizedText41:: @ 82AE698
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "How are your POKéMON doing?\p"
+ .string "My DRAGON POKéMON appear to be\n"
+ .string "in peak form. Bye for now.$"
+
+MatchCall_PersonalizedText42:: @ 82AE704
+ .string "{STR_VAR_1} here.\p"
+ .string "My {STR_VAR_2} has grown even more\n"
+ .string "tough than that last time.\p"
+ .string "I'm not going to lose again to you.\n"
+ .string "You wait till next time!\p"
+ .string "See you around!$"
+
+MatchCall_PersonalizedText43:: @ 82AE78F
+ .string "It is {STR_VAR_1} here.\p"
+ .string "I have continued with my studies\n"
+ .string "in the art of concealment.\p"
+ .string "But I have been too successful.\n"
+ .string "No one has been able to find me.\l"
+ .string "My success makes me lonely…\p"
+ .string "Like smoke I disappear!\n"
+ .string "Farewell!$"
+
+MatchCall_PersonalizedText44:: @ 82AE859
+ .string "This is {STR_VAR_1}.\n"
+ .string "I kept up my training since we met.\p"
+ .string "My {STR_VAR_2} is getting pretty\n"
+ .string "tough.\p"
+ .string "Training on a beach is effective,\n"
+ .string "just as I thought. Bye now!$"
+
+MatchCall_PersonalizedText45:: @ 82AE8E6
+ .string "How do you do?\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I wonder when this yucky volcanic\n"
+ .string "ash will stop falling?\p"
+ .string "If it gets too deep, it will cover\n"
+ .string "up the pattern on my parasol…\p"
+ .string "Let's promise to meet again!$"
+
+MatchCall_PersonalizedText46:: @ 82AE998
+ .string "Hi, {STR_VAR_1} here.\p"
+ .string "Did you know that it's easier to\n"
+ .string "float in the sea than a pool?\p"
+ .string "Just by lying still, your body will\n"
+ .string "float on its own.\p"
+ .string "But if you float for too long,\n"
+ .string "watch that you don't get carried\l"
+ .string "off too far out.\p"
+ .string "…Where am I, anyway?\n"
+ .string "I'd better go!$"
+
+MatchCall_PersonalizedText47:: @ 82AEA8F
+ .string "Oh, {PLAYER}{STRING 5}, hello!\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "I'm up in the mountains now.\p"
+ .string "But the ground is too bumpy.\n"
+ .string "I can't pitch my tent here…\p"
+ .string "Oh, I had a brilliant idea!\p"
+ .string "Maybe I can get my POKéMON to tamp\n"
+ .string "the ground flat here!\p"
+ .string "I'm going to try that!\n"
+ .string "Bye-bye!$"
+
+MatchCall_PersonalizedText48:: @ 82AEB77
+ .string "Oh, hi, hi, this is {STR_VAR_1}!\p"
+ .string "I'm raising POKéMON with LIV!\n"
+ .string "We're trying very hard!\p"
+ .string "If we try harder, can we become\n"
+ .string "number one? Bye-bye!$"
+
+MatchCall_PersonalizedText49:: @ 82AEBFA
+ .string "{STR_VAR_1} here!\p"
+ .string "I'm a SAILOR, but I'm not on a boat\n"
+ .string "now.\p"
+ .string "It makes me wonder--what should\n"
+ .string "a SAILOR on land be called?\p"
+ .string "That's what I've been thinking\n"
+ .string "while staring out across the waves.\p"
+ .string "All right, next time!$"
+
+MatchCall_PersonalizedText50:: @ 82AECC1
+ .string "It's {STR_VAR_1}.\n"
+ .string "So? Get any more POKéMON?\p"
+ .string "If you catch a new POKéMON,\n"
+ .string "you have to come show me.\p"
+ .string "I won't whine for it, honest.\n"
+ .string "I'll be waiting. See you.$"
+
+MatchCall_PersonalizedText51:: @ 82AED52
+ .string "This is {STR_VAR_1}.\p"
+ .string "Are you raising your POKéMON\n"
+ .string "in the optimal way?\p"
+ .string "The air is clean where I am.\n"
+ .string "It's the perfect environment for\l"
+ .string "raising POKéMON.\p"
+ .string "If you're going to focus on raising\n"
+ .string "POKéMON, you should come out to\l"
+ .string "{STR_VAR_2}. Take care now.$"
+
+MatchCall_PersonalizedText52:: @ 82AEE35
+ .string "Hi, this is {STR_VAR_1}.\p"
+ .string "I gave a {POKEBLOCK} to my {STR_VAR_2}.\n"
+ .string "It seemed to enjoy it very much.\p"
+ .string "It looks like POKéMON have their\n"
+ .string "likes and dislikes with {POKEBLOCK}S.\p"
+ .string "I find that quite fascinating.\n"
+ .string "Please do take care.$"
+
+MatchCall_PersonalizedText53:: @ 82AEEF4
+ .string "{STR_VAR_1} here.\p"
+ .string "If you cooperate with POKéMON,\n"
+ .string "one can be comfortable in the wild.\p"
+ .string "Everyone should realize that and\n"
+ .string "cooperate with POKéMON more.\p"
+ .string "That would be ideal.\n"
+ .string "I really think so.\p"
+ .string "I think you're on the right track!\n"
+ .string "Catch you later!$"
+
+MatchCall_PersonalizedText54:: @ 82AEFDA
+ .string "Hi, it's {STR_VAR_1}. You know,\n"
+ .string "the TRAINER who's always prepared!\p"
+ .string "{PLAYER}{STRING 5}, do you have enough items?\n"
+ .string "Are your POKéMON fit for action?\p"
+ .string "Keeping everything perfect around\n"
+ .string "you all the time is the secret to\l"
+ .string "keeping your journey going.\p"
+ .string "I'd better go check my own\n"
+ .string "supplies! Be vigilant!$"
+
+MatchCall_PersonalizedText55:: @ 82AF0E7
+ .string "It's {STR_VAR_1}!\n"
+ .string "It's {STR_VAR_1}!\p"
+ .string "{STR_VAR_2} is a very busy\n"
+ .string "thoroughfare, so I get challenged\l"
+ .string "by all kinds of TRAINERS every day.\p"
+ .string "Today, I won five battles and lost\n"
+ .string "only three!\p"
+ .string "How did you do today?\n"
+ .string "Tell me about it next time, okay?$"
+
+MatchCall_PersonalizedText56:: @ 82AF1B8
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I'm popular because I have lots\n"
+ .string "of BUG POKéMON, right?\p"
+ .string "Well, I took a bunch of my fave\n"
+ .string "bugs to school today.\p"
+ .string "This girl I like started crying!\n"
+ .string "Go ahead and laugh if you want.\p"
+ .string "I have to try teaching her what\n"
+ .string "makes BUG POKéMON so appealing.\p"
+ .string "Snivel…\n"
+ .string "See you!$"
+
+MatchCall_PersonalizedText57:: @ 82AF2C4
+ .string "Hah! Hah! Hah! Hah!\p"
+ .string "Hi! It's {STR_VAR_1}! Hah! Hah!\p"
+ .string "Trying to chat…\n"
+ .string "While climbing…\l"
+ .string "Is harsh exercise… Hah! Hah!\p"
+ .string "Urgh! Oof…\n"
+ .string "It's steeper now…\l"
+ .string "We'll chat…another time…\l"
+ .string "Hah! Hah! Hah!$"
+
+MatchCall_PersonalizedText58:: @ 82AF371
+ .string "Oh, hi!\p"
+ .string "I'm still searching for treasures\n"
+ .string "with KIRA!\p"
+ .string "Maybe there isn't any treasure\n"
+ .string "here at all…\p"
+ .string "But the important thing is for me\n"
+ .string "to search alongside KIRA.\p"
+ .string "Oh, hey, KIRA!\n"
+ .string "Wh-why are you angry?\p"
+ .string "I'm not ignoring you, honey!\n"
+ .string "You're my one and only!\p"
+ .string "…{PLAYER}, I have to go, bye!$"
+
+MatchCall_PersonalizedText59:: @ 82AF480
+ .string "This is {STR_VAR_1}!\p"
+ .string "I went to DEWFORD's GYM again\n"
+ .string "for training.\p"
+ .string "BRAWLY, the GYM LEADER, seems\n"
+ .string "to be tougher now.\p"
+ .string "Something about being toughened\n"
+ .string "by the wild waves…\p"
+ .string "But he's still as cool as ever.\n"
+ .string "The ladies adore him!\l"
+ .string "It makes me envious, frankly.\p"
+ .string "I wonder… Is his friend BRUNO\n"
+ .string "the same way as BRAWLY?\p"
+ .string "You know, all sweaty or smelly,\n"
+ .string "and prone to calling people\l"
+ .string "“big wave,” that sort of thing.\p"
+ .string "But, hey, this jealousy thing isn't\n"
+ .string "very seemly, is it?\p"
+ .string "Forget this chat ever happened,\n"
+ .string "how about it? So long!$"
+
+MatchCall_PersonalizedText60:: @ 82AF671
+ .string "It's a pleasure to chat with\n"
+ .string "a young TRAINER like you.\p"
+ .string "I imagine that you will continue to\n"
+ .string "enjoy POKéMON whatever your age.\p"
+ .string "Wouldn't it be good if you had\n"
+ .string "a partnership like ours?\p"
+ .string "Of course, {PLAYER}{STRING 5}, you already\n"
+ .string "enjoy the trust and companionship\l"
+ .string "of your POKéMON now.\p"
+ .string "You have the makings of long and\n"
+ .string "enduring relationships already!\p"
+ .string "Hahaha!\n"
+ .string "Never be discouraged!$"
+
+MatchCall_PersonalizedText61:: @ 82AF7D8
+ .string "Hi, this is {STR_VAR_1}!\n"
+ .string "We just won a battle!\p"
+ .string "We don't win often, but it was this\n"
+ .string "cool SWIMMER guy.\p"
+ .string "My sister was steamed!\p"
+ .string "She wanted to pretend that she\n"
+ .string "was weak to make an impression!\p"
+ .string "She always chews me out whether\n"
+ .string "we win or lose!\p"
+ .string "{PLAYER}{STRING 5}, can you say something\n"
+ .string "to her next time?\p"
+ .string "Okay, see you!$"
+
+MatchCall_PersonalizedText62:: @ 82AF8F7
+ .string "{STR_VAR_1} here, yes.\n"
+ .string "I headed out to sea yesterday.\p"
+ .string "I had been hoping to find a new\n"
+ .string "ruin to explore.\p"
+ .string "But the tides somehow seemed to\n"
+ .string "carry me back where I started.\p"
+ .string "I'm still weak at battling, too…\n"
+ .string "Feel free to mock me…\l"
+ .string "But I won't give up.\p"
+ .string "My day will come when I discover\n"
+ .string "a new ruin!\p"
+ .string "That's all I have to say!\n"
+ .string "Farewell for now!$"
+
+MatchCall_PersonalizedText63:: @ 82AFA39
+ .string "Ahoy there!\n"
+ .string "It's me, {STR_VAR_1}!\l"
+ .string "I'm out on ROUTE 108 now!\l"
+ .string "In other words, where I always am!\p"
+ .string "Today, a gorgeous SWIMMER \n"
+ .string "swam by me!\p"
+ .string "So I startled her with a shout!\p"
+ .string "And she gave me a nasty glare!\p"
+ .string "That's all from ROUTE 108!\n"
+ .string "Brought to you by {STR_VAR_1}!$"
+
+MatchCall_PersonalizedText64:: @ 82AFB26
+ .string "It's {STR_VAR_1}!\p"
+ .string "I'm kind of busy, but I figured\n"
+ .string "I should let you know that I've\l"
+ .string "beaten five TRAINERS again today.\p"
+ .string "If I keep this pace up, I can\n"
+ .string "probably beat you next time.\p"
+ .string "I think we'll be good rivals,\n"
+ .string "you and I. Good-bye for now!$"
+
+MatchCall_BattleFrontierStreakText1:: @ 82AFC07
+ .string "Hi! This is {STR_VAR_1}.\n"
+ .string "I heard the news!\p"
+ .string "They say you did excellent at\n"
+ .string "the {STR_VAR_2}.\p"
+ .string "It's awesome, {STR_VAR_3} straight wins?\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierStreakText2:: @ 82AFC78
+ .string "Hello, it's {STR_VAR_1}!\n"
+ .string "I heard about you!\p"
+ .string "They said you won {STR_VAR_3} straight\n"
+ .string "battles at the {STR_VAR_2}.\p"
+ .string "That's special! I should try\n"
+ .string "harder, too! See you!$"
+
+MatchCall_BattleFrontierStreakText3:: @ 82AFCFF
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I heard you went on a tear at\n"
+ .string "the {STR_VAR_2}!\p"
+ .string "A big {STR_VAR_3}-win streak…\n"
+ .string "That is a big record, isn't it?\p"
+ .string "I'd better get it together, too!\n"
+ .string "Catch you soon!$"
+
+MatchCall_BattleFrontierStreakText4:: @ 82AFDA7
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here. What's up?\p"
+ .string "There's a rumor going around that\n"
+ .string "you strung together {STR_VAR_3} straight\l"
+ .string "wins at the {STR_VAR_2}.\p"
+ .string "I'd better step it up, too.\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierStreakText5:: @ 82AFE3D
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "You were at the {STR_VAR_2}\n"
+ .string "and won {STR_VAR_3} battles in a row?\l"
+ .string "Isn't that something!\p"
+ .string "I'd better work on my POKéMON more.\n"
+ .string "See you soon!$"
+
+MatchCall_BattleFrontierStreakText6:: @ 82AFECA
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here. How are you?\p"
+ .string "By the way, I heard you pulled off\n"
+ .string "the feat of {STR_VAR_3} straight wins at\l"
+ .string "the {STR_VAR_2}.\p"
+ .string "That inspires me to focus on\n"
+ .string "raising my team.$"
+
+MatchCall_BattleFrontierStreakText7:: @ 82AFF64
+ .string "…Er, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here…\p"
+ .string "Oh, yeah, you were over at\n"
+ .string "the {STR_VAR_2}, right?\p"
+ .string "And you won {STR_VAR_3} battles in a row.\p"
+ .string "Oh, there goes a rare POKéMON!\n"
+ .string "I have to go!$"
+
+MatchCall_BattleFrontierStreakText8:: @ 82AFFF0
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\l"
+ .string "I hope you're doing well.\p"
+ .string "Oh, but, you are. I've heard that\n"
+ .string "you won {STR_VAR_3} matches in a row at\l"
+ .string "the {STR_VAR_2}.\p"
+ .string "That's very impressive!\n"
+ .string "I hope you stay successful.$"
+
+MatchCall_BattleFrontierStreakText9:: @ 82B00B5
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I heard! Your {STR_VAR_3}-win streak at\n"
+ .string "the {STR_VAR_2}!\p"
+ .string "That is so cool!\n"
+ .string "I'd better try harder, too!$"
+
+MatchCall_BattleFrontierStreakText10:: @ 82B0129
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You won {STR_VAR_3} straight battles at\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "That's quite the accomplishment.\n"
+ .string "I need to work harder.$"
+
+MatchCall_BattleFrontierStreakText11:: @ 82B01A5
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I hear you're the terror of\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "You won, what, {STR_VAR_3} matches in\n"
+ .string "a row?\p"
+ .string "You're good, you.\n"
+ .string "I wonder how many I can win?$"
+
+MatchCall_BattleFrontierStreakText12:: @ 82B0232
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you keeping well?\p"
+ .string "Someone passed on word about you.\n"
+ .string "How you won {STR_VAR_3} straight battles\l"
+ .string "at a place named {STR_VAR_2}?\p"
+ .string "That's quite the tale.\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierStreakText13:: @ 82B02D9
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "I hope you've been keeping well.\p"
+ .string "They say you won {STR_VAR_3} straight\n"
+ .string "battles at the {STR_VAR_2}.\p"
+ .string "I admire your energy!\n"
+ .string "Bye now.$"
+
+MatchCall_BattleFrontierStreakText14:: @ 82B0366
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I heard about you!\n"
+ .string "Didn't you just win {STR_VAR_3} battles in\l"
+ .string "a row at the {STR_VAR_2}?\p"
+ .string "You're an inspiration!\n"
+ .string "Bye-bye!$"
+
+MatchCall_BattleFrontierRecordStreakText1:: @ 82B03E6
+ .string "Hi! This is {STR_VAR_1}.\n"
+ .string "I heard the news!\p"
+ .string "They say you did excellent at\n"
+ .string "the {STR_VAR_2}.\p"
+ .string "It's awesome--{STR_VAR_3} straight wins?\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierRecordStreakText2:: @ 82B0457
+ .string "Hello, it's {STR_VAR_1}!\n"
+ .string "I heard about you!\p"
+ .string "They said you won {STR_VAR_3} straight\n"
+ .string "battles at the {STR_VAR_2}.\p"
+ .string "That's special! I should try\n"
+ .string "harder, too! See you!$"
+
+MatchCall_BattleFrontierRecordStreakText3:: @ 82B04DE
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\p"
+ .string "I heard you went on a tear at\n"
+ .string "the {STR_VAR_2}!\p"
+ .string "A big {STR_VAR_3}-win streak…\n"
+ .string "That is a big record, isn't it?\p"
+ .string "I'd better get it together, too!\n"
+ .string "Catch you soon!$"
+
+MatchCall_BattleFrontierRecordStreakText4:: @ 82B0586
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here. What's up?\p"
+ .string "There's a rumor going around that\n"
+ .string "you strung together {STR_VAR_3} straight\l"
+ .string "wins at the {STR_VAR_2}.\p"
+ .string "I'd better step it up, too.\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierRecordStreakText5:: @ 82B061C
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "You were at the {STR_VAR_2}\n"
+ .string "and won {STR_VAR_3} battles in a row?\l"
+ .string "Isn't that something!\p"
+ .string "Me? I'd say I'm coming along.\n"
+ .string "See you soon!$"
+
+MatchCall_BattleFrontierRecordStreakText6:: @ 82B06A3
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here. How are you?\p"
+ .string "By the way, I heard you pulled off\n"
+ .string "the feat of {STR_VAR_3} straight wins at\l"
+ .string "the {STR_VAR_2}.\p"
+ .string "I'd better try harder myself!\n"
+ .string "See you soon!$"
+
+MatchCall_BattleFrontierRecordStreakText7:: @ 82B073B
+ .string "…Er, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here…\p"
+ .string "Oh, yeah, you were over at\n"
+ .string "the {STR_VAR_2}, right?\p"
+ .string "And you won {STR_VAR_3} battles in a row.\p"
+ .string "Oh, there goes a rare POKéMON!\n"
+ .string "I have to go!$"
+
+MatchCall_BattleFrontierRecordStreakText8:: @ 82B07C7
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\l"
+ .string "I hope you're doing well.\p"
+ .string "Oh, but, you are. I've heard that\n"
+ .string "you won {STR_VAR_3} matches in a row at\l"
+ .string "the {STR_VAR_2}.\p"
+ .string "That's very impressive!\n"
+ .string "I'd better work on my POKéMON, too!$"
+
+MatchCall_BattleFrontierRecordStreakText9:: @ 82B0894
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I heard! Your {STR_VAR_3}-win streak at\n"
+ .string "the {STR_VAR_2}!\p"
+ .string "That is so cool!\n"
+ .string "I'd better try harder, too!$"
+
+MatchCall_BattleFrontierRecordStreakText10:: @ 82B0908
+ .string "Oh, {PLAYER}{STRING 5}, hello…\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You won {STR_VAR_3} straight battles at\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "That's quite the accomplishment.\n"
+ .string "I need to work harder.$"
+
+MatchCall_BattleFrontierRecordStreakText11:: @ 82B0984
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I hear you're the terror of\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "You won, what, {STR_VAR_3} matches in\n"
+ .string "a row?\p"
+ .string "You're good, you.\n"
+ .string "I wonder how many I can win?$"
+
+MatchCall_BattleFrontierRecordStreakText12:: @ 82B0A11
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you keeping well?\p"
+ .string "Someone passed on word about you.\n"
+ .string "How you won {STR_VAR_3} straight battles\l"
+ .string "at a place named {STR_VAR_2}?\p"
+ .string "That's quite the tale.\n"
+ .string "See you!$"
+
+MatchCall_BattleFrontierRecordStreakText13:: @ 82B0AB8
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "I hope you've been keeping well.\p"
+ .string "They say you won {STR_VAR_3} straight\n"
+ .string "battles at the {STR_VAR_2}.\p"
+ .string "I admire your energy!\n"
+ .string "Bye now.$"
+
+MatchCall_BattleFrontierRecordStreakText14:: @ 82B0B45
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "I heard about you!\p"
+ .string "Didn't you just win {STR_VAR_3} battles in\n"
+ .string "a row at the {STR_VAR_2}?\p"
+ .string "You're an inspiration!\n"
+ .string "Bye-bye!$"
+
+MatchCall_BattleDomeText1:: @ 82B0BC5
+ .string "Hi! {PLAYER}?\n"
+ .string "Hello, this is {STR_VAR_1}!\l"
+ .string "I heard the news!\p"
+ .string "You became the champion at\n"
+ .string "the {STR_VAR_2} {STR_VAR_3} times?\p"
+ .string "It's awesome! I have to do better!\n"
+ .string "See you!$"
+
+MatchCall_BattleDomeText2:: @ 82B0C4A
+ .string "Hello, it's {STR_VAR_1}!\n"
+ .string "I heard about you!\p"
+ .string "They said you won {STR_VAR_3} titles\n"
+ .string "at the {STR_VAR_2}.\p"
+ .string "That's super! I wonder if I can\n"
+ .string "become a champion?$"
+
+MatchCall_BattleDomeText3:: @ 82B0CC7
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "How's it going?\p"
+ .string "I heard you won events {STR_VAR_3} times\n"
+ .string "at the {STR_VAR_2}!\p"
+ .string "Make it one more next time!\n"
+ .string "Catch you soon!$"
+
+MatchCall_BattleDomeText4:: @ 82B0D4A
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "I heard you became the champion\n"
+ .string "at the {STR_VAR_2} {STR_VAR_3} times.\p"
+ .string "Sounds like you're working hard.\n"
+ .string "I'll try to keep up!$"
+
+MatchCall_BattleDomeText5:: @ 82B0DC8
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "I heard you won {STR_VAR_3} times\n"
+ .string "outright at the {STR_VAR_2}.\p"
+ .string "I'd better get with it, too!\n"
+ .string "See you soon!$"
+
+MatchCall_BattleDomeText6:: @ 82B0E35
+ .string "Hey, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here. How are you?\p"
+ .string "By the way, I heard you became\n"
+ .string "the champion {STR_VAR_3} times at\l"
+ .string "the {STR_VAR_2}.\p"
+ .string "I'd better raise my POKéMON before\n"
+ .string "you pull farther ahead.$"
+
+MatchCall_BattleDomeText7:: @ 82B0ED1
+ .string "{PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "You were at the {STR_VAR_2}\n"
+ .string "and became the champ {STR_VAR_3} times?\p"
+ .string "That's neat. By the way, have you\n"
+ .string "caught any rare POKéMON lately?\p"
+ .string "Oh, is that right.\n"
+ .string "Okay, bye.$"
+
+MatchCall_BattleDomeText8:: @ 82B0F72
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\l"
+ .string "I hope you're doing well.\l"
+ .string "Oh, but, you are.\p"
+ .string "I've heard that you won {STR_VAR_3} titles\n"
+ .string "at the {STR_VAR_2}.\p"
+ .string "I must raise my POKéMON like you.\n"
+ .string "See you again.$"
+
+MatchCall_BattleDomeText9:: @ 82B102A
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I heard! You took the title\n"
+ .string "{STR_VAR_3} times at the {STR_VAR_2}!\p"
+ .string "That is so cool!\n"
+ .string "I'd better try harder, too!$"
+
+MatchCall_BattleDomeText10:: @ 82B10A7
+ .string "Oh, {PLAYER}{STRING 5}, hello.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You won {STR_VAR_3} straight times at\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "That's quite the accomplishment.\n"
+ .string "I need to work harder.$"
+
+MatchCall_BattleDomeText11:: @ 82B1121
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I hear you're the terror of\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "You won, what, {STR_VAR_3} straight times\n"
+ .string "now?\p"
+ .string "I wonder if I can ever become\n"
+ .string "a champion?\p"
+ .string "…Pretty well impossible?\n"
+ .string "Well, see you!$"
+
+MatchCall_BattleDomeText12:: @ 82B11D3
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you keeping well?\p"
+ .string "You've won {STR_VAR_3} events at a place\n"
+ .string "named {STR_VAR_2}?\p"
+ .string "That's quite the tale.\n"
+ .string "See you!$"
+
+MatchCall_BattleDomeText13:: @ 82B124D
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "I hope you've been keeping well.\p"
+ .string "They say you won {STR_VAR_3} events\n"
+ .string "at the {STR_VAR_2}?\p"
+ .string "I admire your energy!\n"
+ .string "Bye now.$"
+
+MatchCall_BattleDomeText14:: @ 82B12D0
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "I heard about you!\p"
+ .string "Didn't you win {STR_VAR_3} titles\n"
+ .string "at the {STR_VAR_2}?\p"
+ .string "You're an inspiration!\n"
+ .string "See you again!$"
+
+MatchCall_BattlePikeText1:: @ 82B1347
+ .string "Hi! {PLAYER}?\n"
+ .string "Hello, this is {STR_VAR_1}!\l"
+ .string "I heard the news!\p"
+ .string "You got through {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}!\p"
+ .string "That's awesome!\n"
+ .string "See you!$"
+
+MatchCall_BattlePikeText2:: @ 82B13B1
+ .string "Hello, it's {STR_VAR_1}!\n"
+ .string "I heard about you!\p"
+ .string "They said you won your way through\n"
+ .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
+ .string "I have to try much harder!\n"
+ .string "Bye!$"
+
+MatchCall_BattlePikeText3:: @ 82B142B
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "How's it going?\p"
+ .string "I heard you won through {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}!\p"
+ .string "Try to do even better next time!\n"
+ .string "Catch you soon!$"
+
+MatchCall_BattlePikeText4:: @ 82B14B4
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "I heard you blew through {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}.\p"
+ .string "I'd better train my POKéMON and\n"
+ .string "try to keep up!$"
+
+MatchCall_BattlePikeText5:: @ 82B1525
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "I heard you got past {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}.\p"
+ .string "I'd better get with it, too!\n"
+ .string "See you soon!$"
+
+MatchCall_BattlePikeText6:: @ 82B158E
+ .string "Hey, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here. How are you?\p"
+ .string "By the way, I heard you got through\n"
+ .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
+ .string "I'd better raise my POKéMON before\n"
+ .string "you pull further ahead.$"
+
+MatchCall_BattlePikeText7:: @ 82B1622
+ .string "{PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "You were at the {STR_VAR_2}\n"
+ .string "and won your way past {STR_VAR_3} rooms?\p"
+ .string "That's wicked.\p"
+ .string "Oh, there goes a rare POKéMON!\n"
+ .string "Okay, bye.$"
+
+MatchCall_BattlePikeText8:: @ 82B169D
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\l"
+ .string "I hope you're doing well.\l"
+ .string "Oh, but, you are.\p"
+ .string "I've heard that you got through\n"
+ .string "{STR_VAR_3} rooms at the {STR_VAR_2}.\p"
+ .string "That's quite impressive!\n"
+ .string "I must raise my POKéMON like you.\l"
+ .string "See you again.$"
+
+MatchCall_BattlePikeText9:: @ 82B1775
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I heard! You won your way through\n"
+ .string "{STR_VAR_3} rooms at the {STR_VAR_2}!\p"
+ .string "That is so cool!\n"
+ .string "I'd better try harder, too!$"
+
+MatchCall_BattlePikeText10:: @ 82B17F8
+ .string "Oh, {PLAYER}{STRING 5}, hello.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You won your way past {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}?\p"
+ .string "That's quite the accomplishment.\n"
+ .string "I need to work harder.$"
+
+MatchCall_BattlePikeText11:: @ 82B1877
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I hear you're the terror of\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "You got through, what, {STR_VAR_3} rooms?\n"
+ .string "That's gotta count for something.\p"
+ .string "I wonder if I can ever become\n"
+ .string "a champion?\p"
+ .string "…Pretty well impossible?\n"
+ .string "Well, see you!$"
+
+MatchCall_BattlePikeText12:: @ 82B1946
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you keeping well?\p"
+ .string "You've won through {STR_VAR_3} rooms at\n"
+ .string "a place named {STR_VAR_2}?\p"
+ .string "That's quite the tale.\n"
+ .string "See you!$"
+
+MatchCall_BattlePikeText13:: @ 82B19C7
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "I hope you've been keeping well.\p"
+ .string "They say you won in {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}?\p"
+ .string "I admire your energy!\n"
+ .string "Bye now.$"
+
+MatchCall_BattlePikeText14:: @ 82B1A4C
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "I heard about you!\p"
+ .string "Didn't you get through {STR_VAR_3} rooms\n"
+ .string "at the {STR_VAR_2}?\p"
+ .string "You're an inspiration!\n"
+ .string "See you again!$"
+
+MatchCall_BattlePyramidText1:: @ 82B1ACA
+ .string "Hi! {PLAYER}?\n"
+ .string "Hello, this is {STR_VAR_1}!\l"
+ .string "I heard the news!\p"
+ .string "You climbed {STR_VAR_3} floors inside\n"
+ .string "the {STR_VAR_2}, right?\p"
+ .string "That's awesome!\n"
+ .string "I should try that challenge.$"
+
+MatchCall_BattlePyramidText2:: @ 82B1B50
+ .string "Hello, it's {STR_VAR_1}!\n"
+ .string "I heard about you!\p"
+ .string "They said you won your way through\n"
+ .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
+ .string "Wow, that's fantastic!\n"
+ .string "I'd better raise my POKéMON, too!$"
+
+MatchCall_BattlePyramidText3:: @ 82B1BE4
+ .string "Hey there, {PLAYER}!\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "How's it going?\p"
+ .string "I heard you climbed {STR_VAR_3} floors\n"
+ .string "in the {STR_VAR_2}!\p"
+ .string "Try to do even better next time!\n"
+ .string "Catch you soon!$"
+
+MatchCall_BattlePyramidText4:: @ 82B1C6A
+ .string "Hey, {PLAYER}{STRING 5}.\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "I heard you scaled {STR_VAR_3} floors\n"
+ .string "in the {STR_VAR_2}.\p"
+ .string "I'd better work hard and try\n"
+ .string "to keep up!$"
+
+MatchCall_BattlePyramidText5:: @ 82B1CCF
+ .string "Hiya, {PLAYER}{STRING 5}!\n"
+ .string "It's {STR_VAR_1}.\p"
+ .string "I heard you climbed {STR_VAR_3} floors\n"
+ .string "in the {STR_VAR_2}.\p"
+ .string "I'd better get with it, too!\n"
+ .string "See you soon!$"
+
+MatchCall_BattlePyramidText6:: @ 82B1D38
+ .string "Hey, {PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here. How are you?\p"
+ .string "By the way, I heard you got through\n"
+ .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
+ .string "I'd better raise my POKéMON before\n"
+ .string "you pull further ahead.$"
+
+MatchCall_BattlePyramidText7:: @ 82B1DCD
+ .string "{PLAYER}{STRING 5}?\n"
+ .string "{STR_VAR_1} here.\p"
+ .string "You were at the {STR_VAR_2}\n"
+ .string "and won your way up {STR_VAR_3} floors?\p"
+ .string "Neat. Were there any rare POKéMON\n"
+ .string "there?\p"
+ .string "No, huh?\n"
+ .string "Okay, bye.$"
+
+MatchCall_BattlePyramidText8:: @ 82B1E4B
+ .string "Oh, {PLAYER}{STRING 5}, how do you do?\n"
+ .string "This is {STR_VAR_1} speaking.\l"
+ .string "I hope you're doing well.\l"
+ .string "Oh, but, you are.\p"
+ .string "I've heard that you got through\n"
+ .string "{STR_VAR_3} floors in the {STR_VAR_2}.\p"
+ .string "That's quite impressive!\n"
+ .string "I must raise my POKéMON like you.\l"
+ .string "See you again.$"
+
+MatchCall_BattlePyramidText9:: @ 82B1F24
+ .string "Oh, {PLAYER}{STRING 5}, hi there!\n"
+ .string "This is {STR_VAR_1}!\p"
+ .string "I heard! You won your way through\n"
+ .string "{STR_VAR_3} floors in the {STR_VAR_2}!\p"
+ .string "That is so cool!\n"
+ .string "I'd better try harder, too!$"
+
+MatchCall_BattlePyramidText10:: @ 82B1FA8
+ .string "Oh, {PLAYER}{STRING 5}, hello.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "You climbed {STR_VAR_3} floors inside\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "That's quite the accomplishment.\n"
+ .string "I need to work harder.$"
+
+MatchCall_BattlePyramidText11:: @ 82B2022
+ .string "Ah, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\p"
+ .string "I hear you're the terror of\n"
+ .string "the {STR_VAR_2}?\p"
+ .string "You rose through, what, {STR_VAR_3} floors?\n"
+ .string "That's gotta count for something.\p"
+ .string "I wonder if I can ever become\n"
+ .string "a champion?\p"
+ .string "…Pretty well impossible?\n"
+ .string "Well, see you!$"
+
+MatchCall_BattlePyramidText12:: @ 82B20F3
+ .string "Hello, {PLAYER}{STRING 5}.\n"
+ .string "It's me, {STR_VAR_1}.\l"
+ .string "Are you keeping well?\p"
+ .string "You've won through {STR_VAR_3} floors in\n"
+ .string "a place named {STR_VAR_2}?\p"
+ .string "That's quite the tale.\n"
+ .string "See you!$"
+
+MatchCall_BattlePyramidText13:: @ 82B2175
+ .string "Ah, hello, {PLAYER}{STRING 5}!\n"
+ .string "This is {STR_VAR_1}!\l"
+ .string "I hope you've been keeping well.\p"
+ .string "They say you climbed {STR_VAR_3} floors\n"
+ .string "in the {STR_VAR_2}?\p"
+ .string "I admire your energy!\n"
+ .string "Bye now.$"
+
+MatchCall_BattlePyramidText14:: @ 82B21FC
+ .string "Oh, hi, {PLAYER}{STRING 5}.\n"
+ .string "This is {STR_VAR_1}.\l"
+ .string "I heard about you!\p"
+ .string "Didn't you get through {STR_VAR_3} floors\n"
+ .string "in the {STR_VAR_2}?\p"
+ .string "You're an inspiration!\n"
+ .string "See you again!$"
+
+gText_Mom_Pokenav_2B227B:: @ 82B227B
+ .string "MOM: Your father and you…\n"
+ .string "Everyone is captivated by POKéMON.\p"
+ .string "What is the charm of POKéMON?\p"
+ .string "Me?\n"
+ .string "I adore POKéMON that help me with\l"
+ .string "my everyday chores.$"
+
+gText_Mom_Pokenav_2B2310:: @ 82B2310
+ .string "MOM: Hi, {PLAYER}!\n"
+ .string "Your father keeps himself locked\l"
+ .string "away in the PETALBURG GYM.\p"
+ .string "He comes home every so often.\n"
+ .string "But he goes back to the GYM when\l"
+ .string "he's eaten everything he can.\p"
+ .string "I'm guessing that losing to you\n"
+ .string "was a big blow to his pride!$"
+
+gText_Mom_Pokenav_2B23F3:: @ 82B23F3
+ .string "MOM: {PLAYER}…\n"
+ .string "Don't worry about me or the house.\p"
+ .string "Wear those RUNNING SHOES until\n"
+ .string "they fall apart, honey!$"
+
+gText_Roxanne_Pokenav_2B2456:: @ 82B2456
+ .string "ROXANNE: Oh, hello, {PLAYER}!\p"
+ .string "I've been hard at work retraining\n"
+ .string "since we met.\p"
+ .string "I will still need some more time\n"
+ .string "before I can reopen the GYM.\p"
+ .string "But when I do, please visit my GYM\n"
+ .string "for a rematch!$"
+
+gText_Roxanne_Pokenav_2B250E:: @ 82B250E
+ .string "ROXANNE: Is this {PLAYER}?\n"
+ .string "Congratulations!\l"
+ .string "I've been hearing about you!\p"
+ .string "As for me, I need some more time\n"
+ .string "before I can reopen the GYM.\p"
+ .string "But when I do, please visit my GYM\n"
+ .string "for a rematch!$"
+
+gText_Roxanne_Pokenav_2B25C1:: @ 82B25C1
+ .string "ROXANNE: {PLAYER}!\n"
+ .string "My GYM is ready!\p"
+ .string "Please visit RUSTBORO whenever\n"
+ .string "you can!$"
+
+gText_Roxanne_Pokenav_2B2607:: @ 82B2607
+ .string "ROXANNE: At the RUSTBORO GYM,\n"
+ .string "the fact that we battled, {PLAYER},\l"
+ .string "is a matter of pride.$"
+
+gText_Brawly_Pokenav_2B2659:: @ 82B2659
+ .string "BRAWLY: Hey, there, {PLAYER}{STRING 5}!\p"
+ .string "I learned a lot from the battle we\n"
+ .string "had together.\p"
+ .string "I intend to do my training over,\n"
+ .string "then reopen the GYM.\p"
+ .string "It's going to take some time before\n"
+ .string "I'm ready to run the GYM again.\p"
+ .string "But if I can reopen the GYM,\n"
+ .string "I want you to challenge us again.$"
+
+gText_Brawly_Pokenav_2B275D:: @ 82B275D
+ .string "BRAWLY: Hey, {PLAYER}{STRING 5}!\n"
+ .string "Congratulations!\p"
+ .string "Word about your exploits arrived\n"
+ .string "on tidal winds!\p"
+ .string "It appears as if I need to work on\n"
+ .string "my training some more.\p"
+ .string "It's going to take some time before\n"
+ .string "I'm ready to run the GYM again.\p"
+ .string "But if I can reopen the GYM,\n"
+ .string "I want you to challenge us again.$"
+
+gText_Brawly_Pokenav_2B286F:: @ 82B286F
+ .string "BRAWLY: Hey, {PLAYER}{STRING 5}!\n"
+ .string "My GYM's ready for action!\p"
+ .string "Come back to DEWFORD anytime\n"
+ .string "for another challenge!$"
+
+gText_Brawly_Pokenav_2B28D1:: @ 82B28D1
+ .string "BRAWLY: {PLAYER}{STRING 5}, I don't think\n"
+ .string "I'll ever get bored of battling you!$"
+
+gText_Wattson_Pokenav_2B2912:: @ 82B2912
+ .string "WATTSON: Oh, it's you!\p"
+ .string "After you left, I've been redoing\n"
+ .string "my training from scratch.\p"
+ .string "I'd say I could use a wee bit more\n"
+ .string "time to reopen my GYM.\p"
+ .string "You'll have to wait till then!\n"
+ .string "Wahahahaha!$"
+
+gText_Wattson_Pokenav_2B29CA:: @ 82B29CA
+ .string "WATTSON: Wahahahaha!\p"
+ .string "You've really done it, haven't you?\n"
+ .string "I've been getting word about you!\p"
+ .string "It seems I need to retrain some\n"
+ .string "more still.\p"
+ .string "I'd say I could use a wee bit more\n"
+ .string "time to reopen my GYM.\p"
+ .string "You'll have to wait till then!\n"
+ .string "Wahahahaha!$"
+
+gText_Wattson_Pokenav_2B2AB6:: @ 82B2AB6
+ .string "WATTSON: Oh, it's you!\n"
+ .string "My GYM's ready!\p"
+ .string "Visit MAUVILLE anytime!\n"
+ .string "Wahahahaha!$"
+
+gText_Wattson_Pokenav_2B2B01:: @ 82B2B01
+ .string "WATTSON: Wahahaha!\p"
+ .string "A battle with you is always charged\n"
+ .string "with shocking power!$"
+
+gText_Flannery_Pokenav_2B2B4D:: @ 82B2B4D
+ .string "FLANNERY: {PLAYER}…\p"
+ .string "When we battled, I learned exactly\n"
+ .string "how immature I was.\p"
+ .string "But I'm not done yet!\p"
+ .string "I'm going to redo my training and\n"
+ .string "reopen the GYM.\p"
+ .string "When the time comes, {PLAYER},\n"
+ .string "please challenge us again.$"
+
+gText_Flannery_Pokenav_2B2C0E:: @ 82B2C0E
+ .string "FLANNERY: Hello, {PLAYER}?\n"
+ .string "Congratulations!\p"
+ .string "Word of your success has reached\n"
+ .string "us like the heat of a volcano!\p"
+ .string "Our training is coming along very\n"
+ .string "well here.\p"
+ .string "When the GYM's ready, a mark will\n"
+ .string "appear beside my name in the\l"
+ .string "MATCH CALL list.$"
+
+gText_Flannery_Pokenav_2B2CF1:: @ 82B2CF1
+ .string "FLANNERY: Oh, {PLAYER}?\n"
+ .string "Our GYM's ready!\p"
+ .string "Come to LAVARIDGE for a soak\n"
+ .string "in the hot spring and a challenge!$"
+
+gText_Flannery_Pokenav_2B2D54:: @ 82B2D54
+ .string "FLANNERY: {PLAYER}…\n"
+ .string "I'm positive that you keep getting\l"
+ .string "better at training every time.$"
+
+gText_Winona_Pokenav_2B2DA4:: @ 82B2DA4
+ .string "WINONA: Hello, {PLAYER}!\p"
+ .string "Thanks to our battle, I've come\n"
+ .string "to understand my weak points!\p"
+ .string "When I reopen the GYM, I won't go\n"
+ .string "down in defeat again!$"
+
+gText_Winona_Pokenav_2B2E2B:: @ 82B2E2B
+ .string "WINONA: You've done it, {PLAYER}!\p"
+ .string "News about the new CHAMPION\n"
+ .string "has reached us in FORTREE!\p"
+ .string "But… The next time we battle,\n"
+ .string "it's not going to end the same way.$"
+
+gText_Winona_Pokenav_2B2EC2:: @ 82B2EC2
+ .string "WINONA: Is this {PLAYER}?\n"
+ .string "Our GYM is back in operation!\p"
+ .string "We're waiting for you in FORTREE!$"
+
+gText_Winona_Pokenav_2B2F16:: @ 82B2F16
+ .string "WINONA: {PLAYER}…\n"
+ .string "Though I have lost, my wings will\l"
+ .string "never break.\p"
+ .string "Yes, in exactly the same way that\n"
+ .string "you never lost sight of your dream.$"
+
+gText_TateLiza_Pokenav_2B2F97:: @ 82B2F97
+ .string "TATE: Oh! You're…\n"
+ .string "LIZA: {PLAYER}!\p"
+ .string "TATE: We're in training again…\n"
+ .string "LIZA: So we can reopen our GYM!\p"
+ .string "TATE: When our GYM is ready…\n"
+ .string "LIZA: When our GYM is ready…\p"
+ .string "TATE: A mark'll appear by our name…\n"
+ .string "LIZA: On the MATCH CALL list.$"
+
+gText_TateLiza_Pokenav_2B306E:: @ 82B306E
+ .string "TATE: {PLAYER}, congratulations!\n"
+ .string "LIZA: {PLAYER}, congratulations!\p"
+ .string "TATE: The two of us are…\n"
+ .string "LIZA: Still in training!\p"
+ .string "TATE: We need some more time, but…\n"
+ .string "LIZA: When our GYM is ready…\p"
+ .string "TATE: A mark'll appear by our name…\n"
+ .string "LIZA: On the MATCH CALL list.$"
+
+gText_TateLiza_Pokenav_2B3158:: @ 82B3158
+ .string "TATE: {PLAYER}!\n"
+ .string "LIZA: {PLAYER}!\p"
+ .string "TATE: Our GYM is ready!\n"
+ .string "LIZA: Our GYM is ready!\p"
+ .string "TATE: Please come visit…\n"
+ .string "LIZA: MOSSDEEP anytime!$"
+
+gText_TateLiza_Pokenav_2B31CD:: @ 82B31CD
+ .string "TATE: {PLAYER}, the battle we had…\n"
+ .string "LIZA: Is an invaluable experience.\p"
+ .string "TATE: It would be nice if…\n"
+ .string "LIZA: We could all battle again!$"
+
+gText_Juan_Pokenav_2B3249:: @ 82B3249
+ .string "JUAN: Hmm…\n"
+ .string "{PLAYER}{STRING 5}… Was it?\p"
+ .string "Our battle together--it brought\n"
+ .string "to me memories of when I first\l"
+ .string "encountered WALLACE.\p"
+ .string "Perhaps you are a genius who may\n"
+ .string "yet surpass WALLACE!$"
+
+gText_Juan_Pokenav_2B32EC:: @ 82B32EC
+ .string "JUAN: Fufu… {PLAYER}{STRING 5}…\n"
+ .string "You've finally achieved your goal.\p"
+ .string "My eye for appraising talent wasn't\n"
+ .string "mistaken…\p"
+ .string "I wish for another chance to meet\n"
+ .string "you, for you have scaled the peak\l"
+ .string "of power and prestige.$"
+
+gText_Juan_Pokenav_2B33AA:: @ 82B33AA
+ .string "JUAN: Hoho… {PLAYER}{STRING 5}…\p"
+ .string "Our SOOTOPOLIS GYM has finally\n"
+ .string "reopened.\p"
+ .string "If you wish to see me, you are\n"
+ .string "welcome to visit anytime.$"
+
+gText_Juan_Pokenav_2B341E:: @ 82B341E
+ .string "JUAN: {PLAYER}{STRING 5}…\p"
+ .string "Like the finest music, the battles\n"
+ .string "we wage together strike chords\l"
+ .string "of inspiration in my heart…\p"
+ .string "When I close my eyes, I see visions\n"
+ .string "of you soaring with the melody…$"
+
+gText_Sidney_Pokenav_2B34CC:: @ 82B34CC
+ .string "SIDNEY: Yo, {PLAYER}!\p"
+ .string "If you want to battle with me\n"
+ .string "again, you come on back whenever\l"
+ .string "you like to the POKéMON LEAGUE.\p"
+ .string "I'll always be here!\n"
+ .string "I'll be waiting!$"
+
+gText_Phoebe_Pokenav_2B3561:: @ 82B3561
+ .string "PHOEBE: Hi, {PLAYER}!\p"
+ .string "How about coming back here again\n"
+ .string "sometime?\p"
+ .string "I'd like to see how much tighter\n"
+ .string "your bond has grown with your\l"
+ .string "POKéMON.$"
+
+gText_Glacia_Pokenav_2B35E4:: @ 82B35E4
+ .string "GLACIA: Hello, {PLAYER}.\p"
+ .string "I trust you haven't become\n"
+ .string "complacent with your power?\p"
+ .string "If you feel the need to cool your\n"
+ .string "hot emotions just a little, do come\l"
+ .string "to the POKéMON LEAGUE…$"
+
+gText_Drake_Pokenav_2B368B:: @ 82B368B
+ .string "DRAKE: That voice… {PLAYER}, is it?\n"
+ .string "You sound well…\p"
+ .string "I understand that there is now\n"
+ .string "a facility called the BATTLE\l"
+ .string "FRONTIER that tests the skills of\l"
+ .string "TRAINERS.\p"
+ .string "However, if you wish to have real\n"
+ .string "battles, there is no substitute for\l"
+ .string "the POKéMON LEAGUE!\p"
+ .string "Don't you agree, {PLAYER}?$"
+
+gText_Wallace_Pokenav_2B3790:: @ 82B3790
+ .string "WALLACE: Hello, {PLAYER}{STRING 5}.\n"
+ .string "Have you met STEVEN?\p"
+ .string "He is…\n"
+ .string "Actually incredibly skilled.\p"
+ .string "However, he's an odd soul who\n"
+ .string "rarely battles.\p"
+ .string "Instead, he would rather look for\n"
+ .string "rare stones.\p"
+ .string "I'm sure he's digging in a cave or\n"
+ .string "a craggy mountain somewhere.\p"
+ .string "But what is a rare stone exactly?\n"
+ .string "All I can think of is a METEORITE…$"
+
+MossdeepCity_SpaceCenter_2F_Text_2B38C1: @ 82B38C1
+ .string "… … … … … …\n"
+ .string "… … … … … Beep!\p"
+ .string "MAY: Hi, {PLAYER}{KUN}!\p"
+ .string "I was just in PACIFIDLOG a little\n"
+ .string "while ago.\p"
+ .string "I saw a giant green POKéMON\n"
+ .string "flying high in the sky.\p"
+ .string "I…\n"
+ .string "I've never seen anything like it.\p"
+ .string "I wonder what it was.\n"
+ .string "Is this maybe a major discovery?\p"
+ .string "… … … … … …\n"
+ .string "… … … … … Click!$"
+
+MossdeepCity_SpaceCenter_2F_Text_2B39C6: @ 82B39C6
+ .string "… … … … … …\n"
+ .string "… … … … … Beep!\p"
+ .string "BRENDAN: Hey, {PLAYER}!\n"
+ .string "I was in PACIFIDLOG just now.\p"
+ .string "I saw this huge green POKéMON\n"
+ .string "flying across the sky.\p"
+ .string "I've never seen anything that\n"
+ .string "amazing before.\p"
+ .string "I wish you could've seen it,\n"
+ .string "{PLAYER}.\p"
+ .string "… … … … … …\n"
+ .string "… … … … … Click!$"
+
+gText_May_Pokenav_2B3AB3:: @ 2B3AB3
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "MR. BRINEY retired as a SAILOR,\n"
+ .string "but I still see him out on the sea\l"
+ .string "with his pet PEEKO sometimes.\p"
+ .string "He must love the sea still.$"
+
+gText_May_Pokenav_2B3B3F:: @ 2B3B3F
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "You know how little towns like\n"
+ .string "PETALBURG and DEWFORD have GYMS?\p"
+ .string "For some reason, the big port of\n"
+ .string "SLATEPORT doesn't have a GYM.\p"
+ .string "When they finally build a GYM there,\n"
+ .string "I should apply to be the LEADER.$"
+
+gText_May_Pokenav_2B3C13:: @ 2B3C13
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "Do you remember a man named\n"
+ .string "the CUTTER in RUSTBORO?\l"
+ .string "He had a house there, remember?\p"
+ .string "Well, I found out his younger\n"
+ .string "brother lives in MAUVILLE.\p"
+ .string "Can you guess his name?\p"
+ .string "… … … … … …\n"
+ .string "… … … … … …\p"
+ .string "The ROCK SMASH GUY!$"
+
+gText_May_Pokenav_2B3CF3:: @ 2B3CF3
+ .string "MAY: {PLAYER}{STRING 5}?\p"
+ .string "RUSTURF TUNNEL…\n"
+ .string "They named it that because it\l"
+ .string "joins RUSTBORO and VERDANTURF.$"
+
+gText_May_Pokenav_2B3D4B:: @ 2B3D4B
+ .string "MAY: {PLAYER}{STRING 5}, how are you?\p"
+ .string "I'm out on ROUTE 111 now.\p"
+ .string "I'm going to get a rest at an old\n"
+ .string "lady's house.\p"
+ .string "She lives just north of\n"
+ .string "the desert.$"
+
+gText_May_Pokenav_2B3DD1:: @ 2B3DD1
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "Did you know about the MIRAGE\n"
+ .string "TOWER in the desert?\p"
+ .string "They say, like a mirage, it seems\n"
+ .string "to mysteriously come and go.\p"
+ .string "I wish I could see it.$"
+
+gText_May_Pokenav_2B3E69:: @ 2B3E69
+ .string "MAY: {PLAYER}{STRING 5}, yahoo!\n"
+ .string "I'm on ROUTE 119 now.\p"
+ .string "There's a big river here, and\n"
+ .string "it often rains.\p"
+ .string "I got soaked!$"
+
+gText_May_Pokenav_2B3ECD:: @ 2B3ECD
+ .string "MAY: {PLAYER}{STRING 5}, hi.\p"
+ .string "MT. PYRE is a memorial to POKéMON\n"
+ .string "whose lives have ended.\p"
+ .string "Maybe as a result, it's infested\n"
+ .string "with many GHOST-type POKéMON!$"
+
+gText_May_Pokenav_2B3F2B:: @ 2B3F2B
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "I was thinking of going to the hot\n"
+ .string "spring in LAVARIDGE.\p"
+ .string "But on the way, around JAGGED\n"
+ .string "PASS, I ran into some bad-looking\l"
+ .string "characters. The mood was ugly!$"
+
+gText_May_Pokenav_2B3FFB:: @ 2B3FFB
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
+ .string "Did you see the news?\p"
+ .string "They say CAPT. STERN discovered\n"
+ .string "the SEAFLOOR CAVERN while on his\l"
+ .string "submarine expedition.$"
+
+gText_May_Pokenav_2B402B:: @ 2B402B
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
+ .string "Don't you think it's neat?\p"
+ .string "Even if you don't have a boat,\n"
+ .string "you can cross the sea using\l"
+ .string "a POKéMON's move.\p"
+ .string "Did you know there's more?\p"
+ .string "There's a POKéMON move that lets\n"
+ .string "you go to the bottom of the sea.$"
+
+gText_May_Pokenav_2B414B:: @ 2B414B
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\n"
+ .string "Hope things are okay!\p"
+ .string "Have you been on the sea and\n"
+ .string "found your way to the other side\l"
+ .string "blocked?\p"
+ .string "Try diving deep underwater and\n"
+ .string "following trenches.\p"
+ .string "When you get to the other side,\n"
+ .string "come up to the surface. Easy!$"
+
+gText_May_Pokenav_2B4228:: @ 2B4228
+ .string "MAY: Hi, {PLAYER}{STRING 5}!\p"
+ .string "How's it going?\n"
+ .string "Are you filling your POKéDEX?\p"
+ .string "I heard a rumor that there are\n"
+ .string "super-ancient POKéMON out there.\l"
+ .string "And there are three of them!\p"
+ .string "I would love to see even one…$"
+
+gText_May_Pokenav_2B42E0:: @ 2B42E0
+ .string "MAY: {PLAYER}{STRING 5}!\n"
+ .string "I heard the rumors!\p"
+ .string "You beat the SOOTOPOLIS GYM\n"
+ .string "LEADER?\p"
+ .string "That means you don't have far\n"
+ .string "to go, do you?$"
+
+gText_May_Pokenav_2B4350:: @ 2B4350
+ .string "MAY: There isn't a single TRAINER\n"
+ .string "left in HOENN who doesn't know who\l"
+ .string "you are, {PLAYER}{STRING 5}!\p"
+ .string "When I tell people that I'm friends\n"
+ .string "with you, {PLAYER}{STRING 5}, they're all\l"
+ .string "surprised!$"
+
+gText_Brendan_Pokenav_2B43EF:: @ 2B43EF
+ .string "BRENDAN: Hey, {PLAYER}!\p"
+ .string "MR. BRINEY retired as a SAILOR,\n"
+ .string "but I still see him out on the sea\l"
+ .string "with his pet PEEKO sometimes.\p"
+ .string "I guess he must love\n"
+ .string "the sea still.$"
+
+gText_Brendan_Pokenav_2B4486:: @ 2B4486
+ .string "BRENDAN: Hey, {PLAYER}!\p"
+ .string "I don't get how little towns like\n"
+ .string "PETALBURG and DEWFORD have GYMS.\p"
+ .string "I mean, not when the big port of\n"
+ .string "SLATEPORT doesn't have a GYM.\p"
+ .string "When they finally build a GYM there,\n"
+ .string "I should apply to be the LEADER.$"
+
+gText_Brendan_Pokenav_2B4560:: @ 2B4560
+ .string "BRENDAN: Yo, {PLAYER}!\p"
+ .string "Do you remember a guy named\n"
+ .string "the CUTTER in RUSTBORO?\l"
+ .string "He had a house there, right?\p"
+ .string "Well, it turns out his little\n"
+ .string "brother lives in MAUVILLE.\p"
+ .string "Can you guess his name?\p"
+ .string "… … … … … …\n"
+ .string "… … … … … …\p"
+ .string "The ROCK SMASH GUY!$"
+
+gText_Brendan_Pokenav_2B463F:: @ 2B463F
+ .string "BRENDAN: This voice… {PLAYER}?\p"
+ .string "They gave RUSTURF TUNNEL its name\n"
+ .string "because it joins RUSTBORO and\l"
+ .string "VERDANTURF.\p"
+ .string "Did you know that?$"
+
+gText_Brendan_Pokenav_2B46B7:: @ 2B46B7
+ .string "BRENDAN: {PLAYER}, what's up?\p"
+ .string "Hey, I'm out on ROUTE 111 now.\p"
+ .string "I'm going to rest up at an old\n"
+ .string "lady's house north of the desert.\p"
+ .string "If you're in the area, you should\n"
+ .string "visit her, too.$"
+
+gText_Brendan_Pokenav_2B4761:: @ 2B4761
+ .string "BRENDAN: Hey, {PLAYER}!\p"
+ .string "Did you know about the MIRAGE\n"
+ .string "TOWER in the desert?\p"
+ .string "They say, like a mirage, it can be\n"
+ .string "seen only sometimes.\p"
+ .string "I'd like to see that!$"
+
+gText_Brendan_Pokenav_2B47F4:: @ 2B47F4
+ .string "BRENDAN: Who's this? Oh, {PLAYER}?\n"
+ .string "Guess what? I'm on ROUTE 119 now.\p"
+ .string "There's a big river here, and\n"
+ .string "it rains all the time.\p"
+ .string "I got soaked to the bone!$"
+
+gText_Brendan_Pokenav_2B4882:: @ 2B4882
+ .string "BRENDAN: {PLAYER}!\p"
+ .string "MT. PYRE is a memorial to POKéMON\n"
+ .string "whose lives have ended.\p"
+ .string "That's probably why it's infested\n"
+ .string "with many GHOST-type POKéMON!$"
+
+gText_Brendan_Pokenav_2B4909:: @ 2B4909
+ .string "BRENDAN: Hey there, {PLAYER}.\p"
+ .string "I was on my way back to the hot\n"
+ .string "spring in LAVARIDGE.\p"
+ .string "But around JAGGED PASS, I ran into\n"
+ .string "some nasty-looking characters.\p"
+ .string "Those creeps…\n"
+ .string "I think they were TEAM MAGMA.$"
+
+gText_Brendan_Pokenav_2B49C4:: @ 2B49C4
+ .string "BRENDAN: Hi, {PLAYER}!\n"
+ .string "Did you catch the news?\p"
+ .string "They say CAPT. STERN discovered\n"
+ .string "the SEAFLOOR CAVERN while on his\l"
+ .string "submarine expedition.$"
+
+gText_Brendan_Pokenav_2B4A44:: @ 2B4A44
+ .string "BRENDAN: Hey there, {PLAYER}!\n"
+ .string "Don't you think it's awesome?\p"
+ .string "Even if you don't have a boat,\n"
+ .string "you can cross the sea using\l"
+ .string "a POKéMON's move.\p"
+ .string "And, there's a move that lets you\n"
+ .string "travel to the bottom of the sea.\p"
+ .string "Man, POKéMON can do anything!$"
+
+gText_Brendan_Pokenav_2B4B28:: @ 2B4B28
+ .string "BRENDAN: Howdy, {PLAYER}!\n"
+ .string "How are you holding up?\p"
+ .string "Ever found your way to the other\n"
+ .string "side blocked while on the sea?\p"
+ .string "Try diving deep underwater and\n"
+ .string "following trenches at the bottom.\p"
+ .string "When you get to the other side,\n"
+ .string "come up to the surface. Simple!$"
+
+gText_Brendan_Pokenav_2B4C15:: @ 2B4C15
+ .string "BRENDAN: Hey there, {PLAYER}!\p"
+ .string "How's it going? Filling up your\n"
+ .string "POKéDEX successfully?\p"
+ .string "I heard a rumor that there are\n"
+ .string "super-ancient POKéMON out there.\l"
+ .string "And not just one--three!\p"
+ .string "I'd love to catch even one…$"
+
+gText_Brendan_Pokenav_2B4CD8:: @ 2B4CD8
+ .string "BRENDAN: {PLAYER}!\n"
+ .string "I heard the rumors!\p"
+ .string "You beat the SOOTOPOLIS GYM\n"
+ .string "LEADER? Awesome!\p"
+ .string "You're getting awful close now!$"
+
+gText_Brendan_Pokenav_2B4D46:: @ 2B4D46
+ .string "BRENDAN: There isn't a TRAINER in\n"
+ .string "all of HOENN who doesn't know who\l"
+ .string "you are, {PLAYER}!\p"
+ .string "When I tell people that I'm friends\n"
+ .string "with you, {PLAYER}, they get pretty\l"
+ .string "envious!$"
+
+gText_Wally_Pokenav_2B4DE2:: @ 2B4DE2
+ .string "WALLY: Oh, {PLAYER}!\p"
+ .string "I've been getting healthier and\n"
+ .string "more physically fit.\p"
+ .string "I hope I can become a TRAINER like\n"
+ .string "you soon, {PLAYER}!$"
+
+gText_Wally_Pokenav_2B4E57:: @ 2B4E57
+ .string "WALLY: {PLAYER}, hello!\p"
+ .string "After RUSTURF TUNNEL went\n"
+ .string "through, WANDA's been very happy!$"
+
+gText_Wally_Pokenav_2B4EA5:: @ 2B4EA5
+ .string "WALLY: Oh, {PLAYER}!\p"
+ .string "I… I left my uncle's place in\n"
+ .string "VERDANTURF without telling anyone.\p"
+ .string "I wonder if he's furious with me…\p"
+ .string "{PLAYER}, you understand how\n"
+ .string "I feel, don't you?$"
+
+gText_Wally_Pokenav_2B4F41:: @ 2B4F41
+ .string "WALLY: {PLAYER}?\n"
+ .string "It's me, WALLY!\p"
+ .string "The world of TRAINERS is amazing!\p"
+ .string "When I have my POKéMON with me,\n"
+ .string "all sorts of people say hi!\p"
+ .string "It's as if everyone's getting\n"
+ .string "connected through POKéMON!$"
+
+gText_Wally_Pokenav_2B4FF3:: @ 2B4FF3
+ .string "WALLY: {PLAYER}? It's awesome!\n"
+ .string "That RALTS we caught together?\l"
+ .string "It evolved, {PLAYER}!\p"
+ .string "Maybe I'm talented…\p"
+ .string "Oh, but I shouldn't get a big head\n"
+ .string "like that!\p"
+ .string "After all, it's the POKéMON that\n"
+ .string "should be praised!$"
+
+gText_Wally_Pokenav_2B50B1:: @ 2B50B1
+ .string "… … … … … …\n"
+ .string "… … … … … …\p"
+ .string "WALLY appears to be out of\n"
+ .string "the POKéNAV's service area…$"
+
+gText_Wally_Pokenav_2B5100:: @ 2B5100
+ .string "WALLY: Oh, {PLAYER}!\p"
+ .string "Before I met you, I hardly ever\n"
+ .string "left my house…\p"
+ .string "But now, I'm on an adventure with\n"
+ .string "my very own POKéMON…\p"
+ .string "{PLAYER}…\n"
+ .string "Thank you…$"
+
+gText_Scott_Pokenav_2B5184:: @ 2B5184
+ .string "SCOTT: Howdy, {PLAYER}{STRING 5}!\p"
+ .string "You know how POKéMON can be found\n"
+ .string "everywhere?\p"
+ .string "Like in the mountains, in the sea,\n"
+ .string "in tall grass anywhere?\p"
+ .string "Just like POKéMON, you can find\n"
+ .string "TRAINERS everywhere, too.\p"
+ .string "As a result, I have to hurry\n"
+ .string "everywhere, too. Busy, busy!$"
+
+gText_Scott_Pokenav_2B5275:: @ 2B5275
+ .string "SCOTT: I'm on ROUTE 119 right now.\n"
+ .string "It's teeming with TRAINERS!\p"
+ .string "It's also overgrown with tall grass\n"
+ .string "everywhere, it seems.\p"
+ .string "Walking around in shorts here\n"
+ .string "makes me all ticklish!$"
+
+gText_Scott_Pokenav_2B5323:: @ 2B5323
+ .string "SCOTT: Hi, hi, {PLAYER}{STRING 5}!\p"
+ .string "Have you had the chance to climb\n"
+ .string "MT. PYRE?\p"
+ .string "The place is a memorial to POKéMON\n"
+ .string "that have passed away.\p"
+ .string "It's somewhere every TRAINER\n"
+ .string "should climb to the top of once.$"
+
+gText_Scott_Pokenav_2B53DB:: @ 2B53DB
+ .string "SCOTT: Hi, {PLAYER}{STRING 5}!\p"
+ .string "I've been hearing about these odd\n"
+ .string "gangs being a nuisance.\p"
+ .string "TEAM MAGMA and TEAM AQUA,\n"
+ .string "I think they were.\p"
+ .string "I would think there'd be some\n"
+ .string "skilled TRAINERS among them.\p"
+ .string "…But if they're thugs…$"
+
+gText_Scott_Pokenav_2B54A5:: @ 2B54A5
+ .string "SCOTT: Oh, hi, {PLAYER}{STRING 5}.\p"
+ .string "Might there be tough TRAINERS\n"
+ .string "at the bottom of the sea?\p"
+ .string "I can't go check for myself.\n"
+ .string "I can't swim, for one.\l"
+ .string "And I don't raise POKéMON…$"
+
+gText_Scott_Pokenav_2B5541:: @ 2B5541
+ .string "SCOTT: Hi, hi, {PLAYER}{STRING 5}!\p"
+ .string "You know that you can challenge\n"
+ .string "the POKéMON LEAGUE when you've\l"
+ .string "collected all the GYM BADGES?\p"
+ .string "With your talent, becoming the\n"
+ .string "CHAMPION isn't a pipe dream.\p"
+ .string "But did you know?\n"
+ .string "There's somewhere even better.\p"
+ .string "But, that's all I'm willing to say\n"
+ .string "for the time being.\p"
+ .string "It's something you can look\n"
+ .string "forward to.\p"
+ .string "When you've won your way through\n"
+ .string "the POKéMON LEAGUE into the HALL\l"
+ .string "OF FAME!$"
+
+gText_Scott_Pokenav_2B56CA:: @ 2B56CA
+ .string "… … … … … …\n"
+ .string "… … … … … …\p"
+ .string "SCOTT appears to be out of\n"
+ .string "the POKéNAV's service area…$"
+
+gText_Norman_Pokenav_2B5719:: @ 82B5719
+ .string "DAD: In RUSTBORO, there's a man\n"
+ .string "that goes by the odd name of\l"
+ .string "the CUTTER.\p"
+ .string "If you're in the area, you should\n"
+ .string "pay him a visit.$"
+
+gText_Norman_Pokenav_2B5795:: @ 82B5795
+ .string "DAD: Hm… Little by little, but also\n"
+ .string "very surely, you're getting\l"
+ .string "tougher, {PLAYER}.\p"
+ .string "The stronger you get, the farther\n"
+ .string "and higher you soar from Mother\l"
+ .string "and me…\p"
+ .string "This feeling is hard to explain.$"
+
+gText_Norman_Pokenav_2B584D:: @ 82B584D
+ .string "DAD: I see…\n"
+ .string "You've collected four GYM BADGES…\p"
+ .string "There's no avoiding it now.\n"
+ .string "We will battle like I promised.\p"
+ .string "Come anytime.\n"
+ .string "We'll all be waiting for you!$"
+
+gText_Norman_Pokenav_2B58E3:: @ 82B58E3
+ .string "DAD: {PLAYER}! You'd better go visit\n"
+ .string "Mother every so often.\p"
+ .string "I'm going to remain here and\n"
+ .string "redouble my training.\p"
+ .string "The way of battling is deep\n"
+ .string "and unforgiving!$"
+
+gText_Norman_Pokenav_2B5979:: @ 82B5979
+ .string "DAD: Oh, hi, {PLAYER}!\p"
+ .string "What's that? MAGMA EMBLEM?\n"
+ .string "I don't know what that's about.\p"
+ .string "But with a name like that, it may\n"
+ .string "be somehow linked to a volcano!$"
+
+gText_Norman_Pokenav_2B5A07:: @ 82B5A07
+ .string "DAD: Hiyah! Haah! Dwah!\p"
+ .string "…Oh? {PLAYER}!\p"
+ .string "You caught me right in the middle\n"
+ .string "of a POKéMON training session!$"
+
+gText_Norman_Pokenav_2B5A69:: @ 82B5A69
+ .string "DAD: {PLAYER}!\p"
+ .string "Who would've thought you'd become\n"
+ .string "the POKéMON LEAGUE CHAMPION…\p"
+ .string "Okay!\n"
+ .string "I won't be left behind!$"
+
+gText_Norman_Pokenav_2B5ACF:: @ 82B5ACF
+ .string "DAD: Hm? {PLAYER}?\n"
+ .string "What good timing!\p"
+ .string "This time, I'm going to challenge\n"
+ .string "you to battle.\p"
+ .string "I'm waiting in the PETALBURG GYM.\n"
+ .string "Accept my challenge anytime!$"
+
+gText_Norman_Pokenav_2B5B5E:: @ 82B5B5E
+ .string "DAD: …You amaze me, {PLAYER}.\n"
+ .string "How much higher will you soar?$"
+
+gText_Steven_Pokenav_2B5B95:: @ 82B5B95
+ .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
+ .string "Have you been to MAUVILLE\n"
+ .string "already?\p"
+ .string "You should visit the BIKE SHOP\n"
+ .string "and get a MACH BIKE.\p"
+ .string "Then, try exploring the GRANITE\n"
+ .string "CAVE thoroughly.\p"
+ .string "You may make a new discovery\n"
+ .string "there.$"
+
+gText_Steven_Pokenav_2B5C53:: @ 82B5C53
+ .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
+ .string "I've met a lot of different\n"
+ .string "TRAINERS so far.\p"
+ .string "But you're one of a kind.\n"
+ .string "You're not like anyone else.$"
+
+gText_Steven_Pokenav_2B5CC9:: @ 82B5CC9
+ .string "STEVEN: Hi, {PLAYER}{STRING 5}!\p"
+ .string "When you're on an adventure with\n"
+ .string "your POKéMON, what do you think?\p"
+ .string "Do you consider them to be strong\n"
+ .string "partners?\p"
+ .string "Do you think of them as fun\n"
+ .string "companions?\p"
+ .string "Depending on how you think, your\n"
+ .string "adventure's significance changes.$"
+
+gText_Steven_Pokenav_2B5DB4:: @ 82B5DB4
+ .string "STEVEN: Hello?\n"
+ .string "{PLAYER}{STRING 5}?\p"
+ .string "I'm involved in a spot of trouble\n"
+ .string "at the SPACE CENTER.\p"
+ .string "I'm sorry, but I can't talk now.\n"
+ .string "Bye!$"
+
+gText_Steven_Pokenav_2B5E26:: @ 82B5E26
+ .string "STEVEN: Oh!\n"
+ .string "{PLAYER}{STRING 5}!\p"
+ .string "There's no need to talk.\n"
+ .string "It's past time for talking.\p"
+ .string "You have to believe in yourself\n"
+ .string "and do what's right.$"
+
+gText_Steven_Pokenav_2B5EA2:: @ 82B5EA2
+ .string "… … … … … …\p"
+ .string "STEVEN appears not to be getting\n"
+ .string "the call…$"
+
+gText_Steven_Pokenav_2B5ED9:: @ 82B5ED9
+ .string "STEVEN: {PLAYER}{STRING 5}… Congratulations\n"
+ .string "for entering the HALL OF FAME.\p"
+ .string "… … … … … …\n"
+ .string "… … … … … …\p"
+ .string "I hope we can meet again\n"
+ .string "somewhere!$"
+
+Route101_Text_2B5F52: @ 82B5F52
+ .string "PROF. BIRCH: Oh, {PLAYER}{KUN}!\n"
+ .string "I've already heard about you!\p"
+ .string "It seems your POKéNAV's been\n"
+ .string "upgraded with MATCH CALL.\p"
+ .string "Well, I should register, too!\p"
+ .string "That way, I'd be able to examine\n"
+ .string "your POKéDEX even while you're\l"
+ .string "out in the field.\p"
+ .string "… … … … … …$"
+
+Route101_Text_2B603A: @ 82B603A
+ .string "Registered PROF. BIRCH\n"
+ .string "in the POKéNAV.$"
+
+ .string "PROF. BIRCH: When one has both\n"
+ .string "the POKéDEX and POKéNAV, studying\l"
+ .string "POKéMON becomes more fun, eh?$"
+
+gText_MrStone_Pokenav_2B60C0:: @ 82B60C0
+ .string "MR. STONE: Oh? {PLAYER}{STRING 5}!\p"
+ .string "Since you called me, the POKéNAV\n"
+ .string "must be working properly!\p"
+ .string "Other people will be registered,\n"
+ .string "so try calling them up, too!\p"
+ .string "Good! Good!\n"
+ .string "You seem to be quite happy!\p"
+ .string "Hm…\n"
+ .string "How could I know that?\p"
+ .string "It's because I'm looking down at\n"
+ .string "you from my office window!\p"
+ .string "Wahahaha!\n"
+ .string "See you again!$"
+
+gText_MrStone_Pokenav_2B61E6:: @ 82B61E6
+ .string "MR. STONE: Oh? {PLAYER}{STRING 5}!\p"
+ .string "What's wrong? Have you forgotten\n"
+ .string "about that little errand of mine?\p"
+ .string "I need you to deliver my letter\n"
+ .string "to STEVEN in DEWFORD.\p"
+ .string "After that, deliver our parcel to\n"
+ .string "CAPT. STERN in SLATEPORT.\p"
+ .string "You remember, don't you?\p"
+ .string "Now, since I am a busy PRESIDENT,\n"
+ .string "I have to go! Bye-bye!$"
+
+gText_MrStone_Pokenav_2B6302:: @ 82B6302
+ .string "MR. STONE: Oh! {PLAYER}{STRING 5}!\p"
+ .string "Ah, so you've met STEVEN!\n"
+ .string "I'd better reward you, then!\p"
+ .string "When you visit RUSTBORO again,\n"
+ .string "come see me at my office.\p"
+ .string "I'll be waiting for you!$"
+
+gText_MrStone_Pokenav_2B63A0:: @ 82B63A0
+ .string "MR. STONE: Oh! {PLAYER}{STRING 5}!\p"
+ .string "Did you know that DEVON was\n"
+ .string "digging the RUSTURF TUNNEL?\p"
+ .string "But we shut down the operation to\n"
+ .string "protect the POKéMON in the area.\p"
+ .string "It's a no-brainer, really.\p"
+ .string "It's more important to let POKéMON\n"
+ .string "live in peace than worry about our\l"
+ .string "own convenience.$"
+
+gText_MrStone_Pokenav_2B64A2:: @ 82B64A2
+ .string "MR. STONE: Hello, hello, {PLAYER}{STRING 5}!\p"
+ .string "I heard from someone in PETALBURG\n"
+ .string "that you're NORMAN's child!\p"
+ .string "No wonder you're such a capable\n"
+ .string "being!$"
+
+gText_MrStone_Pokenav_2B6526:: @ 82B6526
+ .string "MR. STONE: What's that?\p"
+ .string "You battled your own father and\n"
+ .string "defeated him?\p"
+ .string "That's astounding!\p"
+ .string "I had no idea that I befriended\n"
+ .string "someone so special! Wahaha!$"
+
+gText_MrStone_Pokenav_2B65BB:: @ 82B65BB
+ .string "Hello!\n"
+ .string "This is DEVON CORPORATI…\l"
+ .string "Oh, hello, {PLAYER}!\p"
+ .string "Our PRESIDENT was here a little\n"
+ .string "while ago, but he's gone out.\p"
+ .string "Our PRESIDENT is busy, but you\n"
+ .string "seem to be just as busy, {PLAYER}.$"
+
+gText_MrStone_Pokenav_2B6664:: @ 82B6664
+ .string "…Huh? …What's that?\p"
+ .string "GROU… Yes? …DON?\p"
+ .string "You're breaking up…\n"
+ .string "…can't hear…\p"
+ .string "BZZZZ…$"
+
+gText_MrStone_Pokenav_2B66B1:: @ 82B66B1
+ .string "…Huh? …What's that?\p"
+ .string "Seaflo… Yes? …Caver…?\p"
+ .string "You're breaking up…\n"
+ .string "…can't hear…\p"
+ .string "BZZZZ…$"
+
+gText_MrStone_Pokenav_2B6703:: @ 82B6703
+ .string "MR. STONE: {PLAYER}{STRING 5}! It's me!\p"
+ .string "You were apparently involved in all\n"
+ .string "sorts of things, but I, being busy,\l"
+ .string "haven't a clue exactly what!\p"
+ .string "However, I urge you to take\n"
+ .string "the road you believe in and walk it.\p"
+ .string "I'll always be in your corner!\n"
+ .string "Take care!$"
+
+gText_MrStone_Pokenav_2B67ED:: @ 82B67ED
+ .string "MR. STONE: … … … … … …\n"
+ .string "Is this maybe {PLAYER}{STRING 5}?\p"
+ .string "Your voice is so full of confidence,\n"
+ .string "I didn't recognize you right off!\p"
+ .string "Hm! You must come visit us at DEVON\n"
+ .string "sometime!$"
diff --git a/include/constants/battle_frontier.h b/include/constants/battle_frontier.h
index 55b14b642..ca9e3bc9f 100644
--- a/include/constants/battle_frontier.h
+++ b/include/constants/battle_frontier.h
@@ -9,6 +9,7 @@
#define FRONTIER_FACILITY_FACTORY 4
#define FRONTIER_FACILITY_PIKE 5
#define FRONTIER_FACILITY_PYRAMID 6
+#define NUM_FRONTIER_FACILITIES 7
#define TENT_VERDANTURF 2
#define TENT_FALLARBOR 3
diff --git a/include/constants/flags.h b/include/constants/flags.h
index b1dce013e..5082014e7 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -1,1513 +1,1557 @@
#ifndef GUARD_CONSTANTS_FLAGS_H
#define GUARD_CONSTANTS_FLAGS_H
-// temporary flags
+// Temporary Flags
// These temporary flags are are cleared every time a map is loaded. They are used
// for things like shortening an NPCs introduction text if the player already spoke
// to them once.
-#define FLAG_TEMP_1 0x1
-#define FLAG_TEMP_2 0x2
-#define FLAG_TEMP_3 0x3
-#define FLAG_TEMP_4 0x4
-#define FLAG_TEMP_5 0x5
-#define FLAG_TEMP_6 0x6
-#define FLAG_TEMP_7 0x7
-#define FLAG_TEMP_8 0x8
-#define FLAG_TEMP_9 0x9
-#define FLAG_TEMP_A 0xA
-#define FLAG_TEMP_B 0xB
-#define FLAG_TEMP_C 0xC
-#define FLAG_TEMP_D 0xD
-#define FLAG_TEMP_E 0xE
-#define FLAG_TEMP_F 0xF
-#define FLAG_TEMP_10 0x10
-#define FLAG_TEMP_11 0x11
-#define FLAG_TEMP_12 0x12
-#define FLAG_TEMP_13 0x13
-#define FLAG_TEMP_14 0x14
-#define FLAG_TEMP_15 0x15
-#define FLAG_TEMP_16 0x16
-#define FLAG_TEMP_17 0x17
-#define FLAG_TEMP_18 0x18
-#define FLAG_TEMP_19 0x19
-#define FLAG_TEMP_1A 0x1A
-#define FLAG_TEMP_1B 0x1B
-#define FLAG_TEMP_1C 0x1C
-#define FLAG_TEMP_1D 0x1D
-#define FLAG_TEMP_1E 0x1E
-#define FLAG_TEMP_1F 0x1F
-#define FLAG_TEMP_20 0x20
-
-#define FLAG_0x021 0x21
-#define FLAG_0x022 0x22
-#define FLAG_0x023 0x23
-#define FLAG_0x024 0x24
-#define FLAG_0x025 0x25
-#define FLAG_0x026 0x26
-#define FLAG_0x027 0x27
-#define FLAG_0x028 0x28
-#define FLAG_0x029 0x29
-#define FLAG_0x02A 0x2A
-#define FLAG_0x02B 0x2B
-#define FLAG_0x02C 0x2C
-#define FLAG_0x02D 0x2D
-#define FLAG_0x02E 0x2E
-#define FLAG_0x02F 0x2F
-#define FLAG_0x030 0x30
-#define FLAG_0x031 0x31
-#define FLAG_0x032 0x32
-#define FLAG_0x033 0x33
-#define FLAG_0x034 0x34
-#define FLAG_0x035 0x35
-#define FLAG_0x036 0x36
-#define FLAG_0x037 0x37
-#define FLAG_0x038 0x38
-#define FLAG_0x039 0x39
-#define FLAG_0x03A 0x3A
-#define FLAG_0x03B 0x3B
-#define FLAG_0x03C 0x3C
-#define FLAG_0x03D 0x3D
-#define FLAG_0x03E 0x3E
-#define FLAG_0x03F 0x3F
-#define FLAG_0x040 0x40
-#define FLAG_0x041 0x41
-#define FLAG_0x042 0x42
-#define FLAG_0x043 0x43
-#define FLAG_0x044 0x44
-#define FLAG_0x045 0x45
-#define FLAG_0x046 0x46
-#define FLAG_0x047 0x47
-#define FLAG_0x048 0x48
-#define FLAG_0x049 0x49
-#define FLAG_0x04A 0x4A
-#define FLAG_0x04B 0x4B
-#define FLAG_0x04C 0x4C
-#define FLAG_0x04D 0x4D
-#define FLAG_0x04E 0x4E
-#define FLAG_0x04F 0x4F
-#define FLAG_RAYQUAZA_ON_SKY_TOWER_SUMMIT 0x50
-#define FLAG_0x051 0x51
-#define FLAG_0x052 0x52
-#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53
-#define FLAG_0x054 0x54
-#define FLAG_0x055 0x55
-#define FLAG_LINK_CONTEST_POKE_BALL 0x56
-#define FLAG_0x057 0x57
-#define FLAG_0x058 0x58
-#define FLAG_0x059 0x59
-#define FLAG_0x05A 0x5A
-#define FLAG_WATTSON_REMATCH_AVAILABLE 0x5B
-#define FLAG_0x05C 0x5C
-#define FLAG_0x05D 0x5D
-#define FLAG_0x05E 0x5E
-#define FLAG_0x05F 0x5F
-#define FLAG_0x060 0x60
-#define FLAG_0x061 0x61
-#define FLAG_0x062 0x62
-#define FLAG_0x063 0x63
-#define FLAG_0x064 0x64
-#define FLAG_0x065 0x65
-#define FLAG_0x066 0x66
-#define FLAG_0x067 0x67
-#define FLAG_0x068 0x68
-#define FLAG_0x069 0x69
-#define FLAG_0x06A 0x6A
-#define FLAG_0x06B 0x6B
-#define FLAG_0x06C 0x6C
-#define FLAG_0x06D 0x6D
-#define FLAG_0x06E 0x6E
-#define FLAG_0x06F 0x6F
-#define FLAG_0x070 0x70
-#define FLAG_0x071 0x71
-#define FLAG_0x072 0x72
-#define FLAG_0x073 0x73
-#define FLAG_0x074 0x74
-#define FLAG_0x075 0x75
-#define FLAG_0x076 0x76
-#define FLAG_0x077 0x77
-#define FLAG_LANDMARK_MIRAGE_TOWER 0x78
-#define FLAG_0x079 0x79
-#define FLAG_0x07A 0x7A
-#define FLAG_0x07B 0x7B
-#define FLAG_0x07C 0x7C
-#define FLAG_0x07D 0x7D
-#define FLAG_0x07E 0x7E
-#define FLAG_0x07F 0x7F
-#define FLAG_0x080 0x80
-#define FLAG_0x081 0x81
-#define FLAG_0x082 0x82
-#define FLAG_0x083 0x83
-#define FLAG_0x084 0x84
-#define FLAG_0x085 0x85
-#define FLAG_PENDING_DAYCARE_EGG 0x86
-#define FLAG_0x087 0x87
-#define FLAG_0x088 0x88
-#define FLAG_0x089 0x89
-#define FLAG_0x08A 0x8A
-#define FLAG_0x08B 0x8B
-#define FLAG_0x08C 0x8C
-#define FLAG_0x08D 0x8D
-#define FLAG_0x08E 0x8E
-#define FLAG_0x08F 0x8F
-#define FLAG_0x090 0x90
-#define FLAG_0x091 0x91
-#define FLAG_0x092 0x92
-#define FLAG_0x093 0x93
-#define FLAG_0x094 0x94
-#define FLAG_0x095 0x95
-#define FLAG_0x096 0x96
-#define FLAG_0x097 0x97
-#define FLAG_0x098 0x98
-#define FLAG_0x099 0x99
-#define FLAG_0x09A 0x9A
-#define FLAG_0x09B 0x9B
-#define FLAG_0x09C 0x9C
-#define FLAG_FORCE_MIRAGE_TOWER_VISIBLE 0x9D
-#define FLAG_0x09E 0x9E
-#define FLAG_0x09F 0x9F
-#define FLAG_0x0A0 0xA0
-#define FLAG_0x0A1 0xA1
-#define FLAG_0x0A2 0xA2
-#define FLAG_0x0A3 0xA3
-#define FLAG_0x0A4 0xA4
-#define FLAG_0x0A5 0xA5
-#define FLAG_0x0A6 0xA6
-#define FLAG_0x0A7 0xA7
-#define FLAG_0x0A8 0xA8
-#define FLAG_0x0A9 0xA9
-#define FLAG_0x0AA 0xAA
-#define FLAG_0x0AB 0xAB
-#define FLAG_0x0AC 0xAC
-
-#define FLAG_DECORATION_0 0xAD
-#define FLAG_DECORATION_1 0xAE
-#define FLAG_DECORATION_2 0xAF
-#define FLAG_DECORATION_3 0xB0
-#define FLAG_DECORATION_4 0xB1
-#define FLAG_DECORATION_5 0xB2
-#define FLAG_DECORATION_6 0xB3
-#define FLAG_DECORATION_7 0xB4
-#define FLAG_DECORATION_8 0xB5
-#define FLAG_DECORATION_9 0xB6
-#define FLAG_DECORATION_10 0xB7
-#define FLAG_DECORATION_11 0xB8
-#define FLAG_DECORATION_12 0xB9
-#define FLAG_DECORATION_13 0xBA
-#define FLAG_DECORATION_14 0xBB
-
-// scripts
-#define FLAG_0x0BC 0xBC
-#define FLAG_0x0BD 0xBD
-#define FLAG_0x0BE 0xBE
-#define FLAG_0x0BF 0xBF
-#define FLAG_0x0C0 0xC0
-#define FLAG_0x0C1 0xC1
-#define FLAG_0x0C2 0xC2
-#define FLAG_0x0C3 0xC3
-#define FLAG_0x0C4 0xC4
-#define FLAG_0x0C5 0xC5
-#define FLAG_0x0C6 0xC6
-#define FLAG_RUSTURF_TUNNEL_OPENED 0xC7
-#define FLAG_0x0C8 0xC8
-#define FLAG_0x0C9 0xC9
-#define FLAG_0x0CA 0xCA
-#define FLAG_0x0CB 0xCB
-#define FLAG_0x0CC 0xCC
-#define FLAG_0x0CD 0xCD
-#define FLAG_0x0CE 0xCE
-#define FLAG_0x0CF 0xCF
-#define FLAG_GOT_BASEMENT_KEY_FROM_WATTSON 0xD0
-#define FLAG_GOT_TM24_FROM_WATTSON 0xD1
-#define FLAG_0x0D2 0xD2
-#define FLAG_0x0D3 0xD3
-#define FLAG_0x0D4 0xD4
-#define FLAG_0x0D5 0xD5
-#define FLAG_0x0D6 0xD6
-#define FLAG_0x0D7 0xD7
-#define FLAG_0x0D8 0xD8
-#define FLAG_0x0D9 0xD9
-#define FLAG_0x0DA 0xDA
-#define FLAG_0x0DB 0xDB
-#define FLAG_0x0DC 0xDC
-#define FLAG_0x0DD 0xDD
-#define FLAG_0x0DE 0xDE
-#define FLAG_0x0DF 0xDF
-#define FLAG_0x0E0 0xE0
-#define FLAG_0x0E1 0xE1
-#define FLAG_0x0E2 0xE2
-#define FLAG_0x0E3 0xE3
-#define FLAG_0x0E4 0xE4
-#define FLAG_0x0E5 0xE5
-#define FLAG_RECEIVED_TM_36 0xE6
-#define FLAG_0x0E7 0xE7
-#define FLAG_0x0E8 0xE8
-#define FLAG_0x0E9 0xE9
-#define FLAG_0x0EA 0xEA
-#define FLAG_0x0EB 0xEB
-#define FLAG_0x0EC 0xEC
-#define FLAG_0x0ED 0xED
-#define FLAG_0x0EE 0xEE
-#define FLAG_0x0EF 0xEF
-#define FLAG_0x0F0 0xF0
-#define FLAG_0x0F1 0xF1
-#define FLAG_0x0F2 0xF2
-#define FLAG_0x0F3 0xF3
-#define FLAG_0x0F4 0xF4
-#define FLAG_0x0F5 0xF5
-#define FLAG_0x0F6 0xF6
-#define FLAG_0x0F7 0xF7
-#define FLAG_0x0F8 0xF8
-#define FLAG_0x0F9 0xF9
-#define FLAG_0x0FA 0xFA
-#define FLAG_0x0FB 0xFB
-#define FLAG_0x0FC 0xFC
-#define FLAG_0x0FD 0xFD
-#define FLAG_0x0FE 0xFE
-#define FLAG_0x0FF 0xFF
-#define FLAG_0x100 0x100
-#define FLAG_0x101 0x101
-#define FLAG_0x102 0x102
-#define FLAG_0x103 0x103
-#define FLAG_0x104 0x104
-#define FLAG_0x105 0x105
-#define FLAG_0x106 0x106
-#define FLAG_0x107 0x107
-#define FLAG_0x108 0x108
-#define FLAG_0x109 0x109
-#define FLAG_0x10A 0x10A
-#define FLAG_0x10B 0x10B
-#define FLAG_0x10C 0x10C
-#define FLAG_0x10D 0x10D
-#define FLAG_0x10E 0x10E
-#define FLAG_0x10F 0x10F
-#define FLAG_0x110 0x110
-#define FLAG_0x111 0x111
-#define FLAG_0x112 0x112
-#define FLAG_0x113 0x113
-#define FLAG_0x114 0x114
-#define FLAG_0x115 0x115
-#define FLAG_0x116 0x116
-#define FLAG_0x117 0x117
-#define FLAG_0x118 0x118
-#define FLAG_0x119 0x119
-#define FLAG_0x11A 0x11A
-#define FLAG_0x11B 0x11B
-#define FLAG_0x11C 0x11C
-#define FLAG_0x11D 0x11D
-#define FLAG_0x11E 0x11E
-#define FLAG_0x11F 0x11F
-#define FLAG_0x120 0x120
-#define FLAG_0x121 0x121
-#define FLAG_0x122 0x122
-#define FLAG_0x123 0x123
-
-// upper flags?
-#define FLAG_0x124 0x124
-#define FLAG_0x125 0x125
-#define FLAG_TRADED_SCANNER_TO_STERN 0x126
-#define FLAG_0x127 0x127
-#define FLAG_0x128 0x128
-#define FLAG_0x129 0x129
-#define FLAG_0x12A 0x12A
-#define FLAG_0x12B 0x12B
-#define FLAG_0x12C 0x12C
-#define FLAG_0x12D 0x12D
-#define FLAG_0x12E 0x12E
-#define FLAG_HAS_MATCH_CALL 0x12F
-#define FLAG_0x130 0x130
-#define FLAG_0x131 0x131
-#define FLAG_0x132 0x132
-#define FLAG_0x133 0x133
-#define FLAG_0x134 0x134
-#define FLAG_0x135 0x135
-#define FLAG_0x136 0x136
-#define FLAG_0x137 0x137
-#define FLAG_0x138 0x138
-#define FLAG_0x139 0x139
-#define FLAG_0x13A 0x13A
-#define FLAG_0x13B 0x13B
-#define FLAG_0x13C 0x13C
-#define FLAG_0x13D 0x13D
-#define FLAG_0x13E 0x13E
-#define FLAG_0x13F 0x13F
-#define FLAG_0x140 0x140
-#define FLAG_0x141 0x141
-#define FLAG_0x142 0x142
-#define FLAG_0x143 0x143
-#define FLAG_0x144 0x144
-#define FLAG_0x145 0x145
-#define FLAG_0x146 0x146
-#define FLAG_0x147 0x147
-#define FLAG_0x148 0x148
-#define FLAG_0x149 0x149
-#define FLAG_0x14A 0x14A
-#define FLAG_0x14B 0x14B
-#define FLAG_0x14C 0x14C
-#define FLAG_0x14D 0x14D
-#define FLAG_MIRAGE_TOWER_VISIBLE 0x14E
-#define FLAG_0x14F 0x14F// PLAYER CHOSE CLAW FOSSIL
-#define FLAG_0x150 0x150// PLAYER CHOSE ROOT FOSSIL
-#define FLAG_0x151 0x151
-#define FLAG_0x152 0x152
-#define FLAG_0x153 0x153
-#define FLAG_0x154 0x154
-#define FLAG_0x155 0x155
-#define FLAG_0x156 0x156
-#define FLAG_0x157 0x157
-#define FLAG_0x158 0x158
-#define FLAG_0x159 0x159
-#define FLAG_0x15A 0x15A
-#define FLAG_0x15B 0x15B
-
-#define FLAG_MATCH_CALL_REGISTERED 0x15C
-#define FLAG_0x15D 0x15D
-#define FLAG_0x15E 0x15E
-#define FLAG_0x15F 0x15F
-#define FLAG_0x160 0x160
-#define FLAG_0x161 0x161
-#define FLAG_0x162 0x162
-#define FLAG_0x163 0x163
-#define FLAG_0x164 0x164
-#define FLAG_0x165 0x165
-#define FLAG_0x166 0x166
-#define FLAG_0x167 0x167
-#define FLAG_0x168 0x168
-#define FLAG_0x169 0x169
-#define FLAG_0x16A 0x16A
-#define FLAG_0x16B 0x16B
-#define FLAG_0x16C 0x16C
-#define FLAG_0x16D 0x16D
-#define FLAG_0x16E 0x16E
-#define FLAG_0x16F 0x16F
-#define FLAG_0x170 0x170
-#define FLAG_0x171 0x171
-#define FLAG_0x172 0x172
-#define FLAG_0x173 0x173
-#define FLAG_0x174 0x174
-#define FLAG_0x175 0x175
-#define FLAG_0x176 0x176
-#define FLAG_0x177 0x177
-#define FLAG_0x178 0x178
-#define FLAG_0x179 0x179
-#define FLAG_0x17A 0x17A
-#define FLAG_0x17B 0x17B
-#define FLAG_0x17C 0x17C
-#define FLAG_0x17D 0x17D
-#define FLAG_0x17E 0x17E
-#define FLAG_0x17F 0x17F
-#define FLAG_0x180 0x180
-#define FLAG_0x181 0x181
-#define FLAG_0x182 0x182
-#define FLAG_0x183 0x183
-#define FLAG_0x184 0x184
-#define FLAG_0x185 0x185
-#define FLAG_0x186 0x186
-#define FLAG_0x187 0x187
-#define FLAG_0x188 0x188
-#define FLAG_0x189 0x189
-#define FLAG_0x18A 0x18A
-#define FLAG_0x18B 0x18B
-#define FLAG_0x18C 0x18C
-#define FLAG_0x18D 0x18D
-#define FLAG_0x18E 0x18E
-#define FLAG_0x18F 0x18F
-#define FLAG_0x190 0x190
-#define FLAG_0x191 0x191
-#define FLAG_0x192 0x192
-#define FLAG_0x193 0x193
-#define FLAG_0x194 0x194
-#define FLAG_0x195 0x195
-#define FLAG_0x196 0x196
-#define FLAG_0x197 0x197
-#define FLAG_0x198 0x198
-#define FLAG_0x199 0x199
-#define FLAG_0x19A 0x19A
-#define FLAG_0x19B 0x19B
-#define FLAG_0x19C 0x19C
-#define FLAG_0x19D 0x19D
-#define FLAG_0x19E 0x19E
-#define FLAG_0x19F 0x19F
-#define FLAG_0x1A0 0x1A0
-#define FLAG_0x1A1 0x1A1
-#define FLAG_0x1A2 0x1A2
-#define FLAG_0x1A3 0x1A3
-#define FLAG_0x1A4 0x1A4
-#define FLAG_0x1A5 0x1A5
-#define FLAG_0x1A6 0x1A6
-#define FLAG_0x1A7 0x1A7
-#define FLAG_0x1A8 0x1A8
-#define FLAG_0x1A9 0x1A9
-#define FLAG_0x1AA 0x1AA
-#define FLAG_0x1AB 0x1AB
-#define FLAG_0x1AC 0x1AC
-#define FLAG_0x1AD 0x1AD
-#define FLAG_0x1AE 0x1AE
-#define FLAG_0x1AF 0x1AF
-#define FLAG_0x1B0 0x1B0
-#define FLAG_0x1B1 0x1B1
-#define FLAG_0x1B2 0x1B2
-#define FLAG_0x1B3 0x1B3
-#define FLAG_0x1B4 0x1B4
-#define FLAG_0x1B5 0x1B5
-#define FLAG_0x1B6 0x1B6
-#define FLAG_0x1B7 0x1B7
-#define FLAG_0x1B8 0x1B8
-#define FLAG_0x1B9 0x1B9
-#define FLAG_0x1BA 0x1BA
-#define FLAG_0x1BB 0x1BB
-#define FLAG_0x1BC 0x1BC
-#define FLAG_0x1BD 0x1BD
-#define FLAG_0x1BE 0x1BE
-#define FLAG_0x1BF 0x1BF
-#define FLAG_0x1C0 0x1C0
-#define FLAG_0x1C1 0x1C1
-#define FLAG_0x1C2 0x1C2
-#define FLAG_0x1C3 0x1C3
-#define FLAG_0x1C4 0x1C4
-#define FLAG_0x1C5 0x1C5
-#define FLAG_0x1C6 0x1C6
-#define FLAG_0x1C7 0x1C7
-#define FLAG_0x1C8 0x1C8
-#define FLAG_0x1C9 0x1C9
-#define FLAG_0x1CA 0x1CA
-#define FLAG_0x1CB 0x1CB
-#define FLAG_0x1CC 0x1CC
-#define FLAG_0x1CD 0x1CD
-#define FLAG_0x1CE 0x1CE
-#define FLAG_0x1CF 0x1CF
-#define FLAG_0x1D0 0x1D0
-#define FLAG_0x1D1 0x1D1
-#define FLAG_0x1D2 0x1D2
-#define FLAG_0x1D3 0x1D3
-#define FLAG_0x1D4 0x1D4
-#define FLAG_0x1D5 0x1D5
-#define FLAG_0x1D6 0x1D6
-#define FLAG_0x1D7 0x1D7
-#define FLAG_0x1D8 0x1D8
-#define FLAG_0x1D9 0x1D9
-#define FLAG_0x1DA 0x1DA
-#define FLAG_0x1DB 0x1DB
-#define FLAG_0x1DC 0x1DC
-#define FLAG_0x1DD 0x1DD
-#define FLAG_0x1DE 0x1DE
-#define FLAG_0x1DF 0x1DF
-#define FLAG_0x1E0 0x1E0
-#define FLAG_0x1E1 0x1E1
-#define FLAG_0x1E2 0x1E2
-#define FLAG_0x1E3 0x1E3
-#define FLAG_MYSTERY_EVENT_DONE 0x1E4
-#define FLAG_0x1E5 0x1E5
-#define FLAG_0x1E6 0x1E6
-#define FLAG_0x1E7 0x1E7
-#define FLAG_0x1E8 0x1E8
-#define FLAG_0x1E9 0x1E9
-#define FLAG_0x1EA 0x1EA
-#define FLAG_0x1EB 0x1EB
-#define FLAG_0x1EC 0x1EC
-#define FLAG_0x1ED 0x1ED
-#define FLAG_0x1EE 0x1EE
-#define FLAG_0x1EF 0x1EF
-#define FLAG_0x1F0 0x1F0
-#define FLAG_0x1F1 0x1F1
-#define FLAG_0x1F2 0x1F2
-#define FLAG_0x1F3 0x1F3
-#define FLAG_0x1F5 0x1F5 // trick house end room?
+#define FLAG_TEMP_1 0x1
+#define FLAG_TEMP_2 0x2
+#define FLAG_TEMP_3 0x3
+#define FLAG_TEMP_4 0x4
+#define FLAG_TEMP_5 0x5 // Unused Flag
+#define FLAG_TEMP_6 0x6 // Unused Flag
+#define FLAG_TEMP_7 0x7 // Unused Flag
+#define FLAG_TEMP_8 0x8 // Unused Flag
+#define FLAG_TEMP_9 0x9 // Unused Flag
+#define FLAG_TEMP_A 0xA // Unused Flag
+#define FLAG_TEMP_B 0xB // Unused Flag
+#define FLAG_TEMP_C 0xC // Unused Flag
+#define FLAG_TEMP_D 0xD // Unused Flag
+#define FLAG_TEMP_E 0xE // Unused Flag
+#define FLAG_TEMP_F 0xF // Unused Flag
+#define FLAG_TEMP_10 0x10 // Unused Flag
+#define FLAG_TEMP_11 0x11
+#define FLAG_TEMP_12 0x12
+#define FLAG_TEMP_13 0x13
+#define FLAG_TEMP_14 0x14
+#define FLAG_TEMP_15 0x15
+#define FLAG_TEMP_16 0x16
+#define FLAG_TEMP_17 0x17
+#define FLAG_TEMP_18 0x18
+#define FLAG_TEMP_19 0x19
+#define FLAG_TEMP_1A 0x1A
+#define FLAG_TEMP_1B 0x1B
+#define FLAG_TEMP_1C 0x1C
+#define FLAG_TEMP_1D 0x1D
+#define FLAG_TEMP_1E 0x1E
+#define FLAG_TEMP_1F 0x1F
+
+#define FLAG_UNUSED_0x020 0x20 // Unused Flag
+#define FLAG_UNUSED_0x021 0x21 // Unused Flag
+#define FLAG_UNUSED_0x022 0x22 // Unused Flag
+#define FLAG_UNUSED_0x023 0x23 // Unused Flag
+#define FLAG_UNUSED_0x024 0x24 // Unused Flag
+#define FLAG_UNUSED_0x025 0x25 // Unused Flag
+#define FLAG_UNUSED_0x026 0x26 // Unused Flag
+#define FLAG_UNUSED_0x027 0x27 // Unused Flag
+#define FLAG_UNUSED_0x028 0x28 // Unused Flag
+#define FLAG_UNUSED_0x029 0x29 // Unused Flag
+#define FLAG_UNUSED_0x02A 0x2A // Unused Flag
+#define FLAG_UNUSED_0x02B 0x2B // Unused Flag
+#define FLAG_UNUSED_0x02C 0x2C // Unused Flag
+#define FLAG_UNUSED_0x02D 0x2D // Unused Flag
+#define FLAG_UNUSED_0x02E 0x2E // Unused Flag
+#define FLAG_UNUSED_0x02F 0x2F // Unused Flag
+#define FLAG_UNUSED_0x030 0x30 // Unused Flag
+#define FLAG_UNUSED_0x031 0x31 // Unused Flag
+#define FLAG_UNUSED_0x032 0x32 // Unused Flag
+#define FLAG_UNUSED_0x033 0x33 // Unused Flag
+#define FLAG_UNUSED_0x034 0x34 // Unused Flag
+#define FLAG_UNUSED_0x035 0x35 // Unused Flag
+#define FLAG_UNUSED_0x036 0x36 // Unused Flag
+#define FLAG_UNUSED_0x037 0x37 // Unused Flag
+#define FLAG_UNUSED_0x038 0x38 // Unused Flag
+#define FLAG_UNUSED_0x039 0x39 // Unused Flag
+#define FLAG_UNUSED_0x03A 0x3A // Unused Flag
+#define FLAG_UNUSED_0x03B 0x3B // Unused Flag
+#define FLAG_UNUSED_0x03C 0x3C // Unused Flag
+#define FLAG_UNUSED_0x03D 0x3D // Unused Flag
+#define FLAG_UNUSED_0x03E 0x3E // Unused Flag
+#define FLAG_UNUSED_0x03F 0x3F // Unused Flag
+#define FLAG_UNUSED_0x040 0x40 // Unused Flag
+#define FLAG_UNUSED_0x041 0x41 // Unused Flag
+#define FLAG_UNUSED_0x042 0x42 // Unused Flag
+#define FLAG_UNUSED_0x043 0x43 // Unused Flag
+#define FLAG_UNUSED_0x044 0x44 // Unused Flag
+#define FLAG_UNUSED_0x045 0x45 // Unused Flag
+#define FLAG_UNUSED_0x046 0x46 // Unused Flag
+#define FLAG_UNUSED_0x047 0x47 // Unused Flag
+#define FLAG_UNUSED_0x048 0x48 // Unused Flag
+#define FLAG_UNUSED_0x049 0x49 // Unused Flag
+#define FLAG_UNUSED_0x04A 0x4A // Unused Flag
+#define FLAG_UNUSED_0x04B 0x4B // Unused Flag
+#define FLAG_UNUSED_0x04C 0x4C // Unused Flag
+#define FLAG_UNUSED_0x04D 0x4D // Unused Flag
+#define FLAG_UNUSED_0x04E 0x4E // Unused Flag
+#define FLAG_UNUSED_0x04F 0x4F // Unused Flag
+
+// Scripts
+#define FLAG_RAYQUAZA_ON_SKY_TOWER_SUMMIT 0x50
+#define FLAG_SET_WALL_CLOCK 0x51
+#define FLAG_RESCUED_BIRCH 0x52
+#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53
+
+#define FLAG_UNUSED_0x054 0x54 // Unused Flag
+#define FLAG_UNUSED_0x055 0x55 // Unused Flag
+
+#define FLAG_LINK_CONTEST_POKE_BALL 0x56
+#define FLAG_MET_RIVAL_MOM 0x57
+#define FLAG_BIRCH_AIDE_MET 0x58
+#define FLAG_DECLINED_BIKE 0x59
+#define FLAG_RECEIVED_BIKE 0x5A
+#define FLAG_WATTSON_REMATCH_AVAILABLE 0x5B
+#define FLAG_COLLECTED_ALL_SILVER_SYMBOLS 0x5C
+#define FLAG_GOOD_LUCK_SAFARI_ZONE 0x5D // Set after talking to NPC blocking Safari Zone entrance/exit once.
+#define FLAG_RECEIVED_WAILMER_PAIL 0x5E
+#define FLAG_RECEIVED_POKEBLOCK_CASE 0x5F
+#define FLAG_RECEIVED_SECRET_POWER 0x60
+#define FLAG_MET_TEAM_AQUA_HARBOR 0x61
+#define FLAG_TV_EXPLAINED 0x62
+#define FLAG_MAUVILLE_GYM_BARRIERS_STATE 0x63
+#define FLAG_MOSSDEEP_GYM_SWITCH_1 0x64
+#define FLAG_MOSSDEEP_GYM_SWITCH_2 0x65
+#define FLAG_MOSSDEEP_GYM_SWITCH_3 0x66
+#define FLAG_MOSSDEEP_GYM_SWITCH_4 0x67
+
+#define FLAG_UNUSED_0x068 0x68 // Unused Flag
+
+#define FLAG_OCEANIC_MUSEUM_MET_REPORTER 0x69
+#define FLAG_RECEIVED_HM04 0x6A
+#define FLAG_RECEIVED_HM06 0x6B
+#define FLAG_FLANNERY_GIVES_BADGE_INFO 0x6C
+#define FLAG_RECEIVED_HM05 0x6D
+#define FLAG_RECEIVED_HM02 0x6E
+#define FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT 0x6F
+#define FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE 0x70
+#define FLAG_UNUSED_RS_LEGENDARY_BATTLE_DONE 0x71 // Unused Flag. Used in R/S to indicate whether player defeated or caught Groudon/Kyogre in Cave of Origin.
+#define FLAG_SCOTT_CALL_NATIONAL_DEX 0x72 // Used in order to activate a phone call from Scott, inviting the player to the SS Tidal.
+#define FLAG_RECEIVED_METEORITE 0x73
+#define FLAG_ADVENTURE_STARTED 0x74 // RECEIVED Pokédex.
+#define FLAG_DEFEATED_MAGMA_SPACE_CENTER 0x75 // Set when Team Magma is defeated at Mossdeep's Space Center.
+#define FLAG_MET_HIDDEN_POWER_GIVER 0x76
+
+#define FLAG_CANCEL_BATTLE_ROOM_CHALLENGE 0x77
+
+#define FLAG_LANDMARK_MIRAGE_TOWER 0x78
+#define FLAG_RECEIVED_TM31 0x79
+#define FLAG_RECEIVED_HM03 0x7A
+#define FLAG_RECEIVED_HM08 0x7B
+#define FLAG_REGISTER_RIVAL_POKENAV 0x7C
+#define FLAG_DEFEATED_RIVAL_ROUTE_104 0x7D
+#define FLAG_DEFEATED_WALLY_VICTORY_ROAD 0x7E
+#define FLAG_MET_PRETTY_PETAL_SHOP_OWNER 0x7F
+#define FLAG_ENABLE_ROXANNE_FIRST_CALL 0x80 // Set after defeating Brawly. This will activate a call with Roxanne in order to register her.
+#define FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN 0x81
+#define FLAG_DEFEATED_RIVAL_ROUTE103 0x82
+#define FLAG_RECEIVED_DOLL_LANETTE 0x83
+#define FLAG_RECEIVED_POTION_OLDALE 0x84
+#define FLAG_MOM_SAYS_GOODBYE 0x85
+#define FLAG_PENDING_DAYCARE_EGG 0x86
+#define FLAG_THANKED_FOR_PLAYING_WITH_WALLY 0x87
+#define FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL 0x88 // Set after defeating Wally outside Mauville Gym. Will activate a call later to register Wally.
+#define FLAG_RECEIVED_HM01 0x89
+#define FLAG_REGISTER_WINONA_POKENAV 0x8A // Set after obtaining registering Winona, and cleared after Scott's call.
+#define FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY 0x8B
+#define FLAG_RECEIVED_6_SODA_POP 0x8C
+#define FLAG_DEFEATED_SEASHORE_HOUSE 0x8D
+#define FLAG_DEVON_GOODS_STOLEN 0x8E
+#define FLAG_RECOVERED_DEVON_GOODS 0x8F
+#define FLAG_RETURNED_DEVON_GOODS 0x90
+#define FLAG_CAUGHT_LUGIA 0x91
+#define FLAG_CAUGHT_HO_OH 0x92
+#define FLAG_MR_BRINEY_SAILING_INTRO 0x93
+#define FLAG_DOCK_REJECTED_DEVON_GOODS 0x94
+#define FLAG_DELIVERED_DEVON_GOODS 0x95
+
+#define FLAG_UNUSED_0x096 0x96 // Unused Flag
+
+#define FLAG_RECEIVED_CASTFORM 0x97
+#define FLAG_RECEIVED_SUPER_ROD 0x98
+#define FLAG_RUSTBORO_NPC_TRADE_COMPLETED 0x99
+#define FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED 0x9A
+#define FLAG_FORTREE_NPC_TRADE_COMPLETED 0x9B
+#define FLAG_BATTLE_FRONTIER_TRADE_DONE 0x9C
+#define FLAG_FORCE_MIRAGE_TOWER_VISIBLE 0x9D
+#define FLAG_SOOTOPOLIS_ARCHIE_MAXIE_LEAVE 0x9E
+#define FLAG_INTERACTED_WITH_DEVON_EMPLOYEE_GOODS_STOLEN 0x9F
+#define FLAG_COOL_PAINTING_MADE 0xA0
+#define FLAG_BEAUTY_PAINTING_MADE 0xA1
+#define FLAG_CUTE_PAINTING_MADE 0xA2
+#define FLAG_SMART_PAINTING_MADE 0xA3
+#define FLAG_TOUGH_PAINTING_MADE 0xA4
+#define FLAG_RECEIVED_TM39 0xA5
+#define FLAG_RECEIVED_TM08 0xA6
+#define FLAG_RECEIVED_TM34 0xA7
+#define FLAG_RECEIVED_TM50 0xA8
+#define FLAG_RECEIVED_TM42 0xA9
+#define FLAG_RECEIVED_TM40 0xAA
+#define FLAG_RECEIVED_TM04 0xAB
+#define FLAG_RECEIVED_TM03 0xAC
+#define FLAG_DECORATION_0 0xAD
+#define FLAG_DECORATION_1 0xAE
+#define FLAG_DECORATION_2 0xAF
+#define FLAG_DECORATION_3 0xB0
+#define FLAG_DECORATION_4 0xB1
+#define FLAG_DECORATION_5 0xB2
+#define FLAG_DECORATION_6 0xB3
+#define FLAG_DECORATION_7 0xB4
+#define FLAG_DECORATION_8 0xB5
+#define FLAG_DECORATION_9 0xB6
+#define FLAG_DECORATION_10 0xB7
+#define FLAG_DECORATION_11 0xB8
+#define FLAG_DECORATION_12 0xB9
+#define FLAG_DECORATION_13 0xBA
+#define FLAG_DECORATION_14 0xBB
+#define FLAG_RECEIVED_POKENAV 0xBC
+#define FLAG_DELIVERED_STEVEN_LETTER 0xBD
+#define FLAG_DEFEATED_WALLY_MAUVILLE 0xBE
+#define FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F 0xBF
+#define FLAG_RECEIVED_SUN_STONE_MOSSDEEP 0xC0
+#define FLAG_WALLY_SPEECH 0xC1
+#define FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_1 0xC2
+#define FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_2 0xC3
+#define FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_3 0xC4
+#define FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_4 0xC5
+#define FLAG_TRICK_HOUSE_PUZZLE_7_SWITCH_5 0xC6
+#define FLAG_RUSTURF_TUNNEL_OPENED 0xC7
+#define FLAG_RECEIVED_RED_SCARF 0xC8
+#define FLAG_RECEIVED_BLUE_SCARF 0xC9
+#define FLAG_RECEIVED_PINK_SCARF 0xCA
+#define FLAG_RECEIVED_GREEN_SCARF 0xCB
+#define FLAG_RECEIVED_YELLOW_SCARF 0xCC
+#define FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER 0xCD
+#define FLAG_ENCOUNTERED_LATIAS_OR_LATIOS 0xCE
+#define FLAG_MET_ARCHIE_METEOR_FALLS 0xCF
+#define FLAG_GOT_BASEMENT_KEY_FROM_WATTSON 0xD0
+#define FLAG_GOT_TM24_FROM_WATTSON 0xD1
+#define FLAG_FAN_CLUB_STRENGTH_SHARED 0xD2 // Set when you rate the strength of another trainer in Lilycove's Trainer Fan Club.
+#define FLAG_DEFEATED_RIVAL_RUSTBORO 0xD3
+#define FLAG_RECEIVED_RED_OR_BLUE_ORB 0xD4
+#define FLAG_RECEIVED_PREMIER_BALL_RUSTBORO 0xD5
+#define FLAG_ENABLE_WALLY_MATCH_CALL 0xD6
+#define FLAG_ENABLE_SCOTT_MATCH_CALL 0xD7
+#define FLAG_ENABLE_MOM_MATCH_CALL 0xD8
+#define FLAG_MET_DIVING_TREASURE_HUNTER 0xD9
+#define FLAG_MET_WAILMER_TRAINER 0xDA
+#define FLAG_EVIL_LEADER_PLEASE_STOP 0xDB
+
+#define FLAG_UNUSED_0x0DC 0xDC // Unused Flag
+
+#define FLAG_RECEIVED_GO_GOGGLES 0xDD
+#define FLAG_WINGULL_SENT_ON_ERRAND 0xDE
+#define FLAG_RECEIVED_MENTAL_HERB 0xDF
+#define FLAG_WINGULL_DELIVERED_MAIL 0xE0
+#define FLAG_RECEIVED_20_COINS 0xE1
+#define FLAG_RECEIVED_STARTER_DOLL 0xE2
+#define FLAG_RECEIVED_GOOD_ROD 0xE3
+#define FLAG_REGI_DOORS_OPENED 0xE4
+#define FLAG_RECEIVED_TM27 0xE5
+#define FLAG_RECEIVED_TM36 0xE6
+#define FLAG_RECEIVED_TM05 0xE7
+#define FLAG_RECEIVED_TM19 0xE8
+
+#define FLAG_UNUSED_0x0E9 0xE9 // Unused Flag
+
+#define FLAG_RECEIVED_TM44 0xEA
+#define FLAG_RECEIVED_TM45 0xEB
+#define FLAG_RECEIVED_GLASS_ORNAMENT 0xEC
+#define FLAG_RECEIVED_SILVER_SHIELD 0xED
+#define FLAG_RECEIVED_GOLD_SHIELD 0xEE
+#define FLAG_USED_STORAGE_KEY 0xEF
+#define FLAG_USED_ROOM_1_KEY 0xF0
+#define FLAG_USED_ROOM_2_KEY 0xF1
+#define FLAG_USED_ROOM_4_KEY 0xF2
+#define FLAG_USED_ROOM_6_KEY 0xF3
+#define FLAG_MET_PROF_COSMO 0xF4
+#define FLAG_RECEIVED_WAILMER_DOLL 0xF5
+#define FLAG_RECEIVED_CHESTO_BERRY_ROUTE_104 0xF6
+#define FLAG_DEFEATED_SS_TIDAL_TRAINERS 0xF7
+#define FLAG_RECEIVED_SPELON_BERRY 0xF8
+#define FLAG_RECEIVED_PAMTRE_BERRY 0xF9
+#define FLAG_RECEIVED_WATMEL_BERRY 0xFA
+#define FLAG_RECEIVED_DURIN_BERRY 0xFB
+#define FLAG_RECEIVED_BELUE_BERRY 0xFC
+#define FLAG_ENABLE_RIVAL_MATCH_CALL 0xFD
+#define FLFLAG_RECEIVED_CHARCOAL 0xFE
+#define FLAG_LATIOS_OR_LATIAS_ROAMING 0xFF
+#define FLAG_RECEIVED_REPEAT_BALL 0x100
+#define FLAG_RECEIVED_OLD_ROD 0x101
+#define FLAG_RECEIVED_COIN_CASE 0x102
+#define FLAG_RETURNED_RED_OR_BLUE_ORB 0x103
+#define FLAG_RECEIVED_TM49 0x104
+#define FLAG_RECEIVED_TM28 0x105
+#define FLAG_RECEIVED_TM09 0x106
+#define FLAG_ENTERED_ELITE_FOUR 0x107
+#define FLAG_RECEIVED_TM10 0x108
+#define FLAG_RECEIVED_TM41 0x109
+#define FLAG_RECEIVED_LAVARIDGE_EGG 0x10A
+#define FLAG_RECEIVED_REVIVED_FOSSIL_MON 0x10B
+#define FLAG_DECORATION_16 0x10C
+#define FLAG_RECEIVED_TM46 0x10D
+#define FLAG_CONTEST_SKETCH_CREATED 0x10E
+#define FLAG_EVIL_TEAM_ESCAPED_STERN_SPOKE 0x10F
+#define FLAG_RECEIVED_EXP_SHARE 0x110
+#define FLAG_POKERUS_EXPLAINED 0x111
+#define FLAG_RECEIVED_RUNNING_SHOES 0x112
+#define FLAG_RECEIVED_QUICK_CLAW 0x113
+#define FLAG_RECEIVED_KINGS_ROCK 0x114
+#define FLAG_RECEIVED_MACHO_BRACE 0x115
+#define FLAG_RECEIVED_SOOTHE_BELL 0x116
+#define FLAG_RECEIVED_WHITE_HERB 0x117
+#define FLAG_RECEIVED_SOFT_SAND 0x118
+#define FLAG_ENABLE_PROF_BIRCH_MATCH_CALL 0x119
+#define FLAG_RECEIVED_CLEANSE_TAG 0x11A
+#define FLAG_RECEIVED_FOCUS_BAND 0x11B
+#define FLAG_DECLINED_WALLY_BATTLE_MAUVILLE 0x11C
+#define FLAG_RECEIVED_DEVON_SCOPE 0x11D
+#define FLAG_DECLINED_RIVAL_BATTLE_LILYCOVE 0x11E
+#define FLAG_MET_DEVON_EMPLOYEE 0x11F
+#define FLAG_MET_RIVAL_RUSTBORO 0x120
+#define FLAG_RECEIVED_SILK_SCARF 0x121
+#define FLAG_NOT_READY_FOR_BATTLE_ROUTE_120 0x122
+#define FLAG_RECEIVED_SS_TICKET 0x123
+#define FLAG_MET_RIVAL_LILYCOVE 0x124
+#define FLAG_MET_RIVAL_IN_HOUSE_AFTER_LILYCOVE 0x125
+#define FLAG_EXCHANGED_SCANNER 0x126
+#define FLAG_KECLEON_FLED_FORTREE 0x127
+#define FLAG_PETALBURG_MART_EXPANDED_ITEMS 0x128
+#define FLAG_RECEIVED_MIRACLE_SEED 0x129
+#define FLAG_RECEIVED_BELDUM 0x12A
+#define FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK 0x12B
+#define FLAG_MET_FANCLUB_YOUNGER_BROTHER 0x12C
+#define FLAG_RIVAL_LEFT_FOR_ROUTE103 0x12D
+#define FLAG_OMIT_DIVE_FROM_STEVEN_LETTER 0x12E
+#define FLAG_HAS_MATCH_CALL 0x12F
+#define FLAG_ADDED_MATCH_CALL_TO_POKENAV 0x130
+#define FLAG_REGISTERED_STEVEN_POKENAV 0x131
+#define FLAG_ENABLE_NORMAN_MATCH_CALL 0x132
+#define FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN 0x133 // Set after you follow Steven to the entrance of the Cave of Origin.
+#define FLAG_MET_ARCHIE_SOOTOPOLIS 0x134
+#define FLAG_MET_MAXIE_SOOTOPOLIS 0x135
+#define FLAG_MET_SCOTT_RUSTBORO 0x136
+#define FLAG_WALLACE_GOES_TO_SKY_PILLAR 0x137 // Set after speaking to Wallace within the Cave of Origin.
+#define FLAG_RECEIVED_HM07 0x138
+#define FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS 0x139 // Beat Magma Grunt blocking Magma Hideout entrance.
+#define FLAG_RECEIVED_AURORA_TICKET 0x13A // RECEIVED Aurora Ticket in Mystery Gift
+#define FLAG_RECEIVED_MYSTIC_TICKET 0x13B // RECEIVED Mystic Ticket in Mystery Gift
+#define FLAG_RECEIVED_OLD_SEA_MAP 0x13C // RECEIVED Old Sea Map in Mystery Gift
+
+#define FLAG_UNUSED_0x13D 0x13D // Unused Flag
+#define FLAG_UNUSED_0x13E 0x13E // Unused Flag
+#define FLAG_UNUSED_0x13F 0x13F // Unused Flag
+#define FLAG_UNUSED_0x140 0x140 // Unused Flag
+#define FLAG_UNUSED_0x141 0x141 // Unused Flag
+#define FLAG_UNUSED_0x142 0x142 // Unused Flag
+#define FLAG_UNUSED_0x143 0x143 // Unused Flag
+#define FLAG_UNUSED_0x144 0x144 // Unused Flag
+#define FLAG_UNUSED_0x145 0x145 // Unused Flag
+#define FLAG_UNUSED_0x146 0x146 // Unused Flag
+#define FLAG_UNUSED_0x147 0x147 // Unused Flag
+#define FLAG_UNUSED_0x148 0x148 // Unused Flag
+#define FLAG_UNUSED_0x149 0x149 // Unused Flag
+#define FLAG_UNUSED_0x14A 0x14A // Unused Flag
+#define FLAG_UNUSED_0x14B 0x14B // Unused Flag
+#define FLAG_UNUSED_0x14C 0x14C // Unused Flag
+#define FLAG_UNUSED_0x14D 0x14D // Unused Flag
+
+#define FLAG_MIRAGE_TOWER_VISIBLE 0x14E
+#define FLAG_CHOSE_CLAW_FOSSIL 0x14F // Player chose Claw Fossil
+#define FLAG_CHOSE_ROOT_FOSSIL 0x150 // Player chose Root Fossil
+#define FLAG_RECEIVED_POWDER_JAR 0x151
+
+#define FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER 0x152
+
+#define FLAG_MET_BATTLE_FRONTIER_BREEDER 0x153
+#define FLAG_MET_BATTLE_FRONTIER_MANIAC 0x154
+#define FLAG_ENTERED_LINK_CONTEST 0x155
+#define FLAG_MET_SLATEPORT_FANCLUB_CHAIRMAN 0x156
+#define FLAG_MET_BATTLE_FRONTIER_BETTOR 0x157
+#define FLAG_ENABLE_MR_STONE_POKENAV 0x158
+#define FLAG_OLDALE_NURSE_MENTIONS_GOLD_CARD 0x159
+#define FLAG_MET_FRONTIER_BEAUTY_MOVE_TUTOR 0x15A
+#define FLAG_MET_FRONTIER_SWIMMER_MOVE_TUTOR 0x15B
+
+// Trainer Rematch Flags
+#define FLAG_MATCH_CALL_REGISTERED 0x15C
+#define FLAG_REMATCH_ROSE 0x15D
+#define FLAG_REMATCH_ANDRES 0x15E
+#define FLAG_REMATCH_DUSTY 0x15F
+#define FLAG_REMATCH_LOLA 0x160
+#define FLAG_REMATCH_RICKY 0x161
+#define FLAG_REMATCH_LILA_AND_ROY 0x162
+#define FLAG_REMATCH_CRISTIN 0x163
+#define FLAG_REMATCH_BROOKE 0x164
+#define FLAG_REMATCH_WILTON 0x165
+#define FLAG_REMATCH_VALERIE 0x166
+#define FLAG_REMATCH_CINDY 0x167
+#define FLAG_REMATCH_THALIA 0x168
+#define FLAG_REMATCH_JESSICA 0x169
+#define FLAG_REMATCH_WINSTON 0x16A
+#define FLAG_REMATCH_STEVE 0x16B
+#define FLAG_REMATCH_TONY 0x16C
+#define FLAG_REMATCH_NOB 0x16D
+#define FLAG_REMATCH_KOJI 0x16E
+#define FLAG_REMATCH_FERNANDO 0x16F
+#define FLAG_REMATCH_DALTON 0x170
+#define FLAG_REMATCH_BERNIE 0x171
+#define FLAG_REMATCH_ETHAN 0x172
+#define FLAG_REMATCH_JOHN_AND_JAY 0x173
+#define FLAG_REMATCH_JEFFREY 0x174
+#define FLAG_REMATCH_CAMERON 0x175
+#define FLAG_REMATCH_JACKI 0x176
+#define FLAG_REMATCH_WALTER 0x177
+#define FLAG_REMATCH_KAREN 0x178
+#define FLAG_REMATCH_JERRY 0x179
+#define FLAG_REMATCH_ANNA_AND_MEG 0x17A
+#define FLAG_REMATCH_ISABEL 0x17B
+#define FLAG_REMATCH_MIGUEL 0x17C
+#define FLAG_REMATCH_TIMOTHY 0x17D
+#define FLAG_REMATCH_SHELBY 0x17E
+#define FLAG_REMATCH_CALVIN 0x17F
+#define FLAG_REMATCH_ELLIOT 0x180
+#define FLAG_REMATCH_ISAIAH 0x181
+#define FLAG_REMATCH_MARIA 0x182
+#define FLAG_REMATCH_ABIGAIL 0x183
+#define FLAG_REMATCH_DYLAN 0x184
+#define FLAG_REMATCH_KATELYN 0x185
+#define FLAG_REMATCH_BENJAMIN 0x186
+#define FLAG_REMATCH_PABLO 0x187
+#define FLAG_REMATCH_NICOLAS 0x188
+#define FLAG_REMATCH_ROBERT 0x189
+#define FLAG_REMATCH_LAO 0x18A
+#define FLAG_REMATCH_CYNDY 0x18B
+#define FLAG_REMATCH_MADELINE 0x18C
+#define FLAG_REMATCH_JENNY 0x18D
+#define FLAG_REMATCH_DIANA 0x18E
+#define FLAG_REMATCH_AMY_AND_LIV 0x18F
+#define FLAG_REMATCH_ERNEST 0x190
+#define FLAG_REMATCH_CORY 0x191
+#define FLAG_REMATCH_EDWIN 0x192
+#define FLAG_REMATCH_LYDIA 0x193
+#define FLAG_REMATCH_ISAAC 0x194
+#define FLAG_REMATCH_GABRIELLE 0x195
+#define FLAG_REMATCH_CATHERINE 0x196
+#define FLAG_REMATCH_JACKSON 0x197
+#define FLAG_REMATCH_HALEY 0x198
+#define FLAG_REMATCH_JAMES 0x199
+#define FLAG_REMATCH_TRENT 0x19A
+#define FLAG_REMATCH_SAWYER 0x19B
+#define FLAG_REMATCH_KIRA_AND_DAN 0x19C
+#define FLAG_REMATCH_WALLY 0x19D
+#define FLAG_REMATCH_ROXANNE 0x19E
+#define FLAG_REMATCH_BRAWLY 0x19F
+#define FLAG_REMATCH_WATTSON 0x1A0
+#define FLAG_REMATCH_FLANNERY 0x1A1
+#define FLAG_REMATCH_NORMAN 0x1A2
+#define FLAG_REMATCH_WINONA 0x1A3
+#define FLAG_REMATCH_TATE_AND_LIZA 0x1A4
+#define FLAG_REMATCH_JUAN 0x1A5
+#define FLAG_REMATCH_SIDNEY 0x1A6
+#define FLAG_REMATCH_PHOEBE 0x1A7
+#define FLAG_REMATCH_GLACIA 0x1A8
+#define FLAG_REMATCH_DRAKE 0x1A9
+#define FLAG_REMATCH_WALLACE 0x1AA
+
+#define FLAG_UNUSED_0x1AB 0x1AB // Unused Flag
+
+#define FLAG_DEFEATED_DEOXYS 0x1AC
+#define FLAG_BATTLED_DEOXYS 0x1AD
+#define FLAG_HAS_EON_TICKET 0x1AE
+#define FLAG_HAS_AURORA_TICKET 0x1AF
+#define FLAG_HAS_OLD_SEA_MAP 0x1B0
+#define FLAG_MOVE_TUTOR_TAUGHT_SWAGGER 0x1B1
+#define FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT 0x1B2
+#define FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER 0x1B3
+#define FLAG_MOVE_TUTOR_TAUGHT_MIMIC 0x1B4
+#define FLAG_MOVE_TUTOR_TAUGHT_METRONOME 0x1B5
+#define FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK 0x1B6
+#define FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE 0x1B7
+#define FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH 0x1B8
+#define FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE 0x1B9
+#define FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION 0x1BA
+#define FLAG_DEFEATED_REGIROCK 0x1BB
+#define FLAG_DEFEATED_REGICE 0x1BC
+#define FLAG_DEFEATED_REGISTEEL 0x1BD
+#define FLAG_DEFEATED_KYOGRE 0x1BE
+#define FLAG_DEFEATED_GROUDON 0x1BF
+#define FLAG_DEFEATED_RAYQUAZA 0x1C0
+#define FLAG_DEFEATED_VOLTORB_1_NEW_MAUVILLE 0x1C1
+#define FLAG_DEFEATED_VOLTORB_2_NEW_MAUVILLE 0x1C2
+#define FLAG_DEFEATED_VOLTORB_3_NEW_MAUVILLE 0x1C3
+#define FLAG_DEFEATED_ELECTRODE_1_AQUA_HIDEOUT 0x1C4
+#define FLAG_DEFEATED_ELECTRODE_2_AQUA_HIDEOUT 0x1C5
+#define FLAG_DEFEATED_SUDOWOODO 0x1C6
+#define FLAG_DEFEATED_MEW 0x1C7
+#define FLAG_DEFEATED_LATIAS_OR_LATIOS 0x1C8
+#define FLAG_CAUGHT_LATIAS_OR_LATIOS 0x1C9
+#define FLAG_CAUGHT_MEW 0x1CA
+#define FLAG_MET_SCOTT_AFTER_OBTAINING_STONE_BADGE 0x1CB
+#define FLAG_MET_SCOTT_IN_VERDANTURF 0x1CC
+#define FLAG_MET_SCOTT_IN_FALLARBOR 0x1CD
+#define FLAG_MET_SCOTT_IN_LILYCOVE 0x1CE
+#define FLAG_MET_SCOTT_IN_EVERGRANDE 0x1CF
+#define FLAG_MET_SCOTT_ON_SS_TIDAL 0x1D0
+#define FLAG_SCOTT_GIVES_BATTLE_POINTS 0x1D1
+#define FLAG_RECEIVED_STARF_BERRY_FROM_SCOTT 0x1D2
+#define FLAG_ENABLE_ROXANNE_MATCH_CALL 0x1D3
+#define FLAG_ENABLE_BRAWLY_MATCH_CALL 0x1D4
+#define FLAG_ENABLE_WATTSON_MATCH_CALL 0x1D5
+#define FLAG_ENABLE_FLANNERY_MATCH_CALL 0x1D6
+#define FLAG_ENABLE_WINONA_MATCH_CALL 0x1D7
+#define FLAG_ENABLE_TATE_AND_LIZA_MATCH_CALL 0x1D8
+#define FLAG_ENABLE_JUAN_MATCH_CALL 0x1D9
+
+#define FLAG_UNUSED_0x1DA 0x1DA // Unused Flag
+
+#define FLAG_HAS_MYSTIC_TICKET 0x1DB
+#define FLAG_DEFEATED_HO_OH 0x1DC
+#define FLAG_DEFEATED_LUGIA 0x1DD
+
+#define FLAG_UNUSED_0x1DE 0x1DE // Unused Flag
+#define FLAG_UNUSED_0x1DF 0x1DF // Unused Flag
+#define FLAG_UNUSED_0x1E0 0x1E0 // Unused Flag
+#define FLAG_UNUSED_0x1E1 0x1E1 // Unused Flag
+#define FLAG_UNUSED_0x1E2 0x1E2 // Unused Flag
+#define FLAG_UNUSED_0x1E3 0x1E3 // Unused Flag
+
+// Mystery Gift Flags (Unknown)
+#define FLAG_MYSTERY_EVENT_DONE 0x1E4
+#define FLAG_MYSTERY_EVENT_1 0x1E5
+#define FLAG_MYSTERY_EVENT_2 0x1E6
+#define FLAG_MYSTERY_EVENT_3 0x1E7
+#define FLAG_MYSTERY_EVENT_4 0x1E8
+#define FLAG_MYSTERY_EVENT_5 0x1E9
+#define FLAG_MYSTERY_EVENT_6 0x1EA
+#define FLAG_MYSTERY_EVENT_7 0x1EB
+#define FLAG_MYSTERY_EVENT_8 0x1EC
+#define FLAG_MYSTERY_EVENT_9 0x1ED
+#define FLAG_MYSTERY_EVENT_10 0x1EE
+#define FLAG_MYSTERY_EVENT_11 0x1EF
+#define FLAG_MYSTERY_EVENT_12 0x1F0
+#define FLAG_MYSTERY_EVENT_13 0x1F1
+#define FLAG_MYSTERY_EVENT_14 0x1F2
+#define FLAG_MYSTERY_EVENT_15 0x1F3
+
+#define FLAG_TRICK_HOUSE_END_ROOM 0x1F5 // Trick House End Room Flag
// Hidden Items -- sorted by location
-#define FLAG_HIDDEN_ITEMS_START 0x1F4
-#define FLAG_HIDDEN_ITEM_TRICK_HOUSE_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x01)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x08)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_GREEN_SHARD (FLAG_HIDDEN_ITEMS_START + 0x09)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0A)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0B)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x0D)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x24)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x26)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x0E)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x0F)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x10)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_PEARL (FLAG_HIDDEN_ITEMS_START + 0x11)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_IRON (FLAG_HIDDEN_ITEMS_START + 0x13)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_YELLOW_SHARD (FLAG_HIDDEN_ITEMS_START + 0x12)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x14)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BLUE_SHARD (FLAG_HIDDEN_ITEMS_START + 0x0C)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_3_STAR_PIECE (FLAG_HIDDEN_ITEMS_START + 0x15)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x16)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x17)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_3_RED_SHARD (FLAG_HIDDEN_ITEMS_START + 0x18)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x19)
-#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PEARL (FLAG_HIDDEN_ITEMS_START + 0x1A)
-#define FLAG_HIDDEN_ITEM_FALLARBOR_TOWN_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x1C)
-#define FLAG_HIDDEN_ITEM_LAVARIDGE_TOWN_ICE_HEAL (FLAG_HIDDEN_ITEMS_START + 0x00)
-#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY (FLAG_HIDDEN_ITEMS_START + 0x1F)
-#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY (FLAG_HIDDEN_ITEMS_START + 0x20)
-#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY (FLAG_HIDDEN_ITEMS_START + 0x21)
-#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY (FLAG_HIDDEN_ITEMS_START + 0x22)
-#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x65)
-#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_ZINC (FLAG_HIDDEN_ITEMS_START + 0x66)
-#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x67)
-#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_IRON (FLAG_HIDDEN_ITEMS_START + 0x68)
-#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_1 (FLAG_HIDDEN_ITEMS_START + 0x30)
-#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_2 (FLAG_HIDDEN_ITEMS_START + 0x31)
-#define FLAG_HIDDEN_ITEM_JAGGED_PASS_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x4C)
-#define FLAG_HIDDEN_ITEM_JAGGED_PASS_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x4D)
-#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B)
-#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x2B)
-#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x4B)
-#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D)
-#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x4E)
-#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_ZINC (FLAG_HIDDEN_ITEMS_START + 0x4F)
-#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x50)
-#define FLAG_HIDDEN_ITEM_NAVEL_ROCK_TOP_SACRED_ASH (FLAG_HIDDEN_ITEMS_START + 0x6D)
-#define FLAG_HIDDEN_ITEM_PETALBURG_CITY_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x5F)
-#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POTION (FLAG_HIDDEN_ITEMS_START + 0x3A)
-#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_1 (FLAG_HIDDEN_ITEMS_START + 0x3B)
-#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_2 (FLAG_HIDDEN_ITEMS_START + 0x3C)
-#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3D)
-#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_ELIXIR (FLAG_HIDDEN_ITEMS_START + 0x52)
-#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_MAX_REPEL (FLAG_HIDDEN_ITEMS_START + 0x53)
-#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6A)
-#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_ZINC (FLAG_HIDDEN_ITEMS_START + 0x6B)
+#define FLAG_HIDDEN_ITEMS_START 0x1F4
+#define FLAG_HIDDEN_ITEM_TRICK_HOUSE_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x01)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x08)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_GREEN_SHARD (FLAG_HIDDEN_ITEMS_START + 0x09)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0A)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0B)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x0D)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x24)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x26)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x0E)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x0F)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x10)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_PEARL (FLAG_HIDDEN_ITEMS_START + 0x11)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_IRON (FLAG_HIDDEN_ITEMS_START + 0x13)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_YELLOW_SHARD (FLAG_HIDDEN_ITEMS_START + 0x12)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x14)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BLUE_SHARD (FLAG_HIDDEN_ITEMS_START + 0x0C)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_3_STAR_PIECE (FLAG_HIDDEN_ITEMS_START + 0x15)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x16)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x17)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_3_RED_SHARD (FLAG_HIDDEN_ITEMS_START + 0x18)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x19)
+#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PEARL (FLAG_HIDDEN_ITEMS_START + 0x1A)
+#define FLAG_HIDDEN_ITEM_FALLARBOR_TOWN_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x1C)
+#define FLAG_HIDDEN_ITEM_LAVARIDGE_TOWN_ICE_HEAL (FLAG_HIDDEN_ITEMS_START + 0x00)
+#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY (FLAG_HIDDEN_ITEMS_START + 0x1F)
+#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY (FLAG_HIDDEN_ITEMS_START + 0x20)
+#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY (FLAG_HIDDEN_ITEMS_START + 0x21)
+#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY (FLAG_HIDDEN_ITEMS_START + 0x22)
+#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x65)
+#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_ZINC (FLAG_HIDDEN_ITEMS_START + 0x66)
+#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x67)
+#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_IRON (FLAG_HIDDEN_ITEMS_START + 0x68)
+#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_1 (FLAG_HIDDEN_ITEMS_START + 0x30)
+#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_2 (FLAG_HIDDEN_ITEMS_START + 0x31)
+#define FLAG_HIDDEN_ITEM_JAGGED_PASS_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x4C)
+#define FLAG_HIDDEN_ITEM_JAGGED_PASS_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x4D)
+#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B)
+#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x2B)
+#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x4B)
+#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D)
+#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x4E)
+#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_ZINC (FLAG_HIDDEN_ITEMS_START + 0x4F)
+#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x50)
+#define FLAG_HIDDEN_ITEM_NAVEL_ROCK_TOP_SACRED_ASH (FLAG_HIDDEN_ITEMS_START + 0x6D)
+#define FLAG_HIDDEN_ITEM_PETALBURG_CITY_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x5F)
+#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POTION (FLAG_HIDDEN_ITEMS_START + 0x3A)
+#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_1 (FLAG_HIDDEN_ITEMS_START + 0x3B)
+#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_2 (FLAG_HIDDEN_ITEMS_START + 0x3C)
+#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3D)
+#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_ELIXIR (FLAG_HIDDEN_ITEMS_START + 0x52)
+#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_MAX_REPEL (FLAG_HIDDEN_ITEMS_START + 0x53)
+#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6A)
+#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_ZINC (FLAG_HIDDEN_ITEMS_START + 0x6B)
#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x6C)
#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_FULL_RESTORE (FLAG_HIDDEN_ITEMS_START + 0x69)
-#define FLAG_HIDDEN_ITEM_SS_TIDAL_LOWER_DECK_LEFTOVERS (FLAG_HIDDEN_ITEMS_START + 0x23)
-#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_1F_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x51)
-#define FLAG_HIDDEN_ITEM_ROUTE_104_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2C)
-#define FLAG_HIDDEN_ITEM_ROUTE_104_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3E)
-#define FLAG_HIDDEN_ITEM_ROUTE_104_POTION (FLAG_HIDDEN_ITEMS_START + 0x25)
-#define FLAG_HIDDEN_ITEM_ROUTE_104_ANTIDOTE (FLAG_HIDDEN_ITEMS_START + 0x55)
-#define FLAG_HIDDEN_ITEM_ROUTE_104_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x58)
-#define FLAG_HIDDEN_ITEM_ROUTE_105_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x59)
-#define FLAG_HIDDEN_ITEM_ROUTE_105_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x6F)
-#define FLAG_HIDDEN_ITEM_ROUTE_106_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3F)
-#define FLAG_HIDDEN_ITEM_ROUTE_106_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x2E)
-#define FLAG_HIDDEN_ITEM_ROUTE_106_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x2F)
-#define FLAG_HIDDEN_ITEM_ROUTE_108_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x56)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x32)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x34)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x33)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_ETHER (FLAG_HIDDEN_ITEMS_START + 0x40)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5A)
-#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5B)
-#define FLAG_HIDDEN_ITEM_ROUTE_110_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x36)
-#define FLAG_HIDDEN_ITEM_ROUTE_110_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x35)
-#define FLAG_HIDDEN_ITEM_ROUTE_110_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x41)
-#define FLAG_HIDDEN_ITEM_ROUTE_110_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x37)
-#define FLAG_HIDDEN_ITEM_ROUTE_111_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x02)
-#define FLAG_HIDDEN_ITEM_ROUTE_111_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x38)
-#define FLAG_HIDDEN_ITEM_ROUTE_111_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x39)
-#define FLAG_HIDDEN_ITEM_ROUTE_113_ETHER (FLAG_HIDDEN_ITEMS_START + 0x03)
-#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E)
-#define FLAG_HIDDEN_ITEM_ROUTE_113_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x62)
-#define FLAG_HIDDEN_ITEM_ROUTE_114_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x04)
-#define FLAG_HIDDEN_ITEM_ROUTE_113_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x2A)
-#define FLAG_HIDDEN_ITEM_ROUTE_115_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x61)
-#define FLAG_HIDDEN_ITEM_ROUTE_116_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2D)
-#define FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES (FLAG_HIDDEN_ITEMS_START + 0x60)
-#define FLAG_HIDDEN_ITEM_ROUTE_117_REPEL (FLAG_HIDDEN_ITEMS_START + 0x48)
-#define FLAG_HIDDEN_ITEM_ROUTE_118_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x42)
-#define FLAG_HIDDEN_ITEM_ROUTE_118_IRON (FLAG_HIDDEN_ITEMS_START + 0x43)
-#define FLAG_HIDDEN_ITEM_ROUTE_119_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x05)
-#define FLAG_HIDDEN_ITEM_ROUTE_119_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x06)
-#define FLAG_HIDDEN_ITEM_ROUTE_119_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x44)
-#define FLAG_HIDDEN_ITEM_ROUTE_119_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x57)
-#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_1 (FLAG_HIDDEN_ITEMS_START + 0x47)
-#define FLAG_HIDDEN_ITEM_ROUTE_120_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x54)
-#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_2 (FLAG_HIDDEN_ITEMS_START + 0x45)
-#define FLAG_HIDDEN_ITEM_ROUTE_120_ZINC (FLAG_HIDDEN_ITEMS_START + 0x46)
-#define FLAG_HIDDEN_ITEM_ROUTE_121_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x27)
-#define FLAG_HIDDEN_ITEM_ROUTE_121_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x28)
-#define FLAG_HIDDEN_ITEM_ROUTE_121_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x49)
-#define FLAG_HIDDEN_ITEM_ROUTE_121_MAX_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x64)
-#define FLAG_HIDDEN_ITEM_ROUTE_123_SUPER_REPEL (FLAG_HIDDEN_ITEMS_START + 0x07)
-#define FLAG_HIDDEN_ITEM_ROUTE_123_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x29)
-#define FLAG_HIDDEN_ITEM_ROUTE_123_HYPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x4A)
-#define FLAG_HIDDEN_ITEM_ROUTE_123_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x63)
-#define FLAG_HIDDEN_ITEM_ROUTE_123_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6E)
-#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x5C)
-#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5D)
-#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5E)
+#define FLAG_HIDDEN_ITEM_SS_TIDAL_LOWER_DECK_LEFTOVERS (FLAG_HIDDEN_ITEMS_START + 0x23)
+#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_1F_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x51)
+#define FLAG_HIDDEN_ITEM_ROUTE_104_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2C)
+#define FLAG_HIDDEN_ITEM_ROUTE_104_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3E)
+#define FLAG_HIDDEN_ITEM_ROUTE_104_POTION (FLAG_HIDDEN_ITEMS_START + 0x25)
+#define FLAG_HIDDEN_ITEM_ROUTE_104_ANTIDOTE (FLAG_HIDDEN_ITEMS_START + 0x55)
+#define FLAG_HIDDEN_ITEM_ROUTE_104_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x58)
+#define FLAG_HIDDEN_ITEM_ROUTE_105_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x59)
+#define FLAG_HIDDEN_ITEM_ROUTE_105_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x6F)
+#define FLAG_HIDDEN_ITEM_ROUTE_106_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3F)
+#define FLAG_HIDDEN_ITEM_ROUTE_106_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x2E)
+#define FLAG_HIDDEN_ITEM_ROUTE_106_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x2F)
+#define FLAG_HIDDEN_ITEM_ROUTE_108_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x56)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x32)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x34)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x33)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_ETHER (FLAG_HIDDEN_ITEMS_START + 0x40)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5A)
+#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5B)
+#define FLAG_HIDDEN_ITEM_ROUTE_110_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x36)
+#define FLAG_HIDDEN_ITEM_ROUTE_110_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x35)
+#define FLAG_HIDDEN_ITEM_ROUTE_110_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x41)
+#define FLAG_HIDDEN_ITEM_ROUTE_110_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x37)
+#define FLAG_HIDDEN_ITEM_ROUTE_111_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x02)
+#define FLAG_HIDDEN_ITEM_ROUTE_111_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x38)
+#define FLAG_HIDDEN_ITEM_ROUTE_111_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x39)
+#define FLAG_HIDDEN_ITEM_ROUTE_113_ETHER (FLAG_HIDDEN_ITEMS_START + 0x03)
+#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E)
+#define FLAG_HIDDEN_ITEM_ROUTE_113_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x62)
+#define FLAG_HIDDEN_ITEM_ROUTE_114_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x04)
+#define FLAG_HIDDEN_ITEM_ROUTE_113_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x2A)
+#define FLAG_HIDDEN_ITEM_ROUTE_115_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x61)
+#define FLAG_HIDDEN_ITEM_ROUTE_116_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2D)
+#define FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES (FLAG_HIDDEN_ITEMS_START + 0x60)
+#define FLAG_HIDDEN_ITEM_ROUTE_117_REPEL (FLAG_HIDDEN_ITEMS_START + 0x48)
+#define FLAG_HIDDEN_ITEM_ROUTE_118_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x42)
+#define FLAG_HIDDEN_ITEM_ROUTE_118_IRON (FLAG_HIDDEN_ITEMS_START + 0x43)
+#define FLAG_HIDDEN_ITEM_ROUTE_119_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x05)
+#define FLAG_HIDDEN_ITEM_ROUTE_119_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x06)
+#define FLAG_HIDDEN_ITEM_ROUTE_119_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x44)
+#define FLAG_HIDDEN_ITEM_ROUTE_119_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x57)
+#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_1 (FLAG_HIDDEN_ITEMS_START + 0x47)
+#define FLAG_HIDDEN_ITEM_ROUTE_120_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x54)
+#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_2 (FLAG_HIDDEN_ITEMS_START + 0x45)
+#define FLAG_HIDDEN_ITEM_ROUTE_120_ZINC (FLAG_HIDDEN_ITEMS_START + 0x46)
+#define FLAG_HIDDEN_ITEM_ROUTE_121_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x27)
+#define FLAG_HIDDEN_ITEM_ROUTE_121_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x28)
+#define FLAG_HIDDEN_ITEM_ROUTE_121_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x49)
+#define FLAG_HIDDEN_ITEM_ROUTE_121_MAX_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x64)
+#define FLAG_HIDDEN_ITEM_ROUTE_123_SUPER_REPEL (FLAG_HIDDEN_ITEMS_START + 0x07)
+#define FLAG_HIDDEN_ITEM_ROUTE_123_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x29)
+#define FLAG_HIDDEN_ITEM_ROUTE_123_HYPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x4A)
+#define FLAG_HIDDEN_ITEM_ROUTE_123_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x63)
+#define FLAG_HIDDEN_ITEM_ROUTE_123_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6E)
+#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x5C)
+#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5D)
+#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5E)
// Event Flags
-#define FLAG_HIDE_ROUTE_101_BIRCH_STARTERS_BAG 0x2BC
-#define FLAG_HIDE_APPRENTICE 0x2BD
-#define FLAG_HIDE_POKEMON_CENTER_2F_MYSTERY_GIFT_MAN 0x2BE
-#define FLAG_HIDE_UNION_ROOM_PLAYER_1 0x2BF
-#define FLAG_HIDE_UNION_ROOM_PLAYER_2 0x2C0
-#define FLAG_HIDE_UNION_ROOM_PLAYER_3 0x2C1
-#define FLAG_HIDE_UNION_ROOM_PLAYER_4 0x2C2
-#define FLAG_HIDE_UNION_ROOM_PLAYER_5 0x2C3
-#define FLAG_HIDE_UNION_ROOM_PLAYER_6 0x2C4
-#define FLAG_HIDE_UNION_ROOM_PLAYER_7 0x2C5
-#define FLAG_HIDE_UNION_ROOM_PLAYER_8 0x2C6
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_1 0x2C7
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_2 0x2C8
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_3 0x2C9
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_4 0x2CA
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_5 0x2CB
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_6 0x2CC
-#define FLAG_HIDE_SAFARI_ZONE_SOUTH_CONSTRUCTION_WORKERS 0x2CD
-#define FLAG_HIDE_MEW 0x2CE
-#define FLAG_HIDE_ROUTE_104_RIVAL 0x2CF
-#define FLAG_HIDE_ROUTE_101_BIRCH_ZIGZAGOON_BATTLE 0x2D0
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH 0x2D1
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM 0x2D2
-#define FLAG_HIDE_ROUTE_103_RIVAL 0x2D3
-#define FLAG_HIDE_PETALBURG_WOODS_DEVON_EMPLOYEE 0x2D4
-#define FLAG_HIDE_PETALBURG_WOODS_AQUA_GRUNT 0x2D5
-#define FLAG_HIDE_PETALBURG_CITY_WALLY 0x2D6
-#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_INVISIBLE_NINJA_BOY 0x2D7
-#define FLAG_HIDE_PETALBURG_CITY_WALLYS_AUNT 0x2D8
-#define FLAG_UNUSED_0x2D9 0x2D9
-#define FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER 0x2DA
-#define FLAG_HIDE_RUSTBORO_CITY_AQUA_GRUNT 0x2DB
-#define FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1 0x2DC
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_2 0x2DD
-#define FLAG_HIDE_PLAYERS_HOUSE_DAD 0x2DE
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING 0x2DF
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING 0x2E0
-#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_INVISIBLE_NINJA_BOY 0x2E1
-#define FLAG_HIDE_ROUTE_104_MR_BRINEY 0x2E2
-#define FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY 0x2E3
-#define FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN 0x2E4
-#define FLAG_HIDE_ROUTE_108_MR_BRINEY 0x2E5
-#define FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT 0x2E6
-#define FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN 0x2E7
-#define FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT 0x2E8
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_BRENDAN 0x2E9
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_BRENDAN 0x2EA
-#define FLAG_HIDE_SAFARI_ZONE_SOUTH_EAST_EXPANSION 0x2EB
-#define FLAG_HIDE_LILYCOVE_HARBOR_EON_TICKET_TAKER 0x2EC
-#define FLAG_HIDE_SLATEPORT_CITY_SCOTT 0x2ED
-#define FLAG_HIDE_ROUTE_101_ZIGZAGOON 0x2EE
-#define FLAG_HIDE_VICTORY_ROAD_EXIT_WALLY 0x2EF
-#define FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE 0x2F0
-#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_STEVEN 0x2F1
-#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1 0x2F2
-#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2 0x2F3
-#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA 0x2F4
-#define FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM 0x2F5
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_MOM 0x2F6
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MOM 0x2F7
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM 0x2F8
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_TRUCK 0x2F9
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_TRUCK 0x2FA
-#define FLAG_HIDE_DEOXYS 0x2FB
-#define FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE 0x2FC
-#define FLAG_HIDE_MAUVILLE_CITY_SCOTT 0x2FD
-#define FLAG_HIDE_VERDANTURF_TOWN_SCOTT 0x2FE
-#define FLAG_HIDE_FALLORBOR_TOWN_BATTLE_TENT_SCOTT 0x2FF
-#define FLAG_HIDE_ROUTE_111_VICTOR_WINSTRATE 0x300
-#define FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE 0x301
-#define FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE 0x302
-#define FLAG_HIDE_ROUTE_111_VICKY_WINSTRATE 0x303
-#define FLAG_HIDE_PETALYBURG_GYM_NORMAN 0x304
-#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_2 0x305
-#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_1 0x306
-#define FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR 0x307
-#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1 0x308
-#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_2 0x309
-#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_3 0x30A
-#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_4 0x30B
-#define FLAG_HIDE_LILYCOVE_MUSEUM_TOURISTS 0x30C
-#define FLAG_HIDE_PETALBURG_GYM_GREETER 0x30D
-#define FLAG_HIDE_MARINE_CAVE_KYOGRE 0x30E
-#define FLAG_HIDE_TERRA_CAVE_GROUDON 0x30F
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_MOM 0x310
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_MOM 0x311
-#define FLAG_HIDE_ROUTE_119_SCOTT 0x312
-#define FLAG_HIDE_LILCOVE_MOTEL_SCOTT 0x313
-#define FLAG_HIDE_MOSSDEEP_CITY_SCOTT 0x314
-#define FLAG_HIDE_FANCLUB_OLD_LADY 0x315
-#define FLAG_HIDE_FANCLUB_BOY 0x316
-#define FLAG_HIDE_FANCLUB_LITTLE_BOY 0x317
-#define FLAG_HIDE_FANCLUB_LADY 0x318
-#define FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT 0x319
-#define FLAG_HIDE_LITTLEROOT_TOWN_RIVAL 0x31A
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCH 0x31B
-#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 0x31C
-#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 0x31D
-#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 0x31E
-#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 0x31F
-#define FLAG_HIDE_LUGIA 0x320
-#define FLAG_HIDE_HOOH 0x321
-#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER 0x322
-#define FLAG_HIDE_SLATEPORT_CITY_CONTEST_REPORTER 0x323
-#define FLAG_HIDE_MAUVILLE_CITY_WALLY 0x324
-#define FLAG_HIDE_MAUVILLE_CITY_WALLYS_UNCLE 0x325
-#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY 0x326
-#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_MAN 0x327
-#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_MAN 0x328
-#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLYS_UNCLE 0x329
-#define FLAG_HIDE_SS_TIDAL_CORRIDOR_SCOTT 0x32A
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CYNDAQUIL 0x32B
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_TOTODILE 0x32C
-#define FLAG_HIDE_ROUTE_116_DROPPED_GLASSES_MAN 0x32D
-#define FLAG_HIDE_RUSBORO_CITY_RIVAL 0x32E
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_SWABLU_DOLL 0x32F
-#define FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE 0x330
-#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL 0x331
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL 0x332
-#define FLAG_HIDE_ROUTE_112_TEAM_MAGMA 0x333
-#define FLAG_HIDE_CAVE_OF_ORIGIN_B1F_WALLACE 0x334
-#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_1_BLOCKING_ENTRANCE 0x335
-#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_2_BLOCKING_ENTRANCE 0x336
-#define FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA 0x337
-#define FLAG_HIDE_PETALBURG_GYM_WALLYS_UNCLE 0x338
-#define FLAG_UNUSED_0x339 0x339
-#define FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE 0x33A
-#define FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE 0x33B
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE 0x33C
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE 0x33D
-#define FLAG_HIDE_PETALBURG_CITY_WALLYS_UNCLE 0x33E
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS 0x33F
-#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS 0x340
-#define FLAG_HIDE_GRANITE_CAVE_STEVEN 0x341
-#define FLAG_HIDE_ROUTE_128_STEVEN 0x342
-#define FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY 0x343
-#define FLAG_HIDE_BATTLE_FRONTIER_RECEPTION_GATE_SCOTT 0x344
-#define FLAG_HIDE_ROUTE_110_BIRCH 0x345
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CHIKORITA 0x346
-#define FLAG_HIDE_SOOTOPOLIS_CITY_MAN_1 0x347
-#define FLAG_HIDE_SLATEPORT_CITY_CAPTAIN_STERN 0x348
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN 0x349
-#define FLAG_HIDE_BATTLE_FRONTIER_SUDOWOODO 0x34A
-#define FLAG_HIDE_ROUTE_111_ROCK_SMASH_TIP_GUY 0x34B
-#define FLAG_HIDE_RUSTBORO_CITY_SCIENTIST 0x34C
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT 0x34D
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE 0x34E
-#define FLAG_HIDE_JAGGED_PASS_MAGMA_GUARD 0x34F
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SUBMARINE_SHADOW 0x350
-#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_PICHU_DOLL 0x351
-#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_2 0x352
-#define FLAG_HIDE_ROUTE_119_RIVAL 0x353
-#define FLAG_HIDE_LILYCOVE_CITY_AQUA_GRUNTS 0x354
-#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1 0x355
-#define FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS 0x356
-#define FLAG_HIDE_SKY_PILLAR_WALLACE 0x357
-#define FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE 0x358
-#define FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS 0x359
-#define FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY 0x35A
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 0x35B
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL 0x35C
-#define FLAG_HIDE_LILYCOVE_HARBOR_SSTIDAL 0x35D
-#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA 0x35E
-#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_STEVEN 0x35F
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_1 0x360
-#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_2 0x361
-#define FLAG_HIDE_PETALBURG_GYM_WALLY 0x362
-#define FLAG_UNKNOWN_0x363 0x363
-#define FLAG_HIDE_LITTLEROOT_TOWN_FAT_MAN 0x364
-#define FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY 0x365
-#define FLAG_HIDE_LANETTES_HOUSE_LANETTE 0x366
-#define FLAG_HIDE_FALLORBOR_POKEMON_CENTER_LANETTE 0x367
-#define FLAG_HIDE_TRICK_HOUSE_ENTRANCE_MAN 0x368
-#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_POKEBLOCK_EXPERT 0x369
-#define FLAG_HIDE_DESERT_UNDERPASS_FOSSIL 0x36A
-#define FLAG_HIDE_ROUTE_111_PLAYER_DESCENT 0x36B
-#define FLAG_HIDE_ROUTE_111_DESERT_FOSSIL 0x36C
-#define FLAG_HIDE_MT_CHIMNEY_TRAINERS 0x36D
-#define FLAG_HIDE_RUSTURF_TUNNEL_AQUA_GRUNT 0x36E
-#define FLAG_HIDE_RUSTURF_TUNNEL_OLD_MAN 0x36F
-#define FLAG_HIDE_RUSTURF_TUNNEL_PEEKO 0x370
-#define FLAG_HIDE_BRINEYS_HOUSE_PEEKO 0x371
-#define FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA 0x372
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS 0x373
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_1 0x374
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_2 0x375
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_ARCHIE 0x376
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_CAPTAIN_STERN 0x377
-#define FLAG_HIDE_BATTLE_TOWER_OPPONENT 0x378
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL 0x379
-#define FLAG_HIDE_ROUTE_119_TEAM_AQUA 0x37A
-#define FLAG_HIDE_ROUTE_116_MR_BRINEY 0x37B
-#define FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS 0x37C
-#define FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS 0x37D
-#define FLAG_HIDE_ROUTE_116_TUNNELER 0x37E
-#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_2 0x37F
-#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 0x380
-#define FLAG_HIDE_ROUTE_101_BIRCH 0x381
-#define FLAG_HIDE_ROUTE_103_BIRCH 0x382
-#define FLAG_HIDE_TRICK_HOUSE_END_MAN 0x383
-#define FLAG_HIDE_ROUTE_110_TEAM_AQUA 0x384
-#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 0x385
-#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 0x386
-#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 0x387
-#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 0x388
-#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS 0x389
-#define FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST 0x38A
-#define FLAG_HIDE_FALLARBOR_AZURILL 0x38B
-#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_ATTENDANT 0x38C
-#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_SAILOR 0x38D
-#define FLAG_HIDE_SOUTHERN_ISLAND_EON_STONE 0x38E
-#define FLAG_HIDE_SOUTHERN_ISLAND_UNCHOSEN_EON_DUO_MON 0x38F
-#define FLAG_HIDE_MAUVILLE_CITY_WATTSON 0x390
-#define FLAG_HIDE_MAUVILLE_GYM_WATTSON 0x391
-#define FLAG_0x392 0x392
-#define FLAG_0x393 0x393
-#define FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE 0x394
-#define FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA 0x395
-#define FLAG_HIDE_BATTLE_TOWER_REPORTER 0x396
-#define FLAG_HIDE_ROUTE_110_RIVAL_1 0x397
-#define FLAG_HIDE_CHAMPIONS_ROOM_RIVAL 0x398
-#define FLAG_HIDE_CHAMPIONS_ROOM_BIRCH 0x399
-#define FLAG_HIDE_ROUTE_110_RIVAL_2 0x39A
-#define FLAG_HIDE_ROUTE_119_RIVAL_ON_BIKE 0x39B
-#define FLAG_HIDE_AQUA_HIDEOUT_GRUNTS 0x39C
-#define FLAG_HIDE_LILCOVE_MOTEL_GAME_DESIGNERS 0x39D
-#define FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA 0x39E
-#define FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA 0x39F
-#define FLAG_HIDE_FALLARBOR_HOUSE_1_PROF_COZMO 0x3A0
-#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_1 0x3A1
-#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_2 0x3A2
-#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1 0x3A3
-#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_2 0x3A4
-#define FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL 0x3A5
-#define FLAG_HIDE_MOSSDEEP_CITY_HOUSE_2_WINGULL 0x3A6
-#define FLAG_HIDE_REGIROCK 0x3A7
-#define FLAG_HIDE_REGICE 0x3A8
-#define FLAG_HIDE_REGISTEEL 0x3A9
-#define FLAG_HIDE_METEOR_FALLS_TEAM_AQUA 0x3AA
-#define FLAG_HIDE_METEOR_FALLS_TEAM_MAGMA 0x3AB
-#define FLAG_HIDE_DEWFORD_HALL_SLUDGE_BOMB_MAN 0x3AC
-#define FLAG_HIDE_SEAFLOOR_CAVERN_ENTRANCE_AQUA_GRUNT 0x3AD
-#define FLAG_HIDE_METEOR_FALLS_1F_1R_COZMO 0x3AE
-#define FLAG_HIDE_AQUA_HIDEOUT_B2F_SUBMARINE_SHADOW 0x3AF
-#define FLAG_HIDE_ROUTE_128_ARCHIE 0x3B0
-#define FLAG_HIDE_ROUTE_128_MAXIE 0x3B1
-#define FLAG_HIDE_SEAFLOOR_CAVERN_AQUA_GRUNTS 0x3B2
-#define FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE 0x3B3
-#define FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN 0x3B4
-#define FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE 0x3B5
-#define FLAG_HIDE_SS_TIDAL_CORRIDOR_MR_BRINEY 0x3B6
-#define FLAG_HIDE_SS_TIDAL_ROOMS_SNATCH_GIVER 0x3B7
-#define FLAG_0x3B8 0x3B8
-#define FLAG_0x3B9 0x3B9
-#define FLAG_0x3BA 0x3BA
-#define FLAG_0x3BB 0x3BB
-#define FLAG_0x3BC 0x3BC
-#define FLAG_0x3BD 0x3BD
-#define FLAG_0x3BE 0x3BE
-#define FLAG_0x3BF 0x3BF
-#define FLAG_HIDE_ROUTE_111_SECRET_POWER_MAN 0x3C0
-#define FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION 0x3C1
-#define FLAG_HIDE_LILYCOVE_DEPARTMENT_STORE_ROOFTOP_SALE_WOMAN 0x3C2
-#define FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL 0x3C3
-#define FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL 0x3C4
-#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_FAMILIAR_AQUA_GRUNT 0x3C5
-#define FLAG_HIDE_ROUTE_118_STEVEN 0x3C6
-#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN 0x3C7
-#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL 0x3C8
-#define FLAG_HIDE_FORTREE_CITY_KECLEON 0x3C9
-#define FLAG_HIDE_ROUTE_120_KECLEON_1 0x3CA
-#define FLAG_HIDE_LILYCOVE_CITY_RIVAL 0x3CB
-#define FLAG_0x3CC 0x3CC
-#define FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN 0x3CD
-#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_1 0x3CE
-#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_2 0x3CF
-#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_3 0x3D0
-#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_1 0x3D1
-#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_2 0x3D2
-#define FLAG_HIDE_OLDALE_TOWN_RIVAL 0x3D3
-#define FLAG_HIDE_UNDERWATER_SEA_FLOOR_CAVERN_STOLEN_SUBMARINE 0x3D4
-#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE 0x3D5
-#define FLAG_HIDE_ROUTE_120_KECLEON_2 0x3D6
-#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_WOMAN 0x3D7
-#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_WOMAN 0x3D8
-#define FLAG_HIDE_ROUTE_120_KECLEON_3 0x3D9
-#define FLAG_HIDE_ROUTE_120_KECLEON_4 0x3DA
-#define FLAG_HIDE_ROUTE_120_KECLEON_5 0x3DB
-#define FLAG_HIDE_ROUTE_120_KECLEON_6 0x3DC
-#define FLAG_HIDE_ROUTE_119_KECLEON_1 0x3DD
-#define FLAG_HIDE_ROUTE_119_KECLEON_2 0x3DE
-#define FLAG_HIDE_ROUTE_101_BOY 0x3DF
-#define FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M 0x3E0
-#define FLAG_HIDE_LILYCOVE_POKEMON_CENTER_LADY 0x3E1
-#define FLAG_HIDE_MT_CHIMNEY_LAVA_COOKIE_LADY 0x3E2
-#define FLAG_HIDE_PETALBURG_CITY_SCOTT 0x3E3
-#define FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA 0x3E4
-#define FLAG_HIDE_SOOTOPOLIS_CITY_KYOGRE 0x3E5
-#define FLAG_HIDE_SOOTOPOLIS_CITY_GROUDON 0x3E6
-#define FLAG_HIDE_RUSTBORO_CITY_POKEMON_SCHOOL_SCOTT 0x3E7
+#define FLAG_HIDE_ROUTE_101_BIRCH_STARTERS_BAG 0x2BC
+#define FLAG_HIDE_APPRENTICE 0x2BD
+#define FLAG_HIDE_POKEMON_CENTER_2F_MYSTERY_GIFT_MAN 0x2BE
+#define FLAG_HIDE_UNION_ROOM_PLAYER_1 0x2BF
+#define FLAG_HIDE_UNION_ROOM_PLAYER_2 0x2C0
+#define FLAG_HIDE_UNION_ROOM_PLAYER_3 0x2C1
+#define FLAG_HIDE_UNION_ROOM_PLAYER_4 0x2C2
+#define FLAG_HIDE_UNION_ROOM_PLAYER_5 0x2C3
+#define FLAG_HIDE_UNION_ROOM_PLAYER_6 0x2C4
+#define FLAG_HIDE_UNION_ROOM_PLAYER_7 0x2C5
+#define FLAG_HIDE_UNION_ROOM_PLAYER_8 0x2C6
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_1 0x2C7
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_2 0x2C8
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_3 0x2C9
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_4 0x2CA
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_5 0x2CB
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_6 0x2CC
+#define FLAG_HIDE_SAFARI_ZONE_SOUTH_CONSTRUCTION_WORKERS 0x2CD
+#define FLAG_HIDE_MEW 0x2CE
+#define FLAG_HIDE_ROUTE_104_RIVAL 0x2CF
+#define FLAG_HIDE_ROUTE_101_BIRCH_ZIGZAGOON_BATTLE 0x2D0
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH 0x2D1
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM 0x2D2
+#define FLAG_HIDE_ROUTE_103_RIVAL 0x2D3
+#define FLAG_HIDE_PETALBURG_WOODS_DEVON_EMPLOYEE 0x2D4
+#define FLAG_HIDE_PETALBURG_WOODS_AQUA_GRUNT 0x2D5
+#define FLAG_HIDE_PETALBURG_CITY_WALLY 0x2D6
+#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_INVISIBLE_NINJA_BOY 0x2D7
+#define FLAG_HIDE_PETALBURG_CITY_WALLYS_AUNT 0x2D8
+
+#define FLAG_UNUSED_0x2D9 0x2D9 // Unused Flag
+
+#define FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER 0x2DA
+#define FLAG_HIDE_RUSTBORO_CITY_AQUA_GRUNT 0x2DB
+#define FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1 0x2DC
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_2 0x2DD
+#define FLAG_HIDE_PLAYERS_HOUSE_DAD 0x2DE
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING 0x2DF
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING 0x2E0
+#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_INVISIBLE_NINJA_BOY 0x2E1
+#define FLAG_HIDE_ROUTE_104_MR_BRINEY 0x2E2
+#define FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY 0x2E3
+#define FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN 0x2E4
+#define FLAG_HIDE_ROUTE_108_MR_BRINEY 0x2E5
+#define FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT 0x2E6
+#define FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN 0x2E7
+#define FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT 0x2E8
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_BRENDAN 0x2E9
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_BRENDAN 0x2EA
+#define FLAG_HIDE_SAFARI_ZONE_SOUTH_EAST_EXPANSION 0x2EB
+#define FLAG_HIDE_LILYCOVE_HARBOR_EON_TICKET_TAKER 0x2EC
+#define FLAG_HIDE_SLATEPORT_CITY_SCOTT 0x2ED
+#define FLAG_HIDE_ROUTE_101_ZIGZAGOON 0x2EE
+#define FLAG_HIDE_VICTORY_ROAD_EXIT_WALLY 0x2EF
+#define FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE 0x2F0
+#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_STEVEN 0x2F1
+#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1 0x2F2
+#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2 0x2F3
+#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA 0x2F4
+#define FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM 0x2F5
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_MOM 0x2F6
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MOM 0x2F7
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM 0x2F8
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_TRUCK 0x2F9
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_TRUCK 0x2FA
+#define FLAG_HIDE_DEOXYS 0x2FB
+#define FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE 0x2FC
+#define FLAG_HIDE_MAUVILLE_CITY_SCOTT 0x2FD
+#define FLAG_HIDE_VERDANTURF_TOWN_SCOTT 0x2FE
+#define FLAG_HIDE_FALLORBOR_TOWN_BATTLE_TENT_SCOTT 0x2FF
+#define FLAG_HIDE_ROUTE_111_VICTOR_WINSTRATE 0x300
+#define FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE 0x301
+#define FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE 0x302
+#define FLAG_HIDE_ROUTE_111_VICKY_WINSTRATE 0x303
+#define FLAG_HIDE_PETALYBURG_GYM_NORMAN 0x304
+#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_2 0x305
+#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_1 0x306
+#define FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR 0x307
+#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1 0x308
+#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_2 0x309
+#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_3 0x30A
+#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_4 0x30B
+#define FLAG_HIDE_LILYCOVE_MUSEUM_TOURISTS 0x30C
+#define FLAG_HIDE_PETALBURG_GYM_GREETER 0x30D
+#define FLAG_HIDE_MARINE_CAVE_KYOGRE 0x30E
+#define FLAG_HIDE_TERRA_CAVE_GROUDON 0x30F
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_MOM 0x310
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_MOM 0x311
+#define FLAG_HIDE_ROUTE_119_SCOTT 0x312
+#define FLAG_HIDE_LILCOVE_MOTEL_SCOTT 0x313
+#define FLAG_HIDE_MOSSDEEP_CITY_SCOTT 0x314
+#define FLAG_HIDE_FANCLUB_OLD_LADY 0x315
+#define FLAG_HIDE_FANCLUB_BOY 0x316
+#define FLAG_HIDE_FANCLUB_LITTLE_BOY 0x317
+#define FLAG_HIDE_FANCLUB_LADY 0x318
+#define FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT 0x319
+#define FLAG_HIDE_LITTLEROOT_TOWN_RIVAL 0x31A
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCH 0x31B
+#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 0x31C
+#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 0x31D
+#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 0x31E
+#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 0x31F
+#define FLAG_HIDE_LUGIA 0x320
+#define FLAG_HIDE_HO_OH 0x321
+#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER 0x322
+#define FLAG_HIDE_SLATEPORT_CITY_CONTEST_REPORTER 0x323
+#define FLAG_HIDE_MAUVILLE_CITY_WALLY 0x324
+#define FLAG_HIDE_MAUVILLE_CITY_WALLYS_UNCLE 0x325
+#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY 0x326
+#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_MAN 0x327
+#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_MAN 0x328
+#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLYS_UNCLE 0x329
+#define FLAG_HIDE_SS_TIDAL_CORRIDOR_SCOTT 0x32A
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CYNDAQUIL 0x32B
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_TOTODILE 0x32C
+#define FLAG_HIDE_ROUTE_116_DROPPED_GLASSES_MAN 0x32D
+#define FLAG_HIDE_RUSBORO_CITY_RIVAL 0x32E
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_SWABLU_DOLL 0x32F
+#define FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE 0x330
+#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL 0x331
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL 0x332
+#define FLAG_HIDE_ROUTE_112_TEAM_MAGMA 0x333
+#define FLAG_HIDE_CAVE_OF_ORIGIN_B1F_WALLACE 0x334
+#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_1_BLOCKING_ENTRANCE 0x335
+#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_2_BLOCKING_ENTRANCE 0x336
+#define FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA 0x337
+#define FLAG_HIDE_PETALBURG_GYM_WALLYS_UNCLE 0x338
+
+#define FLAG_UNUSED_0x339 0x339 // Unused Flag
+
+#define FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE 0x33A
+#define FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE 0x33B
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE 0x33C
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE 0x33D
+#define FLAG_HIDE_PETALBURG_CITY_WALLYS_UNCLE 0x33E
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS 0x33F
+#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS 0x340
+#define FLAG_HIDE_GRANITE_CAVE_STEVEN 0x341
+#define FLAG_HIDE_ROUTE_128_STEVEN 0x342
+#define FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY 0x343
+#define FLAG_HIDE_BATTLE_FRONTIER_RECEPTION_GATE_SCOTT 0x344
+#define FLAG_HIDE_ROUTE_110_BIRCH 0x345
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CHIKORITA 0x346
+#define FLAG_HIDE_SOOTOPOLIS_CITY_MAN_1 0x347
+#define FLAG_HIDE_SLATEPORT_CITY_CAPTAIN_STERN 0x348
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN 0x349
+#define FLAG_HIDE_BATTLE_FRONTIER_SUDOWOODO 0x34A
+#define FLAG_HIDE_ROUTE_111_ROCK_SMASH_TIP_GUY 0x34B
+#define FLAG_HIDE_RUSTBORO_CITY_SCIENTIST 0x34C
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT 0x34D
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE 0x34E
+#define FLAG_HIDE_JAGGED_PASS_MAGMA_GUARD 0x34F
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SUBMARINE_SHADOW 0x350
+#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_PICHU_DOLL 0x351
+#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_2 0x352
+#define FLAG_HIDE_ROUTE_119_RIVAL 0x353
+#define FLAG_HIDE_LILYCOVE_CITY_AQUA_GRUNTS 0x354
+#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1 0x355
+#define FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS 0x356
+#define FLAG_HIDE_SKY_PILLAR_WALLACE 0x357
+#define FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE 0x358
+#define FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS 0x359
+#define FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY 0x35A
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 0x35B
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL 0x35C
+#define FLAG_HIDE_LILYCOVE_HARBOR_SSTIDAL 0x35D
+#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA 0x35E
+#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_STEVEN 0x35F
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_1 0x360
+#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_2 0x361
+#define FLAG_HIDE_PETALBURG_GYM_WALLY 0x362
+#define FLAG_UNKNOWN_0x363 0x363 // Set, however has no purpose.
+#define FLAG_HIDE_LITTLEROOT_TOWN_FAT_MAN 0x364
+#define FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY 0x365
+#define FLAG_HIDE_LANETTES_HOUSE_LANETTE 0x366
+#define FLAG_HIDE_FALLORBOR_POKEMON_CENTER_LANETTE 0x367
+#define FLAG_HIDE_TRICK_HOUSE_ENTRANCE_MAN 0x368
+#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_POKEBLOCK_EXPERT 0x369
+#define FLAG_HIDE_DESERT_UNDERPASS_FOSSIL 0x36A
+#define FLAG_HIDE_ROUTE_111_PLAYER_DESCENT 0x36B
+#define FLAG_HIDE_ROUTE_111_DESERT_FOSSIL 0x36C
+#define FLAG_HIDE_MT_CHIMNEY_TRAINERS 0x36D
+#define FLAG_HIDE_RUSTURF_TUNNEL_AQUA_GRUNT 0x36E
+#define FLAG_HIDE_RUSTURF_TUNNEL_OLD_MAN 0x36F
+#define FLAG_HIDE_RUSTURF_TUNNEL_PEEKO 0x370
+#define FLAG_HIDE_BRINEYS_HOUSE_PEEKO 0x371
+#define FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA 0x372
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS 0x373
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_1 0x374
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_2 0x375
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_ARCHIE 0x376
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_CAPTAIN_STERN 0x377
+#define FLAG_HIDE_BATTLE_TOWER_OPPONENT 0x378
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL 0x379
+#define FLAG_HIDE_ROUTE_119_TEAM_AQUA 0x37A
+#define FLAG_HIDE_ROUTE_116_MR_BRINEY 0x37B
+#define FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS 0x37C
+#define FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS 0x37D
+#define FLAG_HIDE_ROUTE_116_TUNNELER 0x37E
+#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_2 0x37F
+#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 0x380
+#define FLAG_HIDE_ROUTE_101_BIRCH 0x381
+#define FLAG_HIDE_ROUTE_103_BIRCH 0x382
+#define FLAG_HIDE_TRICK_HOUSE_END_MAN 0x383
+#define FLAG_HIDE_ROUTE_110_TEAM_AQUA 0x384
+#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 0x385
+#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 0x386
+#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 0x387
+#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 0x388
+#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS 0x389
+#define FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST 0x38A
+#define FLAG_HIDE_FALLARBOR_AZURILL 0x38B
+#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_ATTENDANT 0x38C
+#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_SAILOR 0x38D
+#define FLAG_HIDE_SOUTHERN_ISLAND_EON_STONE 0x38E
+#define FLAG_HIDE_SOUTHERN_ISLAND_UNCHOSEN_EON_DUO_MON 0x38F
+#define FLAG_HIDE_MAUVILLE_CITY_WATTSON 0x390
+#define FLAG_HIDE_MAUVILLE_GYM_WATTSON 0x391
+#define FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS 0x392
+#define FLAG_UNKNOWN_0x393 0x393 // Set, however has no purpose.
+#define FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE 0x394
+#define FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA 0x395
+#define FLAG_HIDE_BATTLE_TOWER_REPORTER 0x396
+#define FLAG_HIDE_ROUTE_110_RIVAL_1 0x397
+#define FLAG_HIDE_CHAMPIONS_ROOM_RIVAL 0x398
+#define FLAG_HIDE_CHAMPIONS_ROOM_BIRCH 0x399
+#define FLAG_HIDE_ROUTE_110_RIVAL_2 0x39A
+#define FLAG_HIDE_ROUTE_119_RIVAL_ON_BIKE 0x39B
+#define FLAG_HIDE_AQUA_HIDEOUT_GRUNTS 0x39C
+#define FLAG_HIDE_LILCOVE_MOTEL_GAME_DESIGNERS 0x39D
+#define FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA 0x39E
+#define FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA 0x39F
+#define FLAG_HIDE_FALLARBOR_HOUSE_1_PROF_COZMO 0x3A0
+#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_1 0x3A1
+#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_2 0x3A2
+#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1 0x3A3
+#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_2 0x3A4
+#define FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL 0x3A5
+#define FLAG_HIDE_MOSSDEEP_CITY_HOUSE_2_WINGULL 0x3A6
+#define FLAG_HIDE_REGIROCK 0x3A7
+#define FLAG_HIDE_REGICE 0x3A8
+#define FLAG_HIDE_REGISTEEL 0x3A9
+#define FLAG_HIDE_METEOR_FALLS_TEAM_AQUA 0x3AA
+#define FLAG_HIDE_METEOR_FALLS_TEAM_MAGMA 0x3AB
+#define FLAG_HIDE_DEWFORD_HALL_SLUDGE_BOMB_MAN 0x3AC
+#define FLAG_HIDE_SEAFLOOR_CAVERN_ENTRANCE_AQUA_GRUNT 0x3AD
+#define FLAG_HIDE_METEOR_FALLS_1F_1R_COZMO 0x3AE
+#define FLAG_HIDE_AQUA_HIDEOUT_B2F_SUBMARINE_SHADOW 0x3AF
+#define FLAG_HIDE_ROUTE_128_ARCHIE 0x3B0
+#define FLAG_HIDE_ROUTE_128_MAXIE 0x3B1
+#define FLAG_HIDE_SEAFLOOR_CAVERN_AQUA_GRUNTS 0x3B2
+#define FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE 0x3B3
+#define FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN 0x3B4
+#define FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE 0x3B5
+#define FLAG_HIDE_SS_TIDAL_CORRIDOR_MR_BRINEY 0x3B6
+#define FLAG_HIDE_SS_TIDAL_ROOMS_SNATCH_GIVER 0x3B7
+#define FLAG_RECEIVED_SHOAL_SALT_1 0x3B8
+#define FLAG_RECEIVED_SHOAL_SALT_2 0x3B9
+#define FLAG_RECEIVED_SHOAL_SALT_3 0x3BA
+#define FLAG_RECEIVED_SHOAL_SALT_4 0x3BB
+#define FLAG_RECEIVED_SHOAL_SHELL_1 0x3BC
+#define FLAG_RECEIVED_SHOAL_SHELL_2 0x3BD
+#define FLAG_RECEIVED_SHOAL_SHELL_3 0x3BE
+#define FLAG_RECEIVED_SHOAL_SHELL_4 0x3BF
+#define FLAG_HIDE_ROUTE_111_SECRET_POWER_MAN 0x3C0
+#define FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION 0x3C1
+#define FLAG_HIDE_LILYCOVE_DEPARTMENT_STORE_ROOFTOP_SALE_WOMAN 0x3C2
+#define FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL 0x3C3
+#define FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL 0x3C4
+#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_FAMILIAR_AQUA_GRUNT 0x3C5
+#define FLAG_HIDE_ROUTE_118_STEVEN 0x3C6
+#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN 0x3C7
+#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL 0x3C8
+#define FLAG_HIDE_FORTREE_CITY_KECLEON 0x3C9
+#define FLAG_HIDE_ROUTE_120_KECLEON_1 0x3CA
+#define FLAG_HIDE_LILYCOVE_CITY_RIVAL 0x3CB
+#define FLAG_HIDE_ROUTE_120_STEVEN 0x3CC
+#define FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN 0x3CD
+#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_1 0x3CE
+#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_2 0x3CF
+#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_3 0x3D0
+#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_1 0x3D1
+#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_2 0x3D2
+#define FLAG_HIDE_OLDALE_TOWN_RIVAL 0x3D3
+#define FLAG_HIDE_UNDERWATER_SEA_FLOOR_CAVERN_STOLEN_SUBMARINE 0x3D4
+#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE 0x3D5
+#define FLAG_HIDE_ROUTE_120_KECLEON_2 0x3D6
+#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_WOMAN 0x3D7
+#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_WOMAN 0x3D8
+#define FLAG_HIDE_ROUTE_120_KECLEON_3 0x3D9
+#define FLAG_HIDE_ROUTE_120_KECLEON_4 0x3DA
+#define FLAG_HIDE_ROUTE_120_KECLEON_5 0x3DB
+#define FLAG_HIDE_ROUTE_120_KECLEON_6 0x3DC
+#define FLAG_HIDE_ROUTE_119_KECLEON_1 0x3DD
+#define FLAG_HIDE_ROUTE_119_KECLEON_2 0x3DE
+#define FLAG_HIDE_ROUTE_101_BOY 0x3DF
+#define FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M 0x3E0
+#define FLAG_HIDE_LILYCOVE_POKEMON_CENTER_LADY 0x3E1
+#define FLAG_HIDE_MT_CHIMNEY_LAVA_COOKIE_LADY 0x3E2
+#define FLAG_HIDE_PETALBURG_CITY_SCOTT 0x3E3
+#define FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA 0x3E4
+#define FLAG_HIDE_SOOTOPOLIS_CITY_KYOGRE 0x3E5
+#define FLAG_HIDE_SOOTOPOLIS_CITY_GROUDON 0x3E6
+#define FLAG_HIDE_RUSTBORO_CITY_POKEMON_SCHOOL_SCOTT 0x3E7
// Item Ball Flags
-#define FLAG_ITEM_ROUTE_102_POTION 0x3E8
-#define FLAG_ITEM_ROUTE_116_X_SPECIAL 0x3E9
-#define FLAG_ITEM_ROUTE_104_PP_UP 0x3EA
-#define FLAG_ITEM_ROUTE_105_IRON 0x3EB
-#define FLAG_ITEM_ROUTE_106_PROTEIN 0x3EC
-#define FLAG_ITEM_ROUTE_109_PP_UP 0x3ED
-#define FLAG_ITEM_ROUTE_109_RARE_CANDY 0x3EE
-#define FLAG_ITEM_ROUTE_110_DIRE_HIT 0x3EF
-#define FLAG_ITEM_ROUTE_111_TM_37 0x3F0
-#define FLAG_ITEM_ROUTE_111_STARDUST 0x3F1
-#define FLAG_ITEM_ROUTE_111_HP_UP 0x3F2
-#define FLAG_ITEM_ROUTE_112_NUGGET 0x3F3
-#define FLAG_ITEM_ROUTE_113_MAX_ETHER 0x3F4
-#define FLAG_ITEM_ROUTE_113_SUPER_REPEL 0x3F5
-#define FLAG_ITEM_ROUTE_114_RARE_CANDY 0x3F6
-#define FLAG_ITEM_ROUTE_114_PROTEIN 0x3F7
-#define FLAG_ITEM_ROUTE_115_SUPER_POTION 0x3F8
-#define FLAG_ITEM_ROUTE_115_TM_01 0x3F9
-#define FLAG_ITEM_ROUTE_115_IRON 0x3FA
-#define FLAG_ITEM_ROUTE_116_ETHER 0x3FB
-#define FLAG_ITEM_ROUTE_116_REPEL 0x3FC
-#define FLAG_ITEM_ROUTE_116_HP_UP 0x3FD
-#define FLAG_ITEM_ROUTE_117_GREAT_BALL 0x3FE
-#define FLAG_ITEM_ROUTE_117_REVIVE 0x3FF
-#define FLAG_ITEM_ROUTE_119_SUPER_REPEL 0x400
-#define FLAG_ITEM_ROUTE_119_ZINC 0x401
-#define FLAG_ITEM_ROUTE_119_ELIXIR_1 0x402
-#define FLAG_ITEM_ROUTE_119_LEAF_STONE 0x403
-#define FLAG_ITEM_ROUTE_119_RARE_CANDY 0x404
-#define FLAG_ITEM_ROUTE_119_HYPER_POTION_1 0x405
-#define FLAG_ITEM_ROUTE_120_NUGGET 0x406
-#define FLAG_ITEM_ROUTE_120_FULL_HEAL 0x407
-#define FLAG_ITEM_ROUTE_123_CALCIUM 0x408
-#define FLAG_UNUSED_0x409 0x409
-#define FLAG_ITEM_ROUTE_127_ZINC 0x40A
-#define FLAG_ITEM_ROUTE_127_CARBOS 0x40B
-#define FLAG_ITEM_ROUTE_132_RARE_CANDY 0x40C
-#define FLAG_ITEM_ROUTE_133_BIG_PEARL 0x40D
-#define FLAG_ITEM_ROUTE_133_STAR_PIECE 0x40E
-#define FLAG_ITEM_PETALBURG_CITY_MAX_REVIVE 0x40F
-#define FLAG_ITEM_PETALBURG_CITY_ETHER 0x410
-#define FLAG_ITEM_RUSTBORO_CITY_X_DEFEND 0x411
-#define FLAG_ITEM_LILYCOVE_CITY_MAX_REPEL 0x412
-#define FLAG_ITEM_MOSSDEEP_CITY_NET_BALL 0x413
-#define FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23 0x414
-#define FLAG_ITEM_METEOR_FALLS_1F_1R_FULL_HEAL 0x415
-#define FLAG_ITEM_METEOR_FALLS_1F_1R_MOON_STONE 0x416
-#define FLAG_ITEM_METEOR_FALLS_1F_1R_PP_UP 0x417
-#define FLAG_ITEM_RUSTURF_TUNNEL_POKE_BALL 0x418
-#define FLAG_ITEM_RUSTURF_TUNNEL_MAX_ETHER 0x419
-#define FLAG_ITEM_GRANITE_CAVE_1F_ESCAPE_ROPE 0x41A
-#define FLAG_ITEM_GRANITE_CAVE_B1F_POKE_BALL 0x41B
-#define FLAG_ITEM_MT_PYRE_5F_LAX_INCENSE 0x41C
-#define FLAG_ITEM_GRANITE_CAVE_B2F_REPEL 0x41D
-#define FLAG_ITEM_GRANITE_CAVE_B2F_RARE_CANDY 0x41E
-#define FLAG_ITEM_PETALBURG_WOODS_X_ATTACK 0x41F
-#define FLAG_ITEM_PETALBURG_WOODS_GREAT_BALL 0x420
-#define FLAG_ITEM_ROUTE_104_POKE_BALL 0x421
-#define FLAG_ITEM_PETALBURG_WOODS_ETHER 0x422
-#define FLAG_ITEM_MAGMA_HIDEOUT_3F_3R_ECAPE_ROPE 0x423
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_1_ORANGE_MAIL 0x424
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_HARBOR_MAIL 0x425
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_WAVE_MAIL 0x426
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_SHADOW_MAIL 0x427
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_WOOD_MAIL 0x428
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_4_MECH_MAIL 0x429
-#define FLAG_ITEM_ROUTE_124_YELLOW_SHARD 0x42A
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_6_GLITTER_MAIL 0x42B
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_7_TROPIC_MAIL 0x42C
-#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_8_BEAD_MAIL 0x42D
-#define FLAG_ITEM_JAGGED_PASS_BURN_HEAL 0x42E
-#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MAX_ELIXIR 0x42F
-#define FLAG_ITEM_AQUA_HIDEOUT_B2F_NEST_BALL 0x430
-#define FLAG_ITEM_MT_PYRE_EXTERIOR_MAX_POTION 0x431
-#define FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48 0x432
-#define FLAG_ITEM_NEW_MAUVILLE_ULTRA_BALL 0x433
-#define FLAG_ITEM_NEW_MAUVILLE_ESCAPE_ROPE 0x434
-#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_6_LUXURY_BALL 0x435
-#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER 0x436
-#define FLAG_ITEM_SCORCHED_SLAB_TM_11 0x437
-#define FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02 0x438
-#define FLAG_ITEM_SHOAL_CAVE_ENTRANCE_BIG_PEARL 0x439
-#define FLAG_ITEM_SHOAL_CAVE_INNER_ROOM_RARE_CANDY 0x43A
-#define FLAG_ITEM_SHOAL_CAVE_STAIRS_ROOM_ICE_HEAL 0x43B
-#define FLAG_ITEM_VICTORY_ROAD_1F_MAX_ELIXIR 0x43C
-#define FLAG_ITEM_VICTORY_ROAD_1F_PP_UP 0x43D
-#define FLAG_ITEM_VICTORY_ROAD_B1F_TM_29 0x43E
-#define FLAG_ITEM_VICTORY_ROAD_B1F_FULL_RESTORE 0x43F
-#define FLAG_ITEM_VICTORY_ROAD_B2F_FULL_HEAL 0x440
-#define FLAG_ITEM_MT_PYRE_6F_TM_30 0x441
-#define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26 0x442
-#define FLAG_ITEM_FIERY_PATH_TM06 0x443
-#define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444
-#define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445
-#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446
-#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447
-#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448
-#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449
-#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A
-#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B
-#define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C
-#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D
-#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E
-#define FLAG_ITEM_ROUTE_121_CARBOS 0x44F
-#define FLAG_ITEM_ROUTE_123_ULTRA_BALL 0x450
-#define FLAG_ITEM_ROUTE_126_GREEN_SHARD 0x451
-#define FLAG_ITEM_ROUTE_119_HYPER_POTION_2 0x452
-#define FLAG_ITEM_ROUTE_120_HYPER_POTION 0x453
-#define FLAG_ITEM_ROUTE_120_NEST_BALL 0x454
-#define FLAG_ITEM_ROUTE_123_ELIXIR 0x455
-#define FLAG_ITEM_NEW_MAUVILLE_THUNDER_STONE 0x456
-#define FLAG_ITEM_FIERY_PATH_FIRE_STONE 0x457
-#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07 0x458
-#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_NEVER_MELT_ICE 0x459
-#define FLAG_ITEM_ROUTE_103_GUARD_SPEC 0x45A
-#define FLAG_ITEM_ROUTE_104_X_ACCURACY 0x45B
-#define FLAG_ITEM_MAUVILLE_CITY_X_SPEED 0x45C
-#define FLAG_ITEM_PETALBURD_WOODS_PARALYZE_HEAL 0x45D
-#define FLAG_ITEM_ROUTE_115_GREAT_BALL 0x45E
-#define FLAG_ITEM_SAFARI_ZONE_NORTH_CALCIUM 0x45F
-#define FLAG_ITEM_MT_PYRE_3F_SUPER_REPEL 0x460
-#define FLAG_ITEM_ROUTE_118_HYPER_POTION 0x461
-#define FLAG_ITEM_NEW_MAUVILLE_FULL_HEAL 0x462
-#define FLAG_ITEM_NEW_MAUVILLE_PARALYZE_HEAL 0x463
-#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MASTER_BALL 0x464
-#define FLAG_UNUSED_0x465 0x465
-#define FLAG_UNUSED_0x466 0x466
-#define FLAG_UNUSED_0x467 0x467
-#define FLAG_UNUSED_0x468 0x468
-#define FLAG_ITEM_MT_PYRE_2F_ULTRA_BALL 0x469
-#define FLAG_ITEM_MT_PYRE_4F_SEA_INCENSE 0x46A
-#define FLAG_ITEM_SAFARI_ZONE_SOUTH_WEST_MAX_REVIVE 0x46B
-#define FLAG_ITEM_AQUA_HIDEOUT_B1F_NUGGET 0x46C
-#define FLAG_UNUSED_0x46D 0x46D
-#define FLAG_ITEM_ROUTE_119_NUGGET 0x46E
-#define FLAG_ITEM_ROUTE_104_POTION 0x46F
-#define FLAG_UNUSED_0x470 0x470
-#define FLAG_ITEM_ROUTE_103_PP_UP 0x471
-#define FLAG_UNUSED_0x472 0x472
-#define FLAG_ITEM_ROUTE_108_STAR_PIECE 0x473
-#define FLAG_0x474 0x474
-#define FLAG_ITEM_ROUTE_110_ELIXIR 0x475
-#define FLAG_ITEM_ROUTE_111_ELIXIR 0x476
-#define FLAG_ITEM_ROUTE_113_HYPER_POTION 0x477
-#define FLAG_ITEM_ROUTE_115_HEAL_POWDER 0x478
-#define FLAG_UNUSED_0x479 0x479
-#define FLAG_ITEM_ROUTE_116_POTION 0x47A
-#define FLAG_ITEM_ROUTE_119_ELIXIR_2 0x47B
-#define FLAG_ITEM_ROUTE_120_REVIVE 0x47C
-#define FLAG_ITEM_ROUTE_121_REVIVE 0x47D
-#define FLAG_ITEM_ROUTE_121_ZINC 0x47E
-#define FLAG_ITEM_MAGMA_HIDEOUT_1F_RARE_CANDY 0x47F
-#define FLAG_ITEM_ROUTE_123_PP_UP 0x480
-#define FLAG_ITEM_ROUTE_123_REVIVAL_HERB 0x481
-#define FLAG_ITEM_ROUTE_125_BIG_PEARL 0x482
-#define FLAG_ITEM_ROUTE_127_RARE_CANDY 0x483
-#define FLAG_ITEM_ROUTE_132_PROTEIN 0x484
-#define FLAG_ITEM_ROUTE_133_MAX_REVIVE 0x485
-#define FLAG_ITEM_ROUTE_134_CARBOS 0x486
-#define FLAG_ITEM_ROUTE_134_STAR_PIECE 0x487
-#define FLAG_ITEM_ROUTE_114_ENERGY_POWDER 0x488
-#define FLAG_ITEM_ROUTE_115_PP_UP 0x489
-#define FLAG_ITEM_ARTISAN_CAVE_B1F_HP_UP 0x48A
-#define FLAG_ITEM_ARTISAN_CAVE_1F_CARBOS 0x48B
-#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_MAX_ELIXIR 0x48C
-#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_FULL_RESTORE 0x48D
-#define FLAG_ITEM_MAGMA_HIDEOUT_3F_1R_NUGGET 0x48E
-#define FLAG_ITEM_MAGMA_HIDEOUT_3F_2R_PP_MAX 0x48F
-#define FLAG_ITEM_MAGMA_HIDEOUT_4F_MAX_REVIVE 0x490
-#define FLAG_ITEM_SAFARI_ZONE_NORTH_EAST_NUGGET 0x491
-#define FLAG_ITEM_SAFARI_ZONE_SOUTH_EAST_BIG_PEARL 0x492
-
-
-#define FLAG_0x493 0x493
-#define FLAG_0x494 0x494
-#define FLAG_0x495 0x495
-#define FLAG_0x496 0x496
-#define FLAG_0x497 0x497
-#define FLAG_0x498 0x498
-#define FLAG_0x499 0x499
-#define FLAG_0x49A 0x49A
-#define FLAG_0x49B 0x49B
-#define FLAG_0x49C 0x49C
-#define FLAG_0x49D 0x49D
-#define FLAG_0x49E 0x49E
-#define FLAG_0x49F 0x49F
-#define FLAG_0x4A0 0x4A0
-#define FLAG_0x4A1 0x4A1
-#define FLAG_0x4A2 0x4A2
-#define FLAG_0x4A3 0x4A3
-#define FLAG_0x4A4 0x4A4
-#define FLAG_0x4A5 0x4A5
-#define FLAG_0x4A6 0x4A6
-#define FLAG_0x4A7 0x4A7
-#define FLAG_0x4A8 0x4A8
-#define FLAG_0x4A9 0x4A9
-#define FLAG_0x4AA 0x4AA
-#define FLAG_0x4AB 0x4AB
-#define FLAG_0x4AC 0x4AC
-#define FLAG_0x4AD 0x4AD
-#define FLAG_0x4AE 0x4AE
-#define FLAG_0x4AF 0x4AF
-#define FLAG_0x4B0 0x4B0
-#define FLAG_0x4B1 0x4B1
-#define FLAG_0x4B2 0x4B2
-#define FLAG_0x4B3 0x4B3
-#define FLAG_0x4B4 0x4B4
-#define FLAG_0x4B5 0x4B5
-#define FLAG_0x4B6 0x4B6
-#define FLAG_0x4B7 0x4B7
-#define FLAG_0x4B8 0x4B8
-#define FLAG_0x4B9 0x4B9
-#define FLAG_0x4BA 0x4BA
-#define FLAG_0x4BB 0x4BB
-#define FLAG_0x4BC 0x4BC
-#define FLAG_0x4BD 0x4BD
-#define FLAG_0x4BE 0x4BE
-#define FLAG_0x4BF 0x4BF
-#define FLAG_0x4C0 0x4C0
-#define FLAG_0x4C1 0x4C1
-#define FLAG_0x4C2 0x4C2
-#define FLAG_0x4C3 0x4C3
-#define FLAG_0x4C4 0x4C4
-#define FLAG_0x4C5 0x4C5
-#define FLAG_0x4C6 0x4C6
-#define FLAG_0x4C7 0x4C7
-#define FLAG_0x4C8 0x4C8
-#define FLAG_0x4C9 0x4C9
-#define FLAG_0x4CA 0x4CA
-#define FLAG_0x4CB 0x4CB
-#define FLAG_0x4CC 0x4CC
-#define FLAG_0x4CD 0x4CD
-#define FLAG_0x4CE 0x4CE
-#define FLAG_0x4CF 0x4CF
-#define FLAG_0x4D0 0x4D0
-#define FLAG_0x4D1 0x4D1
-#define FLAG_0x4D2 0x4D2
-#define FLAG_0x4D3 0x4D3
-#define FLAG_0x4D4 0x4D4
-#define FLAG_0x4D5 0x4D5
-#define FLAG_0x4D6 0x4D6
-#define FLAG_0x4D7 0x4D7
-#define FLAG_0x4D8 0x4D8
-#define FLAG_0x4D9 0x4D9
-#define FLAG_0x4DA 0x4DA
-#define FLAG_0x4DB 0x4DB
-#define FLAG_0x4DC 0x4DC
-#define FLAG_0x4DD 0x4DD
-#define FLAG_0x4DE 0x4DE
-#define FLAG_0x4DF 0x4DF
-#define FLAG_0x4E0 0x4E0
-#define FLAG_0x4E1 0x4E1
-#define FLAG_0x4E2 0x4E2
-#define FLAG_0x4E3 0x4E3
-#define FLAG_0x4E4 0x4E4
-#define FLAG_0x4E5 0x4E5
-#define FLAG_0x4E6 0x4E6
-#define FLAG_0x4E7 0x4E7
-#define FLAG_0x4E8 0x4E8
-#define FLAG_0x4E9 0x4E9
-#define FLAG_0x4EA 0x4EA
-#define FLAG_0x4EB 0x4EB
-#define FLAG_0x4EC 0x4EC
-#define FLAG_0x4ED 0x4ED
-#define FLAG_0x4EE 0x4EE
-#define FLAG_0x4EF 0x4EF
-#define FLAG_0x4F0 0x4F0
-#define FLAG_0x4F1 0x4F1
-#define FLAG_0x4F2 0x4F2
-#define FLAG_0x4F3 0x4F3
-#define FLAG_0x4F4 0x4F4
-#define FLAG_0x4F5 0x4F5
-#define FLAG_0x4F6 0x4F6
-#define FLAG_0x4F7 0x4F7
-#define FLAG_0x4F8 0x4F8
-#define FLAG_0x4F9 0x4F9
-#define FLAG_0x4FA 0x4FA
-#define FLAG_0x4FB 0x4FB
-#define FLAG_0x4FC 0x4FC
-#define FLAG_0x4FD 0x4FD
-#define FLAG_0x4FE 0x4FE
-#define FLAG_0x4FF 0x4FF
-
-#define FLAG_TRAINER_FLAG_START 0x500
-
-#define TRAINERS_FLAG_NO 0x356
-#define SYSTEM_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860
-
-// SYSTEM FLAGS
-
-// 0x860
-#define FLAG_SYS_POKEMON_GET (SYSTEM_FLAGS + 0)
-#define FLAG_SYS_POKEDEX_GET (SYSTEM_FLAGS + 1)
-#define FLAG_SYS_POKENAV_GET (SYSTEM_FLAGS + 2)
-// third one appears unused
-#define FLAG_SYS_GAME_CLEAR (SYSTEM_FLAGS + 4)
-#define FLAG_SYS_CHAT_USED (SYSTEM_FLAGS + 5)
-#define FLAG_SYS_HIPSTER_MEET (SYSTEM_FLAGS + 6)
-
-// badges
-#define FLAG_BADGE01_GET (SYSTEM_FLAGS + 7)
-#define FLAG_BADGE02_GET (SYSTEM_FLAGS + 8)
-#define FLAG_BADGE03_GET (SYSTEM_FLAGS + 9)
-#define FLAG_BADGE04_GET (SYSTEM_FLAGS + 0xA)
-#define FLAG_BADGE05_GET (SYSTEM_FLAGS + 0xB)
-#define FLAG_BADGE06_GET (SYSTEM_FLAGS + 0xC)
-#define FLAG_BADGE07_GET (SYSTEM_FLAGS + 0xD)
-#define FLAG_BADGE08_GET (SYSTEM_FLAGS + 0xE)
-
-// cities and towns
-#define FLAG_VISITED_LITTLEROOT_TOWN (SYSTEM_FLAGS + 0xF)
-#define FLAG_VISITED_OLDALE_TOWN (SYSTEM_FLAGS + 0x10)
-#define FLAG_VISITED_DEWFORD_TOWN (SYSTEM_FLAGS + 0x11)
-#define FLAG_VISITED_LAVARIDGE_TOWN (SYSTEM_FLAGS + 0x12)
-#define FLAG_VISITED_FALLARBOR_TOWN (SYSTEM_FLAGS + 0x13)
-#define FLAG_VISITED_VERDANTURF_TOWN (SYSTEM_FLAGS + 0x14)
-#define FLAG_VISITED_PACIFIDLOG_TOWN (SYSTEM_FLAGS + 0x15)
-#define FLAG_VISITED_PETALBURG_CITY (SYSTEM_FLAGS + 0x16)
-#define FLAG_VISITED_SLATEPORT_CITY (SYSTEM_FLAGS + 0x17)
-#define FLAG_VISITED_MAUVILLE_CITY (SYSTEM_FLAGS + 0x18)
-#define FLAG_VISITED_RUSTBORO_CITY (SYSTEM_FLAGS + 0x19)
-#define FLAG_VISITED_FORTREE_CITY (SYSTEM_FLAGS + 0x1A)
-#define FLAG_VISITED_LILYCOVE_CITY (SYSTEM_FLAGS + 0x1B)
-#define FLAG_VISITED_MOSSDEEP_CITY (SYSTEM_FLAGS + 0x1C)
-#define FLAG_VISITED_SOOTOPOLIS_CITY (SYSTEM_FLAGS + 0x1D)
-#define FLAG_VISITED_EVER_GRANDE_CITY (SYSTEM_FLAGS + 0x1E)
-
-#define FLAG_0x87F (SYSTEM_FLAGS + 0x1F)
-#define FLAG_0x880 (SYSTEM_FLAGS + 0x20)
-#define FLAG_0x881 (SYSTEM_FLAGS + 0x21)
-#define FLAG_0x882 (SYSTEM_FLAGS + 0x22)
-#define FLAG_0x883 (SYSTEM_FLAGS + 0x23)
-#define FLAG_0x884 (SYSTEM_FLAGS + 0x24)
-#define FLAG_0x885 (SYSTEM_FLAGS + 0x25)
-#define FLAG_0x886 (SYSTEM_FLAGS + 0x26)
-#define FLAG_0x887 (SYSTEM_FLAGS + 0x27)
-
-#define FLAG_SYS_USE_FLASH (SYSTEM_FLAGS + 0x28)
-#define FLAG_SYS_USE_STRENGTH (SYSTEM_FLAGS + 0x29)
-#define FLAG_SYS_WEATHER_CTRL (SYSTEM_FLAGS + 0x2A)
-#define FLAG_SYS_CYCLING_ROAD (SYSTEM_FLAGS + 0x2B)
-#define FLAG_SYS_SAFARI_MODE (SYSTEM_FLAGS + 0x2C)
-#define FLAG_SYS_CRUISE_MODE (SYSTEM_FLAGS + 0x2D)
-
-#define FLAG_0x88E (SYSTEM_FLAGS + 0x2E)
-#define FLAG_0x88F (SYSTEM_FLAGS + 0x2F)
-
-#define FLAG_SYS_TV_HOME (SYSTEM_FLAGS + 0x30)
-#define FLAG_SYS_TV_WATCH (SYSTEM_FLAGS + 0x31)
-#define FLAG_SYS_TV_START (SYSTEM_FLAGS + 0x32)
-#define FLAG_SYS_POPWORD_INPUT (SYSTEM_FLAGS + 0x33)
-#define FLAG_SYS_MIX_RECORD (SYSTEM_FLAGS + 0x34)
-#define FLAG_SYS_CLOCK_SET (SYSTEM_FLAGS + 0x35)
-#define FLAG_SYS_NATIONAL_DEX (SYSTEM_FLAGS + 0x36)
-#define FLAG_SYS_CAVE_SHIP (SYSTEM_FLAGS + 0x37)
-#define FLAG_SYS_CAVE_WONDER (SYSTEM_FLAGS + 0x38)
-#define FLAG_SYS_CAVE_BATTLE (SYSTEM_FLAGS + 0x39)
-#define FLAG_SYS_SHOAL_TIDE (SYSTEM_FLAGS + 0x3A)
-#define FLAG_SYS_RIBBON_GET (SYSTEM_FLAGS + 0x3B)
-
-#define FLAG_LANDMARK_FLOWER_SHOP (SYSTEM_FLAGS + 0x3C)
-#define FLAG_LANDMARK_MR_BRINEY_HOUSE (SYSTEM_FLAGS + 0x3D)
-#define FLAG_LANDMARK_ABANDONED_SHIP (SYSTEM_FLAGS + 0x3E)
-#define FLAG_LANDMARK_SEASHORE_HOUSE (SYSTEM_FLAGS + 0x3F)
-#define FLAG_LANDMARK_NEW_MAUVILLE (SYSTEM_FLAGS + 0x40)
-#define FLAG_LANDMARK_OLD_LADY_REST_SHOP (SYSTEM_FLAGS + 0x41)
-#define FLAG_LANDMARK_TRICK_HOUSE (SYSTEM_FLAGS + 0x42)
-#define FLAG_LANDMARK_WINSTRATE_FAMILY (SYSTEM_FLAGS + 0x43)
-#define FLAG_LANDMARK_GLASS_WORKSHOP (SYSTEM_FLAGS + 0x44)
-#define FLAG_LANDMARK_LANETTES_HOUSE (SYSTEM_FLAGS + 0x45)
-#define FLAG_LANDMARK_POKEMON_DAYCARE (SYSTEM_FLAGS + 0x46)
-#define FLAG_LANDMARK_SEAFLOOR_CAVERN (SYSTEM_FLAGS + 0x47)
-#define FLAG_LANDMARK_BATTLE_FRONTIER (SYSTEM_FLAGS + 0x48)
-#define FLAG_LANDMARK_SOUTHERN_ISLAND (SYSTEM_FLAGS + 0x49)
-#define FLAG_LANDMARK_FIERY_PATH (SYSTEM_FLAGS + 0x4A)
-
-#define FLAG_SYS_PC_LANETTE (SYSTEM_FLAGS + 0x4B)
-#define FLAG_SYS_MYSTERY_EVENT_ENABLE (SYSTEM_FLAGS + 0x4C)
-#define FLAG_SYS_ENC_UP_ITEM (SYSTEM_FLAGS + 0x4D)
-#define FLAG_SYS_ENC_DOWN_ITEM (SYSTEM_FLAGS + 0x4E)
-#define FLAG_SYS_BRAILLE_DIG (SYSTEM_FLAGS + 0x4F)
-#define FLAG_SYS_BRAILLE_STRENGTH (SYSTEM_FLAGS + 0x50)
-#define FLAG_SYS_BRAILLE_WAIT (SYSTEM_FLAGS + 0x51)
-#define FLAG_SYS_BRAILLE_FLY (SYSTEM_FLAGS + 0x52)
-#define FLAG_SYS_HAS_EON_TICKET (SYSTEM_FLAGS + 0x53)
-
-#define FLAG_LANDMARK_POKEMON_LEAGUE (SYSTEM_FLAGS + 0x54)
-
-#define FLAG_LANDMARK_ISLAND_CAVE (SYSTEM_FLAGS + 0x55)
-#define FLAG_LANDMARK_DESERT_RUINS (SYSTEM_FLAGS + 0x56)
-#define FLAG_LANDMARK_FOSSIL_MANIACS_HOUSE (SYSTEM_FLAGS + 0x57)
-#define FLAG_LANDMARK_SCORCHED_SLAB (SYSTEM_FLAGS + 0x58)
-#define FLAG_LANDMARK_ANCIENT_TOMB (SYSTEM_FLAGS + 0x59)
-#define FLAG_LANDMARK_TUNNELERS_REST_HOUSE (SYSTEM_FLAGS + 0x5A)
-#define FLAG_LANDMARK_HUNTERS_HOUSE (SYSTEM_FLAGS + 0x5B)
-#define FLAG_LANDMARK_SEALED_CHAMBER (SYSTEM_FLAGS + 0x5C)
-
-#define FLAG_SYS_TV_LATI (SYSTEM_FLAGS + 0x5D)
-
-#define FLAG_LANDMARK_SKY_PILLAR (SYSTEM_FLAGS + 0x5E)
-
-#define FLAG_SYS_SHOAL_ITEM (SYSTEM_FLAGS + 0x5F)
-#define FLAG_SYS_B_DASH (SYSTEM_FLAGS + 0x60) // got Running Shoes
-#define FLAG_SYS_CTRL_OBJ_DELETE (SYSTEM_FLAGS + 0x61)
-#define FLAG_SYS_RESET_RTC_ENABLE (SYSTEM_FLAGS + 0x62)
-
-#define FLAG_LANDMARK_BERRY_MASTERS_HOUSE (SYSTEM_FLAGS + 0x63)
-
-#define FLAG_SYS_TOWER_SILVER (SYSTEM_FLAGS + 0x64)
-#define FLAG_SYS_TOWER_GOLD (SYSTEM_FLAGS + 0x65)
-#define FLAG_SYS_DOME_SILVER (SYSTEM_FLAGS + 0x66)
-#define FLAG_SYS_DOME_GOLD (SYSTEM_FLAGS + 0x67)
-#define FLAG_SYS_PALACE_SILVER (SYSTEM_FLAGS + 0x68)
-#define FLAG_SYS_PALACE_GOLD (SYSTEM_FLAGS + 0x69)
-#define FLAG_SYS_ARENA_SILVER (SYSTEM_FLAGS + 0x6A)
-#define FLAG_SYS_ARENA_GOLD (SYSTEM_FLAGS + 0x6B)
-#define FLAG_SYS_FACTORY_SILVER (SYSTEM_FLAGS + 0x6C)
-#define FLAG_SYS_FACTORY_GOLD (SYSTEM_FLAGS + 0x6D)
-#define FLAG_SYS_PIKE_SILVER (SYSTEM_FLAGS + 0x6E)
-#define FLAG_SYS_PIKE_GOLD (SYSTEM_FLAGS + 0x6F)
-#define FLAG_SYS_PYRAMID_SILVER (SYSTEM_FLAGS + 0x70)
-#define FLAG_SYS_PYRAMID_GOLD (SYSTEM_FLAGS + 0x71)
-#define FLAG_SYS_FRONTIER_PASS (SYSTEM_FLAGS + 0x72)
-
-#define FLAG_0x8D3 (SYSTEM_FLAGS + 0x73)
-#define FLAG_DEOXYS_ROCK_COMPLETE (SYSTEM_FLAGS + 0x74)
-#define FLAG_0x8D5 (SYSTEM_FLAGS + 0x75)
-#define FLAG_0x8D6 (SYSTEM_FLAGS + 0x76)
-
-#define FLAG_SYS_STORAGE_UNKNOWN_FLAG (SYSTEM_FLAGS + 0x77)
-
-#define FLAG_0x8D8 (SYSTEM_FLAGS + 0x78)
-#define FLAG_0x8D9 (SYSTEM_FLAGS + 0x79)
-#define FLAG_0x8DA (SYSTEM_FLAGS + 0x7A)
-
-#define FLAG_SYS_MYSTERY_GIFT_ENABLE (SYSTEM_FLAGS + 0x7B)
-
-#define FLAG_0x8DC (SYSTEM_FLAGS + 0x7C)
-#define FLAG_LANDMARK_ALTERING_CAVE (SYSTEM_FLAGS + 0x7D)
-#define FLAG_LANDMARK_DESERT_UNDERPASS (SYSTEM_FLAGS + 0x7E)
-#define FLAG_0x8DF (SYSTEM_FLAGS + 0x7F)
-#define FLAG_0x8E0 (SYSTEM_FLAGS + 0x80)
-#define FLAG_0x8E1 (SYSTEM_FLAGS + 0x81)
-#define FLAG_LANDMARK_TRAINER_HILL (SYSTEM_FLAGS + 0x82)
-
-#define FLAG_0x8E3 (SYSTEM_FLAGS + 0x83)
-#define FLAG_0x8E4 (SYSTEM_FLAGS + 0x84)
-#define FLAG_0x8E5 (SYSTEM_FLAGS + 0x85)
-#define FLAG_0x8E6 (SYSTEM_FLAGS + 0x86)
-#define FLAG_0x8E7 (SYSTEM_FLAGS + 0x87)
-#define FLAG_0x8E8 (SYSTEM_FLAGS + 0x88)
-#define FLAG_0x8E9 (SYSTEM_FLAGS + 0x89)
-#define FLAG_0x8EA (SYSTEM_FLAGS + 0x8A)
-#define FLAG_0x8EB (SYSTEM_FLAGS + 0x8B)
-#define FLAG_0x8EC (SYSTEM_FLAGS + 0x8C)
-#define FLAG_0x8ED (SYSTEM_FLAGS + 0x8D)
-#define FLAG_0x8EE (SYSTEM_FLAGS + 0x8E)
-#define FLAG_0x8EF (SYSTEM_FLAGS + 0x8F)
-#define FLAG_0x8F0 (SYSTEM_FLAGS + 0x90)
-#define FLAG_0x8F1 (SYSTEM_FLAGS + 0x91)
-#define FLAG_0x8F2 (SYSTEM_FLAGS + 0x92)
-#define FLAG_0x8F3 (SYSTEM_FLAGS + 0x93)
-#define FLAG_0x8F4 (SYSTEM_FLAGS + 0x94)
-#define FLAG_0x8F5 (SYSTEM_FLAGS + 0x95)
-#define FLAG_0x8F6 (SYSTEM_FLAGS + 0x96)
-#define FLAG_0x8F7 (SYSTEM_FLAGS + 0x97)
-#define FLAG_0x8F8 (SYSTEM_FLAGS + 0x98)
-#define FLAG_0x8F9 (SYSTEM_FLAGS + 0x99)
-#define FLAG_0x8FA (SYSTEM_FLAGS + 0x9A)
-#define FLAG_0x8FB (SYSTEM_FLAGS + 0x9B)
-#define FLAG_0x8FC (SYSTEM_FLAGS + 0x9C)
-#define FLAG_0x8FD (SYSTEM_FLAGS + 0x9D)
-#define FLAG_0x8FE (SYSTEM_FLAGS + 0x9E)
-#define FLAG_0x8FF (SYSTEM_FLAGS + 0x9F)
-#define FLAG_0x900 (SYSTEM_FLAGS + 0xA0)
-#define FLAG_0x901 (SYSTEM_FLAGS + 0xA1)
-#define FLAG_0x902 (SYSTEM_FLAGS + 0xA2)
-#define FLAG_0x903 (SYSTEM_FLAGS + 0xA3)
-#define FLAG_0x904 (SYSTEM_FLAGS + 0xA4)
-#define FLAG_0x905 (SYSTEM_FLAGS + 0xA5)
-#define FLAG_0x906 (SYSTEM_FLAGS + 0xA6)
-#define FLAG_0x907 (SYSTEM_FLAGS + 0xA7)
-#define FLAG_0x908 (SYSTEM_FLAGS + 0xA8)
-#define FLAG_0x909 (SYSTEM_FLAGS + 0xA9)
-#define FLAG_0x90A (SYSTEM_FLAGS + 0xAA)
-#define FLAG_0x90B (SYSTEM_FLAGS + 0xAB)
-#define FLAG_0x90C (SYSTEM_FLAGS + 0xAC)
-#define FLAG_0x90D (SYSTEM_FLAGS + 0xAD)
-#define FLAG_0x90E (SYSTEM_FLAGS + 0xAE)
-#define FLAG_0x90F (SYSTEM_FLAGS + 0xAF)
-#define FLAG_0x910 (SYSTEM_FLAGS + 0xB0)
-#define FLAG_0x911 (SYSTEM_FLAGS + 0xB1)
-#define FLAG_0x912 (SYSTEM_FLAGS + 0xB2)
-#define FLAG_0x913 (SYSTEM_FLAGS + 0xB3)
-#define FLAG_0x914 (SYSTEM_FLAGS + 0xB4)
-#define FLAG_0x915 (SYSTEM_FLAGS + 0xB5)
-#define FLAG_0x916 (SYSTEM_FLAGS + 0xB6)
-#define FLAG_0x917 (SYSTEM_FLAGS + 0xB7)
-#define FLAG_0x918 (SYSTEM_FLAGS + 0xB8)
-#define FLAG_0x919 (SYSTEM_FLAGS + 0xB9)
-#define FLAG_0x91A (SYSTEM_FLAGS + 0xBA)
-#define FLAG_0x91B (SYSTEM_FLAGS + 0xBB)
-#define FLAG_0x91C (SYSTEM_FLAGS + 0xBC)
-#define FLAG_0x91D (SYSTEM_FLAGS + 0xBD)
-#define FLAG_0x91E (SYSTEM_FLAGS + 0xBE)
-#define FLAG_0x91F (SYSTEM_FLAGS + 0xBF)
-#define FLAG_0x920 (SYSTEM_FLAGS + 0xC0)
-#define FLAG_0x921 (SYSTEM_FLAGS + 0xC1)
-#define FLAG_0x922 (SYSTEM_FLAGS + 0xC2)
-#define FLAG_0x923 (SYSTEM_FLAGS + 0xC3)
-#define FLAG_0x924 (SYSTEM_FLAGS + 0xC4)
-#define FLAG_0x925 (SYSTEM_FLAGS + 0xC5)
-#define FLAG_0x926 (SYSTEM_FLAGS + 0xC6)
-#define FLAG_0x927 (SYSTEM_FLAGS + 0xC7)
-#define FLAG_0x928 (SYSTEM_FLAGS + 0xC8)
-#define FLAG_0x929 (SYSTEM_FLAGS + 0xC9)
-#define FLAG_0x92A (SYSTEM_FLAGS + 0xCA)
-#define FLAG_0x92B (SYSTEM_FLAGS + 0xCB)
-#define FLAG_0x92C (SYSTEM_FLAGS + 0xCC)
-#define FLAG_0x92D (SYSTEM_FLAGS + 0xCD)
-#define FLAG_0x92E (SYSTEM_FLAGS + 0xCE)
-#define FLAG_0x92F (SYSTEM_FLAGS + 0xCF)
-#define FLAG_0x930 (SYSTEM_FLAGS + 0xD0)
-#define FLAG_0x931 (SYSTEM_FLAGS + 0xD1)
-#define FLAG_0x932 (SYSTEM_FLAGS + 0xD2)
-#define FLAG_0x933 (SYSTEM_FLAGS + 0xD3)
-#define FLAG_0x934 (SYSTEM_FLAGS + 0xD4)
-#define FLAG_0x935 (SYSTEM_FLAGS + 0xD5)
-#define FLAG_0x936 (SYSTEM_FLAGS + 0xD6)
-#define FLAG_0x937 (SYSTEM_FLAGS + 0xD7)
-#define FLAG_0x938 (SYSTEM_FLAGS + 0xD8)
-#define FLAG_0x939 (SYSTEM_FLAGS + 0xD9)
-#define FLAG_0x93A (SYSTEM_FLAGS + 0xDA)
-#define FLAG_0x93B (SYSTEM_FLAGS + 0xDB)
-#define FLAG_0x93C (SYSTEM_FLAGS + 0xDC)
-#define FLAG_0x93D (SYSTEM_FLAGS + 0xDD)
-#define FLAG_0x93E (SYSTEM_FLAGS + 0xDE)
-#define FLAG_0x93F (SYSTEM_FLAGS + 0xDF)
-#define FLAG_0x940 (SYSTEM_FLAGS + 0xE0)
-#define FLAG_0x941 (SYSTEM_FLAGS + 0xE1)
-#define FLAG_0x942 (SYSTEM_FLAGS + 0xE2)
-#define FLAG_0x943 (SYSTEM_FLAGS + 0xE3)
-#define FLAG_0x944 (SYSTEM_FLAGS + 0xE4)
-#define FLAG_0x945 (SYSTEM_FLAGS + 0xE5)
-#define FLAG_0x946 (SYSTEM_FLAGS + 0xE6)
-#define FLAG_0x947 (SYSTEM_FLAGS + 0xE7)
-#define FLAG_0x948 (SYSTEM_FLAGS + 0xE8)
-#define FLAG_0x949 (SYSTEM_FLAGS + 0xE9)
-#define FLAG_0x94A (SYSTEM_FLAGS + 0xEA)
-#define FLAG_0x94B (SYSTEM_FLAGS + 0xEB)
-#define FLAG_0x94C (SYSTEM_FLAGS + 0xEC)
-#define FLAG_0x94D (SYSTEM_FLAGS + 0xED)
-#define FLAG_0x94E (SYSTEM_FLAGS + 0xEE)
-#define FLAG_0x94F (SYSTEM_FLAGS + 0xEF)
-#define FLAG_0x950 (SYSTEM_FLAGS + 0xF0)
-#define FLAG_0x951 (SYSTEM_FLAGS + 0xF1)
-#define FLAG_0x952 (SYSTEM_FLAGS + 0xF2)
-#define FLAG_0x953 (SYSTEM_FLAGS + 0xF3)
-#define FLAG_0x954 (SYSTEM_FLAGS + 0xF4)
-#define FLAG_0x955 (SYSTEM_FLAGS + 0xF5)
-#define FLAG_0x956 (SYSTEM_FLAGS + 0xF6)
-#define FLAG_0x957 (SYSTEM_FLAGS + 0xF7)
-#define FLAG_0x958 (SYSTEM_FLAGS + 0xF8)
-#define FLAG_0x959 (SYSTEM_FLAGS + 0xF9)
-#define FLAG_0x95A (SYSTEM_FLAGS + 0xFA)
-#define FLAG_0x95B (SYSTEM_FLAGS + 0xFB)
-#define FLAG_0x95C (SYSTEM_FLAGS + 0xFC)
-#define FLAG_0x95D (SYSTEM_FLAGS + 0xFD)
-#define FLAG_0x95E (SYSTEM_FLAGS + 0xFE)
-#define FLAG_0x95F (SYSTEM_FLAGS + 0xFF)
-
-#define SPECIAL_FLAGS_START 0x4000
-// SPECIAL FLAGS (unknown purpose)
-#define FLAG_SPECIAL_FLAG_0x4000 0x4000
-#define FLAG_SPECIAL_FLAG_0x4001 0x4001
-#define FLAG_SPECIAL_FLAG_0x4002 0x4002
-#define FLAG_SPECIAL_FLAG_0x4003 0x4003
-#define FLAG_SPECIAL_FLAG_0x4004 0x4004
+#define FLAG_ITEM_ROUTE_102_POTION 0x3E8
+#define FLAG_ITEM_ROUTE_116_X_SPECIAL 0x3E9
+#define FLAG_ITEM_ROUTE_104_PP_UP 0x3EA
+#define FLAG_ITEM_ROUTE_105_IRON 0x3EB
+#define FLAG_ITEM_ROUTE_106_PROTEIN 0x3EC
+#define FLAG_ITEM_ROUTE_109_PP_UP 0x3ED
+#define FLAG_ITEM_ROUTE_109_RARE_CANDY 0x3EE
+#define FLAG_ITEM_ROUTE_110_DIRE_HIT 0x3EF
+#define FLAG_ITEM_ROUTE_111_TM_37 0x3F0
+#define FLAG_ITEM_ROUTE_111_STARDUST 0x3F1
+#define FLAG_ITEM_ROUTE_111_HP_UP 0x3F2
+#define FLAG_ITEM_ROUTE_112_NUGGET 0x3F3
+#define FLAG_ITEM_ROUTE_113_MAX_ETHER 0x3F4
+#define FLAG_ITEM_ROUTE_113_SUPER_REPEL 0x3F5
+#define FLAG_ITEM_ROUTE_114_RARE_CANDY 0x3F6
+#define FLAG_ITEM_ROUTE_114_PROTEIN 0x3F7
+#define FLAG_ITEM_ROUTE_115_SUPER_POTION 0x3F8
+#define FLAG_ITEM_ROUTE_115_TM_01 0x3F9
+#define FLAG_ITEM_ROUTE_115_IRON 0x3FA
+#define FLAG_ITEM_ROUTE_116_ETHER 0x3FB
+#define FLAG_ITEM_ROUTE_116_REPEL 0x3FC
+#define FLAG_ITEM_ROUTE_116_HP_UP 0x3FD
+#define FLAG_ITEM_ROUTE_117_GREAT_BALL 0x3FE
+#define FLAG_ITEM_ROUTE_117_REVIVE 0x3FF
+#define FLAG_ITEM_ROUTE_119_SUPER_REPEL 0x400
+#define FLAG_ITEM_ROUTE_119_ZINC 0x401
+#define FLAG_ITEM_ROUTE_119_ELIXIR_1 0x402
+#define FLAG_ITEM_ROUTE_119_LEAF_STONE 0x403
+#define FLAG_ITEM_ROUTE_119_RARE_CANDY 0x404
+#define FLAG_ITEM_ROUTE_119_HYPER_POTION_1 0x405
+#define FLAG_ITEM_ROUTE_120_NUGGET 0x406
+#define FLAG_ITEM_ROUTE_120_FULL_HEAL 0x407
+#define FLAG_ITEM_ROUTE_123_CALCIUM 0x408
+
+#define FLAG_UNUSED_0x409 0x409 // Unused Flag
+
+#define FLAG_ITEM_ROUTE_127_ZINC 0x40A
+#define FLAG_ITEM_ROUTE_127_CARBOS 0x40B
+#define FLAG_ITEM_ROUTE_132_RARE_CANDY 0x40C
+#define FLAG_ITEM_ROUTE_133_BIG_PEARL 0x40D
+#define FLAG_ITEM_ROUTE_133_STAR_PIECE 0x40E
+#define FLAG_ITEM_PETALBURG_CITY_MAX_REVIVE 0x40F
+#define FLAG_ITEM_PETALBURG_CITY_ETHER 0x410
+#define FLAG_ITEM_RUSTBORO_CITY_X_DEFEND 0x411
+#define FLAG_ITEM_LILYCOVE_CITY_MAX_REPEL 0x412
+#define FLAG_ITEM_MOSSDEEP_CITY_NET_BALL 0x413
+#define FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23 0x414
+#define FLAG_ITEM_METEOR_FALLS_1F_1R_FULL_HEAL 0x415
+#define FLAG_ITEM_METEOR_FALLS_1F_1R_MOON_STONE 0x416
+#define FLAG_ITEM_METEOR_FALLS_1F_1R_PP_UP 0x417
+#define FLAG_ITEM_RUSTURF_TUNNEL_POKE_BALL 0x418
+#define FLAG_ITEM_RUSTURF_TUNNEL_MAX_ETHER 0x419
+#define FLAG_ITEM_GRANITE_CAVE_1F_ESCAPE_ROPE 0x41A
+#define FLAG_ITEM_GRANITE_CAVE_B1F_POKE_BALL 0x41B
+#define FLAG_ITEM_MT_PYRE_5F_LAX_INCENSE 0x41C
+#define FLAG_ITEM_GRANITE_CAVE_B2F_REPEL 0x41D
+#define FLAG_ITEM_GRANITE_CAVE_B2F_RARE_CANDY 0x41E
+#define FLAG_ITEM_PETALBURG_WOODS_X_ATTACK 0x41F
+#define FLAG_ITEM_PETALBURG_WOODS_GREAT_BALL 0x420
+#define FLAG_ITEM_ROUTE_104_POKE_BALL 0x421
+#define FLAG_ITEM_PETALBURG_WOODS_ETHER 0x422
+#define FLAG_ITEM_MAGMA_HIDEOUT_3F_3R_ECAPE_ROPE 0x423
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_1_ORANGE_MAIL 0x424
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_HARBOR_MAIL 0x425
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_WAVE_MAIL 0x426
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_SHADOW_MAIL 0x427
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_WOOD_MAIL 0x428
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_4_MECH_MAIL 0x429
+#define FLAG_ITEM_ROUTE_124_YELLOW_SHARD 0x42A
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_6_GLITTER_MAIL 0x42B
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_7_TROPIC_MAIL 0x42C
+#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_8_BEAD_MAIL 0x42D
+#define FLAG_ITEM_JAGGED_PASS_BURN_HEAL 0x42E
+#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MAX_ELIXIR 0x42F
+#define FLAG_ITEM_AQUA_HIDEOUT_B2F_NEST_BALL 0x430
+#define FLAG_ITEM_MT_PYRE_EXTERIOR_MAX_POTION 0x431
+#define FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48 0x432
+#define FLAG_ITEM_NEW_MAUVILLE_ULTRA_BALL 0x433
+#define FLAG_ITEM_NEW_MAUVILLE_ESCAPE_ROPE 0x434
+#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_6_LUXURY_BALL 0x435
+#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER 0x436
+#define FLAG_ITEM_SCORCHED_SLAB_TM_11 0x437
+#define FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02 0x438
+#define FLAG_ITEM_SHOAL_CAVE_ENTRANCE_BIG_PEARL 0x439
+#define FLAG_ITEM_SHOAL_CAVE_INNER_ROOM_RARE_CANDY 0x43A
+#define FLAG_ITEM_SHOAL_CAVE_STAIRS_ROOM_ICE_HEAL 0x43B
+#define FLAG_ITEM_VICTORY_ROAD_1F_MAX_ELIXIR 0x43C
+#define FLAG_ITEM_VICTORY_ROAD_1F_PP_UP 0x43D
+#define FLAG_ITEM_VICTORY_ROAD_B1F_TM_29 0x43E
+#define FLAG_ITEM_VICTORY_ROAD_B1F_FULL_RESTORE 0x43F
+#define FLAG_ITEM_VICTORY_ROAD_B2F_FULL_HEAL 0x440
+#define FLAG_ITEM_MT_PYRE_6F_TM_30 0x441
+#define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26 0x442
+#define FLAG_ITEM_FIERY_PATH_TM06 0x443
+#define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444
+#define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445
+#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446
+#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447
+#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448
+#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449
+#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A
+#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B
+#define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C
+#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D
+#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E
+#define FLAG_ITEM_ROUTE_121_CARBOS 0x44F
+#define FLAG_ITEM_ROUTE_123_ULTRA_BALL 0x450
+#define FLAG_ITEM_ROUTE_126_GREEN_SHARD 0x451
+#define FLAG_ITEM_ROUTE_119_HYPER_POTION_2 0x452
+#define FLAG_ITEM_ROUTE_120_HYPER_POTION 0x453
+#define FLAG_ITEM_ROUTE_120_NEST_BALL 0x454
+#define FLAG_ITEM_ROUTE_123_ELIXIR 0x455
+#define FLAG_ITEM_NEW_MAUVILLE_THUNDER_STONE 0x456
+#define FLAG_ITEM_FIERY_PATH_FIRE_STONE 0x457
+#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07 0x458
+#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_NEVER_MELT_ICE 0x459
+#define FLAG_ITEM_ROUTE_103_GUARD_SPEC 0x45A
+#define FLAG_ITEM_ROUTE_104_X_ACCURACY 0x45B
+#define FLAG_ITEM_MAUVILLE_CITY_X_SPEED 0x45C
+#define FLAG_ITEM_PETALBURD_WOODS_PARALYZE_HEAL 0x45D
+#define FLAG_ITEM_ROUTE_115_GREAT_BALL 0x45E
+#define FLAG_ITEM_SAFARI_ZONE_NORTH_CALCIUM 0x45F
+#define FLAG_ITEM_MT_PYRE_3F_SUPER_REPEL 0x460
+#define FLAG_ITEM_ROUTE_118_HYPER_POTION 0x461
+#define FLAG_ITEM_NEW_MAUVILLE_FULL_HEAL 0x462
+#define FLAG_ITEM_NEW_MAUVILLE_PARALYZE_HEAL 0x463
+#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MASTER_BALL 0x464
+
+#define FLAG_UNUSED_0x465 0x465 // Unused Flag
+#define FLAG_UNUSED_0x466 0x466 // Unused Flag
+#define FLAG_UNUSED_0x467 0x467 // Unused Flag
+#define FLAG_UNUSED_0x468 0x468 // Unused Flag
+
+#define FLAG_ITEM_MT_PYRE_2F_ULTRA_BALL 0x469
+#define FLAG_ITEM_MT_PYRE_4F_SEA_INCENSE 0x46A
+#define FLAG_ITEM_SAFARI_ZONE_SOUTH_WEST_MAX_REVIVE 0x46B
+#define FLAG_ITEM_AQUA_HIDEOUT_B1F_NUGGET 0x46C
+
+#define FLAG_UNUSED_0x46D 0x46D // Unused Flag
+
+#define FLAG_ITEM_ROUTE_119_NUGGET 0x46E
+#define FLAG_ITEM_ROUTE_104_POTION 0x46F
+
+#define FLAG_UNUSED_0x470 0x470 // Unused Flag
+
+#define FLAG_ITEM_ROUTE_103_PP_UP 0x471
+
+#define FLAG_UNUSED_0x472 0x472 // Unused Flag
+
+#define FLAG_ITEM_ROUTE_108_STAR_PIECE 0x473
+#define FLAG_ITEM_ROUTE_109_POTION 0x474
+#define FLAG_ITEM_ROUTE_110_ELIXIR 0x475
+#define FLAG_ITEM_ROUTE_111_ELIXIR 0x476
+#define FLAG_ITEM_ROUTE_113_HYPER_POTION 0x477
+#define FLAG_ITEM_ROUTE_115_HEAL_POWDER 0x478
+
+#define FLAG_UNUSED_0x479 0x479 // Unused Flag
+
+#define FLAG_ITEM_ROUTE_116_POTION 0x47A
+#define FLAG_ITEM_ROUTE_119_ELIXIR_2 0x47B
+#define FLAG_ITEM_ROUTE_120_REVIVE 0x47C
+#define FLAG_ITEM_ROUTE_121_REVIVE 0x47D
+#define FLAG_ITEM_ROUTE_121_ZINC 0x47E
+#define FLAG_ITEM_MAGMA_HIDEOUT_1F_RARE_CANDY 0x47F
+#define FLAG_ITEM_ROUTE_123_PP_UP 0x480
+#define FLAG_ITEM_ROUTE_123_REVIVAL_HERB 0x481
+#define FLAG_ITEM_ROUTE_125_BIG_PEARL 0x482
+#define FLAG_ITEM_ROUTE_127_RARE_CANDY 0x483
+#define FLAG_ITEM_ROUTE_132_PROTEIN 0x484
+#define FLAG_ITEM_ROUTE_133_MAX_REVIVE 0x485
+#define FLAG_ITEM_ROUTE_134_CARBOS 0x486
+#define FLAG_ITEM_ROUTE_134_STAR_PIECE 0x487
+#define FLAG_ITEM_ROUTE_114_ENERGY_POWDER 0x488
+#define FLAG_ITEM_ROUTE_115_PP_UP 0x489
+#define FLAG_ITEM_ARTISAN_CAVE_B1F_HP_UP 0x48A
+#define FLAG_ITEM_ARTISAN_CAVE_1F_CARBOS 0x48B
+#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_MAX_ELIXIR 0x48C
+#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_FULL_RESTORE 0x48D
+#define FLAG_ITEM_MAGMA_HIDEOUT_3F_1R_NUGGET 0x48E
+#define FLAG_ITEM_MAGMA_HIDEOUT_3F_2R_PP_MAX 0x48F
+#define FLAG_ITEM_MAGMA_HIDEOUT_4F_MAX_REVIVE 0x490
+#define FLAG_ITEM_SAFARI_ZONE_NORTH_EAST_NUGGET 0x491
+#define FLAG_ITEM_SAFARI_ZONE_SOUTH_EAST_BIG_PEARL 0x492
+
+#define FLAG_UNUSED_0x493 0x493 // Unused Flag
+#define FLAG_UNUSED_0x494 0x494 // Unused Flag
+#define FLAG_UNUSED_0x495 0x495 // Unused Flag
+#define FLAG_UNUSED_0x496 0x496 // Unused Flag
+#define FLAG_UNUSED_0x497 0x497 // Unused Flag
+#define FLAG_UNUSED_0x498 0x498 // Unused Flag
+#define FLAG_UNUSED_0x499 0x499 // Unused Flag
+#define FLAG_UNUSED_0x49A 0x49A // Unused Flag
+#define FLAG_UNUSED_0x49B 0x49B // Unused Flag
+#define FLAG_UNUSED_0x49C 0x49C // Unused Flag
+#define FLAG_UNUSED_0x49D 0x49D // Unused Flag
+#define FLAG_UNUSED_0x49E 0x49E // Unused Flag
+#define FLAG_UNUSED_0x49F 0x49F // Unused Flag
+#define FLAG_UNUSED_0x4A0 0x4A0 // Unused Flag
+#define FLAG_UNUSED_0x4A1 0x4A1 // Unused Flag
+#define FLAG_UNUSED_0x4A2 0x4A2 // Unused Flag
+#define FLAG_UNUSED_0x4A3 0x4A3 // Unused Flag
+#define FLAG_UNUSED_0x4A4 0x4A4 // Unused Flag
+#define FLAG_UNUSED_0x4A5 0x4A5 // Unused Flag
+#define FLAG_UNUSED_0x4A6 0x4A6 // Unused Flag
+#define FLAG_UNUSED_0x4A7 0x4A7 // Unused Flag
+#define FLAG_UNUSED_0x4A8 0x4A8 // Unused Flag
+#define FLAG_UNUSED_0x4A9 0x4A9 // Unused Flag
+#define FLAG_UNUSED_0x4AA 0x4AA // Unused Flag
+#define FLAG_UNUSED_0x4AB 0x4AB // Unused Flag
+#define FLAG_UNUSED_0x4AC 0x4AC // Unused Flag
+#define FLAG_UNUSED_0x4AD 0x4AD // Unused Flag
+#define FLAG_UNUSED_0x4AE 0x4AE // Unused Flag
+#define FLAG_UNUSED_0x4AF 0x4AF // Unused Flag
+#define FLAG_UNUSED_0x4B0 0x4B0 // Unused Flag
+#define FLAG_UNUSED_0x4B1 0x4B1 // Unused Flag
+#define FLAG_UNUSED_0x4B2 0x4B2 // Unused Flag
+#define FLAG_UNUSED_0x4B3 0x4B3 // Unused Flag
+#define FLAG_UNUSED_0x4B4 0x4B4 // Unused Flag
+#define FLAG_UNUSED_0x4B5 0x4B5 // Unused Flag
+#define FLAG_UNUSED_0x4B6 0x4B6 // Unused Flag
+#define FLAG_UNUSED_0x4B7 0x4B7 // Unused Flag
+#define FLAG_UNUSED_0x4B8 0x4B8 // Unused Flag
+#define FLAG_UNUSED_0x4B9 0x4B9 // Unused Flag
+#define FLAG_UNUSED_0x4BA 0x4BA // Unused Flag
+#define FLAG_UNUSED_0x4BB 0x4BB // Unused Flag
+#define FLAG_UNUSED_0x4BC 0x4BC // Unused Flag
+#define FLAG_UNUSED_0x4BD 0x4BD // Unused Flag
+#define FLAG_UNUSED_0x4BE 0x4BE // Unused Flag
+#define FLAG_UNUSED_0x4BF 0x4BF // Unused Flag
+#define FLAG_UNUSED_0x4C0 0x4C0 // Unused Flag
+#define FLAG_UNUSED_0x4C1 0x4C1 // Unused Flag
+#define FLAG_UNUSED_0x4C2 0x4C2 // Unused Flag
+#define FLAG_UNUSED_0x4C3 0x4C3 // Unused Flag
+#define FLAG_UNUSED_0x4C4 0x4C4 // Unused Flag
+#define FLAG_UNUSED_0x4C5 0x4C5 // Unused Flag
+#define FLAG_UNUSED_0x4C6 0x4C6 // Unused Flag
+#define FLAG_UNUSED_0x4C7 0x4C7 // Unused Flag
+#define FLAG_UNUSED_0x4C8 0x4C8 // Unused Flag
+#define FLAG_UNUSED_0x4C9 0x4C9 // Unused Flag
+#define FLAG_UNUSED_0x4CA 0x4CA // Unused Flag
+#define FLAG_UNUSED_0x4CB 0x4CB // Unused Flag
+#define FLAG_UNUSED_0x4CC 0x4CC // Unused Flag
+#define FLAG_UNUSED_0x4CD 0x4CD // Unused Flag
+#define FLAG_UNUSED_0x4CE 0x4CE // Unused Flag
+#define FLAG_UNUSED_0x4CF 0x4CF // Unused Flag
+#define FLAG_UNUSED_0x4D0 0x4D0 // Unused Flag
+#define FLAG_UNUSED_0x4D1 0x4D1 // Unused Flag
+#define FLAG_UNUSED_0x4D2 0x4D2 // Unused Flag
+#define FLAG_UNUSED_0x4D3 0x4D3 // Unused Flag
+#define FLAG_UNUSED_0x4D4 0x4D4 // Unused Flag
+#define FLAG_UNUSED_0x4D5 0x4D5 // Unused Flag
+#define FLAG_UNUSED_0x4D6 0x4D6 // Unused Flag
+#define FLAG_UNUSED_0x4D7 0x4D7 // Unused Flag
+#define FLAG_UNUSED_0x4D8 0x4D8 // Unused Flag
+#define FLAG_UNUSED_0x4D9 0x4D9 // Unused Flag
+#define FLAG_UNUSED_0x4DA 0x4DA // Unused Flag
+#define FLAG_UNUSED_0x4DB 0x4DB // Unused Flag
+#define FLAG_UNUSED_0x4DC 0x4DC // Unused Flag
+#define FLAG_UNUSED_0x4DD 0x4DD // Unused Flag
+#define FLAG_UNUSED_0x4DE 0x4DE // Unused Flag
+#define FLAG_UNUSED_0x4DF 0x4DF // Unused Flag
+#define FLAG_UNUSED_0x4E0 0x4E0 // Unused Flag
+#define FLAG_UNUSED_0x4E1 0x4E1 // Unused Flag
+#define FLAG_UNUSED_0x4E2 0x4E2 // Unused Flag
+#define FLAG_UNUSED_0x4E3 0x4E3 // Unused Flag
+#define FLAG_UNUSED_0x4E4 0x4E4 // Unused Flag
+#define FLAG_UNUSED_0x4E5 0x4E5 // Unused Flag
+#define FLAG_UNUSED_0x4E6 0x4E6 // Unused Flag
+#define FLAG_UNUSED_0x4E7 0x4E7 // Unused Flag
+#define FLAG_UNUSED_0x4E8 0x4E8 // Unused Flag
+#define FLAG_UNUSED_0x4E9 0x4E9 // Unused Flag
+#define FLAG_UNUSED_0x4EA 0x4EA // Unused Flag
+#define FLAG_UNUSED_0x4EB 0x4EB // Unused Flag
+#define FLAG_UNUSED_0x4EC 0x4EC // Unused Flag
+#define FLAG_UNUSED_0x4ED 0x4ED // Unused Flag
+#define FLAG_UNUSED_0x4EE 0x4EE // Unused Flag
+#define FLAG_UNUSED_0x4EF 0x4EF // Unused Flag
+
+#define FLAG_DEFEATED_RUSTBORO_GYM 0x4F0
+#define FLAG_DEFEATED_DEWFORD_GYM 0x4F1
+#define FLAG_DEFEATED_MAUVILLE_GYM 0x4F2
+#define FLAG_DEFEATED_LAVARIDGE_GYM 0x4F3
+#define FLAG_DEFEATED_PETALBURG_GYM 0x4F4
+#define FLAG_DEFEATED_FORTREE_GYM 0x4F5
+#define FLAG_DEFEATED_MOSSDEEP_GYM 0x4F6
+#define FLAG_DEFEATED_SOOTOPOLIS_GYM 0x4F7
+#define FLAG_DEFEATED_METEOR_FALLS_STEVEN 0x4F8
+
+#define FLAG_UNUSED_0x4F9 0x4F9 // Unused Flag
+#define FLAG_UNUSED_0x4FA 0x4FA // Unused Flag
+
+#define FLAG_DEFEATED_ELITE_4_SYDNEY 0x4FB
+#define FLAG_DEFEATED_ELITE_4_PHOEBE 0x4FC
+#define FLAG_DEFEATED_ELITE_4_GLACIA 0x4FD
+#define FLAG_DEFEATED_ELITE_4_DRAKE 0x4FE
+
+#define FLAG_UNUSED_0x4FF 0x4FF // Unused Flag
+
+#define FLAG_TRAINER_FLAG_START 0x500
+#define TRAINERS_FLAG_NO 0x356
+
+#define SYSTEM_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860
+
+// System Flags
+
+#define FLAG_SYS_POKEMON_GET (SYSTEM_FLAGS + 0) // FLAG_0x860
+#define FLAG_SYS_POKEDEX_GET (SYSTEM_FLAGS + 1)
+#define FLAG_SYS_POKENAV_GET (SYSTEM_FLAGS + 2)
+#define FLAG_SYS_GAME_CLEAR (SYSTEM_FLAGS + 4)
+#define FLAG_SYS_CHAT_USED (SYSTEM_FLAGS + 5)
+#define FLAG_SYS_HIPSTER_MEET (SYSTEM_FLAGS + 6)
+
+// Badges
+#define FLAG_BADGE01_GET (SYSTEM_FLAGS + 7)
+#define FLAG_BADGE02_GET (SYSTEM_FLAGS + 8)
+#define FLAG_BADGE03_GET (SYSTEM_FLAGS + 9)
+#define FLAG_BADGE04_GET (SYSTEM_FLAGS + 0xA)
+#define FLAG_BADGE05_GET (SYSTEM_FLAGS + 0xB)
+#define FLAG_BADGE06_GET (SYSTEM_FLAGS + 0xC)
+#define FLAG_BADGE07_GET (SYSTEM_FLAGS + 0xD)
+#define FLAG_BADGE08_GET (SYSTEM_FLAGS + 0xE)
+
+// Towns and Cities
+#define FLAG_VISITED_LITTLEROOT_TOWN (SYSTEM_FLAGS + 0xF)
+#define FLAG_VISITED_OLDALE_TOWN (SYSTEM_FLAGS + 0x10)
+#define FLAG_VISITED_DEWFORD_TOWN (SYSTEM_FLAGS + 0x11)
+#define FLAG_VISITED_LAVARIDGE_TOWN (SYSTEM_FLAGS + 0x12)
+#define FLAG_VISITED_FALLARBOR_TOWN (SYSTEM_FLAGS + 0x13)
+#define FLAG_VISITED_VERDANTURF_TOWN (SYSTEM_FLAGS + 0x14)
+#define FLAG_VISITED_PACIFIDLOG_TOWN (SYSTEM_FLAGS + 0x15)
+#define FLAG_VISITED_PETALBURG_CITY (SYSTEM_FLAGS + 0x16)
+#define FLAG_VISITED_SLATEPORT_CITY (SYSTEM_FLAGS + 0x17)
+#define FLAG_VISITED_MAUVILLE_CITY (SYSTEM_FLAGS + 0x18)
+#define FLAG_VISITED_RUSTBORO_CITY (SYSTEM_FLAGS + 0x19)
+#define FLAG_VISITED_FORTREE_CITY (SYSTEM_FLAGS + 0x1A)
+#define FLAG_VISITED_LILYCOVE_CITY (SYSTEM_FLAGS + 0x1B)
+#define FLAG_VISITED_MOSSDEEP_CITY (SYSTEM_FLAGS + 0x1C)
+#define FLAG_VISITED_SOOTOPOLIS_CITY (SYSTEM_FLAGS + 0x1D)
+#define FLAG_VISITED_EVER_GRANDE_CITY (SYSTEM_FLAGS + 0x1E)
+
+#define FLAG_IS_CHAMPION (SYSTEM_FLAGS + 0x1F) // Seems to be related to linking.
+#define FLAG_NURSE_UNION_ROOM_REMINDER (SYSTEM_FLAGS + 0x20)
+
+#define FLAG_UNUSED_0x881 (SYSTEM_FLAGS + 0x21) // Unused Flag
+#define FLAG_UNUSED_0x882 (SYSTEM_FLAGS + 0x22) // Unused Flag
+#define FLAG_UNUSED_0x883 (SYSTEM_FLAGS + 0x23) // Unused Flag
+#define FLAG_UNUSED_0x884 (SYSTEM_FLAGS + 0x24) // Unused Flag
+#define FLAG_UNUSED_0x885 (SYSTEM_FLAGS + 0x25) // Unused Flag
+#define FLAG_UNUSED_0x886 (SYSTEM_FLAGS + 0x26) // Unused Flag
+#define FLAG_UNUSED_0x887 (SYSTEM_FLAGS + 0x27) // Unused Flag
+
+#define FLAG_SYS_USE_FLASH (SYSTEM_FLAGS + 0x28)
+#define FLAG_SYS_USE_STRENGTH (SYSTEM_FLAGS + 0x29)
+#define FLAG_SYS_WEATHER_CTRL (SYSTEM_FLAGS + 0x2A)
+#define FLAG_SYS_CYCLING_ROAD (SYSTEM_FLAGS + 0x2B)
+#define FLAG_SYS_SAFARI_MODE (SYSTEM_FLAGS + 0x2C)
+#define FLAG_SYS_CRUISE_MODE (SYSTEM_FLAGS + 0x2D)
+
+#define FLAG_UNUSED_0x88E (SYSTEM_FLAGS + 0x2E) // Unused Flag
+#define FLAG_UNUSED_0x88F (SYSTEM_FLAGS + 0x2F) // Unused Flag
+
+#define FLAG_SYS_TV_HOME (SYSTEM_FLAGS + 0x30)
+#define FLAG_SYS_TV_WATCH (SYSTEM_FLAGS + 0x31)
+#define FLAG_SYS_TV_START (SYSTEM_FLAGS + 0x32)
+#define FLAG_SYS_POPWORD_INPUT (SYSTEM_FLAGS + 0x33)
+#define FLAG_SYS_MIX_RECORD (SYSTEM_FLAGS + 0x34)
+#define FLAG_SYS_CLOCK_SET (SYSTEM_FLAGS + 0x35)
+#define FLAG_SYS_NATIONAL_DEX (SYSTEM_FLAGS + 0x36)
+#define FLAG_SYS_UNUSED_CAVE_SHIP (SYSTEM_FLAGS + 0x37) // Unused Flag?
+#define FLAG_SYS_UNUSED_CAVE_WONDER (SYSTEM_FLAGS + 0x38) // Unused Flag?
+#define FLAG_SYS_UNUSED_CAVE_BATTLE (SYSTEM_FLAGS + 0x39) // Unused Flag?
+#define FLAG_SYS_SHOAL_TIDE (SYSTEM_FLAGS + 0x3A)
+#define FLAG_SYS_RIBBON_GET (SYSTEM_FLAGS + 0x3B)
+
+#define FLAG_LANDMARK_FLOWER_SHOP (SYSTEM_FLAGS + 0x3C)
+#define FLAG_LANDMARK_MR_BRINEY_HOUSE (SYSTEM_FLAGS + 0x3D)
+#define FLAG_LANDMARK_ABANDONED_SHIP (SYSTEM_FLAGS + 0x3E)
+#define FLAG_LANDMARK_SEASHORE_HOUSE (SYSTEM_FLAGS + 0x3F)
+#define FLAG_LANDMARK_NEW_MAUVILLE (SYSTEM_FLAGS + 0x40)
+#define FLAG_LANDMARK_OLD_LADY_REST_SHOP (SYSTEM_FLAGS + 0x41)
+#define FLAG_LANDMARK_TRICK_HOUSE (SYSTEM_FLAGS + 0x42)
+#define FLAG_LANDMARK_WINSTRATE_FAMILY (SYSTEM_FLAGS + 0x43)
+#define FLAG_LANDMARK_GLASS_WORKSHOP (SYSTEM_FLAGS + 0x44)
+#define FLAG_LANDMARK_LANETTES_HOUSE (SYSTEM_FLAGS + 0x45)
+#define FLAG_LANDMARK_POKEMON_DAYCARE (SYSTEM_FLAGS + 0x46)
+#define FLAG_LANDMARK_SEAFLOOR_CAVERN (SYSTEM_FLAGS + 0x47)
+#define FLAG_LANDMARK_BATTLE_FRONTIER (SYSTEM_FLAGS + 0x48)
+#define FLAG_LANDMARK_SOUTHERN_ISLAND (SYSTEM_FLAGS + 0x49)
+#define FLAG_LANDMARK_FIERY_PATH (SYSTEM_FLAGS + 0x4A)
+
+#define FLAG_SYS_PC_LANETTE (SYSTEM_FLAGS + 0x4B)
+#define FLAG_SYS_MYSTERY_EVENT_ENABLE (SYSTEM_FLAGS + 0x4C)
+#define FLAG_SYS_ENC_UP_ITEM (SYSTEM_FLAGS + 0x4D)
+#define FLAG_SYS_ENC_DOWN_ITEM (SYSTEM_FLAGS + 0x4E)
+#define FLAG_SYS_BRAILLE_DIG (SYSTEM_FLAGS + 0x4F)
+#define FLAG_SYS_BRAILLE_STRENGTH (SYSTEM_FLAGS + 0x50)
+#define FLAG_SYS_BRAILLE_WAIT (SYSTEM_FLAGS + 0x51)
+#define FLAG_SYS_BRAILLE_FLY (SYSTEM_FLAGS + 0x52)
+#define FLAG_SYS_HAS_EON_TICKET (SYSTEM_FLAGS + 0x53)
+
+#define FLAG_LANDMARK_POKEMON_LEAGUE (SYSTEM_FLAGS + 0x54)
+
+#define FLAG_LANDMARK_ISLAND_CAVE (SYSTEM_FLAGS + 0x55)
+#define FLAG_LANDMARK_DESERT_RUINS (SYSTEM_FLAGS + 0x56)
+#define FLAG_LANDMARK_FOSSIL_MANIACS_HOUSE (SYSTEM_FLAGS + 0x57)
+#define FLAG_LANDMARK_SCORCHED_SLAB (SYSTEM_FLAGS + 0x58)
+#define FLAG_LANDMARK_ANCIENT_TOMB (SYSTEM_FLAGS + 0x59)
+#define FLAG_LANDMARK_TUNNELERS_REST_HOUSE (SYSTEM_FLAGS + 0x5A)
+#define FLAG_LANDMARK_HUNTERS_HOUSE (SYSTEM_FLAGS + 0x5B)
+#define FLAG_LANDMARK_SEALED_CHAMBER (SYSTEM_FLAGS + 0x5C)
+
+#define FLAG_SYS_TV_LATIAS_LATIOS (SYSTEM_FLAGS + 0x5D)
+
+#define FLAG_LANDMARK_SKY_PILLAR (SYSTEM_FLAGS + 0x5E)
+
+#define FLAG_SYS_SHOAL_ITEM (SYSTEM_FLAGS + 0x5F)
+#define FLAG_SYS_B_DASH (SYSTEM_FLAGS + 0x60) // RECEIVED Running Shoes
+#define FLAG_SYS_CTRL_OBJ_DELETE (SYSTEM_FLAGS + 0x61)
+#define FLAG_SYS_RESET_RTC_ENABLE (SYSTEM_FLAGS + 0x62)
+
+#define FLAG_LANDMARK_BERRY_MASTERS_HOUSE (SYSTEM_FLAGS + 0x63)
+
+#define FLAG_SYS_TOWER_SILVER (SYSTEM_FLAGS + 0x64)
+#define FLAG_SYS_TOWER_GOLD (SYSTEM_FLAGS + 0x65)
+#define FLAG_SYS_DOME_SILVER (SYSTEM_FLAGS + 0x66)
+#define FLAG_SYS_DOME_GOLD (SYSTEM_FLAGS + 0x67)
+#define FLAG_SYS_PALACE_SILVER (SYSTEM_FLAGS + 0x68)
+#define FLAG_SYS_PALACE_GOLD (SYSTEM_FLAGS + 0x69)
+#define FLAG_SYS_ARENA_SILVER (SYSTEM_FLAGS + 0x6A)
+#define FLAG_SYS_ARENA_GOLD (SYSTEM_FLAGS + 0x6B)
+#define FLAG_SYS_FACTORY_SILVER (SYSTEM_FLAGS + 0x6C)
+#define FLAG_SYS_FACTORY_GOLD (SYSTEM_FLAGS + 0x6D)
+#define FLAG_SYS_PIKE_SILVER (SYSTEM_FLAGS + 0x6E)
+#define FLAG_SYS_PIKE_GOLD (SYSTEM_FLAGS + 0x6F)
+#define FLAG_SYS_PYRAMID_SILVER (SYSTEM_FLAGS + 0x70)
+#define FLAG_SYS_PYRAMID_GOLD (SYSTEM_FLAGS + 0x71)
+#define FLAG_SYS_FRONTIER_PASS (SYSTEM_FLAGS + 0x72)
+
+#define FLAG_MAP_SCRIPT_CHECKED_DEOXYS (SYSTEM_FLAGS + 0x73)
+#define FLAG_DEOXYS_ROCK_COMPLETE (SYSTEM_FLAGS + 0x74)
+#define FLAG_ENABLE_SHIP_BIRTH_ISLAND (SYSTEM_FLAGS + 0x75)
+#define FLAG_ENABLE_SHIP_FARAWAY_ISLAND (SYSTEM_FLAGS + 0x76)
+
+#define FLAG_SYS_STORAGE_UNKNOWN_FLAG (SYSTEM_FLAGS + 0x77)
+
+#define FLAG_ARRIVED_ON_FARAWAY_ISLAND (SYSTEM_FLAGS + 0x78)
+#define FLAG_ARRIVED_AT_MARINE_CAVE_EMERGE_SPOT (SYSTEM_FLAGS + 0x79)
+#define FLAG_ARRIVED_AT_TERRA_CAVE_ENTRANCE (SYSTEM_FLAGS + 0x7A)
+
+#define FLAG_SYS_MYSTERY_GIFT_ENABLE (SYSTEM_FLAGS + 0x7B)
+
+#define FLAG_ENTERED_MIRAGE_TOWER (SYSTEM_FLAGS + 0x7C)
+#define FLAG_LANDMARK_ALTERING_CAVE (SYSTEM_FLAGS + 0x7D)
+#define FLAG_LANDMARK_DESERT_UNDERPASS (SYSTEM_FLAGS + 0x7E)
+#define FLAG_LANDMARK_ARTISAN_CAVE (SYSTEM_FLAGS + 0x7F)
+#define FLAG_ENABLE_SHIP_NAVEL_ROCK (SYSTEM_FLAGS + 0x80)
+#define FLAG_ARRIVED_AT_NAVEL_ROCK (SYSTEM_FLAGS + 0x81)
+#define FLAG_LANDMARK_TRAINER_HILL (SYSTEM_FLAGS + 0x82)
+
+#define FLAG_UNUSED_0x8E3 (SYSTEM_FLAGS + 0x83) // Unused Flag
+
+#define FLAG_RECEIVED_POKEDEX_FROM_BIRCH (SYSTEM_FLAGS + 0x84)
+
+#define FLAG_UNUSED_0x8E5 (SYSTEM_FLAGS + 0x85) // Unused Flag
+#define FLAG_UNUSED_0x8E6 (SYSTEM_FLAGS + 0x86) // Unused Flag
+#define FLAG_UNUSED_0x8E7 (SYSTEM_FLAGS + 0x87) // Unused Flag
+#define FLAG_UNUSED_0x8E8 (SYSTEM_FLAGS + 0x88) // Unused Flag
+#define FLAG_UNUSED_0x8E9 (SYSTEM_FLAGS + 0x89) // Unused Flag
+#define FLAG_UNUSED_0x8EA (SYSTEM_FLAGS + 0x8A) // Unused Flag
+#define FLAG_UNUSED_0x8EB (SYSTEM_FLAGS + 0x8B) // Unused Flag
+#define FLAG_UNUSED_0x8EC (SYSTEM_FLAGS + 0x8C) // Unused Flag
+#define FLAG_UNUSED_0x8ED (SYSTEM_FLAGS + 0x8D) // Unused Flag
+#define FLAG_UNUSED_0x8EE (SYSTEM_FLAGS + 0x8E) // Unused Flag
+#define FLAG_UNUSED_0x8EF (SYSTEM_FLAGS + 0x8F) // Unused Flag
+#define FLAG_UNUSED_0x8F0 (SYSTEM_FLAGS + 0x90) // Unused Flag
+#define FLAG_UNUSED_0x8F1 (SYSTEM_FLAGS + 0x91) // Unused Flag
+#define FLAG_UNUSED_0x8F2 (SYSTEM_FLAGS + 0x92) // Unused Flag
+#define FLAG_UNUSED_0x8F3 (SYSTEM_FLAGS + 0x93) // Unused Flag
+#define FLAG_UNUSED_0x8F4 (SYSTEM_FLAGS + 0x94) // Unused Flag
+#define FLAG_UNUSED_0x8F5 (SYSTEM_FLAGS + 0x95) // Unused Flag
+#define FLAG_UNUSED_0x8F6 (SYSTEM_FLAGS + 0x96) // Unused Flag
+#define FLAG_UNUSED_0x8F7 (SYSTEM_FLAGS + 0x97) // Unused Flag
+#define FLAG_UNUSED_0x8F8 (SYSTEM_FLAGS + 0x98) // Unused Flag
+#define FLAG_UNUSED_0x8F9 (SYSTEM_FLAGS + 0x99) // Unused Flag
+#define FLAG_UNUSED_0x8FA (SYSTEM_FLAGS + 0x9A) // Unused Flag
+#define FLAG_UNUSED_0x8FB (SYSTEM_FLAGS + 0x9B) // Unused Flag
+#define FLAG_UNUSED_0x8FC (SYSTEM_FLAGS + 0x9C) // Unused Flag
+#define FLAG_UNUSED_0x8FD (SYSTEM_FLAGS + 0x9D) // Unused Flag
+#define FLAG_UNUSED_0x8FE (SYSTEM_FLAGS + 0x9E) // Unused Flag
+#define FLAG_UNUSED_0x8FF (SYSTEM_FLAGS + 0x9F) // Unused Flag
+#define FLAG_UNUSED_0x900 (SYSTEM_FLAGS + 0xA0) // Unused Flag
+#define FLAG_UNUSED_0x901 (SYSTEM_FLAGS + 0xA1) // Unused Flag
+#define FLAG_UNUSED_0x902 (SYSTEM_FLAGS + 0xA2) // Unused Flag
+#define FLAG_UNUSED_0x903 (SYSTEM_FLAGS + 0xA3) // Unused Flag
+#define FLAG_UNUSED_0x904 (SYSTEM_FLAGS + 0xA4) // Unused Flag
+#define FLAG_UNUSED_0x905 (SYSTEM_FLAGS + 0xA5) // Unused Flag
+#define FLAG_UNUSED_0x906 (SYSTEM_FLAGS + 0xA6) // Unused Flag
+#define FLAG_UNUSED_0x907 (SYSTEM_FLAGS + 0xA7) // Unused Flag
+#define FLAG_UNUSED_0x908 (SYSTEM_FLAGS + 0xA8) // Unused Flag
+#define FLAG_UNUSED_0x909 (SYSTEM_FLAGS + 0xA9) // Unused Flag
+#define FLAG_UNUSED_0x90A (SYSTEM_FLAGS + 0xAA) // Unused Flag
+#define FLAG_UNUSED_0x90B (SYSTEM_FLAGS + 0xAB) // Unused Flag
+#define FLAG_UNUSED_0x90C (SYSTEM_FLAGS + 0xAC) // Unused Flag
+#define FLAG_UNUSED_0x90D (SYSTEM_FLAGS + 0xAD) // Unused Flag
+#define FLAG_UNUSED_0x90E (SYSTEM_FLAGS + 0xAE) // Unused Flag
+#define FLAG_UNUSED_0x90F (SYSTEM_FLAGS + 0xAF) // Unused Flag
+#define FLAG_UNUSED_0x910 (SYSTEM_FLAGS + 0xB0) // Unused Flag
+#define FLAG_UNUSED_0x911 (SYSTEM_FLAGS + 0xB1) // Unused Flag
+#define FLAG_UNUSED_0x912 (SYSTEM_FLAGS + 0xB2) // Unused Flag
+#define FLAG_UNUSED_0x913 (SYSTEM_FLAGS + 0xB3) // Unused Flag
+#define FLAG_UNUSED_0x914 (SYSTEM_FLAGS + 0xB4) // Unused Flag
+#define FLAG_UNUSED_0x915 (SYSTEM_FLAGS + 0xB5) // Unused Flag
+#define FLAG_UNUSED_0x916 (SYSTEM_FLAGS + 0xB6) // Unused Flag
+#define FLAG_UNUSED_0x917 (SYSTEM_FLAGS + 0xB7) // Unused Flag
+#define FLAG_UNUSED_0x918 (SYSTEM_FLAGS + 0xB8) // Unused Flag
+#define FLAG_UNUSED_0x919 (SYSTEM_FLAGS + 0xB9) // Unused Flag
+#define FLAG_UNUSED_0x91A (SYSTEM_FLAGS + 0xBA) // Unused Flag
+#define FLAG_UNUSED_0x91B (SYSTEM_FLAGS + 0xBB) // Unused Flag
+#define FLAG_UNUSED_0x91C (SYSTEM_FLAGS + 0xBC) // Unused Flag
+#define FLAG_UNUSED_0x91D (SYSTEM_FLAGS + 0xBD) // Unused Flag
+#define FLAG_UNUSED_0x91E (SYSTEM_FLAGS + 0xBE) // Unused Flag
+#define FLAG_UNUSED_0x91F (SYSTEM_FLAGS + 0xBF) // Unused Flag
+
+// Daily Flags
+#define FLAG_DAILY_0x920 (SYSTEM_FLAGS + 0xC0)
+#define FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY (SYSTEM_FLAGS + 0xC1)
+#define FLAG_DAILY_SECRET_BASE (SYSTEM_FLAGS + 0xC2)
+#define FLAG_DAILY_0x923 (SYSTEM_FLAGS + 0xC3)
+#define FLAG_DAILY_0x924 (SYSTEM_FLAGS + 0xC4)
+#define FLAG_DAILY_0x925 (SYSTEM_FLAGS + 0xC5)
+#define FLAG_DAILY_0x926 (SYSTEM_FLAGS + 0xC6)
+#define FLAG_DAILY_0x927 (SYSTEM_FLAGS + 0xC7)
+#define FLAG_DAILY_0x928 (SYSTEM_FLAGS + 0xC8)
+#define FLAG_DAILY_0x929 (SYSTEM_FLAGS + 0xC9)
+#define FLAG_DAILY_PICKED_LOTO_TICKET (SYSTEM_FLAGS + 0xCA)
+#define FLAG_DAILY_ROUTE_114_RECEIVED_BERRY (SYSTEM_FLAGS + 0xCB)
+#define FLAG_DAILY_ROUTE_111_RECEIVED_BERRY (SYSTEM_FLAGS + 0xCC)
+#define FLAG_DAILY_BERRY_MASTER_RECEIVED_BERRY (SYSTEM_FLAGS + 0xCD)
+#define FLAG_DAILY_ROUTE_120_RECEIVED_BERRY (SYSTEM_FLAGS + 0xCE)
+#define FLAG_DAILY_LILYCOVE_RECEIVED_BERRY (SYSTEM_FLAGS + 0xCF)
+#define FLAG_DAILY_FLOWER_SHOP_RECEIVED_BERRY (SYSTEM_FLAGS + 0xD0)
+#define FLAG_DAILY_BERRY_MASTERS_WIFE (SYSTEM_FLAGS + 0xD1)
+#define FLAG_DAILY_SOOTOPOLIS_RECEIVED_BERRY (SYSTEM_FLAGS + 0xD2)
+#define FLAG_DAILY_0x933 (SYSTEM_FLAGS + 0xD3)
+#define FLAG_DAILY_APPRENTICE_LEAVES (SYSTEM_FLAGS + 0xD4)
+#define FLAG_0x935 (SYSTEM_FLAGS + 0xD5)
+#define FLAG_0x936 (SYSTEM_FLAGS + 0xD6)
+#define FLAG_0x937 (SYSTEM_FLAGS + 0xD7)
+#define FLAG_0x938 (SYSTEM_FLAGS + 0xD8)
+#define FLAG_0x939 (SYSTEM_FLAGS + 0xD9)
+#define FLAG_0x93A (SYSTEM_FLAGS + 0xDA)
+#define FLAG_0x93B (SYSTEM_FLAGS + 0xDB)
+#define FLAG_0x93C (SYSTEM_FLAGS + 0xDC)
+#define FLAG_0x93D (SYSTEM_FLAGS + 0xDD)
+#define FLAG_0x93E (SYSTEM_FLAGS + 0xDE)
+#define FLAG_0x93F (SYSTEM_FLAGS + 0xDF)
+#define FLAG_0x940 (SYSTEM_FLAGS + 0xE0)
+#define FLAG_0x941 (SYSTEM_FLAGS + 0xE1)
+#define FLAG_0x942 (SYSTEM_FLAGS + 0xE2)
+#define FLAG_0x943 (SYSTEM_FLAGS + 0xE3)
+#define FLAG_0x944 (SYSTEM_FLAGS + 0xE4)
+#define FLAG_0x945 (SYSTEM_FLAGS + 0xE5)
+#define FLAG_0x946 (SYSTEM_FLAGS + 0xE6)
+#define FLAG_0x947 (SYSTEM_FLAGS + 0xE7)
+#define FLAG_0x948 (SYSTEM_FLAGS + 0xE8)
+#define FLAG_0x949 (SYSTEM_FLAGS + 0xE9)
+#define FLAG_0x94A (SYSTEM_FLAGS + 0xEA)
+#define FLAG_0x94B (SYSTEM_FLAGS + 0xEB)
+#define FLAG_0x94C (SYSTEM_FLAGS + 0xEC)
+#define FLAG_0x94D (SYSTEM_FLAGS + 0xED)
+#define FLAG_0x94E (SYSTEM_FLAGS + 0xEE)
+#define FLAG_0x94F (SYSTEM_FLAGS + 0xEF)
+#define FLAG_0x950 (SYSTEM_FLAGS + 0xF0)
+#define FLAG_0x951 (SYSTEM_FLAGS + 0xF1)
+#define FLAG_0x952 (SYSTEM_FLAGS + 0xF2)
+#define FLAG_0x953 (SYSTEM_FLAGS + 0xF3)
+#define FLAG_0x954 (SYSTEM_FLAGS + 0xF4)
+#define FLAG_0x955 (SYSTEM_FLAGS + 0xF5)
+#define FLAG_0x956 (SYSTEM_FLAGS + 0xF6)
+#define FLAG_0x957 (SYSTEM_FLAGS + 0xF7)
+#define FLAG_0x958 (SYSTEM_FLAGS + 0xF8)
+#define FLAG_0x959 (SYSTEM_FLAGS + 0xF9)
+#define FLAG_0x95A (SYSTEM_FLAGS + 0xFA)
+#define FLAG_0x95B (SYSTEM_FLAGS + 0xFB)
+#define FLAG_0x95C (SYSTEM_FLAGS + 0xFC)
+#define FLAG_0x95D (SYSTEM_FLAGS + 0xFD)
+#define FLAG_0x95E (SYSTEM_FLAGS + 0xFE)
+#define FLAG_0x95F (SYSTEM_FLAGS + 0xFF)
+
+// Special Flags (Unknown)
+#define SPECIAL_FLAGS_START 0x4000
+#define FLAG_SPECIAL_FLAG_0x4000 0x4000
+#define FLAG_SPECIAL_FLAG_0x4001 0x4001
+#define FLAG_SPECIAL_FLAG_0x4002 0x4002
+#define FLAG_SPECIAL_FLAG_0x4003 0x4003
+#define FLAG_SPECIAL_FLAG_0x4004 0x4004
#endif // GUARD_CONSTANTS_FLAGS_H
diff --git a/include/contest.h b/include/contest.h
index 54c431b94..73ebb79fa 100644
--- a/include/contest.h
+++ b/include/contest.h
@@ -222,13 +222,17 @@ struct ContestPokemon
}; // wow
extern struct ContestPokemon gContestMons[4];
-extern u8 gUnknown_02039F24;
+extern u8 gContestMonPartyIndex;
extern u16 gSpecialVar_ContestCategory;
extern u16 gSpecialVar_ContestRank;
-extern u8 gUnknown_02039F30;
+extern u8 gUnknown_02039F2B;
+extern u8 gNumLinkContestPlayers;
+extern u8 gHighestRibbonRank;
extern u8 gContestFinalStandings[4];
extern u8 gContestPlayerMonIndex;
extern s16 gUnknown_02039F08[4];
+extern s16 gUnknown_02039F10[4];
+extern s16 gUnknown_02039F18[4];
extern s16 gContestMonConditions[4];
extern u8 gIsLinkContest;
extern struct ContestWinner gUnknown_02039F3C;
@@ -434,5 +438,23 @@ void SetStartledString(u8 a, u8 b);
s8 Contest_GetMoveExcitement(u16);
u8 sub_80DAE0C(struct Pokemon *);
void sub_80DEDA8(u8);
+void sub_80DACBC(u8 contestType, u8 rank, bool32 isPostgame);
+void sub_80DB09C(u8 contestCategory);
+void sub_80DCE58(u8);
+void sub_80DFA08(struct ContestPokemon *mon, int language);
+void sub_80DBED4(void);
+u8 sub_80DEFA8(u8, u8);
+
+// contest link
+void sub_81D9DE4(u8 taskId);
+void sub_80FCF40(u8);
+void sub_80FCFD0(u8);
+void sub_80F8714(u8);
+bool32 sub_80FC670(s16 *);
+bool32 sub_80FC4F4(void *, u16);
+bool8 sub_80FC55C(void);
+bool8 sub_80FC530(u8);
+u8 sub_80F86E0(u8 *);
+
#endif //GUARD_CONTEST_H
diff --git a/include/contest_painting.h b/include/contest_painting.h
index c633c50cc..ca03a72b5 100644
--- a/include/contest_painting.h
+++ b/include/contest_painting.h
@@ -13,4 +13,7 @@ enum
void sub_812FDA8(int);
void CB2_ContestPainting(void);
+extern u8 gUnknown_02039F5C;
+extern u8 gUnknown_02039F5D;
+
#endif
diff --git a/include/data2.h b/include/data2.h
index 37ce5bf20..c1a2608ae 100644
--- a/include/data2.h
+++ b/include/data2.h
@@ -5,7 +5,7 @@ struct MonCoords
{
// This would use a bitfield, but some function
// uses it as a u8 and casting won't match.
- u8 coords; // u8 x:4, y:4;
+ u8 size; // u8 width:4, height:4;
u8 y_offset;
};
diff --git a/include/gba/types.h b/include/gba/types.h
index fff48d437..3d78b5b5e 100644
--- a/include/gba/types.h
+++ b/include/gba/types.h
@@ -59,8 +59,8 @@ struct OamData
u32 shape:2; // 0x40, 0x80 -> 0xC0
/*0x02*/ u32 x:9;
- u32 matrixNum:5; // bits 3/4 are h-flip/v-flip if not in affine mode
- u32 size:2;
+ u32 matrixNum:5; // bits 3/4 are h-flip/v-flip if not in affine mode
+ u32 size:2; // 0x4000, 0x8000 -> 0xC000
/*0x04*/ u16 tileNum:10; // 0x3FF
u16 priority:2; // 0x400, 0x800 -> 0xC00
diff --git a/include/graphics.h b/include/graphics.h
index ad2b39260..29719d1a0 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -4818,4 +4818,32 @@ extern const u32 gStatusPal_Icons[];
extern const u32 gPartyMenuPokeball_Pal[];
extern const u32 gStatusPal_Icons[];
+// Roulette
+extern const u32 gRouletteMenuTiles[];
+extern const u32 gRouletteWheelTiles[];
+extern const u32 gRouletteCenter_Gfx[];
+extern const u32 gRouletteHeadersTiles[];
+extern const u32 gRouletteCreditTiles[];
+extern const u32 gRouletteNumbersTiles[];
+extern const u32 gRouletteMultiplierTiles[];
+
+// Contest Link
+extern const u32 gUnknown_0858D6B0[];
+extern const u32 gUnknown_08C19588[];
+extern const u32 gUnknown_08C19EEC[];
+extern const u32 gUnknown_08C1A000[];
+extern const u32 gUnknown_08C1A12C[];
+extern const u32 gUnknown_08C1A2B4[];
+extern const u16 gUnknown_08DC6498[];
+extern const u16 gUnknown_08DC63F8[];
+extern const u16 gUnknown_08DC6420[];
+extern const u16 gUnknown_08DC6448[];
+extern const u16 gUnknown_08DC6470[];
+extern const u16 gUnknown_08DC64AC[];
+extern const u16 gUnknown_08DC64C0[];
+extern const u16 gUnknown_08DC64D4[];
+extern const u16 gUnknown_08DC64E8[];
+extern const u16 gUnknown_08DC64FC[];
+extern const u16 gUnknown_08DC6510[];
+
#endif //GUARD_GRAPHICS_H
diff --git a/include/link_rfu.h b/include/link_rfu.h
index 715b4cdd9..08cab616c 100644
--- a/include/link_rfu.h
+++ b/include/link_rfu.h
@@ -210,6 +210,7 @@ struct UnkRfuStruct_8010A14
extern struct UnkRfuStruct_1 gUnknown_03004140;
extern struct UnkRfuStruct_2 gUnknown_03005000;
+extern u8 gWirelessStatusIndicatorSpriteId;
// Exported ROM declarations
u32 sub_800BEC0(void);
diff --git a/include/m4a.h b/include/m4a.h
index 595379495..4847c12cc 100644
--- a/include/m4a.h
+++ b/include/m4a.h
@@ -8,7 +8,8 @@ void m4aSoundVSyncOn(void);
void m4aSoundInit(void);
void m4aSoundMain(void);
-void m4aSongNumStart(u16);
+void m4aSongNumStart(u16 n);
+void m4aSongNumStartOrChange(u16 n);
void m4aSongNumStop(u16 n);
void m4aMPlayAllStop(void);
void m4aMPlayContinue(struct MusicPlayerInfo *mplayInfo);
diff --git a/include/menu_helpers.h b/include/menu_helpers.h
index ee8501d18..63af4c731 100644
--- a/include/menu_helpers.h
+++ b/include/menu_helpers.h
@@ -20,7 +20,7 @@ void ResetAllBgsCoordinates(void);
void SetVBlankHBlankCallbacksToNull(void);
void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc);
bool16 RunTextPrintersRetIsActive(u8 textPrinterId);
-void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data);
+void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data);
void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo);
bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1);
u8 GetLRKeysState(void);
diff --git a/include/roulette_util.h b/include/roulette_util.h
index 7f0b9cbf8..76752fe74 100644
--- a/include/roulette_util.h
+++ b/include/roulette_util.h
@@ -1,6 +1,8 @@
#ifndef GUARD_ROULETTE_UTIL_H
#define GUARD_ROULETTE_UTIL_H
+#include "roulette.h"
+
struct PulseBlendSettings
{
u16 blendColor;
@@ -41,5 +43,10 @@ void UnmarkUsedPulseBlendPalettes(struct PulseBlend *, u16, u8);
void UpdatePulseBlend(struct PulseBlend *);
void sub_8152008(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height);
void sub_8152058(u16 *dest, u16 *src, u8 left, u8 top, u8 width, u8 height);
+void task_tutorial_controls_fadein(struct UnkStruct0 *r0);
+void sub_8151678(struct UnkStruct0 *r0);
+u8 sub_815168C(struct UnkStruct0 *r0, u8 r1, const struct UnkStruct1 *r2);
+void sub_8151A9C(struct UnkStruct0 *r0, u16 r1);
+void sub_8151A48(struct UnkStruct0 *r0, u16 r1);
#endif // GUARD_ROULETTE_UTIL_H
diff --git a/include/rtc.h b/include/rtc.h
index 5ee6a5316..7a3d3d524 100644
--- a/include/rtc.h
+++ b/include/rtc.h
@@ -44,5 +44,6 @@ void RtcInitLocalTimeOffset(s32 hour, s32 minute);
void RtcCalcLocalTimeOffset(s32 days, s32 hours, s32 minutes, s32 seconds);
void CalcTimeDifference(struct Time *result, struct Time *t1, struct Time *t2);
u32 RtcGetMinuteCount(void);
+u32 RtcGetLocalDayCount(void);
#endif // GUARD_RTC_UTIL_H
diff --git a/include/strings.h b/include/strings.h
index 7c6ca14ba..d16dd21f8 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -403,7 +403,7 @@ extern const u8 gText_PkmnHPRestoredByVar2[];
extern const u8 gText_CantBeUsedOnPkmn[];
extern const u8 gText_CancelParticipation[];
extern const u8 gText_PkmnWasGivenItem[];
-extern const u8 gText_RecievedItemFromPkmn[];
+extern const u8 gText_ReceivedItemFromPkmn[];
extern const u8 gText_SwitchPkmnItem[];
extern const u8 gText_SwitchedPkmnItem[];
extern const u8 gText_BagFullCouldNotRemoveItem[];
@@ -869,6 +869,13 @@ extern const u8 gText_TeachWhichMoveToPkmn[];
extern const u8 gText_GiveUpTeachingNewMove[];
extern const u8 gText_TeachX[];
+extern const u8 gText_Kira[];
+extern const u8 gText_Amy[];
+extern const u8 gText_John[];
+extern const u8 gText_Roy[];
+extern const u8 gText_Gabby[];
+extern const u8 gText_Anna[];
+
extern const u8 gText_DadsAdvice[];
extern const u8 gText_CantDismountBike[];
extern const u8 gText_ItemFinderNothing[];
@@ -1990,4 +1997,222 @@ extern const u8 gText_XSentOverY[];
extern const u8 gText_TakeGoodCareOfX[];
extern const u8 gText_CommunicationStandby5[];
+// roulette
+extern const u8 gUnknown_082A5B89[];
+
+// match call
+extern const u8 MatchCall_WildBattleText1[];
+extern const u8 MatchCall_WildBattleText2[];
+extern const u8 MatchCall_WildBattleText3[];
+extern const u8 MatchCall_WildBattleText4[];
+extern const u8 MatchCall_WildBattleText5[];
+extern const u8 MatchCall_WildBattleText6[];
+extern const u8 MatchCall_WildBattleText7[];
+extern const u8 MatchCall_WildBattleText8[];
+extern const u8 MatchCall_WildBattleText9[];
+extern const u8 MatchCall_WildBattleText10[];
+extern const u8 MatchCall_WildBattleText11[];
+extern const u8 MatchCall_WildBattleText12[];
+extern const u8 MatchCall_WildBattleText13[];
+extern const u8 MatchCall_WildBattleText14[];
+extern const u8 MatchCall_WildBattleText15[];
+extern const u8 MatchCall_NegativeBattleText1[];
+extern const u8 MatchCall_NegativeBattleText2[];
+extern const u8 MatchCall_NegativeBattleText3[];
+extern const u8 MatchCall_NegativeBattleText4[];
+extern const u8 MatchCall_NegativeBattleText5[];
+extern const u8 MatchCall_NegativeBattleText6[];
+extern const u8 MatchCall_NegativeBattleText7[];
+extern const u8 MatchCall_NegativeBattleText8[];
+extern const u8 MatchCall_NegativeBattleText9[];
+extern const u8 MatchCall_NegativeBattleText10[];
+extern const u8 MatchCall_NegativeBattleText11[];
+extern const u8 MatchCall_NegativeBattleText12[];
+extern const u8 MatchCall_NegativeBattleText13[];
+extern const u8 MatchCall_NegativeBattleText14[];
+extern const u8 MatchCall_PositiveBattleText1[];
+extern const u8 MatchCall_PositiveBattleText2[];
+extern const u8 MatchCall_PositiveBattleText3[];
+extern const u8 MatchCall_PositiveBattleText4[];
+extern const u8 MatchCall_PositiveBattleText5[];
+extern const u8 MatchCall_PositiveBattleText6[];
+extern const u8 MatchCall_PositiveBattleText7[];
+extern const u8 MatchCall_PositiveBattleText8[];
+extern const u8 MatchCall_PositiveBattleText9[];
+extern const u8 MatchCall_PositiveBattleText10[];
+extern const u8 MatchCall_PositiveBattleText11[];
+extern const u8 MatchCall_PositiveBattleText12[];
+extern const u8 MatchCall_PositiveBattleText13[];
+extern const u8 MatchCall_PositiveBattleText14[];
+extern const u8 MatchCall_SameRouteBattleRequestText1[];
+extern const u8 MatchCall_SameRouteBattleRequestText2[];
+extern const u8 MatchCall_SameRouteBattleRequestText3[];
+extern const u8 MatchCall_SameRouteBattleRequestText4[];
+extern const u8 MatchCall_SameRouteBattleRequestText5[];
+extern const u8 MatchCall_SameRouteBattleRequestText6[];
+extern const u8 MatchCall_SameRouteBattleRequestText7[];
+extern const u8 MatchCall_SameRouteBattleRequestText8[];
+extern const u8 MatchCall_SameRouteBattleRequestText9[];
+extern const u8 MatchCall_SameRouteBattleRequestText10[];
+extern const u8 MatchCall_SameRouteBattleRequestText11[];
+extern const u8 MatchCall_SameRouteBattleRequestText12[];
+extern const u8 MatchCall_SameRouteBattleRequestText13[];
+extern const u8 MatchCall_SameRouteBattleRequestText14[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText1[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText2[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText3[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText4[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText5[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText6[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText7[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText8[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText9[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText10[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText11[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText12[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText13[];
+extern const u8 MatchCall_DifferentRouteBattleRequestText14[];
+extern const u8 MatchCall_PersonalizedText1[];
+extern const u8 MatchCall_PersonalizedText2[];
+extern const u8 MatchCall_PersonalizedText3[];
+extern const u8 MatchCall_PersonalizedText4[];
+extern const u8 MatchCall_PersonalizedText5[];
+extern const u8 MatchCall_PersonalizedText6[];
+extern const u8 MatchCall_PersonalizedText7[];
+extern const u8 MatchCall_PersonalizedText8[];
+extern const u8 MatchCall_PersonalizedText9[];
+extern const u8 MatchCall_PersonalizedText10[];
+extern const u8 MatchCall_PersonalizedText11[];
+extern const u8 MatchCall_PersonalizedText12[];
+extern const u8 MatchCall_PersonalizedText13[];
+extern const u8 MatchCall_PersonalizedText14[];
+extern const u8 MatchCall_PersonalizedText15[];
+extern const u8 MatchCall_PersonalizedText16[];
+extern const u8 MatchCall_PersonalizedText17[];
+extern const u8 MatchCall_PersonalizedText18[];
+extern const u8 MatchCall_PersonalizedText19[];
+extern const u8 MatchCall_PersonalizedText20[];
+extern const u8 MatchCall_PersonalizedText21[];
+extern const u8 MatchCall_PersonalizedText22[];
+extern const u8 MatchCall_PersonalizedText23[];
+extern const u8 MatchCall_PersonalizedText24[];
+extern const u8 MatchCall_PersonalizedText25[];
+extern const u8 MatchCall_PersonalizedText26[];
+extern const u8 MatchCall_PersonalizedText27[];
+extern const u8 MatchCall_PersonalizedText28[];
+extern const u8 MatchCall_PersonalizedText29[];
+extern const u8 MatchCall_PersonalizedText30[];
+extern const u8 MatchCall_PersonalizedText31[];
+extern const u8 MatchCall_PersonalizedText32[];
+extern const u8 MatchCall_PersonalizedText33[];
+extern const u8 MatchCall_PersonalizedText34[];
+extern const u8 MatchCall_PersonalizedText35[];
+extern const u8 MatchCall_PersonalizedText36[];
+extern const u8 MatchCall_PersonalizedText37[];
+extern const u8 MatchCall_PersonalizedText38[];
+extern const u8 MatchCall_PersonalizedText39[];
+extern const u8 MatchCall_PersonalizedText40[];
+extern const u8 MatchCall_PersonalizedText41[];
+extern const u8 MatchCall_PersonalizedText42[];
+extern const u8 MatchCall_PersonalizedText43[];
+extern const u8 MatchCall_PersonalizedText44[];
+extern const u8 MatchCall_PersonalizedText45[];
+extern const u8 MatchCall_PersonalizedText46[];
+extern const u8 MatchCall_PersonalizedText47[];
+extern const u8 MatchCall_PersonalizedText48[];
+extern const u8 MatchCall_PersonalizedText49[];
+extern const u8 MatchCall_PersonalizedText50[];
+extern const u8 MatchCall_PersonalizedText51[];
+extern const u8 MatchCall_PersonalizedText52[];
+extern const u8 MatchCall_PersonalizedText53[];
+extern const u8 MatchCall_PersonalizedText54[];
+extern const u8 MatchCall_PersonalizedText55[];
+extern const u8 MatchCall_PersonalizedText56[];
+extern const u8 MatchCall_PersonalizedText57[];
+extern const u8 MatchCall_PersonalizedText58[];
+extern const u8 MatchCall_PersonalizedText59[];
+extern const u8 MatchCall_PersonalizedText60[];
+extern const u8 MatchCall_PersonalizedText61[];
+extern const u8 MatchCall_PersonalizedText62[];
+extern const u8 MatchCall_PersonalizedText63[];
+extern const u8 MatchCall_PersonalizedText64[];
+extern const u8 MatchCall_BattleFrontierStreakText1[];
+extern const u8 MatchCall_BattleFrontierStreakText2[];
+extern const u8 MatchCall_BattleFrontierStreakText3[];
+extern const u8 MatchCall_BattleFrontierStreakText4[];
+extern const u8 MatchCall_BattleFrontierStreakText5[];
+extern const u8 MatchCall_BattleFrontierStreakText6[];
+extern const u8 MatchCall_BattleFrontierStreakText7[];
+extern const u8 MatchCall_BattleFrontierStreakText8[];
+extern const u8 MatchCall_BattleFrontierStreakText9[];
+extern const u8 MatchCall_BattleFrontierStreakText10[];
+extern const u8 MatchCall_BattleFrontierStreakText11[];
+extern const u8 MatchCall_BattleFrontierStreakText12[];
+extern const u8 MatchCall_BattleFrontierStreakText13[];
+extern const u8 MatchCall_BattleFrontierStreakText14[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText1[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText2[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText3[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText4[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText5[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText6[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText7[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText8[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText9[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText10[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText11[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText12[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText13[];
+extern const u8 MatchCall_BattleFrontierRecordStreakText14[];
+extern const u8 MatchCall_BattleDomeText1[];
+extern const u8 MatchCall_BattleDomeText2[];
+extern const u8 MatchCall_BattleDomeText3[];
+extern const u8 MatchCall_BattleDomeText4[];
+extern const u8 MatchCall_BattleDomeText5[];
+extern const u8 MatchCall_BattleDomeText6[];
+extern const u8 MatchCall_BattleDomeText7[];
+extern const u8 MatchCall_BattleDomeText8[];
+extern const u8 MatchCall_BattleDomeText9[];
+extern const u8 MatchCall_BattleDomeText10[];
+extern const u8 MatchCall_BattleDomeText11[];
+extern const u8 MatchCall_BattleDomeText12[];
+extern const u8 MatchCall_BattleDomeText13[];
+extern const u8 MatchCall_BattleDomeText14[];
+extern const u8 MatchCall_BattlePikeText1[];
+extern const u8 MatchCall_BattlePikeText2[];
+extern const u8 MatchCall_BattlePikeText3[];
+extern const u8 MatchCall_BattlePikeText4[];
+extern const u8 MatchCall_BattlePikeText5[];
+extern const u8 MatchCall_BattlePikeText6[];
+extern const u8 MatchCall_BattlePikeText7[];
+extern const u8 MatchCall_BattlePikeText8[];
+extern const u8 MatchCall_BattlePikeText9[];
+extern const u8 MatchCall_BattlePikeText10[];
+extern const u8 MatchCall_BattlePikeText11[];
+extern const u8 MatchCall_BattlePikeText12[];
+extern const u8 MatchCall_BattlePikeText13[];
+extern const u8 MatchCall_BattlePikeText14[];
+extern const u8 MatchCall_BattlePyramidText1[];
+extern const u8 MatchCall_BattlePyramidText2[];
+extern const u8 MatchCall_BattlePyramidText3[];
+extern const u8 MatchCall_BattlePyramidText4[];
+extern const u8 MatchCall_BattlePyramidText5[];
+extern const u8 MatchCall_BattlePyramidText6[];
+extern const u8 MatchCall_BattlePyramidText7[];
+extern const u8 MatchCall_BattlePyramidText8[];
+extern const u8 MatchCall_BattlePyramidText9[];
+extern const u8 MatchCall_BattlePyramidText10[];
+extern const u8 MatchCall_BattlePyramidText11[];
+extern const u8 MatchCall_BattlePyramidText12[];
+extern const u8 MatchCall_BattlePyramidText13[];
+extern const u8 MatchCall_BattlePyramidText14[];
+
+// Contest Link
+extern const u8 gText_ColorDarkGrey[];
+extern const u8 gText_CommunicationStandby[];
+extern const u8 gText_AnnouncingResults[];
+extern const u8 gText_PreliminaryResults[];
+extern const u8 gText_Round2Results[];
+extern const u8 gText_Var1sVar2Won[];
+
#endif //GUARD_STRINGS_H
diff --git a/include/tv.h b/include/tv.h
index 5528bada7..ea0226815 100644
--- a/include/tv.h
+++ b/include/tv.h
@@ -48,10 +48,13 @@ void PutPokemonTodayCaughtOnAir(void);
void TV_PutSecretBaseVisitOnTheAir(void);
void PutBattleUpdateOnTheAir(u8 opponentLinkPlayerId, u16 move, u16 speciesPlayer, u16 speciesOpponent);
void BravoTrainerPokemonProfile_BeforeInterview1(u16 move);
+void InterviewBefore(void);
+void InterviewAfter(void);
void UpdateTVScreensOnMap(int, int);
void TV_PrintIntToStringVar(u8 varIdx, int value);
void SaveRecordedItemPurchasesForTVShow(void);
bool8 sub_80EE818(void);
void sub_80EE8C8(u16 winStreak, u8 facilityAndMode);
+void BravoTrainerPokemonProfile_BeforeInterview2(u8 contestStandingPlace);
#endif //GUARD_TV_H
diff --git a/ld_script.txt b/ld_script.txt
index 660c1d60d..be59145a3 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -146,6 +146,7 @@ SECTIONS {
src/record_mixing.o(.text);
src/secret_base.o(.text);
src/tv.o(.text);
+ src/contest_link_80F57C4.o(.text);
asm/contest_link_80F57C4.o(.text);
src/script_pokemon_util_80F87D8.o(.text);
src/field_poison.o(.text);
@@ -154,7 +155,7 @@ SECTIONS {
src/field_special_scene.o(.text);
src/rotating_gate.o(.text);
src/safari_zone.o(.text);
- asm/contest_link_80FC4F4.o(.text);
+ src/contest_link_80FC4F4.o(.text);
src/item_use.o(.text);
src/battle_anim_effects_1.o(.text);
src/battle_anim_effects_2.o(.text);
@@ -206,7 +207,7 @@ SECTIONS {
src/battle_records.o(.text);
src/pokedex_area_screen.o(.text);
src/evolution_scene.o(.text);
- asm/roulette.o(.text);
+ src/roulette.o(.text);
src/pokedex_cry_screen.o(.text);
src/coins.o(.text);
src/landmark.o(.text);
@@ -262,7 +263,7 @@ SECTIONS {
src/lilycove_lady.o(.text);
src/battle_dome.o(.text);
src/battle_palace.o(.text);
- asm/battle_frontier_1.o(.text);
+ src/match_call.o(.text);
src/menu.o(.text);
src/battle_factory_screen.o(.text);
src/apprentice.o(.text);
@@ -289,11 +290,11 @@ SECTIONS {
src/unk_pokedex_area_screen_helper.o(.text);
src/battle_pyramid_bag.o(.text);
asm/pokenav.o(.text);
- src/match_call.o(.text);
+ src/pokenav_match_call.o(.text);
asm/pokenav.o(.text.after.match.call);
src/rayquaza_scene.o(.text);
src/walda_phrase.o(.text);
- asm/contest_link_81D9DE4.o(.text);
+ src/contest_link_81D9DE4.o(.text);
src/gym_leader_rematch.o(.text);
src/unk_transition.o(.text);
src/international_string_util.o(.text);
@@ -524,7 +525,7 @@ SECTIONS {
src/battle_records.o(.rodata);
src/pokedex_area_screen.o(.rodata);
src/evolution_scene.o(.rodata);
- data/roulette.o(.rodata);
+ src/roulette.o(.rodata);
src/pokedex_cry_screen.o(.rodata);
src/landmark.o(.rodata);
src/battle_transition.o(.rodata);
@@ -568,7 +569,7 @@ SECTIONS {
src/lilycove_lady.o(.rodata);
src/battle_dome.o(.rodata);
src/battle_palace.o(.rodata);
- data/battle_frontier_1.o(.rodata);
+ src/match_call.o(.rodata);
src/menu.o(.rodata);
src/battle_factory_screen.o(.rodata);
src/apprentice.o(.rodata);
@@ -593,7 +594,7 @@ SECTIONS {
src/unk_pokedex_area_screen_helper.o(.rodata);
src/battle_pyramid_bag.o(.rodata);
data/pokenav.o(.rodata);
- src/match_call.o(.rodata);
+ src/pokenav_match_call.o(.rodata);
data/pokenav.o(.rodata.after.match.call);
src/rayquaza_scene.o(.rodata);
src/walda_phrase.o(.rodata);
diff --git a/src/battle_anim_80A5C6C.c b/src/battle_anim_80A5C6C.c
index 0800e67a0..3efc86bf8 100644
--- a/src/battle_anim_80A5C6C.c
+++ b/src/battle_anim_80A5C6C.c
@@ -72,10 +72,10 @@ static const struct UCoords8 sBattlerCoords[][4] =
// One entry for each of the four Castform forms.
const struct MonCoords gCastformFrontSpriteCoords[] =
{
- { 0x44, 17 }, // NORMAL
- { 0x66, 9 }, // SUN
- { 0x46, 9 }, // RAIN
- { 0x86, 8 }, // HAIL
+ { .size = 0x44, .y_offset = 17 }, // NORMAL
+ { .size = 0x66, .y_offset = 9 }, // SUN
+ { .size = 0x46, .y_offset = 9 }, // RAIN
+ { .size = 0x86, .y_offset = 8 }, // HAIL
};
static const u8 sCastformElevations[] =
@@ -2216,17 +2216,17 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
switch (attr)
{
case BATTLER_COORD_ATTR_HEIGHT:
- return (coords->coords & 0xf) * 8;
+ return (coords->size & 0xf) * 8;
case BATTLER_COORD_ATTR_WIDTH:
- return (coords->coords >> 4) * 8;
+ return (coords->size >> 4) * 8;
case BATTLER_COORD_ATTR_LEFT:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) - ((coords->coords >> 4) * 4);
+ return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) - ((coords->size >> 4) * 4);
case BATTLER_COORD_ATTR_RIGHT:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + ((coords->coords >> 4) * 4);
+ return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + ((coords->size >> 4) * 4);
case BATTLER_COORD_ATTR_TOP:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) - ((coords->coords & 0xf) * 4);
+ return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) - ((coords->size & 0xf) * 4);
case BATTLER_COORD_ATTR_BOTTOM:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) + ((coords->coords & 0xf) * 4);
+ return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) + ((coords->size & 0xf) * 4);
case BATTLER_COORD_ATTR_RAW_BOTTOM:
ret = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 31;
return ret - coords->y_offset;
diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c
index 33f557388..a7b08a974 100644
--- a/src/battle_controller_link_opponent.c
+++ b/src/battle_controller_link_opponent.c
@@ -1301,7 +1301,7 @@ static void LinkOpponentHandleDrawTrainerPic(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate,
xPos,
- (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 40,
+ (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240;
@@ -1324,7 +1324,7 @@ static void LinkOpponentHandleTrainerSlide(void)
DecompressTrainerFrontPic(trainerPicId, gActiveBattler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
- gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 40, 0x1E);
+ gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32;
diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c
index 78c2c409d..5c9a92744 100644
--- a/src/battle_controller_link_partner.c
+++ b/src/battle_controller_link_partner.c
@@ -1143,7 +1143,7 @@ static void LinkPartnerHandleDrawTrainerPic(void)
DecompressTrainerBackPic(trainerPicId, gActiveBattler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
- gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler));
+ gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240;
diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c
index 4e600ea71..d8a0127d0 100644
--- a/src/battle_controller_opponent.c
+++ b/src/battle_controller_opponent.c
@@ -1292,7 +1292,7 @@ static void OpponentHandleDrawTrainerPic(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate,
xPos,
- (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 40,
+ (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240;
@@ -1362,7 +1362,7 @@ static void OpponentHandleTrainerSlide(void)
DecompressTrainerFrontPic(trainerPicId, gActiveBattler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
- gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 40, 0x1E);
+ gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32;
diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c
index 12ffca381..a6a6ac0f3 100644
--- a/src/battle_controller_player.c
+++ b/src/battle_controller_player.c
@@ -2291,18 +2291,18 @@ static void PlayerHandleDrawTrainerPic(void)
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gPartnerTrainerId != TRAINER_STEVEN_PARTNER)
{
xPos = 90;
- yPos = (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 80;
}
else
{
- yPos = (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80;
}
}
else
{
xPos = 80;
- yPos = (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80;
}
// Use front pic table for any tag battles unless your partner is Steven.
@@ -2365,7 +2365,7 @@ static void PlayerHandleTrainerSlide(void)
DecompressTrainerBackPic(trainerPicId, gActiveBattler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
- gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 80, (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80, 30);
+ gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 80, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96;
diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c
index ddb241b30..3cfc94977 100644
--- a/src/battle_controller_player_partner.c
+++ b/src/battle_controller_player_partner.c
@@ -1308,13 +1308,13 @@ static void PlayerPartnerHandleDrawTrainerPic(void)
{
trainerPicId = TRAINER_BACK_PIC_STEVEN;
xPos = 90;
- yPos = (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80;
}
else
{
trainerPicId = GetFrontierTrainerFrontSpriteId(gPartnerTrainerId);
xPos = 32;
- yPos = (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 80;
}
// Use back pic only if the partner is Steven
diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c
index b1b271bac..03c3c88b2 100644
--- a/src/battle_controller_recorded_opponent.c
+++ b/src/battle_controller_recorded_opponent.c
@@ -1248,7 +1248,7 @@ static void RecordedOpponentHandleDrawTrainerPic(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate,
xPos,
- (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 40,
+ (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240;
diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c
index 301c1f009..9055fc16b 100644
--- a/src/battle_controller_recorded_player.c
+++ b/src/battle_controller_recorded_player.c
@@ -1217,18 +1217,18 @@ static void RecordedPlayerHandleDrawTrainerPic(void)
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
{
xPos = 90;
- yPos = (8 - gTrainerFrontPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 80;
}
else
{
- yPos = (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80;
}
}
else
{
xPos = 80;
- yPos = (8 - gTrainerBackPicCoords[trainerPicId].coords) * 4 + 80;
+ yPos = (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80;
}
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c
index 3f1542edb..54ba04ab4 100644
--- a/src/battle_controller_safari.c
+++ b/src/battle_controller_safari.c
@@ -359,7 +359,7 @@ static void SafariHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(
&gMultiuseSpriteTemplate,
80,
- (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].coords) * 4 + 80,
+ (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80,
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240;
diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c
index ac3604054..9a9773316 100644
--- a/src/battle_controller_wally.c
+++ b/src/battle_controller_wally.c
@@ -1036,7 +1036,7 @@ static void WallyHandleDrawTrainerPic(void)
SetMultiuseSpriteTemplateToTrainerBack(TRAINER_BACK_PIC_WALLY, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate,
80,
- 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].coords),
+ 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size),
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240;
@@ -1051,7 +1051,7 @@ static void WallyHandleTrainerSlide(void)
SetMultiuseSpriteTemplateToTrainerBack(TRAINER_BACK_PIC_WALLY, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate,
80,
- 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].coords),
+ 80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size),
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96;
diff --git a/src/battle_dome.c b/src/battle_dome.c
index 00ae84d09..efc69313e 100644
--- a/src/battle_dome.c
+++ b/src/battle_dome.c
@@ -5847,17 +5847,22 @@ static void sub_8194220(u8 taskId)
gTasks[i].data[0] = 0;
}
ScanlineEffect_Clear();
- for (i = 0; i < 91; i++)
+
+ i = 0;
+ while (i < 91)
{
gScanlineEffectRegBuffers[0][i] = 0x1F0A;
gScanlineEffectRegBuffers[1][i] = 0x1F0A;
+ i++;
}
- for (i = 91; i < 160; i++)
+
+ while (i < 160)
{
- asm(""::"r"(i));
gScanlineEffectRegBuffers[0][i] = 0x1F09;
gScanlineEffectRegBuffers[1][i] = 0x1F09;
+ i++;
}
+
ScanlineEffect_SetParams(gUnknown_0860CF44);
DestroyTask(taskId);
break;
diff --git a/src/battle_main.c b/src/battle_main.c
index df1828d18..4e2a87beb 100644
--- a/src/battle_main.c
+++ b/src/battle_main.c
@@ -656,16 +656,19 @@ static void CB2_InitBattleInternal(void)
gBattle_WIN0V = 0x5051;
ScanlineEffect_Clear();
- for (i = 0; i < 80; i++)
+ i = 0;
+ while (i < 80)
{
gScanlineEffectRegBuffers[0][i] = 0xF0;
gScanlineEffectRegBuffers[1][i] = 0xF0;
+ i++;
}
- for (i = 80; i < 160; i++)
+
+ while (i < 160)
{
- asm(""::"r"(i));
gScanlineEffectRegBuffers[0][i] = 0xFF10;
gScanlineEffectRegBuffers[1][i] = 0xFF10;
+ i++;
}
ScanlineEffect_SetParams(sIntroScanlineParams16Bit);
@@ -2222,16 +2225,19 @@ void sub_8038D64(void)
gBattle_WIN0V = 0x5051;
ScanlineEffect_Clear();
- for (i = 0; i < 80; i++)
+ i = 0;
+ while (i < 80)
{
gScanlineEffectRegBuffers[0][i] = 0xF0;
gScanlineEffectRegBuffers[1][i] = 0xF0;
+ i++;
}
- for (i = 80; i < 160; i++)
+
+ while (i < 160)
{
- asm(""::"r"(i)); // Needed to stop the compiler from optimizing out the loop counter.
gScanlineEffectRegBuffers[0][i] = 0xFF10;
gScanlineEffectRegBuffers[1][i] = 0xFF10;
+ i++;
}
ResetPaletteFade();
diff --git a/src/battle_setup.c b/src/battle_setup.c
index 21386016f..195af0c28 100644
--- a/src/battle_setup.c
+++ b/src/battle_setup.c
@@ -1557,7 +1557,7 @@ static bool32 sub_80B1D94(s32 rematchTableId)
if (rematchTableId >= REMATCH_ELITE_FOUR_ENTRIES)
return TRUE;
else if (rematchTableId == REMATCH_WALLY_ENTRY)
- return (FlagGet(FLAG_0x07E) == FALSE);
+ return (FlagGet(FLAG_DEFEATED_WALLY_VICTORY_ROAD) == FALSE);
else
return FALSE;
}
diff --git a/src/battle_tower.c b/src/battle_tower.c
index 9e546b0c8..deb5acb2e 100644
--- a/src/battle_tower.c
+++ b/src/battle_tower.c
@@ -3158,10 +3158,10 @@ void sub_81653CC(void)
{
if (gSaveBlock2Ptr->frontier.field_CA8 == 1)
sub_80F01B8();
- if (FlagGet(FLAG_0x077) == TRUE)
+ if (FlagGet(FLAG_CANCEL_BATTLE_ROOM_CHALLENGE) == TRUE)
{
sub_80F01B8();
- FlagClear(FLAG_0x077);
+ FlagClear(FLAG_CANCEL_BATTLE_ROOM_CHALLENGE);
}
}
diff --git a/src/contest.c b/src/contest.c
index 949be7941..7decf88fc 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -176,7 +176,7 @@ EWRAM_DATA s16 gUnknown_02039F08[4] = {0};
EWRAM_DATA s16 gUnknown_02039F10[4] = {0};
EWRAM_DATA s16 gUnknown_02039F18[4] = {0};
EWRAM_DATA u8 gContestFinalStandings[4] = {0};
-EWRAM_DATA u8 gUnknown_02039F24 = 0;
+EWRAM_DATA u8 gContestMonPartyIndex = 0;
EWRAM_DATA u8 gContestPlayerMonIndex = 0;
EWRAM_DATA u8 gUnknown_02039F26[4] = {0};
EWRAM_DATA u8 gIsLinkContest = 0;
@@ -185,8 +185,8 @@ EWRAM_DATA u8 gIsLinkContest = 0;
EWRAM_DATA u8 gUnknown_02039F2B = 0;
EWRAM_DATA u16 gSpecialVar_ContestCategory = 0;
EWRAM_DATA u16 gSpecialVar_ContestRank = 0;
-EWRAM_DATA u8 gUnknown_02039F30 = 0;
-EWRAM_DATA u8 gUnknown_02039F31 = 0;
+EWRAM_DATA u8 gNumLinkContestPlayers = 0;
+EWRAM_DATA u8 gHighestRibbonRank = 0;
EWRAM_DATA struct ContestResources * gContestResources = NULL;
EWRAM_DATA u8 sContestBgCopyFlags = 0;
EWRAM_DATA struct ContestWinner gUnknown_02039F3C = {0};
@@ -932,9 +932,9 @@ void sub_80D8A88(u8 taskId)
{
s32 i;
- for (i = 0; i + gUnknown_02039F30 < 4; i++)
+ for (i = 0; i + gNumLinkContestPlayers < 4; i++)
{
- gContestResources->field_4[gUnknown_02039F30 + i].currMove = sub_80DB8B8(gUnknown_02039F30 + i);
+ gContestResources->field_4[gNumLinkContestPlayers + i].currMove = sub_80DB8B8(gNumLinkContestPlayers + i);
}
}
gTasks[taskId].data[0] = 0;
@@ -2110,7 +2110,7 @@ void sub_80DAB8C(u8 contestType, u8 rank)
opponentsCount--;
}
- sub_80DA8C8(gUnknown_02039F24);
+ sub_80DA8C8(gContestMonPartyIndex);
}
#ifdef NONMATCHING
@@ -2121,7 +2121,7 @@ void sub_80DACBC(u8 contestType, u8 rank, bool32 isPostgame)
u8 opponents[100];
const u8 * r6;
- if (gUnknown_02039F30 == 4)
+ if (gNumLinkContestPlayers == 4)
return;
r6 = gUnknown_085898A4;
@@ -2151,14 +2151,14 @@ void sub_80DACBC(u8 contestType, u8 rank, bool32 isPostgame)
opponents[opponentsCount++] = i;
}
opponents[opponentsCount] = 0xFF;
- for (i = 0; i < 4 - gUnknown_02039F30; i++)
+ for (i = 0; i < 4 - gNumLinkContestPlayers; i++)
{
u16 rnd = sub_80F903C() % opponentsCount;
s32 j;
- gContestMons[gUnknown_02039F30 + i] = gContestOpponents[opponents[rnd]];
- sub_80DF9D4(gContestMons[gUnknown_02039F30 + i].trainerName);
- sub_80DF9E0(gContestMons[gUnknown_02039F30 + i].nickname, GAME_LANGUAGE);
+ gContestMons[gNumLinkContestPlayers + i] = gContestOpponents[opponents[rnd]];
+ sub_80DF9D4(gContestMons[gNumLinkContestPlayers + i].trainerName);
+ sub_80DF9E0(gContestMons[gNumLinkContestPlayers + i].nickname, GAME_LANGUAGE);
for (j = rnd; opponents[j] != 0xFF; j++)
opponents[j] = opponents[j + 1];
opponentsCount--;
@@ -2178,7 +2178,7 @@ NAKED void sub_80DACBC(u8 contestType, u8 rank, bool32 isPostgame)
"\tlsls r1, 24\n"
"\tlsrs r2, r1, 24\n"
"\tmovs r7, 0\n"
- "\tldr r0, =gUnknown_02039F30\n"
+ "\tldr r0, =gNumLinkContestPlayers\n"
"\tldrb r1, [r0]\n"
"\tmov r9, r0\n"
"\tcmp r1, 0x4\n"
@@ -2471,12 +2471,12 @@ u16 sub_80DAFE0(u8 who, u8 contestCategory)
return statMain + (statSub1 + statSub2 + gContestMons[who].sheen) / 2;
}
-void sub_80DB09C(u8 a0)
+void sub_80DB09C(u8 contestCategory)
{
s32 i;
for (i = 0; i < 4; i++)
- gContestMonConditions[i] = sub_80DAFE0(i, a0);
+ gContestMonConditions[i] = sub_80DAFE0(i, contestCategory);
}
u8 sub_80DB0C4(void)
diff --git a/src/contest_link_80F57C4.c b/src/contest_link_80F57C4.c
new file mode 100644
index 000000000..721a4f870
--- /dev/null
+++ b/src/contest_link_80F57C4.c
@@ -0,0 +1,1443 @@
+#include "global.h"
+#include "battle.h"
+#include "bg.h"
+#include "contest.h"
+#include "contest_link_80F57C4.h"
+#include "contest_painting.h"
+#include "decompress.h"
+#include "dma3.h"
+#include "event_data.h"
+#include "field_specials.h"
+#include "gpu_regs.h"
+#include "graphics.h"
+#include "international_string_util.h"
+#include "link.h"
+#include "link_rfu.h"
+#include "load_save.h"
+#include "main.h"
+#include "overworld.h"
+#include "palette.h"
+#include "pokedex.h"
+#include "pokemon.h"
+#include "pokemon_icon.h"
+#include "random.h"
+#include "save.h"
+#include "scanline_effect.h"
+#include "sound.h"
+#include "string_util.h"
+#include "strings.h"
+#include "task.h"
+#include "text.h"
+#include "tv.h"
+#include "util.h"
+#include "window.h"
+#include "constants/game_stat.h"
+#include "constants/rgb.h"
+#include "constants/songs.h"
+#include "constants/vars.h"
+
+struct ContestLinkUnk0
+{
+ u8 unk0;
+ u8 unk1;
+ u8 taskId;
+ u8 unk3;
+ u8 unk4;
+ u8 unk5;
+ u8 unk6;
+ u8 filler7[0x1];
+ u8 spriteId;
+ u8 unk9;
+ u8 unkA;
+ u8 fillerB[0x9];
+ u8 unk14;
+ u8 filler15[0x3];
+};
+
+struct ContestLinkUnk4
+{
+ u8 filler0[0x50];
+};
+
+struct ContestLink80F57C4
+{
+ struct ContestLinkUnk0 *unk0;
+ struct ContestLinkUnk4 *unk4;
+ u8 filler8[0x4];
+ u8 *unkC[4];
+};
+
+extern const struct CompressedSpriteSheet gMonFrontPicTable[];
+
+extern struct ContestLink80F57C4 *gUnknown_0203A034;
+
+extern const struct BgTemplate gUnknown_0858D888[4];
+extern const struct WindowTemplate gUnknown_0858D898[];
+extern const struct CompressedSpriteSheet gUnknown_0858D878[];
+extern const struct CompressedSpritePalette gUnknown_0858D880[];
+extern const struct SpriteSheet gUnknown_0858D8E0;
+extern const struct SpriteTemplate gSpriteTemplate_858D8C8;
+extern const u8 gUnknown_0858D8E8[];
+extern const u8 gUnknown_0858D6D0[];
+extern const struct SpriteTemplate gSpriteTemplate_858D7F8;
+extern const struct SpriteSheet gUnknown_0858D810[];
+extern const struct SpritePalette gUnknown_0858D850;
+
+static void sub_80F6A9C(void);
+static void sub_80F71C8(void);
+u8 sub_80F7310(u8, u8);
+s8 sub_80F7364(u8, u8);
+void sub_80F7ED0(int, u8 *, int);
+void sub_80F7DF4(void);
+static void sub_80F6A64(u8, u8);
+static void sub_80F6DC0(void);
+static void sub_80F6AE8(void);
+static void sub_80F5CE4(u8);
+static void sub_80F5C00(void);
+static void sub_80F68B4(u8);
+void sub_80F7880(void);
+static void sub_80F5C24(void);
+static void sub_80F707C(const u8 *);
+static void sub_80F5ED8(u8);
+static void sub_80F5F14(u8);
+static void sub_80F5F30(u8);
+static void sub_80F5F74(u8);
+static void sub_80F7144(void);
+static void sub_80F68F0(u8);
+s16 sub_80F6B78(const u8 *, u8);
+static void sub_80F6E9C(s16, u16, u16, u16);
+static void sub_80F6058(u8);
+void sub_80F7A80(u8, u8);
+static void sub_80F6EF4(u16);
+static void sub_80F60F0(u8);
+static void sub_80F616C(u8);
+static void sub_80F6204(u8);
+void sub_80F73DC(u8);
+void sub_80F74BC(u8);
+void sub_80F77E0(u8, u8);
+static void sub_80F6404(u8);
+void sub_80F75A8(struct Sprite *);
+void sub_80F7670(u8);
+void sub_80F7620(struct Sprite *);
+static void sub_80F66B4(u8);
+static void sub_80F671C(u8);
+static void sub_80F677C(u8);
+static void sub_80F67C4(u8);
+static void sub_80F6820(u8);
+void sub_80F7E64(void);
+static void sub_80F6F68(struct Sprite *);
+static void sub_80F7014(struct Sprite *);
+static void sub_80F6FDC(struct Sprite *);
+
+void sub_80F57C4(void)
+{
+ int i;
+
+ SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP);
+ ResetBgsAndClearDma3BusyFlags(0);
+ InitBgsFromTemplates(0, gUnknown_0858D888, ARRAY_COUNT(gUnknown_0858D888));
+ for (i = 0; i < 4; i++)
+ SetBgTilemapBuffer(i, gUnknown_0203A034->unkC[i]);
+
+ InitWindows(gUnknown_0858D898);
+ DeactivateAllTextPrinters();
+ SetGpuReg(REG_OFFSET_MOSAIC, 0);
+ SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR);
+ SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_CLR | WINOUT_WINOBJ_BG_ALL | WINOUT_WINOBJ_OBJ | WINOUT_WINOBJ_CLR);
+ SetGpuReg(REG_OFFSET_WIN0H, 0);
+ SetGpuReg(REG_OFFSET_WIN0V, 0);
+ SetGpuReg(REG_OFFSET_WIN1H, 0);
+ SetGpuReg(REG_OFFSET_WIN1V, 0);
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDALPHA, 0);
+ SetGpuReg(REG_OFFSET_BLDY, 0);
+ SetGpuReg(REG_OFFSET_BG0HOFS, 0);
+ SetGpuReg(REG_OFFSET_BG0VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG1HOFS, 0);
+ SetGpuReg(REG_OFFSET_BG1VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG2HOFS, 0);
+ SetGpuReg(REG_OFFSET_BG2VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG3HOFS, 0);
+ SetGpuReg(REG_OFFSET_BG3VOFS, 0);
+ SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON);
+ gBattle_BG0_X = 0;
+ gBattle_BG0_Y = 0;
+ gBattle_BG1_X = 0;
+ gBattle_BG1_Y = 0;
+ gBattle_BG2_X = 0;
+ gBattle_BG2_Y = 0;
+ gBattle_BG3_X = 0;
+ gBattle_BG3_Y = 0;
+ gBattle_WIN0H = 0;
+ gBattle_WIN0V = 0;
+ gBattle_WIN1H = 0;
+ gBattle_WIN1V = 0;
+}
+
+void sub_80F591C(void)
+{
+ int i, j;
+ s8 var0;
+ s8 var1;
+ int var2;
+ u16 tile1, tile2;
+
+ LZDecompressVram(gUnknown_08C19588, (void *)BG_CHAR_ADDR(0));
+ CopyToBgTilemapBuffer(3, gUnknown_08C1A12C, 0, 0);
+ CopyToBgTilemapBuffer(2, gUnknown_08C1A000, 0, 0);
+ CopyToBgTilemapBuffer(0, gUnknown_08C19EEC, 0, 0);
+ sub_80F71C8();
+ LoadCompressedPalette(gUnknown_08C1A2B4, 0, 0x200);
+ LoadPalette(gUnknown_0858D6B0, 0xF0, 0x20);
+
+ for (i = 0; i < 4; i++)
+ {
+ var0 = sub_80F7310(i, 1);
+ var1 = sub_80F7364(i, 1);
+ for (j = 0; j < 10; j++)
+ {
+ tile1 = 0x60B2;
+ if (j < var0)
+ tile1 += 2;
+
+ var2 = var1;
+ if (var1 < 0)
+ var2 = -var2;
+
+ if (j < var2)
+ {
+ tile2 = 0x60A4;
+ if (var1 < 0)
+ tile2 += 2;
+ }
+ else
+ {
+ tile2 = 0x60A2;
+ }
+
+ FillBgTilemapBufferRect_Palette0(1, tile1, j + 19, i * 3 + 5, 1, 1);
+ FillBgTilemapBufferRect_Palette0(1, tile2, j + 19, i * 3 + 6, 1, 1);
+ }
+ }
+
+ CopyBgTilemapBufferToVram(0);
+ CopyBgTilemapBufferToVram(1);
+ CopyBgTilemapBufferToVram(2);
+ CopyBgTilemapBufferToVram(3);
+ ShowBg(0);
+ ShowBg(1);
+ ShowBg(2);
+ ShowBg(3);
+}
+
+static void sub_80F5A74(u8 monIndex)
+{
+ struct ContestPokemon *mon = &gContestMons[monIndex];
+ u8 *str = gDisplayedStringBattle;
+ if (monIndex == gContestPlayerMonIndex)
+ str = StringCopy(gDisplayedStringBattle, gText_ColorDarkGrey);
+
+ StringCopy(str, mon->nickname);
+ sub_80F7ED0(monIndex, gDisplayedStringBattle, 0);
+ StringCopy(str, gText_Slash);
+ StringAppend(str, mon->trainerName);
+ sub_80F7ED0(monIndex, gDisplayedStringBattle, 50);
+}
+
+void sub_80F5AE0(void)
+{
+ int i;
+
+ for (i = 0; i < 4; i++)
+ sub_80F5A74(i);
+
+ CopyBgTilemapBufferToVram(1);
+}
+
+void sub_80F5B00(void)
+{
+ gPaletteFade.bufferTransferDisabled = 1;
+ SetVBlankCallback(NULL);
+ sub_80F7DF4();
+ sub_80F57C4();
+ ScanlineEffect_Clear();
+ ResetPaletteFade();
+ ResetSpriteData();
+ ResetTasks();
+ FreeAllSpritePalettes();
+ sub_80F591C();
+ sub_80F6A9C();
+ sub_80F6A64(0, 1);
+ sub_80F5AE0();
+ memset(gUnknown_0203A034->unk0, 0, sizeof(*gUnknown_0203A034->unk0));
+ memset(gUnknown_0203A034->unk4, 0, sizeof(*gUnknown_0203A034->unk4));
+ sub_80F6DC0();
+ sub_80F6AE8();
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
+ gPaletteFade.bufferTransferDisabled = 0;
+ gUnknown_0203A034->unk0->taskId = CreateTask(sub_80F5CE4, 5);
+ SetMainCallback2(sub_80F5C00);
+ gBattle_WIN1H = 0x00F0;
+ gBattle_WIN1V = 0x80A0;
+ CreateTask(sub_80F68B4, 20);
+ sub_80F7880();
+ if (gIsLinkContest & 0x2)
+ gPaletteFade.bufferTransferDisabled = 1;
+ else
+ PlayBGM(MUS_CON_K);
+
+ SetVBlankCallback(sub_80F5C24);
+}
+
+static void sub_80F5C00(void)
+{
+ AnimateSprites();
+ BuildOamBuffer();
+ RunTasks();
+ UpdatePaletteFade();
+ CopyBgTilemapBufferToVram(1);
+ CopyBgTilemapBufferToVram(2);
+}
+
+static void sub_80F5C24(void)
+{
+ SetGpuReg(REG_OFFSET_BG0HOFS, gBattle_BG0_X);
+ SetGpuReg(REG_OFFSET_BG0VOFS, gBattle_BG0_Y);
+ SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
+ SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y);
+ SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X);
+ SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
+ SetGpuReg(REG_OFFSET_BG3HOFS, gBattle_BG3_X);
+ SetGpuReg(REG_OFFSET_BG3VOFS, gBattle_BG3_Y);
+ SetGpuReg(REG_OFFSET_WIN0H, gBattle_WIN0H);
+ SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V);
+ SetGpuReg(REG_OFFSET_WIN1H, gBattle_WIN1H);
+ SetGpuReg(REG_OFFSET_WIN1V, gBattle_WIN1V);
+ LoadOam();
+ ProcessSpriteCopyRequests();
+ TransferPlttBuffer();
+ ScanlineEffect_InitHBlankDmaTransfer();
+}
+
+static void sub_80F5CE4(u8 taskId)
+{
+ u16 var;
+
+ if (gIsLinkContest & 1)
+ {
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ sub_80DBED4();
+ if (gContestFinalStandings[gContestPlayerMonIndex] == 0)
+ {
+ IncrementGameStat(GAME_STAT_WON_LINK_CONTEST);
+ gSpecialVar_0x8005 = 8;
+ InterviewBefore();
+ if (gSpecialVar_Result != 1)
+ InterviewAfter();
+ }
+
+ sub_813BADC(2);
+ sub_80DEDA8(gSpecialVar_ContestRank);
+ sub_80DEDA8(0xFE);
+ gUnknown_02039F5C = 1;
+ gUnknown_02039F5D = sub_80DEFA8(0xFE, 0);
+ var = VarGet(VAR_0x4086);
+ VarSet(VAR_0x4086, 0);
+ SetContinueGameWarpStatusToDynamicWarp();
+ TrySavingData(SAVE_LINK);
+ ClearContinueGameWarpStatus2();
+ VarSet(VAR_0x4086, var);
+ gTasks[taskId].data[0]++;
+ break;
+ case 1:
+ gTasks[taskId].data[0]++;
+ if (!(gIsLinkContest & 0x2))
+ gTasks[taskId].data[0] = 100;
+ break;
+ case 2:
+ if (IsLinkTaskFinished())
+ {
+ sub_800ADF8();
+ gTasks[taskId].data[0]++;
+ }
+ return;
+ case 3:
+ if (IsLinkTaskFinished() == TRUE)
+ {
+ PlayBGM(MUS_CON_K);
+ gPaletteFade.bufferTransferDisabled = 0;
+ gTasks[taskId].data[0]++;
+ break;
+ }
+ return;
+ }
+ }
+
+ if (!gPaletteFade.active)
+ {
+ gTasks[taskId].data[0] = 0;
+ if (gIsLinkContest & 0x1)
+ {
+ sub_80F707C(gText_CommunicationStandby);
+ gTasks[taskId].func = sub_80F5ED8;
+ }
+ else
+ {
+ IncrementGameStat(GAME_STAT_ENTERED_CONTEST);
+ if (gContestFinalStandings[gContestPlayerMonIndex] == 0)
+ IncrementGameStat(GAME_STAT_WON_CONTEST);
+
+ sub_80DEDA8(gSpecialVar_ContestRank);
+ sub_80DEDA8(0xFE);
+ gUnknown_02039F5C = 1;
+ gUnknown_02039F5D = sub_80DEFA8(0xFE, 0);
+ sub_813BADC(2);
+ gTasks[taskId].func = sub_80F5F74;
+ }
+ }
+}
+
+static void sub_80F5ED8(u8 taskId)
+{
+ if (gReceivedRemoteLinkPlayers)
+ {
+ CreateTask(sub_80F5F14, 0);
+ gTasks[taskId].func = TaskDummy;
+ }
+}
+
+static void sub_80F5F14(u8 taskId)
+{
+ SetTaskFuncWithFollowupFunc(taskId, sub_80FC998, sub_80F5F30);
+}
+
+static void sub_80F5F30(u8 taskId)
+{
+ if (IsLinkTaskFinished())
+ {
+ DestroyTask(taskId);
+ gTasks[gUnknown_0203A034->unk0->taskId].func = sub_80F5F74;
+ sub_80F7144();
+ }
+}
+
+static void sub_80F5F74(u8 taskId)
+{
+ s16 var0;
+
+ if (gTasks[taskId].data[0] == 0)
+ {
+ CreateTask(sub_80F68F0, 20);
+ var0 = sub_80F6B78(gText_AnnouncingResults, gUnknown_0203A034->unk0->unk0);
+ sub_80F6E9C(var0, 144, 120, 1088);
+ gTasks[taskId].data[0]++;
+ }
+ else if (gTasks[taskId].data[0] == 1)
+ {
+ if (gUnknown_0203A034->unk0->unk4 == 0)
+ {
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[0]++;
+ }
+ }
+ else if (gTasks[taskId].data[0] == 2)
+ {
+ if (++gTasks[taskId].data[1] == 21)
+ {
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[0]++;
+ }
+ }
+ else if (gTasks[taskId].data[0] == 3)
+ {
+ var0 = sub_80F6B78(gText_PreliminaryResults, gUnknown_0203A034->unk0->unk0);
+ sub_80F6E9C(var0, 144, -1, 1088);
+ gTasks[taskId].data[0]++;
+ }
+ else if (gTasks[taskId].data[0] == 4)
+ {
+ if (gUnknown_0203A034->unk0->unk4 == 2)
+ {
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].func = sub_80F6058;
+ }
+ }
+}
+
+static void sub_80F6058(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (!gUnknown_0203A034->unk0->unkA)
+ {
+ sub_80F7A80(0, gTasks[taskId].data[2]++);
+ if (!gUnknown_0203A034->unk0->unk14)
+ gTasks[taskId].data[0] = 2;
+ else
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (!gUnknown_0203A034->unk0->unk14)
+ gTasks[taskId].data[0] = 0;
+ break;
+ case 2:
+ sub_80F6EF4(1088);
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[2] = 0;
+ gTasks[taskId].func = sub_80F60F0;
+ break;
+ }
+}
+
+static void sub_80F60F0(u8 taskId)
+{
+ s16 var0;
+
+ if (gUnknown_0203A034->unk0->unk4 == 0)
+ {
+ if (++gTasks[taskId].data[1] == 21)
+ {
+ gTasks[taskId].data[1] = 0;
+ var0 = sub_80F6B78(gText_Round2Results, gUnknown_0203A034->unk0->unk0);
+ sub_80F6E9C(var0, 144, -1, 1088);
+ }
+ }
+ else if (gUnknown_0203A034->unk0->unk4 == 2)
+ {
+ gTasks[taskId].func = sub_80F616C;
+ }
+}
+
+static void sub_80F616C(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (!gUnknown_0203A034->unk0->unkA)
+ {
+ sub_80F7A80(1, gTasks[taskId].data[2]++);
+ if (!gUnknown_0203A034->unk0->unk14)
+ gTasks[taskId].data[0] = 2;
+ else
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (!gUnknown_0203A034->unk0->unk14)
+ gTasks[taskId].data[0] = 0;
+ break;
+ case 2:
+ sub_80F6EF4(1088);
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].func = sub_80F6204;
+ break;
+ }
+}
+
+static void sub_80F6204(u8 taskId)
+{
+ int i;
+ u8 newTaskId;
+ u8 buffer[100];
+ s16 var0;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (!gUnknown_0203A034->unk0->unk4)
+ gTasks[taskId].data[0]++;
+ break;
+ case 1:
+ if (++gTasks[taskId].data[1] == 31)
+ {
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ for (i = 0; i < 4; i++)
+ {
+ newTaskId = CreateTask(sub_80F73DC, 10);
+ gTasks[newTaskId].data[0] = gContestFinalStandings[i];
+ gTasks[newTaskId].data[1] = i;
+ }
+ gTasks[taskId].data[0]++;
+ break;
+ case 3:
+ if (gUnknown_0203A034->unk0->unk5 == 4)
+ {
+ if (++gTasks[taskId].data[1] == 31)
+ {
+ gTasks[taskId].data[1] = 0;
+ CreateTask(sub_80F74BC, 10);
+ gTasks[taskId].data[0]++;
+ for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
+ ;
+
+ sub_80F77E0(i, 14);
+ }
+ }
+ break;
+ case 4:
+ if (++gTasks[taskId].data[1] == 21)
+ {
+ gTasks[taskId].data[1] = 0;
+ for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
+ ;
+
+ StringCopy(gStringVar1, gContestMons[i].trainerName);
+ sub_81DB5AC(gStringVar1);
+ StringCopy(gStringVar2, gContestMons[i].nickname);
+ StringExpandPlaceholders(buffer, gText_Var1sVar2Won);
+ var0 = sub_80F6B78(buffer, gUnknown_0203A034->unk0->unk0);
+ sub_80F6E9C(var0, 144, -1, 1088);
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 5:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].func = sub_80F6404;
+ break;
+ }
+}
+
+static void sub_80F6404(u8 taskId)
+{
+ int i;
+ u8 spriteId;
+ u16 species;
+ u32 otId;
+ u32 personality;
+ const struct CompressedSpritePalette *pokePal;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ gBattle_WIN0H = 0x00F0;
+ gBattle_WIN0V = 0x5050;
+ for (i = 0; i < 4 && gContestFinalStandings[i] != 0; i++)
+ ;
+
+ species = gContestMons[i].species;
+ personality = gContestMons[i].personality;
+ otId = gContestMons[i].otId;
+ if (i == gContestPlayerMonIndex)
+ {
+ HandleLoadSpecialPokePic_2(
+ &gMonFrontPicTable[species],
+ gMonSpritesGfxPtr->sprites[1],
+ species,
+ personality);
+ }
+ else
+ {
+ HandleLoadSpecialPokePic_DontHandleDeoxys(
+ &gMonFrontPicTable[species],
+ gMonSpritesGfxPtr->sprites[1],
+ species,
+ personality);
+ }
+
+ pokePal = GetMonSpritePalStructFromOtIdPersonality(species, otId, personality);
+ LoadCompressedSpritePalette(pokePal);
+ SetMultiuseSpriteTemplateToPokemon(species, B_POSITION_OPPONENT_LEFT);
+ gMultiuseSpriteTemplate.paletteTag = pokePal->tag;
+ spriteId = CreateSprite(&gMultiuseSpriteTemplate, 272, 80, 10);
+ gSprites[spriteId].data[1] = species;
+ gSprites[spriteId].oam.priority = 0;
+ gSprites[spriteId].callback = sub_80F75A8;
+ gUnknown_0203A034->unk0->spriteId = spriteId;
+ LoadCompressedSpriteSheet(gUnknown_0858D878);
+ LoadCompressedSpritePalette(gUnknown_0858D880);
+ CreateTask(sub_80F7670, 10);
+ gTasks[taskId].data[0]++;
+ break;
+ case 1:
+ if (++gTasks[taskId].data[3] == 1)
+ {
+ u8 counter;
+ gTasks[taskId].data[3] = 0;
+ gTasks[taskId].data[2] += 2;
+ if (gTasks[taskId].data[2] > 32)
+ gTasks[taskId].data[2] = 32;
+
+ counter = gTasks[taskId].data[2];
+ gBattle_WIN0V = ((80 - counter) << 8) | (80 + counter);
+ if (counter == 32)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ if (gUnknown_0203A034->unk0->unk6 == 1)
+ gTasks[taskId].data[0]++;
+ break;
+ case 3:
+ if (++gTasks[taskId].data[1] == 121)
+ {
+ gTasks[taskId].data[1] = 0;
+ gSprites[gUnknown_0203A034->unk0->spriteId].callback = sub_80F7620;
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 4:
+ if (gUnknown_0203A034->unk0->unk6 == 2)
+ {
+ u8 top = (gBattle_WIN0V >> 8);
+ top += 2;
+ if (top > 80)
+ top = 80;
+
+ gBattle_WIN0V = (top << 8) | (160 - top);;
+ if (top == 80)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 5:
+ if (gUnknown_0203A034->unk0->unk6 == 2)
+ {
+ gUnknown_0203A034->unk0->unk9 = 1;
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].func = sub_80F66B4;
+ }
+ break;
+ }
+}
+
+static void sub_80F66B4(u8 taskId)
+{
+ int i;
+ u16 nationalDexNum;
+
+ if (gMain.newKeys & A_BUTTON)
+ {
+ if (!(gIsLinkContest & 0x1))
+ {
+ for (i = 0; i < 4; i++)
+ {
+ nationalDexNum = SpeciesToNationalPokedexNum(gContestMons[i].species);
+ GetSetPokedexFlag(nationalDexNum, FLAG_SET_SEEN);
+ }
+ }
+
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].func = sub_80F671C;
+ }
+}
+
+static void sub_80F671C(u8 taskId)
+{
+ if (gIsLinkContest & 0x1)
+ {
+ if (!gTasks[taskId].data[10])
+ {
+ sub_80F707C(gText_CommunicationStandby);
+ sub_800AC34();
+ gTasks[taskId].func = sub_80F677C;
+ }
+ }
+ else
+ {
+ gTasks[taskId].func = sub_80F67C4;
+ }
+}
+
+static void sub_80F677C(u8 taskId)
+{
+ if (!gReceivedRemoteLinkPlayers)
+ {
+ if (gIsLinkContest & 0x2)
+ sub_800E084();
+
+ sub_80F7144();
+ gTasks[taskId].func = sub_80F67C4;
+ }
+}
+
+static void sub_80F67C4(u8 taskId)
+{
+ if (!(gIsLinkContest & 0x1))
+ BravoTrainerPokemonProfile_BeforeInterview2(gContestFinalStandings[gContestPlayerMonIndex]);
+
+ BeginHardwarePaletteFade(0xFF, 0, 0, 16, 0);
+ gTasks[taskId].func = sub_80F6820;
+}
+
+static void sub_80F6820(u8 taskId)
+{
+ if (!gPaletteFade.active)
+ {
+ if (gTasks[taskId].data[1] == 0)
+ {
+ DestroyTask(gUnknown_0203A034->unk0->unk3);
+ BlendPalettes(0x0000FFFF, 16, RGB_BLACK);
+ gTasks[taskId].data[1]++;
+ }
+ else if (gTasks[taskId].data[1] == 1)
+ {
+ BlendPalettes(0xFFFF0000, 16, RGB_BLACK);
+ gTasks[taskId].data[1]++;
+ }
+ else
+ {
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDY, 0);
+ DestroyTask(taskId);
+ FreeAllWindowBuffers();
+ SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
+ sub_80F7E64();
+ }
+ }
+}
+
+static void sub_80F68B4(u8 taskId)
+{
+ gBattle_BG3_X += 2;
+ gBattle_BG3_Y += 1;
+ if (gBattle_BG3_X > 255)
+ gBattle_BG3_X -= 255;
+ if (gBattle_BG3_Y > 255)
+ gBattle_BG3_Y -= 255;
+}
+
+static void sub_80F68F0(u8 taskId)
+{
+ if (++gTasks[taskId].data[0] == 2)
+ {
+ gTasks[taskId].data[0] = 0;
+ if (gTasks[taskId].data[2] == 0)
+ gTasks[taskId].data[1]++;
+ else
+ gTasks[taskId].data[1]--;
+
+ if (gTasks[taskId].data[1] == 16)
+ gTasks[taskId].data[2] = 1;
+ else if (gTasks[taskId].data[1] == 0)
+ gTasks[taskId].data[2] = 0;
+
+ BlendPalette(0x6B, 1, gTasks[taskId].data[1], RGB(30, 22, 11));
+ BlendPalette(0x68, 1, gTasks[taskId].data[1], RGB_WHITE);
+ BlendPalette(0x6E, 1, gTasks[taskId].data[1], RGB(30, 29, 29));
+ }
+
+ if (gTasks[taskId].data[1] == 0)
+ gUnknown_0203A034->unk0->unkA = 0;
+ else
+ gUnknown_0203A034->unk0->unkA = 1;
+}
+
+void sub_80F69B8(u16 species, u8 monIndex, u8 arg2, u8 arg3, u32 personality)
+{
+ u8 frameNum;
+ const u8 *iconPtr;
+ u16 var0;
+ u16 var1;
+
+ u8 *contestPlayerMonIndex = &gContestPlayerMonIndex; // fake match
+ frameNum = (monIndex == *contestPlayerMonIndex) ? 1 : 0;
+
+ iconPtr = GetMonIconPtr(species, personality, frameNum);
+ iconPtr += arg2 * 0x200 + 0x80;
+ if (arg3)
+ {
+ RequestDma3Copy(iconPtr, (void *)BG_CHAR_ADDR(1) + monIndex * 0x200, 0x180, 1);
+ var0 = ((monIndex + 10) << 12);
+ var1 = (monIndex * 0x10 + 0x200);
+ WriteSequenceToBgTilemapBuffer(1, var1 | var0, 3, monIndex * 3 + 4, 4, 3, 17, 1);
+ }
+ else
+ {
+ RequestDma3Copy(iconPtr, (void *)BG_CHAR_ADDR(1) + monIndex * 0x200, 0x180, 1);
+ }
+}
+
+static void sub_80F6A64(u8 arg0, u8 arg1)
+{
+ int i;
+
+ for (i = 0; i < 4; i++)
+ sub_80F69B8(gContestMons[i].species, i, arg0, arg1, gContestMons[i].personality);
+}
+
+static void sub_80F6A9C(void)
+{
+ int i;
+ register u16 species asm("r0");
+
+ for (i = 0; i < 4; i++)
+ {
+ species = GetIconSpecies(gContestMons[i].species, 0);
+ LoadPalette(gMonIconPalettes[gMonIconPaletteIndices[species]], i * 0x10 + 0xA0, 0x20);
+ }
+}
+
+static void sub_80F6AE8(void)
+{
+ u16 sheet;
+ u8 spriteId;
+
+ if (gIsLinkContest & 0x2)
+ {
+ sub_800E0E8();
+ CreateWirelessStatusIndicatorSprite(8, 8);
+ gSprites[gWirelessStatusIndicatorSpriteId].subpriority = 1;
+ sheet = LoadSpriteSheet(&gUnknown_0858D8E0);
+ RequestDma3Fill(0xFFFFFFFF, (void *)BG_CHAR_ADDR(4) + sheet * 0x20, 0x80, 1);
+ spriteId = CreateSprite(&gSpriteTemplate_858D8C8, 8, 8, 0);
+ gSprites[spriteId].oam.objMode = ST_OAM_OBJ_WINDOW;
+ }
+}
+
+// s16 sub_80F6B78(const u8 *text, u8 spriteId)
+// {
+// int i;
+// int origWidth, strWidth;
+// const u8 *r8;
+// u8 sp10[0x10];
+// struct WindowTemplate windowTemplate;
+// int spC;
+// u8 *windowTileData;
+// u8 windowId;
+
+// memset(windowTemplate, 0, sizeof(*windowTemplate));
+// windowTemplate.width = 30;
+// windowTemplate.height = 2;
+// windowId = AddWindow(&windowTemplate);
+// FillWindowPixelBuffer(windowId, 0x11);
+// origWidth = GetStringWidth(1, text, 0) + 9;
+// strWidth = origWidth;
+// if (strWidth < 0)
+// strWidth += 7;
+
+// strWidth >>= 3;
+// if (strWidth > 30)
+// strWidth = 30;
+
+// AddTextPrinterParameterized3(windowId, 1, (strWidth * 8 - origWidth) / 2, 1, gUnknown_0858D8E8, -1, text);
+// windowTileData = (u8 *)GetWindowAttribute(windowId, WINDOW_TILE_DATA);
+// r8 = gUnknown_0858D6D0;
+// // ....
+// }
+
+NAKED
+s16 sub_80F6B78(const u8 *text, u8 spriteId)
+{
+ asm_unified("\n\
+ push {r4-r7,lr}\n\
+ mov r7, r10\n\
+ mov r6, r9\n\
+ mov r5, r8\n\
+ push {r5-r7}\n\
+ sub sp, 0x44\n\
+ adds r5, r0, 0\n\
+ lsls r1, 24\n\
+ lsrs r7, r1, 24\n\
+ add r4, sp, 0x20\n\
+ adds r0, r4, 0\n\
+ movs r1, 0\n\
+ movs r2, 0x8\n\
+ bl memset\n\
+ movs r0, 0x1E\n\
+ strb r0, [r4, 0x3]\n\
+ movs r0, 0x2\n\
+ strb r0, [r4, 0x4]\n\
+ adds r0, r4, 0\n\
+ bl AddWindow\n\
+ lsls r6, r0, 24\n\
+ lsrs r4, r6, 24\n\
+ adds r0, r4, 0\n\
+ movs r1, 0x11\n\
+ bl FillWindowPixelBuffer\n\
+ movs r0, 0x1\n\
+ adds r1, r5, 0\n\
+ movs r2, 0\n\
+ bl GetStringWidth\n\
+ adds r2, r0, 0\n\
+ adds r2, 0x9\n\
+ cmp r2, 0\n\
+ bge _080F6BC4\n\
+ adds r2, 0x7\n\
+_080F6BC4:\n\
+ asrs r2, 3\n\
+ mov r10, r2\n\
+ cmp r2, 0x1E\n\
+ ble _080F6BD0\n\
+ movs r1, 0x1E\n\
+ mov r10, r1\n\
+_080F6BD0:\n\
+ mov r1, r10\n\
+ lsls r2, r1, 3\n\
+ subs r2, r0\n\
+ lsrs r0, r2, 31\n\
+ adds r2, r0\n\
+ asrs r2, 1\n\
+ lsls r2, 24\n\
+ lsrs r2, 24\n\
+ ldr r0, =gUnknown_0858D8E8\n\
+ str r0, [sp]\n\
+ movs r0, 0x1\n\
+ negs r0, r0\n\
+ str r0, [sp, 0x4]\n\
+ str r5, [sp, 0x8]\n\
+ adds r0, r4, 0\n\
+ movs r1, 0x1\n\
+ movs r3, 0x1\n\
+ bl AddTextPrinterParameterized3\n\
+ adds r0, r4, 0\n\
+ movs r1, 0x7\n\
+ bl GetWindowAttribute\n\
+ mov r9, r0\n\
+ ldr r2, =gUnknown_0858D6D0\n\
+ mov r8, r2\n\
+ lsls r1, r7, 4\n\
+ adds r1, r7\n\
+ lsls r1, 2\n\
+ ldr r3, =gSprites\n\
+ adds r1, r3\n\
+ ldrh r0, [r1, 0x4]\n\
+ lsls r0, 22\n\
+ lsrs r0, 17\n\
+ ldr r2, =0x06010000\n\
+ adds r0, r2\n\
+ str r0, [sp, 0xC]\n\
+ str r6, [sp, 0x38]\n\
+ mov r7, sp\n\
+ adds r7, 0x1C\n\
+ str r7, [sp, 0x2C]\n\
+ mov r0, r10\n\
+ adds r0, 0x2\n\
+ str r0, [sp, 0x30]\n\
+ movs r5, 0\n\
+ add r7, sp, 0x10\n\
+ mov r12, r7\n\
+ adds r6, r1, 0\n\
+ adds r6, 0x2E\n\
+ movs r4, 0x2\n\
+_080F6C34:\n\
+ adds r0, r6, r5\n\
+ movs r7, 0\n\
+ ldrsh r1, [r0, r7]\n\
+ lsls r0, r1, 4\n\
+ adds r0, r1\n\
+ lsls r0, 2\n\
+ adds r0, r3\n\
+ ldrh r0, [r0, 0x4]\n\
+ lsls r0, 22\n\
+ lsrs r0, 17\n\
+ adds r0, r2\n\
+ mov r1, r12\n\
+ adds r1, 0x4\n\
+ mov r12, r1\n\
+ subs r1, 0x4\n\
+ stm r1!, {r0}\n\
+ adds r5, 0x2\n\
+ subs r4, 0x1\n\
+ cmp r4, 0\n\
+ bge _080F6C34\n\
+ mov r7, r8\n\
+ adds r7, 0x80\n\
+ mov r2, r8\n\
+ adds r2, 0x40\n\
+ str r2, [sp, 0x28]\n\
+ mov r0, r8\n\
+ adds r0, 0x20\n\
+ str r0, [sp, 0x3C]\n\
+ mov r1, r8\n\
+ adds r1, 0xA0\n\
+ str r1, [sp, 0x40]\n\
+ adds r2, 0x20\n\
+ str r2, [sp, 0x34]\n\
+ add r5, sp, 0xC\n\
+ movs r6, 0\n\
+ movs r4, 0x3\n\
+_080F6C7C:\n\
+ str r6, [sp, 0x1C]\n\
+ ldm r5!, {r1}\n\
+ ldr r0, [sp, 0x2C]\n\
+ ldr r2, =0x05000100\n\
+ bl CpuSet\n\
+ subs r4, 0x1\n\
+ cmp r4, 0\n\
+ bge _080F6C7C\n\
+ ldr r5, [sp, 0xC]\n\
+ ldr r6, =0x04000008\n\
+ mov r0, r8\n\
+ adds r1, r5, 0\n\
+ adds r2, r6, 0\n\
+ bl CpuSet\n\
+ movs r0, 0x80\n\
+ lsls r0, 1\n\
+ adds r1, r5, r0\n\
+ adds r0, r7, 0\n\
+ adds r2, r6, 0\n\
+ bl CpuSet\n\
+ movs r2, 0x80\n\
+ lsls r2, 2\n\
+ adds r1, r5, r2\n\
+ adds r0, r7, 0\n\
+ adds r2, r6, 0\n\
+ bl CpuSet\n\
+ movs r7, 0xC0\n\
+ lsls r7, 2\n\
+ adds r1, r5, r7\n\
+ ldr r0, [sp, 0x28]\n\
+ adds r2, r6, 0\n\
+ bl CpuSet\n\
+ movs r4, 0\n\
+ cmp r4, r10\n\
+ bge _080F6D32\n\
+ adds r7, r6, 0\n\
+_080F6CCE:\n\
+ adds r6, r4, 0x1\n\
+ adds r0, r6, 0\n\
+ cmp r6, 0\n\
+ bge _080F6CDA\n\
+ adds r0, r4, 0\n\
+ adds r0, 0x8\n\
+_080F6CDA:\n\
+ asrs r0, 3\n\
+ lsls r1, r0, 2\n\
+ add r1, sp\n\
+ adds r1, 0xC\n\
+ lsls r0, 3\n\
+ subs r0, r6, r0\n\
+ lsls r0, 5\n\
+ ldr r1, [r1]\n\
+ adds r5, r1, r0\n\
+ mov r0, r8\n\
+ adds r0, 0xC0\n\
+ adds r1, r5, 0\n\
+ adds r2, r7, 0\n\
+ bl CpuSet\n\
+ movs r0, 0x80\n\
+ lsls r0, 1\n\
+ adds r1, r5, r0\n\
+ mov r0, r9\n\
+ adds r2, r7, 0\n\
+ bl CpuSet\n\
+ movs r0, 0xF0\n\
+ lsls r0, 2\n\
+ add r0, r9\n\
+ movs r2, 0x80\n\
+ lsls r2, 2\n\
+ adds r1, r5, r2\n\
+ adds r2, r7, 0\n\
+ bl CpuSet\n\
+ movs r0, 0xC0\n\
+ lsls r0, 2\n\
+ adds r1, r5, r0\n\
+ mov r0, r8\n\
+ adds r0, 0xE0\n\
+ adds r2, r7, 0\n\
+ bl CpuSet\n\
+ movs r1, 0x20\n\
+ add r9, r1\n\
+ adds r4, r6, 0\n\
+ cmp r4, r10\n\
+ blt _080F6CCE\n\
+_080F6D32:\n\
+ adds r2, r4, 0x1\n\
+ adds r0, r2, 0\n\
+ cmp r2, 0\n\
+ bge _080F6D3E\n\
+ adds r0, r4, 0\n\
+ adds r0, 0x8\n\
+_080F6D3E:\n\
+ asrs r0, 3\n\
+ lsls r1, r0, 2\n\
+ add r1, sp\n\
+ adds r1, 0xC\n\
+ lsls r0, 3\n\
+ subs r0, r2, r0\n\
+ lsls r0, 5\n\
+ ldr r1, [r1]\n\
+ adds r5, r1, r0\n\
+ ldr r4, =0x04000008\n\
+ ldr r0, [sp, 0x3C]\n\
+ adds r1, r5, 0\n\
+ adds r2, r4, 0\n\
+ bl CpuSet\n\
+ movs r2, 0x80\n\
+ lsls r2, 1\n\
+ adds r1, r5, r2\n\
+ ldr r0, [sp, 0x40]\n\
+ adds r2, r4, 0\n\
+ bl CpuSet\n\
+ movs r7, 0x80\n\
+ lsls r7, 2\n\
+ adds r1, r5, r7\n\
+ ldr r0, [sp, 0x40]\n\
+ adds r2, r4, 0\n\
+ bl CpuSet\n\
+ movs r0, 0xC0\n\
+ lsls r0, 2\n\
+ adds r1, r5, r0\n\
+ ldr r0, [sp, 0x34]\n\
+ adds r2, r4, 0\n\
+ bl CpuSet\n\
+ ldr r1, [sp, 0x38]\n\
+ lsrs r0, r1, 24\n\
+ bl RemoveWindow\n\
+ ldr r2, [sp, 0x30]\n\
+ lsls r1, r2, 3\n\
+ movs r0, 0xF0\n\
+ subs r0, r1\n\
+ asrs r0, 1\n\
+ add sp, 0x44\n\
+ pop {r3-r5}\n\
+ mov r8, r3\n\
+ mov r9, r4\n\
+ mov r10, r5\n\
+ pop {r4-r7}\n\
+ pop {r1}\n\
+ bx r1\n\
+ .pool");
+}
+
+static void sub_80F6DC0(void)
+{
+ int i;
+ struct SpriteTemplate template;
+ u8 spriteIds[8];
+
+ template = gSpriteTemplate_858D7F8;
+ for (i = 0; i < 8; i++)
+ LoadSpriteSheet(&gUnknown_0858D810[i]);
+
+ LoadSpritePalette(&gUnknown_0858D850);
+ for (i = 0; i < 8; i++)
+ {
+ spriteIds[i] = CreateSprite(&template, 272, 144, 10);
+ template.tileTag++;
+ }
+
+ gSprites[spriteIds[0]].data[0] = spriteIds[1];
+ gSprites[spriteIds[0]].data[1] = spriteIds[2];
+ gSprites[spriteIds[0]].data[2] = spriteIds[3];
+
+ gSprites[spriteIds[4]].data[0] = spriteIds[5];
+ gSprites[spriteIds[4]].data[1] = spriteIds[6];
+ gSprites[spriteIds[4]].data[2] = spriteIds[7];
+
+ gUnknown_0203A034->unk0->unk0 = spriteIds[0];
+ gUnknown_0203A034->unk0->unk4 = 0;
+ gUnknown_0203A034->unk0->unk1 = spriteIds[4];
+ sub_80F7144();
+}
+
+static void sub_80F6E9C(s16 arg0, u16 y, u16 arg2, u16 arg3)
+{
+ struct Sprite *sprite = &gSprites[gUnknown_0203A034->unk0->unk0];
+ sprite->pos1.x = 272;
+ sprite->pos1.y = y;
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ sprite->data[4] = arg0 + 32;
+ sprite->data[5] = arg2;
+ sprite->data[6] = arg3;
+ sprite->data[7] = 0;
+ sprite->callback = sub_80F6F68;
+ gUnknown_0203A034->unk0->unk4 = 1;
+}
+
+static void sub_80F6EF4(u16 arg0)
+{
+ struct Sprite *sprite = &gSprites[gUnknown_0203A034->unk0->unk0];
+ sprite->pos1.x += sprite->pos2.x;
+ sprite->pos1.y += sprite->pos2.y;
+ sprite->pos2.y = 0;
+ sprite->pos2.x = 0;
+ sprite->data[6] = arg0;
+ sprite->data[7] = 0;
+ sprite->callback = sub_80F7014;
+ gUnknown_0203A034->unk0->unk4 = 3;
+}
+
+static void sub_80F6F40(struct Sprite *sprite)
+{
+ sprite->pos1.x = 272;
+ sprite->pos1.y = 144;
+ sprite->pos2.y = 0;
+ sprite->pos2.x = 0;
+ sprite->callback = SpriteCallbackDummy;
+ gUnknown_0203A034->unk0->unk4 = 0;
+}
+
+static void sub_80F6F68(struct Sprite *sprite)
+{
+ int i;
+ s16 var0;
+
+ var0 = (u16)sprite->data[7] + (u16)sprite->data[6];
+ sprite->pos1.x -= var0 >> 8;
+ sprite->data[7] = (sprite->data[6] + sprite->data[7]) & 0xFF;
+ if (sprite->pos1.x < sprite->data[4])
+ sprite->pos1.x = sprite->data[4];
+
+ for (i = 0; i < 3; i++)
+ {
+ struct Sprite *sprite2 = &gSprites[sprite->data[i]];
+ sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
+ }
+
+ if (sprite->pos1.x == sprite->data[4])
+ sprite->callback = sub_80F6FDC;
+}
+
+static void sub_80F6FDC(struct Sprite *sprite)
+{
+ gUnknown_0203A034->unk0->unk4 = 2;
+ if ((u16)sprite->data[5] != 0xFFFF)
+ {
+ if (--sprite->data[5] == -1)
+ sub_80F6EF4(sprite->data[6]);
+ }
+}
+
+static void sub_80F7014(struct Sprite *sprite)
+{
+ int i;
+ s16 var0;
+
+ var0 = (u16)sprite->data[7] + (u16)sprite->data[6];
+ sprite->pos1.x -= var0 >> 8;
+ sprite->data[7] = (sprite->data[6] + sprite->data[7]) & 0xFF;
+ for (i = 0; i < 3; i++)
+ {
+ struct Sprite *sprite2 = &gSprites[sprite->data[i]];
+ sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
+ }
+
+ if (sprite->pos1.x + sprite->pos2.x < -224)
+ sub_80F6F40(sprite);
+}
+
+static void sub_80F707C(const u8 *text)
+{
+ int i;
+ u16 x;
+ struct Sprite *sprite;
+
+ x = sub_80F6B78(text, gUnknown_0203A034->unk0->unk1);
+ sprite = &gSprites[gUnknown_0203A034->unk0->unk1];
+ sprite->pos1.x = x + 32;
+ sprite->pos1.y = 80;
+ sprite->invisible = 0;
+ for (i = 0; i < 3; i++)
+ {
+ gSprites[sprite->data[i]].pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
+ gSprites[sprite->data[i]].pos1.y = sprite->pos1.y;
+ gSprites[sprite->data[i]].invisible = 0;
+ }
+
+ gBattle_WIN0H = 0x00F0;
+ gBattle_WIN0V = ((sprite->pos1.y - 16) << 8) | (sprite->pos1.y + 16);
+ SetGpuReg(REG_OFFSET_WININ, WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR
+ | WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR);
+}
+
+static void sub_80F7144(void)
+{
+ int i;
+ struct Sprite *sprite;
+
+ sprite = &gSprites[gUnknown_0203A034->unk0->unk1];
+ sprite->invisible = 1;
+ for (i = 0; i < 3; i++)
+ gSprites[sprite->data[i]].invisible = 1;
+
+ gBattle_WIN0H = 0;
+ gBattle_WIN0V = 0;
+ SetGpuReg(REG_OFFSET_WIN0H, gBattle_WIN0H);
+ SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V);
+ SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR
+ | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR);
+}
+
+static void sub_80F71C8(void)
+{
+ u8 palette;
+ int x, y;
+
+ x = 5;
+ y = 1;
+ if (gIsLinkContest & 0x1)
+ {
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC6498, 5, 1, 5, 2);
+ x = 10;
+ }
+ else if (gSpecialVar_ContestRank == 0)
+ {
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC63F8, 5, 1, 10, 2);
+ x = 15;
+ }
+ else if (gSpecialVar_ContestRank == 1)
+ {
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC6420, 5, 1, 10, 2);
+ x = 15;
+ }
+ else if (gSpecialVar_ContestRank == 2)
+ {
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC6448, 5, 1, 10, 2);
+ x = 15;
+ }
+ else
+ {
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC6470, 5, 1, 10, 2);
+ x = 15;
+ }
+
+ if (gSpecialVar_ContestCategory == 0)
+ {
+ palette = 0;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC64AC, x, y, 5, 2);
+ }
+ else if (gSpecialVar_ContestCategory == 1)
+ {
+ palette = 1;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC64C0, x, y, 5, 2);
+ }
+ else if (gSpecialVar_ContestCategory == 2)
+ {
+ palette = 2;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC64D4, x, y, 5, 2);
+ }
+ else if (gSpecialVar_ContestCategory == 3)
+ {
+ palette = 3;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC64E8, x, y, 5, 2);
+ }
+ else
+ {
+ palette = 4;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC64FC, x, y, 5, 2);
+ }
+
+ x += 5;
+ CopyToBgTilemapBufferRect(2, gUnknown_08DC6510, x, y, 6, 2);
+ CopyToBgTilemapBufferRect_ChangePalette(2, gUnknown_0203A034->unkC[2], 0, 0, 32, 4, palette);
+}
+
+// fakematching?
+u8 sub_80F7310(u8 monIndex, u8 arg1)
+{
+ u32 var0;
+ u32 var1;
+
+ var0 = gContestMonConditions[monIndex] << 16;
+ var1 = var0 / 0x3F;
+ if (var1 & 0xFFFF)
+ var1 += 0x10000;
+
+ var1 >>= 16;
+ if (var1 == 0 && var0)
+ var1 = 1;
+
+ if (arg1 && var1 > 10)
+ var1 = 10;
+
+ return var1;
+}
diff --git a/src/contest_link_80FC4F4.c b/src/contest_link_80FC4F4.c
new file mode 100644
index 000000000..f582626f8
--- /dev/null
+++ b/src/contest_link_80FC4F4.c
@@ -0,0 +1,548 @@
+#include "global.h"
+#include "contest.h"
+#include "decompress.h"
+#include "event_data.h"
+#include "link.h"
+#include "pokemon.h"
+#include "random.h"
+#include "task.h"
+#include "constants/flags.h"
+
+static void sub_80FC5C0(u8);
+static void sub_80FC5DC(u8);
+
+bool32 sub_80FC4F4(void *src, u16 size)
+{
+ memcpy(gDecompressionBuffer, src, size);
+ if (SendBlock(bitmask_all_link_players_but_self(), gDecompressionBuffer, size))
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 sub_80FC530(u8 arg0)
+{
+ u8 mask = (1 << arg0);
+ if (!(GetBlockReceivedStatus() & mask))
+ {
+ return FALSE;
+ }
+ else
+ {
+ ResetBlockReceivedFlag(arg0);
+ return TRUE;
+ }
+}
+
+bool8 sub_80FC55C(void)
+{
+ if (GetBlockReceivedStatus() == sub_800A9D8())
+ {
+ ResetBlockReceivedFlags();
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+void sub_80FC580(u8 taskId)
+{
+ u8 i;
+
+ for (i = 0; i < 4; i++)
+ gBlockRecvBuffer[i][0] = 0xFF;
+
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].func = sub_80FC5C0;
+}
+
+static void sub_80FC5C0(u8 taskId)
+{
+ gTasks[taskId].func = sub_80FC5DC;
+}
+
+static void sub_80FC5DC(u8 taskId)
+{
+ int i;
+
+ if (!gReceivedRemoteLinkPlayers)
+ return;
+
+ gContestPlayerMonIndex = GetMultiplayerId();
+ gNumLinkContestPlayers = GetLinkPlayerCount();
+ gIsLinkContest = 1;
+ if (gWirelessCommType == 1)
+ gIsLinkContest = 3;
+
+ for (i = 0; i < gNumLinkContestPlayers && (u32)(gLinkPlayers[i].version & 0xFF) - 1 > VERSION_RUBY - 1; i++)
+ ;
+
+ if (i < gNumLinkContestPlayers)
+ gIsLinkContest |= 0x4;
+
+ SwitchTaskToFollowupFunc(taskId);
+}
+
+bool32 sub_80FC670(s16 *arg0)
+{
+ if (gIsLinkContest & 0x4)
+ return TRUE;
+
+ switch (*arg0)
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ sub_800ADF8();
+ (*arg0)++;
+ }
+ return FALSE;
+ case 1:
+ (*arg0)++;
+ return FALSE;
+ default:
+ if (IsLinkTaskFinished() != TRUE)
+ return FALSE;
+ else
+ return TRUE;
+ }
+}
+
+void sub_80FC6BC(u8 taskId)
+{
+ int i;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (GetMultiplayerId() == 0)
+ {
+ if (IsLinkTaskFinished())
+ {
+ memcpy(gBlockSendBuffer, &gContestMons[gContestPlayerMonIndex], sizeof(struct ContestPokemon));
+ gTasks[taskId].data[0] = 10;
+ }
+ }
+ else
+ {
+ memcpy(gBlockSendBuffer, &gContestMons[gContestPlayerMonIndex], sizeof(struct ContestPokemon));
+ gTasks[taskId].data[0] = 1;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ {
+ memcpy(&gContestMons[i], gBlockRecvBuffer[i], sizeof(struct ContestPokemon));
+ sub_80DFA08(&gContestMons[i], gLinkPlayers[i].language);
+ }
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 10:
+ if (++gTasks[taskId].data[11] > 300)
+ {
+ sub_800A4D8(2);
+ gTasks[taskId].data[0] = 1;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[11] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FC804(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (GetMultiplayerId() == 0)
+ {
+ if (IsLinkTaskFinished() && sub_80FC4F4(&gRngValue, sizeof(gRngValue)) == TRUE)
+ gTasks[taskId].data[0]++;
+ }
+ else
+ {
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC530(0))
+ {
+ memcpy(&gRngValue, gBlockRecvBuffer[0], sizeof(gRngValue));
+ memcpy(&gContestRngValue, gBlockRecvBuffer[0], sizeof(gContestRngValue));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FC894(u8 taskId)
+{
+ int i;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ gBlockSendBuffer[0] = gTasks[taskId].data[9];
+ if (GetMultiplayerId() == 0)
+ {
+ if (IsLinkTaskFinished())
+ gTasks[taskId].data[0] = 10;
+ }
+ else
+ {
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ gTasks[taskId].data[i + 1] = gBlockRecvBuffer[i][0];
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 10:
+ if (++gTasks[taskId].data[11] > 10)
+ {
+ sub_800A4D8(2);
+ gTasks[taskId].data[0] = 1;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[11] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FC998(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(&gContestPlayerMonIndex, sizeof(gContestPlayerMonIndex)) == TRUE)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ gTasks[taskId].data[0]++;
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FC9F8(u8 taskId)
+{
+ int i;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(&gContestResources->field_4[gContestPlayerMonIndex].currMove, sizeof(gContestResources->field_4[gContestPlayerMonIndex].currMove)) == TRUE)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ gContestResources->field_4[i].currMove = gBlockRecvBuffer[i][0];
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FCACC(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gUnknown_02039F08, sizeof(gUnknown_02039F08)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ memcpy(gUnknown_02039F08, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F08));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ case 5:
+ case 8:
+ case 11:
+ if (gTasks[taskId].data[1]++ > 10)
+ {
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 3:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gUnknown_02039F10, sizeof(gUnknown_02039F10)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 4:
+ if (sub_80FC55C())
+ {
+ memcpy(gUnknown_02039F10, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F10));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 6:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gUnknown_02039F18, sizeof(gUnknown_02039F18)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 7:
+ if (sub_80FC55C())
+ {
+ memcpy(gUnknown_02039F18, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F18));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 9:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gContestFinalStandings, sizeof(gContestFinalStandings)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 10:
+ if (sub_80FC55C())
+ {
+ memcpy(gContestFinalStandings, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestFinalStandings));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FCC88(u8 taskId)
+{
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gContestResources->field_4, 4 * sizeof(struct ContestantStatus)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ memcpy(gContestResources->field_4, gBlockRecvBuffer[gUnknown_02039F2B], 4 * sizeof(struct ContestantStatus));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ case 5:
+ case 8:
+ case 11:
+ if (gTasks[taskId].data[1]++ > 10)
+ {
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 3:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gContestResources->field_8, sizeof(struct UnknownContestStruct7)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 4:
+ if (sub_80FC55C())
+ {
+ memcpy(gContestResources->field_8, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(struct UnknownContestStruct7));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 6:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gContestResources->field_10, sizeof(struct UnknownContestStruct5)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 7:
+ if (sub_80FC55C())
+ {
+ memcpy(gContestResources->field_10, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(struct UnknownContestStruct5));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 9:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gUnknown_02039F26, sizeof(gUnknown_02039F26)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 10:
+ if (sub_80FC55C())
+ {
+ memcpy(gUnknown_02039F26, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F26));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FCE48(u8 taskId)
+{
+ int i;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ gBlockSendBuffer[0] = 0x6E;
+ if (GetMultiplayerId() == 0)
+ {
+ if (IsLinkTaskFinished())
+ gTasks[taskId].data[0] = 10;
+ }
+ else
+ {
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < 4; i++)
+ gTasks[taskId].data[i + 5] = gBlockRecvBuffer[i][0];
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 10:
+ if (++gTasks[taskId].data[11] > 10)
+ {
+ sub_800A4D8(2);
+ gTasks[taskId].data[0] = 1;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[11] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FCF40(u8 taskId)
+{
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gContestMonConditions, sizeof(gContestMonConditions)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ memcpy(gContestMonConditions, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonConditions));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
+
+void sub_80FCFD0(u8 taskId)
+{
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(gUnknown_02039F26, sizeof(gUnknown_02039F26)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ memcpy(gUnknown_02039F26, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F26));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ }
+}
diff --git a/src/contest_link_81D9DE4.c b/src/contest_link_81D9DE4.c
new file mode 100644
index 000000000..4b56c9c38
--- /dev/null
+++ b/src/contest_link_81D9DE4.c
@@ -0,0 +1,331 @@
+#include "global.h"
+#include "contest.h"
+#include "event_data.h"
+#include "link.h"
+#include "random.h"
+#include "task.h"
+
+static void sub_81D9F14(u8);
+static void sub_81D9F30(u8);
+static void sub_81D9F4C(u8);
+static void sub_81D9F68(u8);
+static void sub_81DA10C(u8);
+static void sub_81DA138(u8);
+static void sub_81DA160(u8);
+static void sub_81DA244(u8);
+static void sub_81DA2E8(u8);
+static void sub_81DA3B8(u8);
+static void sub_81DA488(u8);
+
+void sub_81D9DE4(u8 taskId)
+{
+ int gameCleared;
+
+ switch (gTasks[taskId].data[9])
+ {
+ case 0:
+ gHighestRibbonRank = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_COOL_RIBBON);
+ break;
+ case 1:
+ gHighestRibbonRank = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_BEAUTY_RIBBON);
+ break;
+ case 2:
+ gHighestRibbonRank = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_CUTE_RIBBON);
+ break;
+ case 3:
+ gHighestRibbonRank = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SMART_RIBBON);
+ break;
+ case 4:
+ default:
+ gHighestRibbonRank = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_TOUGH_RIBBON);
+ break;
+ }
+
+ gContestMons[gContestPlayerMonIndex].unk2C[0] = gHighestRibbonRank;
+ gameCleared = FlagGet(FLAG_SYS_GAME_CLEAR) > 0;
+ gContestMons[gContestPlayerMonIndex].unk2C[1] = gameCleared;
+ SetTaskFuncWithFollowupFunc(taskId, sub_81DA160, sub_81D9F14);
+}
+
+static void sub_81D9F14(u8 taskId)
+{
+ SetTaskFuncWithFollowupFunc(taskId, sub_81DA244, sub_81D9F30);
+}
+
+static void sub_81D9F30(u8 taskId)
+{
+ SetTaskFuncWithFollowupFunc(taskId, sub_81DA2E8, sub_81D9F4C);
+}
+
+static void sub_81D9F4C(u8 taskId)
+{
+ SetTaskFuncWithFollowupFunc(taskId, sub_81DA3B8, sub_81D9F68);
+}
+
+static void sub_81D9F68(u8 taskId)
+{
+ u8 i;
+ u8 rank;
+ int gameCleared;
+ u8 data1[4];
+ u8 data2[4];
+
+ memset(data1, 0, sizeof(data1));
+ memset(data2, 0, sizeof(data2));
+
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ data1[i] = gTasks[taskId].data[i + 1];
+
+ i = 0;
+ if (i < gNumLinkContestPlayers)
+ {
+ while (++i < gNumLinkContestPlayers)
+ {
+ if (data1[0] != data1[i])
+ break;
+ }
+ }
+
+ if (i == gNumLinkContestPlayers)
+ gSpecialVar_0x8004 = 0;
+ else
+ gSpecialVar_0x8004 = 1;
+
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ data2[i] = gTasks[taskId].data[i + 5];
+
+ if (gNumLinkContestPlayers != 4 && GetMultiplayerId() == 0)
+ {
+ rank = gContestMons[0].unk2C[0];
+ for (i = 1; i < gNumLinkContestPlayers; i++)
+ {
+ if (rank < gContestMons[i].unk2C[0])
+ rank = gContestMons[i].unk2C[0];
+ }
+
+ if (rank)
+ rank--;
+
+ gameCleared = 1;
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ {
+ if (!gContestMons[i].unk2C[1])
+ {
+ gameCleared = 0;
+ break;
+ }
+ }
+
+ sub_80DACBC(data1[0], rank, gameCleared);
+ }
+
+ gUnknown_02039F2B = sub_80F86E0(data2);
+ if (gNumLinkContestPlayers < 4)
+ SetTaskFuncWithFollowupFunc(taskId, sub_81DA488, sub_81DA10C);
+ else
+ gTasks[taskId].func = sub_81DA10C;
+}
+
+static void sub_81DA10C(u8 taskId)
+{
+ sub_80DB09C(gSpecialVar_ContestCategory);
+ SetTaskFuncWithFollowupFunc(taskId, sub_80FCF40, sub_81DA138);
+}
+
+static void sub_81DA138(u8 taskId)
+{
+ sub_80DCE58(0);
+ SetTaskFuncWithFollowupFunc(taskId, sub_80FCFD0, sub_80F8714);
+}
+
+static void sub_81DA160(u8 taskId)
+{
+ int i;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ if (sub_80FC4F4(&gContestMons[gContestPlayerMonIndex], sizeof(struct ContestPokemon)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ {
+ memcpy(&gContestMons[i], gBlockRecvBuffer[i], sizeof(struct ContestPokemon));
+ sub_80DFA08(&gContestMons[i], gLinkPlayers[i].language);
+ }
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ }
+}
+
+static void sub_81DA244(u8 taskId)
+{
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 0:
+ if (GetMultiplayerId() == 0)
+ {
+ if (!IsLinkTaskFinished())
+ return;
+
+ if (sub_80FC4F4(&gRngValue, sizeof(gRngValue)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ else
+ {
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC530(0))
+ {
+ memcpy(&gRngValue, gBlockRecvBuffer[0], sizeof(gRngValue));
+ memcpy(&gContestRngValue, gBlockRecvBuffer[0], sizeof(gContestRngValue));
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ }
+}
+
+static void sub_81DA2E8(u8 taskId)
+{
+ int i;
+ u16 data[4];
+ u16 var0;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ var0 = 0x6E;
+ if (sub_80FC4F4(&var0, sizeof(var0)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ {
+ data[i] = gBlockRecvBuffer[i][0];
+ gTasks[taskId].data[i + 5] = data[i];
+ }
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ }
+}
+
+static void sub_81DA3B8(u8 taskId)
+{
+ int i;
+ u16 data[4];
+ u16 var0;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 0:
+ if (IsLinkTaskFinished())
+ {
+ var0 = gTasks[taskId].data[9];
+ if (sub_80FC4F4(&var0, sizeof(var0)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC55C())
+ {
+ for (i = 0; i < gNumLinkContestPlayers; i++)
+ {
+ data[i] = gBlockRecvBuffer[i][0];
+ gTasks[taskId].data[i + 1] = data[i];
+ }
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ }
+}
+
+static void sub_81DA488(u8 taskId)
+{
+ int i;
+
+ if (!sub_80FC670(&gTasks[taskId].data[12]))
+ return;
+
+ switch (gTasks[taskId].data[0])
+ {
+ default:
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[12] = 0;
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 0:
+ if (GetMultiplayerId() == 0)
+ {
+ if (!IsLinkTaskFinished())
+ return;
+
+ if (sub_80FC4F4(&gContestMons[gNumLinkContestPlayers], (4 - gNumLinkContestPlayers) * sizeof(struct ContestPokemon)) == 1)
+ gTasks[taskId].data[0]++;
+ }
+ else
+ {
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 1:
+ if (sub_80FC530(0))
+ {
+ memcpy(&gContestMons[gNumLinkContestPlayers], gBlockRecvBuffer[0], (4 - gNumLinkContestPlayers) * sizeof(struct ContestPokemon));
+ for (i = gNumLinkContestPlayers; i < 4; i++)
+ sub_80DFA08(&gContestMons[i], gLinkPlayers[0].language);
+
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ }
+}
diff --git a/src/contest_painting.c b/src/contest_painting.c
index 9de3d733d..0ed169a77 100644
--- a/src/contest_painting.c
+++ b/src/contest_painting.c
@@ -20,9 +20,6 @@
#include "window.h"
#include "constants/rgb.h"
-extern u8 gUnknown_02039F5C;
-extern u8 gUnknown_02039F5D;
-
extern u16 (*gUnknown_03006190)[][32];
extern struct ContestWinner *gUnknown_030061C0;
extern u16 *gContestPaintingMonPalette;
diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h
index cdb28f8c3..0de0bfb52 100644
--- a/src/data/pokemon_graphics/back_pic_coordinates.h
+++ b/src/data/pokemon_graphics/back_pic_coordinates.h
@@ -4,2202 +4,2202 @@ const struct MonCoords gMonBackPicCoords[] =
{
[SPECIES_NONE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_BULBASAUR] =
{
- .coords = 0x64,
+ .size = 0x64,
.y_offset = 0x10,
},
[SPECIES_IVYSAUR] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_VENUSAUR] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_CHARMANDER] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_CHARMELEON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_CHARIZARD] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_SQUIRTLE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_WARTORTLE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_BLASTOISE] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_CATERPIE] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_METAPOD] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_BUTTERFREE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_WEEDLE] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_KAKUNA] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_BEEDRILL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_PIDGEY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_PIDGEOTTO] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0c,
},
[SPECIES_PIDGEOT] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x02,
},
[SPECIES_RATTATA] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_RATICATE] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_SPEAROW] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_FEAROW] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_EKANS] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_ARBOK] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_PIKACHU] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_RAICHU] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_SANDSHREW] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_SANDSLASH] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_NIDORAN_F] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_NIDORINA] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_NIDOQUEEN] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_NIDORAN_M] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_NIDORINO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_NIDOKING] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_CLEFAIRY] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_CLEFABLE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_VULPIX] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_NINETALES] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_JIGGLYPUFF] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_WIGGLYTUFF] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_ZUBAT] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_GOLBAT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_ODDISH] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_GLOOM] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_VILEPLUME] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_PARAS] =
{
- .coords = 0x63,
+ .size = 0x63,
.y_offset = 0x14,
},
[SPECIES_PARASECT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_VENONAT] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_VENOMOTH] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_DIGLETT] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_DUGTRIO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_MEOWTH] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_PERSIAN] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_PSYDUCK] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_GOLDUCK] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_MANKEY] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_PRIMEAPE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_GROWLITHE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_ARCANINE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_POLIWAG] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x10,
},
[SPECIES_POLIWHIRL] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_POLIWRATH] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_ABRA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_KADABRA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_ALAKAZAM] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_MACHOP] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_MACHOKE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_MACHAMP] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x04,
},
[SPECIES_BELLSPROUT] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_WEEPINBELL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_VICTREEBEL] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_TENTACOOL] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_TENTACRUEL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_GEODUDE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_GRAVELER] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0c,
},
[SPECIES_GOLEM] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x10,
},
[SPECIES_PONYTA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_RAPIDASH] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_SLOWPOKE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_SLOWBRO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_MAGNEMITE] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x14,
},
[SPECIES_MAGNETON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_FARFETCHD] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_DODUO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_DODRIO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SEEL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_DEWGONG] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_GRIMER] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0c,
},
[SPECIES_MUK] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_SHELLDER] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_CLOYSTER] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_GASTLY] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_HAUNTER] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_GENGAR] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_ONIX] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_DROWZEE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_HYPNO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_KRABBY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_KINGLER] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_VOLTORB] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_ELECTRODE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_EXEGGCUTE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_EXEGGUTOR] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_CUBONE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_MAROWAK] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_HITMONLEE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_HITMONCHAN] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_LICKITUNG] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_KOFFING] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_WEEZING] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_RHYHORN] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0c,
},
[SPECIES_RHYDON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_CHANSEY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_TANGELA] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_KANGASKHAN] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_HORSEA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_SEADRA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_GOLDEEN] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_SEAKING] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_STARYU] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_STARMIE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_MR_MIME] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_SCYTHER] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_JYNX] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_ELECTABUZZ] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_MAGMAR] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_PINSIR] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_TAUROS] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_MAGIKARP] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_GYARADOS] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_LAPRAS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_DITTO] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x11,
},
[SPECIES_EEVEE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_VAPOREON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_JOLTEON] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_FLAREON] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_PORYGON] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_OMANYTE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_OMASTAR] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_KABUTO] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_KABUTOPS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_AERODACTYL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SNORLAX] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_ARTICUNO] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_ZAPDOS] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_MOLTRES] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_DRATINI] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_DRAGONAIR] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_DRAGONITE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_MEWTWO] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x01,
},
[SPECIES_MEW] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_CHIKORITA] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_BAYLEEF] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_MEGANIUM] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_CYNDAQUIL] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_QUILAVA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_TYPHLOSION] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_TOTODILE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_CROCONAW] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_FERALIGATR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SENTRET] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_FURRET] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_HOOTHOOT] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_NOCTOWL] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x03,
},
[SPECIES_LEDYBA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_LEDIAN] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_SPINARAK] =
{
- .coords = 0x73,
+ .size = 0x73,
.y_offset = 0x15,
},
[SPECIES_ARIADOS] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_CROBAT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_CHINCHOU] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_LANTURN] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_PICHU] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_CLEFFA] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0f,
},
[SPECIES_IGGLYBUFF] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_TOGEPI] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_TOGETIC] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_NATU] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x11,
},
[SPECIES_XATU] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_MAREEP] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_FLAAFFY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_AMPHAROS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_BELLOSSOM] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_MARILL] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0c,
},
[SPECIES_AZUMARILL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SUDOWOODO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_POLITOED] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_HOPPIP] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_SKIPLOOM] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_JUMPLUFF] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_AIPOM] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_SUNKERN] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_SUNFLORA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_YANMA] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_WOOPER] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_QUAGSIRE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_ESPEON] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_UMBREON] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_MURKROW] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_SLOWKING] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_MISDREAVUS] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_UNOWN] =
{
- .coords = 0x36,
+ .size = 0x36,
.y_offset = 0x08,
},
[SPECIES_WOBBUFFET] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0c,
},
[SPECIES_GIRAFARIG] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_PINECO] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0f,
},
[SPECIES_FORRETRESS] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x10,
},
[SPECIES_DUNSPARCE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_GLIGAR] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_STEELIX] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SNUBBULL] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_GRANBULL] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_QWILFISH] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_SCIZOR] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_SHUCKLE] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_HERACROSS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_SNEASEL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_TEDDIURSA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_URSARING] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_SLUGMA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_MAGCARGO] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_SWINUB] =
{
- .coords = 0x63,
+ .size = 0x63,
.y_offset = 0x15,
},
[SPECIES_PILOSWINE] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_CORSOLA] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_REMORAID] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_OCTILLERY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_DELIBIRD] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_MANTINE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_SKARMORY] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_HOUNDOUR] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_HOUNDOOM] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_KINGDRA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_PHANPY] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_DONPHAN] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_PORYGON2] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_STANTLER] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_SMEARGLE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_TYROGUE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_HITMONTOP] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_SMOOCHUM] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x09,
},
[SPECIES_ELEKID] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_MAGBY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_MILTANK] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_BLISSEY] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_RAIKOU] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_ENTEI] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_SUICUNE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_LARVITAR] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_PUPITAR] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_TYRANITAR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_LUGIA] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_HO_OH] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_CELEBI] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_OLD_UNOWN_B] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_C] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_D] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_E] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_F] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_G] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_H] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_I] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_J] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_K] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_L] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_M] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_N] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_O] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_P] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_Q] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_R] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_S] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_T] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_U] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_V] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_W] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_X] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_Y] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_OLD_UNOWN_Z] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_TREECKO] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_GROVYLE] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SCEPTILE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_TORCHIC] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_COMBUSKEN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_BLAZIKEN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_MUDKIP] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_MARSHTOMP] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_SWAMPERT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_POOCHYENA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_MIGHTYENA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_ZIGZAGOON] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_LINOONE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_WURMPLE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_SILCOON] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x15,
},
[SPECIES_BEAUTIFLY] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CASCOON] =
{
- .coords = 0x73,
+ .size = 0x73,
.y_offset = 0x14,
},
[SPECIES_DUSTOX] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x14,
},
[SPECIES_LOTAD] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0f,
},
[SPECIES_LOMBRE] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_LUDICOLO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_SEEDOT] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_NUZLEAF] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_SHIFTRY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_NINCADA] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x14,
},
[SPECIES_NINJASK] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SHEDINJA] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_TAILLOW] =
{
- .coords = 0x64,
+ .size = 0x64,
.y_offset = 0x11,
},
[SPECIES_SWELLOW] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SHROOMISH] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_BRELOOM] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_SPINDA] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_WINGULL] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_PELIPPER] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_SURSKIT] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_MASQUERAIN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_WAILMER] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x15,
},
[SPECIES_WAILORD] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x16,
},
[SPECIES_SKITTY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_DELCATTY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_KECLEON] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_BALTOY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_CLAYDOL] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_NOSEPASS] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0c,
},
[SPECIES_TORKOAL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_SABLEYE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_BARBOACH] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_WHISCASH] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_LUVDISC] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_CORPHISH] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_CRAWDAUNT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_FEEBAS] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_MILOTIC] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x02,
},
[SPECIES_CARVANHA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_SHARPEDO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_TRAPINCH] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0e,
},
[SPECIES_VIBRAVA] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x11,
},
[SPECIES_FLYGON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_MAKUHITA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_HARIYAMA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_ELECTRIKE] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x10,
},
[SPECIES_MANECTRIC] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_NUMEL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_CAMERUPT] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x13,
},
[SPECIES_SPHEAL] =
{
- .coords = 0x64,
+ .size = 0x64,
.y_offset = 0x12,
},
[SPECIES_SEALEO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_WALREIN] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_CACNEA] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_CACTURNE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_SNORUNT] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_GLALIE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0c,
},
[SPECIES_LUNATONE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_SOLROCK] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_AZURILL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_SPOINK] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_GRUMPIG] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_PLUSLE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_MINUN] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_MAWILE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_MEDITITE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_MEDICHAM] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x03,
},
[SPECIES_SWABLU] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_ALTARIA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_WYNAUT] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_DUSKULL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_DUSCLOPS] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_ROSELIA] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_SLAKOTH] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_VIGOROTH] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_SLAKING] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_GULPIN] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_SWALOT] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_TROPIUS] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_WHISMUR] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_LOUDRED] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_EXPLOUD] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_CLAMPERL] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_HUNTAIL] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x02,
},
[SPECIES_GOREBYSS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_ABSOL] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_SHUPPET] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_BANETTE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_SEVIPER] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_ZANGOOSE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_RELICANTH] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_ARON] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x11,
},
[SPECIES_LAIRON] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x11,
},
[SPECIES_AGGRON] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_CASTFORM] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_VOLBEAT] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_ILLUMISE] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_LILEEP] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_CRADILY] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_ANORITH] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x17,
},
[SPECIES_ARMALDO] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_RALTS] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_KIRLIA] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x06,
},
[SPECIES_GARDEVOIR] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_BAGON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_SHELGON] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_SALAMENCE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_BELDUM] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_METANG] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x10,
},
[SPECIES_METAGROSS] =
{
- .coords = 0x83,
+ .size = 0x83,
.y_offset = 0x14,
},
[SPECIES_REGIROCK] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_REGICE] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_REGISTEEL] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0e,
},
[SPECIES_KYOGRE] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x13,
},
[SPECIES_GROUDON] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_RAYQUAZA] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_LATIAS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_LATIOS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_JIRACHI] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_DEOXYS] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_CHIMECHO] =
{
- .coords = 0x47,
+ .size = 0x47,
.y_offset = 0x07,
},
[SPECIES_EGG] =
{
- .coords = 0x36,
+ .size = 0x36,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_B] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x09,
},
[SPECIES_UNOWN_C] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_UNOWN_D] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_UNOWN_E] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_F] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_G] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x05,
},
[SPECIES_UNOWN_H] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_UNOWN_I] =
{
- .coords = 0x37,
+ .size = 0x37,
.y_offset = 0x07,
},
[SPECIES_UNOWN_J] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_UNOWN_K] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x07,
},
[SPECIES_UNOWN_L] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_M] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_UNOWN_N] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_UNOWN_O] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_UNOWN_P] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_Q] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_UNOWN_R] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0c,
},
[SPECIES_UNOWN_S] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x04,
},
[SPECIES_UNOWN_T] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_UNOWN_U] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_UNOWN_V] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_UNOWN_W] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0d,
},
[SPECIES_UNOWN_X] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_UNOWN_Y] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_Z] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0a,
},
[SPECIES_UNOWN_EMARK] =
{
- .coords = 0x37,
+ .size = 0x37,
.y_offset = 0x06,
},
[SPECIES_UNOWN_QMARK] =
{
- .coords = 0x47,
+ .size = 0x47,
.y_offset = 0x06,
},
};
diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h
index a01f0360f..95ec7a132 100644
--- a/src/data/pokemon_graphics/front_pic_coordinates.h
+++ b/src/data/pokemon_graphics/front_pic_coordinates.h
@@ -4,2202 +4,2202 @@ const struct MonCoords gMonFrontPicCoords[] =
{
[SPECIES_NONE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_BULBASAUR] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0e,
},
[SPECIES_IVYSAUR] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_VENUSAUR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_CHARMANDER] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_CHARMELEON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_CHARIZARD] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SQUIRTLE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_WARTORTLE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_BLASTOISE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CATERPIE] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x10,
},
[SPECIES_METAPOD] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x14,
},
[SPECIES_BUTTERFREE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_WEEDLE] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x12,
},
[SPECIES_KAKUNA] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0e,
},
[SPECIES_BEEDRILL] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_PIDGEY] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_PIDGEOTTO] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x0b,
},
[SPECIES_PIDGEOT] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_RATTATA] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_RATICATE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_SPEAROW] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0f,
},
[SPECIES_FEAROW] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_EKANS] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_ARBOK] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_PIKACHU] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x09,
},
[SPECIES_RAICHU] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x04,
},
[SPECIES_SANDSHREW] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_SANDSLASH] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_NIDORAN_F] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0f,
},
[SPECIES_NIDORINA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_NIDOQUEEN] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_NIDORAN_M] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_NIDORINO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_NIDOKING] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x02,
},
[SPECIES_CLEFAIRY] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x10,
},
[SPECIES_CLEFABLE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_VULPIX] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_NINETALES] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_JIGGLYPUFF] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x10,
},
[SPECIES_WIGGLYTUFF] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x08,
},
[SPECIES_ZUBAT] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_GOLBAT] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_ODDISH] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0f,
},
[SPECIES_GLOOM] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_VILEPLUME] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_PARAS] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_PARASECT] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_VENONAT] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_VENOMOTH] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_DIGLETT] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x12,
},
[SPECIES_DUGTRIO] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_MEOWTH] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_PERSIAN] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_PSYDUCK] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x09,
},
[SPECIES_GOLDUCK] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x02,
},
[SPECIES_MANKEY] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_PRIMEAPE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_GROWLITHE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_ARCANINE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_POLIWAG] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x13,
},
[SPECIES_POLIWHIRL] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_POLIWRATH] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_ABRA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_KADABRA] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_ALAKAZAM] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_MACHOP] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_MACHOKE] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_MACHAMP] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_BELLSPROUT] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0f,
},
[SPECIES_WEEPINBELL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_VICTREEBEL] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_TENTACOOL] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_TENTACRUEL] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_GEODUDE] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x12,
},
[SPECIES_GRAVELER] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_GOLEM] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_PONYTA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_RAPIDASH] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SLOWPOKE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_SLOWBRO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_MAGNEMITE] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x15,
},
[SPECIES_MAGNETON] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_FARFETCHD] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_DODUO] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x05,
},
[SPECIES_DODRIO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SEEL] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_DEWGONG] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_GRIMER] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_MUK] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_SHELLDER] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x10,
},
[SPECIES_CLOYSTER] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_GASTLY] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_HAUNTER] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_GENGAR] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_ONIX] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x02,
},
[SPECIES_DROWZEE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_HYPNO] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_KRABBY] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0d,
},
[SPECIES_KINGLER] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_VOLTORB] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x13,
},
[SPECIES_ELECTRODE] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_EXEGGCUTE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_EXEGGUTOR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CUBONE] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_MAROWAK] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0b,
},
[SPECIES_HITMONLEE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_HITMONCHAN] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x04,
},
[SPECIES_LICKITUNG] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_KOFFING] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_WEEZING] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_RHYHORN] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_RHYDON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_CHANSEY] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_TANGELA] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_KANGASKHAN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_HORSEA] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0f,
},
[SPECIES_SEADRA] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_GOLDEEN] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_SEAKING] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_STARYU] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_STARMIE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_MR_MIME] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_SCYTHER] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_JYNX] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_ELECTABUZZ] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x02,
},
[SPECIES_MAGMAR] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_PINSIR] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_TAUROS] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_MAGIKARP] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_GYARADOS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x08,
},
[SPECIES_LAPRAS] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0d,
},
[SPECIES_DITTO] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x11,
},
[SPECIES_EEVEE] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x09,
},
[SPECIES_VAPOREON] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_JOLTEON] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_FLAREON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_PORYGON] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0d,
},
[SPECIES_OMANYTE] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0f,
},
[SPECIES_OMASTAR] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_KABUTO] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x11,
},
[SPECIES_KABUTOPS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_AERODACTYL] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SNORLAX] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_ARTICUNO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_ZAPDOS] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_MOLTRES] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_DRATINI] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0e,
},
[SPECIES_DRAGONAIR] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_DRAGONITE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_MEWTWO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_MEW] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0d,
},
[SPECIES_CHIKORITA] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_BAYLEEF] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_MEGANIUM] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CYNDAQUIL] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_QUILAVA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_TYPHLOSION] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_TOTODILE] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_CROCONAW] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_FERALIGATR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SENTRET] =
{
- .coords = 0x47,
+ .size = 0x47,
.y_offset = 0x04,
},
[SPECIES_FURRET] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_HOOTHOOT] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0d,
},
[SPECIES_NOCTOWL] =
{
- .coords = 0x58,
+ .size = 0x58,
.y_offset = 0x03,
},
[SPECIES_LEDYBA] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0c,
},
[SPECIES_LEDIAN] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x04,
},
[SPECIES_SPINARAK] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x13,
},
[SPECIES_ARIADOS] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_CROBAT] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CHINCHOU] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x10,
},
[SPECIES_LANTURN] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x0b,
},
[SPECIES_PICHU] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0c,
},
[SPECIES_CLEFFA] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x14,
},
[SPECIES_IGGLYBUFF] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x12,
},
[SPECIES_TOGEPI] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x14,
},
[SPECIES_TOGETIC] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_NATU] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x14,
},
[SPECIES_XATU] =
{
- .coords = 0x47,
+ .size = 0x47,
.y_offset = 0x07,
},
[SPECIES_MAREEP] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x10,
},
[SPECIES_FLAAFFY] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_AMPHAROS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_BELLOSSOM] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0e,
},
[SPECIES_MARILL] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_AZUMARILL] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_SUDOWOODO] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_POLITOED] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_HOPPIP] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_SKIPLOOM] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_JUMPLUFF] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_AIPOM] =
{
- .coords = 0x58,
+ .size = 0x58,
.y_offset = 0x03,
},
[SPECIES_SUNKERN] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_SUNFLORA] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_YANMA] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_WOOPER] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_QUAGSIRE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x07,
},
[SPECIES_ESPEON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_UMBREON] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x08,
},
[SPECIES_MURKROW] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_SLOWKING] =
{
- .coords = 0x58,
+ .size = 0x58,
.y_offset = 0x01,
},
[SPECIES_MISDREAVUS] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_UNOWN] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0f,
},
[SPECIES_WOBBUFFET] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_GIRAFARIG] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_PINECO] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_FORRETRESS] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_DUNSPARCE] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x11,
},
[SPECIES_GLIGAR] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_STEELIX] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SNUBBULL] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0d,
},
[SPECIES_GRANBULL] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x06,
},
[SPECIES_QWILFISH] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0a,
},
[SPECIES_SCIZOR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SHUCKLE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_HERACROSS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_SNEASEL] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_TEDDIURSA] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_URSARING] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x01,
},
[SPECIES_SLUGMA] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_MAGCARGO] =
{
- .coords = 0x57,
+ .size = 0x57,
.y_offset = 0x0d,
},
[SPECIES_SWINUB] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x14,
},
[SPECIES_PILOSWINE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_CORSOLA] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_REMORAID] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_OCTILLERY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_DELIBIRD] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_MANTINE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_SKARMORY] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_HOUNDOUR] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_HOUNDOOM] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_KINGDRA] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x04,
},
[SPECIES_PHANPY] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_DONPHAN] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_PORYGON2] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_STANTLER] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SMEARGLE] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_TYROGUE] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_HITMONTOP] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x05,
},
[SPECIES_SMOOCHUM] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0f,
},
[SPECIES_ELEKID] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_MAGBY] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0d,
},
[SPECIES_MILTANK] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_BLISSEY] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x06,
},
[SPECIES_RAIKOU] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_ENTEI] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SUICUNE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_LARVITAR] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_PUPITAR] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x09,
},
[SPECIES_TYRANITAR] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_LUGIA] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_HO_OH] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CELEBI] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_OLD_UNOWN_B] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_C] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_D] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_E] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_F] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_G] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_H] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_I] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_J] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_K] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_L] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_M] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_N] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_O] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_P] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_Q] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_R] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_S] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_T] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_U] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_V] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_W] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_X] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_Y] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_OLD_UNOWN_Z] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_TREECKO] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_GROVYLE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_SCEPTILE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_TORCHIC] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_COMBUSKEN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_BLAZIKEN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_MUDKIP] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0c,
},
[SPECIES_MARSHTOMP] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_SWAMPERT] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_POOCHYENA] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_MIGHTYENA] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_ZIGZAGOON] =
{
- .coords = 0x85,
+ .size = 0x85,
.y_offset = 0x0f,
},
[SPECIES_LINOONE] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_WURMPLE] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0e,
},
[SPECIES_SILCOON] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x11,
},
[SPECIES_BEAUTIFLY] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x09,
},
[SPECIES_CASCOON] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x10,
},
[SPECIES_DUSTOX] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0f,
},
[SPECIES_LOTAD] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0e,
},
[SPECIES_LOMBRE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_LUDICOLO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SEEDOT] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x10,
},
[SPECIES_NUZLEAF] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_SHIFTRY] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_NINCADA] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x12,
},
[SPECIES_NINJASK] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_SHEDINJA] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_TAILLOW] =
{
- .coords = 0x64,
+ .size = 0x64,
.y_offset = 0x10,
},
[SPECIES_SWELLOW] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_SHROOMISH] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_BRELOOM] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_SPINDA] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x08,
},
[SPECIES_WINGULL] =
{
- .coords = 0x84,
+ .size = 0x84,
.y_offset = 0x18,
},
[SPECIES_PELIPPER] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x04,
},
[SPECIES_SURSKIT] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0f,
},
[SPECIES_MASQUERAIN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_WAILMER] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0f,
},
[SPECIES_WAILORD] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x0a,
},
[SPECIES_SKITTY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0b,
},
[SPECIES_DELCATTY] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_KECLEON] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_BALTOY] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x10,
},
[SPECIES_CLAYDOL] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x06,
},
[SPECIES_NOSEPASS] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0c,
},
[SPECIES_TORKOAL] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_SABLEYE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_BARBOACH] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0b,
},
[SPECIES_WHISCASH] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x09,
},
[SPECIES_LUVDISC] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x18,
},
[SPECIES_CORPHISH] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0c,
},
[SPECIES_CRAWDAUNT] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_FEEBAS] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x0d,
},
[SPECIES_MILOTIC] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CARVANHA] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x06,
},
[SPECIES_SHARPEDO] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_TRAPINCH] =
{
- .coords = 0x54,
+ .size = 0x54,
.y_offset = 0x10,
},
[SPECIES_VIBRAVA] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0c,
},
[SPECIES_FLYGON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_MAKUHITA] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_HARIYAMA] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_ELECTRIKE] =
{
- .coords = 0x64,
+ .size = 0x64,
.y_offset = 0x12,
},
[SPECIES_MANECTRIC] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x04,
},
[SPECIES_NUMEL] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0f,
},
[SPECIES_CAMERUPT] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x09,
},
[SPECIES_SPHEAL] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x10,
},
[SPECIES_SEALEO] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0a,
},
[SPECIES_WALREIN] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_CACNEA] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x10,
},
[SPECIES_CACTURNE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_SNORUNT] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_GLALIE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x0a,
},
[SPECIES_LUNATONE] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_SOLROCK] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_AZURILL] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_SPOINK] =
{
- .coords = 0x46,
+ .size = 0x46,
.y_offset = 0x09,
},
[SPECIES_GRUMPIG] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_PLUSLE] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0e,
},
[SPECIES_MINUN] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0c,
},
[SPECIES_MAWILE] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_MEDITITE] =
{
- .coords = 0x65,
+ .size = 0x65,
.y_offset = 0x0c,
},
[SPECIES_MEDICHAM] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x01,
},
[SPECIES_SWABLU] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x11,
},
[SPECIES_ALTARIA] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_WYNAUT] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_DUSKULL] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0a,
},
[SPECIES_DUSCLOPS] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x05,
},
[SPECIES_ROSELIA] =
{
- .coords = 0x76,
+ .size = 0x76,
.y_offset = 0x08,
},
[SPECIES_SLAKOTH] =
{
- .coords = 0x74,
+ .size = 0x74,
.y_offset = 0x12,
},
[SPECIES_VIGOROTH] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_SLAKING] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x08,
},
[SPECIES_GULPIN] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x12,
},
[SPECIES_SWALOT] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_TROPIUS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_WHISMUR] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_LOUDRED] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_EXPLOUD] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_CLAMPERL] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0e,
},
[SPECIES_HUNTAIL] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x03,
},
[SPECIES_GOREBYSS] =
{
- .coords = 0x86,
+ .size = 0x86,
.y_offset = 0x0b,
},
[SPECIES_ABSOL] =
{
- .coords = 0x68,
+ .size = 0x68,
.y_offset = 0x00,
},
[SPECIES_SHUPPET] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0e,
},
[SPECIES_BANETTE] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0c,
},
[SPECIES_SEVIPER] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x08,
},
[SPECIES_ZANGOOSE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x05,
},
[SPECIES_RELICANTH] =
{
- .coords = 0x77,
+ .size = 0x77,
.y_offset = 0x0b,
},
[SPECIES_ARON] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x14,
},
[SPECIES_LAIRON] =
{
- .coords = 0x75,
+ .size = 0x75,
.y_offset = 0x0d,
},
[SPECIES_AGGRON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_CASTFORM] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x11,
},
[SPECIES_VOLBEAT] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_ILLUMISE] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x08,
},
[SPECIES_LILEEP] =
{
- .coords = 0x67,
+ .size = 0x67,
.y_offset = 0x07,
},
[SPECIES_CRADILY] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x00,
},
[SPECIES_ANORITH] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x08,
},
[SPECIES_ARMALDO] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_RALTS] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0f,
},
[SPECIES_KIRLIA] =
{
- .coords = 0x47,
+ .size = 0x47,
.y_offset = 0x06,
},
[SPECIES_GARDEVOIR] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x01,
},
[SPECIES_BAGON] =
{
- .coords = 0x56,
+ .size = 0x56,
.y_offset = 0x0b,
},
[SPECIES_SHELGON] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x09,
},
[SPECIES_SALAMENCE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_BELDUM] =
{
- .coords = 0x55,
+ .size = 0x55,
.y_offset = 0x0f,
},
[SPECIES_METANG] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x07,
},
[SPECIES_METAGROSS] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x06,
},
[SPECIES_REGIROCK] =
{
- .coords = 0x78,
+ .size = 0x78,
.y_offset = 0x04,
},
[SPECIES_REGICE] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_REGISTEEL] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x03,
},
[SPECIES_KYOGRE] =
{
- .coords = 0x87,
+ .size = 0x87,
.y_offset = 0x04,
},
[SPECIES_GROUDON] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_RAYQUAZA] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x00,
},
[SPECIES_LATIAS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_LATIOS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x02,
},
[SPECIES_JIRACHI] =
{
- .coords = 0x66,
+ .size = 0x66,
.y_offset = 0x0d,
},
[SPECIES_DEOXYS] =
{
- .coords = 0x88,
+ .size = 0x88,
.y_offset = 0x01,
},
[SPECIES_CHIMECHO] =
{
- .coords = 0x37,
+ .size = 0x37,
.y_offset = 0x06,
},
[SPECIES_EGG] =
{
- .coords = 0x33,
+ .size = 0x33,
.y_offset = 0x14,
},
[SPECIES_UNOWN_B] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x10,
},
[SPECIES_UNOWN_C] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_UNOWN_D] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_UNOWN_E] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x11,
},
[SPECIES_UNOWN_F] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x11,
},
[SPECIES_UNOWN_G] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0e,
},
[SPECIES_UNOWN_H] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_UNOWN_I] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x10,
},
[SPECIES_UNOWN_J] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x11,
},
[SPECIES_UNOWN_K] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x11,
},
[SPECIES_UNOWN_L] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x13,
},
[SPECIES_UNOWN_M] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x13,
},
[SPECIES_UNOWN_N] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x14,
},
[SPECIES_UNOWN_O] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x10,
},
[SPECIES_UNOWN_P] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x13,
},
[SPECIES_UNOWN_Q] =
{
- .coords = 0x43,
+ .size = 0x43,
.y_offset = 0x15,
},
[SPECIES_UNOWN_R] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x13,
},
[SPECIES_UNOWN_S] =
{
- .coords = 0x45,
+ .size = 0x45,
.y_offset = 0x0c,
},
[SPECIES_UNOWN_T] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x12,
},
[SPECIES_UNOWN_U] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x12,
},
[SPECIES_UNOWN_V] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x12,
},
[SPECIES_UNOWN_W] =
{
- .coords = 0x44,
+ .size = 0x44,
.y_offset = 0x13,
},
[SPECIES_UNOWN_X] =
{
- .coords = 0x33,
+ .size = 0x33,
.y_offset = 0x15,
},
[SPECIES_UNOWN_Y] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x11,
},
[SPECIES_UNOWN_Z] =
{
- .coords = 0x34,
+ .size = 0x34,
.y_offset = 0x10,
},
[SPECIES_UNOWN_EMARK] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0f,
},
[SPECIES_UNOWN_QMARK] =
{
- .coords = 0x35,
+ .size = 0x35,
.y_offset = 0x0d,
},
};
diff --git a/src/data/trainer_graphics/back_pic_tables.h b/src/data/trainer_graphics/back_pic_tables.h
index 8d4e27694..920ecbb39 100644
--- a/src/data/trainer_graphics/back_pic_tables.h
+++ b/src/data/trainer_graphics/back_pic_tables.h
@@ -1,13 +1,13 @@
const struct MonCoords gTrainerBackPicCoords[] =
{
- {8, 4},
- {8, 4},
- {8, 5},
- {8, 5},
- {8, 4},
- {8, 4},
- {8, 4},
- {8, 4},
+ {.size = 8, .y_offset = 4},
+ {.size = 8, .y_offset = 4},
+ {.size = 8, .y_offset = 5},
+ {.size = 8, .y_offset = 5},
+ {.size = 8, .y_offset = 4},
+ {.size = 8, .y_offset = 4},
+ {.size = 8, .y_offset = 4},
+ {.size = 8, .y_offset = 4},
};
// this table goes functionally unused, since none of these pics are compressed
diff --git a/src/data/trainer_graphics/front_pic_tables.h b/src/data/trainer_graphics/front_pic_tables.h
index d8f8c2492..fc637fc6e 100644
--- a/src/data/trainer_graphics/front_pic_tables.h
+++ b/src/data/trainer_graphics/front_pic_tables.h
@@ -1,98 +1,98 @@
const struct MonCoords gTrainerFrontPicCoords[] =
{
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 2},
- {8, 2},
- {8, 1},
- {8, 1},
- {8, 2},
- {8, 1},
- {8, 2},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 2},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 2},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
- {8, 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 2},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
+ {.size = 8, .y_offset = 1},
};
const struct CompressedSpriteSheet gTrainerFrontPicTable[] =
diff --git a/src/decoration.c b/src/decoration.c
index 438f2cbd1..c4c3d6171 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -1629,7 +1629,7 @@ void sub_8128950(u8 taskId)
void sub_81289D0(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_085A72C4);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085A72C4);
}
void sub_81289F0(u8 taskId)
@@ -1694,7 +1694,7 @@ void sub_8128AAC(u8 taskId)
void sub_8128B80(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_085A72CC);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085A72CC);
}
void sub_8128BA0(u8 taskId)
@@ -2589,7 +2589,7 @@ void sub_812A0E8(u8 taskId)
void sub_812A1A0(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_085A7348);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085A7348);
}
void sub_812A1C0(u8 taskId)
@@ -2602,7 +2602,7 @@ void sub_812A1C0(u8 taskId)
void sub_812A1F0(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_085A7350);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085A7350);
}
void sub_812A210(u8 taskId)
@@ -2726,7 +2726,7 @@ void sub_812A3D4(u8 taskId)
void sub_812A458(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_085A741C);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085A741C);
}
void sub_812A478(u8 taskId)
diff --git a/src/event_data.c b/src/event_data.c
index f6a1cde78..df289c538 100644
--- a/src/event_data.c
+++ b/src/event_data.c
@@ -45,7 +45,7 @@ void ClearTempFieldEventData(void)
FlagClear(FLAG_SYS_ENC_DOWN_ITEM);
FlagClear(FLAG_SYS_USE_STRENGTH);
FlagClear(FLAG_SYS_CTRL_OBJ_DELETE);
- FlagClear(FLAG_0x880);
+ FlagClear(FLAG_NURSE_UNION_ROOM_REMINDER);
}
// Probably had different flag splits at one point.
@@ -114,21 +114,21 @@ bool32 IsMysteryGiftEnabled(void)
void sub_809D4D8(void)
{
FlagClear(FLAG_MYSTERY_EVENT_DONE);
- FlagClear(FLAG_0x1E5);
- FlagClear(FLAG_0x1E6);
- FlagClear(FLAG_0x1E7);
- FlagClear(FLAG_0x1E8);
- FlagClear(FLAG_0x1E9);
- FlagClear(FLAG_0x1EA);
- FlagClear(FLAG_0x1EB);
- FlagClear(FLAG_0x1EC);
- FlagClear(FLAG_0x1ED);
- FlagClear(FLAG_0x1EE);
- FlagClear(FLAG_0x1EF);
- FlagClear(FLAG_0x1F0);
- FlagClear(FLAG_0x1F1);
- FlagClear(FLAG_0x1F2);
- FlagClear(FLAG_0x1F3);
+ FlagClear(FLAG_MYSTERY_EVENT_1);
+ FlagClear(FLAG_MYSTERY_EVENT_2);
+ FlagClear(FLAG_MYSTERY_EVENT_3);
+ FlagClear(FLAG_MYSTERY_EVENT_4);
+ FlagClear(FLAG_MYSTERY_EVENT_5);
+ FlagClear(FLAG_MYSTERY_EVENT_6);
+ FlagClear(FLAG_MYSTERY_EVENT_7);
+ FlagClear(FLAG_MYSTERY_EVENT_8);
+ FlagClear(FLAG_MYSTERY_EVENT_9);
+ FlagClear(FLAG_MYSTERY_EVENT_10);
+ FlagClear(FLAG_MYSTERY_EVENT_11);
+ FlagClear(FLAG_MYSTERY_EVENT_12);
+ FlagClear(FLAG_MYSTERY_EVENT_13);
+ FlagClear(FLAG_MYSTERY_EVENT_14);
+ FlagClear(FLAG_MYSTERY_EVENT_15);
}
void sub_809D570(void)
diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c
index e6a859c84..4f6f5acdf 100644
--- a/src/field_control_avatar.c
+++ b/src/field_control_avatar.c
@@ -32,7 +32,7 @@
#include "constants/maps.h"
#include "constants/songs.h"
-extern bool32 sub_8196034(void);
+extern bool32 TryStartMatchCall(void);
static EWRAM_DATA u8 sWildEncounterImmunitySteps = 0;
static EWRAM_DATA u16 sPreviousPlayerMetatileBehavior = 0;
@@ -600,7 +600,7 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior)
ScriptContext1_SetupScript(SSTidalCorridor_EventScript_23C050);
return TRUE;
}
- if (sub_8196034())
+ if (TryStartMatchCall())
return TRUE;
return FALSE;
}
diff --git a/src/field_message_box.c b/src/field_message_box.c
index 5e23b5f6b..299aafaf2 100755
--- a/src/field_message_box.c
+++ b/src/field_message_box.c
@@ -5,8 +5,8 @@
#include "task.h"
#include "text.h"
-extern bool32 sub_8196094(void);
-extern void sub_8196080(u8*);
+extern bool32 IsMatchCallTaskActive(void);
+extern void StartMatchCallFromScript(u8*);
static EWRAM_DATA u8 sFieldMessageBoxMode = 0;
@@ -68,7 +68,7 @@ bool8 ShowFieldMessage(u8 *str)
void sub_8098214(u8 taskId)
{
- if (!sub_8196094())
+ if (!IsMatchCallTaskActive())
{
sFieldMessageBoxMode = 0;
DestroyTask(taskId);
@@ -81,7 +81,7 @@ bool8 sub_8098238(u8 *str)
return FALSE;
StringExpandPlaceholders(gStringVar4, str);
CreateTask(sub_8098214, 0);
- sub_8196080(str);
+ StartMatchCallFromScript(str);
sFieldMessageBoxMode = 2;
return TRUE;
}
diff --git a/src/field_specials.c b/src/field_specials.c
index 5883e0245..0dc1bf18b 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -361,7 +361,7 @@ u8 GetSSTidalLocation(s8 *mapGroup, s8 *mapNum, s16 *x, s16 *y)
bool32 is_tile_that_overrides_player_control(void)
{
- if (FlagGet(FLAG_0x088))
+ if (FlagGet(FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL))
{
switch (gMapHeader.mapType)
{
@@ -388,7 +388,7 @@ bool32 is_tile_that_overrides_player_control(void)
bool32 sub_8138120(void)
{
- if (FlagGet(FLAG_0x08A))
+ if (FlagGet(FLAG_REGISTER_WINONA_POKENAV))
{
switch (gMapHeader.mapType)
{
@@ -415,7 +415,7 @@ bool32 sub_8138120(void)
bool32 sub_8138168(void)
{
- if (FlagGet(FLAG_0x072))
+ if (FlagGet(FLAG_SCOTT_CALL_NATIONAL_DEX))
{
switch (gMapHeader.mapType)
{
@@ -442,7 +442,7 @@ bool32 sub_8138168(void)
bool32 sub_81381B0(void)
{
- if (FlagGet(FLAG_0x080))
+ if (FlagGet(FLAG_ENABLE_ROXANNE_FIRST_CALL))
{
switch (gMapHeader.mapType)
{
@@ -469,7 +469,7 @@ bool32 sub_81381B0(void)
bool32 sub_81381F8(void)
{
- if (FlagGet(FLAG_0x075))
+ if (FlagGet(FLAG_DEFEATED_MAGMA_SPACE_CENTER))
{
switch (gMapHeader.mapType)
{
@@ -1201,7 +1201,7 @@ void EndLotteryCornerComputerEffect(void)
void SetTrickHouseEndRoomFlag(void)
{
u16 *specVar = &gSpecialVar_0x8004;
- u16 flag = FLAG_0x1F5;
+ u16 flag = FLAG_TRICK_HOUSE_END_ROOM;
*specVar = flag;
FlagSet(flag);
}
@@ -1209,7 +1209,7 @@ void SetTrickHouseEndRoomFlag(void)
void ResetTrickHouseEndRoomFlag(void)
{
u16 *specVar = &gSpecialVar_0x8004;
- u16 flag = FLAG_0x1F5;
+ u16 flag = FLAG_TRICK_HOUSE_END_ROOM;
*specVar = flag;
FlagClear(flag);
}
@@ -2111,7 +2111,7 @@ void sub_813A080(void)
u16 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
- if (battleMode == FRONTIER_MODE_MULTIS && !FlagGet(FLAG_0x152))
+ if (battleMode == FRONTIER_MODE_MULTIS && !FlagGet(FLAG_CHOSEN_MULTI_BATTLE_NPC_PARTNER))
{
gSpecialVar_0x8005 = 5;
gSpecialVar_0x8006 = 4;
@@ -3425,11 +3425,11 @@ void sub_813B2E4(void)
u16 randomValue = Random();
VarSet(VAR_0x4038, 0);
- if (FlagGet(FLAG_0x1BE) == TRUE)
+ if (FlagGet(FLAG_DEFEATED_KYOGRE) == TRUE)
{
VarSet(VAR_0x4037, (randomValue & 7) + 1);
}
- else if (FlagGet(FLAG_0x1BF) == TRUE)
+ else if (FlagGet(FLAG_DEFEATED_GROUDON) == TRUE)
{
VarSet(VAR_0x4037, (randomValue & 7) + 9);
}
diff --git a/src/link.c b/src/link.c
index 69373f773..bec9dddc6 100644
--- a/src/link.c
+++ b/src/link.c
@@ -317,7 +317,7 @@ static void InitLocalLinkPlayer(void)
gLocalLinkPlayer.version = gGameVersion + 0x4000;
gLocalLinkPlayer.lp_field_2 = 0x8000;
gLocalLinkPlayer.name[8] = IsNationalPokedexEnabled();
- if (FlagGet(FLAG_0x87F))
+ if (FlagGet(FLAG_IS_CHAMPION))
{
gLocalLinkPlayer.name[8] |= 0x10;
}
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 0625e4af4..0f997591f 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -2140,7 +2140,7 @@ void sub_800DD94(struct UnkLinkRfuStruct_02022B14 *data, u8 r9, bool32 r2, s32 r
data->unk_00.unk_00_4 = 0;
data->unk_00.unk_00_5 = 0;
data->unk_00.unk_00_6 = 0;
- data->unk_00.unk_00_7 = FlagGet(FLAG_0x87F);
+ data->unk_00.unk_00_7 = FlagGet(FLAG_IS_CHAMPION);
data->unk_00.unk_01_0 = IsNationalPokedexEnabled();
data->unk_00.unk_01_1 = FlagGet(FLAG_SYS_GAME_CLEAR);
}
diff --git a/src/match_call.c b/src/match_call.c
index a15700070..e7e91969f 100644
--- a/src/match_call.c
+++ b/src/match_call.c
@@ -1,1275 +1,2017 @@
-
-// Includes
#include "global.h"
+#include "alloc.h"
+#include "battle.h"
#include "battle_setup.h"
+#include "bg.h"
+#include "data2.h"
#include "event_data.h"
+#include "event_object_movement.h"
+#include "field_player_avatar.h"
+#include "main.h"
+#include "menu.h"
+#include "new_game.h"
+#include "overworld.h"
+#include "palette.h"
+#include "pokedex.h"
+#include "pokemon.h"
+#include "random.h"
+#include "region_map.h"
+#include "rtc.h"
+#include "script.h"
+#include "script_movement.h"
+#include "sound.h"
#include "string_util.h"
-#include "battle.h"
-#include "gym_leader_rematch.h"
-
-extern void sub_8197080(u8 *dest);
-extern const u8 gTrainerClassNames[][13];
-
-// Static type declarations
-
-typedef struct MatchCallTextDataStruct {
- const u8 *text;
- u16 flag;
- u16 flag2;
-} match_call_text_data_t;
-
-struct MatchCallStructCommon {
- u8 type;
- u8 v1;
- u16 flag;
-};
-
-struct MatchCallStruct0 {
- u8 type;
- u8 v1;
- u16 flag;
- const u8 *desc;
- const u8 *name;
- const match_call_text_data_t *textData;
+#include "strings.h"
+#include "task.h"
+#include "wild_encounter.h"
+#include "window.h"
+#include "constants/abilities.h"
+#include "constants/battle_frontier.h"
+#include "constants/event_objects.h"
+#include "constants/maps.h"
+#include "constants/region_map_sections.h"
+#include "constants/songs.h"
+#include "constants/species.h"
+#include "constants/trainers.h"
+
+struct MatchCallState
+{
+ u32 minutes;
+ u16 trainerId;
+ u8 stepCounter;
+ u8 triggeredFromScript;
};
-struct MatchCallStruct1 {
- u8 type;
- u8 v1;
- u16 flag;
- u16 rematchTableIdx;
- const u8 *desc;
- const u8 *name;
- const match_call_text_data_t *textData;
+struct MatchCallTrainerTextInfo
+{
+ u16 trainerId;
+ u16 unused;
+ u16 battleTopicTextIds[3];
+ u16 generalTextId;
+ u8 battleFrontierRecordStreakTextIndex;
+ u16 sameRouteMatchCallTextId;
+ u16 differentRouteMatchCallTextId;
};
-struct MatchCallSubstruct2 {
- u16 flag;
- u8 v2;
+struct MatchCallText
+{
+ const u8 *text;
+ s8 stringVarFuncIds[3];
};
-struct MatchCallStruct2 {
- u8 type;
- u8 v1;
- u16 flag;
- u16 rematchTableIdx;
- const u8 *desc;
- const match_call_text_data_t *textData;
- const struct MatchCallSubstruct2 *v10;
+struct MultiTrainerMatchCallText
+{
+ u16 trainerId;
+ const u8 *text;
};
-struct MatchCallStruct3 {
- u8 type;
- u8 v1;
- u16 flag;
- const u8 *desc;
- const u8 *name;
+struct BattleFrontierStreakInfo
+{
+ u16 facilityId;
+ u16 streak;
};
-struct MatchCallStruct4 {
- u8 type;
- u8 gender;
- u16 flag;
- const u8 *desc;
- const u8 *name;
- const match_call_text_data_t *textData;
+EWRAM_DATA struct MatchCallState gMatchCallState = {0};
+EWRAM_DATA struct BattleFrontierStreakInfo gBattleFrontierStreakInfo = {0};
+
+bool32 SelectMatchCallMessage(int, u8 *);
+static u32 GetCurrentTotalMinutes(struct Time *);
+static u32 GetNumRegisteredNPCs(void);
+static u32 GetActiveMatchCallTrainerId(u32);
+static int GetTrainerMatchCallId(int);
+static u16 GetRematchTrainerLocation(int);
+static bool32 TrainerIsEligibleForRematch(int);
+static void StartMatchCall(void);
+static void ExecuteMatchCall(u8);
+static void DrawMatchCallTextBoxBorder(u32, u32, u32);
+static void sub_8196694(u8);
+static void InitMatchCallTextPrinter(int, const u8 *);
+static bool32 ExecuteMatchCallTextPrinter(int);
+static const struct MatchCallText *GetSameRouteMatchCallText(int, u8 *);
+static const struct MatchCallText *GetDifferentRouteMatchCallText(int, u8 *);
+static const struct MatchCallText *GetBattleMatchCallText(int, u8 *);
+static const struct MatchCallText *GetGeneralMatchCallText(int, u8 *);
+static bool32 sub_8196D74(int);
+static void BuildMatchCallString(int, const struct MatchCallText *, u8 *);
+static u16 GetFrontierStreakInfo(u16, u32 *);
+static void PopulateMatchCallStringVars(int, const s8 *);
+static void PopulateMatchCallStringVar(int, int, u8 *);
+static bool32 LoadMatchCallWindowGfx(u8);
+static bool32 MoveMatchCallWindowToVram(u8);
+static bool32 PrintMatchCallIntroEllipsis(u8);
+static bool32 sub_81962B0(u8);
+static bool32 sub_81962D8(u8);
+static bool32 sub_8196330(u8);
+static bool32 sub_8196390(u8);
+static bool32 sub_81963F0(u8);
+static void PopulateTrainerName(int, u8 *);
+static void PopulateMapName(int, u8 *);
+static void PopulateSpeciesFromTrainerLocation(int, u8 *);
+static void PopulateSpeciesFromTrainerParty(int, u8 *);
+static void PopulateBattleFrontierFacilityName(int, u8 *);
+static void PopulateBattleFrontierStreak(int, u8 *);
+
+extern void sub_81973A4(void);
+
+#define TEXT_ID(topic, id) (((topic) << 8) | ((id) & 0xFF))
+
+static const struct MatchCallTrainerTextInfo sMatchCallTrainers[] =
+{
+ {
+ .trainerId = TRAINER_ROSE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 3),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_ANDRES_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) },
+ .generalTextId = TEXT_ID(1, 62),
+ .battleFrontierRecordStreakTextIndex = 12,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 12),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 12),
+ },
+ {
+ .trainerId = TRAINER_DUSTY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) },
+ .generalTextId = TEXT_ID(1, 4),
+ .battleFrontierRecordStreakTextIndex = 12,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 12),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 12),
+ },
+ {
+ .trainerId = TRAINER_LOLA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) },
+ .generalTextId = TEXT_ID(1, 5),
+ .battleFrontierRecordStreakTextIndex = 2,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 2),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 2),
+ },
+ {
+ .trainerId = TRAINER_RICKY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 6),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_LILA_AND_ROY_1,
+ .unused = 4,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 61),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_CRISTIN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 10), TEXT_ID(2, 10), TEXT_ID(3, 10) },
+ .generalTextId = TEXT_ID(1, 64),
+ .battleFrontierRecordStreakTextIndex = 10,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 10),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 10),
+ },
+ {
+ .trainerId = TRAINER_BROOKE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 8),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_WILTON_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) },
+ .generalTextId = TEXT_ID(1, 7),
+ .battleFrontierRecordStreakTextIndex = 6,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 6),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 6),
+ },
+ {
+ .trainerId = TRAINER_VALERIE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 9),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_CINDY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 10),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_THALIA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 10), TEXT_ID(3, 10) },
+ .generalTextId = TEXT_ID(1, 14),
+ .battleFrontierRecordStreakTextIndex = 10,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 10),
+ },
+ {
+ .trainerId = TRAINER_JESSICA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 10), TEXT_ID(2, 10), TEXT_ID(3, 10) },
+ .generalTextId = TEXT_ID(1, 11),
+ .battleFrontierRecordStreakTextIndex = 10,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 10),
+ },
+ {
+ .trainerId = TRAINER_WINSTON_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) },
+ .generalTextId = TEXT_ID(1, 12),
+ .battleFrontierRecordStreakTextIndex = 4,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 4),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 4),
+ },
+ {
+ .trainerId = TRAINER_STEVE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) },
+ .generalTextId = TEXT_ID(1, 13),
+ .battleFrontierRecordStreakTextIndex = 7,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 7),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 7),
+ },
+ {
+ .trainerId = TRAINER_TONY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 15),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_NOB_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 16),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_KOJI_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 59),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_FERNANDO_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) },
+ .generalTextId = TEXT_ID(1, 17),
+ .battleFrontierRecordStreakTextIndex = 6,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 6),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 6),
+ },
+ {
+ .trainerId = TRAINER_DALTON_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) },
+ .generalTextId = TEXT_ID(1, 18),
+ .battleFrontierRecordStreakTextIndex = 4,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 4),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 4),
+ },
+ {
+ .trainerId = TRAINER_BERNIE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 11), TEXT_ID(2, 11), TEXT_ID(3, 11) },
+ .generalTextId = TEXT_ID(1, 19),
+ .battleFrontierRecordStreakTextIndex = 11,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 11),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 11),
+ },
+ {
+ .trainerId = TRAINER_ETHAN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 20),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_JOHN_AND_JAY_1,
+ .unused = 3,
+ .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) },
+ .generalTextId = TEXT_ID(1, 60),
+ .battleFrontierRecordStreakTextIndex = 12,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 12),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 12),
+ },
+ {
+ .trainerId = TRAINER_JEFFREY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) },
+ .generalTextId = TEXT_ID(1, 21),
+ .battleFrontierRecordStreakTextIndex = 7,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 7),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 7),
+ },
+ {
+ .trainerId = TRAINER_CAMERON_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) },
+ .generalTextId = TEXT_ID(1, 22),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 4),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 4),
+ },
+ {
+ .trainerId = TRAINER_JACKI_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 23),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_WALTER_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) },
+ .generalTextId = TEXT_ID(1, 24),
+ .battleFrontierRecordStreakTextIndex = 12,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 12),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 12),
+ },
+ {
+ .trainerId = TRAINER_KAREN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) },
+ .generalTextId = TEXT_ID(1, 26),
+ .battleFrontierRecordStreakTextIndex = 2,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 2),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 2),
+ },
+ {
+ .trainerId = TRAINER_JERRY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 25),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_ANNA_AND_MEG_1,
+ .unused = 6,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 27),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_ISABEL_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 14), TEXT_ID(2, 14), TEXT_ID(3, 14) },
+ .generalTextId = TEXT_ID(1, 29),
+ .battleFrontierRecordStreakTextIndex = 14,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 14),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 14),
+ },
+ {
+ .trainerId = TRAINER_MIGUEL_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 11), TEXT_ID(2, 11), TEXT_ID(3, 11) },
+ .generalTextId = TEXT_ID(1, 28),
+ .battleFrontierRecordStreakTextIndex = 11,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 11),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 11),
+ },
+ {
+ .trainerId = TRAINER_TIMOTHY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 12), TEXT_ID(2, 12), TEXT_ID(3, 12) },
+ .generalTextId = TEXT_ID(1, 30),
+ .battleFrontierRecordStreakTextIndex = 12,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 12),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 12),
+ },
+ {
+ .trainerId = TRAINER_SHELBY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 13), TEXT_ID(2, 13), TEXT_ID(3, 13) },
+ .generalTextId = TEXT_ID(1, 31),
+ .battleFrontierRecordStreakTextIndex = 13,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 13),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 13),
+ },
+ {
+ .trainerId = TRAINER_CALVIN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 32),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_ELLIOT_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 33),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_ISAIAH_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 38),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_MARIA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 37),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_ABIGAIL_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 35),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_DYLAN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 36),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_KATELYN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 40),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_BENJAMIN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 34),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_PABLO_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 39),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_NICOLAS_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 4), TEXT_ID(2, 4), TEXT_ID(3, 4) },
+ .generalTextId = TEXT_ID(1, 41),
+ .battleFrontierRecordStreakTextIndex = 4,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 4),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 4),
+ },
+ {
+ .trainerId = TRAINER_ROBERT_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 6), TEXT_ID(2, 6), TEXT_ID(3, 6) },
+ .generalTextId = TEXT_ID(1, 42),
+ .battleFrontierRecordStreakTextIndex = 6,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 6),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 6),
+ },
+ {
+ .trainerId = TRAINER_LAO_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 43),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_CYNDY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 44),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_MADELINE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 45),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_JENNY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 46),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_DIANA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) },
+ .generalTextId = TEXT_ID(1, 47),
+ .battleFrontierRecordStreakTextIndex = 2,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 2),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 2),
+ },
+ {
+ .trainerId = TRAINER_AMY_AND_LIV_1,
+ .unused = 2,
+ .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) },
+ .generalTextId = TEXT_ID(1, 48),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 2),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 2),
+ },
+ {
+ .trainerId = TRAINER_ERNEST_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 49),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_CORY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 63),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_EDWIN_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 7), TEXT_ID(2, 7), TEXT_ID(3, 7) },
+ .generalTextId = TEXT_ID(1, 50),
+ .battleFrontierRecordStreakTextIndex = 7,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 7),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 7),
+ },
+ {
+ .trainerId = TRAINER_LYDIA_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 52),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_ISAAC_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 51),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_GABRIELLE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 8), TEXT_ID(2, 8), TEXT_ID(3, 8) },
+ .generalTextId = TEXT_ID(1, 2),
+ .battleFrontierRecordStreakTextIndex = 8,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 8),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 8),
+ },
+ {
+ .trainerId = TRAINER_CATHERINE_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 54),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
+ {
+ .trainerId = TRAINER_JACKSON_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 5), TEXT_ID(2, 5), TEXT_ID(3, 5) },
+ .generalTextId = TEXT_ID(1, 53),
+ .battleFrontierRecordStreakTextIndex = 5,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 5),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 5),
+ },
+ {
+ .trainerId = TRAINER_HALEY_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 2), TEXT_ID(2, 2), TEXT_ID(3, 2) },
+ .generalTextId = TEXT_ID(1, 55),
+ .battleFrontierRecordStreakTextIndex = 2,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 2),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 2),
+ },
+ {
+ .trainerId = TRAINER_JAMES_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 1), TEXT_ID(2, 1), TEXT_ID(3, 1) },
+ .generalTextId = TEXT_ID(1, 56),
+ .battleFrontierRecordStreakTextIndex = 1,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 1),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 1),
+ },
+ {
+ .trainerId = TRAINER_TRENT_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 3), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 57),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_SAWYER_1,
+ .unused = 0,
+ .battleTopicTextIds = { TEXT_ID(1, 15), TEXT_ID(2, 3), TEXT_ID(3, 3) },
+ .generalTextId = TEXT_ID(1, 1),
+ .battleFrontierRecordStreakTextIndex = 3,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 3),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 3),
+ },
+ {
+ .trainerId = TRAINER_KIRA_AND_DAN_1,
+ .unused = 1,
+ .battleTopicTextIds = { TEXT_ID(1, 9), TEXT_ID(2, 9), TEXT_ID(3, 9) },
+ .generalTextId = TEXT_ID(1, 58),
+ .battleFrontierRecordStreakTextIndex = 9,
+ .sameRouteMatchCallTextId = TEXT_ID(1, 9),
+ .differentRouteMatchCallTextId = TEXT_ID(2, 9),
+ },
};
-struct MatchCallStruct5 {
- u8 type;
- u8 v1;
- u16 flag;
- u16 v4;
- const u8 *desc;
- const u8 *name;
- const match_call_text_data_t *textData;
+static const struct MatchCallText sMatchCallWildBattleTexts[] =
+{
+ { .text = MatchCall_WildBattleText1, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText2, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText3, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText4, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText5, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText6, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText7, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText8, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText9, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText10, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText11, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText12, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText13, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText14, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_WildBattleText15, .stringVarFuncIds = { 0, 2, -1 } },
};
-#define MATCHCALLDEF(name, type_, ...) \
-static const struct MatchCallStruct##type_ name = { \
- .type = type_, \
- __VA_ARGS__ \
+ static const struct MatchCallText sMatchCallNegativeBattleTexts[] =
+ {
+ { .text = MatchCall_NegativeBattleText1, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText2, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText3, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText4, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText5, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText6, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText7, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText8, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText9, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText10, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText11, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText12, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText13, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_NegativeBattleText14, .stringVarFuncIds = { 0, -1, -1 } },
};
-typedef union {
- const struct MatchCallStructCommon *common;
- const struct MatchCallStruct0 *type0;
- const struct MatchCallStruct1 *type1;
- const struct MatchCallStruct2 *type2;
- const struct MatchCallStruct3 *type3;
- const struct MatchCallStruct4 *type4;
- const struct MatchCallStruct5 *type5;
-} match_call_t;
-
-struct UnkStruct_08625388 {
- u16 idx;
- u16 v2;
- u16 v4;
- const u8 *v8[4];
+static const struct MatchCallText sMatchCallPositiveBattleTexts[] =
+{
+ { .text = MatchCall_PositiveBattleText1, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText2, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText3, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText4, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText5, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText6, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText7, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText8, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText9, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText10, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText11, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText12, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText13, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PositiveBattleText14, .stringVarFuncIds = { 0, 3, -1 } },
};
-// Static RAM declarations
-
-// Static ROM declarations
-
-static bool32 MatchCallGetFlag_Type0(match_call_t);
-static bool32 MatchCallGetFlag_Type1(match_call_t);
-static bool32 MatchCallGetFlag_Type2(match_call_t);
-static bool32 MatchCallGetFlag_Type3(match_call_t);
-static bool32 MatchCallGetFlag_Type4(match_call_t);
-
-static u8 sub_81D1714(match_call_t);
-static u8 sub_81D1718(match_call_t);
-static u8 sub_81D171C(match_call_t);
-static u8 sub_81D1750(match_call_t);
-static u8 sub_81D1754(match_call_t);
-
-static bool32 MatchCall_IsRematchable_Type0(match_call_t);
-static bool32 MatchCall_IsRematchable_Type1(match_call_t);
-static bool32 MatchCall_IsRematchable_Type2(match_call_t);
-static bool32 MatchCall_IsRematchable_Type3(match_call_t);
-static bool32 MatchCall_IsRematchable_Type4(match_call_t);
-
-static bool32 sub_81D1840(match_call_t);
-static bool32 sub_81D1844(match_call_t);
-static bool32 sub_81D1848(match_call_t);
-static bool32 sub_81D184C(match_call_t);
-static bool32 sub_81D1850(match_call_t);
-
-static u32 MatchCall_GetRematchTableIdx_Type0(match_call_t);
-static u32 MatchCall_GetRematchTableIdx_Type1(match_call_t);
-static u32 MatchCall_GetRematchTableIdx_Type2(match_call_t);
-static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t);
-static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t);
-
-static void MatchCall_GetMessage_Type0(match_call_t, u8 *);
-static void MatchCall_GetMessage_Type1(match_call_t, u8 *);
-static void MatchCall_GetMessage_Type2(match_call_t, u8 *);
-static void MatchCall_GetMessage_Type3(match_call_t, u8 *);
-static void MatchCall_GetMessage_Type4(match_call_t, u8 *);
-
-static void MatchCall_GetNameAndDesc_Type0(match_call_t, const u8 **, const u8 **);
-static void MatchCall_GetNameAndDesc_Type1(match_call_t, const u8 **, const u8 **);
-static void MatchCall_GetNameAndDesc_Type2(match_call_t, const u8 **, const u8 **);
-static void MatchCall_GetNameAndDesc_Type3(match_call_t, const u8 **, const u8 **);
-static void MatchCall_GetNameAndDesc_Type4(match_call_t, const u8 **, const u8 **);
-
-static void sub_81D1920(const match_call_text_data_t *, u8 *);
-static void sub_81D199C(const match_call_text_data_t *, u16, u8 *);
-static void MatchCall_GetNameAndDescByRematchIdx(u32, const u8 **, const u8 **);
-
-extern const u8 gText_MrStone_Pokenav_2B60C0[];
-extern const u8 gText_MrStone_Pokenav_2B61E6[];
-extern const u8 gText_MrStone_Pokenav_2B6302[];
-extern const u8 gText_MrStone_Pokenav_2B63A0[];
-extern const u8 gText_MrStone_Pokenav_2B64A2[];
-extern const u8 gText_MrStone_Pokenav_2B6526[];
-extern const u8 gText_MrStone_Pokenav_2B65BB[];
-extern const u8 gText_MrStone_Pokenav_2B6664[];
-extern const u8 gText_MrStone_Pokenav_2B66B1[];
-extern const u8 gText_MrStone_Pokenav_2B6703[];
-extern const u8 gText_MrStone_Pokenav_2B67ED[];
-
-extern const u8 gMrStoneMatchCallDesc[];
-extern const u8 gMrStoneMatchCallName[];
-
-extern const u8 gText_Norman_Pokenav_2B5719[];
-extern const u8 gText_Norman_Pokenav_2B5795[];
-extern const u8 gText_Norman_Pokenav_2B584D[];
-extern const u8 gText_Norman_Pokenav_2B58E3[];
-extern const u8 gText_Norman_Pokenav_2B5979[];
-extern const u8 gText_Norman_Pokenav_2B5A07[];
-extern const u8 gText_Norman_Pokenav_2B5A69[];
-extern const u8 gText_Norman_Pokenav_2B5ACF[];
-extern const u8 gText_Norman_Pokenav_2B5B5E[];
-
-extern const u8 gNormanMatchCallDesc[];
-extern const u8 gNormanMatchCallName[];
-
-extern const u8 gProfBirchMatchCallDesc[];
-extern const u8 gProfBirchMatchCallName[];
-
-extern const u8 gText_Mom_Pokenav_2B227B[];
-extern const u8 gText_Mom_Pokenav_2B2310[];
-extern const u8 gText_Mom_Pokenav_2B23F3[];
-
-extern const u8 gMomMatchCallDesc[];
-extern const u8 gMomMatchCallName[];
-
-extern const u8 gText_Steven_Pokenav_2B5B95[];
-extern const u8 gText_Steven_Pokenav_2B5C53[];
-extern const u8 gText_Steven_Pokenav_2B5CC9[];
-extern const u8 gText_Steven_Pokenav_2B5DB4[];
-extern const u8 gText_Steven_Pokenav_2B5E26[];
-extern const u8 gText_Steven_Pokenav_2B5EA2[];
-extern const u8 gText_Steven_Pokenav_2B5ED9[];
-
-extern const u8 gStevenMatchCallDesc[];
-extern const u8 gStevenMatchCallName[];
-
-extern const u8 gText_May_Pokenav_2B3AB3[];
-extern const u8 gText_May_Pokenav_2B3B3F[];
-extern const u8 gText_May_Pokenav_2B3C13[];
-extern const u8 gText_May_Pokenav_2B3CF3[];
-extern const u8 gText_May_Pokenav_2B3D4B[];
-extern const u8 gText_May_Pokenav_2B3DD1[];
-extern const u8 gText_May_Pokenav_2B3E69[];
-extern const u8 gText_May_Pokenav_2B3ECD[];
-extern const u8 gText_May_Pokenav_2B3F2B[];
-extern const u8 gText_May_Pokenav_2B3FFB[];
-extern const u8 gText_May_Pokenav_2B402B[];
-extern const u8 gText_May_Pokenav_2B414B[];
-extern const u8 gText_May_Pokenav_2B4228[];
-extern const u8 gText_May_Pokenav_2B42E0[];
-extern const u8 gText_May_Pokenav_2B4350[];
-extern const u8 gMayBrendanMatchCallDesc[];
-extern const u8 gExpandedPlaceholder_May[];
-extern const u8 gText_Brendan_Pokenav_2B43EF[];
-extern const u8 gText_Brendan_Pokenav_2B4486[];
-extern const u8 gText_Brendan_Pokenav_2B4560[];
-extern const u8 gText_Brendan_Pokenav_2B463F[];
-extern const u8 gText_Brendan_Pokenav_2B46B7[];
-extern const u8 gText_Brendan_Pokenav_2B4761[];
-extern const u8 gText_Brendan_Pokenav_2B47F4[];
-extern const u8 gText_Brendan_Pokenav_2B4882[];
-extern const u8 gText_Brendan_Pokenav_2B4909[];
-extern const u8 gText_Brendan_Pokenav_2B49C4[];
-extern const u8 gText_Brendan_Pokenav_2B4A44[];
-extern const u8 gText_Brendan_Pokenav_2B4B28[];
-extern const u8 gText_Brendan_Pokenav_2B4C15[];
-extern const u8 gText_Brendan_Pokenav_2B4CD8[];
-extern const u8 gText_Brendan_Pokenav_2B4D46[];
-extern const u8 gExpandedPlaceholder_Brendan[];
-extern const u8 gText_Wally_Pokenav_2B4DE2[];
-extern const u8 gText_Wally_Pokenav_2B4E57[];
-extern const u8 gText_Wally_Pokenav_2B4EA5[];
-extern const u8 gText_Wally_Pokenav_2B4F41[];
-extern const u8 gText_Wally_Pokenav_2B4FF3[];
-extern const u8 gText_Wally_Pokenav_2B50B1[];
-extern const u8 gText_Wally_Pokenav_2B5100[];
-extern const u8 gWallyMatchCallDesc[];
-extern const u8 gText_Scott_Pokenav_2B5184[];
-extern const u8 gText_Scott_Pokenav_2B5275[];
-extern const u8 gText_Scott_Pokenav_2B5323[];
-extern const u8 gText_Scott_Pokenav_2B53DB[];
-extern const u8 gText_Scott_Pokenav_2B54A5[];
-extern const u8 gText_Scott_Pokenav_2B5541[];
-extern const u8 gText_Scott_Pokenav_2B56CA[];
-extern const u8 gScottMatchCallDesc[];
-extern const u8 gScottMatchCallName[];
-extern const u8 gText_Roxanne_Pokenav_2B2456[];
-extern const u8 gText_Roxanne_Pokenav_2B250E[];
-extern const u8 gText_Roxanne_Pokenav_2B25C1[];
-extern const u8 gText_Roxanne_Pokenav_2B2607[];
-extern const u8 gRoxanneMatchCallDesc[];
-extern const u8 gText_Brawly_Pokenav_2B2659[];
-extern const u8 gText_Brawly_Pokenav_2B275D[];
-extern const u8 gText_Brawly_Pokenav_2B286F[];
-extern const u8 gText_Brawly_Pokenav_2B28D1[];
-extern const u8 gBrawlyMatchCallDesc[];
-extern const u8 gText_Wattson_Pokenav_2B2912[];
-extern const u8 gText_Wattson_Pokenav_2B29CA[];
-extern const u8 gText_Wattson_Pokenav_2B2AB6[];
-extern const u8 gText_Wattson_Pokenav_2B2B01[];
-extern const u8 gWattsonMatchCallDesc[];
-extern const u8 gText_Flannery_Pokenav_2B2B4D[];
-extern const u8 gText_Flannery_Pokenav_2B2C0E[];
-extern const u8 gText_Flannery_Pokenav_2B2CF1[];
-extern const u8 gText_Flannery_Pokenav_2B2D54[];
-extern const u8 gFlanneryMatchCallDesc[];
-extern const u8 gText_Winona_Pokenav_2B2DA4[];
-extern const u8 gText_Winona_Pokenav_2B2E2B[];
-extern const u8 gText_Winona_Pokenav_2B2EC2[];
-extern const u8 gText_Winona_Pokenav_2B2F16[];
-extern const u8 gWinonaMatchCallDesc[];
-extern const u8 gText_TateLiza_Pokenav_2B2F97[];
-extern const u8 gText_TateLiza_Pokenav_2B306E[];
-extern const u8 gText_TateLiza_Pokenav_2B3158[];
-extern const u8 gText_TateLiza_Pokenav_2B31CD[];
-extern const u8 gTateLizaMatchCallDesc[];
-extern const u8 gText_Juan_Pokenav_2B3249[];
-extern const u8 gText_Juan_Pokenav_2B32EC[];
-extern const u8 gText_Juan_Pokenav_2B33AA[];
-extern const u8 gText_Juan_Pokenav_2B341E[];
-extern const u8 gJuanMatchCallDesc[];
-extern const u8 gText_Sidney_Pokenav_2B34CC[];
-extern const u8 gEliteFourMatchCallDesc[];
-extern const u8 gText_Phoebe_Pokenav_2B3561[];
-extern const u8 gText_Glacia_Pokenav_2B35E4[];
-extern const u8 gText_Drake_Pokenav_2B368B[];
-extern const u8 gText_Wallace_Pokenav_2B3790[];
-extern const u8 gChampionMatchCallDesc[];
-extern const u8 gMatchCallStevenStrategyText[];
-extern const u8 gMatchCall_StevenTrainersPokemonText[];
-extern const u8 gMatchCall_StevenSelfIntroductionText_Line1_BeforeMeteorFallsBattle[];
-extern const u8 gMatchCall_StevenSelfIntroductionText_Line2_BeforeMeteorFallsBattle[];
-extern const u8 gMatchCall_StevenSelfIntroductionText_Line1_AfterMeteorFallsBattle[];
-extern const u8 gMatchCall_StevenSelfIntroductionText_Line2_AfterMeteorFallsBattle[];
-extern const u8 gMatchCall_BrendanStrategyText[];
-extern const u8 gMatchCall_BrendanTrainersPokemonText[];
-extern const u8 gMatchCall_BrendanSelfIntroductionText_Line1[];
-extern const u8 gMatchCall_BrendanSelfIntroductionText_Line2[];
-extern const u8 gMatchCall_MayStrategyText[];
-extern const u8 gMatchCall_MayTrainersPokemonText[];
-extern const u8 gMatchCall_MaySelfIntroductionText_Line1[];
-extern const u8 gMatchCall_MaySelfIntroductionText_Line2[];
-// .rodata
-
-static const match_call_text_data_t sMrStoneTextScripts[] = {
- { gText_MrStone_Pokenav_2B60C0, 0xFFFF, FLAG_0x158 },
- { gText_MrStone_Pokenav_2B61E6, FLAG_0x158, 0xFFFF },
- { gText_MrStone_Pokenav_2B6302, FLAG_0x0BD, 0xFFFF },
- { gText_MrStone_Pokenav_2B63A0, FLAG_0x110, 0xFFFF },
- { gText_MrStone_Pokenav_2B64A2, FLAG_0x06A, 0xFFFF },
- { gText_MrStone_Pokenav_2B6526, FLAG_0x4F4, 0xFFFF },
- { gText_MrStone_Pokenav_2B65BB, FLAG_0x097, 0xFFFF },
- { gText_MrStone_Pokenav_2B6664, FLAG_0x06F, 0xFFFF },
- { gText_MrStone_Pokenav_2B66B1, FLAG_0x070, 0xFFFF },
- { gText_MrStone_Pokenav_2B6703, FLAG_0x4F7, 0xFFFF },
- { gText_MrStone_Pokenav_2B67ED, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText sMatchCallSameRouteBattleRequestTexts[] =
+{
+ { .text = MatchCall_SameRouteBattleRequestText1, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText2, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText3, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText4, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText5, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText6, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText7, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText8, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText9, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText10, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText11, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText12, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText13, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_SameRouteBattleRequestText14, .stringVarFuncIds = { 0, 1, -1 } },
};
-MATCHCALLDEF(sMrStoneMatchCallHeader, 0, 10, 0xffff, gMrStoneMatchCallDesc, gMrStoneMatchCallName, sMrStoneTextScripts);
-
-static const match_call_text_data_t sNormanTextScripts[] = {
- { gText_Norman_Pokenav_2B5719, FLAG_0x132, 0xFFFF },
- { gText_Norman_Pokenav_2B5795, FLAG_0x4F1, 0xFFFF },
- { gText_Norman_Pokenav_2B584D, FLAG_0x4F3, 0xFFFF },
- { gText_Norman_Pokenav_2B58E3, FLAG_0x4F4, 0xFFFF },
- { gText_Norman_Pokenav_2B5979, FLAG_0x0D4, 0xFFFF },
- { gText_Norman_Pokenav_2B5A07, 0xFFFE, 0xFFFF },
- { gText_Norman_Pokenav_2B5A69, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { gText_Norman_Pokenav_2B5ACF, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { gText_Norman_Pokenav_2B5B5E, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText sMatchCallDifferentRouteBattleRequestTexts[] =
+{
+ { .text = MatchCall_DifferentRouteBattleRequestText1, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText2, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText3, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText4, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText5, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText6, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText7, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText8, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText9, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText10, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText11, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText12, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText13, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_DifferentRouteBattleRequestText14, .stringVarFuncIds = { 0, 1, -1 } },
};
-MATCHCALLDEF(sNormanMatchCallHeader, 5, 7, FLAG_0x132, 0x45, gNormanMatchCallDesc, gNormanMatchCallName, sNormanTextScripts);
-
-MATCHCALLDEF(sProfBirchMatchCallHeader, 3, 0, FLAG_0x119, gProfBirchMatchCallDesc, gProfBirchMatchCallName)
-
-static const match_call_text_data_t sMomTextScripts[] = {
- { gText_Mom_Pokenav_2B227B, 0xffff, 0xffff },
- { gText_Mom_Pokenav_2B2310, FLAG_0x4F4, 0xffff },
- { gText_Mom_Pokenav_2B23F3, FLAG_SYS_GAME_CLEAR, 0xffff },
- { NULL, 0xffff, 0xffff }
+static const struct MatchCallText sMatchCallPersonalizedTexts[] =
+{
+ { .text = MatchCall_PersonalizedText1, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_PersonalizedText2, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText3, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText4, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText5, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText6, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText7, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText8, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText9, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText10, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText11, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText12, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText13, .stringVarFuncIds = { 0, 2, -1 } },
+ { .text = MatchCall_PersonalizedText14, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText15, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText16, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText17, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText18, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText19, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText20, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText21, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText22, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText23, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText24, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText25, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText26, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText27, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText28, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText29, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText30, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText31, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText32, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText33, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText34, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText35, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText36, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText37, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText38, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText39, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText40, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText41, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText42, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText43, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText44, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText45, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText46, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText47, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText48, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText49, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText50, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText51, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_PersonalizedText52, .stringVarFuncIds = { 0, 3, -1 } },
+ { .text = MatchCall_PersonalizedText53, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText54, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText55, .stringVarFuncIds = { 0, 1, -1 } },
+ { .text = MatchCall_PersonalizedText56, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText57, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText58, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText59, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText60, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText61, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText62, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText63, .stringVarFuncIds = { 0, -1, -1 } },
+ { .text = MatchCall_PersonalizedText64, .stringVarFuncIds = { 0, -1, -1 } },
};
-MATCHCALLDEF(sMomMatchCallHeader, 0, 0, FLAG_0x0D8, gMomMatchCallDesc, gMomMatchCallName, sMomTextScripts);
-
-static const match_call_text_data_t sStevenTextScripts[] = {
- { gText_Steven_Pokenav_2B5B95, 0xffff, 0xffff },
- { gText_Steven_Pokenav_2B5C53, FLAG_RUSTURF_TUNNEL_OPENED, 0xffff },
- { gText_Steven_Pokenav_2B5CC9, FLAG_0x0D4, 0xffff },
- { gText_Steven_Pokenav_2B5DB4, FLAG_0x070, 0xffff },
- { gText_Steven_Pokenav_2B5E26, FLAG_0x4F6, 0xffff },
- { gText_Steven_Pokenav_2B5EA2, FLAG_0x081, 0xffff },
- { gText_Steven_Pokenav_2B5ED9, FLAG_SYS_GAME_CLEAR, 0xffff },
- { NULL, 0xffff, 0xffff },
+static const struct MatchCallText sMatchCallBattleFrontierStreakTexts[] =
+{
+ { .text = MatchCall_BattleFrontierStreakText1, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText2, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText3, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText4, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText5, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText6, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText7, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText8, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText9, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText10, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText11, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText12, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText13, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierStreakText14, .stringVarFuncIds = { 0, 4, 5 } },
};
-MATCHCALLDEF(sStevenMatchCallHeader, 0, 0xd5, FLAG_0x131, gStevenMatchCallDesc, gStevenMatchCallName, sStevenTextScripts);
-
-static const match_call_text_data_t sMayTextScripts[] = {
- { gText_May_Pokenav_2B3AB3, 0xFFFF, 0xFFFF },
- { gText_May_Pokenav_2B3B3F, FLAG_0x4F1, 0xFFFF },
- { gText_May_Pokenav_2B3C13, FLAG_0x095, 0xFFFF },
- { gText_May_Pokenav_2B3CF3, FLAG_HIDE_MAUVILLE_CITY_WALLY, 0xFFFF },
- { gText_May_Pokenav_2B3D4B, FLAG_0x06A, 0xFFFF },
- { gText_May_Pokenav_2B3DD1, FLAG_0x4F3, 0xFFFF },
- { gText_May_Pokenav_2B3E69, FLAG_0x4F4, 0xFFFF },
- { gText_May_Pokenav_2B3ECD, FLAG_0x097, 0xFFFF },
- { gText_May_Pokenav_2B3F2B, FLAG_0x0D4, 0xFFFF },
- { gText_May_Pokenav_2B3FFB, FLAG_0x06F, 0xFFFF },
- { gText_May_Pokenav_2B402B, FLAG_0x061, 0xFFFF },
- { gText_May_Pokenav_2B414B, FLAG_0x070, 0xFFFF },
- { gText_May_Pokenav_2B4228, FLAG_0x081, 0xFFFF },
- { gText_May_Pokenav_2B42E0, FLAG_0x4F7, 0xFFFF },
- { gText_May_Pokenav_2B4350, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText sMatchCallBattleFrontierRecordStreakTexts[] =
+{
+ { .text = MatchCall_BattleFrontierRecordStreakText1, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText2, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText3, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText4, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText5, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText6, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText7, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText8, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText9, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText10, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText11, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText12, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText13, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleFrontierRecordStreakText14, .stringVarFuncIds = { 0, 4, 5 } },
};
-MATCHCALLDEF(sMayMatchCallHeader, 4, MALE, FLAG_0x0FD, gMayBrendanMatchCallDesc, gExpandedPlaceholder_May, sMayTextScripts);
-
-static const match_call_text_data_t sBrendanTextScripts[] = {
- { gText_Brendan_Pokenav_2B43EF, 0xFFFF, 0xFFFF },
- { gText_Brendan_Pokenav_2B4486, FLAG_0x4F1, 0xFFFF },
- { gText_Brendan_Pokenav_2B4560, FLAG_0x095, 0xFFFF },
- { gText_Brendan_Pokenav_2B463F, FLAG_HIDE_MAUVILLE_CITY_WALLY, 0xFFFF },
- { gText_Brendan_Pokenav_2B46B7, FLAG_0x06A, 0xFFFF },
- { gText_Brendan_Pokenav_2B4761, FLAG_0x4F3, 0xFFFF },
- { gText_Brendan_Pokenav_2B47F4, FLAG_0x4F4, 0xFFFF },
- { gText_Brendan_Pokenav_2B4882, FLAG_0x097, 0xFFFF },
- { gText_Brendan_Pokenav_2B4909, FLAG_0x0D4, 0xFFFF },
- { gText_Brendan_Pokenav_2B49C4, FLAG_0x06F, 0xFFFF },
- { gText_Brendan_Pokenav_2B4A44, FLAG_0x061, 0xFFFF },
- { gText_Brendan_Pokenav_2B4B28, FLAG_0x070, 0xFFFF },
- { gText_Brendan_Pokenav_2B4C15, FLAG_0x081, 0xFFFF },
- { gText_Brendan_Pokenav_2B4CD8, FLAG_0x4F7, 0xFFFF },
- { gText_Brendan_Pokenav_2B4D46, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText sMatchCallBattleDomeTexts[] =
+{
+ { .text = MatchCall_BattleDomeText1, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText2, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText3, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText4, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText5, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText6, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText7, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText8, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText9, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText10, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText11, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText12, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText13, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattleDomeText14, .stringVarFuncIds = { 0, 4, 5 } },
};
-MATCHCALLDEF(sBrendanMatchCallHeader, 4, FEMALE, FLAG_0x0FD, gMayBrendanMatchCallDesc, gExpandedPlaceholder_Brendan, sBrendanTextScripts);
-
-static const match_call_text_data_t sWallyTextScripts[] = {
- { gText_Wally_Pokenav_2B4DE2, 0xFFFF, 0xFFFF },
- { gText_Wally_Pokenav_2B4E57, FLAG_RUSTURF_TUNNEL_OPENED, 0xFFFF },
- { gText_Wally_Pokenav_2B4EA5, FLAG_0x4F3, 0xFFFF },
- { gText_Wally_Pokenav_2B4F41, FLAG_0x097, 0xFFFF },
- { gText_Wally_Pokenav_2B4FF3, FLAG_0x06F, 0xFFFF },
- { gText_Wally_Pokenav_2B50B1, FLAG_0x081, 0xFFFF },
- { gText_Wally_Pokenav_2B5100, FLAG_0x07E, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText sMatchCallBattlePikeTexts[] =
+{
+ { .text = MatchCall_BattlePikeText1, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText2, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText3, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText4, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText5, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText6, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText7, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText8, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText9, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText10, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText11, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText12, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText13, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePikeText14, .stringVarFuncIds = { 0, 4, 5 } },
};
-const struct MatchCallSubstruct2 sWallyAdditionalData[] = {
- { FLAG_HIDE_MAUVILLE_CITY_WALLY, 0x05 },
- { FLAG_0x06F, 0xD5 },
- { FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY, 0x46 },
- { 0xFFFF, 0xD5 }
+static const struct MatchCallText sMatchCallBattlePyramidTexts[] =
+{
+ { .text = MatchCall_BattlePyramidText1, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText2, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText3, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText4, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText5, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText6, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText7, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText8, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText9, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText10, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText11, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText12, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText13, .stringVarFuncIds = { 0, 4, 5 } },
+ { .text = MatchCall_BattlePyramidText14, .stringVarFuncIds = { 0, 4, 5 } },
};
-MATCHCALLDEF(sWallyMatchCallHeader, 2, 0, FLAG_0x0D6, REMATCH_WALLY_3, gWallyMatchCallDesc, sWallyTextScripts, sWallyAdditionalData);
-
-static const match_call_text_data_t sScottTextScripts[] = {
- { gText_Scott_Pokenav_2B5184, 0xFFFF, 0xFFFF },
- { gText_Scott_Pokenav_2B5275, FLAG_0x08B, 0xFFFF },
- { gText_Scott_Pokenav_2B5323, FLAG_0x097, 0xFFFF },
- { gText_Scott_Pokenav_2B53DB, FLAG_0x0D4, 0xFFFF },
- { gText_Scott_Pokenav_2B54A5, FLAG_0x070, 0xFFFF },
- { gText_Scott_Pokenav_2B5541, FLAG_0x4F7, 0xFFFF },
- { gText_Scott_Pokenav_2B56CA, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText *const sMatchCallBattleTopics[] =
+{
+ sMatchCallWildBattleTexts,
+ sMatchCallNegativeBattleTexts,
+ sMatchCallPositiveBattleTexts,
};
-
-MATCHCALLDEF(sScottMatchCallHeader, 0, 0xD5, FLAG_0x0D7, gScottMatchCallDesc, gScottMatchCallName, sScottTextScripts);
-
-static const match_call_text_data_t sRoxanneTextScripts[] = {
- { gText_Roxanne_Pokenav_2B2456, 0xFFFE, 0xFFFF },
- { gText_Roxanne_Pokenav_2B250E, 0xFFFF, 0xFFFF },
- { gText_Roxanne_Pokenav_2B25C1, 0xFFFF, 0xFFFF },
- { gText_Roxanne_Pokenav_2B2607, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText *const sMatchCallBattleRequestTopics[] =
+{
+ sMatchCallSameRouteBattleRequestTexts,
+ sMatchCallDifferentRouteBattleRequestTexts,
};
-MATCHCALLDEF(sRoxanneMatchCallHeader, 5, 10, FLAG_0x1D3, 0x41, gRoxanneMatchCallDesc, NULL, sRoxanneTextScripts);
-
-static const match_call_text_data_t sBrawlyTextScripts[] = {
- { gText_Brawly_Pokenav_2B2659, 0xFFFE, 0xFFFF },
- { gText_Brawly_Pokenav_2B275D, 0xFFFF, 0xFFFF },
- { gText_Brawly_Pokenav_2B286F, 0xFFFF, 0xFFFF },
- { gText_Brawly_Pokenav_2B28D1, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
+static const struct MatchCallText *const sMatchCallGeneralTopics[] =
+{
+ sMatchCallPersonalizedTexts,
+ sMatchCallBattleFrontierStreakTexts,
+ sMatchCallBattleFrontierRecordStreakTexts,
+ sMatchCallBattleDomeTexts,
+ sMatchCallBattlePikeTexts,
+ sMatchCallBattlePyramidTexts,
};
-MATCHCALLDEF(sBrawlyMatchCallHeader, 5, 2, FLAG_0x1D4, 0x42, gBrawlyMatchCallDesc, NULL, sBrawlyTextScripts);
-
-static const match_call_text_data_t sWattsonTextScripts[] = {
- { gText_Wattson_Pokenav_2B2912, 0xFFFE, 0xFFFF },
- { gText_Wattson_Pokenav_2B29CA, 0xFFFF, 0xFFFF },
- { gText_Wattson_Pokenav_2B2AB6, 0xFFFF, 0xFFFF },
- { gText_Wattson_Pokenav_2B2B01, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+extern const u8 gUnknown_082A5C9C[];
+extern const u8 gUnknown_082A5D2C[];
+extern const u8 gUnknown_082A633D[];
-MATCHCALLDEF(sWattsonMatchCallHeader, 5, 9, FLAG_0x1D5, 0x43, gWattsonMatchCallDesc, NULL, sWattsonTextScripts);
+void InitMatchCallCounters(void)
+{
+ RtcCalcLocalTime();
+ gMatchCallState.minutes = GetCurrentTotalMinutes(&gLocalTime) + 10;
+ gMatchCallState.stepCounter = 0;
+}
-static const match_call_text_data_t sFlanneryTextScripts[] = {
- { gText_Flannery_Pokenav_2B2B4D, 0xFFFE, 0xFFFF },
- { gText_Flannery_Pokenav_2B2C0E, 0xFFFF, 0xFFFF },
- { gText_Flannery_Pokenav_2B2CF1, 0xFFFF, 0xFFFF },
- { gText_Flannery_Pokenav_2B2D54, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+static u32 GetCurrentTotalMinutes(struct Time *time)
+{
+ return time->days * 1440 + time->hours * 60 + time->minutes;
+}
-MATCHCALLDEF(sFlanneryMatchCallHeader, 5, 3, FLAG_0x1D6, 0x44, gFlanneryMatchCallDesc, NULL, sFlanneryTextScripts);
+static bool32 UpdateMatchCallMinutesCounter(void)
+{
+ int curMinutes;
+ RtcCalcLocalTime();
+ curMinutes = GetCurrentTotalMinutes(&gLocalTime);
+ if (gMatchCallState.minutes > curMinutes || curMinutes - gMatchCallState.minutes > 9)
+ {
+ gMatchCallState.minutes = curMinutes;
+ return TRUE;
+ }
-static const match_call_text_data_t sWinonaTextScripts[] = {
- { gText_Winona_Pokenav_2B2DA4, 0xFFFE, 0xFFFF },
- { gText_Winona_Pokenav_2B2E2B, 0xFFFF, 0xFFFF },
- { gText_Winona_Pokenav_2B2EC2, 0xFFFF, 0xFFFF },
- { gText_Winona_Pokenav_2B2F16, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+ return FALSE;
+}
-MATCHCALLDEF(sWinonaMatchCallHeader, 5, 11, FLAG_0x1D7, 0x46, gWinonaMatchCallDesc, NULL, sWinonaTextScripts);
+static bool32 CheckMatchCallChance(void)
+{
+ int callChance = 1;
+ if (!GetMonData(&gPlayerParty[0], MON_DATA_SANITY_IS_EGG) && GetMonAbility(&gPlayerParty[0]) == ABILITY_LIGHTNING_ROD)
+ callChance = 2;
+
+ if (Random() % 10 < callChance * 3)
+ return TRUE;
+ else
+ return FALSE;
+}
-static const match_call_text_data_t sTateLizaTextScripts[] = {
- { gText_TateLiza_Pokenav_2B2F97, 0xFFFE, 0xFFFF },
- { gText_TateLiza_Pokenav_2B306E, 0xFFFF, 0xFFFF },
- { gText_TateLiza_Pokenav_2B3158, 0xFFFF, 0xFFFF },
- { gText_TateLiza_Pokenav_2B31CD, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+static bool32 MapAllowsMatchCall(void)
+{
+ if (!Overworld_MapTypeAllowsTeleportAndFly(gMapHeader.mapType) || gMapHeader.regionMapSectionId == MAPSEC_SAFARI_ZONE)
+ return FALSE;
+
+ if (gMapHeader.regionMapSectionId == MAPSEC_SOOTOPOLIS_CITY
+ && FlagGet(FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA) == TRUE
+ && FlagGet(FLAG_UNUSED_0x0DC) == FALSE)
+ return FALSE;
-MATCHCALLDEF(sTateLizaMatchCallHeader, 5, 13, FLAG_0x1D8, 0x47, gTateLizaMatchCallDesc, NULL, sTateLizaTextScripts);
+ if (gMapHeader.regionMapSectionId == MAPSEC_MT_CHIMNEY
+ && FlagGet(FLAG_MET_ARCHIE_METEOR_FALLS) == TRUE
+ && FlagGet(FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY) == FALSE)
+ return FALSE;
-static const match_call_text_data_t sJuanTextScripts[] = {
- { gText_Juan_Pokenav_2B3249, 0xFFFE, 0xFFFF },
- { gText_Juan_Pokenav_2B32EC, 0xFFFF, 0xFFFF },
- { gText_Juan_Pokenav_2B33AA, 0xFFFF, 0xFFFF },
- { gText_Juan_Pokenav_2B341E, FLAG_SYS_GAME_CLEAR, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+ return TRUE;
+}
-MATCHCALLDEF(sJuanMatchCallHeader, 5, 14, FLAG_0x1D9, 0x48, gJuanMatchCallDesc, NULL, sJuanTextScripts);
+static bool32 UpdateMatchCallStepCounter(void)
+{
+ if (++gMatchCallState.stepCounter >= 10)
+ {
+ gMatchCallState.stepCounter = 0;
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
-static const match_call_text_data_t sSidneyTextScripts[] = {
- { gText_Sidney_Pokenav_2B34CC, 0xFFFF, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+static bool32 SelectMatchCallTrainer(void)
+{
+ u32 matchCallId;
+ u32 numRegistered = GetNumRegisteredNPCs();
+ if (!numRegistered)
+ return FALSE;
-MATCHCALLDEF(sSidneyMatchCallHeader, 5, 15, FLAG_0x1A5, 0x49, gEliteFourMatchCallDesc, NULL, sSidneyTextScripts);
+ gMatchCallState.trainerId = GetActiveMatchCallTrainerId(Random() % numRegistered);
+ gMatchCallState.triggeredFromScript = 0;
+ if (gMatchCallState.trainerId == REMATCH_TABLE_ENTRIES)
+ return FALSE;
-static const match_call_text_data_t sPhoebeTextScripts[] = {
- { gText_Phoebe_Pokenav_2B3561, 0xFFFF, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+ matchCallId = GetTrainerMatchCallId(gMatchCallState.trainerId);
+ if (GetRematchTrainerLocation(matchCallId) == gMapHeader.regionMapSectionId && !TrainerIsEligibleForRematch(matchCallId))
+ return FALSE;
-MATCHCALLDEF(sPhoebeMatchCallHeader, 5, 15, FLAG_0x1A6, 0x4A, gEliteFourMatchCallDesc, NULL, sPhoebeTextScripts);
+ return TRUE;
+}
-static const match_call_text_data_t sGlaciaTextScripts[] = {
- { gText_Glacia_Pokenav_2B35E4, 0xFFFF, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+static u32 GetNumRegisteredNPCs(void)
+{
+ u32 i, count;
+ for (i = 0, count = 0; i < 64; i++)
+ {
+ if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
+ count++;
+ }
-MATCHCALLDEF(sGlaciaMatchCallHeader, 5, 15, FLAG_0x1A7, 0x4B, gEliteFourMatchCallDesc, NULL, sGlaciaTextScripts);
+ return count;
+}
-static const match_call_text_data_t sDrakeTextScripts[] = {
- { gText_Drake_Pokenav_2B368B, 0xFFFF, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+static u32 GetActiveMatchCallTrainerId(u32 activeMatchCallId)
+{
+ u32 i;
+ for (i = 0; i < 64; i++)
+ {
+ if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
+ {
+ if (!activeMatchCallId)
+ return gRematchTable[i].trainerIds[0];
-MATCHCALLDEF(sDrakeMatchCallHeader, 5, 15, FLAG_0x1A8, 0x4C, gEliteFourMatchCallDesc, NULL, sDrakeTextScripts);
+ activeMatchCallId--;
+ }
+ }
-static const match_call_text_data_t sWallaceTextScripts[] = {
- { gText_Wallace_Pokenav_2B3790, 0xFFFF, 0xFFFF },
- { NULL, 0xFFFF, 0xFFFF }
-};
+ return REMATCH_TABLE_ENTRIES;
+}
-MATCHCALLDEF(sWallaceMatchCallHeader, 5, 15, FLAG_0x1A9, 0x4D, gChampionMatchCallDesc, NULL, sWallaceTextScripts);
-
-static const match_call_t sMatchCallHeaders[] = {
- {.type0 = &sMrStoneMatchCallHeader},
- {.type3 = &sProfBirchMatchCallHeader},
- {.type4 = &sBrendanMatchCallHeader},
- {.type4 = &sMayMatchCallHeader},
- {.type2 = &sWallyMatchCallHeader},
- {.type5 = &sNormanMatchCallHeader},
- {.type0 = &sMomMatchCallHeader},
- {.type0 = &sStevenMatchCallHeader},
- {.type0 = &sScottMatchCallHeader},
- {.type5 = &sRoxanneMatchCallHeader},
- {.type5 = &sBrawlyMatchCallHeader},
- {.type5 = &sWattsonMatchCallHeader},
- {.type5 = &sFlanneryMatchCallHeader},
- {.type5 = &sWinonaMatchCallHeader},
- {.type5 = &sTateLizaMatchCallHeader},
- {.type5 = &sJuanMatchCallHeader},
- {.type5 = &sSidneyMatchCallHeader},
- {.type5 = &sPhoebeMatchCallHeader},
- {.type5 = &sGlaciaMatchCallHeader},
- {.type5 = &sDrakeMatchCallHeader},
- {.type5 = &sWallaceMatchCallHeader}
-};
+bool32 TryStartMatchCall(void)
+{
+ if (FlagGet(FLAG_HAS_MATCH_CALL) && UpdateMatchCallStepCounter() && UpdateMatchCallMinutesCounter()
+ && CheckMatchCallChance() && MapAllowsMatchCall() && SelectMatchCallTrainer())
+ {
+ StartMatchCall();
+ return TRUE;
+ }
-static bool32 (*const sMatchCallGetFlagFuncs[])(match_call_t) = {
- MatchCallGetFlag_Type0,
- MatchCallGetFlag_Type1,
- MatchCallGetFlag_Type2,
- MatchCallGetFlag_Type3,
- MatchCallGetFlag_Type4
-};
+ return FALSE;
+}
-static u8 (*const gUnknown_08625310[])(match_call_t) = {
- sub_81D1714,
- sub_81D1718,
- sub_81D171C,
- sub_81D1750,
- sub_81D1754
-};
+void StartMatchCallFromScript(void)
+{
+ gMatchCallState.triggeredFromScript = 1;
+ StartMatchCall();
+}
-static bool32 (*const sMatchCall_IsRematchableFunctions[])(match_call_t) = {
- MatchCall_IsRematchable_Type0,
- MatchCall_IsRematchable_Type1,
- MatchCall_IsRematchable_Type2,
- MatchCall_IsRematchable_Type3,
- MatchCall_IsRematchable_Type4
-};
+bool8 IsMatchCallTaskActive(void)
+{
+ return FuncIsActiveTask(ExecuteMatchCall);
+}
-static bool32 (*const gUnknown_08625338[])(match_call_t) = {
- sub_81D1840,
- sub_81D1844,
- sub_81D1848,
- sub_81D184C,
- sub_81D1850
-};
+static void StartMatchCall(void)
+{
+ if (!gMatchCallState.triggeredFromScript)
+ {
+ ScriptContext2_Enable();
+ FreezeEventObjects();
+ sub_808B864();
+ sub_808BCF4();
+ }
-static u32 (*const sMatchCall_GetRematchTableIdxFunctions[])(match_call_t) = {
- MatchCall_GetRematchTableIdx_Type0,
- MatchCall_GetRematchTableIdx_Type1,
- MatchCall_GetRematchTableIdx_Type2,
- MatchCall_GetRematchTableIdx_Type3,
- MatchCall_GetRematchTableIdx_Type4
-};
+ PlaySE(SE_TOREEYE);
+ CreateTask(ExecuteMatchCall, 1);
+}
-static void (*const sMatchCall_GetMessageFunctions[])(match_call_t, u8 *) = {
- MatchCall_GetMessage_Type0,
- MatchCall_GetMessage_Type1,
- MatchCall_GetMessage_Type2,
- MatchCall_GetMessage_Type3,
- MatchCall_GetMessage_Type4
-};
+static const u16 sUnknown_0860EA4C[] = INCBIN_U16("graphics/unknown/unknown_60EA4C.gbapal");
+static const u8 sUnknown_0860EA6C[] = INCBIN_U8("graphics/interface/menu_border.4bpp");
+static const u16 sPokeNavIconPalette[] = INCBIN_U16("graphics/pokenav/icon.gbapal");
+static const u32 sPokeNavIconGfx[] = INCBIN_U32("graphics/pokenav/icon.4bpp.lz");
-static void (*const sMatchCall_GetNameAndDescFunctions[])(match_call_t, const u8 **, const u8 **) = {
- MatchCall_GetNameAndDesc_Type0,
- MatchCall_GetNameAndDesc_Type1,
- MatchCall_GetNameAndDesc_Type2,
- MatchCall_GetNameAndDesc_Type3,
- MatchCall_GetNameAndDesc_Type4
-};
+static const u8 sText_PokenavCallEllipsis[] = _("………………\p");
-static const struct UnkStruct_08625388 sMatchCallCheckPageOverrides[] = {
- { 7, 0x4B, 0xffff, { gMatchCallStevenStrategyText, gMatchCall_StevenTrainersPokemonText, gMatchCall_StevenSelfIntroductionText_Line1_BeforeMeteorFallsBattle, gMatchCall_StevenSelfIntroductionText_Line2_BeforeMeteorFallsBattle } }, // STEVEN
- { 7, 0x4B, FLAG_0x4F6, { gMatchCallStevenStrategyText, gMatchCall_StevenTrainersPokemonText, gMatchCall_StevenSelfIntroductionText_Line1_AfterMeteorFallsBattle, gMatchCall_StevenSelfIntroductionText_Line2_AfterMeteorFallsBattle } }, // STEVEN
- { 2, 0x3c, 0xffff, { gMatchCall_BrendanStrategyText, gMatchCall_BrendanTrainersPokemonText, gMatchCall_BrendanSelfIntroductionText_Line1, gMatchCall_BrendanSelfIntroductionText_Line2 } }, // Brendan
- { 3, 0x3f, 0xffff, { gMatchCall_MayStrategyText, gMatchCall_MayTrainersPokemonText, gMatchCall_MaySelfIntroductionText_Line1, gMatchCall_MaySelfIntroductionText_Line2 } } // May
+static bool32 (*const sMatchCallTaskFuncs[])(u8) =
+{
+ LoadMatchCallWindowGfx,
+ MoveMatchCallWindowToVram,
+ PrintMatchCallIntroEllipsis,
+ sub_81962B0,
+ sub_81962D8,
+ sub_8196330,
+ sub_8196390,
+ sub_81963F0,
};
-// .text
-
-static u32 MatchCallGetFunctionIndex(match_call_t matchCall)
+static void ExecuteMatchCall(u8 taskId)
{
- switch (matchCall.common->type)
+ s16 *taskData = gTasks[taskId].data;
+ if (sMatchCallTaskFuncs[taskData[0]](taskId))
{
- case 0:
- default:
- return 0;
- case 1:
- case 5:
- return 1;
- case 2:
- return 2;
- case 4:
- return 3;
- case 3:
- return 4;
+ taskData[0]++;
+ taskData[1] = 0;
+ if ((u16)taskData[0] > 7)
+ DestroyTask(taskId);
}
}
-u32 GetTrainerIdxByRematchIdx(u32 rematchIdx)
+static const struct WindowTemplate sMatchCallTextWindow =
{
- return gRematchTable[rematchIdx].trainerIds[0];
-}
+ .bg = 0,
+ .tilemapLeft = 1,
+ .tilemapTop = 15,
+ .width = 28,
+ .height = 4,
+ .paletteNum = 15,
+ .baseBlock = 0x200
+};
-s32 GetRematchIdxByTrainerIdx(s32 trainerIdx)
+static bool32 LoadMatchCallWindowGfx(u8 taskId)
{
- s32 rematchIdx;
-
- for (rematchIdx = 0; rematchIdx < REMATCH_TABLE_ENTRIES; rematchIdx++)
+ s16 *taskData = gTasks[taskId].data;
+ taskData[2] = AddWindow(&sMatchCallTextWindow);
+ if (taskData[2] == 0xFF)
{
- if (gRematchTable[rematchIdx].trainerIds[0] == trainerIdx)
- return rematchIdx;
+ DestroyTask(taskId);
+ return FALSE;
}
- return -1;
-}
-bool32 MatchCallFlagGetByIndex(u32 idx)
-{
- match_call_t matchCall;
- u32 i;
+ if (LoadBgTiles(0, sUnknown_0860EA6C, sizeof(sUnknown_0860EA6C), 0x270) == 0xFFFF)
+ {
+ RemoveWindow(taskData[2]);
+ DestroyTask(taskId);
+ return FALSE;
+ }
- if (idx > 20)
+ if (!decompress_and_copy_tile_data_to_vram(0, sPokeNavIconGfx, 0, 0x279, 0))
+ {
+ RemoveWindow(taskData[2]);
+ DestroyTask(taskId);
return FALSE;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- return sMatchCallGetFlagFuncs[i](matchCall);
+ }
+
+ FillWindowPixelBuffer(taskData[2], 0x88);
+ LoadPalette(sUnknown_0860EA4C, 0xE0, 0x20);
+ LoadPalette(sPokeNavIconPalette, 0xF0, 0x20);
+ ChangeBgY(0, -0x2000, 0);
+ return TRUE;
}
-static bool32 MatchCallGetFlag_Type0(match_call_t matchCall)
+static bool32 MoveMatchCallWindowToVram(u8 taskId)
{
- if (matchCall.type0->flag == 0xffff)
- return TRUE;
- return FlagGet(matchCall.type0->flag);
+ s16 *taskData = gTasks[taskId].data;
+ if (free_temp_tile_data_buffers_if_possible())
+ return FALSE;
+
+ PutWindowTilemap(taskData[2]);
+ DrawMatchCallTextBoxBorder(taskData[2], 0x270, 14);
+ WriteSequenceToBgTilemapBuffer(0, 0xF279, 1, 15, 4, 4, 17, 1);
+ taskData[5] = CreateTask(sub_8196694, 10);
+ CopyWindowToVram(taskData[2], 2);
+ CopyBgTilemapBufferToVram(0);
+ return TRUE;
}
-static bool32 MatchCallGetFlag_Type1(match_call_t matchCall)
+static bool32 PrintMatchCallIntroEllipsis(u8 taskId)
{
- if (matchCall.type1->flag == 0xffff)
+ s16 *taskData = gTasks[taskId].data;
+ if (!IsDma3ManagerBusyWithBgCopy())
+ {
+ InitMatchCallTextPrinter(taskData[2], sText_PokenavCallEllipsis);
return TRUE;
- return FlagGet(matchCall.type1->flag);
+ }
+
+ return FALSE;
}
-static bool32 MatchCallGetFlag_Type2(match_call_t matchCall)
+static bool32 sub_81962B0(u8 taskId)
{
- if (matchCall.type2->flag == 0xffff)
+ if (ChangeBgY(0, 0x600, 1) >= 0)
+ {
+ ChangeBgY(0, 0, 0);
return TRUE;
- return FlagGet(matchCall.type2->flag);
+ }
+
+ return FALSE;
}
-static bool32 MatchCallGetFlag_Type3(match_call_t matchCall)
+static bool32 sub_81962D8(u8 taskId)
{
- if (matchCall.type4->gender != gSaveBlock2Ptr->playerGender)
- return FALSE;
- if (matchCall.type4->flag == 0xffff)
+ s16 *taskData = gTasks[taskId].data;
+ if (!ExecuteMatchCallTextPrinter(taskData[2]))
+ {
+ FillWindowPixelBuffer(taskData[2], 0x88);
+ if (!gMatchCallState.triggeredFromScript)
+ SelectMatchCallMessage(gMatchCallState.trainerId, gStringVar4);
+
+ InitMatchCallTextPrinter(taskData[2], gStringVar4);
return TRUE;
- return FlagGet(matchCall.type4->flag);
-}
+ }
-static bool32 MatchCallGetFlag_Type4(match_call_t matchCall)
-{
- return FlagGet(matchCall.type3->flag);
+ return FALSE;
}
-u8 sub_81D16DC(u32 idx)
+static bool32 sub_8196330(u8 taskId)
{
- match_call_t matchCall;
- u32 i;
+ s16 *taskData = gTasks[taskId].data;
+ if (!ExecuteMatchCallTextPrinter(taskData[2]) && !IsSEPlaying() && gMain.newKeys & (A_BUTTON | B_BUTTON))
+ {
+ FillWindowPixelBuffer(taskData[2], 0x88);
+ CopyWindowToVram(taskData[2], 2);
+ PlaySE(SE_TOREOFF);
+ return TRUE;
+ }
- if (idx > 20)
- return 0;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- return gUnknown_08625310[i](matchCall);
+ return FALSE;
}
-static u8 sub_81D1714(match_call_t matchCall)
+static bool32 sub_8196390(u8 taskId)
{
- return matchCall.type0->v1;
-}
+ s16 *taskData = gTasks[taskId].data;
+ if (ChangeBgY(0, 0x600, 2) <= -0x2000)
+ {
+ FillBgTilemapBufferRect_Palette0(0, 0, 0, 14, 30, 6);
+ DestroyTask(taskData[5]);
+ RemoveWindow(taskData[2]);
+ CopyBgTilemapBufferToVram(0);
+ return TRUE;
+ }
-static u8 sub_81D1718(match_call_t matchCall)
-{
- return matchCall.type1->v1;
+ return FALSE;
}
-static u8 sub_81D171C(match_call_t matchCall)
+static bool32 sub_81963F0(u8 taskId)
{
- s32 i;
-
- for (i = 0; matchCall.type2->v10[i].flag != 0xffff; i++)
+ u8 playerObjectId;
+ if (!IsDma3ManagerBusyWithBgCopy() && !IsSEPlaying())
{
- if (!FlagGet(matchCall.type2->v10[i].flag))
- break;
+ ChangeBgY(0, 0, 0);
+ if (!gMatchCallState.triggeredFromScript)
+ {
+ sub_81973A4();
+ playerObjectId = GetEventObjectIdByLocalIdAndMap(EVENT_OBJ_ID_PLAYER, 0, 0);
+ EventObjectClearHeldMovementIfFinished(&gEventObjects[playerObjectId]);
+ sub_80D338C();
+ UnfreezeEventObjects();
+ ScriptContext2_Disable();
+ }
+
+ return TRUE;
}
- return matchCall.type2->v10[i].v2;
+
+ return FALSE;
}
-static u8 sub_81D1750(match_call_t matchCall)
+static void DrawMatchCallTextBoxBorder(u32 windowId, u32 tileOffset, u32 paletteId)
{
- return 0xd5;
+ int bg, x, y, width, height;
+ int tileNum;
+
+ bg = GetWindowAttribute(windowId, WINDOW_BG);
+ x = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
+ y = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
+ width = GetWindowAttribute(windowId, WINDOW_WIDTH);
+ height = GetWindowAttribute(windowId, WINDOW_HEIGHT);
+ tileNum = tileOffset + GetBgAttribute(bg, BG_ATTR_BASETILE);
+
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 0), x - 1, y - 1, 1, 1);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 1), x, y - 1, width, 1);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 2), x + width, y - 1, 1, 1);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 3), x - 1, y, 1, height);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 4), x + width, y, 1, height);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 5), x - 1, y + height, 1, 1);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 6), x, y + height, width, 1);
+ FillBgTilemapBufferRect_Palette0(bg, ((paletteId << 12) & 0xF000) | (tileNum + 7), x + width, y + height, 1, 1);
}
-static u8 sub_81D1754(match_call_t matchCall)
+static void InitMatchCallTextPrinter(int windowId, const u8 *str)
{
- return 0xd5;
+ struct TextPrinterTemplate printerTemplate;
+ printerTemplate.currentChar = str;
+ printerTemplate.windowId = windowId;
+ printerTemplate.fontId = 1;
+ printerTemplate.x = 32;
+ printerTemplate.y = 1;
+ printerTemplate.currentX = 32;
+ printerTemplate.currentY = 1;
+ printerTemplate.letterSpacing = 0;
+ printerTemplate.lineSpacing = 0;
+ printerTemplate.unk = 0;
+ printerTemplate.fgColor = 10;
+ printerTemplate.bgColor = 8;
+ printerTemplate.shadowColor = 14;
+ gTextFlags.useAlternateDownArrow = 0;
+
+ AddTextPrinter(&printerTemplate, GetPlayerTextSpeedDelay(), NULL);
}
-bool32 MatchCall_IsRematchable(u32 idx)
+static bool32 ExecuteMatchCallTextPrinter(int windowId)
{
- match_call_t matchCall;
- u32 i;
+ if (gMain.heldKeys & A_BUTTON)
+ gTextFlags.canABSpeedUpPrint = 1;
+ else
+ gTextFlags.canABSpeedUpPrint = 0;
- if (idx > 20)
- return 0;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- return sMatchCall_IsRematchableFunctions[i](matchCall);
+ RunTextPrinters();
+ return IsTextPrinterActive(windowId);
}
-static bool32 MatchCall_IsRematchable_Type0(match_call_t matchCall)
+static void sub_8196694(u8 taskId)
{
- return FALSE;
-}
+ s16 *taskData = gTasks[taskId].data;
+ if (++taskData[0] > 8)
+ {
+ taskData[0] = 0;
+ if (++taskData[1] > 7)
+ taskData[1] = 0;
-static bool32 MatchCall_IsRematchable_Type1(match_call_t matchCall)
-{
- if (matchCall.type1->rematchTableIdx >= REMATCH_ELITE_FOUR_ENTRIES)
- return FALSE;
- return gSaveBlock1Ptr->trainerRematches[matchCall.type1->rematchTableIdx] ? TRUE : FALSE;
+ taskData[2] = (taskData[1] * 16) + 0x279;
+ WriteSequenceToBgTilemapBuffer(0, taskData[2] | ~0xFFF, 1, 15, 4, 4, 17, 1);
+ CopyBgTilemapBufferToVram(0);
+ }
}
-static bool32 MatchCall_IsRematchable_Type2(match_call_t matchCall)
+static bool32 TrainerIsEligibleForRematch(int matchCallId)
{
- return gSaveBlock1Ptr->trainerRematches[matchCall.type2->rematchTableIdx] ? TRUE : FALSE;
+ return gSaveBlock1Ptr->trainerRematches[matchCallId] > 0;
}
-static bool32 MatchCall_IsRematchable_Type3(match_call_t matchCall)
+static u16 GetRematchTrainerLocation(int matchCallId)
{
- return FALSE;
+ const struct MapHeader *mapHeader = Overworld_GetMapHeaderByGroupAndId(gRematchTable[matchCallId].mapGroup, gRematchTable[matchCallId].mapNum);
+ return mapHeader->regionMapSectionId;
}
-static bool32 MatchCall_IsRematchable_Type4(match_call_t matchCall)
+static u32 GetNumRematchTrainersFought(void)
{
- return FALSE;
+ u32 i, count;
+ for (i = 0, count = 0; i < 64; i++)
+ {
+ if (HasTrainerBeenFought(gRematchTable[i].trainerIds[0]))
+ count++;
+ }
+
+ return count;
}
-bool32 sub_81D17E8(u32 idx)
+static u32 sub_8196774(int arg0)
{
- match_call_t matchCall;
- u32 i;
+ u32 i, count;
- if (idx > 20)
- return FALSE;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- if (gUnknown_08625338[i](matchCall))
- return TRUE;
- for (i = 0; i < 4; i++)
+ for (i = 0, count = 0; i < REMATCH_TABLE_ENTRIES; i++)
{
- if (sMatchCallCheckPageOverrides[i].idx == idx)
- return TRUE;
+ if (HasTrainerBeenFought(gRematchTable[i].trainerIds[0]))
+ {
+ if (count == arg0)
+ return i;
+
+ count++;
+ }
}
- return FALSE;
+
+ return REMATCH_TABLE_ENTRIES;
}
-static bool32 sub_81D1840(match_call_t matchCall)
+bool32 SelectMatchCallMessage(int trainerId, u8 *str)
{
- return FALSE;
+ u32 matchCallId;
+ const struct MatchCallText *matchCallText;
+ bool32 retVal = FALSE;
+
+ matchCallId = GetTrainerMatchCallId(trainerId);
+ gBattleFrontierStreakInfo.facilityId = 0;
+ if (TrainerIsEligibleForRematch(matchCallId)
+ && GetRematchTrainerLocation(matchCallId) == gMapHeader.regionMapSectionId)
+ {
+ matchCallText = GetSameRouteMatchCallText(matchCallId, str);
+ }
+ else if (sub_8196D74(matchCallId))
+ {
+ matchCallText = GetDifferentRouteMatchCallText(matchCallId, str);
+ retVal = TRUE;
+ UpdateRematchIfDefeated(matchCallId);
+ }
+ else if (Random() % 3)
+ {
+ matchCallText = GetBattleMatchCallText(matchCallId, str);
+ }
+ else
+ {
+ matchCallText = GetGeneralMatchCallText(matchCallId, str);
+ }
+
+ BuildMatchCallString(matchCallId, matchCallText, str);
+ return retVal;
}
-static bool32 sub_81D1844(match_call_t matchCall)
+static int GetTrainerMatchCallId(int trainerId)
{
- return TRUE;
+ int i = 0;
+ while (1)
+ {
+ if (sMatchCallTrainers[i].trainerId == trainerId)
+ return i;
+ else
+ i++;
+ }
}
-static bool32 sub_81D1848(match_call_t matchCall)
+static const struct MatchCallText *GetSameRouteMatchCallText(int matchCallId, u8 *str)
{
- return TRUE;
+ u16 textId = sMatchCallTrainers[matchCallId].sameRouteMatchCallTextId;
+ int mask = 0xFF;
+ u32 topic = (textId >> 8) - 1;
+ u32 id = (textId & mask) - 1;
+ return &sMatchCallBattleRequestTopics[topic][id];
}
-static bool32 sub_81D184C(match_call_t matchCall)
+static const struct MatchCallText *GetDifferentRouteMatchCallText(int matchCallId, u8 *str)
{
- return FALSE;
+ u16 textId = sMatchCallTrainers[matchCallId].differentRouteMatchCallTextId;
+ int mask = 0xFF;
+ u32 topic = (textId >> 8) - 1;
+ u32 id = (textId & mask) - 1;
+ return &sMatchCallBattleRequestTopics[topic][id];
}
-static bool32 sub_81D1850(match_call_t matchCall)
+static const struct MatchCallText *GetBattleMatchCallText(int matchCallId, u8 *str)
{
- return FALSE;
+ int mask;
+ u32 textId, topic, id;
+
+ topic = Random() % 3;
+ textId = sMatchCallTrainers[matchCallId].battleTopicTextIds[topic];
+ if (!textId)
+ SpriteCallbackDummy(NULL); // leftover debugging ???
+
+ mask = 0xFF;
+ topic = (textId >> 8) - 1;
+ id = (textId & mask) - 1;
+ return &sMatchCallBattleTopics[topic][id];
}
-u32 MatchCall_GetRematchTableIdx(u32 idx)
+static const struct MatchCallText *GetGeneralMatchCallText(int matchCallId, u8 *str)
{
- match_call_t matchCall;
- u32 i;
+ int i;
+ int count;
+ u32 topic, id;
+ u16 rand;
+ u16 var3;
+
+ rand = Random();
+ if (!(rand & 1))
+ {
+ for (count = 0, i = 0; i < NUM_FRONTIER_FACILITIES; i++)
+ {
+ if (GetFrontierStreakInfo(i, &topic) > 1)
+ count++;
+ }
- if (idx > 20)
- return REMATCH_TABLE_ENTRIES;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- return sMatchCall_GetRematchTableIdxFunctions[i](matchCall);
+ if (count)
+ {
+ count = Random() % count;
+ for (i = 0; i < NUM_FRONTIER_FACILITIES; i++)
+ {
+ gBattleFrontierStreakInfo.streak = GetFrontierStreakInfo(i, &topic);
+ if (gBattleFrontierStreakInfo.streak < 2)
+ continue;
+
+ if (!count)
+ break;
+
+ count--;
+ }
+
+ gBattleFrontierStreakInfo.facilityId = i;
+ id = sMatchCallTrainers[matchCallId].battleFrontierRecordStreakTextIndex - 1;
+ return &sMatchCallGeneralTopics[topic][id];
+ }
+ }
+
+ topic = (sMatchCallTrainers[matchCallId].generalTextId >> 8) - 1;
+ id = (sMatchCallTrainers[matchCallId].generalTextId & 0xFF) - 1;
+ return &sMatchCallGeneralTopics[topic][id];
}
-static u32 MatchCall_GetRematchTableIdx_Type0(match_call_t matchCall)
+static void BuildMatchCallString(int matchCallId, const struct MatchCallText *matchCallText, u8 *str)
{
- return REMATCH_TABLE_ENTRIES;
+ PopulateMatchCallStringVars(matchCallId, matchCallText->stringVarFuncIds);
+ StringExpandPlaceholders(str, matchCallText->text);
}
-static u32 MatchCall_GetRematchTableIdx_Type1(match_call_t matchCall)
+static u8 *const sMatchCallTextStringVars[] = { gStringVar1, gStringVar2, gStringVar3 };
+
+static void PopulateMatchCallStringVars(int matchCallId, const s8 *stringVarFuncIds)
{
- return matchCall.type1->rematchTableIdx;
+ int i;
+ for (i = 0; i < 3; i++)
+ {
+ if (stringVarFuncIds[i] >= 0)
+ PopulateMatchCallStringVar(matchCallId, stringVarFuncIds[i], sMatchCallTextStringVars[i]);
+ }
}
-static u32 MatchCall_GetRematchTableIdx_Type2(match_call_t matchCall)
+static void (*const sPopulateMatchCallStringVarFuncs[])(int, u8 *) =
{
- return matchCall.type2->rematchTableIdx;
-}
+ PopulateTrainerName,
+ PopulateMapName,
+ PopulateSpeciesFromTrainerLocation,
+ PopulateSpeciesFromTrainerParty,
+ PopulateBattleFrontierFacilityName,
+ PopulateBattleFrontierStreak,
+};
-static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t matchCall)
+static void PopulateMatchCallStringVar(int matchCallId, int funcId, u8 *destStr)
{
- return REMATCH_TABLE_ENTRIES;
+ sPopulateMatchCallStringVarFuncs[funcId](matchCallId, destStr);
}
-static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t matchCall)
+static const struct MultiTrainerMatchCallText sMultiTrainerMatchCallTexts[] =
{
- return REMATCH_TABLE_ENTRIES;
-}
+ { .trainerId = TRAINER_KIRA_AND_DAN_1, .text = gText_Kira },
+ { .trainerId = TRAINER_AMY_AND_LIV_1, .text = gText_Amy },
+ { .trainerId = TRAINER_JOHN_AND_JAY_1, .text = gText_John },
+ { .trainerId = TRAINER_LILA_AND_ROY_1, .text = gText_Roy },
+ { .trainerId = TRAINER_GABBY_AND_TY_1, .text = gText_Gabby },
+ { .trainerId = TRAINER_ANNA_AND_MEG_1, .text = gText_Anna },
+};
-void MatchCall_GetMessage(u32 idx, u8 *dest)
+static void PopulateTrainerName(int matchCallId, u8 *destStr)
{
- match_call_t matchCall;
u32 i;
+ u16 trainerId = sMatchCallTrainers[matchCallId].trainerId;
+ for (i = 0; i < 6; i++)
+ {
+ if (sMultiTrainerMatchCallTexts[i].trainerId == trainerId)
+ {
+ StringCopy(destStr, sMultiTrainerMatchCallTexts[i].text);
+ return;
+ }
+ }
- if (idx > 20)
- return;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- sMatchCall_GetMessageFunctions[i](matchCall, dest);
+ StringCopy(destStr, gTrainers[trainerId].trainerName);
}
-static void MatchCall_GetMessage_Type0(match_call_t matchCall, u8 *dest)
+static void PopulateMapName(int matchCallId, u8 *destStr)
{
- sub_81D1920(matchCall.type0->textData, dest);
+ GetMapName(destStr, GetRematchTrainerLocation(matchCallId), 0);
}
-static void MatchCall_GetMessage_Type1(match_call_t matchCall, u8 *dest)
+static u8 GetLandEncounterSlot(void)
{
- if (matchCall.common->type != 5)
- sub_81D1920(matchCall.type5->textData, dest);
+ int rand = Random() % 100;
+ if (rand < 20)
+ return 0;
+ else if (rand >= 20 && rand < 40)
+ return 1;
+ else if (rand >= 40 && rand < 50)
+ return 2;
+ else if (rand >= 50 && rand < 60)
+ return 3;
+ else if (rand >= 60 && rand < 70)
+ return 4;
+ else if (rand >= 70 && rand < 80)
+ return 5;
+ else if (rand >= 80 && rand < 85)
+ return 6;
+ else if (rand >= 85 && rand < 90)
+ return 7;
+ else if (rand >= 90 && rand < 94)
+ return 8;
+ else if (rand >= 94 && rand < 98)
+ return 9;
+ else if (rand >= 98 && rand < 99)
+ return 10;
else
- sub_81D199C(matchCall.type1->textData, matchCall.type1->rematchTableIdx, dest);
+ return 11;
}
-static void MatchCall_GetMessage_Type2(match_call_t matchCall, u8 *dest)
+static u8 GetWaterEncounterSlot(void)
{
- sub_81D1920(matchCall.type2->textData, dest);
-}
-
-static void MatchCall_GetMessage_Type3(match_call_t matchCall, u8 *dest)
-{
- sub_81D1920(matchCall.type4->textData, dest);
+ int rand = Random() % 100;
+ if (rand < 60)
+ return 0;
+ else if (rand >= 60 && rand < 90)
+ return 1;
+ else if (rand >= 90 && rand < 95)
+ return 2;
+ else if (rand >= 95 && rand < 99)
+ return 3;
+ else
+ return 4;
}
-static void MatchCall_GetMessage_Type4(match_call_t matchCall, u8 *dest)
+static void PopulateSpeciesFromTrainerLocation(int matchCallId, u8 *destStr)
{
- sub_8197080(dest);
-}
+ u16 species[2];
+ int numSpecies;
+ u8 slot;
+ int i = 0;
-void sub_81D1920(const match_call_text_data_t *sub0, u8 *dest)
-{
- u32 i;
- for (i = 0; sub0[i].text != NULL; i++)
- ;
- if (i)
- i--;
- while (i)
+ if (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED)) // ??? This check is nonsense.
{
- if (sub0[i].flag != 0xffff && FlagGet(sub0[i].flag) == TRUE)
- break;
- i--;
- }
- if (sub0[i].flag2 != 0xffff)
- FlagSet(sub0[i].flag2);
- StringExpandPlaceholders(dest, sub0[i].text);
-}
+ while (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED))
+ {
+ if (gWildMonHeaders[i].mapGroup == gRematchTable[matchCallId].mapGroup
+ && gWildMonHeaders[i].mapNum == gRematchTable[matchCallId].mapNum)
+ break;
-#ifdef NONMATCHING
-// There's some weird upmerge going on that I cannot replicate at this time.
-static void sub_81D199C(const match_call_text_data_t *sub0, u16 idx, u8 *dest)
-{
- u32 i;
- for (i = 0; sub0[i].text != NULL; i++)
- {
- if (sub0[i].flag == 0xfffe)
- break;
- if (sub0[i].flag == 0xffff && !FlagGet(sub0[i].flag))
- break;
- }
- if (sub0[i].flag != 0xfffe)
- {
- if (i)
- i--;
- if (sub0[i].flag2 != 0xffff)
- FlagSet(sub0[i].flag2);
- StringExpandPlaceholders(dest, sub0[i].text);
- }
- else
- {
- if (!FlagGet(FLAG_SYS_GAME_CLEAR))
- ;
- else if (gSaveBlock1Ptr->trainerRematches[idx])
- i += 2;
- else if (CountBattledRematchTeams(idx) >= 2)
- i += 3;
- else
i++;
- StringExpandPlaceholders(dest, sub0[i].text);
+ }
+
+ if (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED))
+ {
+ numSpecies = 0;
+ if (gWildMonHeaders[i].landMonsInfo)
+ {
+ slot = GetLandEncounterSlot();
+ species[numSpecies] = gWildMonHeaders[i].landMonsInfo->wildPokemon[slot].species;
+ numSpecies++;
+ }
+
+ if (gWildMonHeaders[i].waterMonsInfo)
+ {
+ slot = GetWaterEncounterSlot();
+ species[numSpecies] = gWildMonHeaders[i].waterMonsInfo->wildPokemon[slot].species;
+ numSpecies++;
+ }
+
+ if (numSpecies)
+ {
+ StringCopy(destStr, gSpeciesNames[species[Random() % numSpecies]]);
+ return;
+ }
+ }
}
+
+ destStr[0] = EOS;
}
-#else
-static NAKED void sub_81D199C(const match_call_text_data_t *sub0, u16 idx, u8 *dest)
-{
- asm_unified("\tpush {r4-r7,lr}\n"
- "\tmov r7, r10\n"
- "\tmov r6, r9\n"
- "\tmov r5, r8\n"
- "\tpush {r5-r7}\n"
- "\tadds r6, r0, 0\n"
- "\tmov r10, r2\n"
- "\tlsls r1, 16\n"
- "\tlsrs r7, r1, 16\n"
- "\tmovs r5, 0\n"
- "\tldr r0, [r6]\n"
- "\tcmp r0, 0\n"
- "\tbeq _081D19E6\n"
- "\tldrh r0, [r6, 0x4]\n"
- "\tldr r1, =0x0000fffe\n"
- "\tcmp r0, r1\n"
- "\tbeq _081D1A24\n"
- "\tldr r0, =0x0000ffff\n"
- "\tmov r9, r0\n"
- "\tmov r8, r1\n"
- "\tadds r4, r6, 0\n"
- "_081D19C6:\n"
- "\tldrh r0, [r4, 0x4]\n"
- "\tcmp r0, r9\n"
- "\tbeq _081D19D6\n"
- "\tbl FlagGet\n"
- "\tlsls r0, 24\n"
- "\tcmp r0, 0\n"
- "\tbeq _081D19E6\n"
- "_081D19D6:\n"
- "\tadds r4, 0x8\n"
- "\tadds r5, 0x1\n"
- "\tldr r0, [r4]\n"
- "\tcmp r0, 0\n"
- "\tbeq _081D19E6\n"
- "\tldrh r0, [r4, 0x4]\n"
- "\tcmp r0, r8\n"
- "\tbne _081D19C6\n"
- "_081D19E6:\n"
- "\tlsls r0, r5, 3\n"
- "\tadds r0, r6\n"
- "\tldrh r1, [r0, 0x4]\n"
- "\tldr r0, =0x0000fffe\n"
- "\tcmp r1, r0\n"
- "\tbeq _081D1A24\n"
- "\tcmp r5, 0\n"
- "\tbeq _081D19F8\n"
- "\tsubs r5, 0x1\n"
- "_081D19F8:\n"
- "\tlsls r0, r5, 3\n"
- "\tadds r4, r0, r6\n"
- "\tldrh r1, [r4, 0x6]\n"
- "\tldr r0, =0x0000ffff\n"
- "\tcmp r1, r0\n"
- "\tbeq _081D1A0A\n"
- "\tadds r0, r1, 0\n"
- "\tbl FlagSet\n"
- "_081D1A0A:\n"
- "\tldr r1, [r4]\n"
- "\tmov r0, r10\n"
- "\tbl StringExpandPlaceholders\n"
- "\tb _081D1A5C\n"
- "\t.pool\n"
- "_081D1A1C:\n"
- "\tadds r5, 0x2\n"
- "\tb _081D1A50\n"
- "_081D1A20:\n"
- "\tadds r5, 0x3\n"
- "\tb _081D1A50\n"
- "_081D1A24:\n"
- "\tldr r0, =0x00000864\n"
- "\tbl FlagGet\n"
- "\tlsls r0, 24\n"
- "\tcmp r0, 0\n"
- "\tbeq _081D1A50\n"
- "\tldr r0, =gSaveBlock1Ptr\n"
- "\tldr r0, [r0]\n"
- "\tldr r1, =0x000009ca\n"
- "\tadds r0, r1\n"
- "\tadds r0, r7\n"
- "\tldrb r0, [r0]\n"
- "\tcmp r0, 0\n"
- "\tbne _081D1A1C\n"
- "\tadds r0, r7, 0\n"
- "\tbl CountBattledRematchTeams\n"
- "\tlsls r0, 16\n"
- "\tlsrs r0, 16\n"
- "\tcmp r0, 0x1\n"
- "\tbhi _081D1A20\n"
- "\tadds r5, 0x1\n"
- "_081D1A50:\n"
- "\tlsls r0, r5, 3\n"
- "\tadds r0, r6\n"
- "\tldr r1, [r0]\n"
- "\tmov r0, r10\n"
- "\tbl StringExpandPlaceholders\n"
- "_081D1A5C:\n"
- "\tpop {r3-r5}\n"
- "\tmov r8, r3\n"
- "\tmov r9, r4\n"
- "\tmov r10, r5\n"
- "\tpop {r4-r7}\n"
- "\tpop {r0}\n"
- "\tbx r0\n"
- "\t.pool");
-}
-#endif
-void sub_81D1A78(u32 idx, const u8 **desc, const u8 **name)
+static void PopulateSpeciesFromTrainerParty(int matchCallId, u8 *destStr)
{
- match_call_t matchCall;
- u32 i;
+ u16 trainerId;
+ union TrainerMonPtr party;
+ u8 monId;
+ const u8 *speciesName;
- if (idx > 20)
- return;
- matchCall = sMatchCallHeaders[idx];
- i = MatchCallGetFunctionIndex(matchCall);
- sMatchCall_GetNameAndDescFunctions[i](matchCall, desc, name);
+ trainerId = GetLastBeatenRematchTrainerId(sMatchCallTrainers[matchCallId].trainerId);
+ party = gTrainers[trainerId].party;
+ monId = Random() % gTrainers[trainerId].partySize;
+
+ switch (gTrainers[trainerId].partyFlags)
+ {
+ case 0:
+ default:
+ speciesName = gSpeciesNames[party.NoItemDefaultMoves[monId].species];
+ break;
+ case F_TRAINER_PARTY_CUSTOM_MOVESET:
+ speciesName = gSpeciesNames[party.NoItemCustomMoves[monId].species];
+ break;
+ case F_TRAINER_PARTY_HELD_ITEM:
+ speciesName = gSpeciesNames[party.ItemDefaultMoves[monId].species];
+ break;
+ case F_TRAINER_PARTY_CUSTOM_MOVESET | F_TRAINER_PARTY_HELD_ITEM:
+ speciesName = gSpeciesNames[party.ItemCustomMoves[monId].species];
+ break;
+ }
+
+ StringCopy(destStr, speciesName);
}
-static void MatchCall_GetNameAndDesc_Type0(match_call_t matchCall, const u8 **desc, const u8 **name)
+static const u8 *const sBattleFrontierFacilityNames[] =
{
- *desc = matchCall.type0->desc;
- *name = matchCall.type0->name;
-}
+ gText_BattleTower2,
+ gText_BattleDome,
+ gText_BattlePalace,
+ gText_BattleArena,
+ gText_BattlePike,
+ gText_BattleFactory,
+ gText_BattlePyramid,
+};
-static void MatchCall_GetNameAndDesc_Type1(match_call_t matchCall, const u8 **desc, const u8 **name)
+static void PopulateBattleFrontierFacilityName(int matchCallId, u8 *destStr)
{
- match_call_t _matchCall = matchCall;
- if (_matchCall.type1->name == NULL)
- MatchCall_GetNameAndDescByRematchIdx(_matchCall.type1->rematchTableIdx, desc, name);
- else
- *name = _matchCall.type1->name;
- *desc = _matchCall.type1->desc;
+ StringCopy(destStr, sBattleFrontierFacilityNames[gBattleFrontierStreakInfo.facilityId]);
}
-static void MatchCall_GetNameAndDesc_Type2(match_call_t matchCall, const u8 **desc, const u8 **name)
+static void PopulateBattleFrontierStreak(int matchCallId, u8 *destStr)
{
- MatchCall_GetNameAndDescByRematchIdx(matchCall.type2->rematchTableIdx, desc, name);
- *desc = matchCall.type2->desc;
+ int i = 0;
+ int streak = gBattleFrontierStreakInfo.streak;
+ while (streak != 0)
+ {
+ streak /= 10;
+ i++;
+ }
+
+ ConvertIntToDecimalStringN(destStr, gBattleFrontierStreakInfo.streak, 0, i);
}
-static void MatchCall_GetNameAndDesc_Type3(match_call_t matchCall, const u8 **desc, const u8 **name)
+static const u16 sBadgeFlags[] =
{
- *desc = matchCall.type4->desc;
- *name = matchCall.type4->name;
-}
+ FLAG_BADGE01_GET,
+ FLAG_BADGE02_GET,
+ FLAG_BADGE03_GET,
+ FLAG_BADGE04_GET,
+ FLAG_BADGE05_GET,
+ FLAG_BADGE06_GET,
+ FLAG_BADGE07_GET,
+ FLAG_BADGE08_GET,
+};
-static void MatchCall_GetNameAndDesc_Type4(match_call_t matchCall, const u8 **desc, const u8 **name)
+static int GetNumOwnedBadges(void)
{
- *desc = matchCall.type3->desc;
- *name = matchCall.type3->name;
+ u32 i;
+
+ for (i = 0; i < 8; i++)
+ {
+ if (!FlagGet(sBadgeFlags[i]))
+ break;
+ }
+
+ return i;
}
-static void MatchCall_GetNameAndDescByRematchIdx(u32 idx, const u8 **desc, const u8 **name)
+static bool32 sub_8196D74(int matchCallId)
{
- const struct Trainer *trainer = gTrainers + GetTrainerIdxByRematchIdx(idx);
- *desc = gTrainerClassNames[trainer->trainerClass];
- *name = trainer->trainerName;
+ int dayCount;
+ int otId;
+ u16 easyChatWord;
+ int numRematchTrainersFought;
+ int var0, var1, var2;
+
+ if (GetNumOwnedBadges() < 5)
+ return FALSE;
+
+ dayCount = RtcGetLocalDayCount();
+ otId = GetTrainerId(gSaveBlock2Ptr->playerTrainerId) & 0xFFFF;
+
+ easyChatWord = gSaveBlock1Ptr->easyChatPairs[0].unk2;
+ numRematchTrainersFought = GetNumRematchTrainersFought();
+ var0 = (numRematchTrainersFought * 13) / 10;
+ var1 = ((dayCount ^ easyChatWord) + (easyChatWord ^ GetGameStat(GAME_STAT_TRAINER_BATTLES))) ^ otId;
+ var2 = var1 % var0;
+ if (var2 < numRematchTrainersFought)
+ {
+ if (sub_8196774(var2) == matchCallId)
+ return TRUE;
+ }
+
+ return FALSE;
}
-#ifdef NONMATCHING
-const u8 *sub_81D1B40(u32 idx, u32 offset)
+static u16 GetFrontierStreakInfo(u16 facilityId, u32 *topicTextId)
{
- u32 i;
+ int i;
+ int j;
+ u16 streak = 0;
- for (i = 0; i < 4; i++)
+ switch (facilityId)
{
- if (sMatchCallCheckPageOverrides[i].idx == idx)
+ case FRONTIER_FACILITY_DOME:
+ for (i = 0; i < 2; i++)
{
- for (; i + 1 < 4 && sMatchCallCheckPageOverrides[i + 1].idx == idx; i++)
+ for (j = 0; j < 2; j++)
{
- if (!FlagGet(sMatchCallCheckPageOverrides[i + 1].v4))
- break;
+ if (streak < gSaveBlock2Ptr->frontier.domeRecordWinStreaks[i][j])
+ streak = gSaveBlock2Ptr->frontier.domeRecordWinStreaks[i][j];
}
- return sMatchCallCheckPageOverrides[i].v8[offset];
}
+ *topicTextId = 3;
+ break;
+ case FRONTIER_FACILITY_FACTORY:
+ for (i = 0; i < 2; i++)
+ {
+ // BUG: should be looking at battle factory records.
+ if (streak < gSaveBlock2Ptr->frontier.pikeRecordStreaks[i])
+ streak = gSaveBlock2Ptr->frontier.pikeRecordStreaks[i];
+ }
+ *topicTextId = 4;
+ break;
+ case FRONTIER_FACILITY_TOWER:
+ for (i = 0; i < 4; i++)
+ {
+ for (j = 0; j < 2; j++)
+ {
+ if (streak < gSaveBlock2Ptr->frontier.towerRecordWinStreaks[i][j])
+ streak = gSaveBlock2Ptr->frontier.towerRecordWinStreaks[i][j];
+ }
+ }
+ *topicTextId = 2;
+ break;
+ case FRONTIER_FACILITY_PALACE:
+ for (i = 0; i < 2; i++)
+ {
+ for (j = 0; j < 2; j++)
+ {
+ if (streak < gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[i][j])
+ streak = gSaveBlock2Ptr->frontier.palaceRecordWinStreaks[i][j];
+ }
+ }
+ *topicTextId = 2;
+ break;
+ case FRONTIER_FACILITY_PIKE:
+ for (i = 0; i < 2; i++)
+ {
+ for (j = 0; j < 2; j++)
+ {
+ // BUG: should be looking at battle pike records.
+ if (streak < gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[i][j])
+ streak = gSaveBlock2Ptr->frontier.factoryRecordWinStreaks[i][j];
+ }
+ }
+ *topicTextId = 2;
+ break;
+ case FRONTIER_FACILITY_ARENA:
+ for (i = 0; i < 2; i++)
+ {
+ if (streak < gSaveBlock2Ptr->frontier.arenaRecordStreaks[i])
+ streak = gSaveBlock2Ptr->frontier.arenaRecordStreaks[i];
+ }
+ *topicTextId = 2;
+ break;
+ case FRONTIER_FACILITY_PYRAMID:
+ for (i = 0; i < 2; i++)
+ {
+ if (streak < gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i])
+ streak = gSaveBlock2Ptr->frontier.pyramidRecordStreaks[i];
+ }
+ *topicTextId = 5;
+ break;
}
- return NULL;
+
+ return streak;
}
-#else
-NAKED const u8 *sub_81D1B40(u32 idx, u32 offset)
-{
- asm_unified("\tpush {r4-r7,lr}\n"
- "\tmov r7, r9\n"
- "\tmov r6, r8\n"
- "\tpush {r6,r7}\n"
- "\tadds r6, r0, 0\n"
- "\tmovs r5, 0\n"
- "\tldr r2, =sMatchCallCheckPageOverrides\n"
- "\tmovs r0, 0x8\n"
- "\tadds r0, r2\n"
- "\tmov r9, r0\n"
- "_081D1B54:\n"
- "\tlsls r0, r5, 1\n"
- "\tadds r0, r5\n"
- "\tlsls r0, 3\n"
- "\tadds r0, r2\n"
- "\tldrh r0, [r0]\n"
- "\tcmp r0, r6\n"
- "\tbne _081D1BBC\n"
- "\tadds r4, r5, 0x1\n"
- "\tlsls r1, 2\n"
- "\tmov r8, r1\n"
- "\tcmp r4, 0x3\n"
- "\tbhi _081D1BA8\n"
- "\tlsls r0, r4, 1\n"
- "\tadds r0, r4\n"
- "\tlsls r0, 3\n"
- "\tadds r0, r2\n"
- "\tldrh r0, [r0]\n"
- "\tcmp r0, r6\n"
- "\tbne _081D1BA8\n"
- "\tldr r7, =sMatchCallCheckPageOverrides\n"
- "_081D1B7C:\n"
- "\tlsls r0, r4, 1\n"
- "\tadds r0, r4\n"
- "\tlsls r0, 3\n"
- "\tadds r1, r7, 0x4\n"
- "\tadds r0, r1\n"
- "\tldrh r0, [r0]\n"
- "\tbl FlagGet\n"
- "\tlsls r0, 24\n"
- "\tcmp r0, 0\n"
- "\tbeq _081D1BA8\n"
- "\tadds r5, r4, 0\n"
- "\tadds r4, r5, 0x1\n"
- "\tcmp r4, 0x3\n"
- "\tbhi _081D1BA8\n"
- "\tlsls r0, r4, 1\n"
- "\tadds r0, r4\n"
- "\tlsls r0, 3\n"
- "\tadds r0, r7\n"
- "\tldrh r0, [r0]\n"
- "\tcmp r0, r6\n"
- "\tbeq _081D1B7C\n"
- "_081D1BA8:\n"
- "\tlsls r0, r5, 1\n"
- "\tadds r0, r5\n"
- "\tlsls r0, 3\n"
- "\tadd r0, r8\n"
- "\tadd r0, r9\n"
- "\tldr r0, [r0]\n"
- "\tb _081D1BC4\n"
- "\t.pool\n"
- "_081D1BBC:\n"
- "\tadds r5, 0x1\n"
- "\tcmp r5, 0x3\n"
- "\tbls _081D1B54\n"
- "\tmovs r0, 0\n"
- "_081D1BC4:\n"
- "\tpop {r3,r4}\n"
- "\tmov r8, r3\n"
- "\tmov r9, r4\n"
- "\tpop {r4-r7}\n"
- "\tpop {r1}\n"
- "\tbx r1");
+
+static u8 GetPokedexRatingLevel(u16 numSeen)
+{
+ if (numSeen < 10)
+ return 0;
+ if (numSeen < 20)
+ return 1;
+ if (numSeen < 30)
+ return 2;
+ if (numSeen < 40)
+ return 3;
+ if (numSeen < 50)
+ return 4;
+ if (numSeen < 60)
+ return 5;
+ if (numSeen < 70)
+ return 6;
+ if (numSeen < 80)
+ return 7;
+ if (numSeen < 90)
+ return 8;
+ if (numSeen < 100)
+ return 9;
+ if (numSeen < 110)
+ return 10;
+ if (numSeen < 120)
+ return 11;
+ if (numSeen < 130)
+ return 12;
+ if (numSeen < 140)
+ return 13;
+ if (numSeen < 150)
+ return 14;
+ if (numSeen < 160)
+ return 15;
+ if (numSeen < 170)
+ return 16;
+ if (numSeen < 180)
+ return 17;
+ if (numSeen < 190)
+ return 18;
+ if (numSeen < 200)
+ return 19;
+
+ if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_DEOXYS), FLAG_GET_CAUGHT))
+ numSeen--;
+ if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_JIRACHI), FLAG_GET_CAUGHT))
+ numSeen--;
+
+ if (numSeen < 200)
+ return 19;
+ else
+ return 20;
}
-#endif
-s32 sub_81D1BD0(u32 idx)
+static const u8 *const sBirchDexRatingTexts[] =
{
- u32 i;
+ gBirchDexRatingText_LessThan10,
+ gBirchDexRatingText_LessThan20,
+ gBirchDexRatingText_LessThan30,
+ gBirchDexRatingText_LessThan40,
+ gBirchDexRatingText_LessThan50,
+ gBirchDexRatingText_LessThan60,
+ gBirchDexRatingText_LessThan70,
+ gBirchDexRatingText_LessThan80,
+ gBirchDexRatingText_LessThan90,
+ gBirchDexRatingText_LessThan100,
+ gBirchDexRatingText_LessThan110,
+ gBirchDexRatingText_LessThan120,
+ gBirchDexRatingText_LessThan130,
+ gBirchDexRatingText_LessThan140,
+ gBirchDexRatingText_LessThan150,
+ gBirchDexRatingText_LessThan160,
+ gBirchDexRatingText_LessThan170,
+ gBirchDexRatingText_LessThan180,
+ gBirchDexRatingText_LessThan190,
+ gBirchDexRatingText_LessThan200,
+ gBirchDexRatingText_DexCompleted,
+};
+
+void sub_8197080(u8 *destStr)
+{
+ int numSeen, numCaught;
+ u8 *str;
+ u8 dexRatingLevel;
- for (i = 0; i < 4; i++)
+ u8 *buffer = Alloc(0x3E8);
+ if (!buffer)
{
- if (sMatchCallCheckPageOverrides[i].idx == idx)
- return sMatchCallCheckPageOverrides[i].v2;
+ destStr[0] = EOS;
+ return;
}
- return -1;
-}
-
-bool32 sub_81D1BF8(u32 idx)
-{
- s32 i;
- for (i = 0; i < 21; i++)
+ numSeen = GetHoennPokedexCount(FLAG_GET_SEEN);
+ numCaught = GetHoennPokedexCount(FLAG_GET_CAUGHT);
+ ConvertIntToDecimalStringN(gStringVar1, numSeen, 0, 3);
+ ConvertIntToDecimalStringN(gStringVar2, numCaught, 0, 3);
+ dexRatingLevel = GetPokedexRatingLevel(numCaught);
+ str = StringCopy(buffer, gUnknown_082A5C9C);
+ str[0] = CHAR_PROMPT_CLEAR;
+ str++;
+ str = StringCopy(str, gUnknown_082A5D2C);
+ str[0] = CHAR_PROMPT_CLEAR;
+ str++;
+ StringCopy(str, sBirchDexRatingTexts[dexRatingLevel]);
+ str = StringExpandPlaceholders(destStr, buffer);
+
+ if (IsNationalPokedexEnabled())
{
- u32 r0 = MatchCall_GetRematchTableIdx(i);
- if (r0 != REMATCH_TABLE_ENTRIES && r0 == idx)
- return TRUE;
+ str[0] = CHAR_PROMPT_CLEAR;
+ str++;
+ numSeen = GetNationalPokedexCount(FLAG_GET_SEEN);
+ numCaught = GetNationalPokedexCount(FLAG_GET_CAUGHT);
+ ConvertIntToDecimalStringN(gStringVar1, numSeen, 0, 3);
+ ConvertIntToDecimalStringN(gStringVar2, numCaught, 0, 3);
+ StringExpandPlaceholders(str, gUnknown_082A633D);
}
- return FALSE;
+
+ Free(buffer);
}
-void SetMatchCallRegisteredFlag(void)
+void sub_8197184(u8 windowId, u32 destOffset, u32 paletteId)
{
- s32 r0 = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
- if (r0 >= 0)
- FlagSet(FLAG_MATCH_CALL_REGISTERED + r0);
+ u8 bg = GetWindowAttribute(windowId, WINDOW_BG);
+ LoadBgTiles(bg, sUnknown_0860EA6C, 0x100, destOffset);
+ LoadPalette(sUnknown_0860EA4C, paletteId << 4, 0x20);
}
+
+void sub_81971C4(u32 windowId, u32 tileOffset, u32 paletteId)
+{
+ DrawMatchCallTextBoxBorder(windowId, tileOffset, paletteId);
+} \ No newline at end of file
diff --git a/src/menu.c b/src/menu.c
index f1b35b42e..ae589dff4 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1,24 +1,24 @@
#include "global.h"
-#include "bg.h"
-#include "window.h"
-#include "palette.h"
-#include "menu.h"
-#include "constants/songs.h"
-#include "main.h"
-#include "sound.h"
-#include "menu_helpers.h"
#include "alloc.h"
-#include "task.h"
+#include "bg.h"
#include "dma3.h"
-#include "string_util.h"
-#include "pokemon_icon.h"
-#include "constants/flags.h"
#include "event_data.h"
+#include "graphics.h"
+#include "main.h"
+#include "menu.h"
+#include "menu_helpers.h"
+#include "palette.h"
#include "pokedex.h"
+#include "pokemon_icon.h"
#include "region_map.h"
-#include "text_window.h"
+#include "sound.h"
+#include "string_util.h"
#include "strings.h"
-#include "graphics.h"
+#include "task.h"
+#include "text_window.h"
+#include "window.h"
+#include "constants/flags.h"
+#include "constants/songs.h"
#define DLG_WINDOW_PALETTE_NUM 15
#define DLG_WINDOW_BASE_TILE_NUM 0x200
@@ -50,11 +50,11 @@ struct Menu
static EWRAM_DATA u8 sStartMenuWindowId = 0;
static EWRAM_DATA u8 sMapNamePopupWindowId = 0;
-static EWRAM_DATA struct Menu gUnknown_0203CD90 = {0};
-static EWRAM_DATA u16 gUnknown_0203CD9C = 0;
-static EWRAM_DATA u8 gUnknown_0203CD9E = 0;
-static EWRAM_DATA u8 gUnknown_0203CD9F = 0;
-static EWRAM_DATA u8 gUnknown_0203CDA0 = 0;
+static EWRAM_DATA struct Menu sMenu = {0};
+static EWRAM_DATA u16 sTileNum = 0;
+static EWRAM_DATA u8 sPaletteNum = 0;
+static EWRAM_DATA u8 sYesNoWindowId = 0;
+static EWRAM_DATA u8 sWindowId = 0;
static EWRAM_DATA u16 sFiller = 0; // needed to align
static EWRAM_DATA bool8 gUnknown_0203CDA4[4] = {FALSE};
static EWRAM_DATA u16 gUnknown_0203CDA8 = 0;
@@ -549,10 +549,10 @@ void sub_8197AE8(bool8 copyToVram)
CopyBgTilemapBufferToVram(0);
}
-void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a3, u8 a4)
+void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 tileNum, u8 paletteNum)
{
- gUnknown_0203CD9C = a3;
- gUnknown_0203CD9E = a4;
+ sTileNum = tileNum;
+ sPaletteNum = paletteNum;
CallWindowFunction(windowId, sub_8197BB4);
FillWindowPixelBuffer(windowId, 0x11);
PutWindowTilemap(windowId);
@@ -560,10 +560,10 @@ void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a3, u8 a4)
CopyWindowToVram(windowId, 3);
}
-void sub_8197B64(u8 windowId, bool8 copyToVram, u16 a3)
+void sub_8197B64(u8 windowId, bool8 copyToVram, u16 tileNum)
{
- gUnknown_0203CD9C = a3;
- gUnknown_0203CD9E = GetWindowAttribute(windowId, WINDOW_PALETTE_NUM);
+ sTileNum = tileNum;
+ sPaletteNum = GetWindowAttribute(windowId, WINDOW_PALETTE_NUM);
CallWindowFunction(windowId, sub_8197BB4);
FillWindowPixelBuffer(windowId, 0x11);
PutWindowTilemap(windowId);
@@ -574,96 +574,96 @@ void sub_8197B64(u8 windowId, bool8 copyToVram, u16 a3)
void sub_8197BB4(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
{
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 1,
+ sTileNum + 1,
tilemapLeft - 2,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 3,
+ sTileNum + 3,
tilemapLeft - 1,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 4,
+ sTileNum + 4,
tilemapLeft,
tilemapTop - 1,
width - 1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 5,
+ sTileNum + 5,
tilemapLeft + width - 1,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 6,
+ sTileNum + 6,
tilemapLeft + width,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 7,
+ sTileNum + 7,
tilemapLeft - 2,
tilemapTop,
1,
5,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 9,
+ sTileNum + 9,
tilemapLeft - 1,
tilemapTop,
width + 1,
5,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 10,
+ sTileNum + 10,
tilemapLeft + width,
tilemapTop,
1,
5,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- BG_TILE_V_FLIP(gUnknown_0203CD9C + 1),
+ BG_TILE_V_FLIP(sTileNum + 1),
tilemapLeft - 2,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- BG_TILE_V_FLIP(gUnknown_0203CD9C + 3),
+ BG_TILE_V_FLIP(sTileNum + 3),
tilemapLeft - 1,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- BG_TILE_V_FLIP(gUnknown_0203CD9C + 4),
+ BG_TILE_V_FLIP(sTileNum + 4),
tilemapLeft,
tilemapTop + height,
width - 1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- BG_TILE_V_FLIP(gUnknown_0203CD9C + 5),
+ BG_TILE_V_FLIP(sTileNum + 5),
tilemapLeft + width - 1,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- BG_TILE_V_FLIP(gUnknown_0203CD9C + 6),
+ BG_TILE_V_FLIP(sTileNum + 6),
tilemapLeft + width,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
}
void sub_8197DF8(u8 windowId, bool8 copyToVram)
@@ -682,8 +682,8 @@ void sub_8197E30(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 p
void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 baseTileNum, u8 paletteNum)
{
- gUnknown_0203CD9C = baseTileNum;
- gUnknown_0203CD9E = paletteNum;
+ sTileNum = baseTileNum;
+ sPaletteNum = paletteNum;
CallWindowFunction(windowId, DrawWindowBorder);
FillWindowPixelBuffer(windowId, 0x11);
PutWindowTilemap(windowId);
@@ -693,8 +693,8 @@ void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 baseTileNum, u8 pal
void sub_8197EC8(u8 windowId, bool8 copyToVram, u16 baseTileNum)
{
- gUnknown_0203CD9C = baseTileNum;
- gUnknown_0203CD9E = GetWindowAttribute(windowId, WINDOW_PALETTE_NUM);
+ sTileNum = baseTileNum;
+ sPaletteNum = GetWindowAttribute(windowId, WINDOW_PALETTE_NUM);
CallWindowFunction(windowId, DrawWindowBorder);
FillWindowPixelBuffer(windowId, 0x11);
PutWindowTilemap(windowId);
@@ -705,61 +705,61 @@ void sub_8197EC8(u8 windowId, bool8 copyToVram, u16 baseTileNum)
void DrawWindowBorder(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
{
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 0,
+ sTileNum + 0,
tilemapLeft - 1,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 1,
+ sTileNum + 1,
tilemapLeft,
tilemapTop - 1,
width,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 2,
+ sTileNum + 2,
tilemapLeft + width,
tilemapTop - 1,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 3,
+ sTileNum + 3,
tilemapLeft - 1,
tilemapTop,
1,
height,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 5,
+ sTileNum + 5,
tilemapLeft + width,
tilemapTop,
1,
height,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 6,
+ sTileNum + 6,
tilemapLeft - 1,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 7,
+ sTileNum + 7,
tilemapLeft,
tilemapTop + height,
width,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
FillBgTilemapBufferRect(bg,
- gUnknown_0203CD9C + 8,
+ sTileNum + 8,
tilemapLeft + width,
tilemapTop + height,
1,
1,
- gUnknown_0203CD9E);
+ sPaletteNum);
}
void sub_8198070(u8 windowId, bool8 copyToVram)
@@ -793,7 +793,7 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile)
window.paletteNum = palette;
window.baseBlock = baseTile;
- gUnknown_0203CDA0 = AddWindow(&window);
+ sWindowId = AddWindow(&window);
if (palette > 15)
palette = 15 * 16;
@@ -801,27 +801,27 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile)
palette *= 16;
LoadPalette(gUnknown_0860F0B0, palette, sizeof(gUnknown_0860F0B0));
- return gUnknown_0203CDA0;
+ return sWindowId;
}
void sub_8198180(const u8 *string, u8 a2, bool8 copyToVram)
{
u16 width = 0;
- if (gUnknown_0203CDA0 != 0xFF)
+ if (sWindowId != 0xFF)
{
- PutWindowTilemap(gUnknown_0203CDA0);
- FillWindowPixelBuffer(gUnknown_0203CDA0, 0xFF);
+ PutWindowTilemap(sWindowId);
+ FillWindowPixelBuffer(sWindowId, 0xFF);
width = GetStringWidth(0, string, 0);
- AddTextPrinterParameterized3(gUnknown_0203CDA0,
+ AddTextPrinterParameterized3(sWindowId,
0,
- 0xEC - (GetWindowAttribute(gUnknown_0203CDA0, WINDOW_TILEMAP_LEFT) * 8) - a2 - width,
+ 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a2 - width,
1,
gUnknown_0860F0D0,
0,
string);
if (copyToVram)
- CopyWindowToVram(gUnknown_0203CDA0, 3);
+ CopyWindowToVram(sWindowId, 3);
}
}
@@ -830,7 +830,7 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo
u8 color[3];
u16 width = 0;
- if (gUnknown_0203CDA0 != 0xFF)
+ if (sWindowId != 0xFF)
{
if (a3 != 0)
{
@@ -844,49 +844,49 @@ void sub_8198204(const u8 *string, const u8 *string2, u8 a3, u8 a4, bool8 copyTo
color[1] = 1;
color[2] = 2;
}
- PutWindowTilemap(gUnknown_0203CDA0);
- FillWindowPixelBuffer(gUnknown_0203CDA0, 0xFF);
+ PutWindowTilemap(sWindowId);
+ FillWindowPixelBuffer(sWindowId, 0xFF);
if (string2 != NULL)
{
width = GetStringWidth(0, string2, 0);
- AddTextPrinterParameterized3(gUnknown_0203CDA0,
+ AddTextPrinterParameterized3(sWindowId,
0,
- 0xEC - (GetWindowAttribute(gUnknown_0203CDA0, WINDOW_TILEMAP_LEFT) * 8) - a4 - width,
+ 0xEC - (GetWindowAttribute(sWindowId, WINDOW_TILEMAP_LEFT) * 8) - a4 - width,
1,
color,
0,
string2);
}
- AddTextPrinterParameterized4(gUnknown_0203CDA0, 1, 4, 1, 0, 0, color, 0, string);
+ AddTextPrinterParameterized4(sWindowId, 1, 4, 1, 0, 0, color, 0, string);
if (copyToVram)
- CopyWindowToVram(gUnknown_0203CDA0, 3);
+ CopyWindowToVram(sWindowId, 3);
}
}
void sub_81982D8(void)
{
- if (gUnknown_0203CDA0 != 0xFF)
- CopyWindowToVram(gUnknown_0203CDA0, 3);
+ if (sWindowId != 0xFF)
+ CopyWindowToVram(sWindowId, 3);
}
void sub_81982F0(void)
{
- if (gUnknown_0203CDA0 != 0xFF)
+ if (sWindowId != 0xFF)
{
- FillWindowPixelBuffer(gUnknown_0203CDA0, 0xFF);
- CopyWindowToVram(gUnknown_0203CDA0, 3);
+ FillWindowPixelBuffer(sWindowId, 0xFF);
+ CopyWindowToVram(sWindowId, 3);
}
}
void sub_8198314(void)
{
- if (gUnknown_0203CDA0 != 0xFF)
+ if (sWindowId != 0xFF)
{
- FillWindowPixelBuffer(gUnknown_0203CDA0, 0);
- ClearWindowTilemap(gUnknown_0203CDA0);
- CopyWindowToVram(gUnknown_0203CDA0, 3);
- RemoveWindow(gUnknown_0203CDA0);
- gUnknown_0203CDA0 = 0xFF;
+ FillWindowPixelBuffer(sWindowId, 0);
+ ClearWindowTilemap(sWindowId);
+ CopyWindowToVram(sWindowId, 3);
+ RemoveWindow(sWindowId);
+ sWindowId = 0xFF;
}
}
@@ -894,24 +894,24 @@ u8 sub_8198348(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numC
{
s32 pos;
- gUnknown_0203CD90.left = left;
- gUnknown_0203CD90.top = top;
- gUnknown_0203CD90.minCursorPos = 0;
- gUnknown_0203CD90.maxCursorPos = numChoices - 1;
- gUnknown_0203CD90.windowId = windowId;
- gUnknown_0203CD90.fontId = fontId;
- gUnknown_0203CD90.optionHeight = cursorHeight;
- gUnknown_0203CD90.APressMuted = a7;
+ sMenu.left = left;
+ sMenu.top = top;
+ sMenu.minCursorPos = 0;
+ sMenu.maxCursorPos = numChoices - 1;
+ sMenu.windowId = windowId;
+ sMenu.fontId = fontId;
+ sMenu.optionHeight = cursorHeight;
+ sMenu.APressMuted = a7;
pos = initialCursorPos;
- if (pos < 0 || pos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = 0;
+ if (pos < 0 || pos > sMenu.maxCursorPos)
+ sMenu.cursorPos = 0;
else
- gUnknown_0203CD90.cursorPos = pos;
+ sMenu.cursorPos = pos;
Menu_MoveCursor(0);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
u8 sub_81983AC(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos)
@@ -929,56 +929,56 @@ void RedrawMenuCursor(u8 oldPos, u8 newPos)
{
u8 width, height;
- width = GetMenuCursorDimensionByFont(gUnknown_0203CD90.fontId, 0);
- height = GetMenuCursorDimensionByFont(gUnknown_0203CD90.fontId, 1);
- FillWindowPixelRect(gUnknown_0203CD90.windowId, 0x11, gUnknown_0203CD90.left, gUnknown_0203CD90.optionHeight * oldPos + gUnknown_0203CD90.top, width, height);
- AddTextPrinterParameterized(gUnknown_0203CD90.windowId, gUnknown_0203CD90.fontId, gText_SelectorArrow3, gUnknown_0203CD90.left, gUnknown_0203CD90.optionHeight * newPos + gUnknown_0203CD90.top, 0, 0);
+ width = GetMenuCursorDimensionByFont(sMenu.fontId, 0);
+ height = GetMenuCursorDimensionByFont(sMenu.fontId, 1);
+ FillWindowPixelRect(sMenu.windowId, 0x11, sMenu.left, sMenu.optionHeight * oldPos + sMenu.top, width, height);
+ AddTextPrinterParameterized(sMenu.windowId, sMenu.fontId, gText_SelectorArrow3, sMenu.left, sMenu.optionHeight * newPos + sMenu.top, 0, 0);
}
u8 Menu_MoveCursor(s8 cursorDelta)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
- int newPos = gUnknown_0203CD90.cursorPos + cursorDelta;
+ u8 oldPos = sMenu.cursorPos;
+ int newPos = sMenu.cursorPos + cursorDelta;
- if (newPos < gUnknown_0203CD90.minCursorPos)
- gUnknown_0203CD90.cursorPos = gUnknown_0203CD90.maxCursorPos;
- else if (newPos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = gUnknown_0203CD90.minCursorPos;
+ if (newPos < sMenu.minCursorPos)
+ sMenu.cursorPos = sMenu.maxCursorPos;
+ else if (newPos > sMenu.maxCursorPos)
+ sMenu.cursorPos = sMenu.minCursorPos;
else
- gUnknown_0203CD90.cursorPos += cursorDelta;
+ sMenu.cursorPos += cursorDelta;
- RedrawMenuCursor(oldPos, gUnknown_0203CD90.cursorPos);
- return gUnknown_0203CD90.cursorPos;
+ RedrawMenuCursor(oldPos, sMenu.cursorPos);
+ return sMenu.cursorPos;
}
u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
- int newPos = gUnknown_0203CD90.cursorPos + cursorDelta;
+ u8 oldPos = sMenu.cursorPos;
+ int newPos = sMenu.cursorPos + cursorDelta;
- if (newPos < gUnknown_0203CD90.minCursorPos)
- gUnknown_0203CD90.cursorPos = gUnknown_0203CD90.minCursorPos;
- else if (newPos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = gUnknown_0203CD90.maxCursorPos;
+ if (newPos < sMenu.minCursorPos)
+ sMenu.cursorPos = sMenu.minCursorPos;
+ else if (newPos > sMenu.maxCursorPos)
+ sMenu.cursorPos = sMenu.maxCursorPos;
else
- gUnknown_0203CD90.cursorPos += cursorDelta;
+ sMenu.cursorPos += cursorDelta;
- RedrawMenuCursor(oldPos, gUnknown_0203CD90.cursorPos);
- return gUnknown_0203CD90.cursorPos;
+ RedrawMenuCursor(oldPos, sMenu.cursorPos);
+ return sMenu.cursorPos;
}
u8 Menu_GetCursorPos(void)
{
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
s8 Menu_ProcessInput(void)
{
if (gMain.newKeys & A_BUTTON)
{
- if (!gUnknown_0203CD90.APressMuted)
+ if (!sMenu.APressMuted)
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1002,13 +1002,13 @@ s8 Menu_ProcessInput(void)
s8 Menu_ProcessInputNoWrap(void)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (gMain.newKeys & A_BUTTON)
{
- if (!gUnknown_0203CD90.APressMuted)
+ if (!sMenu.APressMuted)
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1034,9 +1034,9 @@ s8 ProcessMenuInput_other(void)
{
if (gMain.newKeys & A_BUTTON)
{
- if (!gUnknown_0203CD90.APressMuted)
+ if (!sMenu.APressMuted)
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1060,13 +1060,13 @@ s8 ProcessMenuInput_other(void)
s8 Menu_ProcessInputNoWrapAround_other(void)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (gMain.newKeys & A_BUTTON)
{
- if (!gUnknown_0203CD90.APressMuted)
+ if (!sMenu.APressMuted)
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1174,11 +1174,11 @@ void sub_8198AF8(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top
{
struct TextPrinterTemplate printer;
- gUnknown_0203CD9F = AddWindow(window);
- SetWindowBorderStyle(gUnknown_0203CD9F, TRUE, baseTileNum, paletteNum);
+ sYesNoWindowId = AddWindow(window);
+ SetWindowBorderStyle(sYesNoWindowId, TRUE, baseTileNum, paletteNum);
printer.currentChar = gText_YesNo;
- printer.windowId = gUnknown_0203CD9F;
+ printer.windowId = sYesNoWindowId;
printer.fontId = fontId;
printer.x = GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH) + left;
printer.y = top;
@@ -1193,7 +1193,7 @@ void sub_8198AF8(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top
AddTextPrinter(&printer, 0xFF, NULL);
- sub_81983AC(gUnknown_0203CD9F, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos);
+ sub_81983AC(sYesNoWindowId, fontId, left, top, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 2, initialCursorPos);
}
void sub_8198C34(const struct WindowTemplate *window, u8 fontId, u16 baseTileNum, u8 paletteNum)
@@ -1211,8 +1211,8 @@ s8 Menu_ProcessInputNoWrapClearOnChoose(void)
void sub_8198C78(void)
{
- sub_8198070(gUnknown_0203CD9F, TRUE);
- RemoveWindow(gUnknown_0203CD9F);
+ sub_8198070(sYesNoWindowId, TRUE);
+ RemoveWindow(sYesNoWindowId);
}
void sub_8198C94(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7, const struct MenuAction *strs)
@@ -1274,26 +1274,26 @@ u8 sub_8198F58(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 cursorHeight,
{
s32 pos;
- gUnknown_0203CD90.left = left;
- gUnknown_0203CD90.top = top;
- gUnknown_0203CD90.minCursorPos = 0;
- gUnknown_0203CD90.maxCursorPos = numChoices - 1;
- gUnknown_0203CD90.windowId = windowId;
- gUnknown_0203CD90.fontId = fontId;
- gUnknown_0203CD90.optionWidth = a4;
- gUnknown_0203CD90.optionHeight = cursorHeight;
- gUnknown_0203CD90.horizontalCount = a6;
- gUnknown_0203CD90.verticalCount = a7;
+ sMenu.left = left;
+ sMenu.top = top;
+ sMenu.minCursorPos = 0;
+ sMenu.maxCursorPos = numChoices - 1;
+ sMenu.windowId = windowId;
+ sMenu.fontId = fontId;
+ sMenu.optionWidth = a4;
+ sMenu.optionHeight = cursorHeight;
+ sMenu.horizontalCount = a6;
+ sMenu.verticalCount = a7;
pos = a9;
- if (pos < 0 || pos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = 0;
+ if (pos < 0 || pos > sMenu.maxCursorPos)
+ sMenu.cursorPos = 0;
else
- gUnknown_0203CD90.cursorPos = pos;
+ sMenu.cursorPos = pos;
sub_8199134(0, 0);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
u8 sub_8198FD4(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8 a7)
@@ -1305,20 +1305,20 @@ u8 sub_8198FD4(u8 windowId, u8 fontId, u8 left, u8 top, u8 a4, u8 a5, u8 a6, u8
void sub_8199060(u8 oldCursorPos, u8 newCursorPos)
{
- u8 cursorWidth = GetMenuCursorDimensionByFont(gUnknown_0203CD90.fontId, 0);
- u8 cursorHeight = GetMenuCursorDimensionByFont(gUnknown_0203CD90.fontId, 1);
- u8 xPos = (oldCursorPos % gUnknown_0203CD90.horizontalCount) * gUnknown_0203CD90.optionWidth + gUnknown_0203CD90.left;
- u8 yPos = (oldCursorPos / gUnknown_0203CD90.horizontalCount) * gUnknown_0203CD90.optionHeight + gUnknown_0203CD90.top;
- FillWindowPixelRect(gUnknown_0203CD90.windowId,
+ u8 cursorWidth = GetMenuCursorDimensionByFont(sMenu.fontId, 0);
+ u8 cursorHeight = GetMenuCursorDimensionByFont(sMenu.fontId, 1);
+ u8 xPos = (oldCursorPos % sMenu.horizontalCount) * sMenu.optionWidth + sMenu.left;
+ u8 yPos = (oldCursorPos / sMenu.horizontalCount) * sMenu.optionHeight + sMenu.top;
+ FillWindowPixelRect(sMenu.windowId,
0x11,
xPos,
yPos,
cursorWidth,
cursorHeight);
- xPos = (newCursorPos % gUnknown_0203CD90.horizontalCount) * gUnknown_0203CD90.optionWidth + gUnknown_0203CD90.left;
- yPos = (newCursorPos / gUnknown_0203CD90.horizontalCount) * gUnknown_0203CD90.optionHeight + gUnknown_0203CD90.top;
- AddTextPrinterParameterized(gUnknown_0203CD90.windowId,
- gUnknown_0203CD90.fontId,
+ xPos = (newCursorPos % sMenu.horizontalCount) * sMenu.optionWidth + sMenu.left;
+ yPos = (newCursorPos / sMenu.horizontalCount) * sMenu.optionHeight + sMenu.top;
+ AddTextPrinterParameterized(sMenu.windowId,
+ sMenu.fontId,
gText_SelectorArrow3,
xPos,
yPos,
@@ -1328,83 +1328,83 @@ void sub_8199060(u8 oldCursorPos, u8 newCursorPos)
u8 sub_8199134(s8 deltaX, s8 deltaY)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (deltaX != 0)
{
- if ((gUnknown_0203CD90.cursorPos % gUnknown_0203CD90.horizontalCount) + deltaX < 0)
+ if ((sMenu.cursorPos % sMenu.horizontalCount) + deltaX < 0)
{
- gUnknown_0203CD90.cursorPos += gUnknown_0203CD90.horizontalCount - 1;
+ sMenu.cursorPos += sMenu.horizontalCount - 1;
}
- else if ((gUnknown_0203CD90.cursorPos % gUnknown_0203CD90.horizontalCount) + deltaX >= gUnknown_0203CD90.horizontalCount)
+ else if ((sMenu.cursorPos % sMenu.horizontalCount) + deltaX >= sMenu.horizontalCount)
{
- gUnknown_0203CD90.cursorPos = (gUnknown_0203CD90.cursorPos / gUnknown_0203CD90.horizontalCount) * gUnknown_0203CD90.horizontalCount;
+ sMenu.cursorPos = (sMenu.cursorPos / sMenu.horizontalCount) * sMenu.horizontalCount;
}
else
{
- gUnknown_0203CD90.cursorPos += deltaX;
+ sMenu.cursorPos += deltaX;
}
}
if (deltaY != 0)
{
- if ((gUnknown_0203CD90.cursorPos / gUnknown_0203CD90.horizontalCount) + deltaY < 0)
+ if ((sMenu.cursorPos / sMenu.horizontalCount) + deltaY < 0)
{
- gUnknown_0203CD90.cursorPos += gUnknown_0203CD90.horizontalCount * (gUnknown_0203CD90.verticalCount - 1);
+ sMenu.cursorPos += sMenu.horizontalCount * (sMenu.verticalCount - 1);
}
- else if ((gUnknown_0203CD90.cursorPos / gUnknown_0203CD90.horizontalCount) + deltaY >= gUnknown_0203CD90.verticalCount)
+ else if ((sMenu.cursorPos / sMenu.horizontalCount) + deltaY >= sMenu.verticalCount)
{
- gUnknown_0203CD90.cursorPos -= gUnknown_0203CD90.horizontalCount * (gUnknown_0203CD90.verticalCount - 1);
+ sMenu.cursorPos -= sMenu.horizontalCount * (sMenu.verticalCount - 1);
}
else
{
- gUnknown_0203CD90.cursorPos += (gUnknown_0203CD90.horizontalCount * deltaY);
+ sMenu.cursorPos += (sMenu.horizontalCount * deltaY);
}
}
- if (gUnknown_0203CD90.cursorPos > gUnknown_0203CD90.maxCursorPos)
+ if (sMenu.cursorPos > sMenu.maxCursorPos)
{
- gUnknown_0203CD90.cursorPos = oldPos;
- return gUnknown_0203CD90.cursorPos;
+ sMenu.cursorPos = oldPos;
+ return sMenu.cursorPos;
}
else
{
- sub_8199060(oldPos, gUnknown_0203CD90.cursorPos);
- return gUnknown_0203CD90.cursorPos;
+ sub_8199060(oldPos, sMenu.cursorPos);
+ return sMenu.cursorPos;
}
}
u8 sub_81991F8(s8 deltaX, s8 deltaY)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (deltaX != 0)
{
- if (((gUnknown_0203CD90.cursorPos % gUnknown_0203CD90.horizontalCount) + deltaX >= 0) &&
- ((gUnknown_0203CD90.cursorPos % gUnknown_0203CD90.horizontalCount) + deltaX < gUnknown_0203CD90.horizontalCount))
+ if (((sMenu.cursorPos % sMenu.horizontalCount) + deltaX >= 0) &&
+ ((sMenu.cursorPos % sMenu.horizontalCount) + deltaX < sMenu.horizontalCount))
{
- gUnknown_0203CD90.cursorPos += deltaX;
+ sMenu.cursorPos += deltaX;
}
}
if (deltaY != 0)
{
- if (((gUnknown_0203CD90.cursorPos / gUnknown_0203CD90.horizontalCount) + deltaY >= 0) &&
- ((gUnknown_0203CD90.cursorPos / gUnknown_0203CD90.horizontalCount) + deltaY < gUnknown_0203CD90.verticalCount))
+ if (((sMenu.cursorPos / sMenu.horizontalCount) + deltaY >= 0) &&
+ ((sMenu.cursorPos / sMenu.horizontalCount) + deltaY < sMenu.verticalCount))
{
- gUnknown_0203CD90.cursorPos += (gUnknown_0203CD90.horizontalCount * deltaY);
+ sMenu.cursorPos += (sMenu.horizontalCount * deltaY);
}
}
- if (gUnknown_0203CD90.cursorPos > gUnknown_0203CD90.maxCursorPos)
+ if (sMenu.cursorPos > sMenu.maxCursorPos)
{
- gUnknown_0203CD90.cursorPos = oldPos;
- return gUnknown_0203CD90.cursorPos;
+ sMenu.cursorPos = oldPos;
+ return sMenu.cursorPos;
}
else
{
- sub_8199060(oldPos, gUnknown_0203CD90.cursorPos);
- return gUnknown_0203CD90.cursorPos;
+ sub_8199060(oldPos, sMenu.cursorPos);
+ return sMenu.cursorPos;
}
}
@@ -1413,7 +1413,7 @@ s8 sub_8199284(void)
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1449,12 +1449,12 @@ s8 sub_8199284(void)
s8 Menu_ProcessInputGridLayout(void)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1493,7 +1493,7 @@ s8 sub_81993D8(void)
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1529,12 +1529,12 @@ s8 sub_81993D8(void)
s8 sub_8199484(void)
{
- u8 oldPos = gUnknown_0203CD90.cursorPos;
+ u8 oldPos = sMenu.cursorPos;
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
else if (gMain.newKeys & B_BUTTON)
{
@@ -1572,21 +1572,21 @@ u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, boo
{
s32 pos;
- gUnknown_0203CD90.left = 0;
- gUnknown_0203CD90.top = 1;
- gUnknown_0203CD90.minCursorPos = 0;
- gUnknown_0203CD90.maxCursorPos = itemCount - 1;
- gUnknown_0203CD90.windowId = windowId;
- gUnknown_0203CD90.fontId = 1;
- gUnknown_0203CD90.optionHeight = 16;
- gUnknown_0203CD90.APressMuted = APressMuted;
+ sMenu.left = 0;
+ sMenu.top = 1;
+ sMenu.minCursorPos = 0;
+ sMenu.maxCursorPos = itemCount - 1;
+ sMenu.windowId = windowId;
+ sMenu.fontId = 1;
+ sMenu.optionHeight = 16;
+ sMenu.APressMuted = APressMuted;
pos = initialCursorPos;
- if (pos < 0 || pos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = 0;
+ if (pos < 0 || pos > sMenu.maxCursorPos)
+ sMenu.cursorPos = 0;
else
- gUnknown_0203CD90.cursorPos = pos;
+ sMenu.cursorPos = pos;
return Menu_MoveCursor(0);
}
@@ -1639,11 +1639,11 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa
{
struct TextPrinterTemplate printer;
- gUnknown_0203CD9F = AddWindow(window);
- SetWindowBorderStyle(gUnknown_0203CD9F, TRUE, baseTileNum, paletteNum);
+ sYesNoWindowId = AddWindow(window);
+ SetWindowBorderStyle(sYesNoWindowId, TRUE, baseTileNum, paletteNum);
printer.currentChar = gText_YesNo;
- printer.windowId = gUnknown_0203CD9F;
+ printer.windowId = sYesNoWindowId;
printer.fontId = 1;
printer.x = 8;
printer.y = 1;
@@ -1657,7 +1657,7 @@ void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 pa
printer.lineSpacing = 0;
AddTextPrinter(&printer, 0xFF, NULL);
- InitMenuInUpperLeftCornerPlaySoundWhenAPressed(gUnknown_0203CD9F, 2, initialCursorPos);
+ InitMenuInUpperLeftCornerPlaySoundWhenAPressed(sYesNoWindowId, 2, initialCursorPos);
}
void sub_81997AC(u8 windowId, u8 a4, u8 a6, u8 a7, const struct MenuAction *strs)
@@ -1709,26 +1709,26 @@ u8 sub_8199944(u8 windowId, u8 optionWidth, u8 horizontalCount, u8 verticalCount
{
s32 pos;
- gUnknown_0203CD90.left = 0;
- gUnknown_0203CD90.top = 1;
- gUnknown_0203CD90.minCursorPos = 0;
- gUnknown_0203CD90.maxCursorPos = (horizontalCount * verticalCount) - 1;
- gUnknown_0203CD90.windowId = windowId;
- gUnknown_0203CD90.fontId = 1;
- gUnknown_0203CD90.optionWidth = optionWidth;
- gUnknown_0203CD90.optionHeight = 16;
- gUnknown_0203CD90.horizontalCount = horizontalCount;
- gUnknown_0203CD90.verticalCount = verticalCount;
+ sMenu.left = 0;
+ sMenu.top = 1;
+ sMenu.minCursorPos = 0;
+ sMenu.maxCursorPos = (horizontalCount * verticalCount) - 1;
+ sMenu.windowId = windowId;
+ sMenu.fontId = 1;
+ sMenu.optionWidth = optionWidth;
+ sMenu.optionHeight = 16;
+ sMenu.horizontalCount = horizontalCount;
+ sMenu.verticalCount = verticalCount;
pos = initialCursorPos;
- if (pos < 0 || pos > gUnknown_0203CD90.maxCursorPos)
- gUnknown_0203CD90.cursorPos = 0;
+ if (pos < 0 || pos > sMenu.maxCursorPos)
+ sMenu.cursorPos = 0;
else
- gUnknown_0203CD90.cursorPos = pos;
+ sMenu.cursorPos = pos;
sub_8199134(0, 0);
- return gUnknown_0203CD90.cursorPos;
+ return sMenu.cursorPos;
}
void clear_scheduled_bg_copies_to_vram(void)
diff --git a/src/menu_helpers.c b/src/menu_helpers.c
index 0adc6228e..e6547b300 100644
--- a/src/menu_helpers.c
+++ b/src/menu_helpers.c
@@ -152,7 +152,7 @@ static void Task_ContinueTaskAfterMessagePrints(u8 taskId)
gUnknown_0300117C(taskId);
}
-void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data)
+void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data)
{
gUnknown_0203A138 = *data;
gTasks[taskId].func = Task_CallYesOrNoCallback;
diff --git a/src/new_game.c b/src/new_game.c
index 8ecd48bc7..1b3fa2b00 100644
--- a/src/new_game.c
+++ b/src/new_game.c
@@ -46,7 +46,7 @@ extern void NewGameInitPCItems(void);
extern void ClearDecorationInventories(void);
extern void ResetFanClub(void);
extern void copy_strings_to_sav1(void);
-extern void sub_8195E10(void);
+extern void InitMatchCallCounters(void);
extern void sub_801AFD8(void);
extern void sub_800E5AC(void);
extern void sub_81D54BC(void);
@@ -209,7 +209,7 @@ void NewGameInitData(void)
SetLilycoveLady();
ResetAllApprenticeData();
ClearRankingHallRecords();
- sub_8195E10();
+ InitMatchCallCounters();
sub_801AFD8();
sub_800E5AC();
sub_81D54BC();
diff --git a/src/overworld.c b/src/overworld.c
index ef424cff8..9df69e360 100644
--- a/src/overworld.c
+++ b/src/overworld.c
@@ -127,7 +127,7 @@ extern void ExecuteTruckSequence(void);
extern void sub_80A0A38(void);
extern void WriteFlashScanlineEffectBuffer(u8);
extern void sub_81AA2F8(void);
-extern void sub_8195E10(void);
+extern void InitMatchCallCounters(void);
extern void sub_80EDB44(void);
extern void sub_81D64C0(void);
extern void InitFieldMessageBox(void);
@@ -1777,7 +1777,7 @@ void CB2_ContinueSavedGame(void)
PlayTimeCounter_Start();
ScriptContext1_Init();
ScriptContext2_Disable();
- sub_8195E10();
+ InitMatchCallCounters();
if (UseContinueGameWarp() == TRUE)
{
ClearContinueGameWarpStatus();
diff --git a/src/party_menu.c b/src/party_menu.c
index 00432e6db..241df1c91 100755
--- a/src/party_menu.c
+++ b/src/party_menu.c
@@ -2799,7 +2799,7 @@ static void sub_81B1CD0(struct Pokemon *mon, u16 item, u8 c)
{
GetMonNickname(mon, gStringVar1);
CopyItemName(item, gStringVar2);
- StringExpandPlaceholders(gStringVar4, gText_RecievedItemFromPkmn);
+ StringExpandPlaceholders(gStringVar4, gText_ReceivedItemFromPkmn);
sub_81B1B5C(gStringVar4, c);
schedule_bg_copy_tilemap_to_vram(2);
}
@@ -7257,10 +7257,10 @@ static void sub_81B9424(u8 taskId)
static void sub_81B9470(void)
{
- gUnknown_02039F24 = GetCursorSelectionMonId();
- if (gUnknown_02039F24 >= PARTY_SIZE)
- gUnknown_02039F24 = 0xFF;
- gSpecialVar_0x8004 = gUnknown_02039F24;
+ gContestMonPartyIndex = GetCursorSelectionMonId();
+ if (gContestMonPartyIndex >= PARTY_SIZE)
+ gContestMonPartyIndex = 0xFF;
+ gSpecialVar_0x8004 = gContestMonPartyIndex;
gFieldCallback2 = hm_add_c3_without_phase_2;
SetMainCallback2(CB2_ReturnToField);
}
diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c
index a268b5382..eeea3c210 100755
--- a/src/pokedex_area_screen.c
+++ b/src/pokedex_area_screen.c
@@ -96,7 +96,7 @@ static const u16 sLandmarkData[][2] = {
{MAPSEC_ALTERING_CAVE_2, FLAG_LANDMARK_ALTERING_CAVE},
{MAPSEC_MIRAGE_TOWER, FLAG_LANDMARK_MIRAGE_TOWER},
{MAPSEC_DESERT_UNDERPASS, FLAG_LANDMARK_DESERT_UNDERPASS},
- {MAPSEC_ARTISAN_CAVE, FLAG_0x8DF},
+ {MAPSEC_ARTISAN_CAVE, FLAG_LANDMARK_ARTISAN_CAVE},
{MAPSEC_NONE}
};
diff --git a/src/pokenav_match_call.c b/src/pokenav_match_call.c
new file mode 100644
index 000000000..53f9f0548
--- /dev/null
+++ b/src/pokenav_match_call.c
@@ -0,0 +1,1275 @@
+
+// Includes
+#include "global.h"
+#include "battle_setup.h"
+#include "event_data.h"
+#include "string_util.h"
+#include "battle.h"
+#include "gym_leader_rematch.h"
+
+extern void sub_8197080(u8 *dest);
+extern const u8 gTrainerClassNames[][13];
+
+// Static type declarations
+
+typedef struct MatchCallTextDataStruct {
+ const u8 *text;
+ u16 flag;
+ u16 flag2;
+} match_call_text_data_t;
+
+struct MatchCallStructCommon {
+ u8 type;
+ u8 v1;
+ u16 flag;
+};
+
+struct MatchCallStruct0 {
+ u8 type;
+ u8 v1;
+ u16 flag;
+ const u8 *desc;
+ const u8 *name;
+ const match_call_text_data_t *textData;
+};
+
+struct MatchCallStruct1 {
+ u8 type;
+ u8 v1;
+ u16 flag;
+ u16 rematchTableIdx;
+ const u8 *desc;
+ const u8 *name;
+ const match_call_text_data_t *textData;
+};
+
+struct MatchCallSubstruct2 {
+ u16 flag;
+ u8 v2;
+};
+
+struct MatchCallStruct2 {
+ u8 type;
+ u8 v1;
+ u16 flag;
+ u16 rematchTableIdx;
+ const u8 *desc;
+ const match_call_text_data_t *textData;
+ const struct MatchCallSubstruct2 *v10;
+};
+
+struct MatchCallStruct3 {
+ u8 type;
+ u8 v1;
+ u16 flag;
+ const u8 *desc;
+ const u8 *name;
+};
+
+struct MatchCallStruct4 {
+ u8 type;
+ u8 gender;
+ u16 flag;
+ const u8 *desc;
+ const u8 *name;
+ const match_call_text_data_t *textData;
+};
+
+struct MatchCallStruct5 {
+ u8 type;
+ u8 v1;
+ u16 flag;
+ u16 v4;
+ const u8 *desc;
+ const u8 *name;
+ const match_call_text_data_t *textData;
+};
+
+#define MATCHCALLDEF(name, type_, ...) \
+static const struct MatchCallStruct##type_ name = { \
+ .type = type_, \
+ __VA_ARGS__ \
+};
+
+typedef union {
+ const struct MatchCallStructCommon *common;
+ const struct MatchCallStruct0 *type0;
+ const struct MatchCallStruct1 *type1;
+ const struct MatchCallStruct2 *type2;
+ const struct MatchCallStruct3 *type3;
+ const struct MatchCallStruct4 *type4;
+ const struct MatchCallStruct5 *type5;
+} match_call_t;
+
+struct UnkStruct_08625388 {
+ u16 idx;
+ u16 v2;
+ u16 v4;
+ const u8 *v8[4];
+};
+
+// Static RAM declarations
+
+// Static ROM declarations
+
+static bool32 MatchCallGetFlag_Type0(match_call_t);
+static bool32 MatchCallGetFlag_Type1(match_call_t);
+static bool32 MatchCallGetFlag_Type2(match_call_t);
+static bool32 MatchCallGetFlag_Type3(match_call_t);
+static bool32 MatchCallGetFlag_Type4(match_call_t);
+
+static u8 sub_81D1714(match_call_t);
+static u8 sub_81D1718(match_call_t);
+static u8 sub_81D171C(match_call_t);
+static u8 sub_81D1750(match_call_t);
+static u8 sub_81D1754(match_call_t);
+
+static bool32 MatchCall_IsRematchable_Type0(match_call_t);
+static bool32 MatchCall_IsRematchable_Type1(match_call_t);
+static bool32 MatchCall_IsRematchable_Type2(match_call_t);
+static bool32 MatchCall_IsRematchable_Type3(match_call_t);
+static bool32 MatchCall_IsRematchable_Type4(match_call_t);
+
+static bool32 sub_81D1840(match_call_t);
+static bool32 sub_81D1844(match_call_t);
+static bool32 sub_81D1848(match_call_t);
+static bool32 sub_81D184C(match_call_t);
+static bool32 sub_81D1850(match_call_t);
+
+static u32 MatchCall_GetRematchTableIdx_Type0(match_call_t);
+static u32 MatchCall_GetRematchTableIdx_Type1(match_call_t);
+static u32 MatchCall_GetRematchTableIdx_Type2(match_call_t);
+static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t);
+static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t);
+
+static void MatchCall_GetMessage_Type0(match_call_t, u8 *);
+static void MatchCall_GetMessage_Type1(match_call_t, u8 *);
+static void MatchCall_GetMessage_Type2(match_call_t, u8 *);
+static void MatchCall_GetMessage_Type3(match_call_t, u8 *);
+static void MatchCall_GetMessage_Type4(match_call_t, u8 *);
+
+static void MatchCall_GetNameAndDesc_Type0(match_call_t, const u8 **, const u8 **);
+static void MatchCall_GetNameAndDesc_Type1(match_call_t, const u8 **, const u8 **);
+static void MatchCall_GetNameAndDesc_Type2(match_call_t, const u8 **, const u8 **);
+static void MatchCall_GetNameAndDesc_Type3(match_call_t, const u8 **, const u8 **);
+static void MatchCall_GetNameAndDesc_Type4(match_call_t, const u8 **, const u8 **);
+
+static void sub_81D1920(const match_call_text_data_t *, u8 *);
+static void sub_81D199C(const match_call_text_data_t *, u16, u8 *);
+static void MatchCall_GetNameAndDescByRematchIdx(u32, const u8 **, const u8 **);
+
+extern const u8 gText_MrStone_Pokenav_2B60C0[];
+extern const u8 gText_MrStone_Pokenav_2B61E6[];
+extern const u8 gText_MrStone_Pokenav_2B6302[];
+extern const u8 gText_MrStone_Pokenav_2B63A0[];
+extern const u8 gText_MrStone_Pokenav_2B64A2[];
+extern const u8 gText_MrStone_Pokenav_2B6526[];
+extern const u8 gText_MrStone_Pokenav_2B65BB[];
+extern const u8 gText_MrStone_Pokenav_2B6664[];
+extern const u8 gText_MrStone_Pokenav_2B66B1[];
+extern const u8 gText_MrStone_Pokenav_2B6703[];
+extern const u8 gText_MrStone_Pokenav_2B67ED[];
+
+extern const u8 gMrStoneMatchCallDesc[];
+extern const u8 gMrStoneMatchCallName[];
+
+extern const u8 gText_Norman_Pokenav_2B5719[];
+extern const u8 gText_Norman_Pokenav_2B5795[];
+extern const u8 gText_Norman_Pokenav_2B584D[];
+extern const u8 gText_Norman_Pokenav_2B58E3[];
+extern const u8 gText_Norman_Pokenav_2B5979[];
+extern const u8 gText_Norman_Pokenav_2B5A07[];
+extern const u8 gText_Norman_Pokenav_2B5A69[];
+extern const u8 gText_Norman_Pokenav_2B5ACF[];
+extern const u8 gText_Norman_Pokenav_2B5B5E[];
+
+extern const u8 gNormanMatchCallDesc[];
+extern const u8 gNormanMatchCallName[];
+
+extern const u8 gProfBirchMatchCallDesc[];
+extern const u8 gProfBirchMatchCallName[];
+
+extern const u8 gText_Mom_Pokenav_2B227B[];
+extern const u8 gText_Mom_Pokenav_2B2310[];
+extern const u8 gText_Mom_Pokenav_2B23F3[];
+
+extern const u8 gMomMatchCallDesc[];
+extern const u8 gMomMatchCallName[];
+
+extern const u8 gText_Steven_Pokenav_2B5B95[];
+extern const u8 gText_Steven_Pokenav_2B5C53[];
+extern const u8 gText_Steven_Pokenav_2B5CC9[];
+extern const u8 gText_Steven_Pokenav_2B5DB4[];
+extern const u8 gText_Steven_Pokenav_2B5E26[];
+extern const u8 gText_Steven_Pokenav_2B5EA2[];
+extern const u8 gText_Steven_Pokenav_2B5ED9[];
+
+extern const u8 gStevenMatchCallDesc[];
+extern const u8 gStevenMatchCallName[];
+
+extern const u8 gText_May_Pokenav_2B3AB3[];
+extern const u8 gText_May_Pokenav_2B3B3F[];
+extern const u8 gText_May_Pokenav_2B3C13[];
+extern const u8 gText_May_Pokenav_2B3CF3[];
+extern const u8 gText_May_Pokenav_2B3D4B[];
+extern const u8 gText_May_Pokenav_2B3DD1[];
+extern const u8 gText_May_Pokenav_2B3E69[];
+extern const u8 gText_May_Pokenav_2B3ECD[];
+extern const u8 gText_May_Pokenav_2B3F2B[];
+extern const u8 gText_May_Pokenav_2B3FFB[];
+extern const u8 gText_May_Pokenav_2B402B[];
+extern const u8 gText_May_Pokenav_2B414B[];
+extern const u8 gText_May_Pokenav_2B4228[];
+extern const u8 gText_May_Pokenav_2B42E0[];
+extern const u8 gText_May_Pokenav_2B4350[];
+extern const u8 gMayBrendanMatchCallDesc[];
+extern const u8 gExpandedPlaceholder_May[];
+extern const u8 gText_Brendan_Pokenav_2B43EF[];
+extern const u8 gText_Brendan_Pokenav_2B4486[];
+extern const u8 gText_Brendan_Pokenav_2B4560[];
+extern const u8 gText_Brendan_Pokenav_2B463F[];
+extern const u8 gText_Brendan_Pokenav_2B46B7[];
+extern const u8 gText_Brendan_Pokenav_2B4761[];
+extern const u8 gText_Brendan_Pokenav_2B47F4[];
+extern const u8 gText_Brendan_Pokenav_2B4882[];
+extern const u8 gText_Brendan_Pokenav_2B4909[];
+extern const u8 gText_Brendan_Pokenav_2B49C4[];
+extern const u8 gText_Brendan_Pokenav_2B4A44[];
+extern const u8 gText_Brendan_Pokenav_2B4B28[];
+extern const u8 gText_Brendan_Pokenav_2B4C15[];
+extern const u8 gText_Brendan_Pokenav_2B4CD8[];
+extern const u8 gText_Brendan_Pokenav_2B4D46[];
+extern const u8 gExpandedPlaceholder_Brendan[];
+extern const u8 gText_Wally_Pokenav_2B4DE2[];
+extern const u8 gText_Wally_Pokenav_2B4E57[];
+extern const u8 gText_Wally_Pokenav_2B4EA5[];
+extern const u8 gText_Wally_Pokenav_2B4F41[];
+extern const u8 gText_Wally_Pokenav_2B4FF3[];
+extern const u8 gText_Wally_Pokenav_2B50B1[];
+extern const u8 gText_Wally_Pokenav_2B5100[];
+extern const u8 gWallyMatchCallDesc[];
+extern const u8 gText_Scott_Pokenav_2B5184[];
+extern const u8 gText_Scott_Pokenav_2B5275[];
+extern const u8 gText_Scott_Pokenav_2B5323[];
+extern const u8 gText_Scott_Pokenav_2B53DB[];
+extern const u8 gText_Scott_Pokenav_2B54A5[];
+extern const u8 gText_Scott_Pokenav_2B5541[];
+extern const u8 gText_Scott_Pokenav_2B56CA[];
+extern const u8 gScottMatchCallDesc[];
+extern const u8 gScottMatchCallName[];
+extern const u8 gText_Roxanne_Pokenav_2B2456[];
+extern const u8 gText_Roxanne_Pokenav_2B250E[];
+extern const u8 gText_Roxanne_Pokenav_2B25C1[];
+extern const u8 gText_Roxanne_Pokenav_2B2607[];
+extern const u8 gRoxanneMatchCallDesc[];
+extern const u8 gText_Brawly_Pokenav_2B2659[];
+extern const u8 gText_Brawly_Pokenav_2B275D[];
+extern const u8 gText_Brawly_Pokenav_2B286F[];
+extern const u8 gText_Brawly_Pokenav_2B28D1[];
+extern const u8 gBrawlyMatchCallDesc[];
+extern const u8 gText_Wattson_Pokenav_2B2912[];
+extern const u8 gText_Wattson_Pokenav_2B29CA[];
+extern const u8 gText_Wattson_Pokenav_2B2AB6[];
+extern const u8 gText_Wattson_Pokenav_2B2B01[];
+extern const u8 gWattsonMatchCallDesc[];
+extern const u8 gText_Flannery_Pokenav_2B2B4D[];
+extern const u8 gText_Flannery_Pokenav_2B2C0E[];
+extern const u8 gText_Flannery_Pokenav_2B2CF1[];
+extern const u8 gText_Flannery_Pokenav_2B2D54[];
+extern const u8 gFlanneryMatchCallDesc[];
+extern const u8 gText_Winona_Pokenav_2B2DA4[];
+extern const u8 gText_Winona_Pokenav_2B2E2B[];
+extern const u8 gText_Winona_Pokenav_2B2EC2[];
+extern const u8 gText_Winona_Pokenav_2B2F16[];
+extern const u8 gWinonaMatchCallDesc[];
+extern const u8 gText_TateLiza_Pokenav_2B2F97[];
+extern const u8 gText_TateLiza_Pokenav_2B306E[];
+extern const u8 gText_TateLiza_Pokenav_2B3158[];
+extern const u8 gText_TateLiza_Pokenav_2B31CD[];
+extern const u8 gTateLizaMatchCallDesc[];
+extern const u8 gText_Juan_Pokenav_2B3249[];
+extern const u8 gText_Juan_Pokenav_2B32EC[];
+extern const u8 gText_Juan_Pokenav_2B33AA[];
+extern const u8 gText_Juan_Pokenav_2B341E[];
+extern const u8 gJuanMatchCallDesc[];
+extern const u8 gText_Sidney_Pokenav_2B34CC[];
+extern const u8 gEliteFourMatchCallDesc[];
+extern const u8 gText_Phoebe_Pokenav_2B3561[];
+extern const u8 gText_Glacia_Pokenav_2B35E4[];
+extern const u8 gText_Drake_Pokenav_2B368B[];
+extern const u8 gText_Wallace_Pokenav_2B3790[];
+extern const u8 gChampionMatchCallDesc[];
+extern const u8 gMatchCallStevenStrategyText[];
+extern const u8 gMatchCall_StevenTrainersPokemonText[];
+extern const u8 gMatchCall_StevenSelfIntroductionText_Line1_BeforeMeteorFallsBattle[];
+extern const u8 gMatchCall_StevenSelfIntroductionText_Line2_BeforeMeteorFallsBattle[];
+extern const u8 gMatchCall_StevenSelfIntroductionText_Line1_AfterMeteorFallsBattle[];
+extern const u8 gMatchCall_StevenSelfIntroductionText_Line2_AfterMeteorFallsBattle[];
+extern const u8 gMatchCall_BrendanStrategyText[];
+extern const u8 gMatchCall_BrendanTrainersPokemonText[];
+extern const u8 gMatchCall_BrendanSelfIntroductionText_Line1[];
+extern const u8 gMatchCall_BrendanSelfIntroductionText_Line2[];
+extern const u8 gMatchCall_MayStrategyText[];
+extern const u8 gMatchCall_MayTrainersPokemonText[];
+extern const u8 gMatchCall_MaySelfIntroductionText_Line1[];
+extern const u8 gMatchCall_MaySelfIntroductionText_Line2[];
+// .rodata
+
+static const match_call_text_data_t sMrStoneTextScripts[] = {
+ { gText_MrStone_Pokenav_2B60C0, 0xFFFF, FLAG_ENABLE_MR_STONE_POKENAV },
+ { gText_MrStone_Pokenav_2B61E6, FLAG_ENABLE_MR_STONE_POKENAV, 0xFFFF },
+ { gText_MrStone_Pokenav_2B6302, FLAG_DELIVERED_STEVEN_LETTER, 0xFFFF },
+ { gText_MrStone_Pokenav_2B63A0, FLAG_RECEIVED_EXP_SHARE, 0xFFFF },
+ { gText_MrStone_Pokenav_2B64A2, FLAG_RECEIVED_HM04, 0xFFFF },
+ { gText_MrStone_Pokenav_2B6526, FLAG_DEFEATED_PETALBURG_GYM, 0xFFFF },
+ { gText_MrStone_Pokenav_2B65BB, FLAG_RECEIVED_CASTFORM, 0xFFFF },
+ { gText_MrStone_Pokenav_2B6664, FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xFFFF },
+ { gText_MrStone_Pokenav_2B66B1, FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, 0xFFFF },
+ { gText_MrStone_Pokenav_2B6703, FLAG_DEFEATED_SOOTOPOLIS_GYM, 0xFFFF },
+ { gText_MrStone_Pokenav_2B67ED, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sMrStoneMatchCallHeader, 0, 10, 0xffff, gMrStoneMatchCallDesc, gMrStoneMatchCallName, sMrStoneTextScripts);
+
+static const match_call_text_data_t sNormanTextScripts[] = {
+ { gText_Norman_Pokenav_2B5719, FLAG_ENABLE_NORMAN_MATCH_CALL, 0xFFFF },
+ { gText_Norman_Pokenav_2B5795, FLAG_DEFEATED_DEWFORD_GYM, 0xFFFF },
+ { gText_Norman_Pokenav_2B584D, FLAG_DEFEATED_LAVARIDGE_GYM, 0xFFFF },
+ { gText_Norman_Pokenav_2B58E3, FLAG_DEFEATED_PETALBURG_GYM, 0xFFFF },
+ { gText_Norman_Pokenav_2B5979, FLAG_RECEIVED_RED_OR_BLUE_ORB, 0xFFFF },
+ { gText_Norman_Pokenav_2B5A07, 0xFFFE, 0xFFFF },
+ { gText_Norman_Pokenav_2B5A69, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { gText_Norman_Pokenav_2B5ACF, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { gText_Norman_Pokenav_2B5B5E, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sNormanMatchCallHeader, 5, 7, FLAG_ENABLE_NORMAN_MATCH_CALL, 0x45, gNormanMatchCallDesc, gNormanMatchCallName, sNormanTextScripts);
+
+MATCHCALLDEF(sProfBirchMatchCallHeader, 3, 0, FLAG_ENABLE_PROF_BIRCH_MATCH_CALL, gProfBirchMatchCallDesc, gProfBirchMatchCallName)
+
+static const match_call_text_data_t sMomTextScripts[] = {
+ { gText_Mom_Pokenav_2B227B, 0xffff, 0xffff },
+ { gText_Mom_Pokenav_2B2310, FLAG_DEFEATED_PETALBURG_GYM, 0xffff },
+ { gText_Mom_Pokenav_2B23F3, FLAG_SYS_GAME_CLEAR, 0xffff },
+ { NULL, 0xffff, 0xffff }
+};
+
+MATCHCALLDEF(sMomMatchCallHeader, 0, 0, FLAG_ENABLE_MOM_MATCH_CALL, gMomMatchCallDesc, gMomMatchCallName, sMomTextScripts);
+
+static const match_call_text_data_t sStevenTextScripts[] = {
+ { gText_Steven_Pokenav_2B5B95, 0xffff, 0xffff },
+ { gText_Steven_Pokenav_2B5C53, FLAG_RUSTURF_TUNNEL_OPENED, 0xffff },
+ { gText_Steven_Pokenav_2B5CC9, FLAG_RECEIVED_RED_OR_BLUE_ORB, 0xffff },
+ { gText_Steven_Pokenav_2B5DB4, FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, 0xffff },
+ { gText_Steven_Pokenav_2B5E26, FLAG_DEFEATED_MOSSDEEP_GYM, 0xffff },
+ { gText_Steven_Pokenav_2B5EA2, FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, 0xffff },
+ { gText_Steven_Pokenav_2B5ED9, FLAG_SYS_GAME_CLEAR, 0xffff },
+ { NULL, 0xffff, 0xffff },
+};
+
+MATCHCALLDEF(sStevenMatchCallHeader, 0, 0xd5, FLAG_REGISTERED_STEVEN_POKENAV, gStevenMatchCallDesc, gStevenMatchCallName, sStevenTextScripts);
+
+static const match_call_text_data_t sMayTextScripts[] = {
+ { gText_May_Pokenav_2B3AB3, 0xFFFF, 0xFFFF },
+ { gText_May_Pokenav_2B3B3F, FLAG_DEFEATED_DEWFORD_GYM, 0xFFFF },
+ { gText_May_Pokenav_2B3C13, FLAG_DELIVERED_DEVON_GOODS, 0xFFFF },
+ { gText_May_Pokenav_2B3CF3, FLAG_HIDE_MAUVILLE_CITY_WALLY, 0xFFFF },
+ { gText_May_Pokenav_2B3D4B, FLAG_RECEIVED_HM04, 0xFFFF },
+ { gText_May_Pokenav_2B3DD1, FLAG_DEFEATED_LAVARIDGE_GYM, 0xFFFF },
+ { gText_May_Pokenav_2B3E69, FLAG_DEFEATED_PETALBURG_GYM, 0xFFFF },
+ { gText_May_Pokenav_2B3ECD, FLAG_RECEIVED_CASTFORM, 0xFFFF },
+ { gText_May_Pokenav_2B3F2B, FLAG_RECEIVED_RED_OR_BLUE_ORB, 0xFFFF },
+ { gText_May_Pokenav_2B3FFB, FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xFFFF },
+ { gText_May_Pokenav_2B402B, FLAG_MET_TEAM_AQUA_HARBOR, 0xFFFF },
+ { gText_May_Pokenav_2B414B, FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, 0xFFFF },
+ { gText_May_Pokenav_2B4228, FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, 0xFFFF },
+ { gText_May_Pokenav_2B42E0, FLAG_DEFEATED_SOOTOPOLIS_GYM, 0xFFFF },
+ { gText_May_Pokenav_2B4350, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sMayMatchCallHeader, 4, MALE, FLAG_ENABLE_RIVAL_MATCH_CALL, gMayBrendanMatchCallDesc, gExpandedPlaceholder_May, sMayTextScripts);
+
+static const match_call_text_data_t sBrendanTextScripts[] = {
+ { gText_Brendan_Pokenav_2B43EF, 0xFFFF, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4486, FLAG_DEFEATED_DEWFORD_GYM, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4560, FLAG_DELIVERED_DEVON_GOODS, 0xFFFF },
+ { gText_Brendan_Pokenav_2B463F, FLAG_HIDE_MAUVILLE_CITY_WALLY, 0xFFFF },
+ { gText_Brendan_Pokenav_2B46B7, FLAG_RECEIVED_HM04, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4761, FLAG_DEFEATED_LAVARIDGE_GYM, 0xFFFF },
+ { gText_Brendan_Pokenav_2B47F4, FLAG_DEFEATED_PETALBURG_GYM, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4882, FLAG_RECEIVED_CASTFORM, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4909, FLAG_RECEIVED_RED_OR_BLUE_ORB, 0xFFFF },
+ { gText_Brendan_Pokenav_2B49C4, FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4A44, FLAG_MET_TEAM_AQUA_HARBOR, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4B28, FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4C15, FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4CD8, FLAG_DEFEATED_SOOTOPOLIS_GYM, 0xFFFF },
+ { gText_Brendan_Pokenav_2B4D46, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sBrendanMatchCallHeader, 4, FEMALE, FLAG_ENABLE_RIVAL_MATCH_CALL, gMayBrendanMatchCallDesc, gExpandedPlaceholder_Brendan, sBrendanTextScripts);
+
+static const match_call_text_data_t sWallyTextScripts[] = {
+ { gText_Wally_Pokenav_2B4DE2, 0xFFFF, 0xFFFF },
+ { gText_Wally_Pokenav_2B4E57, FLAG_RUSTURF_TUNNEL_OPENED, 0xFFFF },
+ { gText_Wally_Pokenav_2B4EA5, FLAG_DEFEATED_LAVARIDGE_GYM, 0xFFFF },
+ { gText_Wally_Pokenav_2B4F41, FLAG_RECEIVED_CASTFORM, 0xFFFF },
+ { gText_Wally_Pokenav_2B4FF3, FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xFFFF },
+ { gText_Wally_Pokenav_2B50B1, FLAG_KYOGRE_ESCAPED_SEAFLOOR_CAVERN, 0xFFFF },
+ { gText_Wally_Pokenav_2B5100, FLAG_DEFEATED_WALLY_VICTORY_ROAD, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+const struct MatchCallSubstruct2 sWallyAdditionalData[] = {
+ { FLAG_HIDE_MAUVILLE_CITY_WALLY, 0x05 },
+ { FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT, 0xD5 },
+ { FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY, 0x46 },
+ { 0xFFFF, 0xD5 }
+};
+
+MATCHCALLDEF(sWallyMatchCallHeader, 2, 0, FLAG_ENABLE_WALLY_MATCH_CALL, REMATCH_WALLY_3, gWallyMatchCallDesc, sWallyTextScripts, sWallyAdditionalData);
+
+static const match_call_text_data_t sScottTextScripts[] = {
+ { gText_Scott_Pokenav_2B5184, 0xFFFF, 0xFFFF },
+ { gText_Scott_Pokenav_2B5275, FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY, 0xFFFF },
+ { gText_Scott_Pokenav_2B5323, FLAG_RECEIVED_CASTFORM, 0xFFFF },
+ { gText_Scott_Pokenav_2B53DB, FLAG_RECEIVED_RED_OR_BLUE_ORB, 0xFFFF },
+ { gText_Scott_Pokenav_2B54A5, FLAG_TEAM_AQUA_ESCAPED_IN_SUBMARINE, 0xFFFF },
+ { gText_Scott_Pokenav_2B5541, FLAG_DEFEATED_SOOTOPOLIS_GYM, 0xFFFF },
+ { gText_Scott_Pokenav_2B56CA, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+
+MATCHCALLDEF(sScottMatchCallHeader, 0, 0xD5, FLAG_ENABLE_SCOTT_MATCH_CALL, gScottMatchCallDesc, gScottMatchCallName, sScottTextScripts);
+
+static const match_call_text_data_t sRoxanneTextScripts[] = {
+ { gText_Roxanne_Pokenav_2B2456, 0xFFFE, 0xFFFF },
+ { gText_Roxanne_Pokenav_2B250E, 0xFFFF, 0xFFFF },
+ { gText_Roxanne_Pokenav_2B25C1, 0xFFFF, 0xFFFF },
+ { gText_Roxanne_Pokenav_2B2607, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sRoxanneMatchCallHeader, 5, 10, FLAG_ENABLE_ROXANNE_MATCH_CALL, 0x41, gRoxanneMatchCallDesc, NULL, sRoxanneTextScripts);
+
+static const match_call_text_data_t sBrawlyTextScripts[] = {
+ { gText_Brawly_Pokenav_2B2659, 0xFFFE, 0xFFFF },
+ { gText_Brawly_Pokenav_2B275D, 0xFFFF, 0xFFFF },
+ { gText_Brawly_Pokenav_2B286F, 0xFFFF, 0xFFFF },
+ { gText_Brawly_Pokenav_2B28D1, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sBrawlyMatchCallHeader, 5, 2, FLAG_ENABLE_BRAWLY_MATCH_CALL, 0x42, gBrawlyMatchCallDesc, NULL, sBrawlyTextScripts);
+
+static const match_call_text_data_t sWattsonTextScripts[] = {
+ { gText_Wattson_Pokenav_2B2912, 0xFFFE, 0xFFFF },
+ { gText_Wattson_Pokenav_2B29CA, 0xFFFF, 0xFFFF },
+ { gText_Wattson_Pokenav_2B2AB6, 0xFFFF, 0xFFFF },
+ { gText_Wattson_Pokenav_2B2B01, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sWattsonMatchCallHeader, 5, 9, FLAG_ENABLE_WATTSON_MATCH_CALL, 0x43, gWattsonMatchCallDesc, NULL, sWattsonTextScripts);
+
+static const match_call_text_data_t sFlanneryTextScripts[] = {
+ { gText_Flannery_Pokenav_2B2B4D, 0xFFFE, 0xFFFF },
+ { gText_Flannery_Pokenav_2B2C0E, 0xFFFF, 0xFFFF },
+ { gText_Flannery_Pokenav_2B2CF1, 0xFFFF, 0xFFFF },
+ { gText_Flannery_Pokenav_2B2D54, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sFlanneryMatchCallHeader, 5, 3, FLAG_ENABLE_FLANNERY_MATCH_CALL, 0x44, gFlanneryMatchCallDesc, NULL, sFlanneryTextScripts);
+
+static const match_call_text_data_t sWinonaTextScripts[] = {
+ { gText_Winona_Pokenav_2B2DA4, 0xFFFE, 0xFFFF },
+ { gText_Winona_Pokenav_2B2E2B, 0xFFFF, 0xFFFF },
+ { gText_Winona_Pokenav_2B2EC2, 0xFFFF, 0xFFFF },
+ { gText_Winona_Pokenav_2B2F16, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sWinonaMatchCallHeader, 5, 11, FLAG_ENABLE_WINONA_MATCH_CALL, 0x46, gWinonaMatchCallDesc, NULL, sWinonaTextScripts);
+
+static const match_call_text_data_t sTateLizaTextScripts[] = {
+ { gText_TateLiza_Pokenav_2B2F97, 0xFFFE, 0xFFFF },
+ { gText_TateLiza_Pokenav_2B306E, 0xFFFF, 0xFFFF },
+ { gText_TateLiza_Pokenav_2B3158, 0xFFFF, 0xFFFF },
+ { gText_TateLiza_Pokenav_2B31CD, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sTateLizaMatchCallHeader, 5, 13, FLAG_ENABLE_TATE_AND_LIZA_MATCH_CALL, 0x47, gTateLizaMatchCallDesc, NULL, sTateLizaTextScripts);
+
+static const match_call_text_data_t sJuanTextScripts[] = {
+ { gText_Juan_Pokenav_2B3249, 0xFFFE, 0xFFFF },
+ { gText_Juan_Pokenav_2B32EC, 0xFFFF, 0xFFFF },
+ { gText_Juan_Pokenav_2B33AA, 0xFFFF, 0xFFFF },
+ { gText_Juan_Pokenav_2B341E, FLAG_SYS_GAME_CLEAR, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sJuanMatchCallHeader, 5, 14, FLAG_ENABLE_JUAN_MATCH_CALL, 0x48, gJuanMatchCallDesc, NULL, sJuanTextScripts);
+
+static const match_call_text_data_t sSidneyTextScripts[] = {
+ { gText_Sidney_Pokenav_2B34CC, 0xFFFF, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sSidneyMatchCallHeader, 5, 15, FLAG_REMATCH_JUAN, 0x49, gEliteFourMatchCallDesc, NULL, sSidneyTextScripts);
+
+static const match_call_text_data_t sPhoebeTextScripts[] = {
+ { gText_Phoebe_Pokenav_2B3561, 0xFFFF, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sPhoebeMatchCallHeader, 5, 15, FLAG_REMATCH_SIDNEY, 0x4A, gEliteFourMatchCallDesc, NULL, sPhoebeTextScripts);
+
+static const match_call_text_data_t sGlaciaTextScripts[] = {
+ { gText_Glacia_Pokenav_2B35E4, 0xFFFF, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sGlaciaMatchCallHeader, 5, 15, FLAG_REMATCH_PHOEBE, 0x4B, gEliteFourMatchCallDesc, NULL, sGlaciaTextScripts);
+
+static const match_call_text_data_t sDrakeTextScripts[] = {
+ { gText_Drake_Pokenav_2B368B, 0xFFFF, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sDrakeMatchCallHeader, 5, 15, FLAG_REMATCH_GLACIA, 0x4C, gEliteFourMatchCallDesc, NULL, sDrakeTextScripts);
+
+static const match_call_text_data_t sWallaceTextScripts[] = {
+ { gText_Wallace_Pokenav_2B3790, 0xFFFF, 0xFFFF },
+ { NULL, 0xFFFF, 0xFFFF }
+};
+
+MATCHCALLDEF(sWallaceMatchCallHeader, 5, 15, FLAG_REMATCH_DRAKE, 0x4D, gChampionMatchCallDesc, NULL, sWallaceTextScripts);
+
+static const match_call_t sMatchCallHeaders[] = {
+ {.type0 = &sMrStoneMatchCallHeader},
+ {.type3 = &sProfBirchMatchCallHeader},
+ {.type4 = &sBrendanMatchCallHeader},
+ {.type4 = &sMayMatchCallHeader},
+ {.type2 = &sWallyMatchCallHeader},
+ {.type5 = &sNormanMatchCallHeader},
+ {.type0 = &sMomMatchCallHeader},
+ {.type0 = &sStevenMatchCallHeader},
+ {.type0 = &sScottMatchCallHeader},
+ {.type5 = &sRoxanneMatchCallHeader},
+ {.type5 = &sBrawlyMatchCallHeader},
+ {.type5 = &sWattsonMatchCallHeader},
+ {.type5 = &sFlanneryMatchCallHeader},
+ {.type5 = &sWinonaMatchCallHeader},
+ {.type5 = &sTateLizaMatchCallHeader},
+ {.type5 = &sJuanMatchCallHeader},
+ {.type5 = &sSidneyMatchCallHeader},
+ {.type5 = &sPhoebeMatchCallHeader},
+ {.type5 = &sGlaciaMatchCallHeader},
+ {.type5 = &sDrakeMatchCallHeader},
+ {.type5 = &sWallaceMatchCallHeader}
+};
+
+static bool32 (*const sMatchCallGetFlagFuncs[])(match_call_t) = {
+ MatchCallGetFlag_Type0,
+ MatchCallGetFlag_Type1,
+ MatchCallGetFlag_Type2,
+ MatchCallGetFlag_Type3,
+ MatchCallGetFlag_Type4
+};
+
+static u8 (*const gUnknown_08625310[])(match_call_t) = {
+ sub_81D1714,
+ sub_81D1718,
+ sub_81D171C,
+ sub_81D1750,
+ sub_81D1754
+};
+
+static bool32 (*const sMatchCall_IsRematchableFunctions[])(match_call_t) = {
+ MatchCall_IsRematchable_Type0,
+ MatchCall_IsRematchable_Type1,
+ MatchCall_IsRematchable_Type2,
+ MatchCall_IsRematchable_Type3,
+ MatchCall_IsRematchable_Type4
+};
+
+static bool32 (*const gUnknown_08625338[])(match_call_t) = {
+ sub_81D1840,
+ sub_81D1844,
+ sub_81D1848,
+ sub_81D184C,
+ sub_81D1850
+};
+
+static u32 (*const sMatchCall_GetRematchTableIdxFunctions[])(match_call_t) = {
+ MatchCall_GetRematchTableIdx_Type0,
+ MatchCall_GetRematchTableIdx_Type1,
+ MatchCall_GetRematchTableIdx_Type2,
+ MatchCall_GetRematchTableIdx_Type3,
+ MatchCall_GetRematchTableIdx_Type4
+};
+
+static void (*const sMatchCall_GetMessageFunctions[])(match_call_t, u8 *) = {
+ MatchCall_GetMessage_Type0,
+ MatchCall_GetMessage_Type1,
+ MatchCall_GetMessage_Type2,
+ MatchCall_GetMessage_Type3,
+ MatchCall_GetMessage_Type4
+};
+
+static void (*const sMatchCall_GetNameAndDescFunctions[])(match_call_t, const u8 **, const u8 **) = {
+ MatchCall_GetNameAndDesc_Type0,
+ MatchCall_GetNameAndDesc_Type1,
+ MatchCall_GetNameAndDesc_Type2,
+ MatchCall_GetNameAndDesc_Type3,
+ MatchCall_GetNameAndDesc_Type4
+};
+
+static const struct UnkStruct_08625388 sMatchCallCheckPageOverrides[] = {
+ { 7, 0x4B, 0xffff, { gMatchCallStevenStrategyText, gMatchCall_StevenTrainersPokemonText, gMatchCall_StevenSelfIntroductionText_Line1_BeforeMeteorFallsBattle, gMatchCall_StevenSelfIntroductionText_Line2_BeforeMeteorFallsBattle } }, // STEVEN
+ { 7, 0x4B, FLAG_DEFEATED_MOSSDEEP_GYM, { gMatchCallStevenStrategyText, gMatchCall_StevenTrainersPokemonText, gMatchCall_StevenSelfIntroductionText_Line1_AfterMeteorFallsBattle, gMatchCall_StevenSelfIntroductionText_Line2_AfterMeteorFallsBattle } }, // STEVEN
+ { 2, 0x3c, 0xffff, { gMatchCall_BrendanStrategyText, gMatchCall_BrendanTrainersPokemonText, gMatchCall_BrendanSelfIntroductionText_Line1, gMatchCall_BrendanSelfIntroductionText_Line2 } }, // Brendan
+ { 3, 0x3f, 0xffff, { gMatchCall_MayStrategyText, gMatchCall_MayTrainersPokemonText, gMatchCall_MaySelfIntroductionText_Line1, gMatchCall_MaySelfIntroductionText_Line2 } } // May
+};
+
+// .text
+
+static u32 MatchCallGetFunctionIndex(match_call_t matchCall)
+{
+ switch (matchCall.common->type)
+ {
+ case 0:
+ default:
+ return 0;
+ case 1:
+ case 5:
+ return 1;
+ case 2:
+ return 2;
+ case 4:
+ return 3;
+ case 3:
+ return 4;
+ }
+}
+
+u32 GetTrainerIdxByRematchIdx(u32 rematchIdx)
+{
+ return gRematchTable[rematchIdx].trainerIds[0];
+}
+
+s32 GetRematchIdxByTrainerIdx(s32 trainerIdx)
+{
+ s32 rematchIdx;
+
+ for (rematchIdx = 0; rematchIdx < REMATCH_TABLE_ENTRIES; rematchIdx++)
+ {
+ if (gRematchTable[rematchIdx].trainerIds[0] == trainerIdx)
+ return rematchIdx;
+ }
+ return -1;
+}
+
+bool32 MatchCallFlagGetByIndex(u32 idx)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return FALSE;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ return sMatchCallGetFlagFuncs[i](matchCall);
+}
+
+static bool32 MatchCallGetFlag_Type0(match_call_t matchCall)
+{
+ if (matchCall.type0->flag == 0xffff)
+ return TRUE;
+ return FlagGet(matchCall.type0->flag);
+}
+
+static bool32 MatchCallGetFlag_Type1(match_call_t matchCall)
+{
+ if (matchCall.type1->flag == 0xffff)
+ return TRUE;
+ return FlagGet(matchCall.type1->flag);
+}
+
+static bool32 MatchCallGetFlag_Type2(match_call_t matchCall)
+{
+ if (matchCall.type2->flag == 0xffff)
+ return TRUE;
+ return FlagGet(matchCall.type2->flag);
+}
+
+static bool32 MatchCallGetFlag_Type3(match_call_t matchCall)
+{
+ if (matchCall.type4->gender != gSaveBlock2Ptr->playerGender)
+ return FALSE;
+ if (matchCall.type4->flag == 0xffff)
+ return TRUE;
+ return FlagGet(matchCall.type4->flag);
+}
+
+static bool32 MatchCallGetFlag_Type4(match_call_t matchCall)
+{
+ return FlagGet(matchCall.type3->flag);
+}
+
+u8 sub_81D16DC(u32 idx)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return 0;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ return gUnknown_08625310[i](matchCall);
+}
+
+static u8 sub_81D1714(match_call_t matchCall)
+{
+ return matchCall.type0->v1;
+}
+
+static u8 sub_81D1718(match_call_t matchCall)
+{
+ return matchCall.type1->v1;
+}
+
+static u8 sub_81D171C(match_call_t matchCall)
+{
+ s32 i;
+
+ for (i = 0; matchCall.type2->v10[i].flag != 0xffff; i++)
+ {
+ if (!FlagGet(matchCall.type2->v10[i].flag))
+ break;
+ }
+ return matchCall.type2->v10[i].v2;
+}
+
+static u8 sub_81D1750(match_call_t matchCall)
+{
+ return 0xd5;
+}
+
+static u8 sub_81D1754(match_call_t matchCall)
+{
+ return 0xd5;
+}
+
+bool32 MatchCall_IsRematchable(u32 idx)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return 0;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ return sMatchCall_IsRematchableFunctions[i](matchCall);
+}
+
+static bool32 MatchCall_IsRematchable_Type0(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+static bool32 MatchCall_IsRematchable_Type1(match_call_t matchCall)
+{
+ if (matchCall.type1->rematchTableIdx >= REMATCH_ELITE_FOUR_ENTRIES)
+ return FALSE;
+ return gSaveBlock1Ptr->trainerRematches[matchCall.type1->rematchTableIdx] ? TRUE : FALSE;
+}
+
+static bool32 MatchCall_IsRematchable_Type2(match_call_t matchCall)
+{
+ return gSaveBlock1Ptr->trainerRematches[matchCall.type2->rematchTableIdx] ? TRUE : FALSE;
+}
+
+static bool32 MatchCall_IsRematchable_Type3(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+static bool32 MatchCall_IsRematchable_Type4(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+bool32 sub_81D17E8(u32 idx)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return FALSE;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ if (gUnknown_08625338[i](matchCall))
+ return TRUE;
+ for (i = 0; i < 4; i++)
+ {
+ if (sMatchCallCheckPageOverrides[i].idx == idx)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static bool32 sub_81D1840(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+static bool32 sub_81D1844(match_call_t matchCall)
+{
+ return TRUE;
+}
+
+static bool32 sub_81D1848(match_call_t matchCall)
+{
+ return TRUE;
+}
+
+static bool32 sub_81D184C(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+static bool32 sub_81D1850(match_call_t matchCall)
+{
+ return FALSE;
+}
+
+u32 MatchCall_GetRematchTableIdx(u32 idx)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return REMATCH_TABLE_ENTRIES;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ return sMatchCall_GetRematchTableIdxFunctions[i](matchCall);
+}
+
+static u32 MatchCall_GetRematchTableIdx_Type0(match_call_t matchCall)
+{
+ return REMATCH_TABLE_ENTRIES;
+}
+
+static u32 MatchCall_GetRematchTableIdx_Type1(match_call_t matchCall)
+{
+ return matchCall.type1->rematchTableIdx;
+}
+
+static u32 MatchCall_GetRematchTableIdx_Type2(match_call_t matchCall)
+{
+ return matchCall.type2->rematchTableIdx;
+}
+
+static u32 MatchCall_GetRematchTableIdx_Type3(match_call_t matchCall)
+{
+ return REMATCH_TABLE_ENTRIES;
+}
+
+static u32 MatchCall_GetRematchTableIdx_Type4(match_call_t matchCall)
+{
+ return REMATCH_TABLE_ENTRIES;
+}
+
+void MatchCall_GetMessage(u32 idx, u8 *dest)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ sMatchCall_GetMessageFunctions[i](matchCall, dest);
+}
+
+static void MatchCall_GetMessage_Type0(match_call_t matchCall, u8 *dest)
+{
+ sub_81D1920(matchCall.type0->textData, dest);
+}
+
+static void MatchCall_GetMessage_Type1(match_call_t matchCall, u8 *dest)
+{
+ if (matchCall.common->type != 5)
+ sub_81D1920(matchCall.type5->textData, dest);
+ else
+ sub_81D199C(matchCall.type1->textData, matchCall.type1->rematchTableIdx, dest);
+}
+
+static void MatchCall_GetMessage_Type2(match_call_t matchCall, u8 *dest)
+{
+ sub_81D1920(matchCall.type2->textData, dest);
+}
+
+static void MatchCall_GetMessage_Type3(match_call_t matchCall, u8 *dest)
+{
+ sub_81D1920(matchCall.type4->textData, dest);
+}
+
+static void MatchCall_GetMessage_Type4(match_call_t matchCall, u8 *dest)
+{
+ sub_8197080(dest);
+}
+
+void sub_81D1920(const match_call_text_data_t *sub0, u8 *dest)
+{
+ u32 i;
+ for (i = 0; sub0[i].text != NULL; i++)
+ ;
+ if (i)
+ i--;
+ while (i)
+ {
+ if (sub0[i].flag != 0xffff && FlagGet(sub0[i].flag) == TRUE)
+ break;
+ i--;
+ }
+ if (sub0[i].flag2 != 0xffff)
+ FlagSet(sub0[i].flag2);
+ StringExpandPlaceholders(dest, sub0[i].text);
+}
+
+#ifdef NONMATCHING
+// There's some weird upmerge going on that I cannot replicate at this time.
+static void sub_81D199C(const match_call_text_data_t *sub0, u16 idx, u8 *dest)
+{
+ u32 i;
+ for (i = 0; sub0[i].text != NULL; i++)
+ {
+ if (sub0[i].flag == 0xfffe)
+ break;
+ if (sub0[i].flag == 0xffff && !FlagGet(sub0[i].flag))
+ break;
+ }
+ if (sub0[i].flag != 0xfffe)
+ {
+ if (i)
+ i--;
+ if (sub0[i].flag2 != 0xffff)
+ FlagSet(sub0[i].flag2);
+ StringExpandPlaceholders(dest, sub0[i].text);
+ }
+ else
+ {
+ if (!FlagGet(FLAG_SYS_GAME_CLEAR))
+ ;
+ else if (gSaveBlock1Ptr->trainerRematches[idx])
+ i += 2;
+ else if (CountBattledRematchTeams(idx) >= 2)
+ i += 3;
+ else
+ i++;
+ StringExpandPlaceholders(dest, sub0[i].text);
+ }
+}
+#else
+static NAKED void sub_81D199C(const match_call_text_data_t *sub0, u16 idx, u8 *dest)
+{
+ asm_unified("\tpush {r4-r7,lr}\n"
+ "\tmov r7, r10\n"
+ "\tmov r6, r9\n"
+ "\tmov r5, r8\n"
+ "\tpush {r5-r7}\n"
+ "\tadds r6, r0, 0\n"
+ "\tmov r10, r2\n"
+ "\tlsls r1, 16\n"
+ "\tlsrs r7, r1, 16\n"
+ "\tmovs r5, 0\n"
+ "\tldr r0, [r6]\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _081D19E6\n"
+ "\tldrh r0, [r6, 0x4]\n"
+ "\tldr r1, =0x0000fffe\n"
+ "\tcmp r0, r1\n"
+ "\tbeq _081D1A24\n"
+ "\tldr r0, =0x0000ffff\n"
+ "\tmov r9, r0\n"
+ "\tmov r8, r1\n"
+ "\tadds r4, r6, 0\n"
+ "_081D19C6:\n"
+ "\tldrh r0, [r4, 0x4]\n"
+ "\tcmp r0, r9\n"
+ "\tbeq _081D19D6\n"
+ "\tbl FlagGet\n"
+ "\tlsls r0, 24\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _081D19E6\n"
+ "_081D19D6:\n"
+ "\tadds r4, 0x8\n"
+ "\tadds r5, 0x1\n"
+ "\tldr r0, [r4]\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _081D19E6\n"
+ "\tldrh r0, [r4, 0x4]\n"
+ "\tcmp r0, r8\n"
+ "\tbne _081D19C6\n"
+ "_081D19E6:\n"
+ "\tlsls r0, r5, 3\n"
+ "\tadds r0, r6\n"
+ "\tldrh r1, [r0, 0x4]\n"
+ "\tldr r0, =0x0000fffe\n"
+ "\tcmp r1, r0\n"
+ "\tbeq _081D1A24\n"
+ "\tcmp r5, 0\n"
+ "\tbeq _081D19F8\n"
+ "\tsubs r5, 0x1\n"
+ "_081D19F8:\n"
+ "\tlsls r0, r5, 3\n"
+ "\tadds r4, r0, r6\n"
+ "\tldrh r1, [r4, 0x6]\n"
+ "\tldr r0, =0x0000ffff\n"
+ "\tcmp r1, r0\n"
+ "\tbeq _081D1A0A\n"
+ "\tadds r0, r1, 0\n"
+ "\tbl FlagSet\n"
+ "_081D1A0A:\n"
+ "\tldr r1, [r4]\n"
+ "\tmov r0, r10\n"
+ "\tbl StringExpandPlaceholders\n"
+ "\tb _081D1A5C\n"
+ "\t.pool\n"
+ "_081D1A1C:\n"
+ "\tadds r5, 0x2\n"
+ "\tb _081D1A50\n"
+ "_081D1A20:\n"
+ "\tadds r5, 0x3\n"
+ "\tb _081D1A50\n"
+ "_081D1A24:\n"
+ "\tldr r0, =0x00000864\n"
+ "\tbl FlagGet\n"
+ "\tlsls r0, 24\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _081D1A50\n"
+ "\tldr r0, =gSaveBlock1Ptr\n"
+ "\tldr r0, [r0]\n"
+ "\tldr r1, =0x000009ca\n"
+ "\tadds r0, r1\n"
+ "\tadds r0, r7\n"
+ "\tldrb r0, [r0]\n"
+ "\tcmp r0, 0\n"
+ "\tbne _081D1A1C\n"
+ "\tadds r0, r7, 0\n"
+ "\tbl CountBattledRematchTeams\n"
+ "\tlsls r0, 16\n"
+ "\tlsrs r0, 16\n"
+ "\tcmp r0, 0x1\n"
+ "\tbhi _081D1A20\n"
+ "\tadds r5, 0x1\n"
+ "_081D1A50:\n"
+ "\tlsls r0, r5, 3\n"
+ "\tadds r0, r6\n"
+ "\tldr r1, [r0]\n"
+ "\tmov r0, r10\n"
+ "\tbl StringExpandPlaceholders\n"
+ "_081D1A5C:\n"
+ "\tpop {r3-r5}\n"
+ "\tmov r8, r3\n"
+ "\tmov r9, r4\n"
+ "\tmov r10, r5\n"
+ "\tpop {r4-r7}\n"
+ "\tpop {r0}\n"
+ "\tbx r0\n"
+ "\t.pool");
+}
+#endif
+
+void sub_81D1A78(u32 idx, const u8 **desc, const u8 **name)
+{
+ match_call_t matchCall;
+ u32 i;
+
+ if (idx > 20)
+ return;
+ matchCall = sMatchCallHeaders[idx];
+ i = MatchCallGetFunctionIndex(matchCall);
+ sMatchCall_GetNameAndDescFunctions[i](matchCall, desc, name);
+}
+
+static void MatchCall_GetNameAndDesc_Type0(match_call_t matchCall, const u8 **desc, const u8 **name)
+{
+ *desc = matchCall.type0->desc;
+ *name = matchCall.type0->name;
+}
+
+static void MatchCall_GetNameAndDesc_Type1(match_call_t matchCall, const u8 **desc, const u8 **name)
+{
+ match_call_t _matchCall = matchCall;
+ if (_matchCall.type1->name == NULL)
+ MatchCall_GetNameAndDescByRematchIdx(_matchCall.type1->rematchTableIdx, desc, name);
+ else
+ *name = _matchCall.type1->name;
+ *desc = _matchCall.type1->desc;
+}
+
+static void MatchCall_GetNameAndDesc_Type2(match_call_t matchCall, const u8 **desc, const u8 **name)
+{
+ MatchCall_GetNameAndDescByRematchIdx(matchCall.type2->rematchTableIdx, desc, name);
+ *desc = matchCall.type2->desc;
+}
+
+static void MatchCall_GetNameAndDesc_Type3(match_call_t matchCall, const u8 **desc, const u8 **name)
+{
+ *desc = matchCall.type4->desc;
+ *name = matchCall.type4->name;
+}
+
+static void MatchCall_GetNameAndDesc_Type4(match_call_t matchCall, const u8 **desc, const u8 **name)
+{
+ *desc = matchCall.type3->desc;
+ *name = matchCall.type3->name;
+}
+
+static void MatchCall_GetNameAndDescByRematchIdx(u32 idx, const u8 **desc, const u8 **name)
+{
+ const struct Trainer *trainer = gTrainers + GetTrainerIdxByRematchIdx(idx);
+ *desc = gTrainerClassNames[trainer->trainerClass];
+ *name = trainer->trainerName;
+}
+
+#ifdef NONMATCHING
+const u8 *sub_81D1B40(u32 idx, u32 offset)
+{
+ u32 i;
+
+ for (i = 0; i < 4; i++)
+ {
+ if (sMatchCallCheckPageOverrides[i].idx == idx)
+ {
+ for (; i + 1 < 4 && sMatchCallCheckPageOverrides[i + 1].idx == idx; i++)
+ {
+ if (!FlagGet(sMatchCallCheckPageOverrides[i + 1].v4))
+ break;
+ }
+ return sMatchCallCheckPageOverrides[i].v8[offset];
+ }
+ }
+ return NULL;
+}
+#else
+NAKED const u8 *sub_81D1B40(u32 idx, u32 offset)
+{
+ asm_unified("\tpush {r4-r7,lr}\n"
+ "\tmov r7, r9\n"
+ "\tmov r6, r8\n"
+ "\tpush {r6,r7}\n"
+ "\tadds r6, r0, 0\n"
+ "\tmovs r5, 0\n"
+ "\tldr r2, =sMatchCallCheckPageOverrides\n"
+ "\tmovs r0, 0x8\n"
+ "\tadds r0, r2\n"
+ "\tmov r9, r0\n"
+ "_081D1B54:\n"
+ "\tlsls r0, r5, 1\n"
+ "\tadds r0, r5\n"
+ "\tlsls r0, 3\n"
+ "\tadds r0, r2\n"
+ "\tldrh r0, [r0]\n"
+ "\tcmp r0, r6\n"
+ "\tbne _081D1BBC\n"
+ "\tadds r4, r5, 0x1\n"
+ "\tlsls r1, 2\n"
+ "\tmov r8, r1\n"
+ "\tcmp r4, 0x3\n"
+ "\tbhi _081D1BA8\n"
+ "\tlsls r0, r4, 1\n"
+ "\tadds r0, r4\n"
+ "\tlsls r0, 3\n"
+ "\tadds r0, r2\n"
+ "\tldrh r0, [r0]\n"
+ "\tcmp r0, r6\n"
+ "\tbne _081D1BA8\n"
+ "\tldr r7, =sMatchCallCheckPageOverrides\n"
+ "_081D1B7C:\n"
+ "\tlsls r0, r4, 1\n"
+ "\tadds r0, r4\n"
+ "\tlsls r0, 3\n"
+ "\tadds r1, r7, 0x4\n"
+ "\tadds r0, r1\n"
+ "\tldrh r0, [r0]\n"
+ "\tbl FlagGet\n"
+ "\tlsls r0, 24\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _081D1BA8\n"
+ "\tadds r5, r4, 0\n"
+ "\tadds r4, r5, 0x1\n"
+ "\tcmp r4, 0x3\n"
+ "\tbhi _081D1BA8\n"
+ "\tlsls r0, r4, 1\n"
+ "\tadds r0, r4\n"
+ "\tlsls r0, 3\n"
+ "\tadds r0, r7\n"
+ "\tldrh r0, [r0]\n"
+ "\tcmp r0, r6\n"
+ "\tbeq _081D1B7C\n"
+ "_081D1BA8:\n"
+ "\tlsls r0, r5, 1\n"
+ "\tadds r0, r5\n"
+ "\tlsls r0, 3\n"
+ "\tadd r0, r8\n"
+ "\tadd r0, r9\n"
+ "\tldr r0, [r0]\n"
+ "\tb _081D1BC4\n"
+ "\t.pool\n"
+ "_081D1BBC:\n"
+ "\tadds r5, 0x1\n"
+ "\tcmp r5, 0x3\n"
+ "\tbls _081D1B54\n"
+ "\tmovs r0, 0\n"
+ "_081D1BC4:\n"
+ "\tpop {r3,r4}\n"
+ "\tmov r8, r3\n"
+ "\tmov r9, r4\n"
+ "\tpop {r4-r7}\n"
+ "\tpop {r1}\n"
+ "\tbx r1");
+}
+#endif
+
+s32 sub_81D1BD0(u32 idx)
+{
+ u32 i;
+
+ for (i = 0; i < 4; i++)
+ {
+ if (sMatchCallCheckPageOverrides[i].idx == idx)
+ return sMatchCallCheckPageOverrides[i].v2;
+ }
+ return -1;
+}
+
+bool32 sub_81D1BF8(u32 idx)
+{
+ s32 i;
+
+ for (i = 0; i < 21; i++)
+ {
+ u32 r0 = MatchCall_GetRematchTableIdx(i);
+ if (r0 != REMATCH_TABLE_ENTRIES && r0 == idx)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void SetMatchCallRegisteredFlag(void)
+{
+ s32 r0 = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
+ if (r0 >= 0)
+ FlagSet(FLAG_MATCH_CALL_REGISTERED + r0);
+}
diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c
index 1b17c372c..0926d4569 100644
--- a/src/reshow_battle_screen.c
+++ b/src/reshow_battle_screen.c
@@ -240,7 +240,7 @@ static void CreateBattlerSprite(u8 battler)
{
SetMultiuseSpriteTemplateToTrainerBack(gSaveBlock2Ptr->playerGender, GetBattlerPosition(B_POSITION_PLAYER_LEFT));
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 0x50,
- (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].coords) * 4 + 80,
+ (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80,
GetBattlerSpriteSubpriority(0));
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
@@ -250,7 +250,7 @@ static void CreateBattlerSprite(u8 battler)
{
SetMultiuseSpriteTemplateToTrainerBack(TRAINER_BACK_PIC_WALLY, GetBattlerPosition(0));
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 0x50,
- (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].coords) * 4 + 80,
+ (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size) * 4 + 80,
GetBattlerSpriteSubpriority(0));
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
diff --git a/src/roulette.c b/src/roulette.c
new file mode 100644
index 000000000..a6a020f39
--- /dev/null
+++ b/src/roulette.c
@@ -0,0 +1,4929 @@
+#include "global.h"
+#include "alloc.h"
+#include "bg.h"
+#include "coins.h"
+#include "decompress.h"
+#include "event_data.h"
+#include "field_screen_effect.h"
+#include "gpu_regs.h"
+#include "graphics.h"
+#include "m4a.h"
+#include "main.h"
+#include "menu.h"
+#include "menu_helpers.h"
+#include "overworld.h"
+#include "palette.h"
+#include "random.h"
+#include "roulette.h"
+#include "roulette_util.h"
+#include "rtc.h"
+#include "scanline_effect.h"
+#include "script.h"
+#include "sound.h"
+#include "sprite.h"
+#include "string_util.h"
+#include "task.h"
+#include "trig.h"
+#include "tv.h"
+#include "window.h"
+#include "constants/rgb.h"
+#include "constants/species.h"
+#include "constants/songs.h"
+
+struct StructgUnknown_083F8DF4
+{
+ u8 var00;
+ u8 var01;
+ u8 var02;
+ u8 var03;
+ u8 var04;
+ u8 filler_05[3];
+ u16 var08;
+ u16 var0A;
+ u16 var0C;
+ u8 filler_0E[2];
+ u16 var10;
+ u16 var12;
+ u16 var14;
+ u8 filler_16[2];
+ u16 var18;
+ u16 var1A;
+ float var1C;
+};
+
+struct StructgUnknown_085B6154
+{
+ u8 var00;
+ u8 var01_0:4;
+ u8 var01_4:4;
+ u8 var02;
+ u8 var03;
+ u8 var04;
+ u8 var05;
+ u8 var06;
+ u32 var08;
+ u32 var0C;
+ u16 var10;
+};
+
+struct StructgUnknown_083F8D90
+{
+ u8 var00;
+ u8 var01;
+ u8 var02;
+ u32 var04;
+};
+
+EWRAM_DATA struct Roulette
+{
+ u8 var00;
+ u8 var01;
+ u8 var02;
+ u8 var03_0:5;
+ u8 var03_5:1;
+ u8 var03_6:1;
+ u8 var03_7:1;
+ u8 var04_0:2;
+ u8 var04_2:5;
+ u8 var04_7:1;
+ u32 var08;
+ u8 var0C[6];
+ u8 var12[4];
+ u8 var16[3];
+ u8 var19;
+ u8 var1A_0:4;
+ u8 var1A_4:4;
+ u8 var1B[6];
+ u8 var21;
+ u8 var22;
+ u8 var23;
+ s16 var24;
+ s16 var26;
+ s16 var28;
+ s16 var2A;
+ struct OamMatrix var2C;
+ u16 var34;
+ struct Sprite *var38;
+ u8 var3C[MAX_SPRITES]; // Sprite IDs
+ u8 var7C;
+ u8 var7D;
+ u8 var7E;
+ u8 var7F;
+ s16 var80;
+ s16 var82;
+ u16 var84;
+ u16 var86;
+ float var88;
+ float var8C;
+ float var90;
+ float var94;
+ float var98;
+ float var9C;
+ float varA0;
+ u8 varA4;
+ u8 varA5;
+ u8 v51[2];
+ u16 varA8;
+ u16 varAA;
+ TaskFunc varAC;
+ u8 v46[4];
+ TaskFunc varB4;
+ struct UnkStruct0 varB8;
+ u16 tilemapBuffers[7][0x400];
+ u16 *unk_397C;
+} *gUnknown_0203AB88 = NULL;
+EWRAM_DATA u8 gUnknown_0203AB8C = 0;
+
+static void sub_8140814(u8);
+static void sub_81408A8(u8);
+static void sub_8140968(u8);
+static void sub_8140994(u8);
+static void sub_8140BD0(u8);
+static void sub_8141040(u8);
+static void sub_81410FC(u8);
+static void sub_8141344(u8);
+static void sub_814155C(u8);
+static void sub_81415D4(u8);
+static void sub_81416D4(u8);
+static void sub_8141778(u8);
+static void sub_814189C(u8);
+static void sub_8141A18(u8);
+static void sub_8141AC0(u8);
+static void sub_8141B58(u8);
+static void dp01t_12_3_battle_menu(u8);
+static void sub_8141DE4(u8);
+static void sub_8141E7C(u8);
+static void sub_8141F7C(u8 taskId, TaskFunc r1, u16 r2, u16 r3);
+static void sub_8141FF4(u8);
+static void sub_8142070(void);
+static void sub_8142918(u8);
+static void sub_814297C(u8);
+static u8 sub_81420D0(u8, u8);
+static bool8 sub_81421E8(u8, u8);
+static void sub_8142284(u8);
+static void sub_81424FC(u8);
+static u8 sub_8142758(u8);
+static void sub_8142814(void);
+static void sub_8142C0C(u8);
+static void sub_8142CD0(void);
+static void sub_8142E70(u8, u8);
+static void sub_8142F7C(void);
+static void sub_8143038(u8, u8);
+static void sub_8143150(u8);
+static void sub_81431E4(void);
+static void sub_8143280(struct Sprite *);
+static void sub_8143314(void);
+static void sub_8143514(u16);
+static void sub_81436D0(u8);
+static void sub_814372C(u8);
+static void sub_814390C(struct Sprite *);
+static void sub_814391C(void);
+static void sub_814399C(struct Sprite *);
+static void sub_81439C8(void);
+static void sub_8143A40(void);
+static void sub_81446AC(struct Sprite *);
+static void sub_81446DC(struct Sprite *);
+static void sub_81448B8(struct Sprite *);
+static void sub_8144A24(struct Sprite *);
+static void sub_8144E60(struct Sprite *);
+static void sub_8145294(struct Sprite *);
+
+extern const u8 gUnknown_082A5B89[];
+extern const u8 gUnknown_082A5C13[];
+extern const u8 gUnknown_082A5BD7[];
+extern const u8 gUnknown_082A5BCB[];
+extern const u8 gUnknown_082A5BE0[];
+extern const u8 gUnknown_082A5BEF[];
+extern const u8 gUnknown_082A5C21[];
+extern const u8 gUnknown_082A5C61[];
+extern const u8 gUnknown_082A5C04[];
+extern const u8 gUnknown_082A5B12[];
+extern const u8 gUnknown_082A5B6B[];
+extern const u8 gUnknown_082A5B4E[];
+
+static const u16 gUnknown_085B5BFC[] = INCBIN_U16("graphics/roulette/85B5BFC.gbapal");
+static const u32 gUnknown_085B5DFC[] = INCBIN_U32("graphics/roulette/85B5DFC.bin.lz");
+static const u32 gUnknown_085B5FA0[] = INCBIN_U32("graphics/roulette/wheel_map.bin.lz");
+static const struct BgTemplate gUnknown_085B6140[] =
+{
+ {
+ .bg = 0,
+ .charBaseIndex = 2,
+ .mapBaseIndex = 31,
+ .screenSize = 0,
+ .paletteMode = 0,
+ .priority = 0,
+ .baseTile = 0
+ },
+ {
+ .bg = 1,
+ .charBaseIndex = 0,
+ .mapBaseIndex = 4,
+ .screenSize = 1,
+ .paletteMode = 0,
+ .priority = 1,
+ .baseTile = 0
+ },
+ {
+ .bg = 2,
+ .charBaseIndex = 1,
+ .mapBaseIndex = 6,
+ .screenSize = 1,
+ .paletteMode = 1,
+ .priority = 2,
+ .baseTile = 0
+ }
+};
+static const struct WindowTemplate gUnknown_085B614C[] =
+{
+ {
+ .bg = 0,
+ .tilemapLeft = 3,
+ .tilemapTop = 15,
+ .width = 24,
+ .height = 4,
+ .paletteNum = 15,
+ .baseBlock = 0xC5
+ },
+ // BUG: Array not terminated properly
+ //DUMMY_WIN_TEMPLATE
+};
+static const struct StructgUnknown_085B6154 gUnknown_085B6154[] =
+{
+ {
+ .var00 = 0xFF,
+ .var01_0 = 0,
+ .var01_4 = 0,
+ .var02 = 0,
+ .var03 = 7,
+ .var04 = 7,
+ .var05 = 0,
+ .var06 = 0,
+ .var08 = 0x0,
+ .var0C = 0x0,
+ .var10 = 0x0,
+ },
+ {
+ .var00 = 12,
+ .var01_0 = 4,
+ .var01_4 = 1,
+ .var02 = 0,
+ .var03 = 17,
+ .var04 = 7,
+ .var05 = 0,
+ .var06 = 0,
+ .var08 = 0x2,
+ .var0C = 0x10842,
+ .var10 = 0xE000,
+ },
+ {
+ .var00 = 13,
+ .var01_0 = 4,
+ .var01_4 = 2,
+ .var02 = 0,
+ .var03 = 20,
+ .var04 = 7,
+ .var05 = 0,
+ .var06 = 0,
+ .var08 = 0x4,
+ .var0C = 0x21084,
+ .var10 = 0xE000,
+ },
+ {
+ .var00 = 14,
+ .var01_0 = 4,
+ .var01_4 = 3,
+ .var02 = 0,
+ .var03 = 23,
+ .var04 = 7,
+ .var05 = 0,
+ .var06 = 0,
+ .var08 = 0x8,
+ .var0C = 0x42108,
+ .var10 = 0xE000,
+ },
+ {
+ .var00 = 15,
+ .var01_0 = 4,
+ .var01_4 = 4,
+ .var02 = 0,
+ .var03 = 26,
+ .var04 = 7,
+ .var05 = 0,
+ .var06 = 0,
+ .var08 = 0x10,
+ .var0C = 0x84210,
+ .var10 = 0xE000,
+ },
+ {
+ .var00 = 16,
+ .var01_0 = 3,
+ .var01_4 = 0,
+ .var02 = 1,
+ .var03 = 14,
+ .var04 = 10,
+ .var05 = 0,
+ .var06 = 12,
+ .var08 = 0x20,
+ .var0C = 0x3E0,
+ .var10 = 0x249,
+ },
+ {
+ .var00 = 0,
+ .var01_0 = 12,
+ .var01_4 = 1,
+ .var02 = 1,
+ .var03 = 17,
+ .var04 = 10,
+ .var05 = 3,
+ .var06 = 3,
+ .var08 = 0x40,
+ .var0C = 0x40,
+ .var10 = 0x2001,
+ },
+ {
+ .var00 = 9,
+ .var01_0 = 12,
+ .var01_4 = 2,
+ .var02 = 1,
+ .var03 = 20,
+ .var04 = 10,
+ .var05 = 3,
+ .var06 = 3,
+ .var08 = 0x80,
+ .var0C = 0x80,
+ .var10 = 0x2200,
+ },
+ {
+ .var00 = 6,
+ .var01_0 = 12,
+ .var01_4 = 3,
+ .var02 = 1,
+ .var03 = 23,
+ .var04 = 10,
+ .var05 = 3,
+ .var06 = 3,
+ .var08 = 0x100,
+ .var0C = 0x100,
+ .var10 = 0x2040,
+ },
+ {
+ .var00 = 3,
+ .var01_0 = 12,
+ .var01_4 = 4,
+ .var02 = 1,
+ .var03 = 26,
+ .var04 = 10,
+ .var05 = 3,
+ .var06 = 3,
+ .var08 = 0x200,
+ .var0C = 0x200,
+ .var10 = 0x2008,
+ },
+ {
+ .var00 = 17,
+ .var01_0 = 3,
+ .var01_4 = 0,
+ .var02 = 2,
+ .var03 = 14,
+ .var04 = 13,
+ .var05 = 3,
+ .var06 = 15,
+ .var08 = 0x400,
+ .var0C = 0x7C00,
+ .var10 = 0x492,
+ },
+ {
+ .var00 = 4,
+ .var01_0 = 12,
+ .var01_4 = 1,
+ .var02 = 2,
+ .var03 = 17,
+ .var04 = 13,
+ .var05 = 6,
+ .var06 = 6,
+ .var08 = 0x800,
+ .var0C = 0x800,
+ .var10 = 0x2010,
+ },
+ {
+ .var00 = 1,
+ .var01_0 = 12,
+ .var01_4 = 2,
+ .var02 = 2,
+ .var03 = 20,
+ .var04 = 13,
+ .var05 = 6,
+ .var06 = 6,
+ .var08 = 0x1000,
+ .var0C = 0x1000,
+ .var10 = 0x2002,
+ },
+ {
+ .var00 = 10,
+ .var01_0 = 12,
+ .var01_4 = 3,
+ .var02 = 2,
+ .var03 = 23,
+ .var04 = 13,
+ .var05 = 6,
+ .var06 = 6,
+ .var08 = 0x2000,
+ .var0C = 0x2000,
+ .var10 = 0x2400,
+ },
+ {
+ .var00 = 7,
+ .var01_0 = 12,
+ .var01_4 = 4,
+ .var02 = 2,
+ .var03 = 26,
+ .var04 = 13,
+ .var05 = 6,
+ .var06 = 6,
+ .var08 = 0x4000,
+ .var0C = 0x4000,
+ .var10 = 0x2080,
+ },
+ {
+ .var00 = 18,
+ .var01_0 = 3,
+ .var01_4 = 0,
+ .var02 = 3,
+ .var03 = 14,
+ .var04 = 16,
+ .var05 = 6,
+ .var06 = 18,
+ .var08 = 0x8000,
+ .var0C = 0xF8000,
+ .var10 = 0x924,
+ },
+ {
+ .var00 = 8,
+ .var01_0 = 12,
+ .var01_4 = 1,
+ .var02 = 3,
+ .var03 = 17,
+ .var04 = 16,
+ .var05 = 9,
+ .var06 = 9,
+ .var08 = 0x10000,
+ .var0C = 0x10000,
+ .var10 = 0x2100,
+ },
+ {
+ .var00 = 5,
+ .var01_0 = 12,
+ .var01_4 = 2,
+ .var02 = 3,
+ .var03 = 20,
+ .var04 = 16,
+ .var05 = 9,
+ .var06 = 9,
+ .var08 = 0x20000,
+ .var0C = 0x20000,
+ .var10 = 0x2020,
+ },
+ {
+ .var00 = 2,
+ .var01_0 = 12,
+ .var01_4 = 3,
+ .var02 = 3,
+ .var03 = 23,
+ .var04 = 16,
+ .var05 = 9,
+ .var06 = 9,
+ .var08 = 0x40000,
+ .var0C = 0x40000,
+ .var10 = 0x2004,
+ },
+ {
+ .var00 = 11,
+ .var01_0 = 12,
+ .var01_4 = 4,
+ .var02 = 3,
+ .var03 = 26,
+ .var04 = 16,
+ .var05 = 9,
+ .var06 = 9,
+ .var08 = 0x80000,
+ .var0C = 0x80000,
+ .var10 = 0x2800,
+ },
+};
+
+static const struct StructgUnknown_083F8D90 gUnknown_085B62E4[] =
+{
+ {
+ .var00 = 0,
+ .var01 = 1,
+ .var02 = 6,
+ .var04 = 0x40,
+ },
+ {
+ .var00 = 1,
+ .var01 = 3,
+ .var02 = 12,
+ .var04 = 0x1000,
+ },
+ {
+ .var00 = 2,
+ .var01 = 5,
+ .var02 = 18,
+ .var04 = 0x40000,
+ },
+ {
+ .var00 = 3,
+ .var01 = 7,
+ .var02 = 9,
+ .var04 = 0x200,
+ },
+ {
+ .var00 = 4,
+ .var01 = 9,
+ .var02 = 11,
+ .var04 = 0x800,
+ },
+ {
+ .var00 = 5,
+ .var01 = 11,
+ .var02 = 17,
+ .var04 = 0x20000,
+ },
+ {
+ .var00 = 6,
+ .var01 = 13,
+ .var02 = 8,
+ .var04 = 0x100,
+ },
+ {
+ .var00 = 7,
+ .var01 = 15,
+ .var02 = 14,
+ .var04 = 0x4000,
+ },
+ {
+ .var00 = 8,
+ .var01 = 17,
+ .var02 = 16,
+ .var04 = 0x10000,
+ },
+ {
+ .var00 = 9,
+ .var01 = 19,
+ .var02 = 7,
+ .var04 = 0x80,
+ },
+ {
+ .var00 = 10,
+ .var01 = 21,
+ .var02 = 13,
+ .var04 = 0x2000,
+ },
+ {
+ .var00 = 11,
+ .var01 = 23,
+ .var02 = 19,
+ .var04 = 0x80000,
+ },
+};
+static const u8 gUnknown_085B6344[] = {1, 3, 1, 6};
+static const struct StructgUnknown_083F8DF4 gUnknown_085B6348[] =
+{
+ {
+ .var00 = 1,
+ .var01 = 60,
+ .var02 = 30,
+ .var03 = 1,
+ .var04 = 1,
+ .var08 = 45,
+ .var0A = 30,
+ .var0C = 1,
+ .var10 = 75,
+ .var12 = 27,
+ .var14 = 24,
+ .var18 = 10,
+ .var1A = 360,
+ .var1C = -0.5f
+ },
+ {
+ .var00 = 3,
+ .var01 = 30,
+ .var02 = 15,
+ .var03 = 1,
+ .var04 = 0,
+ .var08 = 75,
+ .var0A = 60,
+ .var0C = 2,
+ .var10 = 0,
+ .var12 = 54,
+ .var14 = 48,
+ .var18 = 10,
+ .var1A = 270,
+ .var1C = -1.0f
+ }
+};
+
+static const struct UnkStruct1 gUnknown_085B6388[] =
+{
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0005,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x000A,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0015,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0055,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x005A,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0065,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0075,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x007A,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0085,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x0095,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x009A,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x8000,
+ .var02 = 0x00A5,
+ .var04 = 1,
+ .var05 = 1,
+ .var06 = 0xFF,
+ .var07_0 = 8,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x77D6,
+ .var02 = 0x0028,
+ .var04 = 2,
+ .var05 = 10,
+ .var06 = 0xFF,
+ .var07_0 = 14,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+};
+
+static const struct UnkStruct1 gUnknown_085B63F0[] =
+{
+ {
+ .var00 = 0x53FF,
+ .var02 = 0x0101,
+ .var04 = 5,
+ .var05 = 30,
+ .var06 = 0xFF,
+ .var07_0 = 14,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x7FFB,
+ .var02 = 0x0106,
+ .var04 = 5,
+ .var05 = 30,
+ .var06 = 0xFF,
+ .var07_0 = 14,
+ .var07_5 = 2,
+ .var07_7 = 0
+ },
+ {
+ .var00 = 0x7F7F,
+ .var02 = 0x010B,
+ .var04 = 5,
+ .var05 = 30,
+ .var06 = 0xFF,
+ .var07_0 = 14,
+ .var07_5 = 2,
+ .var07_7 = 0
+ }
+};
+
+static const struct YesNoFuncTable gUnknown_085B6408 =
+{
+ sub_8142918,
+ sub_814297C
+};
+
+static const struct YesNoFuncTable gUnknown_085B6410 =
+{
+ sub_8140968,
+ sub_8140994
+};
+
+static void sub_8140238(void)
+{
+ RunTasks();
+ AnimateSprites();
+ BuildOamBuffer();
+ if (gUnknown_0203AB88->varB8.var00)
+ task_tutorial_controls_fadein(&gUnknown_0203AB88->varB8);
+}
+
+static void sub_8140264(void)
+{
+ LoadOam();
+ ProcessSpriteCopyRequests();
+ TransferPlttBuffer();
+ sub_8142814();
+ SetGpuReg(REG_OFFSET_BG1HOFS, 0x200 - gUnknown_0203AB88->var26);
+ if (gUnknown_0203AB88->var01)
+ SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0203AB88->var34);
+ if (gUnknown_0203AB88->var2A != 0)
+ {
+ DmaCopy16(3, &gUnknown_0203AB88->tilemapBuffers[2][0xE0], (void *)BG_SCREEN_ADDR(4) + 0x1C0, 0x340);
+ gUnknown_0203AB88->var2A = 0;
+ }
+ switch (gUnknown_0203AB88->var28)
+ {
+ case 1:
+ SetBgAttribute(0, BG_ATTR_CHARBASEINDEX, 0);
+ ShowBg(0);
+ DmaCopy16(3, &gUnknown_0203AB88->tilemapBuffers[0][0xE0], (void *)BG_SCREEN_ADDR(31) + 0x1C0, 0x340);
+ gUnknown_0203AB88->var28 = 2;
+ break;
+ case 2:
+ DmaCopy16(3, &gUnknown_0203AB88->tilemapBuffers[0][0xE0], (void *)BG_SCREEN_ADDR(31) + 0x1C0, 0x340);
+ break;
+ case 0xFF:
+ SetBgAttribute(0, BG_ATTR_CHARBASEINDEX, 2);
+ ShowBg(0);
+ DmaFill16(3, 0, (void *)BG_SCREEN_ADDR(31) + 0x1C0, 0x340);
+ gUnknown_0203AB88->var28 = 0;
+ case 0:
+ break;
+ }
+}
+
+static void sub_8140388(void)
+{
+ u32 size = 0;
+
+ gUnknown_0203AB88 = AllocZeroed(sizeof(*gUnknown_0203AB88));
+ ResetBgsAndClearDma3BusyFlags(0);
+ InitBgsFromTemplates(1, gUnknown_085B6140, ARRAY_COUNT(gUnknown_085B6140));
+ SetBgTilemapBuffer(0, gUnknown_0203AB88->tilemapBuffers[0]);
+ SetBgTilemapBuffer(1, gUnknown_0203AB88->tilemapBuffers[2]);
+ SetBgTilemapBuffer(2, gUnknown_0203AB88->tilemapBuffers[6]);
+ InitWindows(gUnknown_085B614C);
+ sub_8197200();
+ gUnknown_0203AB8C = 0;
+ gUnknown_0203AB88->unk_397C = malloc_and_decompress(gUnknown_085B5DFC, &size);
+}
+
+static void sub_8140418(void)
+{
+ FREE_AND_SET_NULL(gUnknown_0203AB88->unk_397C);
+ FreeAllWindowBuffers();
+ UnsetBgTilemapBuffer(0);
+ UnsetBgTilemapBuffer(1);
+ UnsetBgTilemapBuffer(2);
+ ResetBgsAndClearDma3BusyFlags(0);
+ memset(gUnknown_0203AB88, 0, sizeof(*gUnknown_0203AB88));
+ FREE_AND_SET_NULL(gUnknown_0203AB88);
+}
+
+static void sub_8140470(void)
+{
+ u8 i;
+ u16 arr[3] = {RGB(24, 4, 10), RGB(10, 19, 6), RGB(24, 4, 10)}; // the third is never used ?
+
+ gUnknown_0203AB88->var04_0 = (gSpecialVar_0x8004 & 1);
+
+ if (gSpecialVar_0x8004 & 0x80)
+ gUnknown_0203AB88->var04_7 = 1;
+
+ gUnknown_0203AB88->var22 = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var03;
+ gUnknown_0203AB88->var23 = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var04;
+ gUnknown_0203AB88->var19 = gUnknown_085B6344[gUnknown_0203AB88->var04_0 + gUnknown_0203AB88->var04_7 * 2];
+ gUnknown_0203AB88->var1A_4 = 1;
+
+ if (gUnknown_0203AB88->var19 == 1)
+ gPlttBufferUnfaded[0] = gPlttBufferUnfaded[0x51] = gPlttBufferFaded[0] = gPlttBufferFaded[0x51] = arr[0];
+ else
+ gPlttBufferUnfaded[0] = gPlttBufferUnfaded[0x51] = gPlttBufferFaded[0] = gPlttBufferFaded[0x51] = arr[1];
+
+ sub_8151678(&gUnknown_0203AB88->varB8);
+
+ for (i = 0; i < 13; i++)
+ {
+ sub_815168C(&gUnknown_0203AB88->varB8, i, &gUnknown_085B6388[i]);
+ }
+
+ for (i = 0; i < PARTY_SIZE; i++)
+ {
+ switch (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2))
+ {
+ case SPECIES_SHROOMISH:
+ gUnknown_0203AB88->var02 |= 0x1;
+ break;
+ case SPECIES_TAILLOW:
+ gUnknown_0203AB88->var02 |= 0x2;
+ break;
+ }
+ }
+ RtcCalcLocalTime();
+}
+
+static void sub_81405CC(void)
+{
+ u8 taskId;
+
+ switch (gMain.state)
+ {
+ case 0:
+ SetVBlankCallback(NULL);
+ ScanlineEffect_Stop();
+ SetVBlankHBlankCallbacksToNull();
+ ResetVramOamAndBgCntRegs();
+ ResetAllBgsCoordinates();
+ break;
+ case 1:
+ sub_8140388();
+ DeactivateAllTextPrinters();
+ SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_NONE |
+ BLDCNT_TGT2_BG2 |
+ BLDCNT_TGT2_BD);
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(10, 6));
+ break;
+ case 2:
+ ResetPaletteFade();
+ ResetSpriteData();
+ ResetTasks();
+ reset_temp_tile_data_buffers();
+ break;
+ case 3:
+ LoadPalette(&gUnknown_085B5BFC, 0, 0x1C0);
+ decompress_and_copy_tile_data_to_vram(1, gRouletteMenuTiles, 0, 0, 0);
+ decompress_and_copy_tile_data_to_vram(2, gRouletteWheelTiles, 0, 0, 0);
+ break;
+ case 4:
+ if (free_temp_tile_data_buffers_if_possible())
+ return;
+
+ sub_8140470();
+ CopyToBgTilemapBuffer(2, gUnknown_085B5FA0, 0, 0);
+ break;
+ case 5:
+ sub_8142C0C(0);
+ sub_81439C8();
+ sub_814391C();
+ sub_8143314();
+ sub_8142CD0();
+ sub_8142F7C();
+ sub_81431E4();
+ break;
+ case 6:
+ AnimateSprites();
+ BuildOamBuffer();
+ sub_8143514(GetCoins());
+ sub_814372C(6);
+ sub_81436D0(0);
+ sub_81424FC(0);
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5B89, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ gSpriteCoordOffsetX = -60;
+ gSpriteCoordOffsetY = 0;
+ break;
+ case 7:
+ SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 |
+ DISPCNT_OBJ_1D_MAP |
+ DISPCNT_OBJ_ON);
+ CopyBgTilemapBufferToVram(1);
+ CopyBgTilemapBufferToVram(2);
+ ShowBg(0);
+ ShowBg(1);
+ ShowBg(2);
+ break;
+ case 8:
+ EnableInterrupts(INTR_FLAG_VBLANK);
+ SetVBlankCallback(sub_8140264);
+ BeginHardwarePaletteFade(0xFF, 0, 16, 0, 1);
+ taskId = gUnknown_0203AB88->varA4 = CreateTask(sub_81408A8, 0);
+ gTasks[taskId].data[6] = 6;
+ gTasks[taskId].data[13] = GetCoins();
+ sub_80EDE84(GetCoins());
+ gUnknown_0203AB88->varA5 = CreateTask(sub_8140814, 1);
+ SetMainCallback2(sub_8140238);
+ return;
+ }
+ gMain.state++;
+}
+
+static void sub_8140814(u8 unused)
+{
+ s16 sin;
+ s16 cos;
+
+ if (gUnknown_0203AB88->var21++ == gUnknown_0203AB88->var23)
+ {
+ gUnknown_0203AB88->var21 = 0;
+ if ((gUnknown_0203AB88->var24 -= gUnknown_0203AB88->var22) < 0)
+ gUnknown_0203AB88->var24 = 360 - gUnknown_0203AB88->var22;
+ }
+ sin = Sin2(gUnknown_0203AB88->var24);
+ cos = Cos2(gUnknown_0203AB88->var24);
+ sin = sin / 16;
+ gUnknown_0203AB88->var2C.a = gUnknown_0203AB88->var2C.d = cos / 16;
+ gUnknown_0203AB88->var2C.b = sin;
+ gUnknown_0203AB88->var2C.c = -sin;
+}
+
+static void sub_81408A8(u8 taskId)
+{
+ if (UpdatePaletteFade() == 0)
+ {
+ SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_NONE |
+ BLDCNT_TGT2_BG2 |
+ BLDCNT_TGT2_BD);
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(8, 8));
+ gTasks[taskId].data[6] = 0;
+ sub_8141FF4(taskId);
+ sub_8142070();
+ sub_8143A40();
+ sub_81424FC(0);
+ sub_814372C(6);
+ sub_8141F7C(taskId, sub_8140968, 0xFFFF, 0x3);
+ }
+}
+
+static void sub_8140914(u8 taskId)
+{
+ DisplayYesNoMenu();
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, 0);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5C13, 0, 1, TEXT_SPEED_FF, 0);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_085B6410);
+}
+
+static void sub_8140968(u8 taskId)
+{
+ sub_819746C(0, TRUE);
+ gTasks[taskId].func = sub_8140BD0;
+}
+
+static void sub_8140994(u8 taskId)
+{
+ DestroyTask(gUnknown_0203AB88->varA5);
+ sub_8141DE4(taskId);
+}
+
+static void sub_81409B8(u8 r0)
+{
+ u8 temp0, temp1;
+ switch (r0)
+ {
+ case 0:
+ sub_8152008(&gUnknown_0203AB88->tilemapBuffers[0][0], 0, 14, 7, 16, 13);
+ break;
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ temp0 = (r0 * 3 + 14);
+ sub_8152008(&gUnknown_0203AB88->tilemapBuffers[0][0], 0, 14, 7, 16, 13);
+ sub_8152058(&gUnknown_0203AB88->tilemapBuffers[0][0], &gUnknown_0203AB88->unk_397C[281], temp0, 7, 3, 13);
+ break;
+ case 0x5:
+ case 0xA:
+ case 0xF:
+ temp1 = ((r0 - 1) / 5 * 3 + 10);
+ sub_8152008(&gUnknown_0203AB88->tilemapBuffers[0][0], 0, 14, 7, 16, 13);
+ sub_8152058(&gUnknown_0203AB88->tilemapBuffers[0][0], &gUnknown_0203AB88->unk_397C[320], 14, temp1, 16, 3);
+ break;
+ default:
+ temp0 = ((r0 % 5) * 3 + 14);
+ temp1 = ((r0 - 1) / 5 * 3 + 7);
+ sub_8152008(&gUnknown_0203AB88->tilemapBuffers[0][0], 0, 14, 7, 16, 13);
+ sub_8152058(&gUnknown_0203AB88->tilemapBuffers[0][0], &gUnknown_0203AB88->unk_397C[272], temp0, temp1, 3, 3);
+ break;
+ }
+}
+
+static void sub_8140B64(u8 taskId)
+{
+ sub_81436D0(gTasks[taskId].data[4]);
+ sub_81409B8(gTasks[taskId].data[4]);
+}
+
+static void sub_8140B8C(u8 taskId)
+{
+ gUnknown_0203AB88->var28 = 1;
+ sub_81409B8(gTasks[taskId].data[4]);
+ gUnknown_0203AB88->var23 = 2;
+ gUnknown_0203AB88->var21 = 0;
+ gTasks[taskId].func = sub_8141040;
+}
+
+static void sub_8140BD0(u8 taskId)
+{
+ s16 i;
+
+ if (gUnknown_0203AB88->var08 & 0x20)
+ {
+ for (i = 11; i < 14; i++)
+ {
+ if ((gUnknown_0203AB88->var08 & gUnknown_085B6154[i].var08) == 0)
+ break;
+ }
+ }
+ else
+ {
+ for (i = 6; i < 10; i++)
+ {
+ if ((gUnknown_0203AB88->var08 & gUnknown_085B6154[i].var08) == 0)
+ break;
+ }
+ }
+ gTasks[taskId].data[4] = i;
+ sub_8141FF4(taskId);
+ sub_81424FC(gTasks[taskId].data[4]);
+ sub_81436D0(gTasks[taskId].data[4]);
+ sub_8142284(gTasks[taskId].data[4]);
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].func = sub_8140B8C;
+}
+
+static u8 sub_8140CA8(s16 *r0, u8 r1)
+{
+ s8 temp1 = 0;
+ s8 temp = 0;
+ s8 arr[4] = {-5, 5, -1, 1};
+ s8 t = *r0;
+
+ switch (r1)
+ {
+ case 0:
+ case 1:
+ temp1 = (*r0 % 5);
+ temp = temp1 + 15;
+ if (temp1 == 0)
+ temp1 = 5;
+ break;
+ case 2:
+ case 3:
+ temp1 = (*r0 / 5) * 5;
+ temp = temp1 + 4;
+ if (temp1 == 0)
+ temp1 = 1;
+ break;
+ }
+
+ *r0 += arr[r1];
+
+ if (*r0 < temp1)
+ *r0 = temp;
+
+ if (*r0 > temp)
+ *r0 = temp1;
+
+ if (*r0 != t)
+ return TRUE;
+
+ return FALSE;
+}
+
+static void sub_8140D6C(u8 r0)
+{
+ u8 z = 0;
+ bool8 var0 = FALSE;
+ if (!(gMain.newKeys & DPAD_UP) || ((var0 = TRUE), sub_8140CA8(&gTasks[r0].data[4], 0)))
+ if (!(gMain.newKeys & DPAD_DOWN) || ((var0 = TRUE), sub_8140CA8(&gTasks[r0].data[4], 1)))
+ if (!(gMain.newKeys & DPAD_LEFT) || ((var0 = TRUE), sub_8140CA8(&gTasks[r0].data[4], 2)))
+ if (!(gMain.newKeys & DPAD_RIGHT) || ((var0 = TRUE), sub_8140CA8(&gTasks[r0].data[4], 3)))
+ if (var0)
+ {
+ u8 i;
+ sub_81424FC(gTasks[r0].data[4]);
+ sub_8140B64(r0);
+ gTasks[r0].data[1] = z;
+ PlaySE(SE_SELECT);
+ sub_8151A9C(&gUnknown_0203AB88->varB8, 0xFFFF);
+ gUnknown_0203AB88->varB8.var04[13].var00_7 = gUnknown_0203AB88->varB8.var04[14].var00_7 = gUnknown_0203AB88->varB8.var04[15].var00_7 = 0;
+ sub_8142284(gTasks[r0].data[4]);
+ for (i = 0; i < 4; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 41]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[i + 41]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[i + 41]].anims)->type;
+ }
+ if ((u16)(gTasks[r0].data[4] - 1) < 4 && !(gUnknown_0203AB88->var08 & gUnknown_085B6154[gTasks[r0].data[4]].var08) )
+ {
+ z = gTasks[r0].data[4] - 1;
+ gSprites[gUnknown_0203AB88->var3C[z + 41]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[z + 41]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[z + 41]].anims + 1)->type;
+ }
+ }
+}
+
+static void sub_8140F6C(u8 r0)
+{
+ sub_80EECA4();
+ gUnknown_0203AB88->var28 = 0xFF;
+ if (gUnknown_0203AB88->var19 == 1)
+ gUnknown_0203AB88->var23 = 1;
+ else
+ gUnknown_0203AB88->var23 = 0;
+ gUnknown_0203AB88->var21 = 0;
+ gTasks[r0].data[1] = 32;
+ gTasks[r0].func = sub_81410FC;
+}
+
+static void sub_8140FC4(u8 taskId)
+{
+ gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0] = gTasks[taskId].data[4];
+ gTasks[taskId].data[2] = sub_8142758(gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0]);
+ sub_81436D0(gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0]);
+ if ((gTasks[taskId].data[13] -= gUnknown_0203AB88->var19) < 0)
+ gTasks[taskId].data[13] = 0;
+ sub_8143514(gTasks[taskId].data[13]);
+ gTasks[taskId].func = sub_8140F6C;
+}
+
+static void sub_8141040(u8 taskId)
+{
+ sub_8140D6C(taskId);
+
+ switch (gTasks[taskId].data[1])
+ {
+ case 0:
+ sub_81409B8(gTasks[taskId].data[4]);
+ gTasks[taskId].data[1]++;
+ break;
+ case 30:
+ sub_81409B8(0);
+ gTasks[taskId].data[1]++;
+ break;
+ case 59:
+ gTasks[taskId].data[1] = 0;
+ break;
+ default:
+ gTasks[taskId].data[1]++;
+ }
+
+ if (gMain.newKeys & A_BUTTON)
+ {
+ if ((gUnknown_0203AB88->var08 & gUnknown_085B6154[gTasks[taskId].data[4]].var08))
+ PlaySE(SE_BOO);
+ else
+ {
+ m4aSongNumStart(SE_REGI);
+ gTasks[taskId].func = sub_8140FC4;
+ }
+ }
+}
+
+static void sub_81410FC(u8 taskId)
+{
+ if (gTasks[taskId].data[1]-- > 0)
+ {
+ if (gTasks[taskId].data[1] > 2)
+ gSpriteCoordOffsetX += 2;
+ if ((gUnknown_0203AB88->var26 += 4) == 104)
+ gSprites[gUnknown_0203AB88->var3C[25]].callback = &SpriteCallbackDummy;
+ }
+ else
+ {
+ sub_8142E70(1, -1);
+ sub_8143038(1, -1);
+ gTasks[taskId].func = sub_8141344;
+ gTasks[taskId].data[1] = 0;
+ }
+}
+
+static u8 sub_814118C(u16 r0, u16 r1)
+{
+ switch (gUnknown_0203AB88->var02)
+ {
+ case 1: // SHROOMISH
+ case 2: // TAILLOW
+ // one of the two is in party
+ if (gLocalTime.hours > 3 && gLocalTime.hours < 10)
+ {
+ if (r0 < 12 || (r1 & 1))
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+ else if (!(r1 & 0x3))
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02;
+ }
+ break;
+ case 3:
+ // both are in party
+ if (gLocalTime.hours > 3 && gLocalTime.hours < 11)
+ {
+ if (r0 < 6 || (r1 & 1))
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+ else if ((r1 & 1) && r0 > 6)
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 4;
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ break;
+ case 0:
+ default:
+ // neither is in party
+ if (gLocalTime.hours > 3 && gLocalTime.hours < 10)
+ {
+ if (!(r1 & 3))
+ {
+ return 1;
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ }
+ else if (!(r1 & 3))
+ {
+ if (r0 > 12)
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 / 2;
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02;
+ }
+ }
+ else if (r1 & 0x8000)
+ {
+ if (r0 > 12)
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02;
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01;
+ }
+ }
+ else
+ {
+ return gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01 * 2;
+ }
+ break;
+ }
+}
+
+// r7/r8 swap
+#ifdef NONMATCHING
+static void sub_8141344(u8 taskId)
+{
+ u8 randf;
+ s8 randfinal;
+ s8 r5;
+ u16 g = 0;
+ u16 rand;
+ u16 randmod;
+ u16 angles[4] = {0, 180, 90, 270}; // angles in 90 degree steps
+
+ rand = Random();
+ randmod = rand % 100;
+ gUnknown_0203AB88->var7C = gTasks[taskId].data[6];
+ gUnknown_0203AB88->var7D = gUnknown_0203AB88->var7E = gUnknown_0203AB88->var7F = g;
+ randf = sub_814118C(gTasks[taskId].data[8], rand);
+ randfinal = (rand % randf) - (randf / 2);
+
+ if (gLocalTime.hours < 13)
+ r5 = 0;
+ else
+ r5 = 1;
+
+ if (randmod < 80)
+ r5 *= 2;
+ else
+ r5 = (1 - r5) * 2;
+
+ gUnknown_0203AB88->var80 = g = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var1A + randfinal;
+
+ g = S16TOPOSFLOAT(g) / 5.0f;
+ gUnknown_0203AB88->var82 = g * 3;
+ gUnknown_0203AB88->var84 = g;
+ gUnknown_0203AB88->var86 = g;
+
+ gUnknown_0203AB88->var88 = S16TOPOSFLOAT(angles[(rand & 1) + r5]);
+ gUnknown_0203AB88->var8C = S16TOPOSFLOAT(gUnknown_085B6348[gUnknown_0203AB88->var04_0].var18);
+ gUnknown_0203AB88->var90 = ((gUnknown_0203AB88->var8C * 0.5f) - gUnknown_0203AB88->var8C) / S16TOPOSFLOAT(gUnknown_0203AB88->var82);
+ gUnknown_0203AB88->var94 = 68.0f;
+ gUnknown_0203AB88->var9C = 0.0f;
+ gUnknown_0203AB88->var98 = -(8.0f / S16TOPOSFLOAT(gUnknown_0203AB88->var82));
+ gUnknown_0203AB88->varA0 = 36.0f;
+ gTasks[taskId].func = sub_814155C;
+}
+#else
+static const u16 gUnknown_085B6422[4] = {0, 180, 90, 270};
+NAKED
+static void sub_8141344(u8 taskId)
+{
+ asm_unified(" push {r4-r7,lr}\n\
+ mov r7, r10\n\
+ mov r6, r9\n\
+ mov r5, r8\n\
+ push {r5-r7}\n\
+ sub sp, 0x8\n\
+ lsls r0, 24\n\
+ lsrs r0, 24\n\
+ mov r10, r0\n\
+ movs r4, 0\n\
+ ldr r1, =gUnknown_085B6422\n\
+ mov r0, sp\n\
+ movs r2, 0x8\n\
+ bl memcpy\n\
+ bl Random\n\
+ lsls r0, 16\n\
+ lsrs r7, r0, 16\n\
+ adds r0, r7, 0\n\
+ movs r1, 0x64\n\
+ bl __umodsi3\n\
+ lsls r0, 16\n\
+ lsrs r6, r0, 16\n\
+ ldr r3, =gUnknown_0203AB88\n\
+ ldr r0, [r3]\n\
+ ldr r2, =gTasks\n\
+ mov r5, r10\n\
+ lsls r1, r5, 2\n\
+ add r1, r10\n\
+ lsls r1, 3\n\
+ adds r1, r2\n\
+ ldrh r2, [r1, 0x14]\n\
+ adds r0, 0x7C\n\
+ strb r2, [r0]\n\
+ ldr r0, [r3]\n\
+ adds r2, r0, 0\n\
+ adds r2, 0x7F\n\
+ strb r4, [r2]\n\
+ subs r2, 0x1\n\
+ strb r4, [r2]\n\
+ adds r0, 0x7D\n\
+ strb r4, [r0]\n\
+ ldrh r0, [r1, 0x18]\n\
+ adds r1, r7, 0\n\
+ bl sub_814118C\n\
+ adds r4, r0, 0\n\
+ lsls r4, 24\n\
+ lsrs r1, r4, 24\n\
+ adds r0, r7, 0\n\
+ bl __modsi3\n\
+ lsrs r4, 25\n\
+ subs r0, r4\n\
+ lsls r0, 24\n\
+ lsrs r4, r0, 24\n\
+ ldr r0, =gLocalTime\n\
+ ldrb r0, [r0, 0x2]\n\
+ lsls r0, 24\n\
+ asrs r0, 24\n\
+ movs r5, 0x1\n\
+ cmp r0, 0xC\n\
+ bgt _081413C8\n\
+ movs r5, 0\n\
+_081413C8:\n\
+ cmp r6, 0x4F\n\
+ bhi _081413E0\n\
+ lsls r0, r5, 25\n\
+ b _081413EA\n\
+ .pool\n\
+_081413E0:\n\
+ lsls r1, r5, 24\n\
+ asrs r1, 24\n\
+ movs r0, 0x1\n\
+ subs r0, r1\n\
+ lsls r0, 25\n\
+_081413EA:\n\
+ lsrs r5, r0, 24\n\
+ ldr r0, _08141530 @ =gUnknown_0203AB88\n\
+ ldr r6, [r0]\n\
+ ldrb r0, [r6, 0x4]\n\
+ lsls r0, 30\n\
+ lsrs r0, 25\n\
+ ldr r1, _08141534 @ =gUnknown_085B6348\n\
+ adds r0, r1\n\
+ lsls r4, 24\n\
+ asrs r4, 24\n\
+ ldrh r0, [r0, 0x1A]\n\
+ adds r4, r0\n\
+ adds r0, r6, 0\n\
+ adds r0, 0x80\n\
+ strh r4, [r0]\n\
+ lsls r4, 16\n\
+ asrs r4, 16\n\
+ adds r0, r4, 0\n\
+ bl __floatsisf\n\
+ cmp r4, 0\n\
+ bge _0814141C\n\
+ ldr r1, _08141538 @ =0x47800000\n\
+ bl __addsf3\n\
+_0814141C:\n\
+ ldr r1, _0814153C @ =0x40A00000\n\
+ bl __divsf3\n\
+ bl __fixunssfsi\n\
+ lsls r0, 16\n\
+ lsrs r4, r0, 16\n\
+ lsls r0, r4, 1\n\
+ adds r0, r4\n\
+ movs r2, 0x82\n\
+ adds r2, r6\n\
+ mov r8, r2\n\
+ strh r0, [r2]\n\
+ adds r0, r6, 0\n\
+ adds r0, 0x84\n\
+ strh r4, [r0]\n\
+ adds r0, 0x2\n\
+ strh r4, [r0]\n\
+ movs r0, 0x88\n\
+ adds r0, r6\n\
+ mov r9, r0\n\
+ movs r0, 0x1\n\
+ ands r0, r7\n\
+ lsls r1, r5, 24\n\
+ asrs r1, 24\n\
+ adds r0, r1\n\
+ lsls r0, 1\n\
+ add r0, sp\n\
+ movs r1, 0\n\
+ ldrsh r4, [r0, r1]\n\
+ adds r0, r4, 0\n\
+ bl __floatsisf\n\
+ cmp r4, 0\n\
+ bge _08141468\n\
+ ldr r1, _08141538 @ =0x47800000\n\
+ bl __addsf3\n\
+_08141468:\n\
+ mov r2, r9\n\
+ str r0, [r2]\n\
+ adds r7, r6, 0\n\
+ adds r7, 0x8C\n\
+ ldrb r0, [r6, 0x4]\n\
+ lsls r0, 30\n\
+ lsrs r0, 25\n\
+ ldr r5, _08141534 @ =gUnknown_085B6348\n\
+ adds r0, r5\n\
+ movs r1, 0x18\n\
+ ldrsh r4, [r0, r1]\n\
+ adds r0, r4, 0\n\
+ bl __floatsisf\n\
+ adds r5, r0, 0\n\
+ cmp r4, 0\n\
+ bge _08141492\n\
+ ldr r1, _08141538 @ =0x47800000\n\
+ bl __addsf3\n\
+ adds r5, r0, 0\n\
+_08141492:\n\
+ str r5, [r7]\n\
+ adds r7, r6, 0\n\
+ adds r7, 0x90\n\
+ ldr r1, _08141540 @ =0x3F000000\n\
+ adds r0, r5, 0\n\
+ bl __mulsf3\n\
+ adds r1, r5, 0\n\
+ bl __subsf3\n\
+ adds r5, r0, 0\n\
+ mov r2, r8\n\
+ movs r0, 0\n\
+ ldrsh r4, [r2, r0]\n\
+ adds r0, r4, 0\n\
+ bl __floatsisf\n\
+ adds r2, r0, 0\n\
+ cmp r4, 0\n\
+ bge _081414C2\n\
+ ldr r1, _08141538 @ =0x47800000\n\
+ bl __addsf3\n\
+ adds r2, r0, 0\n\
+_081414C2:\n\
+ adds r0, r5, 0\n\
+ adds r1, r2, 0\n\
+ bl __divsf3\n\
+ str r0, [r7]\n\
+ adds r1, r6, 0\n\
+ adds r1, 0x94\n\
+ ldr r0, _08141544 @ =0x42880000\n\
+ str r0, [r1]\n\
+ adds r1, 0x8\n\
+ ldr r0, _08141548 @ =0x00000000\n\
+ str r0, [r1]\n\
+ adds r5, r6, 0\n\
+ adds r5, 0x98\n\
+ mov r1, r8\n\
+ movs r2, 0\n\
+ ldrsh r4, [r1, r2]\n\
+ adds r0, r4, 0\n\
+ bl __floatsisf\n\
+ adds r2, r0, 0\n\
+ cmp r4, 0\n\
+ bge _081414F8\n\
+ ldr r1, _08141538 @ =0x47800000\n\
+ bl __addsf3\n\
+ adds r2, r0, 0\n\
+_081414F8:\n\
+ ldr r0, _0814154C @ =0x41000000\n\
+ adds r1, r2, 0\n\
+ bl __divsf3\n\
+ bl __negsf2\n\
+ str r0, [r5]\n\
+ adds r1, r6, 0\n\
+ adds r1, 0xA0\n\
+ ldr r0, _08141550 @ =0x42100000\n\
+ str r0, [r1]\n\
+ ldr r1, _08141554 @ =gTasks\n\
+ mov r5, r10\n\
+ lsls r0, r5, 2\n\
+ add r0, r10\n\
+ lsls r0, 3\n\
+ adds r0, r1\n\
+ ldr r1, _08141558 @ =sub_814155C\n\
+ str r1, [r0]\n\
+ add sp, 0x8\n\
+ pop {r3-r5}\n\
+ mov r8, r3\n\
+ mov r9, r4\n\
+ mov r10, r5\n\
+ pop {r4-r7}\n\
+ pop {r0}\n\
+ bx r0\n\
+ .align 2, 0\n\
+_08141530:\n\
+ .4byte gUnknown_0203AB88\n\
+_08141534:\n\
+ .4byte gUnknown_085B6348\n\
+_08141538:\n\
+ .4byte 0x47800000\n\
+_0814153C:\n\
+ .4byte 0x40A00000\n\
+_08141540:\n\
+ .4byte 0x3F000000\n\
+_08141544:\n\
+ .4byte 0x42880000\n\
+_08141548:\n\
+ .4byte 0x00000000\n\
+_0814154C:\n\
+ .4byte 0x41000000\n\
+_08141550:\n\
+ .4byte 0x42100000\n\
+_08141554:\n\
+ .4byte gTasks\n\
+_08141558:\n\
+ .4byte sub_814155C");
+}
+#endif // NONMATCHING
+
+static void sub_814155C(u8 taskId)
+{
+ u8 index;
+ gUnknown_0203AB88->var03_7 = 1;
+ index = gUnknown_0203AB88->var3C[gUnknown_0203AB88->var7C];
+ gUnknown_0203AB88->var38 = &gSprites[index];
+ gUnknown_0203AB88->var38->callback = sub_81446AC;
+ gTasks[taskId].data[6]++;
+ gTasks[taskId].data[0x8]++;
+ sub_814372C(6 - gTasks[taskId].data[6]);
+ m4aSongNumStart(SE_TAMAKORO);
+ gTasks[taskId].func = sub_81415D4;
+}
+
+static void sub_81415D4(u8 taskId)
+{
+ if (gUnknown_0203AB88->var7D)
+ {
+ if (gUnknown_0203AB88->var03_5)
+ {
+ if (gUnknown_0203AB88->var03_6)
+ {
+ gUnknown_0203AB88->var03_6 = FALSE;
+ gUnknown_0203AB88->var03_5 = FALSE;
+ }
+ }
+ else
+ {
+ if (!gTasks[taskId].data[1])
+ {
+ bool8 temp = sub_81421E8(sub_81420D0(taskId, gUnknown_0203AB88->var7E), gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0]);
+ gTasks[taskId].data[5] = temp;
+ if (temp == TRUE)
+ sub_8151A48(&gUnknown_0203AB88->varB8, 0x1000);
+ }
+ if (gTasks[taskId].data[1] <= 60)
+ {
+ if (gMain.newKeys & A_BUTTON)
+ gTasks[taskId].data[1] = 60;
+ gTasks[taskId].data[1]++;
+ }
+ else
+ {
+ sub_81424FC(gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0]);
+ sub_8142E70(0, gTasks[taskId].data[12]);
+ sub_8143038(0, gTasks[taskId].data[6] - 1);
+ gTasks[taskId].data[1] = 32;
+ gTasks[taskId].func = sub_81416D4;
+ }
+ }
+ }
+}
+
+static void sub_81416D4(u8 taskId)
+{
+ if (gTasks[taskId].data[1]-- > 0)
+ {
+ if (gTasks[taskId].data[1] > 2)
+ gSpriteCoordOffsetX -= 2;
+ if ((gUnknown_0203AB88->var26 -= 4) == 104)
+ gSprites[gUnknown_0203AB88->var3C[25]].callback = sub_814390C;
+ }
+ else
+ {
+ sub_8143150(gTasks[taskId].data[12]);
+ if (gTasks[taskId].data[5] == 1)
+ gTasks[taskId].data[1] = 121;
+ else
+ gTasks[taskId].data[1] = 61;
+ gTasks[taskId].func = sub_8141778;
+ }
+}
+
+static void sub_8141778(u8 taskId)
+{
+ if (gTasks[taskId].data[1]-- > 1)
+ {
+ switch (gTasks[taskId].data[1] % 16)
+ {
+ case 8:
+ sub_8142E70(0, -1);
+ sub_8143038(0, -1);
+ break;
+ case 0:
+ sub_8142E70(0, gTasks[taskId].data[12]);
+ sub_8143038(0, gTasks[taskId].data[6] - 1);
+ break;
+ }
+ }
+ else
+ {
+ sub_8141F7C(taskId, sub_814189C, 30, 0);
+ }
+}
+
+static void sub_8141800(u8 taskId)
+{
+ switch (gTasks[taskId].data[0x5])
+ {
+ case 1:
+ case 2:
+ if (IsFanfareTaskInactive())
+ {
+ u32 wins = GetGameStat(GAME_STAT_CONSECUTIVE_ROULETTE_WINS);
+ if (wins < ++gTasks[taskId].data[11])
+ SetGameStat(GAME_STAT_CONSECUTIVE_ROULETTE_WINS, gTasks[taskId].data[11]);
+ sub_8141F7C(taskId, sub_8141A18, 0xFFFF, 3);
+ }
+ break;
+ case 0:
+ default:
+ if (!IsSEPlaying())
+ {
+ gTasks[taskId].data[11] = FALSE;
+ sub_8141F7C(taskId, sub_8141AC0, 0xFFFF, 3);
+ }
+ break;
+ }
+}
+
+static void sub_814189C(u8 taskId)
+{
+ switch (gTasks[taskId].data[5])
+ {
+ case 1:
+ case 2:
+ if (gTasks[taskId].data[2] == 12)
+ {
+ PlayFanfare(MUS_ME_B_BIG);
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5BD7, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ }
+ else
+ {
+ PlayFanfare(MUS_ME_B_SMALL);
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5BCB, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ }
+ break;
+ case 0:
+ default:
+ m4aSongNumStart(SE_HAZURE);
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5BE0, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ break;
+ }
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].func = sub_8141800;
+}
+
+static void sub_8141984(u8 taskId)
+{
+ s32 r0 = gTasks[taskId].data[7];
+ switch (r0)
+ {
+ case 0:
+ gTasks[taskId].data[13]++;
+ m4aSongNumStart(SE_PIN);
+ sub_8143514(gTasks[taskId].data[13]);
+ if (gTasks[taskId].data[13] >= 9999)
+ {
+ gTasks[taskId].data[1] = r0;
+ }
+ else
+ {
+ gTasks[taskId].data[1]--;
+ gTasks[taskId].data[7]++;
+ }
+ break;
+ case 3:
+ m4aSongNumStop(SE_PIN);
+ gTasks[taskId].data[7] = 0;
+ break;
+ default:
+ gTasks[taskId].data[7]++;
+ break;
+ }
+ if (gTasks[taskId].data[1] == 0)
+ sub_8141F7C(taskId, sub_8141AC0, 0xFFFF, 3);
+}
+
+static void sub_8141A18(u8 taskId)
+{
+ ConvertIntToDecimalStringN(gStringVar1, (gUnknown_0203AB88->var19 * gTasks[taskId].data[2]), STR_CONV_MODE_LEFT_ALIGN, 2);
+ StringExpandPlaceholders(gStringVar4, gUnknown_082A5BEF);
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ gTasks[taskId].data[1] = (gUnknown_0203AB88->var19 * gTasks[taskId].data[2]);
+ gTasks[taskId].data[7] = 0;
+ gTasks[taskId].func = sub_8141984;
+}
+
+static void sub_8141AC0(u8 taskId)
+{
+ sub_8151A9C(&gUnknown_0203AB88->varB8, 0xFFFF);
+ gUnknown_0203AB88->varB8.var04[13].var00_7 = gUnknown_0203AB88->varB8.var04[14].var00_7 = gUnknown_0203AB88->varB8.var04[15].var00_7 = 0;
+ gSprites[gUnknown_0203AB88->var3C[7 + gUnknown_085B6154[gTasks[taskId].data[12]].var00]].invisible = TRUE;
+ gTasks[taskId].func = sub_8141B58;
+}
+
+static void sub_8141B58(u8 taskId)
+{
+ u8 i = 0;
+ gTasks[taskId].data[4] = i;
+ gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0] = 0;
+ sub_81424FC(0);
+ gSprites[gUnknown_0203AB88->var3C[48]].invisible = TRUE;
+ for (i = 0; i < 4; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 41]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[i + 41]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[i + 41]].anims)->type;
+ }
+ if (gTasks[taskId].data[13] >= gUnknown_0203AB88->var19)
+ {
+ if (gTasks[taskId].data[6] == 6)
+ {
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5C21, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ sub_8141F7C(taskId, dp01t_12_3_battle_menu, 0xFFFF, 3);
+ }
+ else if (gTasks[taskId].data[13] == 9999)
+ {
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5C61, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ sub_8141F7C(taskId, sub_8140914, 0xFFFF, 0x3);
+ }
+ else
+ {
+ gTasks[taskId].func = sub_8140914;
+ }
+ }
+ else
+ {
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5C04, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ sub_8141F7C(taskId, sub_8140994, 0x3C, 0x3);
+ }
+}
+
+static void dp01t_12_3_battle_menu(u8 taskId)
+{
+ u8 i = 0;
+
+ gTasks[taskId].data[6] = 0;
+ sub_8141FF4(taskId);
+ sub_8142070();
+ sub_8143A40();
+ sub_81424FC(0);
+ sub_814372C(6);
+
+ for (i = 0; i < 12; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 7]].invisible = FALSE;
+ }
+
+ if (gTasks[taskId].data[13] == 9999)
+ {
+ NewMenuHelpers_DrawStdWindowFrame(gUnknown_0203AB8C, FALSE);
+ AddTextPrinterParameterized(gUnknown_0203AB8C, 1, gUnknown_082A5C61, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(gUnknown_0203AB8C, 3);
+ sub_8141F7C(taskId, sub_8140914, 0xFFFF, 3);
+ }
+ else
+ {
+ gTasks[taskId].func = sub_8140914;
+ }
+}
+
+static void sub_8141DE4(u8 taskId)
+{
+ sub_8151A9C(&gUnknown_0203AB88->varB8, 0xFFFF);
+ sub_8151678(&gUnknown_0203AB88->varB8);
+ SetCoins(gTasks[taskId].data[13]);
+ if (GetCoins() < gUnknown_0203AB88->var19)
+ gSpecialVar_0x8004 = TRUE;
+ else
+ gSpecialVar_0x8004 = FALSE;
+ sub_80EDD78(GetCoins());
+ BeginHardwarePaletteFade(0xFF, 0, 0, 16, 0);
+ gTasks[taskId].func = sub_8141E7C;
+}
+
+static void sub_8141E7C(u8 taskId) // end roulette ?
+{
+ if (UpdatePaletteFade() == 0)
+ {
+ SetVBlankCallback(NULL);
+ gSpriteCoordOffsetX = gSpriteCoordOffsetY = 0;
+ ResetVramOamAndBgCntRegs();
+ ResetAllBgsCoordinates();
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDALPHA, 0);
+ SetGpuReg(REG_OFFSET_BLDY, 0);
+ FreeAllSpritePalettes();
+ ResetPaletteFade();
+ ResetSpriteData();
+ sub_8140418();
+ gFieldCallback = sub_80AF168;
+ SetMainCallback2(CB2_ReturnToField);
+ DestroyTask(taskId);
+ }
+}
+
+static void sub_8141EF8(u8 taskId)
+{
+ if (gUnknown_0203AB88->varA8 == 0 || gMain.newKeys & gUnknown_0203AB88->varAA)
+ {
+ gTasks[taskId].func = gUnknown_0203AB88->varAC;
+ if (gUnknown_0203AB88->varAA > 0)
+ PlaySE(SE_SELECT);
+ gUnknown_0203AB88->varAC = NULL;
+ gUnknown_0203AB88->varAA = 0;
+ gUnknown_0203AB88->varA8 = 0;
+ }
+ if (gUnknown_0203AB88->varA8 != 0xFFFF)
+ gUnknown_0203AB88->varA8--;
+}
+
+static void sub_8141F7C(u8 taskId, TaskFunc r1, u16 r2, u16 r3)
+{
+ gUnknown_0203AB88->varB4 = gTasks[taskId].func;
+ if (r1 == NULL)
+ r1 = gUnknown_0203AB88->varB4;
+ gUnknown_0203AB88->varAC = r1;
+ gUnknown_0203AB88->varA8 = r2;
+ if (r2 == 0xFFFF && r3 == 0)
+ gUnknown_0203AB88->varAA = 0xFFFF;
+ else
+ gUnknown_0203AB88->varAA = r3;
+ gTasks[taskId].func = sub_8141EF8;
+}
+
+static void sub_8141FF4(u8 taskId)
+{
+ u8 i = 0;
+ gUnknown_0203AB88->var00 = i;
+ gUnknown_0203AB88->var03_7 = 0;
+ gUnknown_0203AB88->var03_5 = 0;
+ gUnknown_0203AB88->var03_6 = 0;
+ gUnknown_0203AB88->var03_0 = 0;
+ for (i = 0; i < 6; i++)
+ {
+ gUnknown_0203AB88->var1B[i] = 0;
+ }
+ gUnknown_0203AB88->var1A_0 = 0;
+ gTasks[taskId].data[1] = 0;
+}
+
+static void sub_8142070(void)
+{
+ u8 i;
+ gUnknown_0203AB88->var08 = 0;
+ for (i = 0; i < 6; i++)
+ {
+ gUnknown_0203AB88->var0C[i] = 0;
+ }
+ for (i = 0; i < 4; i++)
+ {
+ gUnknown_0203AB88->var12[i] = 0;
+ }
+ for (i = 0; i < 3; i++)
+ {
+ gUnknown_0203AB88->var16[i] = 0;
+ }
+ sub_8143038(1, -1);
+}
+
+static u8 sub_81420D0(u8 taskId, u8 r1)
+{
+ u8 i;
+ u8 z;
+ u32 t0[4] = {0x10842, 0x21084, 0x42108, 0x84210};
+ u32 t1[3] = {0x3E0, 0x7C00, 0xF8000};
+
+ if (r1 > 11)
+ return 0;
+
+ gUnknown_0203AB88->var0C[gTasks[taskId].data[6] - 1] = gUnknown_085B62E4[r1].var02;
+ gTasks[taskId].data[12] = gUnknown_085B62E4[r1].var02;
+ gUnknown_0203AB88->var08 |= gUnknown_085B62E4[r1].var04;
+ for (i = 0; i < 4; i++)
+ {
+ if (gUnknown_085B62E4[r1].var04 & t0[i])
+ gUnknown_0203AB88->var12[i]++;
+ if (gUnknown_0203AB88->var12[i] > 2)
+ gUnknown_0203AB88->var08 |= t0[i];
+ }
+ for (z = 0; z < 3; z++)
+ {
+ if (gUnknown_085B62E4[r1].var04 & t1[z])
+ gUnknown_0203AB88->var16[z]++;
+ if (gUnknown_0203AB88->var16[z] > 3)
+ gUnknown_0203AB88->var08 |= t1[z];
+ }
+ return gUnknown_085B62E4[r1].var02;
+}
+
+static bool8 sub_81421E8(u8 r0, u8 r1)
+{
+ u8 t = r0;
+ if (--r0 < 19)
+ {
+ switch (r1)
+ {
+ case 0:
+ return 3;
+ case 1 ... 4:
+ if (t == r1 + 5 || t == r1 + 10 || t == r1 + 15)
+ return TRUE;
+ break;
+ case 5:
+ case 10:
+ case 15:
+ if (t >= (r1 + 1) && t <= (r1 + 4))
+ return TRUE;
+ break;
+ default:
+ if (t == r1)
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+static void sub_8142284(u8 r0)
+{
+
+ u16 var0 = 0;
+ u8 var2;
+ u16 var3;
+ u8 i;
+
+ switch (r0)
+ {
+ case 5:
+ case 10:
+ case 15:
+ for (i = (r0 + 1); i < (r0 + 5); i++)
+ {
+ if (!(gUnknown_0203AB88->var08 & gUnknown_085B6154[i].var08))
+ var0 |= gUnknown_085B6154[i].var10;
+ }
+ sub_8151A48(&gUnknown_0203AB88->varB8, var0 &= 0xDFFF);
+ break;
+ default:
+ {
+ struct UnkStruct1 var1[3];
+ memcpy(var1, gUnknown_085B63F0, sizeof(var1));
+ if (r0 > 0 && r0 < 5)
+ var2 = 3;
+ else
+ var2 = 1;
+ var3 = r0 / 5 - 1;
+ switch (r0 % 5)
+ {
+ case 1:
+ var3 = gSprites[gUnknown_0203AB88->var3C[7]].oam.paletteNum * 16;
+ break;
+ case 2:
+ var3 = gSprites[gUnknown_0203AB88->var3C[8]].oam.paletteNum * 16;
+ break;
+ case 3:
+ var3 = gSprites[gUnknown_0203AB88->var3C[9]].oam.paletteNum * 16;
+ break;
+ case 4:
+ var3 = gSprites[gUnknown_0203AB88->var3C[10]].oam.paletteNum * 16;
+ break;
+ }
+ if (var2 == 1)
+ {
+ if (!(gUnknown_0203AB88->var08 & gUnknown_085B6154[r0].var08))
+ {
+ var1[r0 / 5 - 1].var02 += var3;
+ sub_815168C(&gUnknown_0203AB88->varB8, 13, &var1[r0 / 5 - 1]);
+ }
+ else
+ {
+ break;
+ }
+ }
+ else
+ {
+ for (i = 0; i < 3; i++)
+ {
+ u8 var4 = i * 5 + r0 + 5;
+ if (!(gUnknown_0203AB88->var08 & gUnknown_085B6154[var4].var08))
+ {
+ var1[var4 / 5 - 1].var02 += var3;
+ sub_815168C(&gUnknown_0203AB88->varB8, i + 13, &var1[var4 / 5 - 1]);
+ if (var2 == 3)
+ var0 = gUnknown_085B6154[var4].var10;
+ var2--;
+ }
+ }
+ if (var2 != 2)
+ var0 = 0;
+ }
+ sub_8151A48(&gUnknown_0203AB88->varB8, var0 |= gUnknown_085B6154[r0].var10);
+ break;
+ }
+ }
+}
+
+static void sub_81424FC(u8 r0)
+{
+ vu8 i;
+ vu8 z;
+ vu16 var1;
+ vu16 var2;
+ vu8 var0;
+ u8 v[5];
+ u8 l;
+ gUnknown_0203AB88->var2A = 1;
+ sub_8142E70(0, 0);
+ sub_8152058(gUnknown_0203AB88->tilemapBuffers[2], gUnknown_0203AB88->unk_397C, 14, 7, 16, 13);
+ switch (r0)
+ {
+ case 0:
+ return;
+ case 1 ... 4:
+ l = 4;
+ for (i = 0; i < l; i++)
+ {
+ v[i] = i * 5 + r0;
+ }
+ break;
+ case 5:
+ case 10:
+ case 15:
+ l = 5;
+ for (i = 0; i < l; i++)
+ {
+ v[i] = i + r0;
+ }
+ break;
+ default:
+ l = 1;
+ v[0] = r0;
+ }
+ for (i = 0; i < l; i++)
+ {
+ var0 = gUnknown_085B6154[v[i]].var06;
+ var1 = gUnknown_085B6154[v[i]].var03;
+ for (z = 0; z < 3; z++)
+ {
+ var2 = (gUnknown_085B6154[v[i]].var04 + z) * 32;
+ gUnknown_0203AB88->tilemapBuffers[2][var1 + var2 + 0] = gUnknown_0203AB88->unk_397C[(var0 + z) * 3 + 208];
+ gUnknown_0203AB88->tilemapBuffers[2][var1 + var2 + 1] = gUnknown_0203AB88->unk_397C[(var0 + z) * 3 + 209];
+ gUnknown_0203AB88->tilemapBuffers[2][var1 + var2 + 2] = gUnknown_0203AB88->unk_397C[(var0 + z) * 3 + 210];
+ }
+ }
+}
+
+static u8 sub_8142758(u8 r0)
+{
+ u8 var0[5] = {0, 3, 4, 6, 12};
+
+ if (r0 > 19)
+ r0 = 0;
+ switch (gUnknown_085B6154[r0].var01_0)
+ {
+ case 3:
+ r0 = r0 / 5 - 1;
+ if (gUnknown_0203AB88->var16[r0] > 3)
+ return 0;
+ return var0[gUnknown_0203AB88->var16[r0] + 1];
+ case 4:
+ r0--;
+ if (gUnknown_0203AB88->var12[r0] > 2)
+ return 0;
+ return var0[gUnknown_0203AB88->var12[r0] + 2];
+ case 12:
+ if (gUnknown_0203AB88->var08 & gUnknown_085B6154[r0].var08)
+ return 0;
+ return var0[4];
+ }
+ return 0;
+}
+
+static void sub_8142814(void)
+{
+ s32 x1;
+ s32 x2;
+ SetGpuReg(REG_OFFSET_BG2PA, gUnknown_0203AB88->var2C.a);
+ SetGpuReg(REG_OFFSET_BG2PB, gUnknown_0203AB88->var2C.b);
+ SetGpuReg(REG_OFFSET_BG2PC, gUnknown_0203AB88->var2C.c);
+ SetGpuReg(REG_OFFSET_BG2PD, gUnknown_0203AB88->var2C.d);
+ x1 = 0x7400 - gUnknown_0203AB88->var2C.a * (gSpriteCoordOffsetX + 116)
+ - gUnknown_0203AB88->var2C.b * (gSpriteCoordOffsetY + 80);
+ x2 = 0x5400 - gUnknown_0203AB88->var2C.c * (gSpriteCoordOffsetX + 116)
+ - gUnknown_0203AB88->var2C.d * (gSpriteCoordOffsetY + 80);
+ SetGpuReg(REG_OFFSET_BG2X_L, x1);
+ SetGpuReg(REG_OFFSET_BG2X_H, (x1 & 0x0fff0000) >> 16);
+ SetGpuReg(REG_OFFSET_BG2Y_L, x2);
+ SetGpuReg(REG_OFFSET_BG2Y_H, (x2 & 0x0fff0000) >> 16);
+}
+
+static const u8 sFiller_085B644D[3] = {};
+static const u16 RouletteSpritePalette_01[] = INCBIN_U16("graphics/roulette/shadow.gbapal");
+static const u16 RouletteSpritePalette_02[] = INCBIN_U16("graphics/roulette/ball.gbapal");
+static const u16 RouletteSpritePalette_03[] = INCBIN_U16("graphics/roulette/ball_counter.gbapal");
+static const u16 RouletteSpritePalette_04[] = INCBIN_U16("graphics/roulette/cursor.gbapal");
+static const u16 RouletteSpritePalette_05[] = INCBIN_U16("graphics/roulette/credit.gbapal");
+static const u16 RouletteSpritePalette_06[] = INCBIN_U16("graphics/roulette/shroomish.gbapal");
+static const u16 RouletteSpritePalette_07[] = INCBIN_U16("graphics/roulette/tailow.gbapal");
+static const u16 RouletteSpritePalette_08[] = INCBIN_U16("graphics/roulette/poke_icons.gbapal");
+static const u16 RouletteSpritePalette_09[] = INCBIN_U16("graphics/roulette/wynaut.gbapal");
+static const u16 RouletteSpritePalette_10[] = INCBIN_U16("graphics/roulette/azurill.gbapal");
+static const u16 RouletteSpritePalette_11[] = INCBIN_U16("graphics/roulette/skitty.gbapal");
+static const u16 RouletteSpritePalette_12[] = INCBIN_U16("graphics/roulette/makuhita.gbapal");
+static const u16 RouletteSpritePalette_13[] = INCBIN_U16("graphics/roulette/85B65D0.gbapal");
+static const u16 RouletteSpritePalette_14[] = INCBIN_U16("graphics/roulette/85B65F0.gbapal");
+static const u16 RouletteSpritePalette_15[] = INCBIN_U16("graphics/roulette/85B6610.gbapal");
+static const u16 RouletteSpritePalette_16[] = INCBIN_U16("graphics/roulette/85B6630.gbapal");
+static const u32 gUnknown_085B6650[] = INCBIN_U32("graphics/roulette/ball.4bpp.lz");
+static const u32 RouletteBallCounterTiles[] = INCBIN_U32("graphics/roulette/ball_counter.4bpp.lz");
+static const u32 gUnknown_085B67FC[] = INCBIN_U32("graphics/roulette/roulette_tilt.4bpp.lz");
+static const u32 RoulettePokeIconsTiles[] = INCBIN_U32("graphics/roulette/poke_icons.4bpp.lz");
+static const u32 RoulettePokeIcons2Tiles[] = INCBIN_U32("graphics/roulette/poke_icons2.4bpp.lz");
+static const u32 gUnknown_085B7290[] = INCBIN_U32("graphics/roulette/shadow.4bpp.lz");
+static const u32 RouletteCursorTiles[] = INCBIN_U32("graphics/roulette/cursor.4bpp.lz");
+
+static const struct SpritePalette gUnknown_085B7384[] =
+{
+ { RouletteSpritePalette_01, 1 },
+ { RouletteSpritePalette_02, 2 },
+ { RouletteSpritePalette_03, 3 },
+ { RouletteSpritePalette_04, 4 },
+ { RouletteSpritePalette_05, 5 },
+ { RouletteSpritePalette_06, 6 },
+ { RouletteSpritePalette_07, 7 },
+ { RouletteSpritePalette_08, 8 },
+ { RouletteSpritePalette_09, 9 },
+ { RouletteSpritePalette_10, 10 },
+ { RouletteSpritePalette_11, 11 },
+ { RouletteSpritePalette_12, 12 },
+ {}
+};
+
+static const struct OamData gOamData_85B73EC =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 1,
+};
+
+static const struct OamData gOamData_85B73F4 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 1,
+};
+
+static const struct OamData gOamData_85B73FC =
+{
+ .y = 60,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+static const union AnimCmd gSpriteAnim_85B7404[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B740C[] = {
+ gSpriteAnim_85B7404
+};
+
+static const union AffineAnimCmd gSpriteAffineAnim_85B7410[] = {
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_85B7418[] = {
+ gSpriteAffineAnim_85B7410
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B741C = {
+ .data = RoulettePokeIcons2Tiles,
+ .size = 0xC00,
+ .tag = 0
+};
+
+static const union AnimCmd gSpriteAnim_85B7420[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(32, 0),
+ ANIMCMD_FRAME(64, 0),
+ ANIMCMD_FRAME(72, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(40, 0),
+ ANIMCMD_FRAME(48, 0),
+ ANIMCMD_FRAME(80, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(24, 0),
+ ANIMCMD_FRAME(56, 0),
+ ANIMCMD_FRAME(88, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7458[] = {
+ &gSpriteAnim_85B7420[0]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B745C[] = {
+ &gSpriteAnim_85B7420[1]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7460[] = {
+ &gSpriteAnim_85B7420[2]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7464[] = {
+ &gSpriteAnim_85B7420[3]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7468[] = {
+ &gSpriteAnim_85B7420[4]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B746C[] = {
+ &gSpriteAnim_85B7420[5]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7470[] = {
+ &gSpriteAnim_85B7420[6]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7474[] = {
+ &gSpriteAnim_85B7420[7]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7478[] = {
+ &gSpriteAnim_85B7420[8]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B747C[] = {
+ &gSpriteAnim_85B7420[9]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7480[] = {
+ &gSpriteAnim_85B7420[10]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7484[] = {
+ &gSpriteAnim_85B7420[11]
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7488 = {
+ .data = gRouletteHeadersTiles,
+ .size = 0x1600,
+ .tag = 4
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7490 = {
+ .data = RoulettePokeIconsTiles,
+ .size = 0x400,
+ .tag = 5
+};
+
+static const union AnimCmd gSpriteAnim_85B7498[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(32, 0),
+ ANIMCMD_FRAME(48, 0),
+ ANIMCMD_FRAME(64, 0),
+ ANIMCMD_FRAME(80, 0),
+ ANIMCMD_FRAME(96, 0),
+ ANIMCMD_FRAME(112, 0),
+ ANIMCMD_FRAME(128, 0),
+ ANIMCMD_FRAME(144, 0),
+ ANIMCMD_FRAME(160, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B74C8[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(4, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(12, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74DC[] = {
+ &gSpriteAnim_85B7498[0]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74E0[] = {
+ &gSpriteAnim_85B7498[2]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74E4[] = {
+ &gSpriteAnim_85B7498[4]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74E8[] = {
+ &gSpriteAnim_85B7498[6]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74EC[] = {
+ &gSpriteAnim_85B7498[8]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74F0[] = {
+ &gSpriteAnim_85B7498[9]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74F4[] = {
+ &gSpriteAnim_85B7498[10]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74F8[] = {
+ &gSpriteAnim_85B74C8[0]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B74FC[] = {
+ &gSpriteAnim_85B74C8[1]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7500[] = {
+ &gSpriteAnim_85B74C8[2]
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7504[] = {
+ &gSpriteAnim_85B74C8[3]
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7508[] =
+{
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74DC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74E4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74E8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ }
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7568[] =
+{
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74EC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74F0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 4,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73EC,
+ .anims = gSpriteAnimTable_85B74F4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ }
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B75B0[] =
+{
+ {
+ .tileTag = 5,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73F4,
+ .anims = gSpriteAnimTable_85B74F8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 5,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73F4,
+ .anims = gSpriteAnimTable_85B74FC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 5,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73F4,
+ .anims = gSpriteAnimTable_85B7500,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ },
+ {
+ .tileTag = 5,
+ .paletteTag = 8,
+ .oam = &gOamData_85B73F4,
+ .anims = gSpriteAnimTable_85B7504,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+ }
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7610[] =
+{
+ {
+ .tileTag = 0,
+ .paletteTag = 9,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7458,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 10,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B745C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 11,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7460,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 12,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7464,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 9,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7468,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 10,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B746C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 11,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7470,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 12,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7474,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 9,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7478,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 10,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B747C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 11,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7480,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ },
+ {
+ .tileTag = 0,
+ .paletteTag = 12,
+ .oam = &gOamData_85B73FC,
+ .anims = gSpriteAnimTable_85B7484,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8143280
+ }
+};
+
+static const struct OamData gOamData_85B7730 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 1,
+};
+
+static const struct OamData gOamData_85B7738 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 1,
+};
+
+static const struct OamData gOamData_85B7740 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 1,
+};
+
+static const struct OamData gOamData_85B7748 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 1,
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7750[] =
+{
+ {
+ .data = gRouletteCreditTiles,
+ .size = 0x400,
+ .tag = 7
+ },
+ {
+ .data = gRouletteNumbersTiles,
+ .size = 0x280,
+ .tag = 8
+ },
+ {
+ .data = gRouletteMultiplierTiles,
+ .size = 0x500,
+ .tag = 9
+ },
+ {
+ .data = RouletteBallCounterTiles,
+ .size = 0x140,
+ .tag = 10
+ },
+ {
+ .data = RouletteCursorTiles,
+ .size = 0x200,
+ .tag = 11
+ },
+ {}
+};
+
+static const union AnimCmd gSpriteAnim_85B7780[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(2, 0),
+ ANIMCMD_FRAME(4, 0),
+ ANIMCMD_FRAME(6, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(10, 0),
+ ANIMCMD_FRAME(12, 0),
+ ANIMCMD_FRAME(14, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(18, 0),
+ // BUG: Animation not terminated properly
+ //ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B77A8[] = {
+ gSpriteAnim_85B7780
+};
+
+static const union AnimCmd gSpriteAnim_85B77AC[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(24, 0),
+ ANIMCMD_FRAME(32, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B77C4[] = {
+ gSpriteAnim_85B77AC
+};
+
+static const union AnimCmd gSpriteAnim_85B77C8[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(2, 0),
+ ANIMCMD_FRAME(4, 0),
+ ANIMCMD_FRAME(6, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B77E0[] = {
+ gSpriteAnim_85B77C8
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B77E4 =
+{
+ .tileTag = 7,
+ .paletteTag = 5,
+ .oam = &gOamData_85B7730,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct SpriteTemplate gUnknown_085B77FC =
+{
+ .tileTag = 8,
+ .paletteTag = 5,
+ .oam = &gOamData_85B7738,
+ .anims = gSpriteAnimTable_85B77A8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct SpriteTemplate gUnknown_085B7814 =
+{
+ .tileTag = 9,
+ .paletteTag = 5,
+ .oam = &gOamData_85B7740,
+ .anims = gSpriteAnimTable_85B77C4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814390C
+};
+
+static const struct SpriteTemplate gUnknown_085B782C =
+{
+ .tileTag = 10,
+ .paletteTag = 3,
+ .oam = &gOamData_85B7748,
+ .anims = gSpriteAnimTable_85B77E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct SpriteTemplate gUnknown_085B7844 =
+{
+ .tileTag = 11,
+ .paletteTag = 5,
+ .oam = &gOamData_85B73EC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct OamData gOamData_85B785C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7864 = {
+ .data = gUnknown_085B6650,
+ .size = 0x200,
+ .tag = 12
+};
+
+static const union AnimCmd gSpriteAnim_85B786C[] = {
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B7880[] = {
+ ANIMCMD_FRAME(0, 10),
+ ANIMCMD_FRAME(4, 10),
+ ANIMCMD_FRAME(8, 10),
+ ANIMCMD_FRAME(4, 10),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B7894[] = {
+ ANIMCMD_FRAME(0, 15),
+ ANIMCMD_FRAME(4, 15),
+ ANIMCMD_FRAME(8, 15),
+ ANIMCMD_FRAME(4, 15),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B78A8[] = {
+ ANIMCMD_FRAME(4, 2),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B78BC[] = {
+ ANIMCMD_FRAME(4, 2),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(4, 4),
+ ANIMCMD_FRAME(8, 4),
+ ANIMCMD_FRAME(12, 4),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B78D4[] = {
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B78E8[] = {
+ ANIMCMD_FRAME(12, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B78F0[] = {
+ ANIMCMD_FRAME(8, 2),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7904[] = {
+ gSpriteAnim_85B786C,
+ gSpriteAnim_85B7880,
+ gSpriteAnim_85B7894,
+ gSpriteAnim_85B78A8,
+ gSpriteAnim_85B78F0,
+ gSpriteAnim_85B78BC,
+ gSpriteAnim_85B78D4,
+ gSpriteAnim_85B78D4,
+ gSpriteAnim_85B78E8
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7928 =
+{
+ .tileTag = 12,
+ .paletteTag = 2,
+ .oam = &gOamData_85B785C,
+ .anims = gSpriteAnimTable_85B7904,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct OamData gOamData_85B7940 =
+{
+ .y = 81,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7948 = {
+ .data = gRouletteCenter_Gfx,
+ .size = 0x800,
+ .tag = 6
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7950 =
+{
+ .tileTag = 6,
+ .paletteTag = 2,
+ .oam = &gOamData_85B7940,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_814399C
+};
+
+static const struct OamData gOamData_85B7968 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+static const struct OamData gOamData_85B7970 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7978 = {
+ .data = gUnknown_085B67FC,
+ .size = 0xE00,
+ .tag = 13
+};
+
+static const union AnimCmd gSpriteAnim_85B7980[] = {
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(64, 6),
+ ANIMCMD_JUMP(2)
+};
+
+static const union AnimCmd gSpriteAnim_85B799C[] = {
+ ANIMCMD_FRAME(80, 10),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B79A4[] = {
+ ANIMCMD_FRAME(80, 10, .hFlip = TRUE),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B79AC[] = {
+ ANIMCMD_FRAME(80, 20),
+ ANIMCMD_FRAME(96, 20),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B79B8[] = {
+ ANIMCMD_FRAME(80, 20, .hFlip = TRUE),
+ ANIMCMD_FRAME(96, 20, .hFlip = TRUE),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B79C4[] = {
+ ANIMCMD_FRAME(80, 10),
+ ANIMCMD_FRAME(96, 10),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd gSpriteAnim_85B79D0[] = {
+ ANIMCMD_FRAME(80, 10, .hFlip = TRUE),
+ ANIMCMD_FRAME(96, 10, .hFlip = TRUE),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B79DC[] = {
+ gSpriteAnim_85B7980
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B79E0[] = {
+ gSpriteAnim_85B799C,
+ gSpriteAnim_85B79A4,
+ gSpriteAnim_85B79AC,
+ gSpriteAnim_85B79B8,
+ gSpriteAnim_85B79C4,
+ gSpriteAnim_85B79D0
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B79F8 =
+{
+ .tileTag = 13,
+ .paletteTag = 6,
+ .oam = &gOamData_85B7968,
+ .anims = gSpriteAnimTable_85B79DC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7A10 =
+{
+ .tileTag = 13,
+ .paletteTag = 7,
+ .oam = &gOamData_85B7970,
+ .anims = gSpriteAnimTable_85B79E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8145294
+};
+
+static const struct OamData gOamData_85B7A28 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+static const struct OamData gOamData_85B7A30 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+static const struct OamData gOamData_85B7A38 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+static const struct CompressedSpriteSheet gUnknown_085B7A40 = {
+ .data = gUnknown_085B7290,
+ .size = 0x180,
+ .tag = 14
+};
+
+static const union AffineAnimCmd gSpriteAffineAnim_85B7A48[] = {
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(2, 2, 0, 60),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd gSpriteAffineAnim_85B7A60[] = {
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(-2, 0x0, 0, 15),
+ AFFINEANIMCMD_FRAME(-1, -2, 0, 15),
+ AFFINEANIMCMD_FRAME(-1, -5, 0, 24),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_85B7A88[] = {
+ gSpriteAffineAnim_85B7A48
+};
+
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_85B7A8C[] = {
+ gSpriteAffineAnim_85B7A60
+};
+
+static const union AffineAnimCmd gSpriteAffineAnim_85B7A90[] = {
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_85B7AA0[] = {
+ gSpriteAffineAnim_85B7A90
+};
+
+static const union AnimCmd gSpriteAnim_85B7AA4[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd gSpriteAnim_85B7AAC[] = {
+ ANIMCMD_FRAME(4, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7AB4[] = {
+ gSpriteAnim_85B7AA4
+};
+
+static const union AnimCmd *const gSpriteAnimTable_85B7AB8[] = {
+ gSpriteAnim_85B7AAC
+};
+
+static const struct SpriteTemplate gSpriteTemplate_85B7ABC[] =
+{
+ {
+ .tileTag = 14,
+ .paletteTag = 1,
+ .oam = &gOamData_85B7A28,
+ .anims = gSpriteAnimTable_85B7AB4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+ },
+ {
+ .tileTag = 14,
+ .paletteTag = 1,
+ .oam = &gOamData_85B7A30,
+ .anims = gSpriteAnimTable_85B7AB8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8144E60
+ }
+};
+
+static const struct SpriteTemplate gUnknown_085B7AEC =
+{
+ .tileTag = 14,
+ .paletteTag = 1,
+ .oam = &gOamData_85B7A38,
+ .anims = gSpriteAnimTable_85B7AB8,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_85B7A8C,
+ .callback = sub_8145294
+};
+
+static void sub_81428C4(u8 r0)
+{
+ DisplayYesNoMenu();
+ DoYesNoFuncWithChoice(r0, &gUnknown_085B6408);
+}
+
+static void sub_81428E4(u8 taskId)
+{
+ if (!gPaletteFade.active)
+ {
+ SetVBlankCallback(NULL);
+ SetMainCallback2(sub_81405CC);
+ DestroyTask(taskId);
+ }
+}
+
+static void sub_8142918(u8 taskId)
+{
+ sub_819746C(0, TRUE);
+ HideCoinsWindow();
+ FreeAllWindowBuffers();
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
+ gPaletteFade.delayCounter = gPaletteFade.multipurpose2;
+ UpdatePaletteFade();
+ gTasks[taskId].func = sub_81428E4;
+}
+
+static void sub_814297C(u8 taskId)
+{
+ sub_819746C(0, FALSE);
+ HideCoinsWindow();
+ ScriptContext2_Disable();
+ DestroyTask(taskId);
+}
+
+static void sub_81429A0(u8 taskId)
+{
+ gTasks[taskId].data[0]++;
+ if (gMain.newKeys & (A_BUTTON | B_BUTTON))
+ {
+ gSpecialVar_0x8004 = 1;
+ HideCoinsWindow();
+ sub_819746C(0, TRUE);
+ ScriptContext2_Disable();
+ DestroyTask(taskId);
+ }
+}
+
+static void sub_81429F0(u8 taskId)
+{
+ if (gMain.newKeys & (A_BUTTON | B_BUTTON))
+ {
+ u32 temp = gUnknown_085B6344[(gSpecialVar_0x8004 & 1) + (gSpecialVar_0x8004 >> 7 << 1)];
+ ConvertIntToDecimalStringN(gStringVar1, temp, STR_CONV_MODE_LEADING_ZEROS, 1);
+ StringExpandPlaceholders(gStringVar4, gUnknown_082A5B12);
+ NewMenuHelpers_DrawStdWindowFrame(0, FALSE);
+ AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(0, 3);
+ gTasks[taskId].func = sub_81428C4;
+ }
+}
+
+static void Task_Roulette_0(u8 taskId)
+{
+ s32 temp;
+ PrintCoinsString(gTasks[taskId].data[13]);
+ temp = gUnknown_085B6344[(gSpecialVar_0x8004 & 1) + (gSpecialVar_0x8004 >> 7 << 1)];
+ ConvertIntToDecimalStringN(gStringVar1, temp, 2, 1);
+ if (gTasks[taskId].data[13] >= temp)
+ {
+ if ((gSpecialVar_0x8004 & 0x80) && (gSpecialVar_0x8004 & 1))
+ {
+ NewMenuHelpers_DrawStdWindowFrame(0, FALSE);
+ AddTextPrinterParameterized(0, 1, gUnknown_082A5B6B, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(0, 3);
+ gTasks[taskId].func = sub_81429F0;
+ }
+ else
+ {
+ StringExpandPlaceholders(gStringVar4, gUnknown_082A5B12);
+ NewMenuHelpers_DrawStdWindowFrame(0, FALSE);
+ AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(0, 3);
+ gTasks[taskId].func = sub_81428C4;
+ }
+ }
+ else
+ {
+ StringExpandPlaceholders(gStringVar4, gUnknown_082A5B4E);
+ NewMenuHelpers_DrawStdWindowFrame(0, FALSE);
+ AddTextPrinterParameterized(0, 1, gStringVar4, 0, 1, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(0, 3);
+ gTasks[taskId].func = sub_81429A0;
+ gTasks[taskId].data[13] = 0;
+ gTasks[taskId].data[0] = 0;
+ }
+}
+
+void PlayRoulette(void)
+{
+ u8 taskId;
+
+ ScriptContext2_Enable();
+ ShowCoinsWindow(GetCoins(), 1, 1);
+ taskId = CreateTask(Task_Roulette_0, 0);
+ gTasks[taskId].data[13] = GetCoins();
+}
+
+static void sub_8142C0C(u8 r0)
+{
+ if (!r0)
+ {
+ FreeAllSpritePalettes();
+ LoadSpritePalettes(gUnknown_085B7384);
+ LoadCompressedSpriteSheet(&gUnknown_085B7864);
+ LoadCompressedSpriteSheet(&gUnknown_085B7978);
+ LoadCompressedSpriteSheet(&gUnknown_085B7A40);
+ }
+ else
+ {
+ FreeSpriteTilesByTag(14);
+ FreeSpriteTilesByTag(13);
+ FreeSpriteTilesByTag(12);
+ FreeAllSpritePalettes();
+ }
+}
+
+static u8 sub_8142C60(const struct SpriteTemplate *r0, u8 r1, u16 *r2)
+{
+ u16 temp;
+ u8 spriteId = CreateSprite(r0, 116, 80, r0->oam->y);
+ gSprites[spriteId].data[0] = *r2;
+ gSprites[spriteId].data[1] = r1;
+ gSprites[spriteId].coordOffsetEnabled = TRUE;
+ gSprites[spriteId].animPaused = TRUE;
+ gSprites[spriteId].affineAnimPaused = TRUE;
+ temp = *r2;
+ *r2 += 30;
+ if (*r2 >= 360)
+ *r2 = temp - 330;
+ return spriteId;
+}
+
+static void sub_8142CD0(void)
+{
+ u8 i, j;
+ u8 spriteId;
+ struct SpriteSheet s;
+ LZ77UnCompWram(gUnknown_085B7488.data, gDecompressionBuffer);
+ s.data = gDecompressionBuffer;
+ s.size = gUnknown_085B7488.size;
+ s.tag = gUnknown_085B7488.tag;
+ LoadSpriteSheet(&s);
+ LZ77UnCompWram(gUnknown_085B7490.data, gDecompressionBuffer);
+ s.data = gDecompressionBuffer;
+ s.size = gUnknown_085B7490.size;
+ s.tag = gUnknown_085B7490.tag;
+ LoadSpriteSheet(&s);
+ for (i = 0; i < 3; i++)
+ {
+ u8 o = i * 24;
+ for (j = 0; j < 4; j++)
+ {
+ spriteId = gUnknown_0203AB88->var3C[(i * 4) + 29 + j] = CreateSprite(&gSpriteTemplate_85B75B0[j], (j * 24) + 148, o + 92, 30);
+ gSprites[spriteId].animPaused = TRUE;
+ o += 24;
+ if (o >= 72)
+ o = 0;
+ }
+ }
+ for (i = 0; i < 4; i++)
+ {
+ spriteId = gUnknown_0203AB88->var3C[i + 41] = CreateSprite(&gSpriteTemplate_85B7508[i], (i * 24) + 148, 70, 30);
+ gSprites[spriteId].animPaused = TRUE;
+ }
+ for (i = 0; i < 3; i++)
+ {
+ spriteId = gUnknown_0203AB88->var3C[i + 45] = CreateSprite(&gSpriteTemplate_85B7568[i], 126, (i * 24) + 92, 30);
+ gSprites[spriteId].animPaused = TRUE;
+ }
+}
+
+static void unref_sub_8142E3C(void)
+{
+ u8 i;
+ for (i = 0; i < 12; i++)
+ {
+ DestroySprite(&gSprites[gUnknown_0203AB88->var3C[i + 29]]);
+ }
+}
+
+static void sub_8142E70(u8 r0, u8 r1)
+{
+ u8 i;
+ switch (r0)
+ {
+ case 1:
+ for (i = 0; i < 19; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 29]].invisible = TRUE;
+ }
+ break;
+ case 0:
+ for (i = 0; i < 12; i++)
+ {
+ if (!(gUnknown_0203AB88->var08 & gUnknown_085B62E4[i].var04))
+ gSprites[gUnknown_0203AB88->var3C[i + 29]].invisible = FALSE;
+ else if (gUnknown_085B62E4[i].var02 != r1)
+ gSprites[gUnknown_0203AB88->var3C[i + 29]].invisible = TRUE;
+ else
+ gSprites[gUnknown_0203AB88->var3C[i + 29]].invisible = FALSE;
+ }
+ for (; i < 19; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 29]].invisible = FALSE;
+ }
+ break;
+ }
+}
+
+static void sub_8142F7C(void)
+{
+ u8 i;
+ for (i = 0; i < 6; i++)
+ {
+ gUnknown_0203AB88->var3C[i + 49] = CreateSprite(&gSpriteTemplate_85B7928, 116, 20, 10);
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].invisible = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].data[0] = 1;
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].callback = sub_814390C;
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].oam.priority = 1;
+ StartSpriteAnim(&gSprites[gUnknown_0203AB88->var3C[i + 49]], 8);
+ }
+}
+
+static void sub_8143038(u8 r0, u8 r1)
+{
+ u8 i = 0;
+ if (r0)
+ {
+ for ( ; i < 6; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].invisible = TRUE;
+ }
+ }
+ else
+ {
+ for ( ; i < 6; i++)
+ {
+ if (!gUnknown_0203AB88->var0C[i] || i == r1)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].invisible = TRUE;
+ }
+ else
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].invisible = FALSE;
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].pos1.x = (gUnknown_085B6154[gUnknown_0203AB88->var0C[i]].var03 + 1) * 8 + 4;
+ gSprites[gUnknown_0203AB88->var3C[i + 49]].pos1.y = (gUnknown_085B6154[gUnknown_0203AB88->var0C[i]].var04 + 1) * 8 + 3;
+ }
+ }
+ }
+}
+
+static void sub_8143150(u8 r0)
+{
+ if (!r0)
+ {
+ gSprites[gUnknown_0203AB88->var3C[48]].invisible = TRUE;
+ }
+ else
+ {
+ gSprites[gUnknown_0203AB88->var3C[48]].invisible = FALSE;
+ gSprites[gUnknown_0203AB88->var3C[48]].pos1.x = (gUnknown_085B6154[r0].var03 + 2) * 8;
+ gSprites[gUnknown_0203AB88->var3C[48]].pos1.y = (gUnknown_085B6154[r0].var04 + 2) * 8;
+ }
+}
+
+static void sub_81431E4(void)
+{
+ u8 i, j;
+ u16 k;
+ struct SpriteSheet s;
+
+ LZ77UnCompWram(gUnknown_085B741C.data, gDecompressionBuffer);
+ s.data = gDecompressionBuffer;
+ s.size = gUnknown_085B741C.size;
+ s.tag = gUnknown_085B741C.tag;
+ LoadSpriteSheet(&s);
+
+ k = 15;
+ for (i = 0; i < 3; i++)
+ {
+ for (j = 0; j < 4; j++)
+ {
+ u8 spriteId;
+ spriteId = gUnknown_0203AB88->var3C[(i * 4) + 7 + j] = sub_8142C60(&gSpriteTemplate_85B7610[i * 4 + j], 40, &k);
+ gSprites[spriteId].animPaused = TRUE;
+ gSprites[spriteId].affineAnimPaused = TRUE;
+ }
+ }
+}
+
+static void sub_8143280(struct Sprite *sprite)
+{
+ s16 cos;
+ s16 sin;
+ u32 matrixNum;
+ s16 angle = gUnknown_0203AB88->var24 + sprite->data[0];
+ if (angle >= 360)
+ angle -= 360;
+ sin = Sin2(angle);
+ cos = Cos2(angle);
+ sprite->pos2.x = sin * sprite->data[1] >> 12;
+ sprite->pos2.y = -cos * sprite->data[1] >> 12;
+ matrixNum = sprite->oam.matrixNum;
+ sin /= 16;
+ gOamMatrices[matrixNum].d = cos /= 16;
+ gOamMatrices[matrixNum].a = cos;
+ gOamMatrices[matrixNum].b = sin;
+ gOamMatrices[matrixNum].c = -sin;
+}
+
+static void sub_8143314(void)
+{
+ u8 i;
+ for (i = 0; i < 5; i++)
+ {
+ struct SpriteSheet s;
+ LZ77UnCompWram(gUnknown_085B7750[i].data, gDecompressionBuffer);
+ s.data = gDecompressionBuffer;
+ s.size = gUnknown_085B7750[i].size;
+ s.tag = gUnknown_085B7750[i].tag;
+ LoadSpriteSheet(&s);
+ }
+ gUnknown_0203AB88->var3C[20] = CreateSprite(&gSpriteTemplate_85B77E4, 208, 16, 4);
+ gSprites[gUnknown_0203AB88->var3C[20]].animPaused = TRUE;
+ for (i = 0; i < 4; i++)
+ {
+ gUnknown_0203AB88->var3C[i + 21] = CreateSprite(&gUnknown_085B77FC, i * 8 + 196, 24, 0);
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].invisible = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].animPaused = TRUE;
+ }
+ gUnknown_0203AB88->var3C[25] = CreateSprite(&gUnknown_085B7814, 120, 68, 4);
+ gSprites[gUnknown_0203AB88->var3C[25]].animPaused = TRUE;
+ for (i = 0; i < 3; i++)
+ {
+ gUnknown_0203AB88->var3C[i + 26] = CreateSprite(&gUnknown_085B782C, i * 16 + 192, 36, 4);
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].invisible = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].animPaused = TRUE;
+ }
+ gUnknown_0203AB88->var3C[48] = CreateSprite(&gUnknown_085B7844, 152, 96, 9);
+ gSprites[gUnknown_0203AB88->var3C[48]].oam.priority = 1;
+ gSprites[gUnknown_0203AB88->var3C[48]].animPaused = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[48]].invisible = TRUE;
+}
+
+static void sub_8143514(u16 r0)
+{
+ u8 i;
+ u16 d = 1000;
+ bool8 v = FALSE;
+ for (i = 0; i < 4; i++)
+ {
+ u8 t = r0 / d;
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].invisible = TRUE;
+ if (t > 0 || v || i == 3)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].invisible = FALSE;
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[i + 21]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[i + 21]].anims + t)->type;
+ v = TRUE;
+ }
+ r0 = r0 % d;
+ d = d / 10;
+ }
+}
+
+static u8 sub_8143614(u8 r0)
+{
+ u8 t[5] = {0, 1, 2, 3, 4};
+
+ if (r0 >= 20)
+ r0 = 0;
+ switch (gUnknown_085B6154[r0].var01_0)
+ {
+ case 3:
+ r0 = r0 / 5 - 1;
+ if (gUnknown_0203AB88->var16[r0] > 3)
+ return 0;
+ return t[gUnknown_0203AB88->var16[r0] + 1];
+ case 4:
+ r0--;
+ if (gUnknown_0203AB88->var12[r0] > 2)
+ return 0;
+ return t[gUnknown_0203AB88->var12[r0] + 2];
+ case 12:
+ if (gUnknown_0203AB88->var08 & gUnknown_085B6154[r0].var08)
+ return 0;
+ return t[4];
+ }
+ return 0;
+}
+
+static void sub_81436D0(u8 r0)
+{
+ struct Sprite *s = &gSprites[gUnknown_0203AB88->var3C[25]];
+ s->animCmdIndex = sub_8143614(r0);
+ s->oam.tileNum = s->sheetTileStart + (*s->anims + s->animCmdIndex)->type;
+}
+
+static void sub_814372C(u8 r0)
+{
+ u8 i;
+ u8 t = 0;
+ if (gUnknown_0203AB88->var19 == 1)
+ t = 2;
+ switch (r0)
+ {
+ case 6:
+ for (i = 0; i < 3; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].invisible = FALSE;
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[i + 26]].anims)->type;
+ }
+ break;
+ case 5:
+ gSprites[gUnknown_0203AB88->var3C[28]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[28]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[28]].anims + t + 1)->type;
+ break;
+ case 4:
+ gSprites[gUnknown_0203AB88->var3C[28]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[28]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[28]].anims + t + 2)->type;
+ break;
+ case 3:
+ gSprites[gUnknown_0203AB88->var3C[27]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[27]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[27]].anims + t + 1)->type;
+ break;
+ case 2:
+ gSprites[gUnknown_0203AB88->var3C[27]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[27]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[27]].anims + t + 2)->type;
+ break;
+ case 1:
+ gSprites[gUnknown_0203AB88->var3C[26]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[26]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[26]].anims + t + 1)->type;
+ break;
+ case 0:
+ default:
+ for (i = 0; i < 3; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].oam.tileNum =
+ gSprites[gUnknown_0203AB88->var3C[i + 26]].sheetTileStart
+ + (*gSprites[gUnknown_0203AB88->var3C[i + 26]].anims + t + 2)->type;
+ }
+ }
+}
+
+static void sub_814390C(struct Sprite *sprite)
+{
+ sprite->pos2.x = gUnknown_0203AB88->var26;
+}
+
+static void sub_814391C(void)
+{
+ u8 spriteId;
+ struct SpriteSheet s;
+ LZ77UnCompWram(gUnknown_085B7948.data, gDecompressionBuffer);
+ s.data = gDecompressionBuffer;
+ s.size = gUnknown_085B7948.size;
+ s.tag = gUnknown_085B7948.tag;
+ LoadSpriteSheet(&s);
+ spriteId = CreateSprite(&gSpriteTemplate_85B7950, 116, 80, 81);
+ gSprites[spriteId].data[0] = gUnknown_0203AB88->var24;
+ gSprites[spriteId].data[1] = 0;
+ gSprites[spriteId].animPaused = TRUE;
+ gSprites[spriteId].affineAnimPaused = TRUE;
+ gSprites[spriteId].coordOffsetEnabled = TRUE;
+}
+
+static void sub_814399C(struct Sprite *sprite)
+{
+ u32 t = sprite->oam.matrixNum;
+ struct OamMatrix *m = &gOamMatrices[0];
+ m[t].d = gUnknown_0203AB88->var2C.a;
+ m[t].a = gUnknown_0203AB88->var2C.a;
+ m[t].b = gUnknown_0203AB88->var2C.b;
+ m[t].c = gUnknown_0203AB88->var2C.c;
+}
+
+static void sub_81439C8(void)
+{
+ u8 i;
+ for (i = 0; i < 6; i++)
+ {
+ gUnknown_0203AB88->var3C[i] = CreateSprite(&gSpriteTemplate_85B7928, 116, 80, 57 - i);
+ if (gUnknown_0203AB88->var3C[i] != MAX_SPRITES)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i]].invisible = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i]].coordOffsetEnabled = TRUE;
+ }
+ }
+}
+
+static void sub_8143A40(void)
+{
+ u8 t = gUnknown_0203AB88->var3C[0];
+ u8 i;
+ for (i = 0; i < 6; i++)
+ {
+ u8 j;
+ gSprites[t].invisible = TRUE;
+ gSprites[t].callback = &SpriteCallbackDummy;
+ StartSpriteAnim(&gSprites[t], 0);
+ for (j = 0; j < 8; j++)
+ {
+ gSprites[t].data[j] = 0;
+ }
+ t++;
+ }
+}
+
+static s16 sub_8143AC8(struct Sprite *sprite)
+{
+ if (gUnknown_0203AB88->var24 > sprite->data[3])
+ {
+ sprite->data[6] = 360 - gUnknown_0203AB88->var24 + sprite->data[3];
+ if (sprite->data[6] >= 360)
+ sprite->data[6] -= 360;
+ }
+ else
+ {
+ sprite->data[6] = sprite->data[3] - gUnknown_0203AB88->var24;
+ }
+
+ return sprite->data[6];
+}
+
+static u8 sub_8143B14(struct Sprite *sprite)
+{
+ gUnknown_0203AB88->var7E = sub_8143AC8(sprite) / 30.0f;
+ return gUnknown_0203AB88->var7E;
+}
+
+static s16 sub_8143B48(struct Sprite *sprite)
+{
+ s16 t = sub_8143AC8(sprite) % 30;
+ u16 z;
+ if (t == 14)
+ {
+ z = 0;
+ return sprite->data[2] = z;
+ }
+ else if (t > 13)
+ {
+ z = 43 - t;
+ return sprite->data[2] = z;
+ }
+ else
+ {
+ z = 14 - t;
+ return sprite->data[2] = z;
+ }
+}
+
+static void sub_8143B84(struct Sprite *sprite)
+{
+ s16 sin, cos;
+
+ gUnknown_0203AB88->var8C += gUnknown_0203AB88->var90;
+ gUnknown_0203AB88->var88 += gUnknown_0203AB88->var8C;
+
+ if (gUnknown_0203AB88->var88 >= 360)
+ gUnknown_0203AB88->var88 -= 360.0f;
+ else if (gUnknown_0203AB88->var88 < 0.0f)
+ gUnknown_0203AB88->var88 += 360.0f;
+
+ sprite->data[3] = gUnknown_0203AB88->var88;
+ gUnknown_0203AB88->var98 += gUnknown_0203AB88->var9C;
+ gUnknown_0203AB88->var94 += gUnknown_0203AB88->var98;
+ sprite->data[4] = gUnknown_0203AB88->var94;
+ sin = Sin2(sprite->data[3]);
+ cos = Cos2(sprite->data[3]);
+ sprite->pos2.x = sin * sprite->data[4] >> 12;
+ sprite->pos2.y = -cos * sprite->data[4] >> 12;
+ if (IsSEPlaying())
+ {
+ m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, sprite->pos2.x);
+ m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, sprite->pos2.x);
+ }
+}
+
+static void sub_8143C90(struct Sprite *sprite)
+{
+ s16 sin, cos;
+ sprite->data[3] = gUnknown_0203AB88->var24 + sprite->data[6];
+ if (sprite->data[3] >= 360)
+ sprite->data[3] -= 360;
+ sin = Sin2(sprite->data[3]);
+ cos = Cos2(sprite->data[3]);
+ sprite->pos2.x = sin * sprite->data[4] >> 12;
+ sprite->pos2.y = -cos * sprite->data[4] >> 12;
+ sprite->pos2.y += gSpriteCoordOffsetY;
+}
+
+static void sub_8143CFC(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ sprite->data[2]++;
+ if (sprite->data[4] < -132 || sprite->data[4] > 80)
+ sprite->invisible = TRUE;
+ else
+ sprite->invisible = FALSE;
+
+ if (sprite->data[2] >= 30)
+ {
+ if (!sprite->data[0])
+ {
+ if (gUnknown_0203AB88->var94 <= gUnknown_0203AB88->varA0 - 2.0f)
+ {
+ gUnknown_0203AB88->var7D = 0xFF;
+ gUnknown_0203AB88->var03_7 = 0;
+ StartSpriteAnim(sprite, sprite->animCmdIndex + 0x3);
+ sub_8143B14(sprite);
+ sprite->data[4] = 30;
+ sub_8143AC8(sprite);
+ sprite->data[6] = (sprite->data[6] / 30) * 30 + 15;
+ sprite->callback = sub_8143C90;
+ m4aSongNumStartOrChange(SE_HASHI);
+ gUnknown_0203AB88->var9C = gUnknown_0203AB88->var98 = 0.0f;
+ gUnknown_0203AB88->var8C = -1.0f;
+ }
+ }
+ else
+ {
+ if (gUnknown_0203AB88->var94 >= gUnknown_0203AB88->varA0 - 2.0f)
+ {
+ gUnknown_0203AB88->var7D = 0xFF;
+ gUnknown_0203AB88->var03_7 = 0;
+ StartSpriteAnim(sprite, sprite->animCmdIndex + 3);
+ sub_8143B14(sprite);
+ sprite->data[4] = 30;
+ sub_8143AC8(sprite);
+ sprite->data[6] = (sprite->data[6] / 30) * 30 + 15;
+ sprite->callback = sub_8143C90;
+ m4aSongNumStartOrChange(SE_HASHI);
+ gUnknown_0203AB88->var9C = gUnknown_0203AB88->var98 = 0.0f;
+ gUnknown_0203AB88->var8C = -1.0f;
+ }
+ }
+ }
+}
+
+static void sub_8143E14(struct Sprite *sprite)
+{
+ float f0, f1, f2;
+ sub_8143B84(sprite);
+
+ switch (sprite->data[3])
+ {
+ case 0:
+ if (sprite->data[0] != 1)
+ {
+ f0 = sprite->data[7];
+ f1 = (f0 * gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01 + (gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 - 1));
+ f2 = (f0 / gUnknown_085B6348[gUnknown_0203AB88->var04_0].var0C);
+ }
+ else
+ {
+ return;
+ }
+ break;
+ case 180:
+ if (sprite->data[0] != 0)
+ {
+ f0 = sprite->data[7];
+ f1 = (f0 * gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01 + (gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 - 1));
+ f2 = -(f0 / gUnknown_085B6348[gUnknown_0203AB88->var04_0].var0C);
+ }
+ else
+ {
+ return;
+ }
+ break;
+ default:
+ return;
+ }
+ gUnknown_0203AB88->varA0 = gUnknown_0203AB88->var94;
+ gUnknown_0203AB88->var98 = f2;
+ gUnknown_0203AB88->var9C = -((f2 * 2.0f) / f1 + (2.0f / (f1 * f1)));
+ gUnknown_0203AB88->var8C = 0.0f;
+ sprite->animPaused = FALSE;
+ sprite->animNum = 0;
+ sprite->animBeginning = TRUE;
+ sprite->animEnded = FALSE;
+ sprite->callback = sub_8143CFC;
+ sprite->data[2] = 0;
+}
+
+static void sub_8143FA4(struct Sprite *sprite)
+{
+ sprite->pos2.y = (s16)(sprite->data[2] * 0.05f * sprite->data[2]) - 45;
+ sprite->data[2]++;
+ if (sprite->data[2] > 29 && sprite->pos2.y >= 0)
+ {
+ gUnknown_0203AB88->var7D = 0xFF;
+ gUnknown_0203AB88->var03_7 = FALSE;
+ StartSpriteAnim(sprite, sprite->animCmdIndex + 3);
+ sub_8143B14(sprite);
+ sprite->data[4] = 30;
+ sub_8143AC8(sprite);
+ sprite->data[6] = (sprite->data[6] / 30) * 30 + 15;
+ sprite->callback = sub_8143C90;
+ m4aSongNumStartOrChange(SE_HASHI);
+ gUnknown_0203AB88->var03_6 = TRUE;
+ }
+}
+
+static void sub_8144050(struct Sprite *sprite)
+{
+ if (sprite->data[2]++ < 45)
+ {
+ sprite->pos2.y--;
+ if (sprite->data[2] == 45)
+ {
+ if (gSprites[gUnknown_0203AB88->var3C[55]].animCmdIndex == 1)
+ sprite->pos2.y++;
+ }
+ }
+ else
+ {
+ if (sprite->data[2] < sprite->data[7])
+ {
+ if (gSprites[gUnknown_0203AB88->var3C[55]].animDelayCounter == 0)
+ {
+ if (gSprites[gUnknown_0203AB88->var3C[55]].animCmdIndex == 1)
+ sprite->pos2.y++;
+ else
+ sprite->pos2.y--;
+ }
+ }
+ else
+ {
+ sprite->animPaused = FALSE;
+ sprite->animNum = 1;
+ sprite->animBeginning = TRUE;
+ sprite->animEnded = FALSE;
+ sprite->data[2] = 0;
+ sprite->callback = sub_8143FA4;
+ m4aSongNumStart(SE_NAGERU);
+ }
+ }
+}
+
+static void sub_8144128(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ switch (sprite->data[3])
+ {
+ case 90:
+ if (sprite->data[0] != 1)
+ {
+ sprite->callback = &sub_8144050;
+ sprite->data[2] = 0;
+ }
+ break;
+ case 270:
+ if (sprite->data[0] != 0)
+ {
+ sprite->callback = &sub_8144050;
+ sprite->data[2] = 0;
+ }
+ break;
+ }
+}
+
+static void sub_8144168(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ switch (gUnknown_0203AB88->var03_0)
+ {
+ default:
+ case 0:
+ sub_81446DC(sprite);
+ sprite->callback = sub_8143E14;
+ break;
+ case 1:
+ sub_81448B8(sprite);
+ sprite->callback = sub_8144128;
+ break;
+ }
+}
+
+static void prev_quest_read_x24_hm_usage(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ if (sprite->data[2]-- == 16)
+ gUnknown_0203AB88->var98 *= -1.0f;
+ if (sprite->data[2] == 0)
+ {
+ if (!sprite->data[0])
+ {
+ gUnknown_0203AB88->var7D = 0xFF;
+ gUnknown_0203AB88->var03_7 = 0;
+ StartSpriteAnim(sprite, sprite->animCmdIndex + 3);
+ sub_8143B14(sprite);
+ sprite->data[4] = 30;
+ sub_8143AC8(sprite);
+ sprite->data[6] = (sprite->data[6] / 30) * 30 + 15;
+ sprite->callback = sub_8143C90;
+ m4aSongNumStartOrChange(SE_HASHI);
+ }
+ else
+ {
+ sprite->animPaused = TRUE;
+ m4aSongNumStart(SE_KON);
+ sub_8144A24(sprite);
+ }
+ }
+}
+
+static void sub_8144264(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ sprite->data[2] = 0;
+ sub_8143B14(sprite);
+ if (!(gUnknown_085B62E4[gUnknown_0203AB88->var7E].var04 & gUnknown_0203AB88->var08))
+ {
+ gUnknown_0203AB88->var7D = 0xFF;
+ gUnknown_0203AB88->var03_7 = 0;
+ StartSpriteAnim(sprite, sprite->animCmdIndex + 3);
+ sub_8143B14(sprite);
+ sprite->data[4] = 30;
+ sub_8143AC8(sprite);
+ sprite->data[6] = (sprite->data[6] / 30) * 30 + 15;
+ sprite->callback = sub_8143C90;
+ m4aSongNumStartOrChange(SE_HASHI);
+ }
+ else
+ {
+ u8 t;
+ u32 z;
+ m4aSongNumStart(SE_KON);
+ z = Random() & 1;
+ if (z)
+ {
+ gUnknown_0203AB88->var8C = 0.0f;
+ gUnknown_0203AB88->var7F = t = (gUnknown_0203AB88->var7E + 1) % 12;
+ }
+ else
+ {
+ float temp;
+ gUnknown_0203AB88->var8C = (temp = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var1C) * 2.0f;
+ t = (gUnknown_0203AB88->var7E + 11) % 12;
+ gUnknown_0203AB88->var7F = gUnknown_0203AB88->var7E;
+ }
+ if (gUnknown_085B62E4[t].var04 & gUnknown_0203AB88->var08)
+ {
+ sprite->data[0] = 1;
+ sprite->data[2] = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02;
+ }
+ else
+ {
+ sprite->data[0] = gUnknown_085B62E4[t].var04 & gUnknown_0203AB88->var08;
+ if (gUnknown_0203AB88->var04_0)
+ {
+ sprite->data[2] = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01;
+ }
+ else
+ {
+ sprite->data[2] = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02;
+ if (z)
+ {
+ gUnknown_0203AB88->var8C = 0.5f;
+ }
+ else
+ {
+ gUnknown_0203AB88->var8C = -1.5f;
+ }
+ }
+ }
+ gUnknown_0203AB88->var98 = 0.085f;
+ sprite->callback = prev_quest_read_x24_hm_usage;
+ sprite->data[1] = 5;
+ }
+}
+
+static void sub_8144410(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ if (gUnknown_0203AB88->var8C > 0.5f)
+ return;
+
+ sub_8143B14(sprite);
+ if (!sub_8143B48(sprite))
+ {
+ gUnknown_0203AB88->var90 = 0.0f;
+ gUnknown_0203AB88->var8C -= (float)(gUnknown_085B6348[gUnknown_0203AB88->var04_0].var03)
+ / (gUnknown_085B6348[gUnknown_0203AB88->var04_0].var04 + 1);
+ sprite->data[1] = 4;
+ sprite->callback = sub_8144264;
+ }
+ else
+ {
+ if (gUnknown_0203AB88->var90 != 0.0f)
+ {
+ if (gUnknown_0203AB88->var8C < 0.0f)
+ {
+ gUnknown_0203AB88->var90 = 0.0f;
+ gUnknown_0203AB88->var8C = 0.0f;
+ gUnknown_0203AB88->var98 /= 1.2;
+ }
+ }
+ }
+}
+
+static void sub_8144514(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ if (gUnknown_0203AB88->var94 > 40.f)
+ return;
+
+ gUnknown_0203AB88->var98 = -(4.0f / (float)gUnknown_0203AB88->var86);
+ gUnknown_0203AB88->var90 = -(gUnknown_0203AB88->var8C / (float)gUnknown_0203AB88->var86);
+ sprite->animNum = 2;
+ sprite->animBeginning = TRUE;
+ sprite->animEnded = FALSE;
+ sprite->data[1] = 3;
+ sprite->callback = sub_8144410;
+}
+
+static void sub_81445D8(struct Sprite *sprite)
+{
+ sub_8143B84(sprite);
+ if (gUnknown_0203AB88->var94 > 60.0f)
+ return;
+
+ m4aSongNumStartOrChange(SE_TAMAKORO_E);
+ gUnknown_0203AB88->var98 = -(20.0f / (float)gUnknown_0203AB88->var84);
+ gUnknown_0203AB88->var90 = ((1.0f - gUnknown_0203AB88->var8C) / (float)gUnknown_0203AB88->var84);
+ sprite->animNum = 1;
+ sprite->animBeginning = TRUE;
+ sprite->animEnded = FALSE;
+ sprite->data[1] = 2;
+ sprite->callback = sub_8144514;
+}
+
+static void sub_81446AC(struct Sprite *sprite)
+{
+ sprite->data[1] = 1;
+ sprite->data[2] = 0;
+ sub_8143B84(sprite);
+ sprite->invisible = FALSE;
+ sprite->callback = sub_81445D8;
+}
+
+static void sub_81446DC(struct Sprite *sprite)
+{
+ u16 t;
+ u8 i;
+ s16 s[2][2] = {
+ {116, 44},
+ {116, 112}
+ };
+ struct Roulette *p;
+
+ t = sprite->data[7] - 2;
+ p = gUnknown_0203AB88; // why???
+ gUnknown_0203AB88->var3C[55] = CreateSprite(&gSpriteTemplate_85B79F8, 36, -12, 50);
+ gUnknown_0203AB88->var3C[56] = CreateSprite(&gSpriteTemplate_85B7ABC[0], s[sprite->data[0]][0], s[sprite->data[0]][1], 59);
+ gUnknown_0203AB88->var3C[57] = CreateSprite(&gSpriteTemplate_85B7ABC[1], 36, 140, 51);
+ gSprites[gUnknown_0203AB88->var3C[57]].oam.objMode = 1;
+ for (i = 0; i < 3; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].coordOffsetEnabled = FALSE;
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].invisible = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].animPaused = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].affineAnimPaused = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].data[4] = gUnknown_0203AB88->var3C[55];
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].data[5] = gUnknown_0203AB88->var3C[56];
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].data[6] = gUnknown_0203AB88->var3C[57];
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].data[2] = t;
+ gSprites[gUnknown_0203AB88->var3C[i + 55]].data[3] = (sprite->data[7] * gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01) +
+ (gUnknown_085B6348[gUnknown_0203AB88->var04_0].var02 + 0xFFFF);
+ }
+ gSprites[gUnknown_0203AB88->var3C[56]].coordOffsetEnabled = TRUE;
+ gUnknown_0203AB88->var38 = sprite;
+}
+
+static void sub_81448B8(struct Sprite *sprite)
+{
+ u8 i = 0;
+ s16 t;
+ s16 s[2][2] = {
+ {256, 84},
+ {-16, 84}
+ };
+
+ t = sprite->data[7] - 2;
+ gUnknown_0203AB88->var3C[55] = CreateSprite(&gSpriteTemplate_85B7A10, s[sprite->data[0]][0], s[sprite->data[0]][1], 50);
+ StartSpriteAnim(&gSprites[gUnknown_0203AB88->var3C[55]], sprite->data[0]);
+ gUnknown_0203AB88->var3C[56] = CreateSprite(&gUnknown_085B7AEC, s[sprite->data[0]][0], s[sprite->data[0]][1], 51);
+ gSprites[gUnknown_0203AB88->var3C[56]].affineAnimPaused = TRUE;
+ gSprites[gUnknown_0203AB88->var3C[56]].animPaused = TRUE;
+ sprite->data[7] = (t * gUnknown_085B6348[gUnknown_0203AB88->var04_0].var01) + (gUnknown_085B6348[gUnknown_0203AB88->var04_0].var10 + 45);
+ for (; i < 2; i++)
+ {
+ gSprites[gUnknown_0203AB88->var3C[55 + i]].data[4] = gUnknown_0203AB88->var3C[55];
+ gSprites[gUnknown_0203AB88->var3C[55 + i]].data[5] = gUnknown_0203AB88->var3C[56];
+ gSprites[gUnknown_0203AB88->var3C[55 + i]].data[6] = gUnknown_0203AB88->var3C[56];
+ gSprites[gUnknown_0203AB88->var3C[55 + i]].data[2] = t;
+ gSprites[gUnknown_0203AB88->var3C[55 + i]].data[3] = sprite->data[7] - 45;
+ }
+ gUnknown_0203AB88->var38 = sprite;
+}
+
+#ifdef NONMATCHING
+static void sub_8144A24(struct Sprite *sprite)
+{
+ u8 z;
+ u16 o;
+ u8 h = 0; // r10 (sp+0xc)
+ u8 j = 5; // r9 (r9)
+ u8 p = 0; // sp+0xc (sp+0x10)
+ u8 i;
+ u8 s[10] = {}; // sp+0 (sp+0)
+ u16 t = Random(); // sp+0x10 (r10)
+
+ gUnknown_0203AB88->var7D = 1;
+ gUnknown_0203AB88->var03_5 = TRUE;
+ gUnknown_0203AB88->var03_6 = FALSE;
+ gUnknown_0203AB88->var7E = 0xFF;
+ gUnknown_0203AB88->var88 = sprite->data[3];
+ gUnknown_0203AB88->var98 = 0.0f;
+ gUnknown_0203AB88->var8C = gUnknown_085B6348[gUnknown_0203AB88->var04_0].var1C;
+ o = (gUnknown_0203AB88->var04_0 * 30 + 33) + (0x1 - gUnknown_0203AB88->var03_0) * 15;
+ for (i = 0; i < 4; i++)
+ {
+ if (o < sprite->data[3] && sprite->data[3] <= o + 90)
+ {
+ sprite->data[0] = i / 2;
+ gUnknown_0203AB88->var03_0 = i & 1;
+ break;
+ }
+ if (i == 3)
+ {
+ sprite->data[0] = 1;
+ gUnknown_0203AB88->var03_0 = 1;
+ break;
+ }
+ o += 90;
+ }
+ if (gUnknown_0203AB88->var03_0)
+ {
+ if (sprite->data[0])
+ {
+ PlayCry1(SPECIES_TAILLOW, -63);
+ }
+ else
+ {
+ PlayCry1(SPECIES_TAILLOW, 63);
+ }
+ }
+ else
+ {
+ PlayCry1(SPECIES_SHROOMISH, -63);
+ }
+ i = 2;
+ z = (gUnknown_0203AB88->var7F + 2) % 12;
+ if (gUnknown_0203AB88->var03_0 == 1 && gUnknown_0203AB88->var04_0 == 1)
+ j += 6;
+ else
+ j += i;
+ for (; i < j; i++)
+ {
+ if (!(gUnknown_0203AB88->var08 & gUnknown_085B62E4[z].var04))
+ {
+ s[h++] = i;
+ if (!p && (gUnknown_085B62E4[z].var04 & gUnknown_085B6154[gUnknown_0203AB88->var1B[gUnknown_0203AB88->var1A_0]].var00))
+ {
+ p = i;
+ }
+ }
+ z = (z + 1) % 0xC;
+ }
+ if ((gUnknown_0203AB88->var03_0 + 1) & gUnknown_0203AB88->var02)
+ {
+ if (p && (t & 0xFF) < 0xc0)
+ {
+ sprite->data[7] = p;
+ }
+ else
+ {
+ sprite->data[7] = s[t % h];
+ }
+ }
+ else
+ {
+ sprite->data[7] = s[t % h];
+ }
+ sprite->callback = sub_8144168;
+}
+#else
+NAKED
+static void sub_8144A24(struct Sprite *sprite)
+{
+ asm_unified("push {r4-r7,lr}\n\
+ mov r7, r10\n\
+ mov r6, r9\n\
+ mov r5, r8\n\
+ push {r5-r7}\n\
+ sub sp, 0x14\n\
+ adds r7, r0, 0\n\
+ movs r0, 0\n\
+ mov r9, r0\n\
+ movs r1, 0x5\n\
+ mov r8, r1\n\
+ str r0, [sp, 0xC]\n\
+ mov r0, sp\n\
+ movs r1, 0\n\
+ movs r2, 0xA\n\
+ bl memset\n\
+ bl Random\n\
+ lsls r0, 16\n\
+ lsrs r0, 16\n\
+ str r0, [sp, 0x10]\n\
+ ldr r3, _08144B10 @ =gUnknown_0203AB88\n\
+ ldr r0, [r3]\n\
+ adds r0, 0x7D\n\
+ movs r5, 0x1\n\
+ strb r5, [r0]\n\
+ ldr r2, [r3]\n\
+ ldrb r0, [r2, 0x3]\n\
+ movs r1, 0x20\n\
+ orrs r0, r1\n\
+ strb r0, [r2, 0x3]\n\
+ ldr r2, [r3]\n\
+ ldrb r1, [r2, 0x3]\n\
+ movs r0, 0x41\n\
+ negs r0, r0\n\
+ ands r0, r1\n\
+ strb r0, [r2, 0x3]\n\
+ ldr r0, [r3]\n\
+ adds r0, 0x7E\n\
+ movs r1, 0xFF\n\
+ strb r1, [r0]\n\
+ ldr r6, [r3]\n\
+ adds r4, r6, 0\n\
+ adds r4, 0x88\n\
+ movs r1, 0x34\n\
+ ldrsh r0, [r7, r1]\n\
+ bl __floatsisf\n\
+ str r0, [r4]\n\
+ adds r1, r6, 0\n\
+ adds r1, 0x98\n\
+ ldr r0, _08144B14 @ =0x00000000\n\
+ str r0, [r1]\n\
+ adds r2, r6, 0\n\
+ adds r2, 0x8C\n\
+ ldr r1, _08144B18 @ =gUnknown_085B6348\n\
+ ldrb r0, [r6, 0x4]\n\
+ lsls r0, 30\n\
+ lsrs r0, 25\n\
+ adds r1, 0x1C\n\
+ adds r0, r1\n\
+ ldr r0, [r0]\n\
+ str r0, [r2]\n\
+ ldrb r0, [r6, 0x4]\n\
+ lsls r0, 30\n\
+ lsrs r0, 30\n\
+ lsls r1, r0, 4\n\
+ subs r1, r0\n\
+ lsls r1, 1\n\
+ adds r1, 0x21\n\
+ ldrb r0, [r6, 0x3]\n\
+ lsls r0, 27\n\
+ lsrs r0, 27\n\
+ subs r5, r0\n\
+ lsls r0, r5, 4\n\
+ subs r0, r5\n\
+ adds r1, r0\n\
+ lsls r1, 16\n\
+ lsrs r1, 16\n\
+ mov r5, r9\n\
+ movs r0, 0x34\n\
+ ldrsh r2, [r7, r0]\n\
+_08144ACA:\n\
+ cmp r1, r2\n\
+ bge _08144AD6\n\
+ adds r0, r1, 0\n\
+ adds r0, 0x5A\n\
+ cmp r2, r0\n\
+ ble _08144B38\n\
+_08144AD6:\n\
+ cmp r5, 0x3\n\
+ beq _08144B1C\n\
+ adds r0, r1, 0\n\
+ adds r0, 0x5A\n\
+ lsls r0, 16\n\
+ lsrs r1, r0, 16\n\
+ adds r0, r5, 0x1\n\
+ lsls r0, 24\n\
+ lsrs r5, r0, 24\n\
+ cmp r5, 0x3\n\
+ bls _08144ACA\n\
+_08144AEC:\n\
+ ldr r0, _08144B10 @ =gUnknown_0203AB88\n\
+ ldr r0, [r0]\n\
+ ldrb r1, [r0, 0x3]\n\
+ movs r0, 0x1F\n\
+ ands r0, r1\n\
+ cmp r0, 0\n\
+ beq _08144B64\n\
+ movs r1, 0x2E\n\
+ ldrsh r0, [r7, r1]\n\
+ cmp r0, 0\n\
+ beq _08144B58\n\
+ movs r0, 0x98\n\
+ lsls r0, 1\n\
+ movs r1, 0x3F\n\
+ negs r1, r1\n\
+ bl PlayCry1\n\
+ b _08144B70\n\
+ .align 2, 0\n\
+_08144B10:\n\
+ .4byte gUnknown_0203AB88\n\
+_08144B14:\n\
+ .4byte 0x00000000\n\
+_08144B18:\n\
+ .4byte gUnknown_085B6348\n\
+_08144B1C:\n\
+ movs r0, 0x1\n\
+ strh r0, [r7, 0x2E]\n\
+ ldr r0, =gUnknown_0203AB88\n\
+ ldr r2, [r0]\n\
+ ldrb r1, [r2, 0x3]\n\
+ movs r0, 0x20\n\
+ negs r0, r0\n\
+ ands r0, r1\n\
+ movs r1, 0x1\n\
+ orrs r0, r1\n\
+ strb r0, [r2, 0x3]\n\
+ b _08144AEC\n\
+ .pool\n\
+_08144B38:\n\
+ lsrs r0, r5, 1\n\
+ strh r0, [r7, 0x2E]\n\
+ ldr r0, =gUnknown_0203AB88\n\
+ ldr r3, [r0]\n\
+ movs r1, 0x1\n\
+ ands r1, r5\n\
+ ldrb r2, [r3, 0x3]\n\
+ movs r0, 0x20\n\
+ negs r0, r0\n\
+ ands r0, r2\n\
+ orrs r0, r1\n\
+ strb r0, [r3, 0x3]\n\
+ b _08144AEC\n\
+ .pool\n\
+_08144B58:\n\
+ movs r0, 0x98\n\
+ lsls r0, 1\n\
+ movs r1, 0x3F\n\
+ bl PlayCry1\n\
+ b _08144B70\n\
+_08144B64:\n\
+ movs r0, 0x99\n\
+ lsls r0, 1\n\
+ movs r1, 0x3F\n\
+ negs r1, r1\n\
+ bl PlayCry1\n\
+_08144B70:\n\
+ movs r0, 0x2\n\
+ mov r10, r0\n\
+ ldr r4, =gUnknown_0203AB88\n\
+ ldr r5, [r4]\n\
+ adds r0, r5, 0\n\
+ adds r0, 0x7F\n\
+ ldrb r0, [r0]\n\
+ adds r0, 0x2\n\
+ movs r1, 0xC\n\
+ bl __modsi3\n\
+ lsls r0, 24\n\
+ lsrs r6, r0, 24\n\
+ ldrb r1, [r5, 0x3]\n\
+ movs r0, 0x1F\n\
+ ands r0, r1\n\
+ cmp r0, 0x1\n\
+ bne _08144BA8\n\
+ ldrb r1, [r5, 0x4]\n\
+ movs r0, 0x3\n\
+ ands r0, r1\n\
+ cmp r0, 0x1\n\
+ bne _08144BA8\n\
+ mov r0, r8\n\
+ adds r0, 0x6\n\
+ b _08144BAC\n\
+ .pool\n\
+_08144BA8:\n\
+ mov r0, r8\n\
+ add r0, r10\n\
+_08144BAC:\n\
+ lsls r0, 24\n\
+ lsrs r0, 24\n\
+ mov r8, r0\n\
+ mov r5, r10\n\
+ cmp r5, r8\n\
+ bcs _08144C18\n\
+ ldr r1, =gUnknown_085B6154+0xC\n\
+ mov r10, r1\n\
+_08144BBC:\n\
+ ldr r3, [r4]\n\
+ lsls r0, r6, 3\n\
+ ldr r1, =gUnknown_085B62E4+0x4\n\
+ adds r0, r1\n\
+ ldr r1, [r3, 0x8]\n\
+ ldr r2, [r0]\n\
+ ands r1, r2\n\
+ cmp r1, 0\n\
+ bne _08144C02\n\
+ mov r0, r9\n\
+ adds r1, r0, 0x1\n\
+ lsls r1, 24\n\
+ lsrs r1, 24\n\
+ mov r9, r1\n\
+ add r0, sp\n\
+ strb r5, [r0]\n\
+ ldr r0, [sp, 0xC]\n\
+ cmp r0, 0\n\
+ bne _08144C02\n\
+ ldrb r1, [r3, 0x1A]\n\
+ lsls r1, 28\n\
+ lsrs r1, 28\n\
+ adds r0, r3, 0\n\
+ adds r0, 0x1B\n\
+ adds r0, r1\n\
+ ldrb r1, [r0]\n\
+ lsls r0, r1, 2\n\
+ adds r0, r1\n\
+ lsls r0, 2\n\
+ add r0, r10\n\
+ ldr r0, [r0]\n\
+ ands r2, r0\n\
+ cmp r2, 0\n\
+ beq _08144C02\n\
+ str r5, [sp, 0xC]\n\
+_08144C02:\n\
+ adds r0, r6, 0x1\n\
+ movs r1, 0xC\n\
+ bl __modsi3\n\
+ lsls r0, 24\n\
+ lsrs r6, r0, 24\n\
+ adds r0, r5, 0x1\n\
+ lsls r0, 24\n\
+ lsrs r5, r0, 24\n\
+ cmp r5, r8\n\
+ bcc _08144BBC\n\
+_08144C18:\n\
+ ldr r0, [r4]\n\
+ ldrb r1, [r0, 0x3]\n\
+ lsls r1, 27\n\
+ lsrs r1, 27\n\
+ adds r1, 0x1\n\
+ ldrb r0, [r0, 0x2]\n\
+ ands r1, r0\n\
+ cmp r1, 0\n\
+ beq _08144C48\n\
+ ldr r1, [sp, 0xC]\n\
+ cmp r1, 0\n\
+ beq _08144C48\n\
+ movs r0, 0xFF\n\
+ ldr r1, [sp, 0x10]\n\
+ ands r0, r1\n\
+ cmp r0, 0xBF\n\
+ bhi _08144C48\n\
+ mov r0, sp\n\
+ ldrh r0, [r0, 0xC]\n\
+ b _08144C54\n\
+ .pool\n\
+_08144C48:\n\
+ ldr r0, [sp, 0x10]\n\
+ mov r1, r9\n\
+ bl __modsi3\n\
+ add r0, sp\n\
+ ldrb r0, [r0]\n\
+_08144C54:\n\
+ strh r0, [r7, 0x3C]\n\
+ ldr r1, =sub_8144168\n\
+ str r1, [r7, 0x1C]\n\
+ add sp, 0x14\n\
+ pop {r3-r5}\n\
+ mov r8, r3\n\
+ mov r9, r4\n\
+ mov r10, r5\n\
+ pop {r4-r7}\n\
+ pop {r0}\n\
+ bx r0\n\
+ .pool");
+}
+#endif // NONMATCHING
+
+static const u16 gUnknown_085B7B1A[] = {
+ 0x907,
+ 0x808,
+ 0x709,
+ 0x60A,
+ 0x50B,
+ 0x40C,
+ 0x30D,
+ 0x20E,
+ 0x10F,
+ 0x010,
+};
+
+static void sub_8144C70(struct Sprite *sprite)
+{
+ if (sprite->data[1]++ >= sprite->data[3])
+ {
+ sprite->pos1.x -= 2;
+ if (sprite->pos1.x < -16)
+ {
+ if (!gUnknown_0203AB88->var03_6)
+ gUnknown_0203AB88->var03_6 = TRUE;
+ DestroySprite(sprite);
+ gUnknown_0203AB88->var01 = 0;
+ gUnknown_0203AB88->var34 = gUnknown_085B7B1A[0];
+ }
+ }
+}
+
+static void sub_8144CD0(struct Sprite *sprite)
+{
+ int p;
+ u16 t[][4] = {
+ {-1, 0, 1, 0},
+ {-2, 0, 2, 0},
+ {-3, 0, 3, 0},
+ };
+
+ if (sprite->data[1]++ < sprite->data[3])
+ {
+ if (sprite->data[1] & 1)
+ {
+ gSpriteCoordOffsetY = t[sprite->data[2] / 2][sprite->data[7]];
+ p = sprite->data[7] + 1;
+ sprite->data[7] = p - ((p / 4) * 4);
+ }
+ sprite->invisible ^= 1;
+ }
+ else
+ {
+ gSpriteCoordOffsetY = 0;
+ gSprites[gUnknown_0203AB88->var3C[55]].animPaused = FALSE;
+ DestroySprite(sprite);
+ }
+}
+
+static void sub_8144D94(struct Sprite *sprite)
+{
+ float t;
+ sprite->data[1]++;
+ t = sprite->data[1];
+ sprite->pos2.y = t * 0.039f * t;
+ gUnknown_0203AB88->var34 = gUnknown_085B7B1A[(gUnknown_0203AB88->var01 - 1) / 2];
+ if (gUnknown_0203AB88->var01 < 19)
+ gUnknown_0203AB88->var01++;
+ if (sprite->data[1] > 60)
+ {
+ sprite->data[1] = 0;
+ sprite->callback = sub_8144C70;
+ gSprites[sprite->data[6]].callback = sub_8144C70;
+ gSprites[sprite->data[6]].data[1] = -2;
+ gSprites[sprite->data[5]].invisible = FALSE;
+ gSprites[sprite->data[5]].callback = sub_8144CD0;
+ m4aSongNumStart(SE_W070);
+ }
+}
+
+static void sub_8144E60(struct Sprite *sprite)
+{
+ if (sprite->data[7] == 0)
+ {
+ if (gUnknown_0203AB88->var38->data[0] == 0)
+ {
+ if (gUnknown_0203AB88->var38->data[3] != gUnknown_085B6348[gUnknown_0203AB88->var04_0].var08)
+ return;
+ }
+ else
+ {
+ if (gUnknown_0203AB88->var38->data[3] != gUnknown_085B6348[gUnknown_0203AB88->var04_0].var08 + 180)
+ return;
+ }
+
+ sprite->invisible = FALSE;
+ sprite->data[7]++;
+ m4aSongNumStart(SE_RU_HYUU);
+ gUnknown_0203AB88->var01 = 1;
+ gUnknown_0203AB88->var34 = gUnknown_085B7B1A[0];
+ }
+ else
+ {
+ gUnknown_0203AB88->var34 = gUnknown_085B7B1A[(gUnknown_0203AB88->var01 - 1) / 2];
+ if (gUnknown_0203AB88->var01 < 19)
+ gUnknown_0203AB88->var01++;
+
+ if (gUnknown_0203AB88->var38->data[0] == 0)
+ {
+ if (gUnknown_0203AB88->var38->data[3] != gUnknown_085B6348[gUnknown_0203AB88->var04_0].var0A)
+ return;
+ }
+ else
+ {
+ if (gUnknown_0203AB88->var38->data[3] != gUnknown_085B6348[gUnknown_0203AB88->var04_0].var0A + 180)
+ return;
+ }
+
+ gSprites[sprite->data[4]].callback = sub_8144D94;
+ gSprites[sprite->data[4]].invisible = FALSE;
+ sprite->callback = &SpriteCallbackDummy;
+ sprite->data[7] = 0;
+ }
+}
+
+static void sub_8144F94(struct Sprite *sprite)
+{
+ sprite->invisible ^= 1;
+}
+
+static void sub_8144FB0(struct Sprite *sprite)
+{
+ if (sprite->pos1.y > -16)
+ {
+ sprite->pos1.y--;
+ }
+ else
+ {
+ sprite->callback = SpriteCallbackDummy;
+ sprite->invisible = TRUE;
+ sprite->animPaused = TRUE;
+ m4aSongNumStop(SE_BASABASA);
+ DestroySprite(sprite);
+ FreeOamMatrix(gSprites[gUnknown_0203AB88->var3C[56]].oam.matrixNum);
+ DestroySprite(&gSprites[gUnknown_0203AB88->var3C[56]]);
+ }
+}
+
+static void sub_8145030(struct Sprite *sprite)
+{
+ if (sprite->data[1] >= 0)
+ {
+ sprite->data[1]--;
+ sprite->pos1.y--;
+ if (sprite->data[1] == 0 && sprite->animCmdIndex == 1)
+ sprite->pos2.y++;
+ }
+ else
+ {
+ if (sprite->data[3] >= 0)
+ {
+ sprite->data[3]--;
+ if (sprite->animDelayCounter == 0)
+ {
+ if (sprite->animCmdIndex == 1)
+ sprite->pos2.y++;
+ else
+ sprite->pos2.y--;
+ }
+ }
+ else
+ {
+ m4aSongNumStart(SE_RU_HYUU);
+ StartSpriteAnim(sprite, gUnknown_0203AB88->var38->data[0] + 4);
+ sprite->callback = sub_8144FB0;
+ gSprites[sprite->data[6]].affineAnimPaused = FALSE;
+ }
+ }
+}
+
+static void sub_81450D8(struct Sprite *sprite)
+{
+ s8 t[2] = {-1, 1};
+ s8 z[][2] = {
+ {2, 0},
+ {2, 0},
+ {2, -1},
+ {2, -1},
+ {2, -1},
+ {2, -1},
+ {2, -2},
+ {2, -2},
+ };
+
+ if (sprite->data[1]-- > 7)
+ {
+ sprite->pos1.x += t[gUnknown_0203AB88->var38->data[0]] * 2;
+ if (IsSEPlaying())
+ {
+ s8 pan = -((116 - sprite->pos1.x) / 2);
+ m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan);
+ m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan);
+ }
+ }
+ else
+ {
+ if (sprite->data[1] >= 0)
+ {
+ sprite->pos1.x += t[gUnknown_0203AB88->var38->data[0]] * z[7 - sprite->data[1]][0];
+ sprite->pos1.y += z[7 - sprite->data[1]][1];
+ }
+ else
+ {
+ m4aSongNumStartOrChange(SE_BASABASA);
+ if (gUnknown_0203AB88->var38->data[0] == 0)
+ PlayCry1(SPECIES_TAILLOW, 63);
+ else
+ PlayCry1(SPECIES_TAILLOW, -63);
+ StartSpriteAnim(sprite, gUnknown_0203AB88->var38->data[0] + 2);
+ sprite->data[1] = 45;
+ sprite->callback = sub_8145030;
+ }
+ }
+}
+
+static void sub_8145218(struct Sprite *sprite)
+{
+ s8 t[2] = {-1, 1};
+
+ if (sprite->data[1]-- >= 0)
+ {
+ sprite->pos1.x += t[gUnknown_0203AB88->var38->data[0]] * 2;
+ gSprites[sprite->data[6]].invisible ^= 1;
+ }
+ else
+ {
+ sprite->callback = sub_8144F94;
+ }
+}
+
+static void sub_8145294(struct Sprite *sprite)
+{
+ if (gUnknown_0203AB88->var38->data[0] == 0)
+ {
+ if (gUnknown_0203AB88->var38->data[3] == gUnknown_085B6348[gUnknown_0203AB88->var04_0].var12 + 90)
+ {
+ gSprites[sprite->data[6]].data[1] = 52;
+ gSprites[sprite->data[4]].data[1] = 52;
+ }
+ else
+ {
+ return;
+ }
+ }
+ else
+ {
+ if (gUnknown_0203AB88->var38->data[3] == gUnknown_085B6348[gUnknown_0203AB88->var04_0].var14 + 270)
+ {
+ gSprites[sprite->data[6]].data[1] = 46;
+ gSprites[sprite->data[4]].data[1] = 46;
+ }
+ else
+ {
+ return;
+ }
+ }
+ gSprites[sprite->data[6]].callback = sub_8145218;
+ gSprites[sprite->data[4]].callback = sub_81450D8;
+ m4aSongNumStart(SE_RU_HYUU);
+}
diff --git a/src/roulette_util.c b/src/roulette_util.c
index c556a4af5..9531302d9 100755
--- a/src/roulette_util.c
+++ b/src/roulette_util.c
@@ -11,7 +11,7 @@ void sub_8151678(struct UnkStruct0 *r0)
memset(&r0->var04, 0, sizeof(r0->var04));
}
-u8 sub_815168C(struct UnkStruct0 *r0, u8 r1, struct UnkStruct1 *r2)
+u8 sub_815168C(struct UnkStruct0 *r0, u8 r1, const struct UnkStruct1 *r2)
{
if (!(r1 < 16) || (r0->var04[r1].var00_7))
return 0xFF;
diff --git a/src/rtc.c b/src/rtc.c
index 3f413d0e3..37a06fe7e 100644
--- a/src/rtc.c
+++ b/src/rtc.c
@@ -340,7 +340,7 @@ u32 RtcGetMinuteCount(void)
return (24 * 60) * RtcGetDayCount(&sRtc) + 60 * sRtc.hour + sRtc.minute;
}
-u16 RtcGetLocalDayCount(void)
+u32 RtcGetLocalDayCount(void)
{
return RtcGetDayCount(&sRtc);
}
diff --git a/src/script_menu.c b/src/script_menu.c
index 6f16b1a8a..d415d65a9 100644
--- a/src/script_menu.c
+++ b/src/script_menu.c
@@ -1416,7 +1416,7 @@ static void sub_80E2578(void)
{
gUnknown_03001124[temp] = 0;
temp++;
- if (FlagGet(FLAG_0x1D0) == TRUE)
+ if (FlagGet(FLAG_MET_SCOTT_ON_SS_TIDAL) == TRUE)
{
gUnknown_03001124[temp] = 1;
temp++;
@@ -1431,15 +1431,15 @@ static void sub_80E2578(void)
temp++;
}
- if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_0x1AE) == FALSE)
+ if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_HAS_EON_TICKET) == FALSE)
{
gUnknown_03001124[temp] = 2;
temp++;
- FlagSet(FLAG_0x1AE);
+ FlagSet(FLAG_HAS_EON_TICKET);
}
}
- if (CheckBagHasItem(ITEM_MYSTIC_TICKET, 1) == TRUE && FlagGet(FLAG_0x8E0) == TRUE)
+ if (CheckBagHasItem(ITEM_MYSTIC_TICKET, 1) == TRUE && FlagGet(FLAG_ENABLE_SHIP_NAVEL_ROCK) == TRUE)
{
if (gSpecialVar_0x8004 == 0)
{
@@ -1447,15 +1447,15 @@ static void sub_80E2578(void)
temp++;
}
- if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_0x1DB) == FALSE)
+ if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_HAS_MYSTIC_TICKET) == FALSE)
{
gUnknown_03001124[temp] = 3;
temp++;
- FlagSet(FLAG_0x1DB);
+ FlagSet(FLAG_HAS_MYSTIC_TICKET);
}
}
- if (CheckBagHasItem(ITEM_AURORA_TICKET, 1) == TRUE && FlagGet(FLAG_0x8D5) == TRUE)
+ if (CheckBagHasItem(ITEM_AURORA_TICKET, 1) == TRUE && FlagGet(FLAG_ENABLE_SHIP_BIRTH_ISLAND) == TRUE)
{
if (gSpecialVar_0x8004 == 0)
{
@@ -1463,15 +1463,15 @@ static void sub_80E2578(void)
temp++;
}
- if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_0x1AF) == FALSE)
+ if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_HAS_AURORA_TICKET) == FALSE)
{
gUnknown_03001124[temp] = 4;
temp++;
- FlagSet(FLAG_0x1AF);
+ FlagSet(FLAG_HAS_AURORA_TICKET);
}
}
- if (CheckBagHasItem(ITEM_OLD_SEA_MAP, 1) == TRUE && FlagGet(FLAG_0x8D6) == TRUE)
+ if (CheckBagHasItem(ITEM_OLD_SEA_MAP, 1) == TRUE && FlagGet(FLAG_ENABLE_SHIP_FARAWAY_ISLAND) == TRUE)
{
if (gSpecialVar_0x8004 == 0)
{
@@ -1479,18 +1479,18 @@ static void sub_80E2578(void)
temp++;
}
- if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_0x1B0) == FALSE)
+ if (gSpecialVar_0x8004 == 1 && FlagGet(FLAG_HAS_OLD_SEA_MAP) == FALSE)
{
gUnknown_03001124[temp] = 5;
temp++;
- FlagSet(FLAG_0x1B0);
+ FlagSet(FLAG_HAS_OLD_SEA_MAP);
}
}
gUnknown_03001124[temp] = 6;
temp++;
- if (gSpecialVar_0x8004 == 0 && FlagGet(FLAG_0x1D0) == TRUE)
+ if (gSpecialVar_0x8004 == 0 && FlagGet(FLAG_MET_SCOTT_ON_SS_TIDAL) == TRUE)
{
count = temp;
}
diff --git a/src/script_pokemon_util_80F87D8.c b/src/script_pokemon_util_80F87D8.c
index 15e91ac98..f3eaa7161 100755
--- a/src/script_pokemon_util_80F87D8.c
+++ b/src/script_pokemon_util_80F87D8.c
@@ -228,7 +228,7 @@ void sub_80F8AFC(void)
if (gIsLinkContest & 1)
{
- for (i = 0; i < gUnknown_02039F30; i++)
+ for (i = 0; i < gNumLinkContestPlayers; i++)
{
int version = (u8)gLinkPlayers[i].version;
if (version == VERSION_RUBY || version == VERSION_SAPPHIRE)
@@ -257,7 +257,7 @@ void sub_80F8B94(void)
gReservedSpritePaletteCount = 12;
if (gIsLinkContest & 1)
{
- for (i = 0; i < gUnknown_02039F30; i++)
+ for (i = 0; i < gNumLinkContestPlayers; i++)
{
eventObjectId = GetEventObjectIdByLocalIdAndMap(gUnknown_0858D8EC[i], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
sprite = &gSprites[gEventObjects[eventObjectId].spriteId];
@@ -285,14 +285,14 @@ u8 GiveMonArtistRibbon(void)
{
u8 hasArtistRibbon;
- hasArtistRibbon = GetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_ARTIST_RIBBON);
+ hasArtistRibbon = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON);
if (!hasArtistRibbon && gContestFinalStandings[gContestPlayerMonIndex] == 0 && gSpecialVar_ContestRank == 3
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800)
{
hasArtistRibbon = 1;
- SetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_ARTIST_RIBBON, &hasArtistRibbon);
- if (GetRibbonCount(&gPlayerParty[gUnknown_02039F24]) > 4)
- sub_80EE4DC(&gPlayerParty[gUnknown_02039F24], MON_DATA_ARTIST_RIBBON);
+ SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON, &hasArtistRibbon);
+ if (GetRibbonCount(&gPlayerParty[gContestMonPartyIndex]) > 4)
+ sub_80EE4DC(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON);
return 1;
}
@@ -402,7 +402,7 @@ static void sub_80F8EE8(u8 taskId)
void ScriptGetMultiplayerId(void)
{
- if ((gIsLinkContest & 1) && gUnknown_02039F30 == 4 && !(gIsLinkContest & 2))
+ if ((gIsLinkContest & 1) && gNumLinkContestPlayers == 4 && !(gIsLinkContest & 2))
gSpecialVar_Result = GetMultiplayerId();
else
gSpecialVar_Result = 4;
diff --git a/src/secret_base.c b/src/secret_base.c
index d6e42505e..b99a7c7d5 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -1033,7 +1033,7 @@ void sub_80E9FFC(u8 taskId)
void sub_80EA06C(u8 taskId)
{
DisplayYesNoMenu();
- sub_8121F68(taskId, &gUnknown_0858D058);
+ DoYesNoFuncWithChoice(taskId, &gUnknown_0858D058);
}
void sub_80EA08C(u8 taskId)
diff --git a/src/strings.c b/src/strings.c
index bd8c766de..7b2b5ca4c 100644
--- a/src/strings.c
+++ b/src/strings.c
@@ -390,7 +390,7 @@ const u8 gText_RemoveMailBeforeItem[] = _("MAIL must be removed before\nholding
const u8 gText_PkmnWasGivenItem[] = _("{STR_VAR_1} was given the\n{STR_VAR_2} to hold.{PAUSE_UNTIL_PRESS}");
const u8 gText_SwitchPkmnItem[] = _("{STR_VAR_1} is already holding\none {STR_VAR_2}.\pWould you like to switch the\ntwo items?");
const u8 gText_PkmnNotHolding[] = _("{STR_VAR_1} isn't holding\nanything.{PAUSE_UNTIL_PRESS}");
-const u8 gText_RecievedItemFromPkmn[] = _("Received the {STR_VAR_2}\nfrom {STR_VAR_1}.{PAUSE_UNTIL_PRESS}");
+const u8 gText_ReceivedItemFromPkmn[] = _("Received the {STR_VAR_2}\nfrom {STR_VAR_1}.{PAUSE_UNTIL_PRESS}");
const u8 gText_MailTakenFromPkmn[] = _("MAIL was taken from the\nPOKéMON.{PAUSE_UNTIL_PRESS}");
const u8 gText_SwitchedPkmnItem[] = _("The {STR_VAR_2} was taken and\nreplaced with the {STR_VAR_1}.{PAUSE_UNTIL_PRESS}");
const u8 gText_PkmnHoldingItemCantHoldMail[] = _("This POKéMON is holding an\nitem. It cannot hold MAIL.{PAUSE_UNTIL_PRESS}");
diff --git a/src/trade.c b/src/trade.c
index ccdd43986..7af1e19c9 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -3491,13 +3491,12 @@ static u32 sub_807A5F4(struct Pokemon *monList, int a1, int monIdx)
}
}
-#ifdef NONMATCHING
s32 sub_807A728(void)
{
s32 val;
u16 version;
- if (gReceivedRemoteLinkPlayers)
+ if (gReceivedRemoteLinkPlayers != 0)
{
val = 0;
version = (gLinkPlayers[GetMultiplayerId() ^ 1].version & 0xFF);
@@ -3536,83 +3535,6 @@ s32 sub_807A728(void)
}
return 0;
}
-#else
-NAKED
-s32 sub_807A728(void)
-{
- asm_unified("push {r4-r7,lr}\n\
- ldr r0, =gReceivedRemoteLinkPlayers\n\
- ldrb r0, [r0]\n\
- cmp r0, 0\n\
- beq _0807A7B4\n\
- movs r4, 0\n\
- bl GetMultiplayerId\n\
- ldr r5, =gLinkPlayers\n\
- movs r7, 0x1\n\
- eors r0, r7\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- lsls r1, r0, 3\n\
- subs r1, r0\n\
- lsls r1, 2\n\
- adds r1, r5\n\
- ldrb r1, [r1]\n\
- subs r0, r1, 0x1\n\
- lsls r0, 16\n\
- lsrs r0, 16\n\
- cmp r0, 0x2\n\
- bls _0807A7B4\n\
- subs r0, r1, 0x4\n\
- lsls r0, 16\n\
- lsrs r0, 16\n\
- cmp r0, 0x1\n\
- bhi _0807A762\n\
- movs r4, 0x2\n\
-_0807A762:\n\
- cmp r4, 0\n\
- ble _0807A7B4\n\
- bl GetMultiplayerId\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- lsls r1, r0, 3\n\
- subs r1, r0\n\
- lsls r1, 2\n\
- adds r1, r5\n\
- ldrb r1, [r1, 0x12]\n\
- movs r6, 0xF0\n\
- adds r0, r6, 0\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _0807A7B0\n\
- cmp r4, 0x2\n\
- bne _0807A7B4\n\
- bl GetMultiplayerId\n\
- eors r0, r7\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- lsls r1, r0, 3\n\
- subs r1, r0\n\
- lsls r1, 2\n\
- adds r1, r5\n\
- ldrb r1, [r1, 0x12]\n\
- adds r0, r6, 0\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _0807A7B4\n\
- movs r0, 0x2\n\
- b _0807A7B6\n\
- .pool\n\
-_0807A7B0:\n\
- movs r0, 0x1\n\
- b _0807A7B6\n\
-_0807A7B4:\n\
- movs r0, 0\n\
-_0807A7B6:\n\
- pop {r4-r7}\n\
- pop {r1}\n\
- bx r1");
-}
-#endif // NONMATCHING
static bool32 IsDeoxysOrMewUntradable(u16 species, bool8 isObedientBitSet)
{
@@ -3675,7 +3597,7 @@ int sub_807A7E0(struct UnkLinkRfuStruct_02022B14Substruct a0, struct UnkLinkRfuS
{
return 6;
}
-
+
if (!IsSpeciesInHoennDex(species1))
{
return 4;
@@ -3745,7 +3667,7 @@ int sub_807A918(struct Pokemon *mon, u16 monIdx)
version = gLinkPlayers[i].version & 0xFF;
if (version == VERSION_FIRE_RED ||
version == VERSION_LEAF_GREEN)
- {
+ {
versions = 0;
}
else
@@ -3761,7 +3683,7 @@ int sub_807A918(struct Pokemon *mon, u16 monIdx)
{
unk = 0;
}
-
+
if (versions && (player->name[8] / 16))
{
unk = 0;
@@ -3774,7 +3696,7 @@ int sub_807A918(struct Pokemon *mon, u16 monIdx)
{
return 2;
}
-
+
if (speciesArray[monIdx] == SPECIES_NONE)
{
return 3;
@@ -4487,7 +4409,7 @@ static void sub_807B62C(u8 a0)
BGCNT_16COLOR |
BGCNT_SCREENBASE(18) |
BGCNT_TXT256x512);
-
+
if (gUnknown_020322A0->unk_FA)
{
DmaCopy16Defvars(3, gUnknown_083369A0, (void *) BG_SCREEN_ADDR(5), 0x1000);
@@ -4553,7 +4475,7 @@ static void sub_807B62C(u8 a0)
gUnknown_020322A0->unk_EC = 0;
DmaCopyLarge16(3, gUnknown_08332F60, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000);
-
+
if (gUnknown_020322A0->unk_FA)
{
DmaCopy16Defvars(3, gUnknown_083357A0, (void *) BG_SCREEN_ADDR(18), 0x100);
@@ -4586,7 +4508,7 @@ static void sub_807B62C(u8 a0)
gUnknown_020322A0->unk_EC = 0;
DmaCopyLarge16(3, gUnknown_08332F60, (void *) BG_CHAR_ADDR(1), 0x2840, 0x1000);
-
+
if (gUnknown_020322A0->unk_FA)
{
DmaCopy16Defvars(3, gUnknown_083357A0, (void *) BG_SCREEN_ADDR(18), 0x100);
@@ -6227,7 +6149,7 @@ static void c3_0805465C(u8 taskId)
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE2(gUnknown_020322A0->unk_FB, gUnknown_020322A0->unk_FD));
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE2(gUnknown_020322A0->unk_FC, gUnknown_020322A0->unk_FE));
-
+
data[0]++;
gUnknown_020322A0->unk_FB -= 5;
gUnknown_020322A0->unk_FD += 5;
@@ -6254,7 +6176,7 @@ static void sub_807F39C(u8 taskId)
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE2(gUnknown_020322A0->unk_FB, gUnknown_020322A0->unk_FD));
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE2(gUnknown_020322A0->unk_FC, gUnknown_020322A0->unk_FE));
-
+
if (gUnknown_020322A0->unk_FB != 120)
{
data[0]++;
diff --git a/src/tv.c b/src/tv.c
index 27e2922f4..dfb4a3a64 100644
--- a/src/tv.c
+++ b/src/tv.c
@@ -1262,7 +1262,7 @@ static void InterviewAfter_ContestLiveUpdates(void)
show2->contestLiveUpdates.active = TRUE;
StringCopy(show2->contestLiveUpdates.playerName, gSaveBlock2Ptr->playerName);
show2->contestLiveUpdates.category = gSpecialVar_ContestCategory;
- show2->contestLiveUpdates.species = GetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_SPECIES, NULL);
+ show2->contestLiveUpdates.species = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SPECIES, NULL);
show2->contestLiveUpdates.winningSpecies = show->contestLiveUpdates.winningSpecies;
show2->contestLiveUpdates.appealFlags2 = show->contestLiveUpdates.appealFlags2;
show2->contestLiveUpdates.round1Rank = show->contestLiveUpdates.round1Rank;
@@ -1453,7 +1453,7 @@ void ContestLiveUpdates_BeforeInterview_5(u8 a0, u8 a1)
StringCopy(show->contestLiveUpdates.winningTrainerName, gContestMons[a1].trainerName);
StripExtCtrlCodes(show->contestLiveUpdates.winningTrainerName);
show->contestLiveUpdates.appealFlags2 = a0;
- if (a1 + 1 > gUnknown_02039F30)
+ if (a1 + 1 > gNumLinkContestPlayers)
{
show->contestLiveUpdates.winningTrainerLanguage = gLinkPlayers[0].language;
}
@@ -1516,7 +1516,7 @@ void BravoTrainerPokemonProfile_BeforeInterview1(u16 a0)
}
}
-void BravoTrainerPokemonProfile_BeforeInterview2(u8 a0)
+void BravoTrainerPokemonProfile_BeforeInterview2(u8 contestStandingPlace)
{
TVShow *show;
@@ -1524,13 +1524,13 @@ void BravoTrainerPokemonProfile_BeforeInterview2(u8 a0)
sCurTVShowSlot = FindEmptyTVSlotWithinFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows);
if (sCurTVShowSlot != -1)
{
- show->bravoTrainer.contestResult = a0;
+ show->bravoTrainer.contestResult = contestStandingPlace;
show->bravoTrainer.contestCategory = gSpecialVar_ContestCategory;
show->bravoTrainer.contestRank = gSpecialVar_ContestRank;
- show->bravoTrainer.species = GetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_SPECIES, NULL);
- GetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_NICKNAME, show->bravoTrainer.pokemonNickname);
+ show->bravoTrainer.species = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_SPECIES, NULL);
+ GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_NICKNAME, show->bravoTrainer.pokemonNickname);
StripExtCtrlCodes(show->bravoTrainer.pokemonNickname);
- show->bravoTrainer.pokemonNameLanguage = GetMonData(&gPlayerParty[gUnknown_02039F24], MON_DATA_LANGUAGE);
+ show->bravoTrainer.pokemonNameLanguage = GetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_LANGUAGE);
}
}
@@ -3538,7 +3538,7 @@ u8 CheckForBigMovieOrEmergencyNewsOnTV(void)
return 0;
}
}
- if (FlagGet(FLAG_SYS_TV_LATI) == TRUE)
+ if (FlagGet(FLAG_SYS_TV_LATIAS_LATIOS) == TRUE)
{
return 1;
}
diff --git a/sym_ewram.txt b/sym_ewram.txt
index 96a107711..825a4632f 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -226,13 +226,7 @@ gPlayerFacingPosition: @ 203AB40
.include "src/battle_records.o"
.include "src/pokedex_area_screen.o"
.include "src/evolution_scene.o"
-
-gUnknown_0203AB88: @ 203AB88
- .space 0x4
-
-gUnknown_0203AB8C: @ 203AB8C
- .space 0x4
-
+ .include "src/roulette.o"
.include "src/pokedex_cry_screen.o"
.include "src/coins.o"
.include "src/battle_transition.o"
@@ -263,13 +257,7 @@ gUnknown_0203AB8C: @ 203AB8C
.include "src/trainer_pokemon_sprites.o"
.include "src/lilycove_lady.o"
.include "src/battle_dome.o"
-
-gUnknown_0203CD80: @ 203CD80
- .space 0x8
-
-gUnknown_0203CD88: @ 203CD88
- .space 0x4
-
+ .include "src/match_call.o"
.include "src/menu.o"
.include "src/battle_factory_screen.o"
.include "src/mossdeep_gym.o"