summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@users.noreply.github.com>2019-10-24 17:22:11 -0400
committerGitHub <noreply@github.com>2019-10-24 17:22:11 -0400
commit7579fc65c12bd46c045d10eb8cd9a2320fd1f3f0 (patch)
treeb8b08638a6d8ae195dbdc4b17d1e91a6d301b073
parent6e36c229200e083ca005cbc448e99210d111f3b2 (diff)
parent4fae71a4b0723fac867cbeb439feb3fc71664f0e (diff)
Merge pull request #132 from PikalaxALT/field_specials
Field specials
-rw-r--r--asm/battle_2.s2
-rw-r--r--asm/battle_message.s2
-rw-r--r--asm/battle_setup.s62
-rw-r--r--asm/battle_tower.s98
-rw-r--r--asm/cable_club.s4
-rw-r--r--asm/easy_chat.s6
-rw-r--r--asm/field_control_avatar.s6
-rw-r--r--asm/field_specials.s5732
-rw-r--r--asm/fldeff_cut.s4
-rw-r--r--asm/learn_move.s10
-rw-r--r--asm/pokemon_size_record.s24
-rw-r--r--asm/pokemon_storage_system.s6
-rw-r--r--asm/pokemon_summary_screen.s6
-rw-r--r--asm/post_battle_event_funcs.s6
-rw-r--r--asm/script_pokemon_util_80A0058.s14
-rw-r--r--asm/script_pokemon_util_80BF8FC.s24
-rw-r--r--asm/trade.s24
-rw-r--r--baserom.ipsbin642801 -> 635220 bytes
-rw-r--r--common_syms/field_specials.txt2
-rw-r--r--data/data_835B488.s2
-rw-r--r--data/data_83F5738.s87
-rw-r--r--data/data_8471F00.s2
-rw-r--r--data/event_scripts.s559
-rw-r--r--data/field_specials/unk_83F5F50.pal19
-rw-r--r--data/field_specials/unk_83F5F70.pal19
-rw-r--r--data/field_specials/unk_83F5F90.pal19
-rw-r--r--data/field_specials/unk_83F5FB0.pal19
-rw-r--r--data/field_specials/unk_83F5FD0.pal19
-rw-r--r--data/field_specials/unk_83F5FF0.pal19
-rw-r--r--data/field_specials/unk_83F6010.pal19
-rw-r--r--data/field_specials/unk_83F6030.pal19
-rw-r--r--data/field_specials/unk_83F6050.pal19
-rw-r--r--data/field_specials/unk_83F6070.pal19
-rw-r--r--data/field_specials/unk_83F6090.pal19
-rw-r--r--data/field_specials/unk_83F60B0.pal19
-rw-r--r--data/field_specials/unk_83F60D0.pal19
-rw-r--r--data/field_specials/unk_83F60F0.pal19
-rw-r--r--data/field_specials/unk_83F6110.pal19
-rw-r--r--data/field_specials/unk_83F6130.pal19
-rw-r--r--data/field_specials/unk_83F6150.pal19
-rw-r--r--data/field_specials/unk_83F6170.pal19
-rw-r--r--data/field_specials/unk_83F6190.pal19
-rw-r--r--data/field_specials/unk_83F61B0.pal19
-rw-r--r--data/field_specials/unk_83F61D0.pal19
-rw-r--r--data/field_specials/unk_83F6206.pal19
-rw-r--r--data/field_specials/unk_83F6226.pal19
-rw-r--r--data/field_specials/unk_83F6246.pal19
-rw-r--r--data/field_specials/unk_83F6266.pal19
-rw-r--r--data/field_specials/unk_83F6286.pal19
-rw-r--r--data/field_specials/unk_83F62A6.pal19
-rw-r--r--data/field_specials/unk_83F62C6.pal19
-rw-r--r--data/field_specials/unk_83F62E6.pal19
-rw-r--r--data/field_specials/unk_83F6306.pal19
-rw-r--r--data/field_specials/unk_83F6326.pal19
-rw-r--r--data/field_specials/unk_83F6346.pal19
-rw-r--r--data/layouts/SevenIsland_SevaultCanyon_TanobyKey/border.bin (renamed from data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/border.bin)0
-rw-r--r--data/layouts/SevenIsland_SevaultCanyon_TanobyKey/map.bin (renamed from data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/map.bin)bin480 -> 480 bytes
-rw-r--r--data/layouts/layouts.json8
-rw-r--r--data/maps/BirthIsland_Exterior/scripts.inc6
-rw-r--r--data/maps/CeladonCity_Condominiums_3F/scripts.inc2
-rw-r--r--data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc10
-rw-r--r--data/maps/CeladonCity_GameCorner/scripts.inc2
-rw-r--r--data/maps/CeruleanCave_B1F/scripts.inc2
-rw-r--r--data/maps/CeruleanCity_House1/scripts.inc4
-rw-r--r--data/maps/CeruleanCity_House5/scripts.inc2
-rw-r--r--data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc8
-rw-r--r--data/maps/FiveIsland_ResortGorgeous_House/scripts.inc18
-rw-r--r--data/maps/FiveIsland_WaterLabyrinth/scripts.inc6
-rw-r--r--data/maps/FourIsland/scripts.inc2
-rw-r--r--data/maps/FourIsland_PokemonDayCare/scripts.inc2
-rw-r--r--data/maps/FuchsiaCity/scripts.inc14
-rw-r--r--data/maps/FuchsiaCity_House3/scripts.inc6
-rw-r--r--data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc2
-rw-r--r--data/maps/LavenderTown_House2/scripts.inc6
-rw-r--r--data/maps/MtEmber_RubyPath_B5F/scripts.inc14
-rw-r--r--data/maps/MtEmber_Summit/scripts.inc2
-rw-r--r--data/maps/NavelRock_Base/scripts.inc6
-rw-r--r--data/maps/NavelRock_Summit/scripts.inc6
-rw-r--r--data/maps/PalletTown_GarysHouse/scripts.inc4
-rw-r--r--data/maps/PalletTown_PlayersHouse_2F/scripts.inc6
-rw-r--r--data/maps/PokemonTower_6F/scripts.inc2
-rw-r--r--data/maps/PowerPlant/scripts.inc2
-rw-r--r--data/maps/RocketHideout_Elevator/scripts.inc10
-rw-r--r--data/maps/Route12_FishingHouse/scripts.inc8
-rw-r--r--data/maps/Route15_WestEntrance_2F/scripts.inc2
-rw-r--r--data/maps/Route16/scripts.inc2
-rw-r--r--data/maps/Route18/scripts.inc2
-rw-r--r--data/maps/Route25_SeaCottage/scripts.inc8
-rw-r--r--data/maps/SSAnne_2F_Room1/scripts.inc2
-rw-r--r--data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc82
-rw-r--r--data/maps/SeafoamIslands_B4F/scripts.inc4
-rw-r--r--data/maps/SevenIsland_House_Room1/scripts.inc4
-rw-r--r--data/maps/SevenIsland_House_Room2/scripts.inc10
-rw-r--r--data/maps/SevenIsland_SevaultCanyon/map.json2
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_TanobyKey/map.json (renamed from data/maps/SevenIsland_SeavaultCanyon_TanobyKey/map.json)20
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_TanobyKey/scripts.inc (renamed from data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc)28
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_TanobyKey/text.inc (renamed from data/maps/SevenIsland_SeavaultCanyon_TanobyKey/text.inc)0
-rw-r--r--data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc12
-rw-r--r--data/maps/SilphCo_Elevator/scripts.inc12
-rw-r--r--data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc32
-rw-r--r--data/maps/SixIsland_WaterPath_House1/scripts.inc8
-rw-r--r--data/maps/ThreeIsland_BerryForest/scripts.inc2
-rw-r--r--data/maps/ThreeIsland_House1/scripts.inc2
-rw-r--r--data/maps/TwoIsland_House/scripts.inc6
-rw-r--r--data/maps/TwoIsland_JoyfulGameCorner/scripts.inc2
-rw-r--r--data/maps/ViridianCity/scripts.inc4
-rw-r--r--data/maps/map_groups.json2
-rw-r--r--data/specials.inc205
-rw-r--r--data/strings.s2
-rw-r--r--include/battle_tower.h3
-rw-r--r--include/constants/field_effects.h1
-rw-r--r--include/constants/flags.h11
-rw-r--r--include/constants/layouts.h2
-rw-r--r--include/constants/map_groups.h2
-rw-r--r--include/constants/vars.h82
-rw-r--r--include/field_camera.h3
-rw-r--r--include/field_effect.h1
-rw-r--r--include/field_map_obj.h1
-rw-r--r--include/field_specials.h7
-rw-r--r--include/fieldmap.h1
-rw-r--r--include/global.fieldmap.h3
-rw-r--r--include/global.h27
-rw-r--r--include/mevent.h1
-rw-r--r--include/overworld.h1
-rw-r--r--include/pokemon.h2
-rw-r--r--include/script_menu.h1
-rw-r--r--include/strings.h46
-rw-r--r--ld_script.txt3
-rw-r--r--src/daycare.c2
-rw-r--r--src/field_fadetransition.c2
-rw-r--r--src/field_specials.c2506
-rw-r--r--src/item_use.c10
-rw-r--r--src/itemfinder.c4
-rw-r--r--src/mevent.c2
-rw-r--r--src/mevent_server.c2
-rw-r--r--src/mystery_event_script.c2
-rw-r--r--src/player_pc.c4
-rw-r--r--src/prof_pc.c6
-rw-r--r--src/quest_log.c8
-rw-r--r--src/start_menu.c2
-rw-r--r--src/vs_seeker.c4
-rw-r--r--sym_common.txt7
-rw-r--r--sym_ewram.txt23
143 files changed, 4023 insertions, 6664 deletions
diff --git a/asm/battle_2.s b/asm/battle_2.s
index bb696b4ab..5e342a50f 100644
--- a/asm/battle_2.s
+++ b/asm/battle_2.s
@@ -11209,7 +11209,7 @@ _080157E0:
ands r1, r0
cmp r1, 0
beq _08015824
- bl sub_80803CC
+ bl ScrSpecial_GetTrainerBattleMode
lsls r0, 24
lsrs r0, 24
cmp r0, 0x9
diff --git a/asm/battle_message.s b/asm/battle_message.s
index bd1011f9a..a7a52f5f7 100644
--- a/asm/battle_message.s
+++ b/asm/battle_message.s
@@ -1802,7 +1802,7 @@ _080D8120:
cmp r1, 0
beq _080D8134
mov r0, sp
- bl sub_80E7460
+ bl CopyEReaderTrainerName5
mov r4, sp
b _080D8382
_080D8134:
diff --git a/asm/battle_setup.s b/asm/battle_setup.s
index e8e0071db..5b2dd8144 100644
--- a/asm/battle_setup.s
+++ b/asm/battle_setup.s
@@ -291,8 +291,8 @@ sub_807F868: @ 807F868
bx r0
thumb_func_end sub_807F868
- thumb_func_start sub_807F888
-sub_807F888: @ 807F888
+ thumb_func_start ScrSpecial_StartOldManTutorialBattle
+ScrSpecial_StartOldManTutorialBattle: @ 807F888
push {lr}
ldr r0, _0807F8B4 @ =gEnemyParty
movs r1, 0xD
@@ -316,7 +316,7 @@ _0807F8B4: .4byte gEnemyParty
_0807F8B8: .4byte gMain
_0807F8BC: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
_0807F8C0: .4byte gBattleTypeFlags
- thumb_func_end sub_807F888
+ thumb_func_end ScrSpecial_StartOldManTutorialBattle
thumb_func_start BattleSetup_StartScriptedWildBattle
BattleSetup_StartScriptedWildBattle: @ 807F8C4
@@ -346,8 +346,8 @@ _0807F8FC: .4byte sub_807FBA0
_0807F900: .4byte gBattleTypeFlags
thumb_func_end BattleSetup_StartScriptedWildBattle
- thumb_func_start sub_807F904
-sub_807F904: @ 807F904
+ thumb_func_start ScrSpecial_StartMarowakBattle
+ScrSpecial_StartMarowakBattle: @ 807F904
push {lr}
sub sp, 0xC
bl ScriptContext2_Enable
@@ -408,10 +408,10 @@ _0807F960:
_0807F98C: .4byte gBattleTypeFlags
_0807F990: .4byte gEnemyParty
_0807F994: .4byte gUnknown_841D148
- thumb_func_end sub_807F904
+ thumb_func_end ScrSpecial_StartMarowakBattle
- thumb_func_start sub_807F998
-sub_807F998: @ 807F998
+ thumb_func_start ScrSpecial_StartSouthernIslandBattle
+ScrSpecial_StartSouthernIslandBattle: @ 807F998
push {lr}
bl ScriptContext2_Enable
ldr r1, _0807F9CC @ =gMain
@@ -436,10 +436,10 @@ sub_807F998: @ 807F998
_0807F9CC: .4byte gMain
_0807F9D0: .4byte sub_807FBA0
_0807F9D4: .4byte gBattleTypeFlags
- thumb_func_end sub_807F998
+ thumb_func_end ScrSpecial_StartSouthernIslandBattle
- thumb_func_start sub_807F9D8
-sub_807F9D8: @ 807F9D8
+ thumb_func_start Special_StartLegendaryBattle
+Special_StartLegendaryBattle: @ 807F9D8
push {lr}
bl ScriptContext2_Enable
ldr r1, _0807FA0C @ =gMain
@@ -508,10 +508,10 @@ _0807FA56:
bl IncrementGameStat
pop {r0}
bx r0
- thumb_func_end sub_807F9D8
+ thumb_func_end Special_StartLegendaryBattle
- thumb_func_start sub_807FA68
-sub_807FA68: @ 807FA68
+ thumb_func_start Special_StartGroudonKyogreBattle
+Special_StartGroudonKyogreBattle: @ 807FA68
push {lr}
bl ScriptContext2_Enable
ldr r1, _0807FA90 @ =gMain
@@ -547,10 +547,10 @@ _0807FAAA:
bl IncrementGameStat
pop {r0}
bx r0
- thumb_func_end sub_807FA68
+ thumb_func_end Special_StartGroudonKyogreBattle
- thumb_func_start sub_807FABC
-sub_807FABC: @ 807FABC
+ thumb_func_start Special_StartRegiBattle
+Special_StartRegiBattle: @ 807FABC
push {lr}
bl ScriptContext2_Enable
ldr r1, _0807FAEC @ =gMain
@@ -574,7 +574,7 @@ sub_807FABC: @ 807FABC
_0807FAEC: .4byte gMain
_0807FAF0: .4byte sub_807FBA0
_0807FAF4: .4byte gBattleTypeFlags
- thumb_func_end sub_807FABC
+ thumb_func_end Special_StartRegiBattle
thumb_func_start sub_807FAF8
sub_807FAF8: @ 807FAF8
@@ -1717,14 +1717,14 @@ _080803C4: .4byte gSelectedEventObject
_080803C8: .4byte gMapObjects
thumb_func_end sub_8080398
- thumb_func_start sub_80803CC
-sub_80803CC: @ 80803CC
+ thumb_func_start ScrSpecial_GetTrainerBattleMode
+ScrSpecial_GetTrainerBattleMode: @ 80803CC
ldr r0, _080803D4 @ =gUnknown_20386AC
ldrb r0, [r0]
bx lr
.align 2, 0
_080803D4: .4byte gUnknown_20386AC
- thumb_func_end sub_80803CC
+ thumb_func_end ScrSpecial_GetTrainerBattleMode
thumb_func_start sub_80803D8
sub_80803D8: @ 80803D8
@@ -1817,7 +1817,7 @@ BattleSetup_StartTrainerBattle: @ 8080464
ldr r4, _080804A0 @ =gBattleTypeFlags
movs r0, 0x8
str r0, [r4]
- bl sub_80803CC
+ bl ScrSpecial_GetTrainerBattleMode
lsls r0, 24
lsrs r0, 24
cmp r0, 0x9
@@ -1964,8 +1964,8 @@ _080805A6:
_080805AC: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
thumb_func_end sub_8080558
- thumb_func_start sub_80805B0
-sub_80805B0: @ 80805B0
+ thumb_func_start ScrSpecial_StartTrainerEyeRematch
+ScrSpecial_StartTrainerEyeRematch: @ 80805B0
push {lr}
ldr r1, _080805CC @ =gBattleTypeFlags
movs r0, 0x8
@@ -1981,16 +1981,16 @@ sub_80805B0: @ 80805B0
_080805CC: .4byte gBattleTypeFlags
_080805D0: .4byte gMain
_080805D4: .4byte sub_8080558
- thumb_func_end sub_80805B0
+ thumb_func_end ScrSpecial_StartTrainerEyeRematch
- thumb_func_start sub_80805D8
-sub_80805D8: @ 80805D8
+ thumb_func_start ScrSpecial_ShowTrainerIntroSpeech
+ScrSpecial_ShowTrainerIntroSpeech: @ 80805D8
push {lr}
bl sub_80806D8
bl ShowFieldMessage
pop {r0}
bx r0
- thumb_func_end sub_80805D8
+ thumb_func_end ScrSpecial_ShowTrainerIntroSpeech
thumb_func_start BattleSetup_GetScriptAddrAfterBattle
BattleSetup_GetScriptAddrAfterBattle: @ 80805E8
@@ -2024,14 +2024,14 @@ _08080610: .4byte gUnknown_20386C8
_08080614: .4byte EventScript_1C555B
thumb_func_end BattleSetup_GetTrainerPostBattleScript
- thumb_func_start sub_8080618
-sub_8080618: @ 8080618
+ thumb_func_start ScrSpecial_ShowTrainerNonBattlingSpeech
+ScrSpecial_ShowTrainerNonBattlingSpeech: @ 8080618
push {lr}
bl sub_8080734
bl ShowFieldMessage
pop {r0}
bx r0
- thumb_func_end sub_8080618
+ thumb_func_end ScrSpecial_ShowTrainerNonBattlingSpeech
thumb_func_start PlayTrainerEncounterMusic
PlayTrainerEncounterMusic: @ 8080628
diff --git a/asm/battle_tower.s b/asm/battle_tower.s
index 08fefffbc..72cba63a3 100644
--- a/asm/battle_tower.s
+++ b/asm/battle_tower.s
@@ -358,8 +358,8 @@ _080E5C20: .4byte gSaveBlock2Ptr
_080E5C24: .4byte 0x0000056c
thumb_func_end sub_80E5B14
- thumb_func_start sub_80E5C28
-sub_80E5C28: @ 80E5C28
+ thumb_func_start ChooseNextBattleTowerTrainer
+ChooseNextBattleTowerTrainer: @ 80E5C28
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -637,7 +637,7 @@ _080E5E4C: .4byte 0x00000572
_080E5E50: .4byte gSaveBlock2Ptr
_080E5E54: .4byte 0x0000056c
_080E5E58: .4byte 0x00000571
- thumb_func_end sub_80E5C28
+ thumb_func_end ChooseNextBattleTowerTrainer
thumb_func_start sub_80E5E5C
sub_80E5E5C: @ 80E5E5C
@@ -651,14 +651,14 @@ sub_80E5E5C: @ 80E5E5C
_080E5E6C: .4byte 0x00004010
thumb_func_end sub_80E5E5C
- thumb_func_start sub_80E5E70
-sub_80E5E70: @ 80E5E70
+ thumb_func_start SetEReaderTrainerGfxId
+SetEReaderTrainerGfxId: @ 80E5E70
push {lr}
movs r0, 0xC8
bl sub_80E5E5C
pop {r0}
bx r0
- thumb_func_end sub_80E5E70
+ thumb_func_end SetEReaderTrainerGfxId
thumb_func_start sub_80E5E7C
sub_80E5E7C: @ 80E5E7C
@@ -1700,8 +1700,8 @@ _080E6640: .4byte gUnknown_84020C4
_080E6644: .4byte 0x0000ffff
thumb_func_end sub_80E6564
- thumb_func_start sub_80E6648
-sub_80E6648: @ 80E6648
+ thumb_func_start CheckPartyBattleTowerBanlist
+CheckPartyBattleTowerBanlist: @ 80E6648
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -1854,7 +1854,7 @@ _080E6770:
_080E6780: .4byte gSpecialVar_0x8004
_080E6784: .4byte gSaveBlock2Ptr
_080E6788: .4byte 0x0000055c
- thumb_func_end sub_80E6648
+ thumb_func_end CheckPartyBattleTowerBanlist
thumb_func_start sub_80E678C
sub_80E678C: @ 80E678C
@@ -1918,8 +1918,8 @@ _080E67F0:
_080E67F8: .4byte gStringVar4
thumb_func_end sub_80E678C
- thumb_func_start sub_80E67FC
-sub_80E67FC: @ 80E67FC
+ thumb_func_start PrintBattleTowerTrainerGreeting
+PrintBattleTowerTrainerGreeting: @ 80E67FC
push {lr}
ldr r0, _080E6818 @ =gSaveBlock2Ptr
ldr r2, [r0]
@@ -1962,7 +1962,7 @@ _080E684C:
bx r0
.align 2, 0
_080E6850: .4byte 0xffffc154
- thumb_func_end sub_80E67FC
+ thumb_func_end PrintBattleTowerTrainerGreeting
thumb_func_start sub_80E6854
sub_80E6854: @ 80E6854
@@ -2048,8 +2048,8 @@ _080E68F8: .4byte sub_80E6854
_080E68FC: .4byte sub_800FD9C
thumb_func_end sub_80E68C4
- thumb_func_start sub_80E6900
-sub_80E6900: @ 80E6900
+ thumb_func_start StartSpecialBattle
+StartSpecialBattle: @ 80E6900
push {r4-r6,lr}
sub sp, 0x4
ldr r0, _080E691C @ =gUnknown_203AAB8
@@ -2168,10 +2168,10 @@ _080E69FC: .4byte gBattleTypeFlags
_080E6A00: .4byte 0x00000808
_080E6A04: .4byte gTrainerBattleOpponent_A
_080E6A08: .4byte sub_80E68C4
- thumb_func_end sub_80E6900
+ thumb_func_end StartSpecialBattle
- thumb_func_start sub_80E6A0C
-sub_80E6A0C: @ 80E6A0C
+ thumb_func_start SetBattleTowerProperty
+SetBattleTowerProperty: @ 80E6A0C
push {r4-r6,lr}
ldr r1, _080E6A34 @ =gSaveBlock2Ptr
ldr r0, [r1]
@@ -2469,10 +2469,10 @@ _080E6C80:
bx r0
.align 2, 0
_080E6C88: .4byte 0x0000055c
- thumb_func_end sub_80E6A0C
+ thumb_func_end SetBattleTowerProperty
- thumb_func_start sub_80E6C8C
-sub_80E6C8C: @ 80E6C8C
+ thumb_func_start BattleTowerUtil
+BattleTowerUtil: @ 80E6C8C
push {r4,lr}
ldr r1, _080E6CB4 @ =gSaveBlock2Ptr
ldr r0, [r1]
@@ -2652,10 +2652,10 @@ _080E6E08:
bx r0
.align 2, 0
_080E6E10: .4byte 0x0000055c
- thumb_func_end sub_80E6C8C
+ thumb_func_end BattleTowerUtil
- thumb_func_start sub_80E6E14
-sub_80E6E14: @ 80E6E14
+ thumb_func_start SetBattleTowerParty
+SetBattleTowerParty: @ 80E6E14
push {r4,r5,lr}
movs r2, 0
ldr r5, _080E6E3C @ =gUnknown_203B0D4
@@ -2671,7 +2671,7 @@ _080E6E1E:
adds r2, 0x1
cmp r2, 0x2
ble _080E6E1E
- bl sub_80A03D8
+ bl ReducePlayerPartyToThree
pop {r4,r5}
pop {r0}
bx r0
@@ -2679,7 +2679,7 @@ _080E6E1E:
_080E6E3C: .4byte gUnknown_203B0D4
_080E6E40: .4byte gSaveBlock2Ptr
_080E6E44: .4byte 0x0000056d
- thumb_func_end sub_80E6E14
+ thumb_func_end SetBattleTowerParty
thumb_func_start sub_80E6E48
sub_80E6E48: @ 80E6E48
@@ -2858,8 +2858,8 @@ _080E6FB0: .4byte 0x0000056d
_080E6FB4: .4byte gUnknown_2024220
thumb_func_end sub_80E6EE0
- thumb_func_start sub_80E6FB8
-sub_80E6FB8: @ 80E6FB8
+ thumb_func_start SaveBattleTowerProgress
+SaveBattleTowerProgress: @ 80E6FB8
push {r4,r5,lr}
ldr r0, _080E703C @ =gSaveBlock2Ptr
ldr r1, [r0]
@@ -2933,15 +2933,15 @@ _080E7048: .4byte 0x00000564
_080E704C: .4byte gBattleOutcome
_080E7050: .4byte 0x0000055d
_080E7054: .4byte 0x0000055e
- thumb_func_end sub_80E6FB8
+ thumb_func_end SaveBattleTowerProgress
- thumb_func_start sub_80E7058
-sub_80E7058: @ 80E7058
+ thumb_func_start BattleTower_SoftReset
+BattleTower_SoftReset: @ 80E7058
push {lr}
bl DoSoftReset
pop {r0}
bx r0
- thumb_func_end sub_80E7058
+ thumb_func_end BattleTower_SoftReset
thumb_func_start sub_80E7064
sub_80E7064: @ 80E7064
@@ -3142,8 +3142,8 @@ _080E71C8: .4byte 0x0000ffff
_080E71CC: .4byte 0x0000270f
thumb_func_end sub_80E7188
- thumb_func_start sub_80E71D0
-sub_80E71D0: @ 80E71D0
+ thumb_func_start DetermineBattleTowerPrize
+DetermineBattleTowerPrize: @ 80E71D0
push {r4,r5,lr}
ldr r4, _080E7214 @ =gSaveBlock2Ptr
ldr r1, [r4]
@@ -3201,10 +3201,10 @@ _080E7240:
bx r0
.align 2, 0
_080E7248: .4byte gUnknown_84020DA
- thumb_func_end sub_80E71D0
+ thumb_func_end DetermineBattleTowerPrize
- thumb_func_start sub_80E724C
-sub_80E724C: @ 80E724C
+ thumb_func_start GiveBattleTowerPrize
+GiveBattleTowerPrize: @ 80E724C
push {r4-r6,lr}
ldr r5, _080E7288 @ =gSaveBlock2Ptr
ldr r1, [r5]
@@ -3255,10 +3255,10 @@ _080E72AA:
.align 2, 0
_080E72B0: .4byte gSpecialVar_Result
_080E72B4: .4byte 0x0000055e
- thumb_func_end sub_80E724C
+ thumb_func_end GiveBattleTowerPrize
- thumb_func_start sub_80E72B8
-sub_80E72B8: @ 80E72B8
+ thumb_func_start AwardBattleTowerRibbons
+AwardBattleTowerRibbons: @ 80E72B8
push {r4-r7,lr}
ldr r0, _080E7334 @ =gSaveBlock2Ptr
ldr r0, [r0]
@@ -3328,7 +3328,7 @@ _080E7338: .4byte 0x0000055c
_080E733C: .4byte gSpecialVar_Result
_080E7340: .4byte 0x0000056d
_080E7344: .4byte gPlayerParty
- thumb_func_end sub_80E72B8
+ thumb_func_end AwardBattleTowerRibbons
thumb_func_start sub_80E7348
sub_80E7348: @ 80E7348
@@ -3469,8 +3469,8 @@ _080E7458: .4byte gSaveBlock2Ptr
_080E745C: .4byte 0x000004a1
thumb_func_end GetEreaderTrainerClassId
- thumb_func_start sub_80E7460
-sub_80E7460: @ 80E7460
+ thumb_func_start CopyEReaderTrainerName5
+CopyEReaderTrainerName5: @ 80E7460
push {r4,lr}
adds r3, r0, 0
movs r2, 0
@@ -3495,7 +3495,7 @@ _080E746E:
.align 2, 0
_080E7488: .4byte gSaveBlock2Ptr
_080E748C: .4byte 0x000004a4
- thumb_func_end sub_80E7460
+ thumb_func_end CopyEReaderTrainerName5
thumb_func_start ValidateEReaderTrainer
ValidateEReaderTrainer: @ 80E7490
@@ -3594,8 +3594,8 @@ _080E752A:
bx r0
thumb_func_end sub_80E7524
- thumb_func_start sub_80E7538
-sub_80E7538: @ 80E7538
+ thumb_func_start PrintEReaderTrainerGreeting
+PrintEReaderTrainerGreeting: @ 80E7538
push {lr}
ldr r0, _080E754C @ =gSaveBlock2Ptr
ldr r0, [r0]
@@ -3607,7 +3607,7 @@ sub_80E7538: @ 80E7538
bx r0
.align 2, 0
_080E754C: .4byte gSaveBlock2Ptr
- thumb_func_end sub_80E7538
+ thumb_func_end PrintEReaderTrainerGreeting
thumb_func_start sub_80E7550
sub_80E7550: @ 80E7550
@@ -3649,8 +3649,8 @@ _080E7594: .4byte gSaveBlock2Ptr
_080E7598: .4byte 0x000004bc
thumb_func_end sub_80E7550
- thumb_func_start sub_80E759C
-sub_80E759C: @ 80E759C
+ thumb_func_start Dummy_TryEnableBravoTrainerBattleTower
+Dummy_TryEnableBravoTrainerBattleTower: @ 80E759C
push {lr}
movs r0, 0x1
_080E75A0:
@@ -3659,6 +3659,6 @@ _080E75A0:
bge _080E75A0
pop {r0}
bx r0
- thumb_func_end sub_80E759C
+ thumb_func_end Dummy_TryEnableBravoTrainerBattleTower
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 76346a28c..4c265b65f 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -1625,7 +1625,7 @@ _08081404:
.align 2, 0
_0808140C: .4byte gBattleTypeFlags
_08081410:
- bl sub_80A03D8
+ bl ReducePlayerPartyToThree
ldr r1, _08081440 @ =gBattleTypeFlags
movs r0, 0x4B
_08081418:
@@ -1848,7 +1848,7 @@ _080815D4:
.align 2, 0
_080815DC: .4byte gBattleTypeFlags
_080815E0:
- bl sub_80A03D8
+ bl ReducePlayerPartyToThree
ldr r1, _08081610 @ =gBattleTypeFlags
movs r0, 0x4B
_080815E8:
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 26d7ac8bc..0daa8b2bc 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -576,8 +576,8 @@ _080BDB14: .4byte 0x00002cc4
_080BDB18: .4byte gStringVar4
thumb_func_end sub_80BDA7C
- thumb_func_start sub_80BDB1C
-sub_80BDB1C: @ 80BDB1C
+ thumb_func_start BufferRandomHobbyOrLifestyleString
+BufferRandomHobbyOrLifestyleString: @ 80BDB1C
push {lr}
bl Random
movs r1, 0x1
@@ -597,7 +597,7 @@ _080BDB2E:
bx r0
.align 2, 0
_080BDB44: .4byte gStringVar2
- thumb_func_end sub_80BDB1C
+ thumb_func_end BufferRandomHobbyOrLifestyleString
thumb_func_start sub_80BDB48
sub_80BDB48: @ 80BDB48
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 842c9c33e..c265d7d01 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -366,9 +366,9 @@ sub_806CAC8: @ 806CAC8
bl IncrementGameStat
bl MENewsJisanStepCounter
bl IncrementRenewableHiddenItemStepCounter
- bl sub_80CC918
- bl sub_80CB054
- bl sub_80CCFBC
+ bl RunMassageCooldownStepCounter
+ bl IncrementResortGorgeousStepCounter
+ bl BirthIslandDeoxysStepCounter
mov r0, sp
adds r1, r4, 0
adds r2, r6, 0
diff --git a/asm/field_specials.s b/asm/field_specials.s
deleted file mode 100644
index 653923fda..000000000
--- a/asm/field_specials.s
+++ /dev/null
@@ -1,5732 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80CA618
-sub_80CA618: @ 80CA618
- push {lr}
- bl sub_8112364
- ldr r0, _080CA62C @ =CB2_ShowDiploma
- bl SetMainCallback2
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .align 2, 0
-_080CA62C: .4byte CB2_ShowDiploma
- thumb_func_end sub_80CA618
-
- thumb_func_start sub_80CA630
-sub_80CA630: @ 80CA630
- push {r4,lr}
- ldr r0, _080CA65C @ =gPlayerAvatar
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080CA644
- movs r0, 0x2
- bl SetPlayerAvatarTransitionFlags
-_080CA644:
- movs r4, 0x8D
- lsls r4, 1
- adds r0, r4, 0
- bl Overworld_SetSavedMusic
- adds r0, r4, 0
- bl Overworld_ChangeMusicTo
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CA65C: .4byte gPlayerAvatar
- thumb_func_end sub_80CA630
-
- thumb_func_start nullsub_74
-nullsub_74: @ 80CA660
- bx lr
- thumb_func_end nullsub_74
-
- thumb_func_start sub_80CA664
-sub_80CA664: @ 80CA664
- push {lr}
- movs r0, 0x4
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _080CA676
- movs r0, 0x1
- b _080CA688
-_080CA676:
- movs r0, 0x2
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- bne _080CA686
- movs r0, 0
- b _080CA688
-_080CA686:
- movs r0, 0x2
-_080CA688:
- pop {r1}
- bx r1
- thumb_func_end sub_80CA664
-
- thumb_func_start sub_80CA68C
-sub_80CA68C: @ 80CA68C
- push {lr}
- ldr r0, _080CA698 @ =gStringVar4
- bl ShowFieldMessage
- pop {r0}
- bx r0
- .align 2, 0
-_080CA698: .4byte gStringVar4
- thumb_func_end sub_80CA68C
-
- thumb_func_start sub_80CA69C
-sub_80CA69C: @ 80CA69C
- ldr r1, _080CA6B0 @ =gSpecialVar_0x8004
- ldr r0, _080CA6B4 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- ldrh r0, [r2]
- strh r0, [r1]
- ldr r1, _080CA6B8 @ =gSpecialVar_0x8005
- ldrh r0, [r2, 0x2]
- strh r0, [r1]
- bx lr
- .align 2, 0
-_080CA6B0: .4byte gSpecialVar_0x8004
-_080CA6B4: .4byte gSaveBlock1Ptr
-_080CA6B8: .4byte gSpecialVar_0x8005
- thumb_func_end sub_80CA69C
-
- thumb_func_start sub_80CA6BC
-sub_80CA6BC: @ 80CA6BC
- push {lr}
- ldr r0, _080CA6D8 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0xB]
- lsls r1, 8
- ldrb r0, [r0, 0xA]
- orrs r0, r1
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_080CA6D8: .4byte gSaveBlock2Ptr
- thumb_func_end sub_80CA6BC
-
- thumb_func_start sub_80CA6DC
-sub_80CA6DC: @ 80CA6DC
- push {lr}
- ldr r0, _080CA6F4 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _080CA700
- ldr r0, _080CA6F8 @ =gStringVar1
- ldr r1, _080CA6FC @ =gUnknown_8417FBB
- bl StringCopy
- b _080CA708
- .align 2, 0
-_080CA6F4: .4byte gSaveBlock2Ptr
-_080CA6F8: .4byte gStringVar1
-_080CA6FC: .4byte gUnknown_8417FBB
-_080CA700:
- ldr r0, _080CA70C @ =gStringVar1
- ldr r1, _080CA710 @ =gUnknown_8417FC3
- bl StringCopy
-_080CA708:
- pop {r0}
- bx r0
- .align 2, 0
-_080CA70C: .4byte gStringVar1
-_080CA710: .4byte gUnknown_8417FC3
- thumb_func_end sub_80CA6DC
-
- thumb_func_start sub_80CA714
-sub_80CA714: @ 80CA714
- push {lr}
- ldr r0, _080CA72C @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _080CA738
- ldr r0, _080CA730 @ =gStringVar1
- ldr r1, _080CA734 @ =gUnknown_8417FD0
- bl StringCopy
- b _080CA740
- .align 2, 0
-_080CA72C: .4byte gSaveBlock2Ptr
-_080CA730: .4byte gStringVar1
-_080CA734: .4byte gUnknown_8417FD0
-_080CA738:
- ldr r0, _080CA744 @ =gStringVar1
- ldr r1, _080CA748 @ =gUnknown_8417FCC
- bl StringCopy
-_080CA740:
- pop {r0}
- bx r0
- .align 2, 0
-_080CA744: .4byte gStringVar1
-_080CA748: .4byte gUnknown_8417FCC
- thumb_func_end sub_80CA714
-
- thumb_func_start Special_GetBattleOutcome
-Special_GetBattleOutcome: @ 80CA74C
- ldr r0, _080CA754 @ =gBattleOutcome
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080CA754: .4byte gBattleOutcome
- thumb_func_end Special_GetBattleOutcome
-
- thumb_func_start Special_SetHiddenItemFlag
-Special_SetHiddenItemFlag: @ 80CA758
- push {lr}
- ldr r0, _080CA768 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- bl FlagSet
- pop {r0}
- bx r0
- .align 2, 0
-_080CA768: .4byte gSpecialVar_0x8004
- thumb_func_end Special_SetHiddenItemFlag
-
- thumb_func_start sub_80CA76C
-sub_80CA76C: @ 80CA76C
- push {r4,lr}
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r1, r0
- ldr r0, _080CA790 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0xFF
- bne _080CA794
- movs r0, 0x6
- b _080CA7E6
- .align 2, 0
-_080CA790: .4byte gPlayerParty
-_080CA794:
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0xC7
- bls _080CA7A4
- movs r0, 0x5
- b _080CA7E6
-_080CA7A4:
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0x95
- bls _080CA7B4
- movs r0, 0x4
- b _080CA7E6
-_080CA7B4:
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0x63
- bls _080CA7C4
- movs r0, 0x3
- b _080CA7E6
-_080CA7C4:
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0x31
- bls _080CA7D4
- movs r0, 0x2
- b _080CA7E6
-_080CA7D4:
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0
- bne _080CA7E4
- movs r0, 0
- b _080CA7E6
-_080CA7E4:
- movs r0, 0x1
-_080CA7E6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CA76C
-
- thumb_func_start sub_80CA7EC
-sub_80CA7EC: @ 80CA7EC
- push {lr}
- bl sub_8112364
- ldr r1, _080CA800 @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
- movs r0, 0x1
- bl sub_80BFF50
- pop {r0}
- bx r0
- .align 2, 0
-_080CA800: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
- thumb_func_end sub_80CA7EC
-
- thumb_func_start sub_80CA804
-sub_80CA804: @ 80CA804
- push {r4-r6,lr}
- movs r5, 0
- ldr r6, _080CA850 @ =gBaseStats
-_080CA80A:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _080CA854 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x5
- bl GetMonData
- cmp r0, 0
- beq _080CA858
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080CA858
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r1, 0x6]
- cmp r0, 0xC
- beq _080CA84C
- ldrb r0, [r1, 0x7]
- cmp r0, 0xC
- bne _080CA858
-_080CA84C:
- movs r0, 0x1
- b _080CA864
- .align 2, 0
-_080CA850: .4byte gBaseStats
-_080CA854: .4byte gPlayerParty
-_080CA858:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _080CA80A
- movs r0, 0
-_080CA864:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80CA804
-
- thumb_func_start sub_80CA86C
-sub_80CA86C: @ 80CA86C
- push {r4,lr}
- ldr r4, _080CA8A0 @ =sub_80CA8A8
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080CA89A
- adds r0, r4, 0
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080CA8A4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0x8]
- strh r0, [r1, 0xA]
-_080CA89A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CA8A0: .4byte sub_80CA8A8
-_080CA8A4: .4byte gTasks
- thumb_func_end sub_80CA86C
-
- thumb_func_start sub_80CA8A8
-sub_80CA8A8: @ 80CA8A8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CA8F4 @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- cmp r0, 0x6
- bne _080CA8E6
- ldrh r1, [r4]
- movs r0, 0x1
- ands r0, r1
- bl sub_80CA8F8
- bl DrawWholeMapView
- movs r0, 0
- strh r0, [r4, 0x2]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _080CA8E6
- adds r0, r5, 0
- bl DestroyTask
-_080CA8E6:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CA8F4: .4byte gTasks+0x8
- thumb_func_end sub_80CA8A8
-
- thumb_func_start sub_80CA8F8
-sub_80CA8F8: @ 80CA8F8
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r4, 0
- movs r7, 0
- movs r5, 0
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x3
- beq _080CA926
- cmp r0, 0x3
- bgt _080CA91C
- cmp r0, 0x2
- beq _080CA922
- b _080CA92E
-_080CA91C:
- cmp r1, 0x4
- beq _080CA92A
- b _080CA92E
-_080CA922:
- movs r7, 0
- b _080CA92C
-_080CA926:
- movs r7, 0xFF
- b _080CA92C
-_080CA92A:
- movs r7, 0x1
-_080CA92C:
- movs r5, 0xFF
-_080CA92E:
- cmp r6, 0
- beq _080CA954
- ldr r0, _080CA940 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0
- bne _080CA944
- movs r4, 0x62
- b _080CA96E
- .align 2, 0
-_080CA940: .4byte gSpecialVar_0x8004
-_080CA944:
- cmp r0, 0x1
- beq _080CA94C
- cmp r0, 0x2
- bne _080CA96E
-_080CA94C:
- ldr r4, _080CA950 @ =0x0000028f
- b _080CA96E
- .align 2, 0
-_080CA950: .4byte 0x0000028f
-_080CA954:
- ldr r0, _080CA960 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0
- bne _080CA964
- movs r4, 0x63
- b _080CA96E
- .align 2, 0
-_080CA960: .4byte gSpecialVar_0x8004
-_080CA964:
- cmp r0, 0x1
- beq _080CA96C
- cmp r0, 0x2
- bne _080CA96E
-_080CA96C:
- ldr r4, _080CA9A0 @ =0x0000028a
-_080CA96E:
- ldr r0, _080CA9A4 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r7, 24
- asrs r1, 24
- adds r0, r1
- adds r0, 0x7
- movs r3, 0x2
- ldrsh r1, [r2, r3]
- lsls r2, r5, 24
- asrs r2, 24
- adds r1, r2
- adds r1, 0x7
- movs r3, 0xC0
- lsls r3, 4
- adds r2, r3, 0
- orrs r4, r2
- adds r2, r4, 0
- bl MapGridSetMetatileIdAt
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CA9A0: .4byte 0x0000028a
-_080CA9A4: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80CA8F8
-
- thumb_func_start sub_80CA9A8
-sub_80CA9A8: @ 80CA9A8
- push {r4-r6,lr}
- movs r4, 0
- movs r6, 0
- movs r5, 0
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x3
- beq _080CA9D2
- cmp r0, 0x3
- bgt _080CA9C8
- cmp r0, 0x2
- beq _080CA9CE
- b _080CA9DA
-_080CA9C8:
- cmp r1, 0x4
- beq _080CA9D6
- b _080CA9DA
-_080CA9CE:
- movs r6, 0
- b _080CA9D8
-_080CA9D2:
- movs r6, 0xFF
- b _080CA9D8
-_080CA9D6:
- movs r6, 0x1
-_080CA9D8:
- movs r5, 0xFF
-_080CA9DA:
- ldr r0, _080CA9E8 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0
- bne _080CA9EC
- movs r4, 0x62
- b _080CA9F6
- .align 2, 0
-_080CA9E8: .4byte gSpecialVar_0x8004
-_080CA9EC:
- cmp r0, 0x1
- beq _080CA9F4
- cmp r0, 0x2
- bne _080CA9F6
-_080CA9F4:
- ldr r4, _080CAA2C @ =0x0000028f
-_080CA9F6:
- ldr r0, _080CAA30 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0
- ldrsh r0, [r2, r1]
- lsls r1, r6, 24
- asrs r1, 24
- adds r0, r1
- adds r0, 0x7
- movs r3, 0x2
- ldrsh r1, [r2, r3]
- lsls r2, r5, 24
- asrs r2, 24
- adds r1, r2
- adds r1, 0x7
- movs r3, 0xC0
- lsls r3, 4
- adds r2, r3, 0
- orrs r4, r2
- adds r2, r4, 0
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CAA2C: .4byte 0x0000028f
-_080CAA30: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80CA9A8
-
- thumb_func_start SpawnCameraObject
-SpawnCameraObject: @ 80CAA34
- push {lr}
- sub sp, 0x8
- ldr r0, _080CAA80 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r3, [r0]
- adds r3, 0x7
- lsls r3, 16
- asrs r3, 16
- ldrh r0, [r0, 0x2]
- adds r0, 0x7
- lsls r0, 16
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- movs r0, 0x12
- movs r1, 0x8
- movs r2, 0x7F
- bl SpawnSpecialFieldObjectParameterized
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080CAA84 @ =gMapObjects
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x1]
- movs r2, 0x20
- orrs r0, r2
- strb r0, [r1, 0x1]
- ldrb r0, [r1, 0x4]
- bl CameraObjectSetFollowedObjectId
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_080CAA80: .4byte gSaveBlock1Ptr
-_080CAA84: .4byte gMapObjects
- thumb_func_end SpawnCameraObject
-
- thumb_func_start RemoveCameraObject
-RemoveCameraObject: @ 80CAA88
- push {lr}
- bl GetPlayerAvatarObjectId
- lsls r0, 24
- lsrs r0, 24
- bl CameraObjectSetFollowedObjectId
- ldr r0, _080CAAA8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0x7F
- bl RemoveFieldObjectByLocalIdAndMap
- pop {r0}
- bx r0
- .align 2, 0
-_080CAAA8: .4byte gSaveBlock1Ptr
- thumb_func_end RemoveCameraObject
-
- thumb_func_start sub_80CAAAC
-sub_80CAAAC: @ 80CAAAC
- push {lr}
- ldr r0, _080CAAB8 @ =gStringVar1
- bl sub_80E7460
- pop {r0}
- bx r0
- .align 2, 0
-_080CAAB8: .4byte gStringVar1
- thumb_func_end sub_80CAAAC
-
- thumb_func_start sub_80CAABC
-sub_80CAABC: @ 80CAABC
- push {lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x16
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _080CAADC @ =gUnknown_83F5B1A
- adds r0, r1
- ldrb r0, [r0]
- pop {r1}
- bx r1
- .align 2, 0
-_080CAADC: .4byte gUnknown_83F5B1A
- thumb_func_end sub_80CAABC
-
- thumb_func_start LeadMonHasEffortRibbon
-LeadMonHasEffortRibbon: @ 80CAAE0
- push {lr}
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _080CAB04 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x47
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_080CAB04: .4byte gPlayerParty
- thumb_func_end LeadMonHasEffortRibbon
-
- thumb_func_start GivLeadMonEffortRibbon
-GivLeadMonEffortRibbon: @ 80CAB08
- push {lr}
- sub sp, 0x4
- movs r0, 0x2A
- bl IncrementGameStat
- ldr r0, _080CAB3C @ =0x0000083b
- bl FlagSet
- movs r1, 0x1
- mov r0, sp
- strb r1, [r0]
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _080CAB40 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x47
- mov r2, sp
- bl SetMonData
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080CAB3C: .4byte 0x0000083b
-_080CAB40: .4byte gPlayerParty
- thumb_func_end GivLeadMonEffortRibbon
-
- thumb_func_start ScrSpecial_AreLeadMonEVsMaxedOut
-ScrSpecial_AreLeadMonEVsMaxedOut: @ 80CAB44
- push {lr}
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _080CAB68 @ =gPlayerParty
- adds r0, r1
- bl GetMonEVCount
- lsls r0, 16
- ldr r1, _080CAB6C @ =0x01fd0000
- cmp r0, r1
- bhi _080CAB70
- movs r0, 0
- b _080CAB72
- .align 2, 0
-_080CAB68: .4byte gPlayerParty
-_080CAB6C: .4byte 0x01fd0000
-_080CAB70:
- movs r0, 0x1
-_080CAB72:
- pop {r1}
- bx r1
- thumb_func_end ScrSpecial_AreLeadMonEVsMaxedOut
-
- thumb_func_start sub_80CAB78
-sub_80CAB78: @ 80CAB78
- push {r4-r6,lr}
- ldr r0, _080CABB4 @ =0x00004031
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl GetStarterPokemon
- lsls r0, 16
- lsrs r6, r0, 16
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- cmp r4, r5
- bcs _080CABC6
-_080CAB9A:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _080CABB8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- cmp r0, r6
- bne _080CABBC
- movs r0, 0x1
- b _080CABC8
- .align 2, 0
-_080CABB4: .4byte 0x00004031
-_080CABB8: .4byte gPlayerParty
-_080CABBC:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _080CAB9A
-_080CABC6:
- movs r0, 0
-_080CABC8:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80CAB78
-
- thumb_func_start sub_80CABD0
-sub_80CABD0: @ 80CABD0
- push {r4-r6,lr}
- movs r6, 0
-_080CABD4:
- movs r4, 0
- lsls r5, r6, 24
-_080CABD8:
- lsls r1, r4, 24
- lsrs r1, 24
- lsrs r0, r5, 24
- movs r2, 0xB
- bl GetBoxMonDataFromAnyBox
- cmp r0, 0
- bne _080CABEC
- movs r0, 0x1
- b _080CAC02
-_080CABEC:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1D
- bls _080CABD8
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0xD
- bls _080CABD4
- movs r0, 0
-_080CAC02:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80CABD0
-
- thumb_func_start sub_80CAC08
-sub_80CAC08: @ 80CAC08
- push {lr}
- ldr r0, _080CAC1C @ =gPlayerParty
- movs r1, 0x3F
- bl CheckPartyPokerus
- lsls r0, 24
- cmp r0, 0
- beq _080CAC20
- movs r0, 0x1
- b _080CAC22
- .align 2, 0
-_080CAC1C: .4byte gPlayerParty
-_080CAC20:
- movs r0, 0
-_080CAC22:
- pop {r1}
- bx r1
- thumb_func_end sub_80CAC08
-
- thumb_func_start sub_80CAC28
-sub_80CAC28: @ 80CAC28
- push {lr}
- ldr r0, _080CAC6C @ =sub_80CAC84
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080CAC70 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _080CAC74 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- movs r2, 0
- strh r0, [r1, 0x8]
- strh r2, [r1, 0xA]
- ldr r0, _080CAC78 @ =gSpecialVar_0x8006
- ldrh r0, [r0]
- strh r0, [r1, 0xC]
- ldr r0, _080CAC7C @ =gSpecialVar_0x8007
- ldrh r0, [r0]
- strh r0, [r1, 0xE]
- ldr r0, _080CAC80 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- strh r0, [r1, 0x10]
- movs r0, 0
- bl SetCameraPanningCallback
- movs r0, 0xCF
- bl PlaySE
- pop {r0}
- bx r0
- .align 2, 0
-_080CAC6C: .4byte sub_80CAC84
-_080CAC70: .4byte gTasks
-_080CAC74: .4byte gSpecialVar_0x8005
-_080CAC78: .4byte gSpecialVar_0x8006
-_080CAC7C: .4byte gSpecialVar_0x8007
-_080CAC80: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80CAC28
-
- thumb_func_start sub_80CAC84
-sub_80CAC84: @ 80CAC84
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CACE4 @ =gTasks+0x8
- adds r4, r0, r1
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- movs r2, 0x6
- ldrsh r1, [r4, r2]
- bl __modsi3
- cmp r0, 0
- bne _080CACDC
- strh r0, [r4, 0x2]
- ldrh r0, [r4, 0x4]
- subs r0, 0x1
- strh r0, [r4, 0x4]
- ldrh r0, [r4]
- negs r0, r0
- strh r0, [r4]
- ldrh r0, [r4, 0x8]
- negs r0, r0
- strh r0, [r4, 0x8]
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- bl SetCameraPanning
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080CACDC
- adds r0, r5, 0
- bl sub_80CACE8
- bl InstallCameraPanAheadCallback
-_080CACDC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CACE4: .4byte gTasks+0x8
- thumb_func_end sub_80CAC84
-
- thumb_func_start sub_80CACE8
-sub_80CACE8: @ 80CACE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- bl EnableBothScriptContexts
- pop {r0}
- bx r0
- thumb_func_end sub_80CACE8
-
- thumb_func_start GetLeadMonIndex
-GetLeadMonIndex: @ 80CACFC
- push {r4-r6,lr}
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- cmp r5, r6
- bcs _080CAD4A
-_080CAD0C:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _080CAD3C @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080CAD40
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _080CAD40
- adds r0, r5, 0
- b _080CAD4C
- .align 2, 0
-_080CAD3C: .4byte gPlayerParty
-_080CAD40:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r6
- bcc _080CAD0C
-_080CAD4A:
- movs r0, 0
-_080CAD4C:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetLeadMonIndex
-
- thumb_func_start sub_80CAD54
-sub_80CAD54: @ 80CAD54
- push {lr}
- ldr r0, _080CAD74 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CAD78 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_080CAD74: .4byte gSpecialVar_0x8004
-_080CAD78: .4byte gPlayerParty
- thumb_func_end sub_80CAD54
-
- thumb_func_start sub_80CAD7C
-sub_80CAD7C: @ 80CAD7C
- push {r4,lr}
- ldr r0, _080CADA8 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CADAC @ =gPlayerParty
- adds r0, r1
- ldr r4, _080CADB0 @ =gStringVar1
- movs r1, 0x7
- adds r2, r4, 0
- bl GetMonData
- ldr r0, _080CADB4 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- adds r1, r4, 0
- bl StringCompare
- cmp r0, 0
- beq _080CADB8
- movs r0, 0x1
- b _080CADBA
- .align 2, 0
-_080CADA8: .4byte gSpecialVar_0x8004
-_080CADAC: .4byte gPlayerParty
-_080CADB0: .4byte gStringVar1
-_080CADB4: .4byte gSaveBlock2Ptr
-_080CADB8:
- movs r0, 0
-_080CADBA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CAD7C
-
- thumb_func_start nullsub_75
-nullsub_75: @ 80CADC0
- bx lr
- thumb_func_end nullsub_75
-
- thumb_func_start sub_80CADC4
-sub_80CADC4: @ 80CADC4
- push {lr}
- sub sp, 0x10
- movs r1, 0xFF
- add r0, sp, 0xC
- strb r1, [r0]
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- movs r1, 0x2
- add r2, sp, 0xC
- movs r3, 0
- bl AddTextPrinterParameterized
- bl sub_809D424
- add sp, 0x10
- pop {r0}
- bx r0
- thumb_func_end sub_80CADC4
-
- thumb_func_start Special_SetVermilionTrashCans
-Special_SetVermilionTrashCans: @ 80CADEC
- push {r4,r5,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- bl __umodsi3
- adds r0, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, _080CAE20 @ =gSpecialVar_0x8004
- strh r2, [r1]
- ldr r0, _080CAE24 @ =gSpecialVar_0x8005
- strh r2, [r0]
- ldrh r0, [r1]
- subs r0, 0x1
- cmp r0, 0xE
- bls _080CAE14
- b _080CB01C
-_080CAE14:
- lsls r0, 2
- ldr r1, _080CAE28 @ =_080CAE2C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CAE20: .4byte gSpecialVar_0x8004
-_080CAE24: .4byte gSpecialVar_0x8005
-_080CAE28: .4byte _080CAE2C
- .align 2, 0
-_080CAE2C:
- .4byte _080CAE68
- .4byte _080CAE90
- .4byte _080CAE90
- .4byte _080CAE90
- .4byte _080CAEC8
- .4byte _080CAEE8
- .4byte _080CAF28
- .4byte _080CAF28
- .4byte _080CAF28
- .4byte _080CAF68
- .4byte _080CAF9C
- .4byte _080CAFC4
- .4byte _080CAFC4
- .4byte _080CAFC4
- .4byte _080CAFF8
-_080CAE68:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080CAE84
- ldr r1, _080CAE80 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAE80: .4byte gSpecialVar_0x8005
-_080CAE84:
- ldr r1, _080CAE8C @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAE8C: .4byte gSpecialVar_0x8005
-_080CAE90:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- bne _080CAEB4
- ldr r1, _080CAEB0 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAEB0: .4byte gSpecialVar_0x8005
-_080CAEB4:
- cmp r2, 0x1
- beq _080CAEBA
- b _080CB014
-_080CAEBA:
- ldr r1, _080CAEC4 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAEC4: .4byte gSpecialVar_0x8005
-_080CAEC8:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080CAEDA
- b _080CB014
-_080CAEDA:
- ldr r1, _080CAEE4 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAEE4: .4byte gSpecialVar_0x8005
-_080CAEE8:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- bne _080CAF0C
- ldr r1, _080CAF08 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF08: .4byte gSpecialVar_0x8005
-_080CAF0C:
- cmp r2, 0x1
- bne _080CAF1C
- ldr r1, _080CAF18 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAF18: .4byte gSpecialVar_0x8005
-_080CAF1C:
- ldr r1, _080CAF24 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF24: .4byte gSpecialVar_0x8005
-_080CAF28:
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r2, r1, 16
- cmp r2, 0
- bne _080CAF48
- ldr r1, _080CAF44 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF44: .4byte gSpecialVar_0x8005
-_080CAF48:
- cmp r2, 0x1
- bne _080CAF58
- ldr r1, _080CAF54 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAF54: .4byte gSpecialVar_0x8005
-_080CAF58:
- cmp r2, 0x2
- bne _080CB014
- ldr r1, _080CAF64 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF64: .4byte gSpecialVar_0x8005
-_080CAF68:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- bne _080CAF8C
- ldr r1, _080CAF88 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF88: .4byte gSpecialVar_0x8005
-_080CAF8C:
- cmp r2, 0x1
- bne _080CB014
- ldr r1, _080CAF98 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAF98: .4byte gSpecialVar_0x8005
-_080CAF9C:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080CAFB8
- ldr r1, _080CAFB4 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAFB4: .4byte gSpecialVar_0x8005
-_080CAFB8:
- ldr r1, _080CAFC0 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAFC0: .4byte gSpecialVar_0x8005
-_080CAFC4:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- bne _080CAFE8
- ldr r1, _080CAFE4 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CAFE4: .4byte gSpecialVar_0x8005
-_080CAFE8:
- cmp r2, 0x1
- bne _080CB014
- ldr r1, _080CAFF4 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- adds r0, 0x1
- b _080CB01A
- .align 2, 0
-_080CAFF4: .4byte gSpecialVar_0x8005
-_080CAFF8:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080CB014
- ldr r1, _080CB010 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x5
- b _080CB01A
- .align 2, 0
-_080CB010: .4byte gSpecialVar_0x8005
-_080CB014:
- ldr r1, _080CB040 @ =gSpecialVar_0x8005
- ldrh r0, [r1]
- subs r0, 0x1
-_080CB01A:
- strh r0, [r1]
-_080CB01C:
- ldr r5, _080CB040 @ =gSpecialVar_0x8005
- ldrh r0, [r5]
- cmp r0, 0xF
- bls _080CB04C
- ldr r0, _080CB044 @ =gSpecialVar_0x8004
- ldrh r4, [r0]
- adds r0, r4, 0
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _080CB048
- cmp r0, 0
- bne _080CB048
- subs r0, r4, 0x1
- b _080CB04A
- .align 2, 0
-_080CB040: .4byte gSpecialVar_0x8005
-_080CB044: .4byte gSpecialVar_0x8004
-_080CB048:
- adds r0, r4, 0x1
-_080CB04A:
- strh r0, [r5]
-_080CB04C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end Special_SetVermilionTrashCans
-
- thumb_func_start sub_80CB054
-sub_80CB054: @ 80CB054
- push {r4-r6,lr}
- ldr r5, _080CB08C @ =0x00004035
- adds r0, r5, 0
- bl VarGet
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r6, _080CB090 @ =0x00004036
- adds r0, r6, 0
- bl VarGet
- lsls r0, 16
- cmp r0, 0
- beq _080CB0A0
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0xF9
- bls _080CB098
- ldr r1, _080CB094 @ =0x0000ffff
- adds r0, r6, 0
- bl VarSet
- adds r0, r5, 0
- movs r1, 0
- bl VarSet
- b _080CB0A0
- .align 2, 0
-_080CB08C: .4byte 0x00004035
-_080CB090: .4byte 0x00004036
-_080CB094: .4byte 0x0000ffff
-_080CB098:
- adds r0, r5, 0
- adds r1, r4, 0
- bl VarSet
-_080CB0A0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80CB054
-
- thumb_func_start sub_80CB0A8
-sub_80CB0A8: @ 80CB0A8
- push {r4,lr}
- ldr r4, _080CB10C @ =0x00004036
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080CB0C0
- ldr r0, _080CB110 @ =0x0000ffff
- cmp r1, r0
- bne _080CB0EA
-_080CB0C0:
- bl sub_80CB124
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- ldr r4, _080CB114 @ =0x0000403b
- bl sub_80CB198
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- ldr r0, _080CB118 @ =0x00004035
- movs r1, 0
- bl VarSet
-_080CB0EA:
- ldr r4, _080CB11C @ =gStringVar1
- ldr r0, _080CB10C @ =0x00004036
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xB
- muls r1, r0
- ldr r0, _080CB120 @ =gSpeciesNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB10C: .4byte 0x00004036
-_080CB110: .4byte 0x0000ffff
-_080CB114: .4byte 0x0000403b
-_080CB118: .4byte 0x00004035
-_080CB11C: .4byte gStringVar1
-_080CB120: .4byte gSpeciesNames
- thumb_func_end sub_80CB0A8
-
- thumb_func_start sub_80CB124
-sub_80CB124: @ 80CB124
- push {r4,r5,lr}
- movs r5, 0
-_080CB128:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _080CB160 @ =0x0000019b
- bl __umodsi3
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- bl GetSetPokedexFlag
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x1
- beq _080CB18E
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x63
- bls _080CB128
- b _080CB176
- .align 2, 0
-_080CB160: .4byte 0x0000019b
-_080CB164:
- cmp r4, 0x1
- bne _080CB170
- ldr r4, _080CB16C @ =0x0000019b
- b _080CB176
- .align 2, 0
-_080CB16C: .4byte 0x0000019b
-_080CB170:
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
-_080CB176:
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- bl GetSetPokedexFlag
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x1
- bne _080CB164
-_080CB18E:
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80CB124
-
- thumb_func_start sub_80CB198
-sub_80CB198: @ 80CB198
- push {r4,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1D
- bhi _080CB1D0
- ldr r4, _080CB1CC @ =gUnknown_83F5B30
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 15
- adds r0, r4
- ldrh r0, [r0]
- b _080CB1D2
- .align 2, 0
-_080CB1CC: .4byte gUnknown_83F5B30
-_080CB1D0:
- movs r0, 0xB
-_080CB1D2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CB198
-
- thumb_func_start Special_CheckAddCoins
-Special_CheckAddCoins: @ 80CB1D8
-@ addcoins but it's a dry run
- push {lr}
- ldr r0, _080CB1F0 @ =gSpecialVar_Result
- ldrh r1, [r0]
- ldr r0, _080CB1F4 @ =gSpecialVar_0x8006
- ldrh r0, [r0]
- adds r1, r0
- ldr r0, _080CB1F8 @ =0x0000270f
- cmp r1, r0
- bgt _080CB1FC
- movs r0, 0x1
- b _080CB1FE
- .align 2, 0
-_080CB1F0: .4byte gSpecialVar_Result
-_080CB1F4: .4byte gSpecialVar_0x8006
-_080CB1F8: .4byte 0x0000270f
-_080CB1FC:
- movs r0, 0
-_080CB1FE:
- pop {r1}
- bx r1
- thumb_func_end Special_CheckAddCoins
-
- thumb_func_start Special_GetElevatorFloor
-Special_GetElevatorFloor: @ 80CB204
- push {r4,lr}
- movs r3, 0x4
- ldr r0, _080CB22C @ =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0x14
- ldrsb r1, [r2, r1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _080CB2AA
- ldrb r0, [r2, 0x15]
- subs r0, 0x2A
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0xF
- bhi _080CB2AA
- lsls r0, 2
- ldr r1, _080CB230 @ =_080CB234
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CB22C: .4byte gSaveBlock1Ptr
-_080CB230: .4byte _080CB234
- .align 2, 0
-_080CB234:
- .4byte _080CB2A0
- .4byte _080CB2A4
- .4byte _080CB2AA
- .4byte _080CB2A8
- .4byte _080CB2AA
- .4byte _080CB274
- .4byte _080CB278
- .4byte _080CB27C
- .4byte _080CB280
- .4byte _080CB284
- .4byte _080CB288
- .4byte _080CB28C
- .4byte _080CB290
- .4byte _080CB294
- .4byte _080CB298
- .4byte _080CB29C
-_080CB274:
- movs r3, 0x4
- b _080CB2AA
-_080CB278:
- movs r3, 0x5
- b _080CB2AA
-_080CB27C:
- movs r3, 0x6
- b _080CB2AA
-_080CB280:
- movs r3, 0x7
- b _080CB2AA
-_080CB284:
- movs r3, 0x8
- b _080CB2AA
-_080CB288:
- movs r3, 0x9
- b _080CB2AA
-_080CB28C:
- movs r3, 0xA
- b _080CB2AA
-_080CB290:
- movs r3, 0xB
- b _080CB2AA
-_080CB294:
- movs r3, 0xC
- b _080CB2AA
-_080CB298:
- movs r3, 0xD
- b _080CB2AA
-_080CB29C:
- movs r3, 0xE
- b _080CB2AA
-_080CB2A0:
- movs r3, 0x3
- b _080CB2AA
-_080CB2A4:
- movs r3, 0x2
- b _080CB2AA
-_080CB2A8:
- movs r3, 0
-_080CB2AA:
- ldr r1, [r4]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- cmp r0, 0xA
- bne _080CB2F2
- movs r0, 0x15
- ldrsb r0, [r1, r0]
- cmp r0, 0x4
- bhi _080CB2F2
- lsls r0, 2
- ldr r1, _080CB2C8 @ =_080CB2CC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CB2C8: .4byte _080CB2CC
- .align 2, 0
-_080CB2CC:
- .4byte _080CB2E0
- .4byte _080CB2E4
- .4byte _080CB2E8
- .4byte _080CB2EC
- .4byte _080CB2F0
-_080CB2E0:
- movs r3, 0x4
- b _080CB2F2
-_080CB2E4:
- movs r3, 0x5
- b _080CB2F2
-_080CB2E8:
- movs r3, 0x6
- b _080CB2F2
-_080CB2EC:
- movs r3, 0x7
- b _080CB2F2
-_080CB2F0:
- movs r3, 0x8
-_080CB2F2:
- ldr r1, [r4]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bne _080CB314
- movs r0, 0x15
- ldrsb r0, [r1, r0]
- cmp r0, 0x1
- blt _080CB314
- cmp r0, 0x9
- ble _080CB30E
- cmp r0, 0xA
- beq _080CB312
- b _080CB314
-_080CB30E:
- movs r3, 0xF
- b _080CB314
-_080CB312:
- movs r3, 0x3
-_080CB314:
- ldr r0, _080CB324 @ =0x0000403a
- adds r1, r3, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB324: .4byte 0x0000403a
- thumb_func_end Special_GetElevatorFloor
-
- thumb_func_start sub_80CB328
-sub_80CB328: @ 80CB328
- push {r4-r6,lr}
- ldr r3, _080CB35C @ =gUnknown_2039A0E
- movs r0, 0
- strh r0, [r3]
- ldr r1, _080CB360 @ =gUnknown_2039A10
- strh r0, [r1]
- ldr r0, _080CB364 @ =gSaveBlock1Ptr
- ldr r5, [r0]
- movs r2, 0x14
- ldrsb r2, [r5, r2]
- adds r4, r3, 0
- adds r3, r1, 0
- adds r6, r0, 0
- cmp r2, 0x1
- bne _080CB40C
- ldrb r0, [r5, 0x15]
- subs r0, 0x2A
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0xF
- bhi _080CB40C
- lsls r0, 2
- ldr r1, _080CB368 @ =_080CB36C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CB35C: .4byte gUnknown_2039A0E
-_080CB360: .4byte gUnknown_2039A10
-_080CB364: .4byte gSaveBlock1Ptr
-_080CB368: .4byte _080CB36C
- .align 2, 0
-_080CB36C:
- .4byte _080CB3F6
- .4byte _080CB3FC
- .4byte _080CB40C
- .4byte _080CB404
- .4byte _080CB40C
- .4byte _080CB3F0
- .4byte _080CB3E8
- .4byte _080CB3E2
- .4byte _080CB3DA
- .4byte _080CB3D2
- .4byte _080CB3CA
- .4byte _080CB3C2
- .4byte _080CB3BA
- .4byte _080CB404
- .4byte _080CB3B2
- .4byte _080CB3AC
-_080CB3AC:
- movs r0, 0
- strh r0, [r4]
- b _080CB40A
-_080CB3B2:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x1
- b _080CB40A
-_080CB3BA:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x3
- b _080CB40A
-_080CB3C2:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x4
- b _080CB40A
-_080CB3CA:
- movs r0, 0x1
- strh r0, [r4]
- movs r0, 0x4
- b _080CB40A
-_080CB3D2:
- movs r0, 0x2
- strh r0, [r4]
- movs r0, 0x4
- b _080CB40A
-_080CB3DA:
- movs r0, 0x3
- strh r0, [r4]
- movs r0, 0x4
- b _080CB40A
-_080CB3E2:
- movs r0, 0x4
- strh r0, [r4]
- b _080CB40A
-_080CB3E8:
- movs r0, 0x5
- strh r0, [r4]
- movs r0, 0x4
- b _080CB40A
-_080CB3F0:
- movs r0, 0x5
- strh r0, [r4]
- b _080CB40A
-_080CB3F6:
- movs r0, 0
- strh r0, [r4]
- b _080CB40A
-_080CB3FC:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x1
- b _080CB40A
-_080CB404:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x2
-_080CB40A:
- strh r0, [r3]
-_080CB40C:
- ldr r1, [r6]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- cmp r0, 0xA
- bne _080CB466
- movs r0, 0x15
- ldrsb r0, [r1, r0]
- cmp r0, 0x4
- bhi _080CB466
- lsls r0, 2
- ldr r1, _080CB428 @ =_080CB42C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CB428: .4byte _080CB42C
- .align 2, 0
-_080CB42C:
- .4byte _080CB45E
- .4byte _080CB456
- .4byte _080CB44E
- .4byte _080CB446
- .4byte _080CB440
-_080CB440:
- movs r0, 0
- strh r0, [r4]
- b _080CB464
-_080CB446:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x1
- b _080CB464
-_080CB44E:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x2
- b _080CB464
-_080CB456:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x3
- b _080CB464
-_080CB45E:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x4
-_080CB464:
- strh r0, [r3]
-_080CB466:
- ldr r1, [r6]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bne _080CB490
- movs r0, 0x15
- ldrsb r0, [r1, r0]
- cmp r0, 0x1
- blt _080CB490
- cmp r0, 0x9
- ble _080CB482
- cmp r0, 0xA
- beq _080CB488
- b _080CB490
-_080CB482:
- movs r0, 0
- strh r0, [r4]
- b _080CB48E
-_080CB488:
- movs r0, 0
- strh r0, [r4]
- movs r0, 0x1
-_080CB48E:
- strh r0, [r3]
-_080CB490:
- ldrh r0, [r3]
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80CB328
-
- thumb_func_start sub_80CB498
-sub_80CB498: @ 80CB498
- push {r4-r6,lr}
- ldr r0, _080CB4D0 @ =sub_80CB514
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080CB4D4 @ =gTasks+0x8
- adds r4, r1, r0
- movs r3, 0
- strh r3, [r4, 0x2]
- strh r3, [r4, 0x4]
- movs r6, 0x1
- strh r6, [r4, 0x8]
- ldr r0, _080CB4D8 @ =gSpecialVar_0x8005
- ldr r1, _080CB4DC @ =gSpecialVar_0x8006
- ldrh r2, [r0]
- ldrh r0, [r1]
- cmp r2, r0
- bls _080CB4E0
- subs r0, r2, r0
- lsls r0, 16
- lsrs r5, r0, 16
- strh r6, [r4, 0xC]
- b _080CB4E8
- .align 2, 0
-_080CB4D0: .4byte sub_80CB514
-_080CB4D4: .4byte gTasks+0x8
-_080CB4D8: .4byte gSpecialVar_0x8005
-_080CB4DC: .4byte gSpecialVar_0x8006
-_080CB4E0:
- subs r0, r2
- lsls r0, 16
- lsrs r5, r0, 16
- strh r3, [r4, 0xC]
-_080CB4E8:
- cmp r5, 0x8
- bls _080CB4EE
- movs r5, 0x8
-_080CB4EE:
- ldr r0, _080CB510 @ =gUnknown_83F5BB8
- adds r0, r5, r0
- ldrb r0, [r0]
- strh r0, [r4, 0xA]
- movs r0, 0
- bl SetCameraPanningCallback
- ldrb r1, [r4, 0xC]
- adds r0, r5, 0
- bl sub_80CB658
- movs r0, 0x52
- bl PlaySE
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB510: .4byte gUnknown_83F5BB8
- thumb_func_end sub_80CB498
-
- thumb_func_start sub_80CB514
-sub_80CB514: @ 80CB514
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CB57C @ =gTasks+0x8
- adds r4, r0, r1
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- movs r1, 0x3
- bl __modsi3
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bne _080CB574
- strh r0, [r4, 0x2]
- ldrh r0, [r4, 0x4]
- adds r0, 0x1
- strh r0, [r4, 0x4]
- ldrh r0, [r4, 0x8]
- negs r0, r0
- strh r0, [r4, 0x8]
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- movs r0, 0
- bl SetCameraPanning
- movs r0, 0x4
- ldrsh r1, [r4, r0]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080CB574
- movs r0, 0x42
- bl PlaySE
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- bl InstallCameraPanAheadCallback
-_080CB574:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB57C: .4byte gTasks+0x8
- thumb_func_end sub_80CB514
-
- thumb_func_start sub_80CB580
-sub_80CB580: @ 80CB580
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0xC
- ldr r0, _080CB620 @ =sub_809D6D4
- bl sub_81119D4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080CB614
- ldr r4, _080CB624 @ =gUnknown_2039A0C
- ldr r0, _080CB628 @ =gUnknown_83F5B3C
- bl AddWindow
- strb r0, [r4]
- ldrb r0, [r4]
- ldr r5, _080CB62C @ =0x0000021d
- adds r1, r5, 0
- movs r2, 0xD0
- bl TextWindow_SetStdFrame0_WithPal
- ldrb r0, [r4]
- movs r1, 0
- adds r2, r5, 0
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- ldrb r0, [r4]
- ldr r2, _080CB630 @ =gUnknown_8418075
- movs r1, 0x2
- str r1, [sp]
- movs r1, 0xFF
- mov r8, r1
- str r1, [sp, 0x4]
- movs r6, 0
- str r6, [sp, 0x8]
- movs r1, 0x2
- movs r3, 0
- bl AddTextPrinterParameterized
- ldr r1, _080CB634 @ =gUnknown_83F5B44
- ldr r0, _080CB638 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r5, [r0]
- movs r0, 0x2
- adds r1, r5, 0
- movs r2, 0
- bl GetStringWidth
- ldrb r1, [r4]
- movs r3, 0x38
- subs r3, r0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x10
- str r0, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- str r6, [sp, 0x8]
- adds r0, r1, 0
- movs r1, 0x2
- adds r2, r5, 0
- bl AddTextPrinterParameterized
- ldrb r0, [r4]
- bl PutWindowTilemap
- ldrb r0, [r4]
- movs r1, 0x3
- bl CopyWindowToVram
-_080CB614:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB620: .4byte sub_809D6D4
-_080CB624: .4byte gUnknown_2039A0C
-_080CB628: .4byte gUnknown_83F5B3C
-_080CB62C: .4byte 0x0000021d
-_080CB630: .4byte gUnknown_8418075
-_080CB634: .4byte gUnknown_83F5B44
-_080CB638: .4byte gSpecialVar_0x8005
- thumb_func_end sub_80CB580
-
- thumb_func_start sub_80CB63C
-sub_80CB63C: @ 80CB63C
- push {r4,lr}
- ldr r4, _080CB654 @ =gUnknown_2039A0C
- ldrb r0, [r4]
- movs r1, 0x1
- bl ClearStdWindowAndFrameToTransparent
- ldrb r0, [r4]
- bl RemoveWindow
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB654: .4byte gUnknown_2039A0C
- thumb_func_end sub_80CB63C
-
- thumb_func_start sub_80CB658
-sub_80CB658: @ 80CB658
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r4, _080CB6A0 @ =sub_80CB6AC
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080CB698
- adds r0, r4, 0
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080CB6A4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0x8]
- strh r0, [r1, 0xA]
- strh r5, [r1, 0xC]
- ldr r0, _080CB6A8 @ =gUnknown_83F5BC1
- adds r0, r6, r0
- ldrb r0, [r0]
- strh r0, [r1, 0xE]
-_080CB698:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB6A0: .4byte sub_80CB6AC
-_080CB6A4: .4byte gTasks
-_080CB6A8: .4byte gUnknown_83F5BC1
- thumb_func_end sub_80CB658
-
- thumb_func_start sub_80CB6AC
-sub_80CB6AC: @ 80CB6AC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r0, 2
- ldr r1, [sp]
- adds r0, r1
- lsls r0, 3
- ldr r1, _080CB734 @ =gTasks+0x8
- adds r6, r0, r1
- movs r2, 0x2
- ldrsh r0, [r6, r2]
- cmp r0, 0x6
- bne _080CB7A8
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- movs r1, 0x4
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _080CB73C
- movs r1, 0
- ldr r2, _080CB738 @ =gUnknown_83F5B94
- mov r10, r2
-_080CB6E6:
- movs r5, 0
- adds r7, r1, 0x7
- lsls r0, r1, 1
- adds r2, r1, 0x1
- mov r8, r2
- adds r0, r1
- lsls r0, 1
- mov r9, r0
-_080CB6F6:
- adds r4, r5, 0
- adds r4, 0x8
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r1, 0x3
- bl __modsi3
- lsls r0, 16
- asrs r0, 15
- add r0, r9
- add r0, r10
- ldrh r0, [r0]
- movs r1, 0xC0
- lsls r1, 4
- adds r2, r1, 0
- orrs r2, r0
- adds r0, r4, 0
- adds r1, r7, 0
- bl MapGridSetMetatileIdAt
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080CB6F6
- mov r2, r8
- lsls r0, r2, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _080CB6E6
- b _080CB78E
- .align 2, 0
-_080CB734: .4byte gTasks+0x8
-_080CB738: .4byte gUnknown_83F5B94
-_080CB73C:
- movs r1, 0
- ldr r0, _080CB7C0 @ =gUnknown_83F5BA6
- mov r10, r0
-_080CB742:
- movs r5, 0
- adds r7, r1, 0x7
- lsls r0, r1, 1
- adds r2, r1, 0x1
- mov r8, r2
- adds r0, r1
- lsls r0, 1
- mov r9, r0
-_080CB752:
- adds r4, r5, 0
- adds r4, 0x8
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r1, 0x3
- bl __modsi3
- lsls r0, 16
- asrs r0, 15
- add r0, r9
- add r0, r10
- ldrh r0, [r0]
- movs r1, 0xC0
- lsls r1, 4
- adds r2, r1, 0
- orrs r2, r0
- adds r0, r4, 0
- adds r1, r7, 0
- bl MapGridSetMetatileIdAt
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080CB752
- mov r2, r8
- lsls r0, r2, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _080CB742
-_080CB78E:
- bl DrawWholeMapView
- movs r0, 0
- strh r0, [r6, 0x2]
- movs r0, 0
- ldrsh r1, [r6, r0]
- movs r2, 0x6
- ldrsh r0, [r6, r2]
- cmp r1, r0
- bne _080CB7A8
- ldr r0, [sp]
- bl DestroyTask
-_080CB7A8:
- ldrh r0, [r6, 0x2]
- adds r0, 0x1
- strh r0, [r6, 0x2]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB7C0: .4byte gUnknown_83F5BA6
- thumb_func_end sub_80CB6AC
-
- thumb_func_start sub_80CB7C4
-sub_80CB7C4: @ 80CB7C4
- push {r4,r5,lr}
- ldr r0, _080CB808 @ =sub_809D6D4
- bl sub_81119D4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CB7D6
- b _080CB8F8
-_080CB7D6:
- ldr r0, _080CB80C @ =sub_80CB904
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CB810 @ =gTasks
- adds r3, r0, r1
- ldr r0, _080CB814 @ =gSpecialVar_0x8004
- ldrh r4, [r0]
- cmp r4, 0x3
- beq _080CB886
- cmp r4, 0x3
- bgt _080CB818
- cmp r4, 0x1
- beq _080CB842
- cmp r4, 0x1
- bgt _080CB870
- cmp r4, 0
- beq _080CB82A
- b _080CB8EC
- .align 2, 0
-_080CB808: .4byte sub_809D6D4
-_080CB80C: .4byte sub_80CB904
-_080CB810: .4byte gTasks
-_080CB814: .4byte gSpecialVar_0x8004
-_080CB818:
- cmp r4, 0x5
- beq _080CB8B4
- cmp r4, 0x5
- blt _080CB89E
- cmp r4, 0x6
- beq _080CB8D2
- cmp r4, 0x63
- beq _080CB8F8
- b _080CB8EC
-_080CB82A:
- movs r0, 0x4
- strh r0, [r3, 0x8]
- movs r0, 0x9
- strh r0, [r3, 0xA]
- movs r1, 0x1
- strh r1, [r3, 0xC]
- strh r1, [r3, 0xE]
- movs r0, 0xC
- strh r0, [r3, 0x10]
- movs r0, 0x7
- strh r0, [r3, 0x12]
- b _080CB8E6
-_080CB842:
- movs r2, 0
- movs r0, 0x7
- strh r0, [r3, 0x8]
- movs r1, 0xC
- strh r1, [r3, 0xA]
- strh r4, [r3, 0xC]
- strh r4, [r3, 0xE]
- movs r0, 0x8
- strh r0, [r3, 0x10]
- strh r1, [r3, 0x12]
- strh r2, [r3, 0x14]
- strh r5, [r3, 0x26]
- ldr r0, _080CB868 @ =gUnknown_2039A0E
- ldrh r0, [r0]
- strh r0, [r3, 0x16]
- ldr r0, _080CB86C @ =gUnknown_2039A10
- ldrh r0, [r0]
- strh r0, [r3, 0x18]
- b _080CB8F8
- .align 2, 0
-_080CB868: .4byte gUnknown_2039A0E
-_080CB86C: .4byte gUnknown_2039A10
-_080CB870:
- movs r1, 0
- movs r0, 0x4
- strh r0, [r3, 0x8]
- strh r0, [r3, 0xA]
- movs r0, 0x1
- strh r0, [r3, 0xC]
- strh r0, [r3, 0xE]
- movs r0, 0x8
- strh r0, [r3, 0x10]
- strh r0, [r3, 0x12]
- b _080CB8E6
-_080CB886:
- movs r1, 0
- movs r0, 0x4
- strh r0, [r3, 0x8]
- movs r0, 0x6
- strh r0, [r3, 0xA]
- movs r0, 0x1
- strh r0, [r3, 0xC]
- strh r0, [r3, 0xE]
- movs r0, 0x8
- strh r0, [r3, 0x10]
- strh r0, [r3, 0x12]
- b _080CB8E6
-_080CB89E:
- movs r0, 0x4
- strh r0, [r3, 0x8]
- strh r0, [r3, 0xA]
- movs r1, 0x1
- strh r1, [r3, 0xC]
- strh r1, [r3, 0xE]
- movs r0, 0x11
- strh r0, [r3, 0x10]
- movs r0, 0x8
- strh r0, [r3, 0x12]
- b _080CB8E6
-_080CB8B4:
- movs r2, 0
- movs r0, 0x7
- strh r0, [r3, 0x8]
- movs r1, 0xC
- strh r1, [r3, 0xA]
- movs r0, 0x10
- strh r0, [r3, 0xC]
- movs r0, 0x1
- strh r0, [r3, 0xE]
- movs r0, 0x11
- strh r0, [r3, 0x10]
- strh r1, [r3, 0x12]
- strh r2, [r3, 0x14]
- strh r5, [r3, 0x26]
- b _080CB8F8
-_080CB8D2:
- movs r1, 0
- movs r0, 0x3
- strh r0, [r3, 0x8]
- strh r0, [r3, 0xA]
- movs r0, 0x1
- strh r0, [r3, 0xC]
- strh r0, [r3, 0xE]
- movs r0, 0x8
- strh r0, [r3, 0x10]
- strh r4, [r3, 0x12]
-_080CB8E6:
- strh r1, [r3, 0x14]
- strh r5, [r3, 0x26]
- b _080CB8F8
-_080CB8EC:
- ldr r1, _080CB900 @ =gSpecialVar_Result
- movs r0, 0x7F
- strh r0, [r1]
- adds r0, r5, 0
- bl DestroyTask
-_080CB8F8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CB900: .4byte gSpecialVar_Result
- thumb_func_end sub_80CB7C4
-
- thumb_func_start sub_80CB904
-sub_80CB904: @ 80CB904
- 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
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, _080CB934 @ =gTasks
- adds r5, r0, r1
- bl ScriptContext2_Enable
- ldr r0, _080CB938 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x1
- bne _080CB944
- ldr r0, _080CB93C @ =gUnknown_2039A18
- ldr r1, _080CB940 @ =gUnknown_2039A0E
- ldrh r1, [r1]
- strh r1, [r0]
- b _080CB94A
- .align 2, 0
-_080CB934: .4byte gTasks
-_080CB938: .4byte gSpecialVar_0x8004
-_080CB93C: .4byte gUnknown_2039A18
-_080CB940: .4byte gUnknown_2039A0E
-_080CB944:
- ldr r1, _080CBA60 @ =gUnknown_2039A18
- movs r0, 0
- strh r0, [r1]
-_080CB94A:
- ldr r4, _080CBA64 @ =gUnknown_2039A14
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- lsls r0, 3
- bl AllocZeroed
- str r0, [r4]
- bl sub_80CBA7C
- movs r6, 0
- movs r4, 0
- movs r2, 0xA
- ldrsh r0, [r5, r2]
- lsls r3, r7, 2
- mov r10, r3
- add r1, sp, 0x18
- mov r9, r1
- cmp r6, r0
- bge _080CB9AE
- ldr r2, _080CBA68 @ =gUnknown_83F5BCC
- mov r8, r2
-_080CB974:
- ldr r0, _080CBA64 @ =gUnknown_2039A14
- ldr r0, [r0]
- lsls r3, r4, 3
- adds r3, r0
- lsls r2, r4, 2
- ldr r0, _080CBA6C @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 4
- adds r2, r0
- add r2, r8
- ldr r1, [r2]
- str r1, [r3]
- str r4, [r3, 0x4]
- movs r0, 0x2
- movs r2, 0
- bl GetStringWidth
- cmp r0, r6
- ble _080CB9A0
- adds r6, r0, 0
-_080CB9A0:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- movs r3, 0xA
- ldrsh r0, [r5, r3]
- cmp r4, r0
- blt _080CB974
-_080CB9AE:
- adds r0, r6, 0
- adds r0, 0x9
- cmp r0, 0
- bge _080CB9B8
- adds r0, 0x7
-_080CB9B8:
- asrs r0, 3
- adds r2, r0, 0x1
- strh r2, [r5, 0x10]
- movs r1, 0xC
- ldrsh r0, [r5, r1]
- movs r3, 0x10
- ldrsh r1, [r5, r3]
- adds r0, r1
- cmp r0, 0x1D
- ble _080CB9D2
- movs r0, 0x1D
- subs r0, r2
- strh r0, [r5, 0xC]
-_080CB9D2:
- ldrb r2, [r5, 0xC]
- ldrb r3, [r5, 0xE]
- ldrb r0, [r5, 0x10]
- str r0, [sp]
- ldrb r0, [r5, 0x12]
- str r0, [sp, 0x4]
- movs r0, 0xF
- str r0, [sp, 0x8]
- movs r0, 0x38
- str r0, [sp, 0xC]
- add r0, sp, 0x10
- movs r1, 0
- bl SetWindowTemplateFields
- ldr r0, [sp, 0x10]
- ldr r1, [sp, 0x14]
- str r0, [sp, 0x18]
- str r1, [sp, 0x1C]
- mov r0, r9
- bl AddWindow
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x22]
- movs r1, 0
- bl SetStdWindowBorderStyle
- ldr r4, _080CBA70 @ =gUnknown_3005360
- ldrh r0, [r5, 0xA]
- strh r0, [r4, 0xC]
- ldrh r0, [r5, 0x8]
- strh r0, [r4, 0xE]
- ldrh r0, [r5, 0x22]
- strb r0, [r4, 0x10]
- adds r0, r7, 0
- bl sub_80CBCC0
- ldrh r1, [r5, 0x16]
- ldrh r2, [r5, 0x18]
- adds r0, r4, 0
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x24]
- ldrh r0, [r5, 0x22]
- lsls r0, 24
- lsrs r0, 24
- bl PutWindowTilemap
- ldrh r0, [r5, 0x22]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r1, _080CBA74 @ =gTasks
- mov r2, r10
- adds r0, r2, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _080CBA78 @ =sub_80CBB28
- str r1, [r0]
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBA60: .4byte gUnknown_2039A18
-_080CBA64: .4byte gUnknown_2039A14
-_080CBA68: .4byte gUnknown_83F5BCC
-_080CBA6C: .4byte gSpecialVar_0x8004
-_080CBA70: .4byte gUnknown_3005360
-_080CBA74: .4byte gTasks
-_080CBA78: .4byte sub_80CBB28
- thumb_func_end sub_80CB904
-
- thumb_func_start sub_80CBA7C
-sub_80CBA7C: @ 80CBA7C
- ldr r2, _080CBAD0 @ =gUnknown_3005360
- ldr r0, _080CBAD4 @ =gUnknown_2039A14
- ldr r0, [r0]
- str r0, [r2]
- ldr r0, _080CBAD8 @ =sub_80CBADC
- str r0, [r2, 0x4]
- movs r0, 0
- str r0, [r2, 0x8]
- movs r1, 0
- movs r0, 0x1
- strh r0, [r2, 0xC]
- strh r0, [r2, 0xE]
- strb r1, [r2, 0x10]
- strb r1, [r2, 0x11]
- movs r0, 0x8
- strb r0, [r2, 0x12]
- strb r1, [r2, 0x13]
- movs r0, 0x20
- strb r0, [r2, 0x14]
- movs r3, 0x1
- movs r0, 0x31
- strb r0, [r2, 0x15]
- ldrb r1, [r2, 0x16]
- subs r0, 0x39
- ands r0, r1
- orrs r0, r3
- movs r1, 0x39
- negs r1, r1
- ands r0, r1
- movs r3, 0x3F
- ands r0, r3
- strb r0, [r2, 0x16]
- ldrb r1, [r2, 0x17]
- movs r0, 0x40
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- ands r0, r3
- strb r0, [r2, 0x17]
- bx lr
- .align 2, 0
-_080CBAD0: .4byte gUnknown_3005360
-_080CBAD4: .4byte gUnknown_2039A14
-_080CBAD8: .4byte sub_80CBADC
- thumb_func_end sub_80CBA7C
-
- thumb_func_start sub_80CBADC
-sub_80CBADC: @ 80CBADC
- push {r4,lr}
- movs r0, 0x5
- bl PlaySE
- ldr r0, _080CBB18 @ =sub_80CBB28
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xFF
- beq _080CBB12
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- ldr r1, _080CBB1C @ =gTasks
- adds r0, r1
- ldrh r0, [r0, 0x24]
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _080CBB20 @ =gUnknown_3005378
- adds r1, r4, 0
- movs r2, 0
- bl ListMenuGetScrollAndRow
- ldr r1, _080CBB24 @ =gUnknown_2039A18
- ldrh r0, [r4]
- strh r0, [r1]
-_080CBB12:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBB18: .4byte sub_80CBB28
-_080CBB1C: .4byte gTasks
-_080CBB20: .4byte gUnknown_3005378
-_080CBB24: .4byte gUnknown_2039A18
- thumb_func_end sub_80CBADC
-
- thumb_func_start sub_80CBB28
-sub_80CBB28: @ 80CBB28
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CBB54 @ =gTasks
- adds r6, r0, r1
- ldrh r0, [r6, 0x24]
- lsls r0, 24
- lsrs r0, 24
- bl ListMenu_ProcessInput
- adds r4, r0, 0
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _080CBB58
- adds r0, 0x1
- cmp r4, r0
- bne _080CBB6C
- b _080CBBA2
- .align 2, 0
-_080CBB54: .4byte gTasks
-_080CBB58:
- ldr r1, _080CBB68 @ =gSpecialVar_Result
- movs r0, 0x7F
- strh r0, [r1]
- movs r0, 0x5
- bl PlaySE
- b _080CBB88
- .align 2, 0
-_080CBB68: .4byte gSpecialVar_Result
-_080CBB6C:
- ldr r0, _080CBB90 @ =gSpecialVar_Result
- strh r4, [r0]
- movs r0, 0x5
- bl PlaySE
- movs r1, 0x14
- ldrsh r0, [r6, r1]
- cmp r0, 0
- beq _080CBB88
- movs r1, 0xA
- ldrsh r0, [r6, r1]
- subs r0, 0x1
- cmp r4, r0
- bne _080CBB94
-_080CBB88:
- adds r0, r5, 0
- bl sub_80CBBAC
- b _080CBBA2
- .align 2, 0
-_080CBB90: .4byte gSpecialVar_Result
-_080CBB94:
- adds r0, r5, 0
- bl sub_80CBD50
- ldr r0, _080CBBA8 @ =sub_80CBC2C
- str r0, [r6]
- bl EnableBothScriptContexts
-_080CBBA2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBBA8: .4byte sub_80CBC2C
- thumb_func_end sub_80CBB28
-
- thumb_func_start sub_80CBBAC
-sub_80CBBAC: @ 80CBBAC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _080CBC24 @ =gTasks
- adds r4, r0
- adds r0, r5, 0
- bl sub_80CBD50
- ldrh r0, [r4, 0x24]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldr r0, _080CBC28 @ =gUnknown_2039A14
- ldr r0, [r0]
- bl Free
- ldrh r0, [r4, 0x22]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- bl ClearStdWindowAndFrameToTransparent
- ldrh r0, [r4, 0x22]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl FillWindowPixelBuffer
- ldrh r0, [r4, 0x22]
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- ldrh r0, [r4, 0x22]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- bl CopyWindowToVram
- ldrh r0, [r4, 0x22]
- lsls r0, 24
- lsrs r0, 24
- bl RemoveWindow
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBC24: .4byte gTasks
-_080CBC28: .4byte gUnknown_2039A14
- thumb_func_end sub_80CBBAC
-
- thumb_func_start sub_80CBC2C
-sub_80CBC2C: @ 80CBC2C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080CBC54 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0x14
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- beq _080CBC50
- cmp r0, 0x2
- bne _080CBC50
- movs r0, 0x1
- strh r0, [r1, 0x14]
- ldr r0, _080CBC58 @ =sub_80CBC90
- str r0, [r1]
-_080CBC50:
- pop {r0}
- bx r0
- .align 2, 0
-_080CBC54: .4byte gTasks
-_080CBC58: .4byte sub_80CBC90
- thumb_func_end sub_80CBC2C
-
- thumb_func_start sub_80CBC5C
-sub_80CBC5C: @ 80CBC5C
- push {lr}
- ldr r0, _080CBC74 @ =sub_80CBC2C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _080CBC78
- bl EnableBothScriptContexts
- b _080CBC88
- .align 2, 0
-_080CBC74: .4byte sub_80CBC2C
-_080CBC78:
- ldr r0, _080CBC8C @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x14]
- adds r0, 0x1
- strh r0, [r1, 0x14]
-_080CBC88:
- pop {r0}
- bx r0
- .align 2, 0
-_080CBC8C: .4byte gTasks
- thumb_func_end sub_80CBC5C
-
- thumb_func_start sub_80CBC90
-sub_80CBC90: @ 80CBC90
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- adds r0, r4, 0
- bl sub_80CBCC0
- ldr r1, _080CBCB8 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080CBCBC @ =sub_80CBB28
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBCB8: .4byte gTasks
-_080CBCBC: .4byte sub_80CBB28
- thumb_func_end sub_80CBC90
-
- thumb_func_start sub_80CBCC0
-sub_80CBCC0: @ 80CBCC0
- push {r4,r5,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080CBD44 @ =gTasks
- adds r4, r1, r0
- mov r1, sp
- ldr r0, _080CBD48 @ =gUnknown_83F5D1C
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r0, [r0]
- str r0, [r1]
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r1, r0
- beq _080CBD3C
- mov r2, sp
- movs r3, 0x10
- ldrsh r1, [r4, r3]
- lsls r1, 2
- movs r5, 0xC
- ldrsh r0, [r4, r5]
- lsls r0, 3
- adds r1, r0
- movs r3, 0
- strb r1, [r2, 0x1]
- mov r1, sp
- movs r0, 0x8
- strb r0, [r1, 0x2]
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- lsls r1, 2
- movs r5, 0xC
- ldrsh r0, [r4, r5]
- lsls r0, 3
- adds r1, r0
- strb r1, [r2, 0x4]
- mov r1, sp
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- lsls r0, 3
- adds r0, 0xA
- strb r0, [r1, 0x5]
- mov r0, sp
- strh r3, [r0, 0x6]
- mov r2, sp
- ldrh r0, [r4, 0xA]
- ldrh r1, [r4, 0x8]
- subs r0, r1
- strh r0, [r2, 0x8]
- ldr r1, _080CBD4C @ =gUnknown_2039A18
- mov r0, sp
- bl AddScrollIndicatorArrowPair
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x20]
-_080CBD3C:
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBD44: .4byte gTasks
-_080CBD48: .4byte gUnknown_83F5D1C
-_080CBD4C: .4byte gUnknown_2039A18
- thumb_func_end sub_80CBCC0
-
- thumb_func_start sub_80CBD50
-sub_80CBD50: @ 80CBD50
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080CBD7C @ =gTasks
- adds r2, r1, r0
- movs r0, 0x8
- ldrsh r1, [r2, r0]
- movs r3, 0xA
- ldrsh r0, [r2, r3]
- cmp r1, r0
- beq _080CBD76
- ldrh r0, [r2, 0x20]
- lsls r0, 24
- lsrs r0, 24
- bl RemoveScrollIndicatorArrowPair
-_080CBD76:
- pop {r0}
- bx r0
- .align 2, 0
-_080CBD7C: .4byte gTasks
- thumb_func_end sub_80CBD50
-
- thumb_func_start sub_80CBD80
-sub_80CBD80: @ 80CBD80
- push {lr}
- movs r0, 0x16
- bl HelpSystem_SetSomeVariable2
- movs r0, 0x8
- bl SetPlayerAvatarTransitionFlags
- pop {r0}
- bx r0
- thumb_func_end sub_80CBD80
-
- thumb_func_start GetStarterPokemon
-GetStarterPokemon: @ 80CBD94
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0x2
- bls _080CBDA0
- movs r1, 0
-_080CBDA0:
- ldr r0, _080CBDAC @ =sStarterMon
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- pop {r1}
- bx r1
- .align 2, 0
-_080CBDAC: .4byte sStarterMon
- thumb_func_end GetStarterPokemon
-
- thumb_func_start ScrSpecial_GetStarter
-ScrSpecial_GetStarter: @ 80CBDB0
- push {lr}
- ldr r0, _080CBDC8 @ =0x00004031
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl GetStarterPokemon
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_080CBDC8: .4byte 0x00004031
- thumb_func_end ScrSpecial_GetStarter
-
- thumb_func_start sub_80CBDCC
-sub_80CBDCC: @ 80CBDCC
- push {lr}
- ldr r0, _080CBDE4 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x2
- bl GetSetPokedexFlag
- pop {r0}
- bx r0
- .align 2, 0
-_080CBDE4: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80CBDCC
-
- thumb_func_start sub_80CBDE8
-sub_80CBDE8: @ 80CBDE8
- ldr r1, _080CBDF8 @ =gSelectedEventObject
- movs r0, 0
- strb r0, [r1]
- ldr r1, _080CBDFC @ =gSpecialVar_TextColor
- movs r0, 0xFF
- strh r0, [r1]
- bx lr
- .align 2, 0
-_080CBDF8: .4byte gSelectedEventObject
-_080CBDFC: .4byte gSpecialVar_TextColor
- thumb_func_end sub_80CBDE8
-
- thumb_func_start ContextNpcGetTextColor
-ContextNpcGetTextColor: @ 80CBE00
- push {lr}
- ldr r0, _080CBE18 @ =gSpecialVar_TextColor
- ldrh r0, [r0]
- cmp r0, 0xFF
- bne _080CBE44
- ldr r1, _080CBE1C @ =gSelectedEventObject
- ldrb r0, [r1]
- cmp r0, 0
- bne _080CBE20
- movs r0, 0x3
- b _080CBE48
- .align 2, 0
-_080CBE18: .4byte gSpecialVar_TextColor
-_080CBE1C: .4byte gSelectedEventObject
-_080CBE20:
- ldr r2, _080CBE4C @ =gMapObjects
- ldrb r1, [r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x5]
- cmp r0, 0xEF
- bls _080CBE40
- adds r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- bl VarGetFieldObjectGraphicsId
- lsls r0, 24
- lsrs r0, 24
-_080CBE40:
- bl GetColorFromTextColorTable
-_080CBE44:
- lsls r0, 24
- lsrs r0, 24
-_080CBE48:
- pop {r1}
- bx r1
- .align 2, 0
-_080CBE4C: .4byte gMapObjects
- thumb_func_end ContextNpcGetTextColor
-
- thumb_func_start sub_80CBE50
-sub_80CBE50: @ 80CBE50
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r1, r0
- ldr r0, _080CBEA4 @ =gPlayerParty
- adds r5, r1, r0
- ldr r6, _080CBEA8 @ =gStringVar1
- adds r0, r5, 0
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
- mov r4, sp
- adds r0, r5, 0
- movs r1, 0x3
- mov r2, sp
- bl GetMonData
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _080CBEB0
- adds r0, r5, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- movs r1, 0xB
- muls r0, r1
- ldr r1, _080CBEAC @ =gSpeciesNames
- adds r0, r1
- adds r1, r6, 0
- bl StringCompare
- cmp r0, 0
- bne _080CBEB0
- movs r0, 0
- b _080CBEB2
- .align 2, 0
-_080CBEA4: .4byte gPlayerParty
-_080CBEA8: .4byte gStringVar1
-_080CBEAC: .4byte gSpeciesNames
-_080CBEB0:
- movs r0, 0x1
-_080CBEB2:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80CBE50
-
- thumb_func_start sub_80CBEBC
-sub_80CBEBC: @ 80CBEBC
- push {lr}
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- bl sub_80CBE50
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80CBEBC
-
- thumb_func_start TV_PrintIntToStringVar
-TV_PrintIntToStringVar: @ 80CBED4
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl CountDigits
- adds r3, r0, 0
- ldr r0, _080CBF00 @ =gUnknown_83F5AF8
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- lsls r3, 24
- lsrs r3, 24
- adds r1, r5, 0
- movs r2, 0
- bl ConvertIntToDecimalStringN
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CBF00: .4byte gUnknown_83F5AF8
- thumb_func_end TV_PrintIntToStringVar
-
- thumb_func_start CountDigits
-CountDigits: @ 80CBF04
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0xA
- bl __divsi3
- cmp r0, 0
- beq _080CBF90
- adds r0, r4, 0
- movs r1, 0x64
- bl __divsi3
- cmp r0, 0
- bne _080CBF22
- movs r0, 0x2
- b _080CBF9A
-_080CBF22:
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080CBF34
- movs r0, 0x3
- b _080CBF9A
-_080CBF34:
- ldr r1, _080CBF44 @ =0x00002710
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080CBF48
- movs r0, 0x4
- b _080CBF9A
- .align 2, 0
-_080CBF44: .4byte 0x00002710
-_080CBF48:
- ldr r1, _080CBF58 @ =0x000186a0
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080CBF5C
- movs r0, 0x5
- b _080CBF9A
- .align 2, 0
-_080CBF58: .4byte 0x000186a0
-_080CBF5C:
- ldr r1, _080CBF6C @ =0x000f4240
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080CBF70
- movs r0, 0x6
- b _080CBF9A
- .align 2, 0
-_080CBF6C: .4byte 0x000f4240
-_080CBF70:
- ldr r1, _080CBF80 @ =0x00989680
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080CBF84
- movs r0, 0x7
- b _080CBF9A
- .align 2, 0
-_080CBF80: .4byte 0x00989680
-_080CBF84:
- ldr r1, _080CBF94 @ =0x05f5e100
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- beq _080CBF98
-_080CBF90:
- movs r0, 0x1
- b _080CBF9A
- .align 2, 0
-_080CBF94: .4byte 0x05f5e100
-_080CBF98:
- movs r0, 0x8
-_080CBF9A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end CountDigits
-
- thumb_func_start sub_80CBFA0
-sub_80CBFA0: @ 80CBFA0
- push {r4,lr}
- ldr r0, _080CBFC8 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CBFCC @ =gPlayerParty
- adds r0, r1
- ldr r4, _080CBFD0 @ =gStringVar1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- ldr r0, _080CBFD4 @ =gStringVar3
- adds r1, r4, 0
- bl StringCompare
- cmp r0, 0
- beq _080CBFD8
- movs r0, 0x1
- b _080CBFDA
- .align 2, 0
-_080CBFC8: .4byte gSpecialVar_0x8004
-_080CBFCC: .4byte gPlayerParty
-_080CBFD0: .4byte gStringVar1
-_080CBFD4: .4byte gStringVar3
-_080CBFD8:
- movs r0, 0
-_080CBFDA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CBFA0
-
- thumb_func_start ChangeBoxPokemonNickname
-ChangeBoxPokemonNickname: @ 80CBFE0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- ldr r0, _080CC050 @ =gSpecialVar_MonBoxId
- ldrb r0, [r0]
- ldr r1, _080CC054 @ =gSpecialVar_MonBoxPos
- ldrb r1, [r1]
- bl GetBoxedMonPtr
- adds r6, r0, 0
- ldr r2, _080CC058 @ =gStringVar3
- movs r1, 0x2
- bl GetBoxMonData
- ldr r0, _080CC05C @ =gStringVar2
- mov r8, r0
- adds r0, r6, 0
- movs r1, 0x2
- mov r2, r8
- bl GetBoxMonData
- adds r0, r6, 0
- movs r1, 0xB
- movs r2, 0
- bl GetBoxMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r6, 0
- bl GetBoxMonGender
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0
- bl GetBoxMonData
- str r0, [sp]
- ldr r0, _080CC060 @ =ChangeBoxPokemonNickname_CB
- str r0, [sp, 0x4]
- movs r0, 0x3
- mov r1, r8
- adds r2, r5, 0
- adds r3, r4, 0
- bl DoNamingScreen
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC050: .4byte gSpecialVar_MonBoxId
-_080CC054: .4byte gSpecialVar_MonBoxPos
-_080CC058: .4byte gStringVar3
-_080CC05C: .4byte gStringVar2
-_080CC060: .4byte ChangeBoxPokemonNickname_CB
- thumb_func_end ChangeBoxPokemonNickname
-
- thumb_func_start ChangeBoxPokemonNickname_CB
-ChangeBoxPokemonNickname_CB: @ 80CC064
- push {lr}
- ldr r0, _080CC07C @ =gSpecialVar_MonBoxId
- ldrb r0, [r0]
- ldr r1, _080CC080 @ =gSpecialVar_MonBoxPos
- ldrb r1, [r1]
- ldr r2, _080CC084 @ =gStringVar2
- bl SetBoxMonNickFromAnyBox
- bl CB2_ReturnToFieldContinueScriptPlayMapMusic
- pop {r0}
- bx r0
- .align 2, 0
-_080CC07C: .4byte gSpecialVar_MonBoxId
-_080CC080: .4byte gSpecialVar_MonBoxPos
-_080CC084: .4byte gStringVar2
- thumb_func_end ChangeBoxPokemonNickname_CB
-
- thumb_func_start ChangePokemonNickname
-ChangePokemonNickname: @ 80CC088
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x8
- ldr r0, _080CC130 @ =gSpecialVar_0x8004
- mov r9, r0
- ldrh r0, [r0]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r6, _080CC134 @ =gPlayerParty
- adds r0, r6
- ldr r2, _080CC138 @ =gStringVar3
- movs r1, 0x2
- bl GetMonData
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- ldr r1, _080CC13C @ =gStringVar2
- mov r10, r1
- movs r1, 0x2
- mov r2, r10
- bl GetMonData
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- bl GetMonGender
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- movs r1, 0
- movs r2, 0
- bl GetMonData
- str r0, [sp]
- ldr r0, _080CC140 @ =ChangePokemonNickname_CB
- str r0, [sp, 0x4]
- movs r0, 0x3
- mov r1, r10
- adds r2, r5, 0
- adds r3, r4, 0
- bl DoNamingScreen
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC130: .4byte gSpecialVar_0x8004
-_080CC134: .4byte gPlayerParty
-_080CC138: .4byte gStringVar3
-_080CC13C: .4byte gStringVar2
-_080CC140: .4byte ChangePokemonNickname_CB
- thumb_func_end ChangePokemonNickname
-
- thumb_func_start ChangePokemonNickname_CB
-ChangePokemonNickname_CB: @ 80CC144
- push {lr}
- ldr r0, _080CC164 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CC168 @ =gPlayerParty
- adds r0, r1
- ldr r2, _080CC16C @ =gStringVar2
- movs r1, 0x2
- bl SetMonData
- bl CB2_ReturnToFieldContinueScriptPlayMapMusic
- pop {r0}
- bx r0
- .align 2, 0
-_080CC164: .4byte gSpecialVar_0x8004
-_080CC168: .4byte gPlayerParty
-_080CC16C: .4byte gStringVar2
- thumb_func_end ChangePokemonNickname_CB
-
- thumb_func_start TV_CopyNicknameToStringVar1AndEnsureTerminated
-TV_CopyNicknameToStringVar1AndEnsureTerminated: @ 80CC170
- push {r4,lr}
- ldr r0, _080CC194 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CC198 @ =gPlayerParty
- adds r0, r1
- ldr r4, _080CC19C @ =gStringVar1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StringGetEnd10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC194: .4byte gSpecialVar_0x8004
-_080CC198: .4byte gPlayerParty
-_080CC19C: .4byte gStringVar1
- thumb_func_end TV_CopyNicknameToStringVar1AndEnsureTerminated
-
- thumb_func_start TV_CheckMonOTIDEqualsPlayerID
-TV_CheckMonOTIDEqualsPlayerID: @ 80CC1A0
- push {r4,lr}
- bl sub_80CC1E4
- adds r4, r0, 0
- ldr r0, _080CC1C8 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CC1CC @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bne _080CC1D4
- ldr r1, _080CC1D0 @ =gSpecialVar_Result
- movs r0, 0
- b _080CC1D8
- .align 2, 0
-_080CC1C8: .4byte gSpecialVar_0x8004
-_080CC1CC: .4byte gPlayerParty
-_080CC1D0: .4byte gSpecialVar_Result
-_080CC1D4:
- ldr r1, _080CC1E0 @ =gSpecialVar_Result
- movs r0, 0x1
-_080CC1D8:
- strh r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC1E0: .4byte gSpecialVar_Result
- thumb_func_end TV_CheckMonOTIDEqualsPlayerID
-
- thumb_func_start sub_80CC1E4
-sub_80CC1E4: @ 80CC1E4
- ldr r0, _080CC200 @ =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r0, [r2, 0xD]
- lsls r0, 24
- ldrb r1, [r2, 0xC]
- lsls r1, 16
- orrs r0, r1
- ldrb r1, [r2, 0xB]
- lsls r1, 8
- orrs r0, r1
- ldrb r1, [r2, 0xA]
- orrs r0, r1
- bx lr
- .align 2, 0
-_080CC200: .4byte gSaveBlock2Ptr
- thumb_func_end sub_80CC1E4
-
- thumb_func_start GetUnlockedSeviiAreas
-GetUnlockedSeviiAreas: @ 80CC204
- push {r4,lr}
- movs r4, 0
- ldr r0, _080CC2A4 @ =0x0000089b
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC218
- movs r4, 0x1
-_080CC218:
- ldr r0, _080CC2A8 @ =0x0000089c
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC22A
- movs r0, 0x2
- orrs r4, r0
-_080CC22A:
- ldr r0, _080CC2AC @ =0x0000089d
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC240
- movs r0, 0x4
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_080CC240:
- ldr r0, _080CC2B0 @ =0x0000089e
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC256
- movs r0, 0x8
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_080CC256:
- ldr r0, _080CC2B4 @ =0x0000089f
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC26C
- movs r0, 0x10
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_080CC26C:
- ldr r0, _080CC2B8 @ =0x000008a1
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC282
- movs r0, 0x20
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_080CC282:
- movs r0, 0x8A
- lsls r0, 4
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC29A
- movs r0, 0x40
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_080CC29A:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080CC2A4: .4byte 0x0000089b
-_080CC2A8: .4byte 0x0000089c
-_080CC2AC: .4byte 0x0000089d
-_080CC2B0: .4byte 0x0000089e
-_080CC2B4: .4byte 0x0000089f
-_080CC2B8: .4byte 0x000008a1
- thumb_func_end GetUnlockedSeviiAreas
-
- thumb_func_start sub_80CC2BC
-sub_80CC2BC: @ 80CC2BC
- push {r4-r7,lr}
- sub sp, 0x24
- movs r5, 0
- add r7, sp, 0xC
- movs r1, 0
-_080CC2C6:
- lsls r0, r5, 1
- add r0, sp
- strh r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _080CC2C6
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- cmp r5, r6
- bcs _080CC318
-_080CC2E4:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _080CC3BC @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- lsls r1, r5, 1
- add r1, sp
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- lsls r1, r5, 2
- adds r1, r7, r1
- str r0, [r1]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r6
- bcc _080CC2E4
-_080CC318:
- ldr r4, _080CC3C0 @ =0x00004043
- mov r0, sp
- ldrh r0, [r0]
- ldr r1, [sp, 0xC]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- adds r4, 0x1
- mov r0, sp
- ldrh r0, [r0, 0x2]
- ldr r1, [r7, 0x4]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- adds r4, 0x1
- mov r0, sp
- ldrh r0, [r0, 0x4]
- ldr r1, [r7, 0x8]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- adds r4, 0x1
- mov r0, sp
- ldrh r0, [r0, 0x6]
- ldr r1, [r7, 0xC]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- adds r4, 0x1
- mov r0, sp
- ldrh r0, [r0, 0x8]
- ldr r1, [r7, 0x10]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- adds r4, 0x1
- mov r0, sp
- ldrh r0, [r0, 0xA]
- ldr r1, [r7, 0x14]
- bl SpeciesToMailSpecies
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- ldr r0, _080CC3C4 @ =0x00004042
- ldr r1, _080CC3C8 @ =gSpecialVar_0x8004
- ldrh r1, [r1]
- bl VarSet
- add sp, 0x24
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC3BC: .4byte gPlayerParty
-_080CC3C0: .4byte 0x00004043
-_080CC3C4: .4byte 0x00004042
-_080CC3C8: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80CC2BC
-
- thumb_func_start sub_80CC3CC
-sub_80CC3CC: @ 80CC3CC
- push {r4-r6,lr}
- movs r5, 0
- ldr r4, _080CC3F8 @ =gSpecialVar_0x8004
- movs r0, 0xA
- bl GetGameStat
- strh r0, [r4]
- movs r0, 0xD
- bl GetGameStat
- adds r6, r0, 0
- ldr r4, _080CC3FC @ =gSpecialVar_0x8006
- movs r0, 0x17
- bl GetGameStat
- strh r0, [r4]
- ldr r1, _080CC400 @ =0x0000ffff
- cmp r6, r1
- bls _080CC408
- ldr r0, _080CC404 @ =gSpecialVar_0x8005
- strh r1, [r0]
- b _080CC40C
- .align 2, 0
-_080CC3F8: .4byte gSpecialVar_0x8004
-_080CC3FC: .4byte gSpecialVar_0x8006
-_080CC400: .4byte 0x0000ffff
-_080CC404: .4byte gSpecialVar_0x8005
-_080CC408:
- ldr r0, _080CC440 @ =gSpecialVar_0x8005
- strh r6, [r0]
-_080CC40C:
- adds r1, r0, 0
- ldr r0, _080CC444 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0
- beq _080CC41A
- movs r0, 0x1
- orrs r5, r0
-_080CC41A:
- ldrh r0, [r1]
- cmp r0, 0
- beq _080CC428
- movs r0, 0x2
- orrs r5, r0
- lsls r0, r5, 16
- lsrs r5, r0, 16
-_080CC428:
- ldr r0, _080CC448 @ =gSpecialVar_0x8006
- ldrh r0, [r0]
- cmp r0, 0
- beq _080CC438
- movs r0, 0x4
- orrs r5, r0
- lsls r0, r5, 16
- lsrs r5, r0, 16
-_080CC438:
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080CC440: .4byte gSpecialVar_0x8005
-_080CC444: .4byte gSpecialVar_0x8004
-_080CC448: .4byte gSpecialVar_0x8006
- thumb_func_end sub_80CC3CC
-
- thumb_func_start GetHiddenItemAttr
-GetHiddenItemAttr: @ 80CC44C
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- cmp r1, 0
- bne _080CC45E
- lsls r0, 16
- lsrs r0, 16
- b _080CC486
-_080CC45E:
- cmp r1, 0x1
- bne _080CC470
- lsrs r0, 16
- movs r1, 0xFF
- ands r0, r1
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r1
- b _080CC486
-_080CC470:
- cmp r1, 0x2
- bne _080CC47C
- lsrs r0, 24
- movs r1, 0x7F
- ands r0, r1
- b _080CC486
-_080CC47C:
- cmp r2, 0x3
- beq _080CC484
- movs r0, 0x1
- b _080CC486
-_080CC484:
- lsrs r0, 31
-_080CC486:
- pop {r1}
- bx r1
- thumb_func_end GetHiddenItemAttr
-
- thumb_func_start sub_80CC48C
-sub_80CC48C: @ 80CC48C
- push {r4,r5,lr}
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- cmp r4, r5
- bcs _080CC4CA
-_080CC49C:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _080CC4B8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- ldr r1, _080CC4BC @ =gSpecialVar_0x8004
- ldrh r1, [r1]
- cmp r0, r1
- bne _080CC4C0
- movs r0, 0x1
- b _080CC4CC
- .align 2, 0
-_080CC4B8: .4byte gPlayerParty
-_080CC4BC: .4byte gSpecialVar_0x8004
-_080CC4C0:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _080CC49C
-_080CC4CA:
- movs r0, 0
-_080CC4CC:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80CC48C
-
- thumb_func_start sub_80CC4D4
-sub_80CC4D4: @ 80CC4D4
- push {r4-r7,lr}
- movs r3, 0
- ldr r0, _080CC508 @ =gSaveBlock1Ptr
- ldr r4, [r0]
- movs r6, 0x4
- ldrsb r6, [r4, r6]
- ldr r5, _080CC50C @ =gUnknown_83F5D32
- adds r0, r5, 0x2
- mov r12, r0
- adds r7, r5, 0x1
-_080CC4E8:
- lsls r0, r3, 1
- adds r2, r0, r3
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r6, r0
- bne _080CC510
- movs r1, 0x5
- ldrsb r1, [r4, r1]
- adds r0, r2, r7
- ldrb r0, [r0]
- cmp r1, r0
- bne _080CC510
- mov r1, r12
- adds r0, r2, r1
- ldrb r0, [r0]
- b _080CC51C
- .align 2, 0
-_080CC508: .4byte gSaveBlock1Ptr
-_080CC50C: .4byte gUnknown_83F5D32
-_080CC510:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xB
- bls _080CC4E8
- movs r0, 0x1
-_080CC51C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80CC4D4
-
- thumb_func_start sub_80CC524
-sub_80CC524: @ 80CC524
- push {lr}
- movs r0, 0xB
- movs r1, 0
- bl sub_8113550
- pop {r0}
- bx r0
- thumb_func_end sub_80CC524
-
- thumb_func_start sub_80CC534
-sub_80CC534: @ 80CC534
- push {r4-r6,lr}
- movs r4, 0
- ldr r6, _080CC57C @ =gSaveBlock1Ptr
- ldr r5, _080CC580 @ =gUnknown_83F5D58
-_080CC53C:
- ldr r3, [r6]
- movs r1, 0x4
- ldrsb r1, [r3, r1]
- lsls r0, r4, 3
- adds r2, r0, r5
- ldrh r0, [r2]
- cmp r1, r0
- bne _080CC58C
- movs r0, 0x5
- ldrsb r0, [r3, r0]
- ldrh r2, [r2, 0x2]
- cmp r0, r2
- bne _080CC58C
- ldr r5, _080CC584 @ =0x0000404d
- adds r0, r5, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x23
- bne _080CC56A
- cmp r4, 0x20
- beq _080CC596
-_080CC56A:
- adds r0, r5, 0
- adds r1, r4, 0
- bl VarSet
- ldr r0, _080CC588 @ =0x00000808
- bl FlagSet
- b _080CC596
- .align 2, 0
-_080CC57C: .4byte gSaveBlock1Ptr
-_080CC580: .4byte gUnknown_83F5D58
-_080CC584: .4byte 0x0000404d
-_080CC588: .4byte 0x00000808
-_080CC58C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x32
- bls _080CC53C
-_080CC596:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80CC534
-
- thumb_func_start sub_80CC59C
-sub_80CC59C: @ 80CC59C
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r0, _080CC5F8 @ =0x0000404d
- bl VarGet
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r6, _080CC5FC @ =0xffffff00
- ldr r0, [sp, 0x4]
- ands r0, r6
- ldr r4, _080CC600 @ =0xffff00ff
- ands r0, r4
- str r0, [sp, 0x4]
- ldr r0, _080CC604 @ =0x00000808
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _080CC5C4
- b _080CC71E
-_080CC5C4:
- cmp r5, 0x5
- bne _080CC61C
- ldr r0, _080CC608 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0x4
- ldrsb r1, [r2, r1]
- adds r7, r0, 0
- cmp r1, 0xF
- bne _080CC67C
- movs r0, 0x5
- ldrsb r0, [r2, r0]
- cmp r0, 0
- beq _080CC5E2
- cmp r0, 0x3
- bne _080CC67C
-_080CC5E2:
- ldr r1, [sp, 0x4]
- ands r1, r6
- movs r0, 0x66
- orrs r1, r0
- str r1, [sp, 0x4]
- movs r0, 0x5
- ldrsb r0, [r2, r0]
- cmp r0, 0
- bne _080CC60C
- lsls r0, r5, 8
- b _080CC610
- .align 2, 0
-_080CC5F8: .4byte 0x0000404d
-_080CC5FC: .4byte 0xffffff00
-_080CC600: .4byte 0xffff00ff
-_080CC604: .4byte 0x00000808
-_080CC608: .4byte gSaveBlock1Ptr
-_080CC60C:
- movs r0, 0xC0
- lsls r0, 3
-_080CC610:
- ands r1, r4
- orrs r1, r0
- str r1, [sp, 0x4]
- add r1, sp, 0x4
- movs r0, 0x23
- b _080CC66C
-_080CC61C:
- ldr r7, _080CC65C @ =gSaveBlock1Ptr
- cmp r5, 0x3
- bne _080CC67C
- ldr r1, [r7]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- cmp r0, 0x3
- bne _080CC67C
- ldrb r0, [r1, 0x5]
- subs r0, 0x29
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _080CC67C
- ldr r1, _080CC660 @ =gUnknown_83F5D58
- ldrh r0, [r1, 0x18]
- ldrh r1, [r1, 0x1A]
- bl get_mapheader_by_bank_and_number
- ldrb r0, [r0, 0x14]
- add r1, sp, 0x4
- strb r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x5]
- lsls r0, 24
- asrs r0, 24
- adds r6, r1, 0
- cmp r0, 0x29
- bne _080CC664
- strb r5, [r6, 0x1]
- b _080CC668
- .align 2, 0
-_080CC65C: .4byte gSaveBlock1Ptr
-_080CC660: .4byte gUnknown_83F5D58
-_080CC664:
- movs r0, 0x4
- strb r0, [r6, 0x1]
-_080CC668:
- movs r0, 0x23
- adds r1, r6, 0
-_080CC66C:
- bl sub_8113550
- ldr r0, _080CC678 @ =0x00000808
- bl FlagClear
- b _080CC71E
- .align 2, 0
-_080CC678: .4byte 0x00000808
-_080CC67C:
- ldr r3, [r7]
- movs r2, 0x4
- ldrsb r2, [r3, r2]
- ldr r1, _080CC6D0 @ =gUnknown_83F5D58
- lsls r0, r5, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0x4]
- cmp r2, r0
- bne _080CC71E
- movs r0, 0x5
- ldrsb r0, [r3, r0]
- ldrh r2, [r1, 0x6]
- cmp r0, r2
- bne _080CC71E
- ldrh r0, [r1]
- ldrh r1, [r1, 0x2]
- bl get_mapheader_by_bank_and_number
- ldrb r1, [r0, 0x14]
- add r0, sp, 0x4
- strb r1, [r0]
- strb r5, [r0, 0x1]
- adds r6, r0, 0
- cmp r5, 0x16
- bne _080CC6D4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0xF
- bne _080CC6F6
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x1A
- beq _080CC6FC
- b _080CC6F6
- .align 2, 0
-_080CC6D0: .4byte gUnknown_83F5D58
-_080CC6D4:
- cmp r5, 0x2A
- bne _080CC6FC
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x43
- bne _080CC6F6
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0xF
- beq _080CC6FC
-_080CC6F6:
- ldrb r0, [r6, 0x1]
- adds r0, 0x1
- strb r0, [r6, 0x1]
-_080CC6FC:
- movs r0, 0x23
- adds r1, r6, 0
- bl sub_8113550
- ldr r4, _080CC728 @ =0x00000808
- adds r0, r4, 0
- bl FlagClear
- cmp r5, 0x23
- bne _080CC71E
- ldr r0, _080CC72C @ =0x0000404d
- movs r1, 0x20
- bl VarSet
- adds r0, r4, 0
- bl FlagSet
-_080CC71E:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC728: .4byte 0x00000808
-_080CC72C: .4byte 0x0000404d
- thumb_func_end sub_80CC59C
-
- thumb_func_start Special_BattleCardAction
-Special_BattleCardAction: @ 80CC730
- push {lr}
- ldr r0, _080CC744 @ =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _080CC77C
- lsls r0, 2
- ldr r1, _080CC748 @ =_080CC74C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080CC744: .4byte gSpecialVar_Result
-_080CC748: .4byte _080CC74C
- .align 2, 0
-_080CC74C:
- .4byte _080CC760
- .4byte _080CC764
- .4byte _080CC768
- .4byte _080CC76C
- .4byte _080CC770
-_080CC760:
- movs r0, 0x3
- b _080CC772
-_080CC764:
- movs r0, 0x4
- b _080CC772
-_080CC768:
- movs r0, 0
- b _080CC772
-_080CC76C:
- movs r0, 0x1
- b _080CC772
-_080CC770:
- movs r0, 0x2
-_080CC772:
- bl sub_81445C0
- lsls r0, 16
- lsrs r0, 16
- b _080CC78A
-_080CC77C:
- @ AGB_ASSERT_EX(0, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scr_tool.c", 3873)
- ldr r0, _080CC790 @ =gUnknown_83F5EF0 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scr_tool.c"
- ldr r1, _080CC794 @ =0x00000f21
- ldr r2, _080CC798 @ =gUnknown_83F5F24 "0"
- movs r3, 0x1
- bl AGBAssert
- movs r0, 0
-_080CC78A:
- pop {r1}
- bx r1
- .align 2, 0
-_080CC790: .4byte gUnknown_83F5EF0
-_080CC794: .4byte 0x00000f21
-_080CC798: .4byte gUnknown_83F5F24
- thumb_func_end Special_BattleCardAction
-
- thumb_func_start set_unknown_box_id
-set_unknown_box_id: @ 80CC79C
- ldr r1, _080CC7A4 @ =gUnknown_2039A1A
- strb r0, [r1]
- bx lr
- .align 2, 0
-_080CC7A4: .4byte gUnknown_2039A1A
- thumb_func_end set_unknown_box_id
-
- thumb_func_start get_unknown_box_id
-get_unknown_box_id: @ 80CC7A8
- ldr r0, _080CC7B0 @ =gUnknown_2039A1A
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080CC7B0: .4byte gUnknown_2039A1A
- thumb_func_end get_unknown_box_id
-
- thumb_func_start sub_80CC7B4
-sub_80CC7B4: @ 80CC7B4
- push {r4,r5,lr}
- ldr r5, _080CC7E8 @ =0x00000843
- adds r0, r5, 0
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _080CC7F0
- bl StorageGetCurrentBox
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080CC7EC @ =0x00004037
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- beq _080CC7F0
- adds r0, r5, 0
- bl FlagSet
- movs r0, 0x1
- b _080CC7F2
- .align 2, 0
-_080CC7E8: .4byte 0x00000843
-_080CC7EC: .4byte 0x00004037
-_080CC7F0:
- movs r0, 0
-_080CC7F2:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80CC7B4
-
- thumb_func_start sub_80CC7F8
-sub_80CC7F8: @ 80CC7F8
- push {r4-r7,lr}
- ldr r0, _080CC850 @ =0x00004037
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl set_unknown_box_id
- bl StorageGetCurrentBox
- lsls r0, 24
- lsrs r4, r0, 24
-_080CC810:
- movs r5, 0
- lsls r6, r4, 24
- lsls r7, r4, 16
-_080CC816:
- lsls r1, r5, 24
- lsrs r1, 24
- lsrs r0, r6, 24
- bl GetBoxedMonPtr
- movs r1, 0xB
- movs r2, 0
- bl GetBoxMonData
- cmp r0, 0
- bne _080CC858
- bl get_unknown_box_id
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- beq _080CC83E
- ldr r0, _080CC854 @ =0x00000843
- bl FlagClear
-_080CC83E:
- ldr r0, _080CC850 @ =0x00004037
- lsrs r1, r7, 16
- bl VarSet
- bl sub_80CC7B4
- lsls r0, 24
- lsrs r0, 24
- b _080CC874
- .align 2, 0
-_080CC850: .4byte 0x00004037
-_080CC854: .4byte 0x00000843
-_080CC858:
- adds r5, 0x1
- cmp r5, 0x1D
- ble _080CC816
- adds r4, 0x1
- cmp r4, 0xE
- bne _080CC866
- movs r4, 0
-_080CC866:
- bl StorageGetCurrentBox
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bne _080CC810
- movs r0, 0
-_080CC874:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80CC7F8
-
- thumb_func_start sub_80CC87C
-sub_80CC87C: @ 80CC87C
- push {r4,lr}
- ldr r0, _080CC8AC @ =gUnknown_2031DB4
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r1, 8
- ldrb r0, [r0, 0x1]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r2, _080CC8B0 @ =gUnknown_83F5F26
- ldrh r0, [r2]
- ldr r1, _080CC8B4 @ =0x0000ffff
- cmp r0, r1
- beq _080CC8C2
- adds r4, r1, 0
- adds r1, r2, 0
-_080CC8A0:
- ldrh r0, [r2]
- cmp r0, r3
- bne _080CC8B8
- movs r0, 0x1
- b _080CC8C4
- .align 2, 0
-_080CC8AC: .4byte gUnknown_2031DB4
-_080CC8B0: .4byte gUnknown_83F5F26
-_080CC8B4: .4byte 0x0000ffff
-_080CC8B8:
- adds r1, 0x2
- adds r2, 0x2
- ldrh r0, [r1]
- cmp r0, r4
- bne _080CC8A0
-_080CC8C2:
- movs r0, 0
-_080CC8C4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CC87C
-
- thumb_func_start sub_80CC8CC
-sub_80CC8CC: @ 80CC8CC
- push {r4,lr}
- ldr r1, _080CC8E4 @ =gSpecialVar_0x8004
- ldr r2, _080CC8E8 @ =0xfffffedf
- adds r0, r2, 0
- ldrh r2, [r1]
- adds r0, r2
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x39
- bls _080CC8EC
- movs r0, 0
- b _080CC908
- .align 2, 0
-_080CC8E4: .4byte gSpecialVar_0x8004
-_080CC8E8: .4byte 0xfffffedf
-_080CC8EC:
- ldr r4, _080CC910 @ =gStringVar1
- ldrh r0, [r1]
- bl ItemIdToBattleMoveId
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xD
- muls r1, r0
- ldr r0, _080CC914 @ =gMoveNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0x1
-_080CC908:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080CC910: .4byte gStringVar1
-_080CC914: .4byte gMoveNames
- thumb_func_end sub_80CC8CC
-
- thumb_func_start sub_80CC918
-sub_80CC918: @ 80CC918
- push {r4,lr}
- ldr r4, _080CC940 @ =0x00004025
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _080CC944 @ =0x000001f3
- cmp r1, r0
- bhi _080CC938
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
-_080CC938:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CC940: .4byte 0x00004025
-_080CC944: .4byte 0x000001f3
- thumb_func_end sub_80CC918
-
- thumb_func_start Special_DaisyMassageServices
-Special_DaisyMassageServices: @ 80CC948
- push {lr}
- ldr r0, _080CC968 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080CC96C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x6
- bl AdjustFriendship
- ldr r0, _080CC970 @ =0x00004025
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_080CC968: .4byte gSpecialVar_0x8004
-_080CC96C: .4byte gPlayerParty
-_080CC970: .4byte 0x00004025
- thumb_func_end Special_DaisyMassageServices
-
- thumb_func_start sub_80CC974
-sub_80CC974: @ 80CC974
- push {r4-r6,lr}
- ldr r0, _080CC9A8 @ =sub_80CCA18
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r5, r1, 3
- ldr r6, _080CC9AC @ =gTasks+0x8
- adds r4, r5, r6
- movs r0, 0x3
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CC9B4
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r5, r0
- ldr r1, _080CC9B0 @ =sub_80CCAF4
- str r1, [r0]
- b _080CCA08
- .align 2, 0
-_080CC9A8: .4byte sub_80CCA18
-_080CC9AC: .4byte gTasks+0x8
-_080CC9B0: .4byte sub_80CCAF4
-_080CC9B4:
- ldr r0, _080CC9D8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _080CC9DC @ =0x00004f01
- cmp r1, r0
- bne _080CC9E8
- ldr r0, _080CC9E0 @ =gUnknown_83F61FB
- ldrb r0, [r0]
- strh r0, [r4]
- movs r0, 0x8
- strh r0, [r4, 0x4]
- ldr r0, _080CC9E4 @ =gUnknown_83F60D0
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
- b _080CC9FC
- .align 2, 0
-_080CC9D8: .4byte gSaveBlock1Ptr
-_080CC9DC: .4byte 0x00004f01
-_080CC9E0: .4byte gUnknown_83F61FB
-_080CC9E4: .4byte gUnknown_83F60D0
-_080CC9E8:
- ldr r0, _080CCA10 @ =gUnknown_83F61F0
- ldrb r0, [r0]
- strh r0, [r4]
- movs r0, 0xB
- strh r0, [r4, 0x4]
- ldr r0, _080CCA14 @ =gUnknown_83F5F50
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
-_080CC9FC:
- movs r0, 0
- strh r0, [r4, 0x2]
- movs r0, 0x7
- movs r1, 0x1
- bl sub_8059948
-_080CCA08:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCA10: .4byte gUnknown_83F61F0
-_080CCA14: .4byte gUnknown_83F5F50
- thumb_func_end sub_80CC974
-
- thumb_func_start sub_80CCA18
-sub_80CCA18: @ 80CCA18
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080CCAA4 @ =gTasks+0x8
- adds r4, r1, r0
- ldr r0, _080CCAA8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080CCAE6
- movs r0, 0x2
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080CCAE6
- movs r0, 0x5
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080CCAE6
- ldr r0, _080CCAAC @ =gUnknown_2036E28
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _080CCAE6
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _080CCAE6
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x4
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bne _080CCA78
- strh r2, [r4, 0x2]
-_080CCA78:
- ldr r0, _080CCAB0 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _080CCAB4 @ =0x00004f01
- cmp r1, r0
- bne _080CCAC0
- ldr r1, _080CCAB8 @ =gUnknown_83F61FB
- movs r2, 0x2
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- strh r0, [r4]
- movs r3, 0x2
- ldrsh r0, [r4, r3]
- lsls r0, 5
- ldr r1, _080CCABC @ =gUnknown_83F60D0
- adds r0, r1
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
- b _080CCADE
- .align 2, 0
-_080CCAA4: .4byte gTasks+0x8
-_080CCAA8: .4byte gPaletteFade
-_080CCAAC: .4byte gUnknown_2036E28
-_080CCAB0: .4byte gSaveBlock1Ptr
-_080CCAB4: .4byte 0x00004f01
-_080CCAB8: .4byte gUnknown_83F61FB
-_080CCABC: .4byte gUnknown_83F60D0
-_080CCAC0:
- ldr r1, _080CCAEC @ =gUnknown_83F61F0
- movs r2, 0x2
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- strh r0, [r4]
- movs r3, 0x2
- ldrsh r0, [r4, r3]
- lsls r0, 5
- ldr r1, _080CCAF0 @ =gUnknown_83F5F50
- adds r0, r1
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
-_080CCADE:
- movs r0, 0x7
- movs r1, 0x1
- bl sub_8059948
-_080CCAE6:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCAEC: .4byte gUnknown_83F61F0
-_080CCAF0: .4byte gUnknown_83F5F50
- thumb_func_end sub_80CCA18
-
- thumb_func_start sub_80CCAF4
-sub_80CCAF4: @ 80CCAF4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x4
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080CCB5A
- ldr r0, _080CCB20 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _080CCB24 @ =0x00004f01
- cmp r1, r0
- bne _080CCB2C
- ldr r0, _080CCB28 @ =gUnknown_83F61D0
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
- b _080CCB36
- .align 2, 0
-_080CCB20: .4byte gSaveBlock1Ptr
-_080CCB24: .4byte 0x00004f01
-_080CCB28: .4byte gUnknown_83F61D0
-_080CCB2C:
- ldr r0, _080CCB60 @ =gUnknown_83F60B0
- movs r1, 0x70
- movs r2, 0x20
- bl LoadPalette
-_080CCB36:
- movs r0, 0x7
- movs r1, 0x1
- bl sub_8059948
- ldr r0, _080CCB64 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080CCB54
- movs r0, 0x80
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
-_080CCB54:
- adds r0, r4, 0
- bl DestroyTask
-_080CCB5A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCB60: .4byte gUnknown_83F60B0
-_080CCB64: .4byte gPaletteFade
- thumb_func_end sub_80CCAF4
-
- thumb_func_start sub_80CCB68
-sub_80CCB68: @ 80CCB68
- push {r4,lr}
- ldr r4, _080CCB90 @ =sub_80CCA18
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCB88
- adds r0, r4, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080CCB88:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCB90: .4byte sub_80CCA18
- thumb_func_end sub_80CCB68
-
- thumb_func_start sub_80CCB94
-sub_80CCB94: @ 80CCB94
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r7, 0
- movs r6, 0
- bl GetLeadMonIndex
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, _080CCBC0 @ =gSpecialVar_0x8007
- mov r1, r8
- strh r1, [r0]
- movs r4, 0
- movs r0, 0x64
- mov r5, r8
- muls r5, r0
- ldr r0, _080CCBC4 @ =gPlayerParty
- mov r9, r0
- b _080CCBCE
- .align 2, 0
-_080CCBC0: .4byte gSpecialVar_0x8007
-_080CCBC4: .4byte gPlayerParty
-_080CCBC8:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080CCBCE:
- cmp r4, 0x2
- bhi _080CCBEA
- mov r1, r9
- adds r0, r5, r1
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- ldr r1, _080CCC1C @ =gUnknown_83F6203
- adds r1, r4, r1
- ldrb r1, [r1]
- cmp r0, r1
- bne _080CCBC8
- adds r7, r4, 0
-_080CCBEA:
- cmp r4, 0x3
- beq _080CCC7A
- movs r0, 0x64
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r1, _080CCC20 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x20
- bl GetMonData
- cmp r0, 0xFF
- bne _080CCC7A
- cmp r7, 0
- bne _080CCC34
- ldr r0, _080CCC24 @ =gStringVar2
- ldr r1, _080CCC28 @ =gMoveNames + 0x112A FRENZY PLANT
- bl StringCopy
- ldr r1, _080CCC2C @ =gSpecialVar_0x8005
- movs r0, 0xF
- strh r0, [r1]
- ldr r0, _080CCC30 @ =0x000002de
- b _080CCC6E
- .align 2, 0
-_080CCC1C: .4byte gUnknown_83F6203
-_080CCC20: .4byte gPlayerParty
-_080CCC24: .4byte gStringVar2
-_080CCC28: .4byte gMoveNames + 0x112A
-_080CCC2C: .4byte gSpecialVar_0x8005
-_080CCC30: .4byte 0x000002de
-_080CCC34:
- cmp r7, 0x1
- bne _080CCC5C
- ldr r0, _080CCC4C @ =gStringVar2
- ldr r1, _080CCC50 @ =gMoveNames + 0xF97 BLAST BURN
- bl StringCopy
- ldr r1, _080CCC54 @ =gSpecialVar_0x8005
- movs r0, 0x10
- strh r0, [r1]
- ldr r0, _080CCC58 @ =0x000002df
- b _080CCC6E
- .align 2, 0
-_080CCC4C: .4byte gStringVar2
-_080CCC50: .4byte gMoveNames + 0xF97
-_080CCC54: .4byte gSpecialVar_0x8005
-_080CCC58: .4byte 0x000002df
-_080CCC5C:
- ldr r0, _080CCC80 @ =gStringVar2
- ldr r1, _080CCC84 @ =gMoveNames + 0xFA4 HYDRO CANNON
- bl StringCopy
- ldr r1, _080CCC88 @ =gSpecialVar_0x8005
- movs r0, 0x11
- strh r0, [r1]
- movs r0, 0xB8
- lsls r0, 2
-_080CCC6E:
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCC8C
-_080CCC7A:
- movs r0, 0
- b _080CCCE4
- .align 2, 0
-_080CCC80: .4byte gStringVar2
-_080CCC84: .4byte gMoveNames + 0xFA4
-_080CCC88: .4byte gSpecialVar_0x8005
-_080CCC8C:
- movs r0, 0x64
- mov r1, r8
- muls r1, r0
- ldr r0, _080CCCF0 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xD
- bl GetMonData
- cmp r0, 0
- beq _080CCCA8
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080CCCA8:
- adds r0, r4, 0
- movs r1, 0xE
- bl GetMonData
- cmp r0, 0
- beq _080CCCBA
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080CCCBA:
- adds r0, r4, 0
- movs r1, 0xF
- bl GetMonData
- cmp r0, 0
- beq _080CCCCC
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080CCCCC:
- adds r0, r4, 0
- movs r1, 0x10
- bl GetMonData
- cmp r0, 0
- beq _080CCCDE
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080CCCDE:
- ldr r0, _080CCCF4 @ =gSpecialVar_0x8006
- strh r6, [r0]
- movs r0, 0x1
-_080CCCE4:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080CCCF0: .4byte gPlayerParty
-_080CCCF4: .4byte gSpecialVar_0x8006
- thumb_func_end sub_80CCB94
-
- thumb_func_start sub_80CCCF8
-sub_80CCCF8: @ 80CCCF8
- push {r4,lr}
- movs r4, 0
- ldr r0, _080CCD0C @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r0, 0xF
- bne _080CCD14
- ldr r0, _080CCD10 @ =0x000002de
- bl FlagSet
- b _080CCD2C
- .align 2, 0
-_080CCD0C: .4byte gSpecialVar_0x8005
-_080CCD10: .4byte 0x000002de
-_080CCD14:
- cmp r0, 0x10
- bne _080CCD24
- ldr r0, _080CCD20 @ =0x000002df
- bl FlagSet
- b _080CCD2C
- .align 2, 0
-_080CCD20: .4byte 0x000002df
-_080CCD24:
- movs r0, 0xB8
- lsls r0, 2
- bl FlagSet
-_080CCD2C:
- ldr r0, _080CCD74 @ =0x000002de
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCD40
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080CCD40:
- ldr r0, _080CCD78 @ =0x000002df
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCD54
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080CCD54:
- movs r0, 0xB8
- lsls r0, 2
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCD6A
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080CCD6A:
- cmp r4, 0x3
- beq _080CCD7C
- movs r0, 0
- b _080CCD7E
- .align 2, 0
-_080CCD74: .4byte 0x000002de
-_080CCD78: .4byte 0x000002df
-_080CCD7C:
- movs r0, 0x1
-_080CCD7E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80CCCF8
-
- thumb_func_start sub_80CCD84
-sub_80CCD84: @ 80CCD84
- push {lr}
- ldr r0, _080CCDB8 @ =0x000002e3
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080CCDC8
- ldr r0, _080CCDBC @ =gSaveBlock1Ptr
- ldr r2, [r0]
- ldrh r1, [r2, 0x4]
- ldr r0, _080CCDC0 @ =0x00003d03
- cmp r1, r0
- bne _080CCDC8
- ldr r1, [r2]
- ldr r0, _080CCDC4 @ =0x00190018
- cmp r1, r0
- bne _080CCDC8
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _080CCDC8
- movs r0, 0x1
- b _080CCDCA
- .align 2, 0
-_080CCDB8: .4byte 0x000002e3
-_080CCDBC: .4byte gSaveBlock1Ptr
-_080CCDC0: .4byte 0x00003d03
-_080CCDC4: .4byte 0x00190018
-_080CCDC8:
- movs r0, 0
-_080CCDCA:
- pop {r1}
- bx r1
- thumb_func_end sub_80CCD84
-
- thumb_func_start sub_80CCDD0
-sub_80CCDD0: @ 80CCDD0
- push {lr}
- movs r2, 0xD6
- lsls r2, 2
- movs r0, 0x1F
- movs r1, 0x1F
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- ldr r0, _080CCDF8 @ =0x000002e3
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .align 2, 0
-_080CCDF8: .4byte 0x000002e3
- thumb_func_end sub_80CCDD0
-
- thumb_func_start sub_80CCDFC
-sub_80CCDFC: @ 80CCDFC
- push {lr}
- ldr r0, _080CCE0C @ =task_deoxys_sound
- movs r1, 0x8
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080CCE0C: .4byte task_deoxys_sound
- thumb_func_end sub_80CCDFC
-
- thumb_func_start task_deoxys_sound
-task_deoxys_sound: @ 80CCE10
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _080CCE30 @ =0x00000848
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080CCE38
- ldr r1, _080CCE34 @ =gSpecialVar_Result
- movs r0, 0x3
- b _080CCE9E
- .align 2, 0
-_080CCE30: .4byte 0x00000848
-_080CCE34: .4byte gSpecialVar_Result
-_080CCE38:
- ldr r0, _080CCE80 @ =0x0000403e
- mov r8, r0
- bl VarGet
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r4, _080CCE84 @ =0x00004026
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r4, 0
- movs r1, 0
- bl VarSet
- cmp r5, 0
- beq _080CCE90
- ldr r0, _080CCE88 @ =gUnknown_83F637C
- subs r1, r5, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, r6
- bcs _080CCE90
- movs r0, 0
- bl sub_80CCEE8
- mov r0, r8
- movs r1, 0
- bl VarSet
- ldr r1, _080CCE8C @ =gSpecialVar_Result
- movs r0, 0
- strh r0, [r1]
- b _080CCEA4
- .align 2, 0
-_080CCE80: .4byte 0x0000403e
-_080CCE84: .4byte 0x00004026
-_080CCE88: .4byte gUnknown_83F637C
-_080CCE8C: .4byte gSpecialVar_Result
-_080CCE90:
- cmp r5, 0xA
- bne _080CCEB4
- ldr r0, _080CCEAC @ =0x00000848
- bl FlagSet
- ldr r1, _080CCEB0 @ =gSpecialVar_Result
- movs r0, 0x2
-_080CCE9E:
- strh r0, [r1]
- bl EnableBothScriptContexts
-_080CCEA4:
- adds r0, r7, 0
- bl DestroyTask
- b _080CCED6
- .align 2, 0
-_080CCEAC: .4byte 0x00000848
-_080CCEB0: .4byte gSpecialVar_Result
-_080CCEB4:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r5, 24
- lsrs r0, 24
- bl sub_80CCEE8
- ldr r0, _080CCEE0 @ =0x0000403e
- adds r1, r5, 0
- bl VarSet
- ldr r1, _080CCEE4 @ =gSpecialVar_Result
- movs r0, 0x1
- strh r0, [r1]
- adds r0, r7, 0
- bl DestroyTask
-_080CCED6:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCEE0: .4byte 0x0000403e
-_080CCEE4: .4byte gSpecialVar_Result
- thumb_func_end task_deoxys_sound
-
- thumb_func_start sub_80CCEE8
-sub_80CCEE8: @ 80CCEE8
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 5
- ldr r1, _080CCF24 @ =gUnknown_83F6206
- adds r0, r1
- movs r1, 0xD0
- lsls r1, 1
- movs r2, 0x8
- bl LoadPalette
- movs r0, 0xA
- bl sub_8083598
- ldr r0, _080CCF28 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0x1
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- cmp r4, 0
- bne _080CCF2C
- movs r0, 0xBD
- bl PlaySE
- b _080CCF32
- .align 2, 0
-_080CCF24: .4byte gUnknown_83F6206
-_080CCF28: .4byte gSaveBlock1Ptr
-_080CCF2C:
- movs r0, 0xFD
- bl PlaySE
-_080CCF32:
- ldr r0, _080CCF64 @ =sub_80CCF98
- movs r1, 0x8
- bl CreateTask
- ldr r3, _080CCF68 @ =gFieldEffectArguments
- movs r0, 0x1
- str r0, [r3]
- movs r0, 0x38
- str r0, [r3, 0x4]
- movs r0, 0x2
- str r0, [r3, 0x8]
- ldr r0, _080CCF6C @ =gUnknown_83F6366
- lsls r2, r4, 1
- adds r1, r2, r0
- ldrb r1, [r1]
- str r1, [r3, 0xC]
- adds r0, 0x1
- adds r0, r2, r0
- ldrb r0, [r0]
- str r0, [r3, 0x10]
- adds r5, r2, 0
- cmp r4, 0
- bne _080CCF70
- movs r0, 0x3C
- b _080CCF72
- .align 2, 0
-_080CCF64: .4byte sub_80CCF98
-_080CCF68: .4byte gFieldEffectArguments
-_080CCF6C: .4byte gUnknown_83F6366
-_080CCF70:
- movs r0, 0x5
-_080CCF72:
- str r0, [r3, 0x14]
- movs r0, 0x43
- bl FieldEffectStart
- ldr r0, _080CCF94 @ =gUnknown_83F6366
- adds r1, r5, r0
- ldrb r1, [r1]
- adds r0, 0x1
- adds r0, r5, r0
- ldrb r2, [r0]
- movs r0, 0x1
- bl Overworld_SetMapObjTemplateCoords
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CCF94: .4byte gUnknown_83F6366
- thumb_func_end sub_80CCEE8
-
- thumb_func_start sub_80CCF98
-sub_80CCF98: @ 80CCF98
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x43
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _080CCFB4
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_080CCFB4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80CCF98
-
- thumb_func_start sub_80CCFBC
-sub_80CCFBC: @ 80CCFBC
- push {r4,lr}
- ldr r4, _080CCFEC @ =0x00004026
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, _080CCFF0 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _080CCFF4 @ =0x00003802 MAP_BIRTH_ISLAND_EXTERIOR
- cmp r1, r0
- bne _080CD000
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x63
- bls _080CCFF8
- adds r0, r4, 0
- movs r1, 0
- bl VarSet
- b _080CD000
- .align 2, 0
-_080CCFEC: .4byte 0x00004026
-_080CCFF0: .4byte gSaveBlock1Ptr
-_080CCFF4: .4byte 0x00003802
-_080CCFF8:
- adds r0, r4, 0
- adds r1, r2, 0
- bl VarSet
-_080CD000:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80CCFBC
-
- thumb_func_start sub_80CD008
-sub_80CD008: @ 80CD008
- push {lr}
- ldr r0, _080CD02C @ =0x0000403e
- bl VarGet
- lsls r0, 24
- lsrs r0, 19
- ldr r1, _080CD030 @ =gUnknown_83F6206
- adds r0, r1
- movs r1, 0xD0
- lsls r1, 1
- movs r2, 0x8
- bl LoadPalette
- movs r0, 0xA
- bl sub_8083598
- pop {r0}
- bx r0
- .align 2, 0
-_080CD02C: .4byte 0x0000403e
-_080CD030: .4byte gUnknown_83F6206
- thumb_func_end sub_80CD008
-
- thumb_func_start sub_80CD034
-sub_80CD034: @ 80CD034
- push {r4,r5,lr}
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- cmp r4, r5
- bcs _080CD06A
-_080CD044:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _080CD05C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x4
- bl GetMonData
- cmp r0, 0x1
- bne _080CD060
- movs r0, 0x1
- b _080CD06C
- .align 2, 0
-_080CD05C: .4byte gPlayerParty
-_080CD060:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _080CD044
-_080CD06A:
- movs r0, 0
-_080CD06C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80CD034
-
- thumb_func_start sub_80CD074
-sub_80CD074: @ 80CD074
- push {lr}
- ldr r0, _080CD088 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _080CD08C @ =0x00000a02
- cmp r1, r0
- beq _080CD090
- movs r0, 0x1
- b _080CD092
- .align 2, 0
-_080CD088: .4byte gSaveBlock1Ptr
-_080CD08C: .4byte 0x00000a02
-_080CD090:
- movs r0, 0
-_080CD092:
- pop {r1}
- bx r1
- thumb_func_end sub_80CD074
-
- thumb_func_start sub_80CD098
-sub_80CD098: @ 80CD098
- push {lr}
- sub sp, 0x4
- ldr r0, _080CD0CC @ =gUnknown_203ADFA
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080CD0E8
- ldr r0, _080CD0D0 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- adds r0, 0x1B
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _080CD0D4 @ =gSpecialVar_0x8006
- ldrh r3, [r0]
- cmp r3, 0
- bne _080CD0E0
- ldr r0, _080CD0D8 @ =gSpecialVar_0x8005
- ldrh r2, [r0]
- str r3, [sp]
- movs r0, 0
- movs r3, 0
- bl CreateTextCursorSpriteForOakSpeech
- ldr r1, _080CD0DC @ =gUnknown_2039A1B
- strb r0, [r1]
- b _080CD0E8
- .align 2, 0
-_080CD0CC: .4byte gUnknown_203ADFA
-_080CD0D0: .4byte gSpecialVar_0x8004
-_080CD0D4: .4byte gSpecialVar_0x8006
-_080CD0D8: .4byte gSpecialVar_0x8005
-_080CD0DC: .4byte gUnknown_2039A1B
-_080CD0E0:
- ldr r0, _080CD0F0 @ =gUnknown_2039A1B
- ldrb r0, [r0]
- bl sub_8006398
-_080CD0E8:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080CD0F0: .4byte gUnknown_2039A1B
- thumb_func_end sub_80CD098
-
- thumb_func_start sub_80CD0F4
-sub_80CD0F4: @ 80CD0F4
- push {r4-r7,lr}
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r7, r0, 24
- movs r6, 0
- cmp r6, r7
- bcs _080CD14A
-_080CD104:
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- ldr r0, _080CD138 @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- ldr r1, _080CD13C @ =gSpecialVar_0x8004
- ldrh r1, [r1]
- cmp r0, r1
- bne _080CD140
- bl sub_80CC1E4
- adds r4, r0, 0
- adds r0, r5, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bne _080CD140
- movs r0, 0x1
- b _080CD14C
- .align 2, 0
-_080CD138: .4byte gPlayerParty
-_080CD13C: .4byte gSpecialVar_0x8004
-_080CD140:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, r7
- bcc _080CD104
-_080CD14A:
- movs r0, 0
-_080CD14C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80CD0F4
-
- @ Determines which of Lorelei's doll collection to show
- @ based on how many times you've entered the Hall of Fame.
- thumb_func_start Special_ComputeLoreleiDollCollection
-Special_ComputeLoreleiDollCollection: @ 80CD154
- push {r4,lr}
- movs r0, 0xA
- bl GetGameStat
- adds r4, r0, 0
- cmp r4, 0x18
- bls _080CD1AE
- movs r0, 0xA5
- bl FlagClear
- cmp r4, 0x31
- bls _080CD172
- movs r0, 0xA6
- bl FlagClear
-_080CD172:
- cmp r4, 0x4A
- bls _080CD17C
- movs r0, 0xA7
- bl FlagClear
-_080CD17C:
- cmp r4, 0x63
- bls _080CD186
- movs r0, 0xA8
- bl FlagClear
-_080CD186:
- cmp r4, 0x7C
- bls _080CD190
- movs r0, 0xA9
- bl FlagClear
-_080CD190:
- cmp r4, 0x95
- bls _080CD19A
- movs r0, 0xAA
- bl FlagClear
-_080CD19A:
- cmp r4, 0xAE
- bls _080CD1A4
- movs r0, 0xAB
- bl FlagClear
-_080CD1A4:
- cmp r4, 0xC7
- bls _080CD1AE
- movs r0, 0xAC
- bl FlagClear
-_080CD1AE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end Special_ComputeLoreleiDollCollection
-
- thumb_func_start sub_80CD1B4
-sub_80CD1B4: @ 80CD1B4
- push {lr}
- ldr r0, _080CD1C8 @ =sub_80CD1CC
- movs r1, 0x8
- bl CreateTask
- movs r0, 0x96
- bl PlaySE
- pop {r0}
- bx r0
- .align 2, 0
-_080CD1C8: .4byte sub_80CD1CC
- thumb_func_end sub_80CD1B4
-
- thumb_func_start sub_80CD1CC
-sub_80CD1CC: @ 80CD1CC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080CD21C @ =gTasks+0x8
- adds r4, r0, r1
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- movs r0, 0x2
- ldrsh r1, [r4, r0]
- ldr r0, _080CD220 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r1, r0
- bne _080CD200
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- movs r0, 0
- strh r0, [r4, 0x2]
- movs r0, 0x96
- bl PlaySE
-_080CD200:
- movs r0, 0
- ldrsh r1, [r4, r0]
- ldr r0, _080CD224 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _080CD214
- adds r0, r5, 0
- bl DestroyTask
-_080CD214:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080CD21C: .4byte gTasks+0x8
-_080CD220: .4byte gSpecialVar_0x8005
-_080CD224: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80CD1CC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
index 3452841c4..ec892e0bb 100644
--- a/asm/fldeff_cut.s
+++ b/asm/fldeff_cut.s
@@ -33,7 +33,7 @@ sub_8097898: @ 8097898
ldr r4, _080978CC @ =gUnknown_2039874
movs r0, 0
strb r0, [r4]
- bl sub_80CCD84
+ bl CutMoveRuinValleyCheck
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -232,7 +232,7 @@ sub_8097A20: @ 8097A20
ldrb r0, [r0]
cmp r0, 0x1
bne _08097A3C
- bl sub_80CCDD0
+ bl CutMoveOpenDottedHoleDoor
b _08097A42
.align 2, 0
_08097A38: .4byte gUnknown_2039874
diff --git a/asm/learn_move.s b/asm/learn_move.s
index a7a5b264d..36b88bc20 100644
--- a/asm/learn_move.s
+++ b/asm/learn_move.s
@@ -15,8 +15,8 @@ sub_80E4620: @ 80E4620
bx r0
thumb_func_end sub_80E4620
- thumb_func_start sub_80E4634
-sub_80E4634: @ 80E4634
+ thumb_func_start DisplayMoveTutorMenu
+DisplayMoveTutorMenu: @ 80E4634
push {lr}
sub sp, 0x4
bl ScriptContext2_Enable
@@ -35,7 +35,7 @@ sub_80E4634: @ 80E4634
bx r0
.align 2, 0
_080E465C: .4byte sub_80E4660
- thumb_func_end sub_80E4634
+ thumb_func_end DisplayMoveTutorMenu
thumb_func_start sub_80E4660
sub_80E4660: @ 80E4660
@@ -1653,7 +1653,7 @@ _080E53F4:
movs r2, 0x2
movs r3, 0x2
bl sub_80E559C
- ldr r1, _080E5440 @ =gUnknown_84886E8
+ ldr r1, _080E5440 @ =gMoveDescriptionPointers
subs r0, r5, 0x1
lsls r0, 2
adds r0, r1
@@ -1670,7 +1670,7 @@ _080E53F4:
bx r0
.align 2, 0
_080E543C: .4byte gBattleMoves
-_080E5440: .4byte gUnknown_84886E8
+_080E5440: .4byte gMoveDescriptionPointers
thumb_func_end sub_80E5340
thumb_func_start sub_80E5444
diff --git a/asm/pokemon_size_record.s b/asm/pokemon_size_record.s
index cb87652fa..e14bdc51d 100644
--- a/asm/pokemon_size_record.s
+++ b/asm/pokemon_size_record.s
@@ -323,8 +323,8 @@ sub_80A0904: @ 80A0904
_080A0914: .4byte 0x0000403d
thumb_func_end sub_80A0904
- thumb_func_start sub_80A0918
-sub_80A0918: @ 80A0918
+ thumb_func_start GetHeracrossSizeRecordInfo
+GetHeracrossSizeRecordInfo: @ 80A0918
push {lr}
ldr r0, _080A092C @ =0x0000403d
bl GetVarPointer
@@ -335,10 +335,10 @@ sub_80A0918: @ 80A0918
bx r0
.align 2, 0
_080A092C: .4byte 0x0000403d
- thumb_func_end sub_80A0918
+ thumb_func_end GetHeracrossSizeRecordInfo
- thumb_func_start sub_80A0930
-sub_80A0930: @ 80A0930
+ thumb_func_start CompareHeracrossSize
+CompareHeracrossSize: @ 80A0930
push {r4,lr}
ldr r0, _080A0950 @ =0x0000403d
bl GetVarPointer
@@ -355,7 +355,7 @@ sub_80A0930: @ 80A0930
.align 2, 0
_080A0950: .4byte 0x0000403d
_080A0954: .4byte gSpecialVar_Result
- thumb_func_end sub_80A0930
+ thumb_func_end CompareHeracrossSize
thumb_func_start sub_80A0958
sub_80A0958: @ 80A0958
@@ -369,8 +369,8 @@ sub_80A0958: @ 80A0958
_080A0968: .4byte 0x00004040
thumb_func_end sub_80A0958
- thumb_func_start sub_80A096C
-sub_80A096C: @ 80A096C
+ thumb_func_start GetMagikarpSizeRecordInfo
+GetMagikarpSizeRecordInfo: @ 80A096C
push {lr}
ldr r0, _080A0980 @ =0x00004040
bl GetVarPointer
@@ -381,10 +381,10 @@ sub_80A096C: @ 80A096C
bx r0
.align 2, 0
_080A0980: .4byte 0x00004040
- thumb_func_end sub_80A096C
+ thumb_func_end GetMagikarpSizeRecordInfo
- thumb_func_start sub_80A0984
-sub_80A0984: @ 80A0984
+ thumb_func_start CompareMagikarpSize
+CompareMagikarpSize: @ 80A0984
push {r4,lr}
ldr r0, _080A09A4 @ =0x00004040
bl GetVarPointer
@@ -401,7 +401,7 @@ sub_80A0984: @ 80A0984
.align 2, 0
_080A09A4: .4byte 0x00004040
_080A09A8: .4byte gSpecialVar_Result
- thumb_func_end sub_80A0984
+ thumb_func_end CompareMagikarpSize
thumb_func_start GiveGiftRibbonToParty
GiveGiftRibbonToParty: @ 80A09AC
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 71e0e2e0e..ec0e9e53c 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1751,8 +1751,8 @@ _0808C69C:
_0808C6A4: .4byte gPaletteFade
thumb_func_end c3_0808C39C
- thumb_func_start sub_808C6A8
-sub_808C6A8: @ 808C6A8
+ thumb_func_start ShowPokemonStorageSystem
+ShowPokemonStorageSystem: @ 808C6A8
push {lr}
ldr r0, _0808C6D0 @ =c3_0808C39C
movs r1, 0x50
@@ -1773,7 +1773,7 @@ sub_808C6A8: @ 808C6A8
.align 2, 0
_0808C6D0: .4byte c3_0808C39C
_0808C6D4: .4byte gTasks
- thumb_func_end sub_808C6A8
+ thumb_func_end ShowPokemonStorageSystem
thumb_func_start mapldr_0808C6D8
mapldr_0808C6D8: @ 808C6D8
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 8a01dcfb6..d9ef35bd4 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -6470,7 +6470,7 @@ _08137B1C:
str r1, [sp, 0x4]
str r6, [sp, 0x8]
str r5, [sp, 0xC]
- ldr r3, _08137BC8 @ =gUnknown_84886E8
+ ldr r3, _08137BC8 @ =gMoveDescriptionPointers
mov r4, r8
ldrb r1, [r4]
lsls r1, 1
@@ -6502,7 +6502,7 @@ _08137BB8: .4byte 0x00003004
_08137BBC: .4byte gUnknown_8463FA4
_08137BC0: .4byte 0x0000316c
_08137BC4: .4byte 0x00003188
-_08137BC8: .4byte gUnknown_84886E8
+_08137BC8: .4byte gMoveDescriptionPointers
_08137BCC: .4byte 0x00003258
thumb_func_end sub_8137AF8
@@ -7652,7 +7652,7 @@ _081384C4: .4byte gEnemyParty
_081384C8: .4byte gLinkPlayers
_081384CC: .4byte 0x0000304c
_081384D0:
- bl sub_80CC1E4
+ bl GetPlayerTrainerId
adds r4, r0, 0
ldr r0, _0813851C @ =0x0000ffff
ands r4, r0
diff --git a/asm/post_battle_event_funcs.s b/asm/post_battle_event_funcs.s
index 20455093a..a96501d7b 100644
--- a/asm/post_battle_event_funcs.s
+++ b/asm/post_battle_event_funcs.s
@@ -106,8 +106,8 @@ _080CA3BC: .4byte 0x0000083b
_080CA3C0: .4byte CB2_DoHallOfFameScreen
thumb_func_end Special_HallOfFame
- thumb_func_start sub_80CA3C4
-sub_80CA3C4: @ 80CA3C4
+ thumb_func_start sp0C8_whiteout_maybe
+sp0C8_whiteout_maybe: @ 80CA3C4
push {lr}
ldr r0, _080CA3D4 @ =c2_whiteout
bl SetMainCallback2
@@ -116,6 +116,6 @@ sub_80CA3C4: @ 80CA3C4
bx r1
.align 2, 0
_080CA3D4: .4byte c2_whiteout
- thumb_func_end sub_80CA3C4
+ thumb_func_end sp0C8_whiteout_maybe
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/script_pokemon_util_80A0058.s b/asm/script_pokemon_util_80A0058.s
index 6b4cdd1a8..525293081 100644
--- a/asm/script_pokemon_util_80A0058.s
+++ b/asm/script_pokemon_util_80A0058.s
@@ -420,8 +420,8 @@ _080A0378: .4byte gSpecialVar_Result
_080A037C: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
thumb_func_end sub_80A0350
- thumb_func_start sub_80A0380
-sub_80A0380: @ 80A0380
+ thumb_func_start ChooseBattleTowerPlayerParty
+ChooseBattleTowerPlayerParty: @ 80A0380
push {lr}
ldr r1, _080A0394 @ =gMain
ldr r0, _080A0398 @ =sub_80A039C
@@ -433,7 +433,7 @@ sub_80A0380: @ 80A0380
.align 2, 0
_080A0394: .4byte gMain
_080A0398: .4byte sub_80A039C
- thumb_func_end sub_80A0380
+ thumb_func_end ChooseBattleTowerPlayerParty
thumb_func_start sub_80A039C
sub_80A039C: @ 80A039C
@@ -450,7 +450,7 @@ sub_80A039C: @ 80A039C
_080A03B0: .4byte gUnknown_203B0D4
_080A03B4: .4byte gSpecialVar_Result
_080A03B8:
- bl sub_80A03D8
+ bl ReducePlayerPartyToThree
ldr r1, _080A03D0 @ =gSpecialVar_Result
movs r0, 0x1
strh r0, [r1]
@@ -465,8 +465,8 @@ _080A03D0: .4byte gSpecialVar_Result
_080A03D4: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
thumb_func_end sub_80A039C
- thumb_func_start sub_80A03D8
-sub_80A03D8: @ 80A03D8
+ thumb_func_start ReducePlayerPartyToThree
+ReducePlayerPartyToThree: @ 80A03D8
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -530,6 +530,6 @@ _080A042C:
_080A0454: .4byte gPlayerParty
_080A0458: .4byte gUnknown_203B0D4
_080A045C: .4byte 0x05000096
- thumb_func_end sub_80A03D8
+ thumb_func_end ReducePlayerPartyToThree
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/script_pokemon_util_80BF8FC.s b/asm/script_pokemon_util_80BF8FC.s
index bf461b039..15d19e08b 100644
--- a/asm/script_pokemon_util_80BF8FC.s
+++ b/asm/script_pokemon_util_80BF8FC.s
@@ -36,8 +36,8 @@ _080BF934: .4byte sub_80BF97C
_080BF938: .4byte gTasks
thumb_func_end Special_ChooseMonFromParty
- thumb_func_start sub_80BF93C
-sub_80BF93C: @ 80BF93C
+ thumb_func_start SelectMoveTutorMon
+SelectMoveTutorMon: @ 80BF93C
push {lr}
sub sp, 0x4
bl ScriptContext2_Enable
@@ -65,7 +65,7 @@ sub_80BF93C: @ 80BF93C
.align 2, 0
_080BF974: .4byte sub_80BF97C
_080BF978: .4byte gTasks
- thumb_func_end sub_80BF93C
+ thumb_func_end SelectMoveTutorMon
thumb_func_start sub_80BF97C
sub_80BF97C: @ 80BF97C
@@ -100,8 +100,8 @@ _080BF9B4: .4byte gPaletteFade
_080BF9B8: .4byte gTasks
thumb_func_end sub_80BF97C
- thumb_func_start Special_ChooseMoveToDelete
-Special_ChooseMoveToDelete: @ 80BF9BC
+ thumb_func_start SelectMove
+SelectMove: @ 80BF9BC
push {r4,lr}
sub sp, 0x4
ldr r0, _080BF9F0 @ =gPlayerParty
@@ -132,7 +132,7 @@ _080BF9F8: .4byte gPlayerPartyCount
_080BF9FC: .4byte CB2_ReturnToField
_080BFA00: .4byte gFieldCallback
_080BFA04: .4byte FieldCallback_ReturnToEventScript2
- thumb_func_end Special_ChooseMoveToDelete
+ thumb_func_end SelectMove
thumb_func_start ScrSpecial_CountPokemonMoves
ScrSpecial_CountPokemonMoves: @ 80BFA08
@@ -333,8 +333,8 @@ sub_80BFAA8: @ 80BFAA8
_080BFBA4: .4byte gPPUpGetMask
thumb_func_end sub_80BFAA8
- thumb_func_start Special_DeleteSelectedMove
-Special_DeleteSelectedMove: @ 80BFBA8
+ thumb_func_start DeleteMonMove
+DeleteMonMove: @ 80BFBA8
push {r4-r6,lr}
mov r6, r8
push {r6}
@@ -385,10 +385,10 @@ _080BFBFC:
_080BFC08: .4byte gSpecialVar_0x8004
_080BFC0C: .4byte gPlayerParty
_080BFC10: .4byte gSpecialVar_0x8005
- thumb_func_end Special_DeleteSelectedMove
+ thumb_func_end DeleteMonMove
- thumb_func_start sub_80BFC14
-sub_80BFC14: @ 80BFC14
+ thumb_func_start IsSelectedMonEgg
+IsSelectedMonEgg: @ 80BFC14
push {lr}
ldr r0, _080BFC38 @ =gSpecialVar_0x8004
ldrh r1, [r0]
@@ -417,6 +417,6 @@ _080BFC48:
bx r0
.align 2, 0
_080BFC4C: .4byte gSpecialVar_Result
- thumb_func_end sub_80BFC14
+ thumb_func_end IsSelectedMonEgg
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/trade.s b/asm/trade.s
index b5e8ee022..8dd3809f1 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -13779,8 +13779,8 @@ _08053A94: .4byte gUnknown_826D1E4
_08053A98: .4byte SpriteCallbackDummy
thumb_func_end sub_8053A0C
- thumb_func_start sub_8053A9C
-sub_8053A9C: @ 8053A9C
+ thumb_func_start GetInGameTradeSpeciesInfo
+GetInGameTradeSpeciesInfo: @ 8053A9C
push {r4-r6,lr}
ldr r0, _08053AD0 @ =gSpecialVar_0x8004
ldrh r0, [r0]
@@ -13811,7 +13811,7 @@ _08053AD4: .4byte gUnknown_826CF8C
_08053AD8: .4byte gStringVar1
_08053ADC: .4byte gSpeciesNames
_08053AE0: .4byte gStringVar2
- thumb_func_end sub_8053A9C
+ thumb_func_end GetInGameTradeSpeciesInfo
thumb_func_start sub_8053AE4
sub_8053AE4: @ 8053AE4
@@ -14078,8 +14078,8 @@ _08053CEE:
_08053D28: .4byte gUnknown_826D1A8
thumb_func_end sub_8053CD4
- thumb_func_start sub_8053D2C
-sub_8053D2C: @ 8053D2C
+ thumb_func_start GetTradeSpecies
+GetTradeSpecies: @ 8053D2C
push {r4-r6,lr}
ldr r6, _08053D58 @ =gSpecialVar_0x8005
ldrh r0, [r6]
@@ -14108,10 +14108,10 @@ _08053D62:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end sub_8053D2C
+ thumb_func_end GetTradeSpecies
- thumb_func_start sub_8053D68
-sub_8053D68: @ 8053D68
+ thumb_func_start CreateInGameTradePokemon
+CreateInGameTradePokemon: @ 8053D68
push {lr}
ldr r0, _08053D7C @ =gSpecialVar_0x8005
ldrb r0, [r0]
@@ -14123,7 +14123,7 @@ sub_8053D68: @ 8053D68
.align 2, 0
_08053D7C: .4byte gSpecialVar_0x8005
_08053D80: .4byte gSpecialVar_0x8004
- thumb_func_end sub_8053D68
+ thumb_func_end CreateInGameTradePokemon
thumb_func_start sub_8053D84
sub_8053D84: @ 8053D84
@@ -14839,8 +14839,8 @@ _08054438: .4byte gWirelessCommType
_0805443C: .4byte gMain
thumb_func_end sub_80543C4
- thumb_func_start sub_8054440
-sub_8054440: @ 8054440
+ thumb_func_start DoInGameTradeScene
+DoInGameTradeScene: @ 8054440
push {lr}
sub sp, 0x4
bl ScriptContext2_Enable
@@ -14860,7 +14860,7 @@ sub_8054440: @ 8054440
bx r0
.align 2, 0
_0805446C: .4byte sub_8054470
- thumb_func_end sub_8054440
+ thumb_func_end DoInGameTradeScene
thumb_func_start sub_8054470
sub_8054470: @ 8054470
diff --git a/baserom.ips b/baserom.ips
index 94d61ef1f..f619a0841 100644
--- a/baserom.ips
+++ b/baserom.ips
Binary files differ
diff --git a/common_syms/field_specials.txt b/common_syms/field_specials.txt
new file mode 100644
index 000000000..04599f921
--- /dev/null
+++ b/common_syms/field_specials.txt
@@ -0,0 +1,2 @@
+sFieldSpecialsListMenuTemplate
+sFieldSpecialsListMenuScrollBuffer
diff --git a/data/data_835B488.s b/data/data_835B488.s
index b2b76476c..e49b310a6 100644
--- a/data/data_835B488.s
+++ b/data/data_835B488.s
@@ -807,7 +807,7 @@ gUnknown_83E0248:: @ 83E0248
.4byte gUnknown_841807D, NULL
.4byte gUnknown_841808E, NULL
.4byte gUnknown_841809C, NULL
- .4byte gUnknown_8417929, NULL
+ .4byte gOtherText_Quit, NULL
gUnknown_83E0268:: @ 83E0268
.4byte gUnknown_8417DFE, NULL
diff --git a/data/data_83F5738.s b/data/data_83F5738.s
index 1f9839561..da25ada76 100644
--- a/data/data_83F5738.s
+++ b/data/data_83F5738.s
@@ -1,3 +1,7 @@
+#include "constants/species.h"
+#include "constants/items.h"
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
.section .rodata
.align 2
@@ -22,89 +26,6 @@ gUnknown_83F5864:: @ 83F5864
gUnknown_83F5A44:: @ 83F5A44
.incbin "baserom.gba", 0x3F5A44, 0xB4
-gUnknown_83F5AF8:: @ 83F5AF8
- .incbin "baserom.gba", 0x3F5AF8, 0x22
-
-gUnknown_83F5B1A:: @ 83F5B1A
- .incbin "baserom.gba", 0x3F5B1A, 0x16
-
-gUnknown_83F5B30:: @ 83F5B30
- .incbin "baserom.gba", 0x3F5B30, 0xC
-
-gUnknown_83F5B3C:: @ 83F5B3C
- .incbin "baserom.gba", 0x3F5B3C, 0x8
-
-gUnknown_83F5B44:: @ 83F5B44
- .incbin "baserom.gba", 0x3F5B44, 0x50
-
-gUnknown_83F5B94:: @ 83F5B94
- .incbin "baserom.gba", 0x3F5B94, 0x12
-
-gUnknown_83F5BA6:: @ 83F5BA6
- .incbin "baserom.gba", 0x3F5BA6, 0x12
-
-gUnknown_83F5BB8:: @ 83F5BB8
- .incbin "baserom.gba", 0x3F5BB8, 0x9
-
-gUnknown_83F5BC1:: @ 83F5BC1
- .incbin "baserom.gba", 0x3F5BC1, 0xB
-
-gUnknown_83F5BCC:: @ 83F5BCC
- .incbin "baserom.gba", 0x3F5BCC, 0x150
-
-gUnknown_83F5D1C:: @ 83F5D1C
- .incbin "baserom.gba", 0x3F5D1C, 0x10
-
-sStarterMon:: @ 83F5D2C
- .incbin "baserom.gba", 0x3F5D2C, 0x6
-
-gUnknown_83F5D32:: @ 83F5D32
- .incbin "baserom.gba", 0x3F5D32, 0x26
-
-gUnknown_83F5D58:: @ 83F5D58
- .incbin "baserom.gba", 0x3F5D58, 0x198
-
- .align 2
-gUnknown_83F5EF0:: @ 83F5EF0
- .asciz "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scr_tool.c"
-
- .align 2
-gUnknown_83F5F24:: @ 83F5F24
- .asciz "0"
-
-gUnknown_83F5F26:: @ 83F5F26
- .incbin "baserom.gba", 0x3F5F26, 0x2A
-
-gUnknown_83F5F50:: @ 83F5F50
- .incbin "baserom.gba", 0x3F5F50, 0x160
-
-gUnknown_83F60B0:: @ 83F60B0
- .incbin "baserom.gba", 0x3F60B0, 0x20
-
-gUnknown_83F60D0:: @ 83F60D0
- .incbin "baserom.gba", 0x3F60D0, 0x100
-
-gUnknown_83F61D0:: @ 83F61D0
- .incbin "baserom.gba", 0x3F61D0, 0x20
-
-gUnknown_83F61F0:: @ 83F61F0
- .incbin "baserom.gba", 0x3F61F0, 0xB
-
-gUnknown_83F61FB:: @ 83F61FB
- .incbin "baserom.gba", 0x3F61FB, 0x8
-
-gUnknown_83F6203:: @ 83F6203
- .incbin "baserom.gba", 0x3F6203, 0x3
-
-gUnknown_83F6206:: @ 83F6206
- .incbin "baserom.gba", 0x3F6206, 0x160
-
-gUnknown_83F6366:: @ 83F6366
- .incbin "baserom.gba", 0x3F6366, 0x16
-
-gUnknown_83F637C:: @ 83F637C
- .incbin "baserom.gba", 0x3F637C, 0xC
-
.section .rodata.83F6C90
gUnknown_83F6C90:: @ 83F6C90
.incbin "baserom.gba", 0x3F6C90, 0x20
diff --git a/data/data_8471F00.s b/data/data_8471F00.s
index bd77774a9..82d507ea1 100644
--- a/data/data_8471F00.s
+++ b/data/data_8471F00.s
@@ -342,7 +342,7 @@ gUnknown_84827B4:: @ 84827B4
.include "data/text/move_descriptions.inc"
.align 2, 0
-gUnknown_84886E8:: @ 84886E8
+gMoveDescriptionPointers:: @ 84886E8
.4byte gMoveDescription_Pound
.4byte gMoveDescription_KarateChop
.4byte gMoveDescription_DoubleSlap
diff --git a/data/event_scripts.s b/data/event_scripts.s
index 8f9e8ae26..da56bcf96 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -15,6 +15,7 @@
#include "constants/map_objects.h"
#include "constants/fame_checker.h"
#include "constants/seagallop.h"
+#include "constants/game_stat.h"
.include "asm/macros.inc"
.include "asm/macros/event.inc"
.set FALSE, 0
@@ -227,7 +228,7 @@ gStdScriptsEnd::
.include "data/maps/SevenIsland_TanobyRuins_RixyChamber/scripts.inc"
.include "data/maps/SevenIsland_TanobyRuins_ViapoisChamber/scripts.inc"
.include "data/maps/ThreeIsland_DunsparceTunnel/scripts.inc"
- .include "data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc"
+ .include "data/maps/SevenIsland_SevaultCanyon_TanobyKey/scripts.inc"
.include "data/maps/NavelRock_1F/scripts.inc"
.include "data/maps/NavelRock_Summit/scripts.inc"
.include "data/maps/NavelRock_Base/scripts.inc"
@@ -583,7 +584,7 @@ gStdScriptsEnd::
.include "data/maps/FiveIsland_LostCave_Room4/text.inc"
.include "data/maps/FiveIsland_LostCave_Room10/text.inc"
.include "data/maps/ThreeIsland_DunsparceTunnel/text.inc"
- .include "data/maps/SevenIsland_SeavaultCanyon_TanobyKey/text.inc"
+ .include "data/maps/SevenIsland_SevaultCanyon_TanobyKey/text.inc"
.include "data/maps/OneIsland_KindleRoad_EmberSpa/text.inc"
.include "data/maps/PalletTown/text.inc"
.include "data/maps/ViridianCity/text.inc"
@@ -876,7 +877,7 @@ gUnknown_81A4EE9:: @ 81A4EE9
goto EventScript_1A4FC7
EventScript_1A4F19:: @ 81A4F19
- special sub_8080618
+ special ScrSpecial_ShowTrainerNonBattlingSpeech
waitmessage
waitbuttonpress
release
@@ -897,18 +898,18 @@ gUnknown_81A4F21:: @ 81A4F21
gUnknown_81A4F3E:: @ 81A4F3E
call EventScript_1A4FBA
- specialvar VAR_RESULT, sub_810CEB4
+ specialvar VAR_RESULT, ScrSpecial_GetTrainerEyeRematchFlag
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1A4F72
special PlayTrainerEncounterMusic
special sub_8080398
- special sub_80805D8
+ special ScrSpecial_ShowTrainerIntroSpeech
waitmessage
waitbuttonpress
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A4FB8
- special sub_80805B0
+ special ScrSpecial_StartTrainerEyeRematch
waitstate
releaseall
end
@@ -917,7 +918,7 @@ EventScript_1A4F72:: @ 81A4F72
ontrainerbattleend
gUnknown_81A4F73:: @ 81A4F73
- specialvar VAR_RESULT, sub_810CEB4
+ specialvar VAR_RESULT, ScrSpecial_GetTrainerEyeRematchFlag
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1A4FB0
special CheckForAlivePartyMons
@@ -925,13 +926,13 @@ gUnknown_81A4F73:: @ 81A4F73
goto_if ne, EventScript_1A4FB1
special PlayTrainerEncounterMusic
special sub_8080398
- special sub_80805D8
+ special ScrSpecial_ShowTrainerIntroSpeech
waitmessage
waitbuttonpress
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A4FB8
- special sub_80805B0
+ special ScrSpecial_StartTrainerEyeRematch
waitstate
releaseall
end
@@ -940,7 +941,7 @@ EventScript_1A4FB0:: @ 81A4FB0
ontrainerbattleend
EventScript_1A4FB1:: @ 81A4FB1
- special sub_8080618
+ special ScrSpecial_ShowTrainerNonBattlingSpeech
waitmessage
waitbuttonpress
release
@@ -960,14 +961,14 @@ Movement_1A4FC5:: @ 81A4FC5
step_end
EventScript_1A4FC7:: @ 81A4FC7
- special sub_80805D8
+ special ScrSpecial_ShowTrainerIntroSpeech
waitmessage
waitbuttonpress
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A501A
battlebegin
- specialvar VAR_RESULT, sub_80803CC
+ specialvar VAR_RESULT, ScrSpecial_GetTrainerBattleMode
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1A5017
compare_var_to_value VAR_RESULT, 2
@@ -1599,7 +1600,7 @@ EventScript_1A6578:: @ 81A6578
end
EventScript_1A65B8:: @ 81A65B8
- incrementgamestat 15
+ incrementgamestat GAME_STAT_USED_POKECENTER
message Text_1A54E1
waitmessage
call EventScript_1A65CE
@@ -1618,7 +1619,7 @@ EventScript_1A65CE:: @ 81A65CE
return
EventScript_1A65EC:: @ 81A65EC
- specialvar VAR_RESULT, sub_80CD074
+ specialvar VAR_RESULT, Special_PlayerIsNotInTrainerTowerLobby
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1A661D
specialvar VAR_RESULT, sp182_move_string
@@ -1797,7 +1798,7 @@ gStdScript_1:: @ 81A67B3
EventScript_1A67EE:: @ 81A67EE
removeobject VAR_LAST_TALKED
additem VAR_0x8004, VAR_0x8005
- specialvar VAR_RESULT, sub_80CC8CC
+ specialvar VAR_RESULT, Special_ItemIsTM_GetMoveName
copyvar VAR_0x8008, VAR_RESULT
compare_var_to_value VAR_0x8008, 1
call_if eq, EventScript_1A6821
@@ -1922,7 +1923,7 @@ gUnknown_81A6955:: @ 81A6955
setvar VAR_0x8004, 27
special Special_SetSomeVariable
setvar VAR_0x8004, 0
- special sub_80CA86C
+ special Special_AnimatePcTurnOn
playse SE_PC_ON
msgbox Text_1A5075
goto EventScript_1A6998
@@ -1954,7 +1955,7 @@ EventScript_1A69A8:: @ 81A69A8
EventScript_1A69F0:: @ 81A69F0
playse SE_PC_LOGIN
msgbox Text_1A50DD
- special sub_80EB6FC
+ special PlayerPC
waitstate
goto EventScript_1A6998
end
@@ -1966,7 +1967,7 @@ EventScript_1A6A05:: @ 81A6A05
checkflag FLAG_SYS_NOT_SOMEONES_PC
call_if TRUE, EventScript_1A6A3D
msgbox Text_1A50BE
- special sub_808C6A8
+ special ShowPokemonStorageSystem
waitstate
setvar VAR_0x8004, 27
special Special_SetSomeVariable
@@ -1984,7 +1985,7 @@ EventScript_1A6A3D:: @ 81A6A3D
EventScript_1A6A46:: @ 81A6A46
setvar VAR_0x8004, 0
playse SE_PC_OFF
- special sub_80CA9A8
+ special Special_AnimatePcTurnOff
special sub_812B35C
releaseall
end
@@ -2169,7 +2170,7 @@ gUnknown_81A6C32:: @ 81A6C32
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
fadescreen 1
- special sub_80CA7EC
+ special Special_TownMap
waitstate
releaseall
end
@@ -2319,7 +2320,7 @@ EventScript_1A73AD:: @ 81A73AD
EventScript_1A73B6:: @ 81A73B6
copyvar VAR_0x8004, VAR_0x8009
- special sub_80CA524
+ special Special_GetProfOaksRatingMessage
waitmessage
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_1A73D8
@@ -2410,7 +2411,7 @@ EventScript_1A74B7:: @ 81A74B7
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
- special sub_80CAC28
+ special Special_ShakeScreen
waitstate
releaseall
end
@@ -2500,7 +2501,7 @@ Movement_1A75D3:: @ 81A75D3
step_end
EventScript_1A75D5:: @ 81A75D5
- special sub_80CC974
+ special Special_PokemonLeagueLightingEffect
return
Movement_1A75D9:: @ 81A75D9
@@ -2704,7 +2705,7 @@ gUnknown_81A7702:: @ 81A7702
call EventScript_1A6AC0
lock
faceplayer
- specialvar VAR_0x8008, sub_80CC4D4
+ specialvar VAR_0x8008, Special_GetMartClerkObjectId
textcolor 0
compare_var_to_value VAR_0x8004, 0
goto_if eq, EventScript_1A774D
@@ -3894,7 +3895,7 @@ EventScript_1A8C9B:: @ 81A8C9B
EventScript_1A8CAD:: @ 81A8CAD
copyvar VAR_0x8004, VAR_0x8008
- specialvar VAR_RESULT, sub_8053A9C
+ specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
copyvar VAR_0x8009, VAR_RESULT
return
@@ -3908,15 +3909,15 @@ EventScript_1A8CBD:: @ 81A8CBD
EventScript_1A8CC9:: @ 81A8CC9
copyvar VAR_0x8005, VAR_0x800A
- specialvar VAR_RESULT, sub_8053D2C
+ specialvar VAR_RESULT, GetTradeSpecies
copyvar VAR_0x800B, VAR_RESULT
return
EventScript_1A8CD9:: @ 81A8CD9
copyvar VAR_0x8004, VAR_0x8008
copyvar VAR_0x8005, VAR_0x800A
- special sub_8053D68
- special sub_8054440
+ special CreateInGameTradePokemon
+ special DoInGameTradeScene
waitstate
lock
faceplayer
@@ -4113,7 +4114,7 @@ EventScript_1A8E4D:: @ 81A8E4D
special sub_807F0B0
waitstate
fadescreen 1
- special sub_80CA3C4
+ special sp0C8_whiteout_maybe
waitstate
end
@@ -4392,12 +4393,12 @@ EventScript_1A925E:: @ 81A925E
doweather
return
-EventScript_1A926C:: @ 81A926C
- special sub_80CD098
+EventScript_BrailleCursorWaitButton:: @ 81A926C
+ special Special_BrailleCursorToggle
waitbuttonpress
playse SE_SELECT
setvar VAR_0x8006, 1
- special sub_80CD098
+ special Special_BrailleCursorToggle
return
EventScript_1A927C:: @ 81A927C
@@ -4525,7 +4526,7 @@ gUnknown_81A93C0:: @ 81A93C0
Route3_EventScript_1A93C9:: @ 81A93C9
trainerbattle 0, TRAINER_YOUNGSTER_BEN, 0, Text_183560, Text_1835A0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A93F0
msgbox Text_1835B4, 6
@@ -4538,7 +4539,7 @@ EventScript_1A93F0:: @ 81A93F0
Route3_EventScript_1A9407:: @ 81A9407
trainerbattle 0, TRAINER_YOUNGSTER_CALVIN, 0, Text_183786, Text_1837BD
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A942E
msgbox Text_1837CF, 6
@@ -4551,7 +4552,7 @@ EventScript_1A942E:: @ 81A942E
Route3_EventScript_1A9445:: @ 81A9445
trainerbattle 0, TRAINER_BUG_CATCHER_COLTON, 0, Text_1834E6, Text_183509
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A946C
msgbox Text_18351C, 6
@@ -4564,7 +4565,7 @@ EventScript_1A946C:: @ 81A946C
Route3_EventScript_1A9483:: @ 81A9483
trainerbattle 0, TRAINER_BUG_CATCHER_GREG, 0, Text_183682, Text_1836B3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A94AA
msgbox Text_1836D9, 6
@@ -4577,7 +4578,7 @@ EventScript_1A94AA:: @ 81A94AA
Route3_EventScript_1A94C1:: @ 81A94C1
trainerbattle 0, TRAINER_BUG_CATCHER_JAMES, 0, Text_183807, Text_183837
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A94E8
msgbox Text_183849, 6
@@ -4590,7 +4591,7 @@ EventScript_1A94E8:: @ 81A94E8
Route3_EventScript_1A94FF:: @ 81A94FF
trainerbattle 0, TRAINER_LASS_JANICE, 0, Text_183616, Text_18363F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9526
msgbox Text_18364C, 6
@@ -4603,7 +4604,7 @@ EventScript_1A9526:: @ 81A9526
Route3_EventScript_1A953D:: @ 81A953D
trainerbattle 0, TRAINER_LASS_SALLY, 0, Text_18371B, Text_183746
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9564
msgbox Text_18374F, 6
@@ -4616,7 +4617,7 @@ EventScript_1A9564:: @ 81A9564
Route3_EventScript_1A957B:: @ 81A957B
trainerbattle 0, TRAINER_LASS_ROBIN, 0, Text_18387A, Text_183891
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A95A2
msgbox Text_18389C, 6
@@ -4629,7 +4630,7 @@ EventScript_1A95A2:: @ 81A95A2
Route4_EventScript_1A95B9:: @ 81A95B9
trainerbattle 0, TRAINER_LASS_CRISSY, 0, Text_183906, Text_183938
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A95E0
msgbox Text_183957, 6
@@ -4642,7 +4643,7 @@ EventScript_1A95E0:: @ 81A95E0
Route24_EventScript_1A95F7:: @ 81A95F7
trainerbattle 0, TRAINER_YOUNGSTER_TIMMY, 0, Text_188F76, Text_188F95
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A961E
msgbox Text_188FA7, 6
@@ -4655,7 +4656,7 @@ EventScript_1A961E:: @ 81A961E
Route24_EventScript_1A9635:: @ 81A9635
trainerbattle 0, TRAINER_BUG_CATCHER_CALE, 0, Text_18901B, Text_18908C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A965C
msgbox Text_18909E, 6
@@ -4668,7 +4669,7 @@ EventScript_1A965C:: @ 81A965C
Route24_EventScript_1A9673:: @ 81A9673
trainerbattle 0, TRAINER_LASS_RELI, 0, Text_188F2C, Text_188F46
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A969A
msgbox Text_188F53, 6
@@ -4681,7 +4682,7 @@ EventScript_1A969A:: @ 81A969A
Route24_EventScript_1A96B1:: @ 81A96B1
trainerbattle 0, TRAINER_LASS_ALI, 0, Text_188FC9, Text_188FE7
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A96D8
msgbox Text_188FF9, 6
@@ -4694,7 +4695,7 @@ EventScript_1A96D8:: @ 81A96D8
Route24_EventScript_1A96EF:: @ 81A96EF
trainerbattle 0, TRAINER_CAMPER_SHANE, 0, Text_188E74, Text_188E94
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9716
msgbox Text_188EA3, 6
@@ -4707,7 +4708,7 @@ EventScript_1A9716:: @ 81A9716
Route24_EventScript_1A972D:: @ 81A972D
trainerbattle 0, TRAINER_CAMPER_ETHAN, 0, Text_188ED9, Text_188EFA
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9754
msgbox Text_188F0A, 6
@@ -4720,7 +4721,7 @@ EventScript_1A9754:: @ 81A9754
Route25_EventScript_1A976B:: @ 81A976B
trainerbattle 0, TRAINER_YOUNGSTER_JOEY, 0, Text_1890C0, Text_1890E6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9792
msgbox Text_1890F5, 6
@@ -4733,7 +4734,7 @@ EventScript_1A9792:: @ 81A9792
Route25_EventScript_1A97A9:: @ 81A97A9
trainerbattle 0, TRAINER_YOUNGSTER_DAN, 0, Text_189165, Text_1891A6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A97D0
msgbox Text_1891B3, 6
@@ -4746,7 +4747,7 @@ EventScript_1A97D0:: @ 81A97D0
Route25_EventScript_1A97E7:: @ 81A97E7
trainerbattle 0, TRAINER_YOUNGSTER_CHAD, 0, Text_1892A9, Text_1892D9
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A980E
msgbox Text_1892EF, 6
@@ -4759,7 +4760,7 @@ EventScript_1A980E:: @ 81A980E
Route25_EventScript_1A9825:: @ 81A9825
trainerbattle 0, TRAINER_PICNICKER_KELSEY, 0, Text_189247, Text_189261
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A984C
msgbox Text_189281, 6
@@ -4772,7 +4773,7 @@ EventScript_1A984C:: @ 81A984C
Route25_EventScript_1A9863:: @ 81A9863
trainerbattle 0, TRAINER_LASS_HALEY, 0, Text_189333, Text_189364
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A988A
msgbox Text_189378, 6
@@ -4785,7 +4786,7 @@ EventScript_1A988A:: @ 81A988A
Route25_EventScript_1A98A1:: @ 81A98A1
trainerbattle 0, TRAINER_HIKER_FRANKLIN, 0, Text_1893A7, Text_1893EA
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A98C8
msgbox Text_1893FB, 6
@@ -4798,7 +4799,7 @@ EventScript_1A98C8:: @ 81A98C8
Route25_EventScript_1A98DF:: @ 81A98DF
trainerbattle 0, TRAINER_HIKER_NOB, 0, Text_189423, Text_189459
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9906
msgbox Text_18947E, 6
@@ -4811,7 +4812,7 @@ EventScript_1A9906:: @ 81A9906
Route25_EventScript_1A991D:: @ 81A991D
trainerbattle 0, TRAINER_HIKER_WAYNE, 0, Text_1894DE, Text_18950A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9944
msgbox Text_18951C, 6
@@ -4824,7 +4825,7 @@ EventScript_1A9944:: @ 81A9944
Route25_EventScript_1A995B:: @ 81A995B
trainerbattle 0, TRAINER_CAMPER_FLINT, 0, Text_1891EB, Text_189212
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9982
msgbox Text_18921D, 6
@@ -4837,7 +4838,7 @@ EventScript_1A9982:: @ 81A9982
Route6_EventScript_1A9999:: @ 81A9999
trainerbattle 0, TRAINER_BUG_CATCHER_KEIGO, 0, Text_183E9F, Text_183EC0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A99C0
msgbox Text_183ED4, 6
@@ -4850,7 +4851,7 @@ EventScript_1A99C0:: @ 81A99C0
Route6_EventScript_1A99D7:: @ 81A99D7
trainerbattle 0, TRAINER_BUG_CATCHER_ELIJAH, 0, Text_183FF0, Text_18401A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A99FE
msgbox Text_18402B, 6
@@ -4863,7 +4864,7 @@ EventScript_1A99FE:: @ 81A99FE
Route6_EventScript_1A9A15:: @ 81A9A15
trainerbattle 0, TRAINER_CAMPER_RICKY, 0, Text_183E04, Text_183E2A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9A3C
msgbox Text_183E3C, 6
@@ -4876,7 +4877,7 @@ EventScript_1A9A3C:: @ 81A9A3C
Route6_EventScript_1A9A53:: @ 81A9A53
trainerbattle 0, TRAINER_CAMPER_JEFF, 0, Text_183F07, Text_183F24
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9A7A
msgbox Text_183F51, 6
@@ -4889,7 +4890,7 @@ EventScript_1A9A7A:: @ 81A9A7A
Route6_EventScript_1A9A91:: @ 81A9A91
trainerbattle 0, TRAINER_PICNICKER_NANCY, 0, Text_183E4E, Text_183E79
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9AB8
msgbox Text_183E8D, 6
@@ -4902,7 +4903,7 @@ EventScript_1A9AB8:: @ 81A9AB8
Route6_EventScript_1A9ACF:: @ 81A9ACF
trainerbattle 0, TRAINER_PICNICKER_ISABELLE, 0, Text_183F90, Text_183FAB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9AF6
msgbox Text_183FC4, 6
@@ -4915,7 +4916,7 @@ EventScript_1A9AF6:: @ 81A9AF6
Route11_EventScript_1A9B0D:: @ 81A9B0D
trainerbattle 0, TRAINER_YOUNGSTER_EDDIE, 0, Text_184FBD, Text_184FD8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9B34
msgbox Text_184FEF, 6
@@ -4928,7 +4929,7 @@ EventScript_1A9B34:: @ 81A9B34
Route11_EventScript_1A9B4B:: @ 81A9B4B
trainerbattle 0, TRAINER_YOUNGSTER_DILLON, 0, Text_18506A, Text_18509B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9B72
msgbox Text_1850CF, 6
@@ -4941,7 +4942,7 @@ EventScript_1A9B72:: @ 81A9B72
Route11_EventScript_1A9B89:: @ 81A9B89
trainerbattle 0, TRAINER_YOUNGSTER_YASU, 0, Text_18517B, Text_1851AC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9BB0
msgbox Text_1851D2, 6
@@ -4954,7 +4955,7 @@ EventScript_1A9BB0:: @ 81A9BB0
Route11_EventScript_1A9BC7:: @ 81A9BC7
trainerbattle 0, TRAINER_YOUNGSTER_DAVE, 0, Text_185285, Text_1852C1
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9BEE
msgbox Text_1852E3, 6
@@ -4967,7 +4968,7 @@ EventScript_1A9BEE:: @ 81A9BEE
Route11_EventScript_1A9C05:: @ 81A9C05
trainerbattle 0, TRAINER_ENGINEER_BRAXTON, 0, Text_185011, Text_185037
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9C2C
msgbox Text_18504A, 6
@@ -4980,7 +4981,7 @@ EventScript_1A9C2C:: @ 81A9C2C
Route11_EventScript_1A9C43:: @ 81A9C43
trainerbattle 0, TRAINER_ENGINEER_BERNIE, 0, Text_185236, Text_185250
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9C6A
msgbox Text_185266, 6
@@ -4993,7 +4994,7 @@ EventScript_1A9C6A:: @ 81A9C6A
Route11_EventScript_1A9C81:: @ 81A9C81
trainerbattle 0, TRAINER_GAMER_HUGO, 0, Text_184F01, Text_184F15
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9CA8
msgbox Text_184F2E, 6
@@ -5006,7 +5007,7 @@ EventScript_1A9CA8:: @ 81A9CA8
Route11_EventScript_1A9CBF:: @ 81A9CBF
trainerbattle 0, TRAINER_GAMER_JASPER, 0, Text_184F5D, Text_184F7E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9CE6
msgbox Text_184F8E, 6
@@ -5019,7 +5020,7 @@ EventScript_1A9CE6:: @ 81A9CE6
Route11_EventScript_1A9CFD:: @ 81A9CFD
trainerbattle 0, TRAINER_GAMER_DIRK, 0, Text_1850E9, Text_185105
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9D24
msgbox Text_185114, 6
@@ -5032,7 +5033,7 @@ EventScript_1A9D24:: @ 81A9D24
Route11_EventScript_1A9D3B:: @ 81A9D3B
trainerbattle 0, TRAINER_GAMER_DARIAN, 0, Text_185135, Text_18514E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9D62
msgbox Text_185161, 6
@@ -5045,7 +5046,7 @@ EventScript_1A9D62:: @ 81A9D62
Route9_EventScript_1A9D79:: @ 81A9D79
trainerbattle 0, TRAINER_BUG_CATCHER_BRENT, 0, Text_184A2F, Text_184A6A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9DA0
msgbox Text_184A8C, 6
@@ -5058,7 +5059,7 @@ EventScript_1A9DA0:: @ 81A9DA0
Route9_EventScript_1A9DB7:: @ 81A9DB7
trainerbattle 0, TRAINER_BUG_CATCHER_CONNER, 0, Text_184B18, Text_184B32
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9DDE
msgbox Text_184B3B, 6
@@ -5071,7 +5072,7 @@ EventScript_1A9DDE:: @ 81A9DDE
Route9_EventScript_1A9DF5:: @ 81A9DF5
trainerbattle 0, TRAINER_CAMPER_CHRIS, 0, Text_184844, Text_18487E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9E1C
msgbox Text_184890, 6
@@ -5084,7 +5085,7 @@ EventScript_1A9E1C:: @ 81A9E1C
Route9_EventScript_1A9E33:: @ 81A9E33
trainerbattle 0, TRAINER_CAMPER_DREW, 0, Text_18489E, Text_1848CC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9E5A
msgbox Text_1848DE, 6
@@ -5097,7 +5098,7 @@ EventScript_1A9E5A:: @ 81A9E5A
Route9_EventScript_1A9E71:: @ 81A9E71
trainerbattle 0, TRAINER_PICNICKER_ALICIA, 0, Text_1847B7, Text_1847DF
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9E98
msgbox Text_1847F0, 6
@@ -5110,7 +5111,7 @@ EventScript_1A9E98:: @ 81A9E98
Route9_EventScript_1A9EAF:: @ 81A9EAF
trainerbattle 0, TRAINER_PICNICKER_CAITLIN, 0, Text_1848FF, Text_18491C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9ED6
msgbox Text_184931, 6
@@ -5123,7 +5124,7 @@ EventScript_1A9ED6:: @ 81A9ED6
Route9_EventScript_1A9EED:: @ 81A9EED
trainerbattle 0, TRAINER_HIKER_ALAN, 0, Text_184ABE, Text_184AD5
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9F14
msgbox Text_184AF1, 6
@@ -5136,7 +5137,7 @@ EventScript_1A9F14:: @ 81A9F14
Route9_EventScript_1A9F2B:: @ 81A9F2B
trainerbattle 0, TRAINER_HIKER_BRICE, 0, Text_1849DF, Text_184A04
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9F52
msgbox Text_184A11, 6
@@ -5149,7 +5150,7 @@ EventScript_1A9F52:: @ 81A9F52
Route9_EventScript_1A9F69:: @ 81A9F69
trainerbattle 0, TRAINER_HIKER_JEREMY, 0, Text_18495E, Text_18497F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9F90
msgbox Text_1849B0, 6
@@ -5162,7 +5163,7 @@ EventScript_1A9F90:: @ 81A9F90
Route10_EventScript_1A9FA7:: @ 81A9FA7
trainerbattle 0, TRAINER_PICNICKER_HEIDI, 0, Text_184CF1, Text_184D31
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A9FCE
msgbox Text_184D4D, 6
@@ -5175,7 +5176,7 @@ EventScript_1A9FCE:: @ 81A9FCE
Route10_EventScript_1A9FE5:: @ 81A9FE5
trainerbattle 0, TRAINER_PICNICKER_CAROL, 0, Text_184E04, Text_184E3B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA00C
msgbox Text_184E5E, 6
@@ -5188,7 +5189,7 @@ EventScript_1AA00C:: @ 81AA00C
Route10_EventScript_1AA023:: @ 81AA023
trainerbattle 0, TRAINER_POKEMANIAC_MARK, 0, Text_184B8A, Text_184BE5
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA04A
msgbox Text_184BFB, 6
@@ -5201,7 +5202,7 @@ EventScript_1AA04A:: @ 81AA04A
Route10_EventScript_1AA061:: @ 81AA061
trainerbattle 0, TRAINER_POKEMANIAC_HERMAN, 0, Text_184C86, Text_184CA7
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA088
msgbox Text_184CBB, 6
@@ -5214,7 +5215,7 @@ EventScript_1AA088:: @ 81AA088
Route10_EventScript_1AA09F:: @ 81AA09F
trainerbattle 0, TRAINER_HIKER_CLARK, 0, Text_184C1D, Text_184C2D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA0C6
msgbox Text_184C60, 6
@@ -5227,7 +5228,7 @@ EventScript_1AA0C6:: @ 81AA0C6
Route10_EventScript_1AA0DD:: @ 81AA0DD
trainerbattle 0, TRAINER_HIKER_TRENT, 0, Text_184DAA, Text_184DCE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA104
msgbox Text_184DE4, 6
@@ -5240,7 +5241,7 @@ EventScript_1AA104:: @ 81AA104
Route8_EventScript_1AA11B:: @ 81AA11B
trainerbattle 0, TRAINER_LASS_PAIGE, 0, Text_1841ED, Text_184210
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA142
msgbox Text_18421B, 6
@@ -5253,7 +5254,7 @@ EventScript_1AA142:: @ 81AA142
Route8_EventScript_1AA159:: @ 81AA159
trainerbattle 0, TRAINER_LASS_ANDREA, 0, Text_184321, Text_184346
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA180
msgbox Text_184350, 6
@@ -5266,7 +5267,7 @@ EventScript_1AA180:: @ 81AA180
Route8_EventScript_1AA197:: @ 81AA197
trainerbattle 0, TRAINER_LASS_MEGAN, 0, Text_18437A, Text_1843A6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA1BE
msgbox Text_1843D2, 6
@@ -5279,7 +5280,7 @@ EventScript_1AA1BE:: @ 81AA1BE
Route8_EventScript_1AA1D5:: @ 81AA1D5
trainerbattle 0, TRAINER_LASS_JULIA, 0, Text_1844AC, Text_1844D6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA1FC
msgbox Text_1844FD, 6
@@ -5292,7 +5293,7 @@ EventScript_1AA1FC:: @ 81AA1FC
Route8_EventScript_1AA213:: @ 81AA213
trainerbattle 0, TRAINER_SUPER_NERD_AIDAN, 0, Text_1840C5, Text_184100
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA23A
msgbox Text_18410E, 6
@@ -5305,7 +5306,7 @@ EventScript_1AA23A:: @ 81AA23A
Route8_EventScript_1AA251:: @ 81AA251
trainerbattle 0, TRAINER_SUPER_NERD_GLENN, 0, Text_18417C, Text_1841B6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA278
msgbox Text_1841C8, 6
@@ -5318,7 +5319,7 @@ EventScript_1AA278:: @ 81AA278
Route8_EventScript_1AA28F:: @ 81AA28F
trainerbattle 0, TRAINER_SUPER_NERD_LESLIE, 0, Text_184257, Text_18427A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA2B6
msgbox Text_1842B3, 6
@@ -5331,7 +5332,7 @@ EventScript_1AA2B6:: @ 81AA2B6
Route8_EventScript_1AA2CD:: @ 81AA2CD
trainerbattle 0, TRAINER_GAMER_STAN, 0, Text_18412F, Text_18414D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA2F4
msgbox Text_184162, 6
@@ -5344,7 +5345,7 @@ EventScript_1AA2F4:: @ 81AA2F4
Route8_EventScript_1AA30B:: @ 81AA30B
trainerbattle 0, TRAINER_GAMER_RICH, 0, Text_184432, Text_18444F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA332
msgbox Text_184466, 6
@@ -5357,7 +5358,7 @@ EventScript_1AA332:: @ 81AA332
Route8_EventScript_1AA349:: @ 81AA349
trainerbattle 4, TRAINER_TWINS_ELI_ANNE, 0, Text_1845A4, Text_1845D0, Text_184616
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA374
msgbox Text_1845F2, 6
@@ -5370,7 +5371,7 @@ EventScript_1AA374:: @ 81AA374
Route8_EventScript_1AA38F:: @ 81AA38F
trainerbattle 4, TRAINER_TWINS_ELI_ANNE, 0, Text_18464A, Text_184675, Text_1846AF
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA3BA
msgbox Text_18468B, 6
@@ -5383,7 +5384,7 @@ EventScript_1AA3BA:: @ 81AA3BA
Route8_EventScript_1AA3D5:: @ 81AA3D5
trainerbattle 0, TRAINER_BIKER_RICARDO, 0, Text_1846E2, Text_1846FC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA3FC
msgbox Text_184719, 6
@@ -5396,7 +5397,7 @@ EventScript_1AA3FC:: @ 81AA3FC
Route8_EventScript_1AA413:: @ 81AA413
trainerbattle 0, TRAINER_BIKER_JAREN, 0, Text_184742, Text_184767
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA43A
msgbox Text_18477A, 6
@@ -5409,7 +5410,7 @@ EventScript_1AA43A:: @ 81AA43A
Route12_EventScript_1AA451:: @ 81AA451
trainerbattle 0, TRAINER_FISHERMAN_NED, 0, Text_185402, Text_18541B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA478
msgbox Text_185432, 6
@@ -5422,7 +5423,7 @@ EventScript_1AA478:: @ 81AA478
Route12_EventScript_1AA48F:: @ 81AA48F
trainerbattle 0, TRAINER_FISHERMAN_CHIP, 0, Text_18544E, Text_185475
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA4B6
msgbox Text_185488, 6
@@ -5435,7 +5436,7 @@ EventScript_1AA4B6:: @ 81AA4B6
Route12_EventScript_1AA4CD:: @ 81AA4CD
trainerbattle 0, TRAINER_FISHERMAN_HANK, 0, Text_1855E1, Text_185606
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA4F4
msgbox Text_185616, 6
@@ -5448,7 +5449,7 @@ EventScript_1AA4F4:: @ 81AA4F4
Route12_EventScript_1AA50B:: @ 81AA50B
trainerbattle 0, TRAINER_FISHERMAN_ELLIOT, 0, Text_185682, Text_1856D0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA532
msgbox Text_1856DF, 6
@@ -5461,7 +5462,7 @@ EventScript_1AA532:: @ 81AA532
Route12_EventScript_1AA549:: @ 81AA549
trainerbattle 0, TRAINER_FISHERMAN_ANDREW, 0, Text_18570E, Text_185744
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA570
msgbox Text_18574D, 6
@@ -5474,7 +5475,7 @@ EventScript_1AA570:: @ 81AA570
Route12_EventScript_1AA587:: @ 81AA587
trainerbattle 0, TRAINER_ROCKER_LUCA, 0, Text_185547, Text_18559B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA5AE
msgbox Text_1855A6, 6
@@ -5487,7 +5488,7 @@ EventScript_1AA5AE:: @ 81AA5AE
Route12_EventScript_1AA5C5:: @ 81AA5C5
trainerbattle 0, TRAINER_CAMPER_JUSTIN, 0, Text_1854B9, Text_1854ED
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA5EC
msgbox Text_1854F2, 6
@@ -5500,7 +5501,7 @@ EventScript_1AA5EC:: @ 81AA5EC
Route12_EventScript_1AA603:: @ 81AA603
trainerbattle 4, TRAINER_YOUNG_COUPLE_GIA_JES, 0, Text_1857C5, Text_1857F1, Text_185842
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA62E
msgbox Text_18581F, 6
@@ -5513,7 +5514,7 @@ EventScript_1AA62E:: @ 81AA62E
Route12_EventScript_1AA649:: @ 81AA649
trainerbattle 4, TRAINER_YOUNG_COUPLE_GIA_JES, 0, Text_1858A6, Text_1858D0, Text_185908
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA674
msgbox Text_1858E2, 6
@@ -5526,7 +5527,7 @@ EventScript_1AA674:: @ 81AA674
Route13_EventScript_1AA68F:: @ 81AA68F
trainerbattle 0, TRAINER_BIKER_JARED, 0, Text_185D05, Text_185D1D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA6B6
msgbox Text_185D33, 6
@@ -5539,7 +5540,7 @@ EventScript_1AA6B6:: @ 81AA6B6
Route13_EventScript_1AA6CD:: @ 81AA6CD
trainerbattle 0, TRAINER_BEAUTY_LOLA, 0, Text_185BFC, Text_185C1F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA6F4
msgbox Text_185C35, 6
@@ -5552,7 +5553,7 @@ EventScript_1AA6F4:: @ 81AA6F4
Route13_EventScript_1AA70B:: @ 81AA70B
trainerbattle 0, TRAINER_BEAUTY_SHEILA, 0, Text_185C69, Text_185C95
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA732
msgbox Text_185CA8, 6
@@ -5565,7 +5566,7 @@ EventScript_1AA732:: @ 81AA732
Route13_EventScript_1AA749:: @ 81AA749
trainerbattle 0, TRAINER_BIRD_KEEPER_SEBASTIAN, 0, Text_185955, Text_18597E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA770
msgbox Text_1859A2, 6
@@ -5578,7 +5579,7 @@ EventScript_1AA770:: @ 81AA770
Route13_EventScript_1AA787:: @ 81AA787
trainerbattle 0, TRAINER_BIRD_KEEPER_PERRY, 0, Text_185B8F, Text_185BCA
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA7AE
msgbox Text_185BDB, 6
@@ -5591,7 +5592,7 @@ EventScript_1AA7AE:: @ 81AA7AE
Route13_EventScript_1AA7C5:: @ 81AA7C5
trainerbattle 0, TRAINER_BIRD_KEEPER_ROBERT, 0, Text_185D3D, Text_185D7B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA7EC
msgbox Text_185D89, 6
@@ -5604,7 +5605,7 @@ EventScript_1AA7EC:: @ 81AA7EC
Route13_EventScript_1AA803:: @ 81AA803
trainerbattle 0, TRAINER_PICNICKER_ALMA, 0, Text_185B12, Text_185B48
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA82A
msgbox Text_185B67, 6
@@ -5617,7 +5618,7 @@ EventScript_1AA82A:: @ 81AA82A
Route13_EventScript_1AA841:: @ 81AA841
trainerbattle 0, TRAINER_PICNICKER_SUSIE, 0, Text_1859CF, Text_1859EC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA868
msgbox Text_1859F9, 6
@@ -5630,7 +5631,7 @@ EventScript_1AA868:: @ 81AA868
Route13_EventScript_1AA87F:: @ 81AA87F
trainerbattle 0, TRAINER_PICNICKER_VALERIE, 0, Text_185A37, Text_185A56
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA8A6
msgbox Text_185A62, 6
@@ -5643,7 +5644,7 @@ EventScript_1AA8A6:: @ 81AA8A6
Route13_EventScript_1AA8BD:: @ 81AA8BD
trainerbattle 0, TRAINER_PICNICKER_GWEN, 0, Text_185A91, Text_185AC1
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA8E4
msgbox Text_185ADE, 6
@@ -5656,7 +5657,7 @@ EventScript_1AA8E4:: @ 81AA8E4
Route14_EventScript_1AA8FB:: @ 81AA8FB
trainerbattle 0, TRAINER_BIKER_MALIK, 0, Text_186344, Text_186362
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA922
msgbox Text_18636E, 6
@@ -5669,7 +5670,7 @@ EventScript_1AA922:: @ 81AA922
Route14_EventScript_1AA939:: @ 81AA939
trainerbattle 0, TRAINER_BIKER_LUKAS, 0, Text_1861F7, Text_186223
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA960
msgbox Text_186239, 6
@@ -5682,7 +5683,7 @@ EventScript_1AA960:: @ 81AA960
Route14_EventScript_1AA977:: @ 81AA977
trainerbattle 0, TRAINER_BIKER_ISAAC, 0, Text_186263, Text_186291
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA99E
msgbox Text_18629D, 6
@@ -5695,7 +5696,7 @@ EventScript_1AA99E:: @ 81AA99E
Route14_EventScript_1AA9B5:: @ 81AA9B5
trainerbattle 0, TRAINER_BIKER_GERALD, 0, Text_1862BD, Text_1862EF
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AA9DC
msgbox Text_1862F8, 6
@@ -5708,7 +5709,7 @@ EventScript_1AA9DC:: @ 81AA9DC
Route14_EventScript_1AA9F3:: @ 81AA9F3
trainerbattle 0, TRAINER_BIRD_KEEPER_DONALD, 0, Text_1860D9, Text_18610A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAA1A
msgbox Text_18611D, 6
@@ -5721,7 +5722,7 @@ EventScript_1AAA1A:: @ 81AAA1A
Route14_EventScript_1AAA31:: @ 81AAA31
trainerbattle 0, TRAINER_BIRD_KEEPER_BENNY, 0, Text_18618E, Text_1861B3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAA58
msgbox Text_1861BE, 6
@@ -5734,7 +5735,7 @@ EventScript_1AAA58:: @ 81AAA58
Route14_EventScript_1AAA6F:: @ 81AAA6F
trainerbattle 0, TRAINER_BIRD_KEEPER_CARTER, 0, Text_185E4D, Text_185E81
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAA96
msgbox Text_185E9C, 6
@@ -5747,7 +5748,7 @@ EventScript_1AAA96:: @ 81AAA96
Route14_EventScript_1AAAAD:: @ 81AAAAD
trainerbattle 0, TRAINER_BIRD_KEEPER_MITCH, 0, Text_185EDF, Text_185F0B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAAD4
msgbox Text_185F1A, 6
@@ -5760,7 +5761,7 @@ EventScript_1AAAD4:: @ 81AAAD4
Route14_EventScript_1AAAEB:: @ 81AAAEB
trainerbattle 0, TRAINER_BIRD_KEEPER_BECK, 0, Text_185F46, Text_185FAE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAB12
msgbox Text_185FBB, 6
@@ -5773,7 +5774,7 @@ EventScript_1AAB12:: @ 81AAB12
Route14_EventScript_1AAB29:: @ 81AAB29
trainerbattle 0, TRAINER_BIRD_KEEPER_MARLON, 0, Text_186021, Text_18607C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAB50
msgbox Text_186091, 6
@@ -5786,7 +5787,7 @@ EventScript_1AAB50:: @ 81AAB50
Route14_EventScript_1AAB67:: @ 81AAB67
trainerbattle 4, TRAINER_TWINS_KIRI_JAN, 0, Text_1863B7, Text_1863EA, Text_18642E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAB92
msgbox Text_18640D, 6
@@ -5799,7 +5800,7 @@ EventScript_1AAB92:: @ 81AAB92
Route14_EventScript_1AABAD:: @ 81AABAD
trainerbattle 4, TRAINER_TWINS_KIRI_JAN, 0, Text_18645B, Text_186487, Text_1864D3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AABD8
msgbox Text_18649C, 6
@@ -5812,7 +5813,7 @@ EventScript_1AABD8:: @ 81AABD8
Route15_EventScript_1AABF3:: @ 81AABF3
trainerbattle 0, TRAINER_BIKER_ERNEST, 0, Text_1868B6, Text_1868E8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAC1A
msgbox Text_1868F1, 6
@@ -5825,7 +5826,7 @@ EventScript_1AAC1A:: @ 81AAC1A
Route15_EventScript_1AAC31:: @ 81AAC31
trainerbattle 0, TRAINER_BIKER_ALEX, 0, Text_186936, Text_186968
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAC58
msgbox Text_18697C, 6
@@ -5838,7 +5839,7 @@ EventScript_1AAC58:: @ 81AAC58
Route15_EventScript_1AAC6F:: @ 81AAC6F
trainerbattle 0, TRAINER_BEAUTY_GRACE, 0, Text_18678B, Text_1867C1
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAC96
msgbox Text_1867DA, 6
@@ -5851,7 +5852,7 @@ EventScript_1AAC96:: @ 81AAC96
Route15_EventScript_1AACAD:: @ 81AACAD
trainerbattle 0, TRAINER_BEAUTY_OLIVIA, 0, Text_18680C, Text_186841
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AACD4
msgbox Text_18686F, 6
@@ -5864,7 +5865,7 @@ EventScript_1AACD4:: @ 81AACD4
Route15_EventScript_1AACEB:: @ 81AACEB
trainerbattle 0, TRAINER_BIRD_KEEPER_EDWIN, 0, Text_18664F, Text_18667A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAD12
msgbox Text_18668D, 6
@@ -5877,7 +5878,7 @@ EventScript_1AAD12:: @ 81AAD12
Route15_EventScript_1AAD29:: @ 81AAD29
trainerbattle 0, TRAINER_BIRD_KEEPER_CHESTER, 0, Text_1866D1, Text_186707
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAD50
msgbox Text_18671A, 6
@@ -5890,7 +5891,7 @@ EventScript_1AAD50:: @ 81AAD50
Route15_EventScript_1AAD67:: @ 81AAD67
trainerbattle 0, TRAINER_PICNICKER_YAZMIN, 0, Text_186A22, Text_186A40
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAD8E
msgbox Text_186A55, 6
@@ -5903,7 +5904,7 @@ EventScript_1AAD8E:: @ 81AAD8E
Route15_EventScript_1AADA5:: @ 81AADA5
trainerbattle 0, TRAINER_PICNICKER_KINDRA, 0, Text_18650B, Text_186549
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AADCC
msgbox Text_18655A, 6
@@ -5916,7 +5917,7 @@ EventScript_1AADCC:: @ 81AADCC
Route15_EventScript_1AADE3:: @ 81AADE3
trainerbattle 0, TRAINER_PICNICKER_BECKY, 0, Text_1865D3, Text_186612
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAE0A
msgbox Text_18661D, 6
@@ -5929,7 +5930,7 @@ EventScript_1AAE0A:: @ 81AAE0A
Route15_EventScript_1AAE21:: @ 81AAE21
trainerbattle 0, TRAINER_PICNICKER_CELIA, 0, Text_1869BA, Text_1869E6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAE48
msgbox Text_1869F4, 6
@@ -5942,7 +5943,7 @@ EventScript_1AAE48:: @ 81AAE48
Route15_EventScript_1AAE5F:: @ 81AAE5F
trainerbattle 4, TRAINER_CRUSH_KIN_RON_MYA, 0, Text_186A95, Text_186ACB, Text_186B46
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAE8A
msgbox Text_186B0A, 6
@@ -5955,7 +5956,7 @@ EventScript_1AAE8A:: @ 81AAE8A
Route15_EventScript_1AAEA5:: @ 81AAEA5
trainerbattle 4, TRAINER_CRUSH_KIN_RON_MYA, 0, Text_186B89, Text_186BB1, Text_186BFE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAED0
msgbox Text_186BD2, 6
@@ -5968,7 +5969,7 @@ EventScript_1AAED0:: @ 81AAED0
Route16_EventScript_1AAEEB:: @ 81AAEEB
trainerbattle 0, TRAINER_BIKER_LAO, 0, Text_186C4D, Text_186C5F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAF12
msgbox Text_186C75, 6
@@ -5981,7 +5982,7 @@ EventScript_1AAF12:: @ 81AAF12
Route16_EventScript_1AAF29:: @ 81AAF29
trainerbattle 0, TRAINER_BIKER_HIDEO, 0, Text_186D39, Text_186D52
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAF50
msgbox Text_186D5A, 6
@@ -5994,7 +5995,7 @@ EventScript_1AAF50:: @ 81AAF50
Route16_EventScript_1AAF67:: @ 81AAF67
trainerbattle 0, TRAINER_BIKER_RUBEN, 0, Text_186E86, Text_186EB4
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAF8E
msgbox Text_186EC7, 6
@@ -6007,7 +6008,7 @@ EventScript_1AAF8E:: @ 81AAF8E
Route16_EventScript_1AAFA5:: @ 81AAFA5
trainerbattle 0, TRAINER_CUE_BALL_KOJI, 0, Text_186CA2, Text_186CBB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AAFCC
msgbox Text_186CC5, 6
@@ -6020,7 +6021,7 @@ EventScript_1AAFCC:: @ 81AAFCC
Route16_EventScript_1AAFE3:: @ 81AAFE3
trainerbattle 0, TRAINER_CUE_BALL_LUKE, 0, Text_186CE5, Text_186D06
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB00A
msgbox Text_186D16, 6
@@ -6033,7 +6034,7 @@ EventScript_1AB00A:: @ 81AB00A
Route16_EventScript_1AB021:: @ 81AB021
trainerbattle 0, TRAINER_CUE_BALL_CAMRON, 0, Text_186DD9, Text_186E0D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB048
msgbox Text_186E1C, 6
@@ -6046,7 +6047,7 @@ EventScript_1AB048:: @ 81AB048
Route16_EventScript_1AB05F:: @ 81AB05F
trainerbattle 4, TRAINER_YOUNG_COUPLE_LEA_JED, 0, Text_186FBD, Text_186FFA, Text_187057
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB08A
msgbox Text_187027, 6
@@ -6059,7 +6060,7 @@ EventScript_1AB08A:: @ 81AB08A
Route16_EventScript_1AB0A5:: @ 81AB0A5
trainerbattle 4, TRAINER_YOUNG_COUPLE_LEA_JED, 0, Text_187097, Text_1870CC, Text_187120
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB0D0
msgbox Text_1870F9, 6
@@ -6072,7 +6073,7 @@ EventScript_1AB0D0:: @ 81AB0D0
Route17_EventScript_1AB0EB:: @ 81AB0EB
trainerbattle 0, TRAINER_BIKER_BILLY, 0, Text_1872BD, Text_1872E3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB112
msgbox Text_1872EB, 6
@@ -6085,7 +6086,7 @@ EventScript_1AB112:: @ 81AB112
Route17_EventScript_1AB129:: @ 81AB129
trainerbattle 0, TRAINER_BIKER_NIKOLAS, 0, Text_18730A, Text_187325
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB150
msgbox Text_187333, 6
@@ -6098,7 +6099,7 @@ EventScript_1AB150:: @ 81AB150
Route17_EventScript_1AB167:: @ 81AB167
trainerbattle 0, TRAINER_BIKER_JAXON, 0, Text_187456, Text_187472
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB18E
msgbox Text_187479, 6
@@ -6111,7 +6112,7 @@ EventScript_1AB18E:: @ 81AB18E
Route17_EventScript_1AB1A5:: @ 81AB1A5
trainerbattle 0, TRAINER_BIKER_WILLIAM, 0, Text_18749B, Text_1874B6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB1CC
msgbox Text_1874C9, 6
@@ -6124,7 +6125,7 @@ EventScript_1AB1CC:: @ 81AB1CC
Route17_EventScript_1AB1E3:: @ 81AB1E3
trainerbattle 0, TRAINER_CUE_BALL_RAUL, 0, Text_18717E, Text_1871AE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB20A
msgbox Text_1871BA, 6
@@ -6137,7 +6138,7 @@ EventScript_1AB20A:: @ 81AB20A
Route17_EventScript_1AB221:: @ 81AB221
trainerbattle 0, TRAINER_CUE_BALL_ISAIAH, 0, Text_187228, Text_187254
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB248
msgbox Text_18725A, 6
@@ -6150,7 +6151,7 @@ EventScript_1AB248:: @ 81AB248
Route17_EventScript_1AB25F:: @ 81AB25F
trainerbattle 0, TRAINER_CUE_BALL_ZEEK, 0, Text_187362, Text_187395
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB286
msgbox Text_18739F, 6
@@ -6163,7 +6164,7 @@ EventScript_1AB286:: @ 81AB286
Route17_EventScript_1AB29D:: @ 81AB29D
trainerbattle 0, TRAINER_CUE_BALL_JAMAL, 0, Text_1873D1, Text_1873EB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB2C4
msgbox Text_1873FF, 6
@@ -6176,7 +6177,7 @@ EventScript_1AB2C4:: @ 81AB2C4
Route17_EventScript_1AB2DB:: @ 81AB2DB
trainerbattle 0, TRAINER_CUE_BALL_COREY, 0, Text_18741D, Text_187429
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB302
msgbox Text_187432, 6
@@ -6189,7 +6190,7 @@ EventScript_1AB302:: @ 81AB302
Route17_EventScript_1AB319:: @ 81AB319
trainerbattle 0, TRAINER_BIKER_VIRGIL, 0, Text_18727D, Text_187295
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB340
msgbox Text_1872A5, 6
@@ -6202,7 +6203,7 @@ EventScript_1AB340:: @ 81AB340
Route18_EventScript_1AB357:: @ 81AB357
trainerbattle 0, TRAINER_BIRD_KEEPER_WILTON, 0, Text_187640, Text_187672
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB37E
msgbox Text_187677, 6
@@ -6215,7 +6216,7 @@ EventScript_1AB37E:: @ 81AB37E
Route18_EventScript_1AB395:: @ 81AB395
trainerbattle 0, TRAINER_BIRD_KEEPER_RAMIRO, 0, Text_18768C, Text_1876B3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB3BC
msgbox Text_1876C5, 6
@@ -6228,7 +6229,7 @@ EventScript_1AB3BC:: @ 81AB3BC
Route18_EventScript_1AB3D3:: @ 81AB3D3
trainerbattle 0, TRAINER_BIRD_KEEPER_JACOB, 0, Text_187704, Text_187726
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB3FA
msgbox Text_18772C, 6
@@ -6241,7 +6242,7 @@ EventScript_1AB3FA:: @ 81AB3FA
Route19_EventScript_1AB411:: @ 81AB411
trainerbattle 0, TRAINER_SWIMMER_MALE_RICHARD, 0, Text_1877A3, Text_1877DF
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB438
msgbox Text_1877EE, 6
@@ -6254,7 +6255,7 @@ EventScript_1AB438:: @ 81AB438
Route19_EventScript_1AB44F:: @ 81AB44F
trainerbattle 0, TRAINER_SWIMMER_MALE_REECE, 0, Text_187811, Text_18783E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB476
msgbox Text_187852, 6
@@ -6267,7 +6268,7 @@ EventScript_1AB476:: @ 81AB476
Route19_EventScript_1AB48D:: @ 81AB48D
trainerbattle 0, TRAINER_SWIMMER_MALE_MATTHEW, 0, Text_187884, Text_1878A5
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB4B4
msgbox Text_1878B1, 6
@@ -6280,7 +6281,7 @@ EventScript_1AB4B4:: @ 81AB4B4
Route19_EventScript_1AB4CB:: @ 81AB4CB
trainerbattle 0, TRAINER_SWIMMER_MALE_DOUGLAS, 0, Text_1878DD, Text_1878F8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB4F2
msgbox Text_1878FE, 6
@@ -6293,7 +6294,7 @@ EventScript_1AB4F2:: @ 81AB4F2
Route19_EventScript_1AB509:: @ 81AB509
trainerbattle 0, TRAINER_SWIMMER_MALE_DAVID, 0, Text_187925, Text_187955
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB530
msgbox Text_18795B, 6
@@ -6306,7 +6307,7 @@ EventScript_1AB530:: @ 81AB530
Route19_EventScript_1AB547:: @ 81AB547
trainerbattle 0, TRAINER_SWIMMER_MALE_TONY, 0, Text_187985, Text_1879C3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB56E
msgbox Text_1879D3, 6
@@ -6319,7 +6320,7 @@ EventScript_1AB56E:: @ 81AB56E
Route19_EventScript_1AB585:: @ 81AB585
trainerbattle 0, TRAINER_SWIMMER_MALE_AXLE, 0, Text_187AFA, Text_187B25
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB5AC
msgbox Text_187B35, 6
@@ -6332,7 +6333,7 @@ EventScript_1AB5AC:: @ 81AB5AC
Route19_EventScript_1AB5C3:: @ 81AB5C3
trainerbattle 0, TRAINER_SWIMMER_FEMALE_ANYA, 0, Text_187A11, Text_187A44
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB5EA
msgbox Text_187A50, 6
@@ -6345,7 +6346,7 @@ EventScript_1AB5EA:: @ 81AB5EA
Route19_EventScript_1AB601:: @ 81AB601
trainerbattle 0, TRAINER_SWIMMER_FEMALE_ALICE, 0, Text_187A9E, Text_187AC1
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB628
msgbox Text_187ACA, 6
@@ -6358,7 +6359,7 @@ EventScript_1AB628:: @ 81AB628
Route19_EventScript_1AB63F:: @ 81AB63F
trainerbattle 0, TRAINER_SWIMMER_FEMALE_CONNIE, 0, Text_187B5D, Text_187B85
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB666
msgbox Text_187B94, 6
@@ -6371,7 +6372,7 @@ EventScript_1AB666:: @ 81AB666
Route19_EventScript_1AB67D:: @ 81AB67D
trainerbattle 4, TRAINER_SIS_AND_BRO_LIA_LUC, 0, Text_187C32, Text_187C6F, Text_187CF2
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB6A8
msgbox Text_187C9E, 6
@@ -6384,7 +6385,7 @@ EventScript_1AB6A8:: @ 81AB6A8
Route19_EventScript_1AB6C3:: @ 81AB6C3
trainerbattle 4, TRAINER_SIS_AND_BRO_LIA_LUC, 0, Text_187D45, Text_187D7E, Text_187DE8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB6EE
msgbox Text_187DAD, 6
@@ -6397,7 +6398,7 @@ EventScript_1AB6EE:: @ 81AB6EE
Route20_EventScript_1AB709:: @ 81AB709
trainerbattle 0, TRAINER_SWIMMER_MALE_BARRY, 0, Text_187E40, Text_187E7B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB730
msgbox Text_187E83, 6
@@ -6410,7 +6411,7 @@ EventScript_1AB730:: @ 81AB730
Route20_EventScript_1AB747:: @ 81AB747
trainerbattle 0, TRAINER_SWIMMER_MALE_DEAN, 0, Text_187FDB, Text_187FF7
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB76E
msgbox Text_187FFE, 6
@@ -6423,7 +6424,7 @@ EventScript_1AB76E:: @ 81AB76E
Route20_EventScript_1AB785:: @ 81AB785
trainerbattle 0, TRAINER_SWIMMER_MALE_DARRIN, 0, Text_18802E, Text_18805C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB7AC
msgbox Text_18806D, 6
@@ -6436,7 +6437,7 @@ EventScript_1AB7AC:: @ 81AB7AC
Route20_EventScript_1AB7C3:: @ 81AB7C3
trainerbattle 0, TRAINER_SWIMMER_FEMALE_TIFFANY, 0, Text_187F24, Text_187F5A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB7EA
msgbox Text_187F61, 6
@@ -6449,7 +6450,7 @@ EventScript_1AB7EA:: @ 81AB7EA
Route20_EventScript_1AB801:: @ 81AB801
trainerbattle 0, TRAINER_SWIMMER_FEMALE_NORA, 0, Text_1880F8, Text_188119
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB828
msgbox Text_188139, 6
@@ -6462,7 +6463,7 @@ EventScript_1AB828:: @ 81AB828
Route20_EventScript_1AB83F:: @ 81AB83F
trainerbattle 0, TRAINER_SWIMMER_FEMALE_MELISSA, 0, Text_188218, Text_18825C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB866
msgbox Text_18827B, 6
@@ -6475,7 +6476,7 @@ EventScript_1AB866:: @ 81AB866
Route20_EventScript_1AB87D:: @ 81AB87D
trainerbattle 0, TRAINER_SWIMMER_FEMALE_SHIRLEY, 0, Text_187EBB, Text_187EED
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB8A4
msgbox Text_187EF6, 6
@@ -6488,7 +6489,7 @@ EventScript_1AB8A4:: @ 81AB8A4
Route20_EventScript_1AB8BB:: @ 81AB8BB
trainerbattle 0, TRAINER_BIRD_KEEPER_ROGER, 0, Text_18808E, Text_1880AB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB8E2
msgbox Text_1880C8, 6
@@ -6501,7 +6502,7 @@ EventScript_1AB8E2:: @ 81AB8E2
Route20_EventScript_1AB8F9:: @ 81AB8F9
trainerbattle 0, TRAINER_PICNICKER_MISSY, 0, Text_188165, Text_1881A3
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB920
msgbox Text_1881B8, 6
@@ -6514,7 +6515,7 @@ EventScript_1AB920:: @ 81AB920
Route20_EventScript_1AB937:: @ 81AB937
trainerbattle 0, TRAINER_PICNICKER_IRENE, 0, Text_187F78, Text_187F92
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB95E
msgbox Text_187FA3, 6
@@ -6527,7 +6528,7 @@ EventScript_1AB95E:: @ 81AB95E
Route21_North_EventScript_1AB975:: @ 81AB975
trainerbattle 0, TRAINER_FISHERMAN_RONALD, 0, Text_18835A, Text_188383
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB99C
msgbox Text_188389, 6
@@ -6540,7 +6541,7 @@ EventScript_1AB99C:: @ 81AB99C
Route21_South_EventScript_1AB9B3:: @ 81AB9B3
trainerbattle 0, TRAINER_FISHERMAN_CLAUDE, 0, Text_1885D8, Text_1885F8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AB9DA
msgbox Text_188632, 6
@@ -6553,7 +6554,7 @@ EventScript_1AB9DA:: @ 81AB9DA
Route21_North_EventScript_1AB9F1:: @ 81AB9F1
trainerbattle 0, TRAINER_FISHERMAN_WADE, 0, Text_1883C6, Text_1883E9
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABA18
msgbox Text_18841D, 6
@@ -6566,7 +6567,7 @@ EventScript_1ABA18:: @ 81ABA18
Route21_South_EventScript_1ABA2F:: @ 81ABA2F
trainerbattle 0, TRAINER_FISHERMAN_NOLAN, 0, Text_18868C, Text_1886AE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABA56
msgbox Text_1886C5, 6
@@ -6579,7 +6580,7 @@ EventScript_1ABA56:: @ 81ABA56
Route21_North_EventScript_1ABA6D:: @ 81ABA6D
trainerbattle 0, TRAINER_SWIMMER_MALE_SPENCER, 0, Text_18843C, Text_18845F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABA94
msgbox Text_188465, 6
@@ -6592,7 +6593,7 @@ EventScript_1ABA94:: @ 81ABA94
Route21_South_EventScript_1ABAAB:: @ 81ABAAB
trainerbattle 0, TRAINER_SWIMMER_MALE_JACK, 0, Text_1884D4, Text_1884F0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABAD2
msgbox Text_1884FF, 6
@@ -6605,7 +6606,7 @@ EventScript_1ABAD2:: @ 81ABAD2
Route21_South_EventScript_1ABAE9:: @ 81ABAE9
trainerbattle 0, TRAINER_SWIMMER_MALE_JEROME, 0, Text_18851F, Text_188543
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABB10
msgbox Text_188555, 6
@@ -6618,7 +6619,7 @@ EventScript_1ABB10:: @ 81ABB10
Route21_South_EventScript_1ABB27:: @ 81ABB27
trainerbattle 0, TRAINER_SWIMMER_MALE_ROLAND, 0, Text_188592, Text_1885B2
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABB4E
msgbox Text_1885BF, 6
@@ -6631,7 +6632,7 @@ EventScript_1ABB4E:: @ 81ABB4E
Route21_North_EventScript_1ABB65:: @ 81ABB65
trainerbattle 4, TRAINER_SIS_AND_BRO_LIL_IAN, 0, Text_1886E2, Text_188712, Text_18875E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABB90
msgbox Text_188734, 6
@@ -6644,7 +6645,7 @@ EventScript_1ABB90:: @ 81ABB90
Route21_North_EventScript_1ABBAB:: @ 81ABBAB
trainerbattle 4, TRAINER_SIS_AND_BRO_LIL_IAN, 0, Text_1887B4, Text_1887F1, Text_188850
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABBD6
msgbox Text_188812, 6
@@ -6657,7 +6658,7 @@ EventScript_1ABBD6:: @ 81ABBD6
OneIsland_KindleRoad_EventScript_1ABBF1:: @ 81ABBF1
trainerbattle 0, TRAINER_SWIMMER_FEMALE_MARIA, 0, Text_18961F, Text_18964D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABC18
msgbox Text_189657, 6
@@ -6670,7 +6671,7 @@ EventScript_1ABC18:: @ 81ABC18
OneIsland_KindleRoad_EventScript_1ABC2F:: @ 81ABC2F
trainerbattle 0, TRAINER_SWIMMER_FEMALE_ABIGAIL, 0, Text_18968C, Text_1896AC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABC56
msgbox Text_1896C1, 6
@@ -6683,7 +6684,7 @@ EventScript_1ABC56:: @ 81ABC56
OneIsland_KindleRoad_EventScript_1ABC6D:: @ 81ABC6D
trainerbattle 0, TRAINER_SWIMMER_MALE_FINN, 0, Text_1896F9, Text_189728
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABC94
msgbox Text_189740, 6
@@ -6696,7 +6697,7 @@ EventScript_1ABC94:: @ 81ABC94
OneIsland_KindleRoad_EventScript_1ABCAB:: @ 81ABCAB
trainerbattle 0, TRAINER_SWIMMER_MALE_GARRETT, 0, Text_189767, Text_1897A4
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABCD2
msgbox Text_1897C5, 6
@@ -6709,7 +6710,7 @@ EventScript_1ABCD2:: @ 81ABCD2
OneIsland_KindleRoad_EventScript_1ABCE9:: @ 81ABCE9
trainerbattle 0, TRAINER_FISHERMAN_TOMMY, 0, Text_1897FF, Text_189833
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABD10
msgbox Text_18984B, 6
@@ -6722,7 +6723,7 @@ EventScript_1ABD10:: @ 81ABD10
OneIsland_KindleRoad_EventScript_1ABD27:: @ 81ABD27
trainerbattle 0, TRAINER_CRUSH_GIRL_SHARON, 0, Text_189883, Text_1898AB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABD4E
msgbox Text_1898C4, 6
@@ -6735,7 +6736,7 @@ EventScript_1ABD4E:: @ 81ABD4E
OneIsland_KindleRoad_EventScript_1ABD65:: @ 81ABD65
trainerbattle 0, TRAINER_CRUSH_GIRL_TANYA, 0, Text_1898F0, Text_18991B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABD8C
msgbox Text_18992C, 6
@@ -6748,7 +6749,7 @@ EventScript_1ABD8C:: @ 81ABD8C
OneIsland_KindleRoad_EventScript_1ABDA3:: @ 81ABDA3
trainerbattle 0, TRAINER_BLACK_BELT_SHEA, 0, Text_189950, Text_18998C
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABDCA
msgbox Text_189998, 6
@@ -6761,7 +6762,7 @@ EventScript_1ABDCA:: @ 81ABDCA
OneIsland_KindleRoad_EventScript_1ABDE1:: @ 81ABDE1
trainerbattle 0, TRAINER_BLACK_BELT_HUGH, 0, Text_1899CE, Text_189A0A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABE08
msgbox Text_189A13, 6
@@ -6774,7 +6775,7 @@ EventScript_1ABE08:: @ 81ABE08
OneIsland_KindleRoad_EventScript_1ABE1F:: @ 81ABE1F
trainerbattle 0, TRAINER_CAMPER_BRYCE, 0, Text_189A53, Text_189A92
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABE46
msgbox Text_189A9F, 6
@@ -6787,7 +6788,7 @@ EventScript_1ABE46:: @ 81ABE46
OneIsland_KindleRoad_EventScript_1ABE5D:: @ 81ABE5D
trainerbattle 0, TRAINER_PICNICKER_CLAIRE, 0, Text_189ACB, Text_189B0B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABE84
msgbox Text_189B24, 6
@@ -6800,7 +6801,7 @@ EventScript_1ABE84:: @ 81ABE84
OneIsland_KindleRoad_EventScript_1ABE9B:: @ 81ABE9B
trainerbattle 4, TRAINER_CRUSH_KIN_MIK_KIA, 0, Text_189B4D, Text_189B84, Text_189BDE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABEC6
msgbox Text_189BA3, 6
@@ -6813,7 +6814,7 @@ EventScript_1ABEC6:: @ 81ABEC6
OneIsland_KindleRoad_EventScript_1ABEE1:: @ 81ABEE1
trainerbattle 4, TRAINER_CRUSH_KIN_MIK_KIA, 0, Text_189C33, Text_189C62, Text_189CAB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABF0C
msgbox Text_189C7E, 6
@@ -6826,7 +6827,7 @@ EventScript_1ABF0C:: @ 81ABF0C
OneIsland_TreasureBeach_EventScript_1ABF27:: @ 81ABF27
trainerbattle 0, TRAINER_SWIMMER_FEMALE_AMARA, 0, Text_189D5A, Text_189D8B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABF4E
msgbox Text_189DA3, 6
@@ -6839,7 +6840,7 @@ EventScript_1ABF4E:: @ 81ABF4E
ThreeIsland_BondBridge_EventScript_1ABF65:: @ 81ABF65
trainerbattle 0, TRAINER_AROMA_LADY_NIKKI, 0, Text_189E42, Text_189E72
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABF8C
msgbox Text_189E9E, 6
@@ -6852,7 +6853,7 @@ EventScript_1ABF8C:: @ 81ABF8C
ThreeIsland_BondBridge_EventScript_1ABFA3:: @ 81ABFA3
trainerbattle 0, TRAINER_AROMA_LADY_VIOLET, 0, Text_189ED4, Text_189EFA
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ABFCA
msgbox Text_189F21, 6
@@ -6865,7 +6866,7 @@ EventScript_1ABFCA:: @ 81ABFCA
ThreeIsland_BondBridge_EventScript_1ABFE1:: @ 81ABFE1
trainerbattle 0, TRAINER_TUBER_AMIRA, 0, Text_189F63, Text_189F9A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC008
msgbox Text_189FA8, 6
@@ -6878,7 +6879,7 @@ EventScript_1AC008:: @ 81AC008
ThreeIsland_BondBridge_EventScript_1AC01F:: @ 81AC01F
trainerbattle 0, TRAINER_TUBER_ALEXIS, 0, Text_189FDB, Text_189FEE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC046
msgbox Text_18A000, 6
@@ -6891,7 +6892,7 @@ EventScript_1AC046:: @ 81AC046
ThreeIsland_BondBridge_EventScript_1AC05D:: @ 81AC05D
trainerbattle 0, TRAINER_SWIMMER_FEMALE_TISHA, 0, Text_18A01F, Text_18A053
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC084
msgbox Text_18A082, 6
@@ -6904,7 +6905,7 @@ EventScript_1AC084:: @ 81AC084
ThreeIsland_BondBridge_EventScript_1AC09B:: @ 81AC09B
trainerbattle 4, TRAINER_TWINS_JOY_MEG, 0, Text_18A0C4, Text_18A0F7, Text_18A138
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC0C6
msgbox Text_18A106, 6
@@ -6917,7 +6918,7 @@ EventScript_1AC0C6:: @ 81AC0C6
ThreeIsland_BondBridge_EventScript_1AC0E1:: @ 81AC0E1
trainerbattle 4, TRAINER_TWINS_JOY_MEG, 0, Text_18A179, Text_18A1A3, Text_18A1CD
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC10C
msgbox Text_18A1B2, 6
@@ -6930,7 +6931,7 @@ EventScript_1AC10C:: @ 81AC10C
FiveIsland_ResortGorgeous_EventScript_1AC127:: @ 81AC127
trainerbattle 0, TRAINER_PAINTER_DAISY, 0, Text_18A3E2, Text_18A40E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC14E
msgbox Text_18A430, 6
@@ -6943,7 +6944,7 @@ EventScript_1AC14E:: @ 81AC14E
FiveIsland_ResortGorgeous_EventScript_1AC165:: @ 81AC165
trainerbattle 0, TRAINER_PAINTER_CELINA, 0, Text_18A461, Text_18A49E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC18C
msgbox Text_18A4C6, 6
@@ -6956,7 +6957,7 @@ EventScript_1AC18C:: @ 81AC18C
FiveIsland_ResortGorgeous_EventScript_1AC1A3:: @ 81AC1A3
trainerbattle 0, TRAINER_PAINTER_RAYNA, 0, Text_18A50E, Text_18A535
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC1CA
msgbox Text_18A555, 6
@@ -6969,7 +6970,7 @@ EventScript_1AC1CA:: @ 81AC1CA
FiveIsland_ResortGorgeous_EventScript_1AC1E1:: @ 81AC1E1
trainerbattle 0, TRAINER_LADY_JACKI, 0, Text_18A5B9, Text_18A5EE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC208
msgbox Text_18A601, 6
@@ -6982,7 +6983,7 @@ EventScript_1AC208:: @ 81AC208
FiveIsland_ResortGorgeous_EventScript_1AC21F:: @ 81AC21F
trainerbattle 0, TRAINER_LADY_GILLIAN, 0, Text_18A645, Text_18A67F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC246
msgbox Text_18A699, 6
@@ -6995,7 +6996,7 @@ EventScript_1AC246:: @ 81AC246
FiveIsland_ResortGorgeous_EventScript_1AC25D:: @ 81AC25D
trainerbattle 0, TRAINER_YOUNGSTER_DESTIN, 0, Text_18A6DA, Text_18A6FE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC284
msgbox Text_18A715, 6
@@ -7008,7 +7009,7 @@ EventScript_1AC284:: @ 81AC284
FiveIsland_ResortGorgeous_EventScript_1AC29B:: @ 81AC29B
trainerbattle 0, TRAINER_SWIMMER_MALE_TOBY, 0, Text_18A74A, Text_18A786
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC2C2
msgbox Text_18A7AC, 6
@@ -7021,7 +7022,7 @@ EventScript_1AC2C2:: @ 81AC2C2
FiveIsland_WaterLabyrinth_EventScript_1AC2D9:: @ 81AC2D9
trainerbattle 0, TRAINER_PKMN_BREEDER_ALIZE, 0, Text_18AAD5, Text_18AB0B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC300
msgbox Text_18AB37, 6
@@ -7034,7 +7035,7 @@ EventScript_1AC300:: @ 81AC300
FiveIsland_MemorialPillar_EventScript_1AC317:: @ 81AC317
trainerbattle 0, TRAINER_BIRD_KEEPER_MILO, 0, Text_18AE50, Text_18AEA8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC33E
msgbox Text_18AEB6, 6
@@ -7047,7 +7048,7 @@ EventScript_1AC33E:: @ 81AC33E
FiveIsland_MemorialPillar_EventScript_1AC355:: @ 81AC355
trainerbattle 0, TRAINER_BIRD_KEEPER_CHAZ, 0, Text_18AEDC, Text_18AF39
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC37C
msgbox Text_18AF45, 6
@@ -7060,7 +7061,7 @@ EventScript_1AC37C:: @ 81AC37C
FiveIsland_MemorialPillar_EventScript_1AC393:: @ 81AC393
trainerbattle 0, TRAINER_BIRD_KEEPER_HAROLD, 0, Text_18AF72, Text_18AFCC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC3BA
msgbox Text_18AFF2, 6
@@ -7073,7 +7074,7 @@ EventScript_1AC3BA:: @ 81AC3BA
SixIsland_OutcastIsland_EventScript_1AC3D1:: @ 81AC3D1
trainerbattle 0, TRAINER_FISHERMAN_TYLOR, 0, Text_18B400, Text_18B43B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC3F8
msgbox Text_18B451, 6
@@ -7086,7 +7087,7 @@ EventScript_1AC3F8:: @ 81AC3F8
SixIsland_OutcastIsland_EventScript_1AC40F:: @ 81AC40F
trainerbattle 0, TRAINER_SWIMMER_MALE_MYMO, 0, Text_18B48F, Text_18B4C5
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC436
msgbox Text_18B4D1, 6
@@ -7099,7 +7100,7 @@ EventScript_1AC436:: @ 81AC436
SixIsland_OutcastIsland_EventScript_1AC44D:: @ 81AC44D
trainerbattle 0, TRAINER_SWIMMER_FEMALE_NICOLE, 0, Text_18B4FA, Text_18B539
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC474
msgbox Text_18B573, 6
@@ -7112,7 +7113,7 @@ EventScript_1AC474:: @ 81AC474
SixIsland_OutcastIsland_EventScript_1AC48B:: @ 81AC48B
trainerbattle 4, TRAINER_SIS_AND_BRO_AVA_GEB, 0, Text_18B5C8, Text_18B5F4, Text_18B660
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC4B6
msgbox Text_18B62E, 6
@@ -7125,7 +7126,7 @@ EventScript_1AC4B6:: @ 81AC4B6
SixIsland_OutcastIsland_EventScript_1AC4D1:: @ 81AC4D1
trainerbattle 4, TRAINER_SIS_AND_BRO_AVA_GEB, 0, Text_18B6C1, Text_18B6EF, Text_18B762
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC4FC
msgbox Text_18B720, 6
@@ -7138,7 +7139,7 @@ EventScript_1AC4FC:: @ 81AC4FC
SixIsland_GreenPath_EventScript_1AC517:: @ 81AC517
trainerbattle 0, TRAINER_PSYCHIC_JACLYN, 0, Text_18B7B0, Text_18B7F0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC53E
msgbox Text_18B7FD, 6
@@ -7151,7 +7152,7 @@ EventScript_1AC53E:: @ 81AC53E
SixIsland_WaterPath_EventScript_1AC555:: @ 81AC555
trainerbattle 0, TRAINER_AROMA_LADY_ROSE, 0, Text_18B896, Text_18B8C8
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC57C
msgbox Text_18B8F7, 6
@@ -7164,7 +7165,7 @@ EventScript_1AC57C:: @ 81AC57C
SixIsland_WaterPath_EventScript_1AC593:: @ 81AC593
trainerbattle 0, TRAINER_JUGGLER_EDWARD, 0, Text_18B959, Text_18B988
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC5BA
msgbox Text_18B9A5, 6
@@ -7177,7 +7178,7 @@ EventScript_1AC5BA:: @ 81AC5BA
SixIsland_WaterPath_EventScript_1AC5D1:: @ 81AC5D1
trainerbattle 0, TRAINER_SWIMMER_MALE_SAMIR, 0, Text_18B9EC, Text_18BA47
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC5F8
msgbox Text_18BA57, 6
@@ -7190,7 +7191,7 @@ EventScript_1AC5F8:: @ 81AC5F8
SixIsland_WaterPath_EventScript_1AC60F:: @ 81AC60F
trainerbattle 0, TRAINER_SWIMMER_FEMALE_DENISE, 0, Text_18BA86, Text_18BAC0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC636
msgbox Text_18BAE0, 6
@@ -7203,7 +7204,7 @@ EventScript_1AC636:: @ 81AC636
SixIsland_WaterPath_EventScript_1AC64D:: @ 81AC64D
trainerbattle 4, TRAINER_TWINS_MIU_MIA, 0, Text_18BBBA, Text_18BBE2, Text_18BC24
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC678
msgbox Text_18BBF6, 6
@@ -7216,7 +7217,7 @@ EventScript_1AC678:: @ 81AC678
SixIsland_WaterPath_EventScript_1AC693:: @ 81AC693
trainerbattle 4, TRAINER_TWINS_MIU_MIA, 0, Text_18BC5A, Text_18BC84, Text_18BCCF
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC6BE
msgbox Text_18BCAE, 6
@@ -7229,7 +7230,7 @@ EventScript_1AC6BE:: @ 81AC6BE
SixIsland_WaterPath_EventScript_1AC6D9:: @ 81AC6D9
trainerbattle 0, TRAINER_HIKER_EARL, 0, Text_18BB2D, Text_18BB62
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC700
msgbox Text_18BB8B, 6
@@ -7242,7 +7243,7 @@ EventScript_1AC700:: @ 81AC700
SixIsland_RuinValley_EventScript_1AC717:: @ 81AC717
trainerbattle 0, TRAINER_RUIN_MANIAC_STANLY, 0, Text_18BE5D, Text_18BE9B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC73E
msgbox Text_18BEA0, 6
@@ -7255,7 +7256,7 @@ EventScript_1AC73E:: @ 81AC73E
SixIsland_RuinValley_EventScript_1AC755:: @ 81AC755
trainerbattle 0, TRAINER_RUIN_MANIAC_FOSTER, 0, Text_18BF05, Text_18BF33
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC77C
msgbox Text_18BF6C, 6
@@ -7268,7 +7269,7 @@ EventScript_1AC77C:: @ 81AC77C
SixIsland_RuinValley_EventScript_1AC793:: @ 81AC793
trainerbattle 0, TRAINER_RUIN_MANIAC_LARRY, 0, Text_18BFC5, Text_18C03B
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC7BA
msgbox Text_18C04C, 6
@@ -7281,7 +7282,7 @@ EventScript_1AC7BA:: @ 81AC7BA
SixIsland_RuinValley_EventScript_1AC7D1:: @ 81AC7D1
trainerbattle 0, TRAINER_HIKER_DARYL, 0, Text_18C09C, Text_18C0BB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC7F8
msgbox Text_18C0EA, 6
@@ -7294,7 +7295,7 @@ EventScript_1AC7F8:: @ 81AC7F8
SixIsland_RuinValley_EventScript_1AC80F:: @ 81AC80F
trainerbattle 0, TRAINER_POKEMANIAC_HECTOR, 0, Text_18C10A, Text_18C140
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC836
msgbox Text_18C17A, 6
@@ -7307,7 +7308,7 @@ EventScript_1AC836:: @ 81AC836
SevenIsland_TrainerTower_EventScript_1AC84D:: @ 81AC84D
trainerbattle 0, TRAINER_PSYCHIC_DARIO, 0, Text_18C1ED, Text_18C205
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC874
msgbox Text_18C20E, 6
@@ -7320,7 +7321,7 @@ EventScript_1AC874:: @ 81AC874
SevenIsland_TrainerTower_EventScript_1AC88B:: @ 81AC88B
trainerbattle 0, TRAINER_PSYCHIC_RODETTE, 0, Text_18C283, Text_18C2BC
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC8B2
msgbox Text_18C2D5, 6
@@ -7333,7 +7334,7 @@ EventScript_1AC8B2:: @ 81AC8B2
SevenIsland_SevaultCanyon_Entrance_EventScript_1AC8C9:: @ 81AC8C9
trainerbattle 0, TRAINER_AROMA_LADY_MIAH, 0, Text_18C3BC, Text_18C3E7
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC8F0
msgbox Text_18C3FF, 6
@@ -7346,7 +7347,7 @@ EventScript_1AC8F0:: @ 81AC8F0
SevenIsland_SevaultCanyon_Entrance_EventScript_1AC907:: @ 81AC907
trainerbattle 4, TRAINER_YOUNG_COUPLE_EVE_JON, 0, Text_18C632, Text_18C662, Text_18C6AB
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC932
msgbox Text_18C683, 6
@@ -7359,7 +7360,7 @@ EventScript_1AC932:: @ 81AC932
SevenIsland_SevaultCanyon_Entrance_EventScript_1AC94D:: @ 81AC94D
trainerbattle 4, TRAINER_YOUNG_COUPLE_EVE_JON, 0, Text_18C700, Text_18C73B, Text_18C7BD
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC978
msgbox Text_18C773, 6
@@ -7372,7 +7373,7 @@ EventScript_1AC978:: @ 81AC978
SevenIsland_SevaultCanyon_Entrance_EventScript_1AC993:: @ 81AC993
trainerbattle 0, TRAINER_JUGGLER_MASON, 0, Text_18C44B, Text_18C473
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC9BA
msgbox Text_18C4BA, 6
@@ -7385,7 +7386,7 @@ EventScript_1AC9BA:: @ 81AC9BA
SevenIsland_SevaultCanyon_Entrance_EventScript_1AC9D1:: @ 81AC9D1
trainerbattle 0, TRAINER_PKMN_RANGER_NICOLAS, 0, Text_18C500, Text_18C543
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1AC9F8
msgbox Text_18C54B, 6
@@ -7398,7 +7399,7 @@ EventScript_1AC9F8:: @ 81AC9F8
SevenIsland_SevaultCanyon_Entrance_EventScript_1ACA0F:: @ 81ACA0F
trainerbattle 0, TRAINER_PKMN_RANGER_MADELINE, 0, Text_18C5AA, Text_18C5CD
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACA36
msgbox Text_18C5F5, 6
@@ -7411,7 +7412,7 @@ EventScript_1ACA36:: @ 81ACA36
SevenIsland_SevaultCanyon_EventScript_1ACA4D:: @ 81ACA4D
trainerbattle 0, TRAINER_CRUSH_GIRL_CYNDY, 0, Text_18C887, Text_18C8A6
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACA74
msgbox Text_18C8C2, 6
@@ -7424,7 +7425,7 @@ EventScript_1ACA74:: @ 81ACA74
SevenIsland_SevaultCanyon_EventScript_1ACA8B:: @ 81ACA8B
trainerbattle 0, TRAINER_TAMER_EVAN, 0, Text_18C8FD, Text_18C980
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACAB2
msgbox Text_18C999, 6
@@ -7437,7 +7438,7 @@ EventScript_1ACAB2:: @ 81ACAB2
SevenIsland_SevaultCanyon_EventScript_1ACAC9:: @ 81ACAC9
trainerbattle 0, TRAINER_PKMN_RANGER_JACKSON, 0, Text_18CA2F, Text_18CA6F
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACAF0
msgbox Text_18CA9C, 6
@@ -7450,7 +7451,7 @@ EventScript_1ACAF0:: @ 81ACAF0
SevenIsland_SevaultCanyon_EventScript_1ACB07:: @ 81ACB07
trainerbattle 0, TRAINER_PKMN_RANGER_KATELYN, 0, Text_18CB16, Text_18CB3E
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACB2E
msgbox Text_18CB6C, 6
@@ -7463,7 +7464,7 @@ EventScript_1ACB2E:: @ 81ACB2E
SevenIsland_SevaultCanyon_EventScript_1ACB45:: @ 81ACB45
trainerbattle 0, TRAINER_COOLTRAINER_LEROY, 0, Text_18CBB4, Text_18CBE0
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACB6C
msgbox Text_18CC09, 6
@@ -7476,7 +7477,7 @@ EventScript_1ACB6C:: @ 81ACB6C
SevenIsland_SevaultCanyon_EventScript_1ACB83:: @ 81ACB83
trainerbattle 0, TRAINER_COOLTRAINER_MICHELLE, 0, Text_18CC4F, Text_18CCAE
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACBAA
msgbox Text_18CCEA, 6
@@ -7489,7 +7490,7 @@ EventScript_1ACBAA:: @ 81ACBAA
SevenIsland_SevaultCanyon_EventScript_1ACBC1:: @ 81ACBC1
trainerbattle 4, TRAINER_COOL_COUPLE_LEX_NYA, 0, Text_18CD49, Text_18CD75, Text_18CDE2
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACBEC
msgbox Text_18CD9C, 6
@@ -7502,7 +7503,7 @@ EventScript_1ACBEC:: @ 81ACBEC
SevenIsland_SevaultCanyon_EventScript_1ACC07:: @ 81ACC07
trainerbattle 4, TRAINER_COOL_COUPLE_LEX_NYA, 0, Text_18CE20, Text_18CE5A, Text_18CEF4
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACC32
msgbox Text_18CE78, 6
@@ -7515,7 +7516,7 @@ EventScript_1ACC32:: @ 81ACC32
SevenIsland_TanobyRuins_EventScript_1ACC4D:: @ 81ACC4D
trainerbattle 0, TRAINER_RUIN_MANIAC_BRANDON, 0, Text_18CFFB, Text_18D02A
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACC74
msgbox Text_18D061, 6
@@ -7528,7 +7529,7 @@ EventScript_1ACC74:: @ 81ACC74
SevenIsland_TanobyRuins_EventScript_1ACC8B:: @ 81ACC8B
trainerbattle 0, TRAINER_RUIN_MANIAC_BENJAMIN, 0, Text_18D0D9, Text_18D108
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACCB2
msgbox Text_18D125, 6
@@ -7541,7 +7542,7 @@ EventScript_1ACCB2:: @ 81ACCB2
SevenIsland_TanobyRuins_EventScript_1ACCC9:: @ 81ACCC9
trainerbattle 0, TRAINER_PAINTER_EDNA, 0, Text_18D18F, Text_18D1B5
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACCF0
msgbox Text_18D1E3, 6
@@ -7554,7 +7555,7 @@ EventScript_1ACCF0:: @ 81ACCF0
SevenIsland_TanobyRuins_EventScript_1ACD07:: @ 81ACD07
trainerbattle 0, TRAINER_GENTLEMAN_CLIFFORD, 0, Text_18D22F, Text_18D26D
- specialvar VAR_RESULT, sub_810CD4C
+ specialvar VAR_RESULT, ShouldTryRematchBattle
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1ACD2E
msgbox Text_18D284, 6
@@ -7917,7 +7918,7 @@ EventScript_1B2907:: @ 81B2907
playse MUS_ME_PHOTO
dofieldeffect FLDEFF_UNK_45
delay 60
- special sub_80CC2BC
+ special Special_UpdateTrainerCardPhotoIcons
msgbox gUnknown_81B1E7D
hidemoneybox
nop
@@ -7942,7 +7943,7 @@ EventScript_1B292B:: @ 81B292B
FourIsland_House2_EventScript_1B2938:: @ 81B2938
lock
- specialvar VAR_0x8008, sub_80CC3CC
+ specialvar VAR_0x8008, Special_StickerLadyGetBragFlags
checkflag FLAG_MET_STICKER_LADY
goto_if FALSE, EventScript_1B2951
checkflag FLAG_MET_STICKER_LADY
@@ -8725,7 +8726,7 @@ EventScript_1BB5B3:: @ 81BB5B3
goto_if eq, EventScript_1BB62C
special SetCableClubWarp
warp MAP_UNKNOWN_MAP_00_00, 255, 6, 8
- special sub_807E654
+ special DoCableClubWarp
waitstate
end
@@ -8737,7 +8738,7 @@ EventScript_1BB621:: @ 81BB621
EventScript_1BB62C:: @ 81BB62C
special SetCableClubWarp
warp MAP_UNKNOWN_MAP_00_03, 255, 5, 8
- special sub_807E654
+ special DoCableClubWarp
waitstate
end
@@ -8839,7 +8840,7 @@ EventScript_1BB73D:: @ 81BB73D
release
special SetCableClubWarp
setwarp MAP_UNKNOWN_MAP_00_01, 255, 5, 8
- special sub_807E654
+ special DoCableClubWarp
waitstate
end
@@ -8917,7 +8918,7 @@ EventScript_1BB83F:: @ 81BB83F
EventScript_1BB84F:: @ 81BB84F
special SetCableClubWarp
- special sub_807E654
+ special DoCableClubWarp
waitstate
end
@@ -9182,7 +9183,7 @@ EventScript_1BBA04:: @ 81BBA04
faceplayer
checkflag FLAG_SYS_POKEDEX_GET
goto_if FALSE, EventScript_1BB877
- specialvar VAR_RESULT, sub_80CD034
+ specialvar VAR_RESULT, Special_BadEggInParty
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1BB867
copyvar VAR_0x8007, VAR_LAST_TALKED
@@ -9304,7 +9305,7 @@ EventScript_1BBB9C:: @ 81BBB9C
faceplayer
checkflag FLAG_SYS_POKEDEX_GET
goto_if FALSE, EventScript_1BB877
- specialvar VAR_RESULT, sub_80CD034
+ specialvar VAR_RESULT, Special_BadEggInParty
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1BB867
specialvar VAR_RESULT, IsWirelessAdapterConnected
@@ -11504,7 +11505,7 @@ EventScript_1BF3DD:: @ 81BF3DD
msgbox Text_19DE24
waitmoncry
special PutMonInRoute5Daycare
- incrementgamestat 47
+ incrementgamestat GAME_STAT_USED_DAYCARE
goto EventScript_1BF541
end
@@ -13879,13 +13880,13 @@ TwoIsland_CapeBrink_House_EventScript_1C4DEC:: @ 81C4DEC
special sub_8112364
lock
faceplayer
- checkflag FLAG_LEARNED_MOVE_AT_CAPE_BRINK
+ checkflag FLAG_LEARNED_ALL_MOVES_AT_CAPE_BRINK
goto_if TRUE, EventScript_1C4EA1
checkflag FLAG_TEMP_2
goto_if TRUE, EventScript_1C4E97
getfirstpartymonname 0
msgbox Text_1A46C6
- specialvar VAR_RESULT, sub_80CCB94
+ specialvar VAR_RESULT, Special_CapeBrinkGetMoveToTeachLeadPokemon
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1C4F26
copyvar VAR_0x8009, VAR_0x8005
@@ -13925,7 +13926,7 @@ EventScript_1C4EA1:: @ 81C4EA1
EventScript_1C4EAB:: @ 81C4EAB
copyvar VAR_0x8005, VAR_0x8009
- specialvar VAR_RESULT, sub_80CCCF8
+ specialvar VAR_RESULT, Special_HasLearnedAllMovesFromCapeBrinkTutor
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1C4ECD
msgbox Text_1A4865
@@ -13935,7 +13936,7 @@ EventScript_1C4EAB:: @ 81C4EAB
EventScript_1C4ECD:: @ 81C4ECD
msgbox Text_1A48F3
- setflag FLAG_LEARNED_MOVE_AT_CAPE_BRINK
+ setflag FLAG_LEARNED_ALL_MOVES_AT_CAPE_BRINK
release
end
diff --git a/data/field_specials/unk_83F5F50.pal b/data/field_specials/unk_83F5F50.pal
new file mode 100644
index 000000000..6528f9f75
--- /dev/null
+++ b/data/field_specials/unk_83F5F50.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F5F70.pal b/data/field_specials/unk_83F5F70.pal
new file mode 100644
index 000000000..934306488
--- /dev/null
+++ b/data/field_specials/unk_83F5F70.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+41 115 205
+82 82 106
diff --git a/data/field_specials/unk_83F5F90.pal b/data/field_specials/unk_83F5F90.pal
new file mode 100644
index 000000000..624c69448
--- /dev/null
+++ b/data/field_specials/unk_83F5F90.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 82 106
+41 115 205
+131 238 255
+0 41 156
diff --git a/data/field_specials/unk_83F5FB0.pal b/data/field_specials/unk_83F5FB0.pal
new file mode 100644
index 000000000..fb3cdebd0
--- /dev/null
+++ b/data/field_specials/unk_83F5FB0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+41 115 205
+131 238 255
+82 172 230
+0 65 189
diff --git a/data/field_specials/unk_83F5FD0.pal b/data/field_specials/unk_83F5FD0.pal
new file mode 100644
index 000000000..f2c6c78af
--- /dev/null
+++ b/data/field_specials/unk_83F5FD0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+41 115 205
+131 238 255
+82 172 230
+41 115 205
+41 115 205
diff --git a/data/field_specials/unk_83F5FF0.pal b/data/field_specials/unk_83F5FF0.pal
new file mode 100644
index 000000000..3e2c5757a
--- /dev/null
+++ b/data/field_specials/unk_83F5FF0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+41 115 205
+131 238 255
+82 172 230
+41 115 205
+0 65 189
+82 172 230
diff --git a/data/field_specials/unk_83F6010.pal b/data/field_specials/unk_83F6010.pal
new file mode 100644
index 000000000..84e6e811a
--- /dev/null
+++ b/data/field_specials/unk_83F6010.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+131 238 255
+82 172 230
+41 115 205
+0 65 189
+0 41 156
+131 238 255
diff --git a/data/field_specials/unk_83F6030.pal b/data/field_specials/unk_83F6030.pal
new file mode 100644
index 000000000..f49f8ef99
--- /dev/null
+++ b/data/field_specials/unk_83F6030.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 172 230
+41 115 205
+0 65 189
+0 41 156
+82 82 106
+90 180 238
diff --git a/data/field_specials/unk_83F6050.pal b/data/field_specials/unk_83F6050.pal
new file mode 100644
index 000000000..538ebf789
--- /dev/null
+++ b/data/field_specials/unk_83F6050.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+41 115 205
+0 65 189
+0 41 156
+82 82 106
+82 82 106
+41 115 205
diff --git a/data/field_specials/unk_83F6070.pal b/data/field_specials/unk_83F6070.pal
new file mode 100644
index 000000000..49b9d85b6
--- /dev/null
+++ b/data/field_specials/unk_83F6070.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+0 65 189
+0 41 156
+82 82 106
+82 82 106
+82 82 106
+0 65 189
diff --git a/data/field_specials/unk_83F6090.pal b/data/field_specials/unk_83F6090.pal
new file mode 100644
index 000000000..ff81da8b3
--- /dev/null
+++ b/data/field_specials/unk_83F6090.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+0 41 156
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+0 41 156
diff --git a/data/field_specials/unk_83F60B0.pal b/data/field_specials/unk_83F60B0.pal
new file mode 100644
index 000000000..a0763ff47
--- /dev/null
+++ b/data/field_specials/unk_83F60B0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+131 238 255
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+172 172 98
+148 148 74
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F60D0.pal b/data/field_specials/unk_83F60D0.pal
new file mode 100644
index 000000000..6528f9f75
--- /dev/null
+++ b/data/field_specials/unk_83F60D0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F60F0.pal b/data/field_specials/unk_83F60F0.pal
new file mode 100644
index 000000000..75dfaa19a
--- /dev/null
+++ b/data/field_specials/unk_83F60F0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 172 230
+41 115 205
diff --git a/data/field_specials/unk_83F6110.pal b/data/field_specials/unk_83F6110.pal
new file mode 100644
index 000000000..092544dec
--- /dev/null
+++ b/data/field_specials/unk_83F6110.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 82 106
+82 82 106
+82 172 230
+41 115 205
+131 238 255
+82 172 230
diff --git a/data/field_specials/unk_83F6130.pal b/data/field_specials/unk_83F6130.pal
new file mode 100644
index 000000000..3b93965ad
--- /dev/null
+++ b/data/field_specials/unk_83F6130.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 172 230
+41 115 205
+131 238 255
+82 172 230
+82 172 230
+41 115 205
diff --git a/data/field_specials/unk_83F6150.pal b/data/field_specials/unk_83F6150.pal
new file mode 100644
index 000000000..be23edc23
--- /dev/null
+++ b/data/field_specials/unk_83F6150.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+131 238 255
+82 172 230
+82 172 230
+41 115 205
+41 115 205
+0 65 189
diff --git a/data/field_specials/unk_83F6170.pal b/data/field_specials/unk_83F6170.pal
new file mode 100644
index 000000000..788d0bd65
--- /dev/null
+++ b/data/field_specials/unk_83F6170.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+82 172 230
+41 115 205
+41 115 205
+0 65 189
+0 65 189
+82 82 106
diff --git a/data/field_specials/unk_83F6190.pal b/data/field_specials/unk_83F6190.pal
new file mode 100644
index 000000000..8ca385f0d
--- /dev/null
+++ b/data/field_specials/unk_83F6190.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+41 115 205
+0 65 189
+0 65 189
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F61B0.pal b/data/field_specials/unk_83F61B0.pal
new file mode 100644
index 000000000..63fe8e97e
--- /dev/null
+++ b/data/field_specials/unk_83F61B0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+255 74 0
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+255 255 180
+189 189 115
+0 65 189
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F61D0.pal b/data/field_specials/unk_83F61D0.pal
new file mode 100644
index 000000000..a0763ff47
--- /dev/null
+++ b/data/field_specials/unk_83F61D0.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+82 82 106
+123 123 123
+131 238 255
+255 213 131
+230 164 98
+197 115 74
+164 82 65
+172 172 98
+148 148 74
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
+82 82 106
diff --git a/data/field_specials/unk_83F6206.pal b/data/field_specials/unk_83F6206.pal
new file mode 100644
index 000000000..c20bacb57
--- /dev/null
+++ b/data/field_specials/unk_83F6206.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+106 156 197
+32 32 32
+82 82 82
+139 139 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6226.pal b/data/field_specials/unk_83F6226.pal
new file mode 100644
index 000000000..2c106a4ae
--- /dev/null
+++ b/data/field_specials/unk_83F6226.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+106 156 197
+41 32 32
+82 82 82
+139 139 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6246.pal b/data/field_specials/unk_83F6246.pal
new file mode 100644
index 000000000..38fe7d084
--- /dev/null
+++ b/data/field_specials/unk_83F6246.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+49 32 32
+90 82 82
+148 148 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6266.pal b/data/field_specials/unk_83F6266.pal
new file mode 100644
index 000000000..7b7fb7c44
--- /dev/null
+++ b/data/field_specials/unk_83F6266.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+65 32 32
+115 82 82
+156 148 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6286.pal b/data/field_specials/unk_83F6286.pal
new file mode 100644
index 000000000..4eda607b7
--- /dev/null
+++ b/data/field_specials/unk_83F6286.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+74 32 32
+123 82 82
+164 156 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F62A6.pal b/data/field_specials/unk_83F62A6.pal
new file mode 100644
index 000000000..a92bc65fd
--- /dev/null
+++ b/data/field_specials/unk_83F62A6.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+98 32 32
+139 82 82
+172 156 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F62C6.pal b/data/field_specials/unk_83F62C6.pal
new file mode 100644
index 000000000..0de8519c6
--- /dev/null
+++ b/data/field_specials/unk_83F62C6.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+98 32 32
+148 82 82
+180 164 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F62E6.pal b/data/field_specials/unk_83F62E6.pal
new file mode 100644
index 000000000..ae67047d4
--- /dev/null
+++ b/data/field_specials/unk_83F62E6.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+106 32 32
+156 82 82
+189 164 139
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6306.pal b/data/field_specials/unk_83F6306.pal
new file mode 100644
index 000000000..27cf345e4
--- /dev/null
+++ b/data/field_specials/unk_83F6306.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+123 32 32
+172 82 82
+197 172 148
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6326.pal b/data/field_specials/unk_83F6326.pal
new file mode 100644
index 000000000..fcca0b4de
--- /dev/null
+++ b/data/field_specials/unk_83F6326.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+0 0 0
+131 32 32
+180 82 82
+205 172 148
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/field_specials/unk_83F6346.pal b/data/field_specials/unk_83F6346.pal
new file mode 100644
index 000000000..6c7540611
--- /dev/null
+++ b/data/field_specials/unk_83F6346.pal
@@ -0,0 +1,19 @@
+JASC-PAL
+0100
+16
+106 156 197
+205 32 32
+255 82 82
+255 205 156
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/border.bin b/data/layouts/SevenIsland_SevaultCanyon_TanobyKey/border.bin
index 56b76feec..56b76feec 100644
--- a/data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/border.bin
+++ b/data/layouts/SevenIsland_SevaultCanyon_TanobyKey/border.bin
diff --git a/data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/map.bin b/data/layouts/SevenIsland_SevaultCanyon_TanobyKey/map.bin
index 77ec431c8..77ec431c8 100644
--- a/data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/map.bin
+++ b/data/layouts/SevenIsland_SevaultCanyon_TanobyKey/map.bin
Binary files differ
diff --git a/data/layouts/layouts.json b/data/layouts/layouts.json
index 0b1685e5a..fbeee8c39 100644
--- a/data/layouts/layouts.json
+++ b/data/layouts/layouts.json
@@ -3884,16 +3884,16 @@
"blockdata_filepath": "data/layouts/SixIsland_AlteringCave/map.bin"
},
{
- "id": "LAYOUT_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY",
- "name": "SevenIsland_SeavaultCanyon_TanobyKey_Layout",
+ "id": "LAYOUT_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY",
+ "name": "SevenIsland_SevaultCanyon_TanobyKey_Layout",
"width": 15,
"height": 16,
"border_width": 2,
"border_height": 2,
"primary_tileset": "gTileset_82D4A94",
"secondary_tileset": "gTileset_82D4E0C",
- "border_filepath": "data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/border.bin",
- "blockdata_filepath": "data/layouts/SevenIsland_SeavaultCanyon_TanobyKey/map.bin"
+ "border_filepath": "data/layouts/SevenIsland_SevaultCanyon_TanobyKey/border.bin",
+ "blockdata_filepath": "data/layouts/SevenIsland_SevaultCanyon_TanobyKey/map.bin"
},
{
"id": "LAYOUT_BIRTH_ISLAND_EXTERIOR",
diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc
index f23c73615..0c20c59b8 100644
--- a/data/maps/BirthIsland_Exterior/scripts.inc
+++ b/data/maps/BirthIsland_Exterior/scripts.inc
@@ -5,7 +5,7 @@ BirthIsland_Exterior_MapScripts:: @ 8165203
.byte 0
BirthIsland_Exterior_MapScript3_165213:: @ 8165213
- special sub_80CD008
+ special Special_SetDeoxysTriangleObjectPal
end
BirthIsland_Exterior_MapScript1_165217:: @ 8165217
@@ -50,7 +50,7 @@ BirthIsland_Exterior_EventScript_165271:: @ 8165271
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
special sub_8112364
- special sub_80CCDFC
+ special Special_DeoxysSound
waitstate
switch VAR_RESULT
case 0, EventScript_1652BA
@@ -92,7 +92,7 @@ EventScript_1652C0:: @ 81652C0
setvar VAR_0x8006, 0
special CreateObedientEnemyMon
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/CeladonCity_Condominiums_3F/scripts.inc b/data/maps/CeladonCity_Condominiums_3F/scripts.inc
index b69ad021a..258846f29 100644
--- a/data/maps/CeladonCity_Condominiums_3F/scripts.inc
+++ b/data/maps/CeladonCity_Condominiums_3F/scripts.inc
@@ -34,7 +34,7 @@ EventScript_16C418:: @ 816C418
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
- special sub_80CA618
+ special Special_ShowDiploma
waitstate
release
end
diff --git a/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc b/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc
index c4d07baff..0e2673614 100644
--- a/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc
+++ b/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc
@@ -7,11 +7,11 @@ CeladonCity_DepartmentStore_Elevator_EventScript_16C153:: @ 816C153
checkflag FLAG_TEMP_2
call_if FALSE, EventScript_1A7AB9
copyvar VAR_0x8005, VAR_ELEVATOR_FLOOR
- special sub_80CB580
+ special Special_DrawElevatorCurrentFloorWindow
message Text_1A535C
waitmessage
setvar VAR_0x8004, 3
- specialvar VAR_RESULT, sub_80CB328
+ specialvar VAR_RESULT, Special_InitElevatorFloorSelectMenuPos
switch VAR_RESULT
case 0, EventScript_16C1B7
case 1, EventScript_16C1C3
@@ -109,15 +109,15 @@ EventScript_16C2E6:: @ 816C2E6
end
EventScript_16C30E:: @ 816C30E
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
releaseall
end
EventScript_16C313:: @ 816C313
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
closemessage
waitse
- special sub_80CB498
+ special Special_AnimateElevator
waitstate
setflag FLAG_TEMP_2
return
diff --git a/data/maps/CeladonCity_GameCorner/scripts.inc b/data/maps/CeladonCity_GameCorner/scripts.inc
index 7a95e7bf7..f79ffb046 100644
--- a/data/maps/CeladonCity_GameCorner/scripts.inc
+++ b/data/maps/CeladonCity_GameCorner/scripts.inc
@@ -273,7 +273,7 @@ EventScript_16C96C:: @ 816C96C
setfieldeffectarg 2, 14
dofieldeffect 64
waitfieldeffect 64
- specialvar VAR_RESULT, sub_80CAABC
+ specialvar VAR_RESULT, Special_GetRandomSlotMachine
playslotmachine VAR_RESULT
releaseall
end
diff --git a/data/maps/CeruleanCave_B1F/scripts.inc b/data/maps/CeruleanCave_B1F/scripts.inc
index ad68f84bc..5c51d2601 100644
--- a/data/maps/CeruleanCave_B1F/scripts.inc
+++ b/data/maps/CeruleanCave_B1F/scripts.inc
@@ -41,7 +41,7 @@ CeruleanCave_B1F_EventScript_1624F5:: @ 81624F5
waitbuttonpress
setwildbattle SPECIES_MEWTWO, 70, ITEM_NONE
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/CeruleanCity_House1/scripts.inc b/data/maps/CeruleanCity_House1/scripts.inc
index 18bc90fb6..26995d532 100644
--- a/data/maps/CeruleanCity_House1/scripts.inc
+++ b/data/maps/CeruleanCity_House1/scripts.inc
@@ -8,7 +8,7 @@ CeruleanCity_House1_EventScript_16A7F0:: @ 816A7F0
message Text_191967
waitmessage
setvar VAR_0x8004, 0
- special sub_80CB7C4
+ special Special_ListMenu
waitstate
switch VAR_RESULT
case 0, EventScript_16A8FB
@@ -26,7 +26,7 @@ CeruleanCity_House1_EventScript_16A7F0:: @ 816A7F0
EventScript_16A87D:: @ 816A87D
message Text_191967
waitmessage
- special sub_80CBC5C
+ special Special_ReturnToListMenu
waitstate
switch VAR_RESULT
case 0, EventScript_16A8FB
diff --git a/data/maps/CeruleanCity_House5/scripts.inc b/data/maps/CeruleanCity_House5/scripts.inc
index 1f5d8899a..79cd75785 100644
--- a/data/maps/CeruleanCity_House5/scripts.inc
+++ b/data/maps/CeruleanCity_House5/scripts.inc
@@ -40,7 +40,7 @@ EventScript_16AEC8:: @ 816AEC8
message Text_1932F4
waitmessage
setvar VAR_0x8004, 5
- special sub_80CB7C4
+ special Special_ListMenu
waitstate
switch VAR_RESULT
case 0, EventScript_16AF6C
diff --git a/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc b/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc
index 6cf717fe5..8a7dc8df1 100644
--- a/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc
+++ b/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc
@@ -48,7 +48,7 @@ CinnabarIsland_PokemonLab_Lounge_EventScript_16E33E:: @ 816E33E
faceplayer
setvar VAR_0x8008, 7
copyvar VAR_0x8004, VAR_0x8008
- specialvar VAR_RESULT, sub_8053A9C
+ specialvar VAR_RESULT, GetInGameTradeSpeciesInfo
copyvar VAR_0x8009, VAR_RESULT
checkflag FLAG_DID_TANGENY_TRADE
goto_if TRUE, EventScript_16E3D4
@@ -61,14 +61,14 @@ CinnabarIsland_PokemonLab_Lounge_EventScript_16E33E:: @ 816E33E
compare_var_to_value VAR_0x8004, 6
goto_if ge, EventScript_16E3BC
copyvar VAR_0x8005, VAR_0x800A
- specialvar VAR_RESULT, sub_8053D2C
+ specialvar VAR_RESULT, GetTradeSpecies
copyvar VAR_0x800B, VAR_RESULT
compare_var_to_var VAR_RESULT, VAR_0x8009
goto_if ne, EventScript_16E3C6
copyvar VAR_0x8004, VAR_0x8008
copyvar VAR_0x8005, VAR_0x800A
- special sub_8053D68
- special sub_8054440
+ special CreateInGameTradePokemon
+ special DoInGameTradeScene
waitstate
msgbox gUnknown_81A5B4A
setflag FLAG_DID_TANGENY_TRADE
diff --git a/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
index 18a6d0b14..1d1610ace 100644
--- a/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
+++ b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
@@ -10,16 +10,16 @@ FiveIsland_ResortGorgeous_House_EventScript_171EBE:: @ 8171EBE
faceplayer
checkflag FLAG_TEMP_2
goto_if TRUE, EventScript_172043
- compare_var_to_value VAR_STORAGE_UNKNOWN, 65535
+ compare_var_to_value VAR_RESORT_GORGEOUS_REQUESTED_MON, 0xFFFF
goto_if eq, EventScript_171F0B
- compare_var_to_value VAR_STORAGE_UNKNOWN, 0
+ compare_var_to_value VAR_RESORT_GORGEOUS_REQUESTED_MON, SPECIES_NONE
goto_if ne, EventScript_171F19
msgbox gUnknown_81A42A0
goto EventScript_171EFE
end
EventScript_171EFE:: @ 8171EFE
- special sub_80CB0A8
+ special Special_SampleResortGorgeousMonAndReward
msgbox gUnknown_81A4315
release
end
@@ -30,15 +30,15 @@ EventScript_171F0B:: @ 8171F0B
end
EventScript_171F19:: @ 8171F19
- copyvar VAR_0x8004, VAR_STORAGE_UNKNOWN
- specialvar VAR_RESULT, sub_80CC48C
+ copyvar VAR_0x8004, VAR_RESORT_GORGEOUS_REQUESTED_MON
+ specialvar VAR_RESULT, Special_PlayerPartyContainsSpecies
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_171F34
goto EventScript_171EFE
end
EventScript_171F34:: @ 8171F34
- special sub_80CB0A8
+ special Special_SampleResortGorgeousMonAndReward
msgbox gUnknown_81A43F7
addobject 2
applymovement 2, Movement_172060
@@ -62,11 +62,11 @@ EventScript_171F34:: @ 8171F34
call_if eq, EventScript_17201A
moveobjectoffscreen 2
msgbox gUnknown_81A458E
- giveitem VAR_0x403B
+ giveitem VAR_RESORT_GORGEOUS_REWARD
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_172025
setflag FLAG_TEMP_2
- setvar VAR_STORAGE_UNKNOWN, 0
+ setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, 0
release
end
@@ -104,7 +104,7 @@ EventScript_172025:: @ 8172025
textcolor 1
msgbox gUnknown_81A461B
setflag FLAG_TEMP_2
- setvar VAR_STORAGE_UNKNOWN, 0
+ setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, 0
release
end
diff --git a/data/maps/FiveIsland_WaterLabyrinth/scripts.inc b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
index 979486b7c..a334ab2df 100644
--- a/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
+++ b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
@@ -13,7 +13,7 @@ FiveIsland_WaterLabyrinth_EventScript_16884E:: @ 816884E
checkflag FLAG_NO_ROOM_FOR_TOGEPI_EGG
goto_if TRUE, EventScript_16892C
msgbox gUnknown_818A80D
- specialvar VAR_RESULT, sub_80CA76C
+ specialvar VAR_RESULT, Special_GetLeadMonFriendship
compare_var_to_value VAR_RESULT, 6
goto_if eq, EventScript_1688AC
msgbox gUnknown_818A88F
@@ -49,12 +49,12 @@ EventScript_1688BA:: @ 81688BA
EventScript_1688E3:: @ 81688E3
getspeciesname 1, SPECIES_TOGEPI
setvar VAR_0x8004, SPECIES_TOGEPI
- specialvar VAR_RESULT, sub_80CD0F4
+ specialvar VAR_RESULT, Special_PlayerPartyContainsSpeciesWithPlayerID
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_168895
getspeciesname 1, SPECIES_TOGETIC
setvar VAR_0x8004, SPECIES_TOGETIC
- specialvar VAR_RESULT, sub_80CD0F4
+ specialvar VAR_RESULT, Special_PlayerPartyContainsSpeciesWithPlayerID
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_168895
msgbox gUnknown_818A9C0
diff --git a/data/maps/FourIsland/scripts.inc b/data/maps/FourIsland/scripts.inc
index 3ef1f2054..68788f93a 100644
--- a/data/maps/FourIsland/scripts.inc
+++ b/data/maps/FourIsland/scripts.inc
@@ -133,7 +133,7 @@ EventScript_167E19:: @ 8167E19
special GetDaycareMonNicknames
msgbox gUnknown_81BF789
special SetDaycareCompatibilityString
- special sub_80CA68C
+ special Special_ShowStringVar4AsFieldMessage
waitmessage
waitbuttonpress
release
diff --git a/data/maps/FourIsland_PokemonDayCare/scripts.inc b/data/maps/FourIsland_PokemonDayCare/scripts.inc
index 7ca07b4ba..c91cc86e5 100644
--- a/data/maps/FourIsland_PokemonDayCare/scripts.inc
+++ b/data/maps/FourIsland_PokemonDayCare/scripts.inc
@@ -40,7 +40,7 @@ EventScript_171993:: @ 8171993
msgbox gUnknown_81BF860
waitmoncry
special StoreSelectedPokemonInDaycare
- incrementgamestat 47
+ incrementgamestat GAME_STAT_USED_DAYCARE
specialvar VAR_RESULT, GetDaycareState
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_171A01
diff --git a/data/maps/FuchsiaCity/scripts.inc b/data/maps/FuchsiaCity/scripts.inc
index d62d5252d..ea921b4d1 100644
--- a/data/maps/FuchsiaCity/scripts.inc
+++ b/data/maps/FuchsiaCity/scripts.inc
@@ -72,7 +72,7 @@ FuchsiaCity_EventScript_166E07:: @ 8166E07
FuchsiaCity_EventScript_166E1F:: @ 8166E1F
lockall
setvar VAR_0x8004, SPECIES_CHANSEY
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_CHANSEY, 10, 3
msgbox gUnknown_81807A9
erasemonpic
@@ -82,7 +82,7 @@ FuchsiaCity_EventScript_166E1F:: @ 8166E1F
FuchsiaCity_EventScript_166E38:: @ 8166E38
lockall
setvar VAR_0x8004, SPECIES_VOLTORB
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_VOLTORB, 10, 3
msgbox gUnknown_81807D9
erasemonpic
@@ -92,7 +92,7 @@ FuchsiaCity_EventScript_166E38:: @ 8166E38
FuchsiaCity_EventScript_166E51:: @ 8166E51
lockall
setvar VAR_0x8004, SPECIES_KANGASKHAN
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_KANGASKHAN, 10, 3
msgbox gUnknown_8180806
erasemonpic
@@ -102,7 +102,7 @@ FuchsiaCity_EventScript_166E51:: @ 8166E51
FuchsiaCity_EventScript_166E6A:: @ 8166E6A
lockall
setvar VAR_0x8004, SPECIES_SLOWPOKE
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_SLOWPOKE, 10, 3
msgbox gUnknown_8180859
erasemonpic
@@ -112,7 +112,7 @@ FuchsiaCity_EventScript_166E6A:: @ 8166E6A
FuchsiaCity_EventScript_166E83:: @ 8166E83
lockall
setvar VAR_0x8004, SPECIES_LAPRAS
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_LAPRAS, 10, 3
msgbox gUnknown_8180887
erasemonpic
@@ -124,7 +124,7 @@ FuchsiaCity_EventScript_166E9C:: @ 8166E9C
checkflag FLAG_GOT_DOME_FOSSIL
goto_if TRUE, EventScript_166EBE
setvar VAR_0x8004, SPECIES_KABUTO
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_KABUTO, 10, 3
msgbox gUnknown_81808FA
erasemonpic
@@ -133,7 +133,7 @@ FuchsiaCity_EventScript_166E9C:: @ 8166E9C
EventScript_166EBE:: @ 8166EBE
setvar VAR_0x8004, SPECIES_OMANYTE
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_OMANYTE, 10, 3
msgbox gUnknown_81808AE
erasemonpic
diff --git a/data/maps/FuchsiaCity_House3/scripts.inc b/data/maps/FuchsiaCity_House3/scripts.inc
index f08f9371d..da4f19e60 100644
--- a/data/maps/FuchsiaCity_House3/scripts.inc
+++ b/data/maps/FuchsiaCity_House3/scripts.inc
@@ -16,7 +16,7 @@ EventScript_16D8B0:: @ 816D8B0
waitstate
compare_var_to_value VAR_0x8004, 6
goto_if ge, EventScript_16D941
- special sub_80BFC14
+ special IsSelectedMonEgg
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16D937
special ScrSpecial_CountPokemonMoves
@@ -24,7 +24,7 @@ EventScript_16D8B0:: @ 816D8B0
goto_if eq, EventScript_16D92A
msgbox gUnknown_8199445
fadescreen 1
- special Special_ChooseMoveToDelete
+ special SelectMove
fadescreen 0
compare_var_to_value VAR_0x8005, 4
goto_if eq, EventScript_16D8B0
@@ -36,7 +36,7 @@ EventScript_16D8B0:: @ 816D8B0
end
EventScript_16D919:: @ 816D919
- special Special_DeleteSelectedMove
+ special DeleteMonMove
playfanfare MUS_ME_WASURE
waitfanfare
msgbox gUnknown_81994B1
diff --git a/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc b/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc
index e1031e737..16b796efe 100644
--- a/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc
+++ b/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc
@@ -157,7 +157,7 @@ EventScript_16D462:: @ 816D462
countpokemon
compare_var_to_value VAR_RESULT, 6
goto_if ne, EventScript_1A77A9
- specialvar VAR_RESULT, sub_80CABD0
+ specialvar VAR_RESULT, Special_IsThereRoomInAnyBoxForMorePokemon
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1A77A9
msgbox gUnknown_81BFEAC
diff --git a/data/maps/LavenderTown_House2/scripts.inc b/data/maps/LavenderTown_House2/scripts.inc
index 213e84754..cd9e5e8d7 100644
--- a/data/maps/LavenderTown_House2/scripts.inc
+++ b/data/maps/LavenderTown_House2/scripts.inc
@@ -27,14 +27,14 @@ EventScript_16B2AA:: @ 816B2AA
end
EventScript_16B2B4:: @ 816B2B4
- specialvar VAR_RESULT, sub_80CAD54
+ specialvar VAR_RESULT, Special_GetSpeciesOfPartySlot_x8004
compare_var_to_value VAR_RESULT, SPECIES_EGG
goto_if eq, EventScript_16B307
special TV_CopyNicknameToStringVar1AndEnsureTerminated
special TV_CheckMonOTIDEqualsPlayerID
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16B311
- specialvar VAR_RESULT, sub_80CAD7C
+ specialvar VAR_RESULT, Special_BufferMonOTNameAndCompareToPlayerName
special TV_CopyNicknameToStringVar1AndEnsureTerminated
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16B311
@@ -58,7 +58,7 @@ EventScript_16B311:: @ 816B311
EventScript_16B31B:: @ 816B31B
msgbox gUnknown_8193B36
call EventScript_1A74EB
- specialvar VAR_RESULT, sub_80CBFA0
+ specialvar VAR_RESULT, NameRaterWasNicknameChanged
special TV_CopyNicknameToStringVar1AndEnsureTerminated
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16B345
diff --git a/data/maps/MtEmber_RubyPath_B5F/scripts.inc b/data/maps/MtEmber_RubyPath_B5F/scripts.inc
index c3d8b7320..53aec5282 100644
--- a/data/maps/MtEmber_RubyPath_B5F/scripts.inc
+++ b/data/maps/MtEmber_RubyPath_B5F/scripts.inc
@@ -7,31 +7,31 @@ MtEmber_RubyPath_B5F_EventScript_163BAB:: @ 8163BAB
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92C5
getbraillestringwidth gUnknown_81A92C5
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92D0
getbraillestringwidth gUnknown_81A92D0
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92DC
getbraillestringwidth gUnknown_81A92DC
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92E6
getbraillestringwidth gUnknown_81A92E6
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92F2
getbraillestringwidth gUnknown_81A92F2
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A92FE
getbraillestringwidth gUnknown_81A92FE
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A930A
getbraillestringwidth gUnknown_81A930A
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
braillemessage gUnknown_81A9316
waitbuttonpress
releaseall
diff --git a/data/maps/MtEmber_Summit/scripts.inc b/data/maps/MtEmber_Summit/scripts.inc
index 8287d1d93..3f8256837 100644
--- a/data/maps/MtEmber_Summit/scripts.inc
+++ b/data/maps/MtEmber_Summit/scripts.inc
@@ -41,7 +41,7 @@ MtEmber_Summit_EventScript_163B33:: @ 8163B33
playbgm MUS_EXEYE, 0
waitbuttonpress
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/NavelRock_Base/scripts.inc b/data/maps/NavelRock_Base/scripts.inc
index 98bb6f920..20cff0f8f 100644
--- a/data/maps/NavelRock_Base/scripts.inc
+++ b/data/maps/NavelRock_Base/scripts.inc
@@ -46,14 +46,14 @@ NavelRock_Base_EventScript_165134:: @ 8165134
setvar VAR_0x8005, 3
setvar VAR_0x8006, 4
setvar VAR_0x8007, 2
- special sub_80CAC28
+ special Special_ShakeScreen
delay 30
playse SE_T_AME_E
setvar VAR_0x8004, 0
setvar VAR_0x8005, 3
setvar VAR_0x8006, 4
setvar VAR_0x8007, 2
- special sub_80CAC28
+ special Special_ShakeScreen
delay 30
delay 50
waitse
@@ -65,7 +65,7 @@ NavelRock_Base_EventScript_165134:: @ 8165134
setvar VAR_0x8006, 0
special CreateObedientEnemyMon
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/NavelRock_Summit/scripts.inc b/data/maps/NavelRock_Summit/scripts.inc
index f73aaf1ec..563ef520f 100644
--- a/data/maps/NavelRock_Summit/scripts.inc
+++ b/data/maps/NavelRock_Summit/scripts.inc
@@ -45,7 +45,7 @@ NavelRock_Summit_EventScript_164FFB:: @ 8164FFB
special SpawnCameraObject
setvar VAR_0x8004, 3
setvar VAR_0x8005, 35
- special sub_80CD1B4
+ special Special_LoopWingFlapSound
applymovement 1, Movement_1650E0
applymovement 127, Movement_1650CD
waitmovement 0
@@ -59,7 +59,7 @@ NavelRock_Summit_EventScript_164FFB:: @ 8164FFB
delay 60
setvar VAR_0x8004, 3
setvar VAR_0x8005, 35
- special sub_80CD1B4
+ special Special_LoopWingFlapSound
applymovement 127, Movement_1650D1
applymovement 1, Movement_1650D7
waitmovement 0
@@ -69,7 +69,7 @@ NavelRock_Summit_EventScript_164FFB:: @ 8164FFB
setvar VAR_0x8006, 0
special CreateObedientEnemyMon
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
setvar VAR_LAST_TALKED, 1
diff --git a/data/maps/PalletTown_GarysHouse/scripts.inc b/data/maps/PalletTown_GarysHouse/scripts.inc
index 7900d62e8..42c7d44ad 100644
--- a/data/maps/PalletTown_GarysHouse/scripts.inc
+++ b/data/maps/PalletTown_GarysHouse/scripts.inc
@@ -61,7 +61,7 @@ EventScript_168DB9:: @ 8168DB9
faceplayer
compare_var_to_value VAR_0x8004, 6
goto_if ge, EventScript_168E3C
- specialvar VAR_RESULT, sub_80CAD54
+ specialvar VAR_RESULT, Special_GetSpeciesOfPartySlot_x8004
compare_var_to_value VAR_RESULT, SPECIES_EGG
goto_if eq, EventScript_168E32
msgbox gUnknown_818D8CC
@@ -88,7 +88,7 @@ EventScript_168E3C:: @ 8168E3C
EventScript_168E46:: @ 8168E46
msgbox gUnknown_818D9A5
- specialvar VAR_RESULT, sub_80CA76C
+ specialvar VAR_RESULT, Special_GetLeadMonFriendship
switch VAR_RESULT
case 0, EventScript_168EA6
case 1, EventScript_168EB0
diff --git a/data/maps/PalletTown_PlayersHouse_2F/scripts.inc b/data/maps/PalletTown_PlayersHouse_2F/scripts.inc
index 80249e6c4..dc90bc7bf 100644
--- a/data/maps/PalletTown_PlayersHouse_2F/scripts.inc
+++ b/data/maps/PalletTown_PlayersHouse_2F/scripts.inc
@@ -38,10 +38,10 @@ PalletTown_PlayersHouse_2F_EventScript_168CE4:: @ 8168CE4
setvar VAR_0x8004, 32
special Special_SetSomeVariable
setvar VAR_0x8004, 1
- special sub_80CA86C
+ special Special_AnimatePcTurnOn
playse SE_PC_ON
msgbox gUnknown_81A5420
- special sub_80EB6AC
+ special BedroomPC
waitstate
special sub_812B35C
releaseall
@@ -50,7 +50,7 @@ PalletTown_PlayersHouse_2F_EventScript_168CE4:: @ 8168CE4
EventScript_PalletTown_PlayersHouse_2F_ShutDownPC:: @ 8168D17
setvar VAR_0x8004, 1
playse SE_PC_OFF
- special sub_80CA9A8
+ special Special_AnimatePcTurnOff
special sub_812B35C
releaseall
end
diff --git a/data/maps/PokemonTower_6F/scripts.inc b/data/maps/PokemonTower_6F/scripts.inc
index ee40d071b..086f589de 100644
--- a/data/maps/PokemonTower_6F/scripts.inc
+++ b/data/maps/PokemonTower_6F/scripts.inc
@@ -9,7 +9,7 @@ PokemonTower_6F_EventScript_1634B8:: @ 81634B8
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
setwildbattle SPECIES_MAROWAK, 30, ITEM_NONE
- special sub_807F904
+ special ScrSpecial_StartMarowakBattle
waitstate
special sub_8112364
compare_var_to_value VAR_RESULT, 0
diff --git a/data/maps/PowerPlant/scripts.inc b/data/maps/PowerPlant/scripts.inc
index aa6fa42b0..aa16e1881 100644
--- a/data/maps/PowerPlant/scripts.inc
+++ b/data/maps/PowerPlant/scripts.inc
@@ -54,7 +54,7 @@ PowerPlant_EventScript_1637B8:: @ 81637B8
playbgm MUS_EXEYE, 0
waitbuttonpress
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/RocketHideout_Elevator/scripts.inc b/data/maps/RocketHideout_Elevator/scripts.inc
index c83bc7fd9..c6a199a52 100644
--- a/data/maps/RocketHideout_Elevator/scripts.inc
+++ b/data/maps/RocketHideout_Elevator/scripts.inc
@@ -9,11 +9,11 @@ RocketHideout_Elevator_EventScript_1614D9:: @ 81614D9
checkflag FLAG_TEMP_2
call_if FALSE, EventScript_1A7AB9
copyvar VAR_0x8005, VAR_ELEVATOR_FLOOR
- special sub_80CB580
+ special Special_DrawElevatorCurrentFloorWindow
message Text_1A535C
waitmessage
setvar VAR_0x8004, 2
- specialvar VAR_RESULT, sub_80CB328
+ specialvar VAR_RESULT, Special_InitElevatorFloorSelectMenuPos
switch VAR_RESULT
case 0, EventScript_161530
case 1, EventScript_16153C
@@ -87,15 +87,15 @@ EventScript_161608:: @ 8161608
end
EventScript_161609:: @ 8161609
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
releaseall
end
EventScript_16160E:: @ 816160E
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
closemessage
waitse
- special sub_80CB498
+ special Special_AnimateElevator
waitstate
setflag FLAG_TEMP_2
return
diff --git a/data/maps/Route12_FishingHouse/scripts.inc b/data/maps/Route12_FishingHouse/scripts.inc
index 927bc3bea..0f0aa4f68 100644
--- a/data/maps/Route12_FishingHouse/scripts.inc
+++ b/data/maps/Route12_FishingHouse/scripts.inc
@@ -36,17 +36,17 @@ EventScript_16FF7F:: @ 816FF7F
goto_if eq, EventScript_1A7AE0
special sub_8112364
setvar VAR_0x8004, SPECIES_MAGIKARP
- specialvar VAR_RESULT, sub_80CC48C
+ specialvar VAR_RESULT, Special_PlayerPartyContainsSpecies
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_16FFF5
- special sub_80A096C
+ special GetMagikarpSizeRecordInfo
msgbox gUnknown_819F2DB
special Special_ChooseMonFromParty
waitstate
copyvar VAR_RESULT, VAR_0x8004
compare_var_to_value VAR_RESULT, 6
goto_if ge, EventScript_16FFFF
- special sub_80A0984
+ special CompareMagikarpSize
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_170001
compare_var_to_value VAR_RESULT, 2
@@ -110,7 +110,7 @@ Route12_FishingHouse_EventScript_170067:: @ 8170067
end
EventScript_17007B:: @ 817007B
- special sub_80A096C
+ special GetMagikarpSizeRecordInfo
msgbox gUnknown_819F4CF
releaseall
end
diff --git a/data/maps/Route15_WestEntrance_2F/scripts.inc b/data/maps/Route15_WestEntrance_2F/scripts.inc
index 7ec851931..1b491d4e5 100644
--- a/data/maps/Route15_WestEntrance_2F/scripts.inc
+++ b/data/maps/Route15_WestEntrance_2F/scripts.inc
@@ -9,7 +9,7 @@ Route15_WestEntrance_2F_EventScript_170093:: @ 8170093
waitbuttonpress
erasemonpic
setvar VAR_0x8004, SPECIES_ARTICUNO
- special sub_80CBDCC
+ special Special_SetSeenMon
releaseall
end
diff --git a/data/maps/Route16/scripts.inc b/data/maps/Route16/scripts.inc
index b20a716ca..0bc8d6c8a 100644
--- a/data/maps/Route16/scripts.inc
+++ b/data/maps/Route16/scripts.inc
@@ -27,7 +27,7 @@ Route16_MapScript3_168113:: @ 8168113
.2byte 0
EventScript_16811D:: @ 816811D
- special sub_80CA630
+ special Special_ForcePlayerOntoBike
end
Route16_EventScript_168121:: @ 8168121
diff --git a/data/maps/Route18/scripts.inc b/data/maps/Route18/scripts.inc
index dfc5f8578..cc6d11221 100644
--- a/data/maps/Route18/scripts.inc
+++ b/data/maps/Route18/scripts.inc
@@ -17,7 +17,7 @@ Route18_MapScript2_168211:: @ 8168211
.2byte 0
EventScript_16821B:: @ 816821B
- special sub_80CA630
+ special Special_ForcePlayerOntoBike
end
Route18_EventScript_16821F:: @ 816821F
diff --git a/data/maps/Route25_SeaCottage/scripts.inc b/data/maps/Route25_SeaCottage/scripts.inc
index b3c8e79ed..76be366f2 100644
--- a/data/maps/Route25_SeaCottage/scripts.inc
+++ b/data/maps/Route25_SeaCottage/scripts.inc
@@ -263,7 +263,7 @@ EventScript_17082B:: @ 817082B
waitbuttonpress
erasemonpic
setvar VAR_0x8004, SPECIES_EEVEE
- special sub_80CBDCC
+ special Special_SetSeenMon
goto EventScript_1707D8
end
@@ -272,7 +272,7 @@ EventScript_170840:: @ 8170840
waitbuttonpress
erasemonpic
setvar VAR_0x8004, SPECIES_FLAREON
- special sub_80CBDCC
+ special Special_SetSeenMon
goto EventScript_1707D8
end
@@ -281,7 +281,7 @@ EventScript_170855:: @ 8170855
waitbuttonpress
erasemonpic
setvar VAR_0x8004, SPECIES_JOLTEON
- special sub_80CBDCC
+ special Special_SetSeenMon
goto EventScript_1707D8
end
@@ -290,7 +290,7 @@ EventScript_17086A:: @ 817086A
waitbuttonpress
erasemonpic
setvar VAR_0x8004, SPECIES_VAPOREON
- special sub_80CBDCC
+ special Special_SetSeenMon
goto EventScript_1707D8
end
diff --git a/data/maps/SSAnne_2F_Room1/scripts.inc b/data/maps/SSAnne_2F_Room1/scripts.inc
index f3dc1f136..9748777c7 100644
--- a/data/maps/SSAnne_2F_Room1/scripts.inc
+++ b/data/maps/SSAnne_2F_Room1/scripts.inc
@@ -7,7 +7,7 @@ SSAnne_2F_Room1_EventScript_160C97:: @ 8160C97
message Text_173CE3
waitmessage
setvar VAR_0x8004, SPECIES_SNORLAX
- special sub_80CBDCC
+ special Special_SetSeenMon
drawmonpic SPECIES_SNORLAX, 10, 3
waitbuttonpress
erasemonpic
diff --git a/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc b/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc
index 30d528791..426226422 100644
--- a/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc
+++ b/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc
@@ -78,37 +78,37 @@ SaffronCity_PokemonTrainerFanClub_MapScript2_16F144:: @ 816F144
end
EventScript_16F15B:: @ 816F15B
- special sub_81132CC
+ special UpdateMovedSaffronFanClubMembers
setvar VAR_0x8004, 0
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F207
setvar VAR_0x8004, 1
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F213
setvar VAR_0x8004, 2
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F21F
setvar VAR_0x8004, 3
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F22B
setvar VAR_0x8004, 4
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F237
setvar VAR_0x8004, 5
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F243
setvar VAR_0x8004, 6
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F24F
setvar VAR_0x8004, 7
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_16F25B
end
@@ -165,13 +165,13 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F281:: @ 816F281
lock
faceplayer
setvar VAR_0x8004, 0
- special sub_81133A4
+ special BufferStreakTrainerText
compare_var_to_value VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB, 0
goto_if eq, EventScript_16F2EE
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F2C0
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F2E4
msgbox gUnknown_819C420
@@ -179,7 +179,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F281:: @ 816F281
end
EventScript_16F2C0:: @ 816F2C0
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F2DA
msgbox gUnknown_819C390
@@ -205,13 +205,13 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F2F8:: @ 816F2F8
lock
faceplayer
setvar VAR_0x8004, 3
- special sub_81133A4
+ special BufferStreakTrainerText
compare_var_to_value VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB, 0
goto_if eq, EventScript_16F365
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F337
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F35B
msgbox gUnknown_819CBD3
@@ -219,7 +219,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F2F8:: @ 816F2F8
end
EventScript_16F337:: @ 816F337
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F351
msgbox gUnknown_819CB32
@@ -245,13 +245,13 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F36F:: @ 816F36F
lock
faceplayer
setvar VAR_0x8004, 1
- special sub_81133A4
+ special BufferStreakTrainerText
compare_var_to_value VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB, 0
goto_if eq, EventScript_16F3DC
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F3AE
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F3D2
msgbox gUnknown_819C6BA
@@ -259,7 +259,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F36F:: @ 816F36F
end
EventScript_16F3AE:: @ 816F3AE
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F3C8
msgbox gUnknown_819C5A9
@@ -285,13 +285,13 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F3E6:: @ 816F3E6
lock
faceplayer
setvar VAR_0x8004, 2
- special sub_81133A4
+ special BufferStreakTrainerText
compare_var_to_value VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB, 0
goto_if eq, EventScript_16F453
- specialvar VAR_RESULT, sub_8113364
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F425
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F449
msgbox gUnknown_819C986
@@ -299,7 +299,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F3E6:: @ 816F3E6
end
EventScript_16F425:: @ 816F425
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F43F
msgbox gUnknown_819C81E
@@ -325,11 +325,11 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F45D:: @ 816F45D
lock
faceplayer
setvar VAR_0x8004, 5
- special sub_81133A4
- specialvar VAR_RESULT, sub_8113364
+ special BufferStreakTrainerText
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F491
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F4B5
msgbox gUnknown_819D01F
@@ -337,7 +337,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F45D:: @ 816F45D
end
EventScript_16F491:: @ 816F491
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F4AB
msgbox gUnknown_819CEDF
@@ -358,11 +358,11 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F4BF:: @ 816F4BF
lock
faceplayer
setvar VAR_0x8004, 4
- special sub_81133A4
- specialvar VAR_RESULT, sub_8113364
+ special BufferStreakTrainerText
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F4F3
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F517
msgbox gUnknown_819CDDA
@@ -370,7 +370,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F4BF:: @ 816F4BF
end
EventScript_16F4F3:: @ 816F4F3
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F50D
msgbox gUnknown_819CCF3
@@ -391,11 +391,11 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F521:: @ 816F521
lock
faceplayer
setvar VAR_0x8004, 6
- special sub_81133A4
- specialvar VAR_RESULT, sub_8113364
+ special BufferStreakTrainerText
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F555
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F579
msgbox gUnknown_819D1AE
@@ -403,7 +403,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F521:: @ 816F521
end
EventScript_16F555:: @ 816F555
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F56F
msgbox gUnknown_819D0E3
@@ -424,11 +424,11 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F583:: @ 816F583
lock
faceplayer
setvar VAR_0x8004, 7
- special sub_81133A4
- specialvar VAR_RESULT, sub_8113364
+ special BufferStreakTrainerText
+ specialvar VAR_RESULT, ShouldMoveSaffronFanClubMember
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F5B7
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 7
goto_if eq, EventScript_16F5DB
msgbox gUnknown_819D3D2
@@ -436,7 +436,7 @@ SaffronCity_PokemonTrainerFanClub_EventScript_16F583:: @ 816F583
end
EventScript_16F5B7:: @ 816F5B7
- specialvar VAR_RESULT, sub_8113288
+ specialvar VAR_RESULT, GetNumMovedSaffronFanClubMembers
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_16F5D1
msgbox gUnknown_819D2B4
diff --git a/data/maps/SeafoamIslands_B4F/scripts.inc b/data/maps/SeafoamIslands_B4F/scripts.inc
index 3b618448c..8d69a4808 100644
--- a/data/maps/SeafoamIslands_B4F/scripts.inc
+++ b/data/maps/SeafoamIslands_B4F/scripts.inc
@@ -70,7 +70,7 @@ SeafoamIslands_B4F_MapScript4_1630E7:: @ 81630E7
EventScript_1630F1:: @ 81630F1
turnobject 255, 2
- special sub_80CBD80
+ special Special_ForcePlayerToStartSurfing
end
SeafoamIslands_B4F_MapScript5_1630F9:: @ 81630F9
@@ -179,7 +179,7 @@ SeafoamIslands_B4F_EventScript_1631AC:: @ 81631AC
playbgm MUS_EXEYE, 0
waitbuttonpress
setflag FLAG_SYS_SPECIAL_WILD_BATTLE
- special sub_807F9D8
+ special Special_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_SPECIAL_WILD_BATTLE
specialvar VAR_RESULT, Special_GetBattleOutcome
diff --git a/data/maps/SevenIsland_House_Room1/scripts.inc b/data/maps/SevenIsland_House_Room1/scripts.inc
index 70813ddba..fd83fa051 100644
--- a/data/maps/SevenIsland_House_Room1/scripts.inc
+++ b/data/maps/SevenIsland_House_Room1/scripts.inc
@@ -90,7 +90,7 @@ EventScript_17097D:: @ 817097D
EventScript_170987:: @ 8170987
special SavePlayerParty
- special sub_80CAAAC
+ special Special_BufferEReaderTrainerName5
msgbox gUnknown_81A0598, MSGBOX_YESNO
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_170A11
@@ -105,7 +105,7 @@ EventScript_170987:: @ 8170987
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_170A11
special SavePlayerParty
- special sub_80A03D8
+ special ReducePlayerPartyToThree
msgbox gUnknown_81A07C4
closemessage
compare_var_to_value VAR_FACING, 2
diff --git a/data/maps/SevenIsland_House_Room2/scripts.inc b/data/maps/SevenIsland_House_Room2/scripts.inc
index d77eda077..f2928f916 100644
--- a/data/maps/SevenIsland_House_Room2/scripts.inc
+++ b/data/maps/SevenIsland_House_Room2/scripts.inc
@@ -4,7 +4,7 @@ SevenIsland_House_Room2_MapScripts:: @ 8170A7E
.byte 0
SevenIsland_House_Room2_MapScript1_170A89:: @ 8170A89
- special sub_80E5E70
+ special SetEReaderTrainerGfxId
end
SevenIsland_House_Room2_MapScript2_170A8D:: @ 8170A8D
@@ -15,12 +15,12 @@ EventScript_170A97:: @ 8170A97
lockall
applymovement 255, Movement_170B22
waitmovement 0
- special sub_80E7538
+ special PrintEReaderTrainerGreeting
msgbox gStringVar4
closemessage
setvar VAR_0x8004, 2
setvar VAR_0x8005, 0
- special sub_80E6900
+ special StartSpecialBattle
waitstate
compare_var_to_value VAR_RESULT, 3
call_if eq, EventScript_170AFE
@@ -46,14 +46,14 @@ EventScript_170AFE:: @ 8170AFE
EventScript_170B0C:: @ 8170B0C
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 1
- special sub_80CA68C
+ special Special_ShowStringVar4AsFieldMessage
waitmessage
waitbuttonpress
return
EventScript_170B17:: @ 8170B17
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 2
- special sub_80CA68C
+ special Special_ShowStringVar4AsFieldMessage
waitmessage
waitbuttonpress
return
diff --git a/data/maps/SevenIsland_SevaultCanyon/map.json b/data/maps/SevenIsland_SevaultCanyon/map.json
index ecc28a62d..cf4f14540 100644
--- a/data/maps/SevenIsland_SevaultCanyon/map.json
+++ b/data/maps/SevenIsland_SevaultCanyon/map.json
@@ -290,7 +290,7 @@
"x": 7,
"y": 17,
"elevation": 5,
- "dest_map": "MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY",
+ "dest_map": "MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY",
"dest_warp_id": 0
},
{
diff --git a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/map.json b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/map.json
index f8c9c1a1f..4f492d72d 100644
--- a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/map.json
+++ b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/map.json
@@ -1,7 +1,7 @@
{
- "id": "MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY",
- "name": "SevenIsland_SeavaultCanyon_TanobyKey",
- "layout": "LAYOUT_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY",
+ "id": "MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY",
+ "name": "SevenIsland_SevaultCanyon_TanobyKey",
+ "layout": "LAYOUT_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY",
"music": "MUS_NANAISEKI",
"region_map_section": "MAPSEC_TANOBY_KEY",
"requires_flash": false,
@@ -122,7 +122,7 @@
"elevation": 3,
"var": "VAR_0x4001",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E39"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E39"
},
{
"type": "trigger",
@@ -131,7 +131,7 @@
"elevation": 3,
"var": "VAR_0x4007",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164F0B"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164F0B"
},
{
"type": "trigger",
@@ -140,7 +140,7 @@
"elevation": 3,
"var": "VAR_0x4006",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EE8"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EE8"
},
{
"type": "trigger",
@@ -149,7 +149,7 @@
"elevation": 3,
"var": "VAR_0x4005",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EC5"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EC5"
},
{
"type": "trigger",
@@ -158,7 +158,7 @@
"elevation": 3,
"var": "VAR_0x4004",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EA2"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EA2"
},
{
"type": "trigger",
@@ -167,7 +167,7 @@
"elevation": 3,
"var": "VAR_0x4003",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E7F"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E7F"
},
{
"type": "trigger",
@@ -176,7 +176,7 @@
"elevation": 3,
"var": "VAR_0x4002",
"var_value": 99,
- "script": "SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E5C"
+ "script": "SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E5C"
}
],
"bg_events": []
diff --git a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/scripts.inc
index 44dd71179..442e13942 100644
--- a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/scripts.inc
@@ -1,9 +1,9 @@
-SevenIsland_SeavaultCanyon_TanobyKey_MapScripts:: @ 8164DCC
- map_script 3, SevenIsland_SeavaultCanyon_TanobyKey_MapScript1_164DD2
+SevenIsland_SevaultCanyon_TanobyKey_MapScripts:: @ 8164DCC
+ map_script 3, SevenIsland_SevaultCanyon_TanobyKey_MapScript1_164DD2
.byte 0
-SevenIsland_SeavaultCanyon_TanobyKey_MapScript1_164DD2:: @ 8164DD2
- setworldmapflag FLAG_WORLD_MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY
+SevenIsland_SevaultCanyon_TanobyKey_MapScript1_164DD2:: @ 8164DD2
+ setworldmapflag FLAG_WORLD_MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY
checkflag FLAG_SYS_UNLOCKED_TANOBY_RUINS
call_if TRUE, EventScript_164E07
setvar VAR_0x4001, 0
@@ -26,7 +26,7 @@ EventScript_164E07:: @ 8164E07
setobjectxyperm 7, 9, 8
return
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E39:: @ 8164E39
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E39:: @ 8164E39
lockall
compare_var_to_value VAR_0x4001, 100
goto_if eq, EventScript_164F8A
@@ -37,7 +37,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E39:: @ 8164E39
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E5C:: @ 8164E5C
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E5C:: @ 8164E5C
lockall
compare_var_to_value VAR_0x4002, 100
goto_if eq, EventScript_164F8A
@@ -48,7 +48,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E5C:: @ 8164E5C
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E7F:: @ 8164E7F
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164E7F:: @ 8164E7F
lockall
compare_var_to_value VAR_0x4003, 100
goto_if eq, EventScript_164F8A
@@ -59,7 +59,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E7F:: @ 8164E7F
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EA2:: @ 8164EA2
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EA2:: @ 8164EA2
lockall
compare_var_to_value VAR_0x4004, 100
goto_if eq, EventScript_164F8A
@@ -70,7 +70,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EA2:: @ 8164EA2
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EC5:: @ 8164EC5
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EC5:: @ 8164EC5
lockall
compare_var_to_value VAR_0x4005, 100
goto_if eq, EventScript_164F8A
@@ -81,7 +81,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EC5:: @ 8164EC5
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EE8:: @ 8164EE8
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164EE8:: @ 8164EE8
lockall
compare_var_to_value VAR_0x4006, 100
goto_if eq, EventScript_164F8A
@@ -92,7 +92,7 @@ SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EE8:: @ 8164EE8
releaseall
end
-SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164F0B:: @ 8164F0B
+SevenIsland_SevaultCanyon_TanobyKey_EventScript_164F0B:: @ 8164F0B
lockall
compare_var_to_value VAR_0x4007, 100
goto_if eq, EventScript_164F8A
@@ -110,7 +110,7 @@ EventScript_164F2E:: @ 8164F2E
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 3
- special sub_80CAC28
+ special Special_ShakeScreen
delay 60
return
@@ -119,13 +119,13 @@ EventScript_164F51:: @ 8164F51
setvar VAR_0x8005, 2
setvar VAR_0x8006, 10
setvar VAR_0x8007, 3
- special sub_80CAC28
+ special Special_ShakeScreen
delay 60
setvar VAR_0x8004, 3
setvar VAR_0x8005, 3
setvar VAR_0x8006, 12
setvar VAR_0x8007, 2
- special sub_80CAC28
+ special Special_ShakeScreen
delay 60
playse SE_FU_ZUZUZU
waitse
diff --git a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/text.inc b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/text.inc
index c6f137869..c6f137869 100644
--- a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/text.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_TanobyKey/text.inc
diff --git a/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc b/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc
index b1fc46abd..a415190da 100644
--- a/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc
+++ b/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc
@@ -9,11 +9,11 @@ SevenIsland_TrainerTower_Elevator_EventScript_164B03:: @ 8164B03
checkflag FLAG_TEMP_2
call_if FALSE, EventScript_1A7AB9
copyvar VAR_0x8005, VAR_ELEVATOR_FLOOR
- special sub_80CB580
+ special Special_DrawElevatorCurrentFloorWindow
message Text_1A535C
waitmessage
setvar VAR_0x8004, 6
- specialvar VAR_RESULT, sub_80CB328
+ specialvar VAR_RESULT, Special_InitElevatorFloorSelectMenuPos
switch VAR_RESULT
case 0, EventScript_164B46
case 1, EventScript_164B52
@@ -44,7 +44,7 @@ EventScript_164B90:: @ 8164B90
goto_if eq, EventScript_164BD3
call EventScript_164BD8
setvar VAR_ELEVATOR_FLOOR, 3
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
delay 25
applymovement 255, Movement_164BE5
waitmovement 0
@@ -58,15 +58,15 @@ EventScript_164BCD:: @ 8164BCD
end
EventScript_164BD3:: @ 8164BD3
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
releaseall
end
EventScript_164BD8:: @ 8164BD8
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
closemessage
waitse
- special sub_80CB498
+ special Special_AnimateElevator
waitstate
setflag FLAG_TEMP_2
return
diff --git a/data/maps/SilphCo_Elevator/scripts.inc b/data/maps/SilphCo_Elevator/scripts.inc
index 9338e5c6e..4d75eec38 100644
--- a/data/maps/SilphCo_Elevator/scripts.inc
+++ b/data/maps/SilphCo_Elevator/scripts.inc
@@ -7,12 +7,12 @@ SilphCo_Elevator_EventScript_161F6F:: @ 8161F6F
checkflag FLAG_TEMP_2
call_if FALSE, EventScript_1A7AB9
copyvar VAR_0x8005, VAR_ELEVATOR_FLOOR
- special sub_80CB580
+ special Special_DrawElevatorCurrentFloorWindow
message Text_1A535C
waitmessage
setvar VAR_0x8004, 1
- specialvar VAR_RESULT, sub_80CB328
- special sub_80CB7C4
+ specialvar VAR_RESULT, Special_InitElevatorFloorSelectMenuPos
+ special Special_ListMenu
waitstate
switch VAR_RESULT
case 0, EventScript_1621BF
@@ -163,15 +163,15 @@ EventScript_1621E6:: @ 81621E6
end
EventScript_1621E7:: @ 81621E7
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
releaseall
end
EventScript_1621EC:: @ 81621EC
- special sub_80CB63C
+ special Special_CloseElevatorCurrentFloorWindow
closemessage
waitse
- special sub_80CB498
+ special Special_AnimateElevator
waitstate
setflag FLAG_TEMP_2
return
diff --git a/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc b/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc
index bf2e1eb6d..64ef24b72 100644
--- a/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc
+++ b/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc
@@ -28,7 +28,7 @@ SixIsland_DottedHole_SapphireRoom_EventScript_1641B5:: @ 81641B5
setvar VAR_0x8005, 0
setvar VAR_0x8006, 12
setvar VAR_0x8007, 3
- special sub_80CAC28
+ special Special_ShakeScreen
delay 60
compare_var_to_value VAR_FACING, 2
call_if eq, EventScript_164325
@@ -241,63 +241,63 @@ SixIsland_DottedHole_SapphireRoom_EventScript_16441F:: @ 816441F
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9321
getbraillestringwidth gUnknown_81A9321
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A932D
getbraillestringwidth gUnknown_81A932D
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9338
getbraillestringwidth gUnknown_81A9338
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A933F
getbraillestringwidth gUnknown_81A933F
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A934A
getbraillestringwidth gUnknown_81A934A
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9356
getbraillestringwidth gUnknown_81A9356
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9362
getbraillestringwidth gUnknown_81A9362
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9368
getbraillestringwidth gUnknown_81A9368
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9374
getbraillestringwidth gUnknown_81A9374
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A937C
getbraillestringwidth gUnknown_81A937C
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9387
getbraillestringwidth gUnknown_81A9387
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A9393
getbraillestringwidth gUnknown_81A9393
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A939F
getbraillestringwidth gUnknown_81A939F
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A93AB
getbraillestringwidth gUnknown_81A93AB
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
setvar VAR_0x8006, 0
braillemessage gUnknown_81A93B4
getbraillestringwidth gUnknown_81A93B4
- call EventScript_1A926C
+ call EventScript_BrailleCursorWaitButton
braillemessage gUnknown_81A93C0
waitbuttonpress
releaseall
diff --git a/data/maps/SixIsland_WaterPath_House1/scripts.inc b/data/maps/SixIsland_WaterPath_House1/scripts.inc
index be9e12915..d38e40aac 100644
--- a/data/maps/SixIsland_WaterPath_House1/scripts.inc
+++ b/data/maps/SixIsland_WaterPath_House1/scripts.inc
@@ -9,17 +9,17 @@ SixIsland_WaterPath_House1_EventScript_17206D:: @ 817206D
goto_if eq, EventScript_1A7AE0
special sub_8112364
setvar VAR_0x8004, SPECIES_HERACROSS
- specialvar VAR_RESULT, sub_80CC48C
+ specialvar VAR_RESULT, Special_PlayerPartyContainsSpecies
compare_var_to_value VAR_RESULT, 0
goto_if eq, EventScript_1720E5
- special sub_80A0918
+ special GetHeracrossSizeRecordInfo
msgbox gUnknown_81A4A3F
special Special_ChooseMonFromParty
waitstate
copyvar VAR_RESULT, VAR_0x8004
compare_var_to_value VAR_RESULT, 6
goto_if ge, EventScript_1720EF
- special sub_80A0930
+ special CompareHeracrossSize
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_1720F1
compare_var_to_value VAR_RESULT, 2
@@ -83,7 +83,7 @@ SixIsland_WaterPath_House1_EventScript_172157:: @ 8172157
end
EventScript_17216B:: @ 817216B
- special sub_80A0918
+ special GetHeracrossSizeRecordInfo
msgbox gUnknown_81A4C6E
releaseall
end
diff --git a/data/maps/ThreeIsland_BerryForest/scripts.inc b/data/maps/ThreeIsland_BerryForest/scripts.inc
index 739b926b0..3119a1d44 100644
--- a/data/maps/ThreeIsland_BerryForest/scripts.inc
+++ b/data/maps/ThreeIsland_BerryForest/scripts.inc
@@ -32,7 +32,7 @@ ThreeIsland_BerryForest_EventScript_163C83:: @ 8163C83
giveitem ITEM_IAPAPA_BERRY
compare_var_to_value VAR_RESULT, 0
call_if eq, EventScript_163D19
- special sub_80CA6DC
+ special Special_BufferBigGuyOrBigGirlString
msgbox gUnknown_817AF3B
closemessage
setflag FLAG_RESCUED_LOSTELLE
diff --git a/data/maps/ThreeIsland_House1/scripts.inc b/data/maps/ThreeIsland_House1/scripts.inc
index 29952137a..7738d2e5c 100644
--- a/data/maps/ThreeIsland_House1/scripts.inc
+++ b/data/maps/ThreeIsland_House1/scripts.inc
@@ -4,7 +4,7 @@ ThreeIsland_House1_MapScripts:: @ 8171819
ThreeIsland_House1_EventScript_17181A:: @ 817181A
lock
faceplayer
- special sub_80CA6DC
+ special Special_BufferBigGuyOrBigGirlString
msgbox gUnknown_81A2F3E
release
end
diff --git a/data/maps/TwoIsland_House/scripts.inc b/data/maps/TwoIsland_House/scripts.inc
index 564ee8481..33f6d42fd 100644
--- a/data/maps/TwoIsland_House/scripts.inc
+++ b/data/maps/TwoIsland_House/scripts.inc
@@ -53,11 +53,11 @@ EventScript_1716A5:: @ 81716A5
EventScript_1716BE:: @ 81716BE
msgbox gUnknown_81A2CC3
- special sub_80BF93C
+ special SelectMoveTutorMon
waitstate
compare_var_to_value VAR_0x8004, 6
goto_if ge, EventScript_17179E
- special sub_80BFC14
+ special IsSelectedMonEgg
compare_var_to_value VAR_RESULT, 1
goto_if eq, EventScript_171790
compare_var_to_value VAR_0x8005, 0
@@ -67,7 +67,7 @@ EventScript_1716BE:: @ 81716BE
EventScript_1716F4:: @ 81716F4
msgbox gUnknown_81A2CE1
- special sub_80E4634
+ special DisplayMoveTutorMenu
waitstate
compare_var_to_value VAR_0x8004, 0
goto_if eq, EventScript_1716BE
diff --git a/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc b/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc
index 7d4bb6684..798435eaf 100644
--- a/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc
+++ b/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc
@@ -37,7 +37,7 @@ EventScript_171435:: @ 8171435
textcolor 0
msgbox gUnknown_81A28B2
textcolor 1
- special sub_80CA6DC
+ special Special_BufferBigGuyOrBigGirlString
msgbox gUnknown_81A2931
closemessage
applymovement 3, Movement_1A75ED
diff --git a/data/maps/ViridianCity/scripts.inc b/data/maps/ViridianCity/scripts.inc
index 5c5cebf82..24c38bfd7 100644
--- a/data/maps/ViridianCity/scripts.inc
+++ b/data/maps/ViridianCity/scripts.inc
@@ -151,7 +151,7 @@ EventScript_165A65:: @ 8165A65
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
special sub_8112364
- special sub_807F888
+ special ScrSpecial_StartOldManTutorialBattle
waitstate
release
end
@@ -246,7 +246,7 @@ EventScript_165B4C:: @ 8165B4C
compare_var_to_value VAR_RESULT, 2
goto_if eq, EventScript_1A7AE0
special sub_8112364
- special sub_807F888
+ special ScrSpecial_StartOldManTutorialBattle
waitstate
lock
faceplayer
diff --git a/data/maps/map_groups.json b/data/maps/map_groups.json
index 3bf3c6982..8619c19ad 100644
--- a/data/maps/map_groups.json
+++ b/data/maps/map_groups.json
@@ -212,7 +212,7 @@
"SevenIsland_TanobyRuins_RixyChamber",
"SevenIsland_TanobyRuins_ViapoisChamber",
"ThreeIsland_DunsparceTunnel",
- "SevenIsland_SeavaultCanyon_TanobyKey",
+ "SevenIsland_SevaultCanyon_TanobyKey",
"NavelRock_1F",
"NavelRock_Summit",
"NavelRock_Base",
diff --git a/data/specials.inc b/data/specials.inc
index bfb649961..96d997597 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -7,11 +7,10 @@
.set __special__, 0
.align 2
-
gSpecials:: @ 815FD60
def_special sp000_heal_pokemon
def_special SetCableClubWarp
- def_special sub_807E654
+ def_special DoCableClubWarp
def_special sub_807E704
def_special sub_8081744
def_special sub_8081770
@@ -60,16 +59,16 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special IsEnigmaBerryValid
- def_special sub_80803CC
- def_special sub_80805D8
- def_special sub_8080618
+ def_special ScrSpecial_GetTrainerBattleMode
+ def_special ScrSpecial_ShowTrainerIntroSpeech
+ def_special ScrSpecial_ShowTrainerNonBattlingSpeech
def_special ScrSpecial_HasTrainerBeenFought
def_special ScrSpecial_EndTrainerApproach
def_special PlayTrainerEncounterMusic
- def_special sub_810CD4C
- def_special sub_810CEB4
- def_special sub_80805B0
- def_special sub_808C6A8
+ def_special ShouldTryRematchBattle
+ def_special ScrSpecial_GetTrainerEyeRematchFlag
+ def_special ScrSpecial_StartTrainerEyeRematch
+ def_special ShowPokemonStorageSystem
def_special CheckForAlivePartyMons
def_special nullsub_75
def_special nullsub_75
@@ -78,7 +77,7 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CBEBC
+ def_special Special_HasLeadMonBeenRenamed
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@@ -128,16 +127,16 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80A0918
- def_special sub_80A0930
- def_special sub_80A096C
- def_special sub_80A0984
- def_special sub_80CBFA0
+ def_special GetHeracrossSizeRecordInfo
+ def_special CompareHeracrossSize
+ def_special GetMagikarpSizeRecordInfo
+ def_special CompareMagikarpSize
+ def_special NameRaterWasNicknameChanged
def_special TV_CopyNicknameToStringVar1AndEnsureTerminated
def_special TV_CheckMonOTIDEqualsPlayerID
def_special nullsub_75
def_special nullsub_75
- def_special sub_80BDB1C
+ def_special BufferRandomHobbyOrLifestyleString
def_special nullsub_75
def_special RegisteredItemHandleBikeSwap
def_special CalculatePlayerPartyCount
@@ -150,15 +149,15 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CA68C
+ def_special Special_ShowStringVar4AsFieldMessage
def_special DrawWholeMapView
- def_special sub_80CA69C
+ def_special Special_GetPlayerXY
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CA6BC
- def_special sub_80CA6DC
- def_special sub_80CA714
+ def_special Special_GetPlayerTrainerIdOnesDigit
+ def_special Special_BufferBigGuyOrBigGirlString
+ def_special Special_BufferSonOrDaughterString
def_special Special_SetHiddenItemFlag
def_special nullsub_75
def_special nullsub_75
@@ -166,17 +165,17 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_807F888
+ def_special ScrSpecial_StartOldManTutorialBattle
def_special ChangePokemonNickname
def_special Special_ChooseMonFromParty
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_8113364
- def_special sub_8113288
- def_special sub_81133A4
+ def_special ShouldMoveSaffronFanClubMember
+ def_special GetNumMovedSaffronFanClubMembers
+ def_special BufferStreakTrainerText
def_special sub_8113064
- def_special sub_81132CC
+ def_special UpdateMovedSaffronFanClubMembers
def_special sub_8113510
def_special sub_81130A8
def_special sub_8113530
@@ -204,12 +203,12 @@ gSpecials:: @ 815FD60
def_special TakePokemonFromDaycare
def_special ScriptHatchMon
def_special EggHatch
- def_special sub_8046EAC
+ def_special DaycareMonReceivedMail
def_special Special_BattleRecords
def_special IsEnoughForCostInVar0x8005
def_special SubtractMoneyFromVar0x8005
def_special ExecuteWhiteOut
- def_special sub_80CA3C4
+ def_special sp0C8_whiteout_maybe
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@@ -222,49 +221,49 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special Special_GetPokedexCount
- def_special sub_80CA524
- def_special sub_80CA86C
- def_special sub_80CA9A8
+ def_special Special_GetProfOaksRatingMessage
+ def_special Special_AnimatePcTurnOn
+ def_special Special_AnimatePcTurnOff
def_special Special_GetElevatorFloor
def_special nullsub_75
def_special nullsub_75
- def_special sub_80BF93C
- def_special Special_ChooseMoveToDelete
- def_special Special_DeleteSelectedMove
+ def_special SelectMoveTutorMon
+ def_special SelectMove
+ def_special DeleteMonMove
def_special ScrSpecial_GetPokemonNicknameAndMoveName
def_special ScrSpecial_CountPokemonMoves
- def_special sub_80E4634
+ def_special DisplayMoveTutorMenu
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CA664
+ def_special Special_GetPlayerAvatarBike
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CA76C
+ def_special Special_GetLeadMonFriendship
def_special sub_80E5970
- def_special sub_80E5C28
- def_special sub_80E6648
- def_special sub_80E67FC
- def_special sub_80E7538
- def_special sub_80E6900
- def_special sub_80E6A0C
- def_special sub_80E6C8C
- def_special sub_80E6E14
- def_special sub_80E6FB8
- def_special sub_80E7058
- def_special sub_80E71D0
- def_special sub_80E724C
- def_special sub_80E72B8
- def_special sub_80A0380
+ def_special ChooseNextBattleTowerTrainer
+ def_special CheckPartyBattleTowerBanlist
+ def_special PrintBattleTowerTrainerGreeting
+ def_special PrintEReaderTrainerGreeting
+ def_special StartSpecialBattle
+ def_special SetBattleTowerProperty
+ def_special BattleTowerUtil
+ def_special SetBattleTowerParty
+ def_special SaveBattleTowerProgress
+ def_special BattleTower_SoftReset
+ def_special DetermineBattleTowerPrize
+ def_special GiveBattleTowerPrize
+ def_special AwardBattleTowerRibbons
+ def_special ChooseBattleTowerPlayerParty
def_special ValidateEReaderTrainer
def_special nullsub_75
- def_special sub_80A03D8
- def_special sub_80EB6AC
- def_special sub_80EB6FC
- def_special sub_80CA7EC
- def_special sub_8053A9C
- def_special sub_8053D68
- def_special sub_8054440
- def_special sub_8053D2C
+ def_special ReducePlayerPartyToThree
+ def_special BedroomPC
+ def_special PlayerPC
+ def_special Special_TownMap
+ def_special GetInGameTradeSpeciesInfo
+ def_special CreateInGameTradePokemon
+ def_special DoInGameTradeScene
+ def_special GetTradeSpecies
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@@ -273,7 +272,7 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special ScrSpecial_CreatePCMenu
def_special HallOfFamePCBeginFade
- def_special sub_80CA618
+ def_special Special_ShowDiploma
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@@ -282,7 +281,7 @@ gSpecials:: @ 815FD60
def_special nullsub_61
def_special DoSoftReset
def_special Special_HallOfFame
- def_special sub_80CB498
+ def_special Special_AnimateElevator
def_special nullsub_75
def_special SpawnCameraObject
def_special RemoveCameraObject
@@ -294,35 +293,35 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CAAAC
- def_special sub_80CAABC
+ def_special Special_BufferEReaderTrainerName5
+ def_special Special_GetRandomSlotMachine
def_special GetPlayerFacingDirection
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
def_special LeadMonHasEffortRibbon
- def_special GivLeadMonEffortRibbon
+ def_special GiveLeadMonEffortRibbon
def_special ScrSpecial_AreLeadMonEVsMaxedOut
def_special sub_8069740
def_special sub_8069768
def_special InitRoamer
def_special nullsub_75
- def_special sub_80CA804
+ def_special Special_PlayerHasGrassPokemonInParty
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CAB78
+ def_special Special_IsStarterFirstStageInParty
def_special nullsub_75
- def_special sub_80CABD0
+ def_special Special_IsThereRoomInAnyBoxForMorePokemon
def_special nullsub_75
- def_special sub_80CB580
+ def_special Special_DrawElevatorCurrentFloorWindow
def_special nullsub_75
- def_special sub_80CAC08
+ def_special Special_CheckPartyPokerus
def_special sub_806E99C
- def_special sub_80CAC28
- def_special sub_807FA68
- def_special sub_807F9D8
- def_special sub_807FABC
+ def_special Special_ShakeScreen
+ def_special Special_StartGroudonKyogreBattle
+ def_special Special_StartLegendaryBattle
+ def_special Special_StartRegiBattle
def_special sub_8080398
def_special nullsub_75
def_special nullsub_75
@@ -331,13 +330,13 @@ gSpecials:: @ 815FD60
def_special DoFallWarp
def_special nullsub_75
def_special nullsub_75
- def_special sub_80E5E70
- def_special sub_807F998
+ def_special SetEReaderTrainerGfxId
+ def_special ScrSpecial_StartSouthernIslandBattle
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special sub_80CAD54
- def_special sub_80BFC14
+ def_special Special_GetSpeciesOfPartySlot_x8004
+ def_special IsSelectedMonEgg
def_special nullsub_75
def_special nullsub_75
def_special LoadPlayerBag
@@ -345,31 +344,31 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special HasAllKantoMons
- def_special sub_80CAD7C
+ def_special Special_BufferMonOTNameAndCompareToPlayerName
def_special nullsub_75
- def_special sub_80E759C
+ def_special Dummy_TryEnableBravoTrainerBattleTower
def_special GetNameOfEnigmaBerryInPlayerParty
def_special nullsub_75
def_special sub_810B82C
- def_special sub_807F904
- def_special sub_80CA630
- def_special sub_80CB7C4
- def_special sub_80CBC5C
+ def_special ScrSpecial_StartMarowakBattle
+ def_special Special_ForcePlayerOntoBike
+ def_special Special_ListMenu
+ def_special Special_ReturnToListMenu
def_special sub_80CADC4
def_special Special_SetVermilionTrashCans
def_special sub_805D1A8
- def_special sub_80CB0A8
+ def_special Special_SampleResortGorgeousMonAndReward
def_special Special_CheckAddCoins
def_special GetDaycarePokemonCount
- def_special sub_80CB63C
- def_special sub_80CBD80
+ def_special Special_CloseElevatorCurrentFloorWindow
+ def_special Special_ForcePlayerToStartSurfing
def_special ScrSpecial_GetStarter
- def_special sub_80CBDCC
+ def_special Special_SetSeenMon
def_special sub_810C444
def_special sub_80CC7B4
def_special ChangeBoxPokemonNickname
- def_special sub_80CC2BC
- def_special sub_80CC3CC
+ def_special Special_UpdateTrainerCardPhotoIcons
+ def_special Special_StickerLadyGetBragFlags
def_special sub_80CC524
def_special IsWirelessAdapterConnected
def_special sub_8115A24
@@ -389,7 +388,7 @@ gSpecials:: @ 815FD60
def_special GetNumLevelsGainedForRoute5DaycareMon
def_special TakePokemonFromRoute5Daycare
def_special ScrSpecial_SeaGallopFerry
- def_special sub_80CC48C
+ def_special Special_PlayerPartyContainsSpecies
def_special Special_SetSomeVariable
def_special HelpSystem_BackupSomeVariable
def_special HelpSystem_RestoreSomeVariable
@@ -398,7 +397,7 @@ gSpecials:: @ 815FD60
def_special sub_811999C
def_special sp182_move_string
def_special sub_811390C
- def_special sub_80CC4D4
+ def_special Special_GetMartClerkObjectId
def_special Special_BattleCardAction
def_special sub_8110AB4
def_special sub_8112364
@@ -415,7 +414,7 @@ gSpecials:: @ 815FD60
def_special IsNationalPokedexEnabled
def_special sub_815D9E8
def_special sub_814B504
- def_special sub_80CC8CC
+ def_special Special_ItemIsTM_GetMoveName
def_special Special_DaisyMassageServices
def_special HelpSystem_Disable
def_special HelpSystem_Enable
@@ -426,31 +425,31 @@ gSpecials:: @ 815FD60
def_special sub_815EEB0
def_special sub_815EF5C
def_special sub_815F070
- def_special sub_80CC974
+ def_special Special_PokemonLeagueLightingEffect
def_special sub_814EA7C
- def_special sub_80CCB94
- def_special sub_80CCCF8
+ def_special Special_CapeBrinkGetMoveToTeachLeadPokemon
+ def_special Special_HasLearnedAllMovesFromCapeBrinkTutor
def_special Special_Credits
def_special sub_8153810
def_special sub_809D764
def_special sub_809D8C0
def_special sub_8147500
def_special GetPlayerFacingDirection
- def_special sub_80CCDFC
- def_special sub_80CD008
+ def_special Special_DeoxysSound
+ def_special Special_SetDeoxysTriangleObjectPal
def_special sub_8147594
- def_special sub_80CD034
+ def_special Special_BadEggInParty
def_special sub_815D834
def_special HasAllMons
- def_special sub_80CD074
- def_special sub_80CD098
+ def_special Special_PlayerIsNotInTrainerTowerLobby
+ def_special Special_BrailleCursorToggle
def_special sub_811B15C
- def_special sub_80CD0F4
+ def_special Special_PlayerPartyContainsSpeciesWithPlayerID
def_special sub_809C4A8
def_special sub_81537C0
def_special sub_809C5FC
- def_special sub_80CB328
+ def_special Special_InitElevatorFloorSelectMenuPos
def_special Special_ComputeLoreleiDollCollection
- def_special sub_80CD1B4
+ def_special Special_LoopWingFlapSound
def_special CreateObedientEnemyMon
gSpecialsEnd::
diff --git a/data/strings.s b/data/strings.s
index 1d086f4c8..546f40899 100644
--- a/data/strings.s
+++ b/data/strings.s
@@ -1394,7 +1394,7 @@ gUnknown_8417920:: @ 0x8417920
gUnknown_8417926:: @ 0x8417926
.string "OK$"
-gUnknown_8417929:: @ 0x8417929
+gOtherText_Quit:: @ 0x8417929
.string "QUIT$"
gUnknown_841792E:: @ 0x841792E
diff --git a/include/battle_tower.h b/include/battle_tower.h
index 78e3f8e43..4c3c23e48 100644
--- a/include/battle_tower.h
+++ b/include/battle_tower.h
@@ -4,9 +4,10 @@
#include "global.h"
u16 sub_8164FCC(u8, u8);
-void sub_80E7524(u32 *);
+void sub_80E7524(struct BattleTowerEReaderTrainer *);
void ValidateEReaderTrainer(void);
u8 GetBattleTowerTrainerFrontSpriteId(void);
u8 GetEreaderTrainerFrontSpriteId(void);
+void CopyEReaderTrainerName5(u8 *dest);
#endif //GUARD_BATTLE_TOWER_H
diff --git a/include/constants/field_effects.h b/include/constants/field_effects.h
index 62ab5af0c..8a5e11fcf 100644
--- a/include/constants/field_effects.h
+++ b/include/constants/field_effects.h
@@ -67,6 +67,7 @@
#define FLDEFF_USE_TELEPORT 63
#define FLDEFF_UNK_40 64
#define FLDEFF_UNK_41 65 // TODO: related to vs_seeker
+#define FLDEFF_UNK_43 67 // TODO: related to deoxys
#define FLDEFF_UNK_45 69 // TODO: related to fame checker photos
#endif // GUARD_CONSTANTS_FIELD_EFFECTS_H
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 994221afd..082e12f87 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -748,10 +748,10 @@
#define FLAG_NO_ROOM_FOR_TOGEPI_EGG 0x2DB
#define FLAG_RECOVERED_SAPPHIRE 0x2DC
#define FLAG_GOT_RUBY 0x2DD
-#define FLAG_0x2DE 0x2DE
-#define FLAG_0x2DF 0x2DF
-#define FLAG_0x2E0 0x2E0
-#define FLAG_LEARNED_MOVE_AT_CAPE_BRINK 0x2E1
+#define FLAG_TUTOR_FRENZY_PLANT 0x2DE
+#define FLAG_TUTOR_BLAST_BURN 0x2DF
+#define FLAG_TUTOR_HYDRO_CANNON 0x2E0
+#define FLAG_LEARNED_ALL_MOVES_AT_CAPE_BRINK 0x2E1
#define FLAG_GOT_NUGGET_FROM_DUNSPARCE_TUNNEL 0x2E2
#define FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE 0x2E3
#define FLAG_FOUGHT_DEOXYS 0x2E4
@@ -1325,6 +1325,7 @@
#define FLAG_SYS_STRENGTH_ACTIVE (SYS_FLAGS + 0x5)
#define FLAG_SYS_FLASH_ACTIVE (SYS_FLAGS + 0x6)
#define FLAG_SYS_SPECIAL_WILD_BATTLE (SYS_FLAGS + 0x7)
+#define FLAG_0x808 (SYS_FLAGS + 0x8)
#define PERMA_SYS_FLAGS_START 0x820
#define FLAG_BADGE01_GET (SYS_FLAGS + 0x20)
@@ -1422,7 +1423,7 @@
#define FLAG_WORLD_MAP_SIX_ISLAND_ALTERING_CAVE (SYS_FLAGS + 0xBE)
#define FLAG_WORLD_MAP_SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER (SYS_FLAGS + 0xBF)
#define FLAG_WORLD_MAP_THREE_ISLAND_DUNSPARCE_TUNNEL (SYS_FLAGS + 0xC0)
-#define FLAG_WORLD_MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY (SYS_FLAGS + 0xC1)
+#define FLAG_WORLD_MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY (SYS_FLAGS + 0xC1)
#define FLAG_WORLD_MAP_BIRTH_ISLAND_EXTERIOR (SYS_FLAGS + 0xC2)
#define FLAG_0x8D5 (SYS_FLAGS + 0xD5)
diff --git a/include/constants/layouts.h b/include/constants/layouts.h
index 3d17cd441..24cdcec13 100644
--- a/include/constants/layouts.h
+++ b/include/constants/layouts.h
@@ -323,7 +323,7 @@
#define LAYOUT_SEVEN_ISLAND_TANOBY_RUINS_DILFORD_CHAMBER 338
#define LAYOUT_SEVEN_ISLAND_TANOBY_RUINS_SCUFIB_CHAMBER 339
#define LAYOUT_SIX_ISLAND_ALTERING_CAVE 340
-#define LAYOUT_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY 341
+#define LAYOUT_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY 341
#define LAYOUT_BIRTH_ISLAND_EXTERIOR 342
#define LAYOUT_NAVEL_ROCK_EXTERIOR 343
#define LAYOUT_NAVEL_ROCK_1F 344
diff --git a/include/constants/map_groups.h b/include/constants/map_groups.h
index 44fa03eda..13862d6c7 100644
--- a/include/constants/map_groups.h
+++ b/include/constants/map_groups.h
@@ -169,7 +169,7 @@
#define MAP_SEVEN_ISLAND_TANOBY_RUINS_RIXY_CHAMBER (32 | (2 << 8))
#define MAP_SEVEN_ISLAND_TANOBY_RUINS_VIAPOIS_CHAMBER (33 | (2 << 8))
#define MAP_THREE_ISLAND_DUNSPARCE_TUNNEL (34 | (2 << 8))
-#define MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY (35 | (2 << 8))
+#define MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY (35 | (2 << 8))
#define MAP_NAVEL_ROCK_1F (36 | (2 << 8))
#define MAP_NAVEL_ROCK_SUMMIT (37 | (2 << 8))
#define MAP_NAVEL_ROCK_BASE (38 | (2 << 8))
diff --git a/include/constants/vars.h b/include/constants/vars.h
index 59dbf8ebb..3f171ede8 100644
--- a/include/constants/vars.h
+++ b/include/constants/vars.h
@@ -78,50 +78,50 @@
// with the species sanity bit set.
// Bits 12-15 are the same for the player's party.
// Used by Quest Log.
-#define VAR_QUEST_LOG_MON_COUNTS 0x4027
-#define VAR_MENEWS_JISAN_STEP_COUNTER 0x4028
-#define VAR_0x4029 0x4029
-#define VAR_HAPPINESS_STEP_COUNTER 0x402A
-#define VAR_POISON_STEP_COUNTER 0x402B
-#define VAR_RESET_RTC_ENABLE 0x402C
-#define VAR_0x402D 0x402D
-#define VAR_0x402E 0x402E
+#define VAR_QUEST_LOG_MON_COUNTS 0x4027
+#define VAR_MENEWS_JISAN_STEP_COUNTER 0x4028
+#define VAR_0x4029 0x4029
+#define VAR_HAPPINESS_STEP_COUNTER 0x402A
+#define VAR_POISON_STEP_COUNTER 0x402B
+#define VAR_RESET_RTC_ENABLE 0x402C
+#define VAR_0x402D 0x402D
+#define VAR_0x402E 0x402E
-#define VAR_0x402F 0x402F
+#define VAR_0x402F 0x402F
-#define VAR_0x4030 0x4030
-#define VAR_STARTER_MON 0x4031
-#define VAR_0x4032 0x4032
-#define VAR_ENIGMA_BERRY_AVAILABLE 0x4033
+#define VAR_0x4030 0x4030
+#define VAR_STARTER_MON 0x4031
+#define VAR_0x4032 0x4032
+#define VAR_ENIGMA_BERRY_AVAILABLE 0x4033
-#define VAR_0x4034 0x4034
-#define VAR_0x4035 0x4035
-#define VAR_STORAGE_UNKNOWN 0x4036
-#define VAR_0x4037 0x4037
-#define VAR_0x4038 0x4038
-#define VAR_0x4039 0x4039
-#define VAR_ELEVATOR_FLOOR 0x403A
-#define VAR_0x403B 0x403B
-#define VAR_0x403C 0x403C
-#define VAR_0x403D 0x403D
-#define VAR_DEOXYS_INTERACTION_NUM 0x403E
-#define VAR_0x403F 0x403F
-#define VAR_DAYS 0x4040
-#define VAR_0x4041 0x4041
-#define VAR_0x4042 0x4042
-#define VAR_DEPT_STORE_FLOOR 0x4043
-#define VAR_0x4044 0x4044
-#define VAR_POKELOT_PRIZE 0x4045
-#define VAR_NATIONAL_DEX 0x4046
-#define VAR_SEEDOT_SIZE_RECORD 0x4047
-#define VAR_ASH_GATHER_COUNT 0x4048
-#define VAR_HOF_BRAG_STATE 0x4049
-#define VAR_EGG_BRAG_STATE 0x404A
-#define VAR_LINK_WIN_BRAG_STATE 0x404B
-#define VAR_POKELOT_RND2 0x404C
-#define VAR_0x404D 0x404D
-#define VAR_0x404E 0x404E
-#define VAR_LOTAD_SIZE_RECORD 0x404F
+#define VAR_0x4034 0x4034
+#define VAR_RESORT_GOREGEOUS_STEP_COUNTER 0x4035
+#define VAR_RESORT_GORGEOUS_REQUESTED_MON 0x4036
+#define VAR_0x4037 0x4037
+#define VAR_0x4038 0x4038
+#define VAR_0x4039 0x4039
+#define VAR_ELEVATOR_FLOOR 0x403A
+#define VAR_RESORT_GORGEOUS_REWARD 0x403B
+#define VAR_0x403C 0x403C
+#define VAR_HERACROSS_SIZE_RECORD 0x403D
+#define VAR_DEOXYS_INTERACTION_NUM 0x403E
+#define VAR_0x403F 0x403F
+#define VAR_MAGIKARP_SIZE_RECORD 0x4040
+#define VAR_0x4041 0x4041
+#define VAR_TRAINER_CARD_MON_ICON_TINT_IDX 0x4042
+#define VAR_TRAINER_CARD_MON_ICON_1 0x4043
+#define VAR_TRAINER_CARD_MON_ICON_2 0x4044
+#define VAR_TRAINER_CARD_MON_ICON_3 0x4045
+#define VAR_TRAINER_CARD_MON_ICON_4 0x4046
+#define VAR_TRAINER_CARD_MON_ICON_5 0x4047
+#define VAR_TRAINER_CARD_MON_ICON_6 0x4048
+#define VAR_HOF_BRAG_STATE 0x4049
+#define VAR_EGG_BRAG_STATE 0x404A
+#define VAR_LINK_WIN_BRAG_STATE 0x404B
+#define VAR_POKELOT_RND2 0x404C
+#define VAR_0x404D 0x404D
+#define VAR_0x404E 0x404E
+#define VAR_LOTAD_SIZE_RECORD 0x404F
// Map Scene
#define VAR_MAP_SCENE_PALLET_TOWN_OAK 0x4050
diff --git a/include/field_camera.h b/include/field_camera.h
index d67523c8f..d2165780a 100644
--- a/include/field_camera.h
+++ b/include/field_camera.h
@@ -27,5 +27,8 @@ extern u16 gUnknown_03005DE8;
void DrawWholeMapView(void);
void CurrentMapDrawMetatileAt(int x, int y);
void sub_805A658(s16 *x, s16 *y);
+void SetCameraPanningCallback(void (*cb)(void));
+void SetCameraPanning(s16 x, s16 y);
+void InstallCameraPanAheadCallback(void);
#endif //GUARD_FIELD_CAMERA_H
diff --git a/include/field_effect.h b/include/field_effect.h
index fa66929ea..70398313b 100644
--- a/include/field_effect.h
+++ b/include/field_effect.h
@@ -20,5 +20,6 @@ void sub_8084454(void);
void sub_8084784(u8 a0, u8 a1);
void sub_8084F2C(u8 a0);
void sub_80853CC(u8 a0);
+void sub_8083598(u8 a0);
#endif //GUARD_FIELD_EFFECTS_H
diff --git a/include/field_map_obj.h b/include/field_map_obj.h
index baed87ac6..40d7ed933 100644
--- a/include/field_map_obj.h
+++ b/include/field_map_obj.h
@@ -94,6 +94,7 @@ void npc_paltag_set_load(u8 mode);
bool8 FieldObjectIsMovementOverridden(struct MapObject *mapObject);
u8 FieldObjectCheckHeldMovementStatus(struct MapObject *mapObject);
u8 sub_8063F84(u8 direction);
+void CameraObjectSetFollowedObjectId(u8 spriteId);
// Exported data declarations
diff --git a/include/field_specials.h b/include/field_specials.h
index 2abe168e0..c435bdaee 100644
--- a/include/field_specials.h
+++ b/include/field_specials.h
@@ -12,17 +12,18 @@ enum HiddenItemAttr
};
u8 GetLeadMonIndex(void);
-u8 CountDigits(u16 number);
+s32 CountDigits(s32 number);
void TV_PrintIntToStringVar(u8, int);
u16 ScrSpecial_GetStarter(void);
-void sub_80CCB68(void);
+void StopPokemonLeagueLightingEffectTask(void);
void nullsub_60(void);
void nullsub_61(void);
u8 ContextNpcGetTextColor(void);
void set_unknown_box_id(u8);
u16 get_unknown_box_id(void);
bool8 sub_80CC7B4(void);
-u16 GetHiddenItemAttr(struct HiddenItemStruct hiddenItem, u8 attr);
+u16 GetHiddenItemAttr(u32 hiddenItem, u8 attr);
u8 GetUnlockedSeviiAreas(void);
+u32 GetPlayerTrainerId(void);
#endif // GUARD_FIELD_SPECIALS_H
diff --git a/include/fieldmap.h b/include/fieldmap.h
index dde05b7ed..c3709c616 100644
--- a/include/fieldmap.h
+++ b/include/fieldmap.h
@@ -25,6 +25,7 @@ bool32 CanCameraMoveInDirection(s32);
u32 GetBehaviorByMetatileIdAndMapData(struct MapData *mapData, u16 metatile, u8 attr);
const struct MapHeader * mapconnection_get_mapheader(struct MapConnection * connection);
struct MapConnection * GetMapConnectionAtPos(s16 x, s16 y);
+void sub_8059948(u8 a0, u8 a1);
void save_serialize_map(void);
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index bf142d265..a4358081d 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -134,7 +134,8 @@ union BgUnion
u8 *script;
// hidden item type probably
- struct HiddenItemStruct hiddenItem;
+ struct HiddenItemStruct hiddenItemStr;
+ u32 hiddenItem;
// secret base type
u32 secretBaseId;
diff --git a/include/global.h b/include/global.h
index 57035ce30..5c4501be3 100644
--- a/include/global.h
+++ b/include/global.h
@@ -194,6 +194,11 @@ struct LinkBattleRecords
u8 languages[LINK_B_RECORDS_COUNT];
};
+#include "constants/game_stat.h"
+#include "global.fieldmap.h"
+#include "global.berry.h"
+#include "pokemon.h"
+
struct UnknownSaveBlock2Struct
{
u8 field_0;
@@ -214,6 +219,20 @@ struct UnknownSaveBlock2Struct
u8 field_EB;
}; // sizeof = 0xEC
+struct BattleTowerEReaderTrainer
+{
+ /*0x4A0 0x3F0 0x00*/ u8 unk0;
+ /*0x4A1 0x3F1 0x01*/ u8 facilityClass;
+ /*0x4A2 0x3F2 0x02*/ u16 winStreak;
+ /*0x4A4 0x3F4 0x04*/ u8 name[8];
+ /*0x4AC 0x3FC 0x0C*/ u8 trainerId[4];
+ /*0x4B0 0x400 0x10*/ u16 greeting[6];
+ /*0x4BC 0x40C 0x1C*/ u16 farewellPlayerLost[6];
+ /*0x4C8 0x418 0x28*/ u16 farewellPlayerWon[6];
+ /*0x4D4 0x424 0x34*/ struct BattleTowerPokemon party[3];
+ /*0x558 0x4A8 0xB8*/ u32 checksum;
+};
+
struct UnkSaveBlock2Substruct_55C
{
/* 0x000:0x55C */ u8 unk_00_0:1;
@@ -232,7 +251,7 @@ struct UnkSaveBlock2Substruct_55C
struct UnkSaveBlock2Substruct_B0
{
/* 0x000:0x0B0 */ u8 field_0[0x3F0];
- /* 0x3F0:0x4A0 */ u32 field_3F0[0x2F];
+ /* 0x3F0:0x4A0 */ struct BattleTowerEReaderTrainer field_3F0;
/* 0x4AC:0x55C */ struct UnkSaveBlock2Substruct_55C field_4AC;
/* 0x4C4:0x574 */ u8 field_4C4[0x324];
}; // size: 0x7E8
@@ -261,7 +280,6 @@ struct SaveBlock2
/*0x0A8*/ u32 field_A8;
/*0x0AC*/ u8 field_AC;
/*0x0AD*/ u8 field_AD;
- /*0x0AE*/ u8 filler_AE[0x2];
/*0x0B0*/ struct UnkSaveBlock2Substruct_B0 unk_B0;
/*0x898*/ u16 mapView[0x100];
/*0xA98*/ struct LinkBattleRecords linkBattleRecords;
@@ -304,11 +322,6 @@ struct SecretBaseRecord
/*0x1AD0*/ struct SecretBaseParty party;
};
-#include "constants/game_stat.h"
-#include "global.fieldmap.h"
-#include "global.berry.h"
-#include "pokemon.h"
-
struct WarpData
{
s8 mapGroup;
diff --git a/include/mevent.h b/include/mevent.h
index 08ee8c038..98d184f60 100644
--- a/include/mevent.h
+++ b/include/mevent.h
@@ -67,5 +67,6 @@ bool32 WonderNews_Test_Unk_02(void);
bool32 WonderCard_Test_Unk_08_6(void);
u32 MENews_GetInput(u16 input);
void sub_8143D24(void);
+u16 sub_81445C0(u32 command);
#endif //GUARD_MEVENT_H
diff --git a/include/overworld.h b/include/overworld.h
index 65e3fe723..a5e975d1d 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -35,6 +35,7 @@ extern struct UCoords32 gDirectionToVectors[];
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4];
extern MainCallback gFieldCallback;
+extern struct WarpData gUnknown_2031DB4;
extern struct WarpData gUnknown_2031DBC;
extern u8 gUnknown_2031DE0;
diff --git a/include/pokemon.h b/include/pokemon.h
index c5ee4eda5..77c8191f3 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -346,7 +346,7 @@ struct BattleTowerPokemon
u32 gap:1;
u32 abilityNum:1;
/*0x1C*/ u32 personality;
- /*0x20*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
+ /*0x20*/ u8 nickname[11];
/*0x2B*/ u8 friendship;
};
diff --git a/include/script_menu.h b/include/script_menu.h
index c1e32beae..d3d04c65d 100644
--- a/include/script_menu.h
+++ b/include/script_menu.h
@@ -15,5 +15,6 @@ void ScriptMenu_DisplayPCStartupPrompt(void);
bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void);
void sub_809D6D4(void);
+void sub_809D424(void);
#endif //GUARD_SCRIPT_MENU_H
diff --git a/include/strings.h b/include/strings.h
index 8f3da98cf..ee7536d9b 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -475,4 +475,50 @@ extern const u8 gSaveStatName_Time[];
// mail
extern const u8 gText_From[];
+// field_specials
+extern const u8 gUnknown_8417FBB[];
+extern const u8 gUnknown_8417FC3[];
+extern const u8 gUnknown_8417FD0[];
+extern const u8 gUnknown_8417FCC[];
+extern const u8 gUnknown_8418075[];
+extern const u8 gUnknown_8418069[];
+extern const u8 gUnknown_8418065[];
+extern const u8 gUnknown_8418061[];
+extern const u8 gUnknown_841805D[];
+extern const u8 gUnknown_841803A[];
+extern const u8 gUnknown_841803D[];
+extern const u8 gUnknown_8418040[];
+extern const u8 gUnknown_8418043[];
+extern const u8 gUnknown_8418046[];
+extern const u8 gUnknown_8418049[];
+extern const u8 gUnknown_841804C[];
+extern const u8 gUnknown_841804F[];
+extern const u8 gUnknown_8418052[];
+extern const u8 gUnknown_8418055[];
+extern const u8 gUnknown_8418059[];
+extern const u8 gUnknown_841806D[];
+extern const u8 gUnknown_8417FD9[];
+extern const u8 gUnknown_8417FE6[];
+extern const u8 gUnknown_8417FF3[];
+extern const u8 gUnknown_8418000[];
+extern const u8 gUnknown_841800D[];
+extern const u8 gUnknown_8418017[];
+extern const u8 gUnknown_8418022[];
+extern const u8 gUnknown_841802F[];
+extern const u8 gUnknown_841807D[];
+extern const u8 gUnknown_841808E[];
+extern const u8 gUnknown_841809C[];
+extern const u8 gOtherText_Quit[];
+extern const u8 gUnknown_84180A7[];
+extern const u8 gUnknown_84180BC[];
+extern const u8 gUnknown_84180D0[];
+extern const u8 gUnknown_84180E4[];
+extern const u8 gUnknown_84180FA[];
+extern const u8 gUnknown_841810D[];
+extern const u8 gUnknown_841811D[];
+extern const u8 gUnknown_841812F[];
+extern const u8 gUnknown_8418142[];
+extern const u8 gUnknown_8418152[];
+extern const u8 gUnknown_8418163[];
+
#endif //GUARD_STRINGS_H
diff --git a/ld_script.txt b/ld_script.txt
index 341b1b103..6f0b839cb 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -187,7 +187,7 @@ SECTIONS {
asm/post_battle_event_funcs.o(.text);
src/prof_pc.o(.text);
src/hof_pc.o(.text);
- asm/field_specials.o(.text);
+ src/field_specials.o(.text);
src/battle_records.o(.text);
asm/evolution_scene.o(.text);
src/coins.o(.text);
@@ -445,6 +445,7 @@ SECTIONS {
data/data_835B488.o(.rodata.83EEC98);
src/battle_ai_script_commands.o(.rodata);
data/data_83F5738.o(.rodata);
+ src/field_specials.o(.rodata);
src/battle_records.o(.rodata);
data/data_83F5738.o(.rodata.83F6C90);
src/battle_transition.o(.rodata);
diff --git a/src/daycare.c b/src/daycare.c
index fede86156..ca9eb14f7 100644
--- a/src/daycare.c
+++ b/src/daycare.c
@@ -1739,7 +1739,7 @@ static bool8 sub_8046E34(struct DayCare *daycare, u8 daycareId)
return FALSE;
}
-bool8 sub_8046EAC(void)
+bool8 DaycareMonReceivedMail(void)
{
return sub_8046E34(&gSaveBlock1Ptr->daycare, gSpecialVar_0x8004);
}
diff --git a/src/field_fadetransition.c b/src/field_fadetransition.c
index 6a539b60e..de9f09ff0 100644
--- a/src/field_fadetransition.c
+++ b/src/field_fadetransition.c
@@ -639,7 +639,7 @@ static void sub_807E5EC(u8 taskId)
}
}
-void sub_807E654(void)
+void DoCableClubWarp(void)
{
ScriptContext2_Enable();
sub_8055F88();
diff --git a/src/field_specials.c b/src/field_specials.c
new file mode 100644
index 000000000..867df4b94
--- /dev/null
+++ b/src/field_specials.c
@@ -0,0 +1,2506 @@
+#include "global.h"
+#include "malloc.h"
+#include "palette.h"
+#include "quest_log.h"
+#include "list_menu.h"
+#include "diploma.h"
+#include "script.h"
+#include "field_player_avatar.h"
+#include "overworld.h"
+#include "field_message_box.h"
+#include "event_data.h"
+#include "string_util.h"
+#include "strings.h"
+#include "battle.h"
+#include "fieldmap.h"
+#include "field_specials.h"
+#include "region_map.h"
+#include "task.h"
+#include "battle_tower.h"
+#include "field_camera.h"
+#include "field_effect.h"
+#include "field_map_obj.h"
+#include "menu_indicators.h"
+#include "random.h"
+#include "mail_data.h"
+#include "help_system.h"
+#include "sound.h"
+#include "text.h"
+#include "pokemon_storage_system.h"
+#include "script_menu.h"
+#include "data.h"
+#include "pokedex.h"
+#include "window.h"
+#include "text_window.h"
+#include "menu.h"
+#include "mevent.h"
+#include "naming_screen.h"
+#include "party_menu.h"
+#include "dynamic_placeholder_text_util.h"
+#include "new_menu_helpers.h"
+#include "constants/songs.h"
+#include "constants/species.h"
+#include "constants/items.h"
+#include "constants/map_objects.h"
+#include "constants/maps.h"
+#include "constants/region_map.h"
+#include "constants/moves.h"
+
+static EWRAM_DATA u8 sElevatorCurrentFloorWindowId = 0;
+static EWRAM_DATA u16 sElevatorScroll = 0;
+static EWRAM_DATA u16 sElevatorCursorPos = 0;
+static EWRAM_DATA struct ListMenuItem * sListMenuItems = NULL;
+static EWRAM_DATA u16 sListMenuLastScrollPosition = 0;
+static EWRAM_DATA u8 sUnknownBoxId = 0;
+static EWRAM_DATA u8 sBrailleTextCursorSpriteID = 0;
+
+struct ListMenuTemplate sFieldSpecialsListMenuTemplate;
+u16 sFieldSpecialsListMenuScrollBuffer;
+
+static void Task_AnimatePcTurnOn(u8 taskId);
+static void PcTurnOnUpdateMetatileId(bool16 flag);
+static void Task_ShakeScreen(u8 taskId);
+static void Task_EndScreenShake(u8 taskId);
+static u16 SampleResortGorgeousMon(void);
+static u16 SampleResortGorgeousReward(void);
+static void Task_ElevatorShake(u8 taskId);
+static void AnimateElevatorWindowView(u16 nfloors, bool8 direction);
+static void Task_AnimateElevatorWindowView(u8 taskId);
+static void Task_CreateScriptListMenu(u8 taskId);
+static void CreateScriptListMenu(void);
+static void ScriptListMenuMoveCursorFunction(s32 nothing, bool8 is, struct ListMenu * used);
+static void Task_ListMenuHandleInput(u8 taskId);
+static void Task_DestroyListMenu(u8 taskId);
+static void Task_SuspendListMenu(u8 taskId);
+static void Task_RedrawScrollArrowsAndWaitInput(u8 taskId);
+static void Task_CreateMenuRemoveScrollIndicatorArrowPair(u8 taskId);
+static void Task_ListMenuRemoveScrollIndicatorArrowPair(u8 taskId);
+static u16 GetStarterPokemon(u16 starterIdx);
+static void ChangeBoxPokemonNickname_CB(void);
+static void ChangePokemonNickname_CB(void);
+static void Task_RunPokemonLeagueLightingEffect(u8 taskId);
+static void Task_CancelPokemonLeagueLightingEffect(u8 taskId);
+static void task_deoxys_sound(u8 taskId);
+static void MoveDeoxysObject(u8 num);
+static void Task_WaitDeoxysFieldEffect(u8 taskId);
+static void Task_WingFlapSound(u8 taskId);
+
+static u8 *const sStringVarPtrs[] = {
+ gStringVar1,
+ gStringVar2,
+ gStringVar3
+};
+
+void Special_ShowDiploma(void)
+{
+ sub_8112364();
+ SetMainCallback2(CB2_ShowDiploma);
+ ScriptContext2_Enable();
+}
+
+void Special_ForcePlayerOntoBike(void)
+{
+ if (gPlayerAvatar.flags & 1)
+ SetPlayerAvatarTransitionFlags(2);
+ Overworld_SetSavedMusic(MUS_CYCLING);
+ Overworld_ChangeMusicTo(MUS_CYCLING);
+}
+
+void nullsub_74(void)
+{
+
+}
+
+u8 Special_GetPlayerAvatarBike(void)
+{
+ if (TestPlayerAvatarFlags(4))
+ return 1;
+ else if (TestPlayerAvatarFlags(2))
+ return 2;
+ else
+ return 0;
+}
+
+void Special_ShowStringVar4AsFieldMessage(void)
+{
+ ShowFieldMessage(gStringVar4);
+}
+
+void Special_GetPlayerXY(void)
+{
+ gSpecialVar_0x8004 = gSaveBlock1Ptr->pos.x;
+ gSpecialVar_0x8005 = gSaveBlock1Ptr->pos.y;
+}
+
+u8 Special_GetPlayerTrainerIdOnesDigit(void)
+{
+ u16 playerId = (gSaveBlock2Ptr->playerTrainerId[1] << 8) | gSaveBlock2Ptr->playerTrainerId[0];
+ return playerId % 10;
+}
+
+void Special_BufferBigGuyOrBigGirlString(void)
+{
+ if (gSaveBlock2Ptr->playerGender == MALE)
+ StringCopy(gStringVar1, gUnknown_8417FBB);
+ else
+ StringCopy(gStringVar1, gUnknown_8417FC3);
+}
+
+void Special_BufferSonOrDaughterString(void)
+{
+ if (gSaveBlock2Ptr->playerGender == MALE)
+ StringCopy(gStringVar1, gUnknown_8417FD0);
+ else
+ StringCopy(gStringVar1, gUnknown_8417FCC);
+}
+
+u8 Special_GetBattleOutcome(void)
+{
+ return gBattleOutcome;
+}
+
+void Special_SetHiddenItemFlag(void)
+{
+ FlagSet(gSpecialVar_0x8004);
+}
+
+u8 Special_GetLeadMonFriendship(void)
+{
+ struct Pokemon * pokemon = &gPlayerParty[GetLeadMonIndex()];
+ if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) == 255)
+ return 6;
+ else if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 200)
+ return 5;
+ else if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 150)
+ return 4;
+ else if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 100)
+ return 3;
+ else if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) >= 50)
+ return 2;
+ else if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) > 0)
+ return 1;
+ else
+ return 0;
+}
+
+void Special_TownMap(void)
+{
+ sub_8112364();
+ sub_80BFF50(1, CB2_ReturnToFieldContinueScriptPlayMapMusic);
+}
+
+bool8 Special_PlayerHasGrassPokemonInParty(void)
+{
+ u8 i;
+ struct Pokemon * pokemon;
+ u16 species;
+
+ for (i = 0; i < PARTY_SIZE; i++)
+ {
+ pokemon = &gPlayerParty[i];
+ if (GetMonData(pokemon, MON_DATA_SANITY_HAS_SPECIES)
+ && !GetMonData(pokemon, MON_DATA_IS_EGG)
+ )
+ {
+ species = GetMonData(pokemon, MON_DATA_SPECIES);
+ if (gBaseStats[species].type1 == TYPE_GRASS || gBaseStats[species].type2 == TYPE_GRASS)
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+void Special_AnimatePcTurnOn(void)
+{
+ u8 taskId;
+
+ if (FuncIsActiveTask(Task_AnimatePcTurnOn) != TRUE)
+ {
+ taskId = CreateTask(Task_AnimatePcTurnOn, 8);
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[1] = 0;
+ }
+}
+
+static void Task_AnimatePcTurnOn(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (data[1] == 6)
+ {
+ PcTurnOnUpdateMetatileId(data[0] & 1);
+ DrawWholeMapView();
+ data[1] = 0;
+ data[0]++;
+ if (data[0] == 5)
+ DestroyTask(taskId);
+ }
+ data[1]++;
+}
+
+static void PcTurnOnUpdateMetatileId(bool16 a0)
+{
+ u16 metatileId = 0;
+ s8 deltaX = 0;
+ s8 deltaY = 0;
+ u8 direction = GetPlayerFacingDirection();
+
+ switch (direction)
+ {
+ case DIR_NORTH:
+ deltaX = 0;
+ deltaY = -1;
+ break;
+ case DIR_WEST:
+ deltaX = -1;
+ deltaY = -1;
+ break;
+ case DIR_EAST:
+ deltaX = 1;
+ deltaY = -1;
+ break;
+ }
+ if (a0)
+ {
+ if (gSpecialVar_0x8004 == 0)
+ metatileId = 0x62;
+ else if (gSpecialVar_0x8004 == 1)
+ metatileId = 0x28F;
+ else if (gSpecialVar_0x8004 == 2)
+ metatileId = 0x28F;
+ }
+ else
+ {
+ if (gSpecialVar_0x8004 == 0)
+ metatileId = 0x63;
+ else if (gSpecialVar_0x8004 == 1)
+ metatileId = 0x28A;
+ else if (gSpecialVar_0x8004 == 2)
+ metatileId = 0x28A;
+ }
+ MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + deltaX + 7, gSaveBlock1Ptr->pos.y + deltaY + 7, metatileId | 0xC00);
+}
+
+void Special_AnimatePcTurnOff()
+{
+ u16 metatileId = 0;
+ s8 deltaX = 0;
+ s8 deltaY = 0;
+ u8 direction = GetPlayerFacingDirection();
+
+ switch (direction)
+ {
+ case DIR_NORTH:
+ deltaX = 0;
+ deltaY = -1;
+ break;
+ case DIR_WEST:
+ deltaX = -1;
+ deltaY = -1;
+ break;
+ case DIR_EAST:
+ deltaX = 1;
+ deltaY = -1;
+ break;
+ }
+ if (gSpecialVar_0x8004 == 0)
+ metatileId = 0x62;
+ else if (gSpecialVar_0x8004 == 1)
+ metatileId = 0x28F;
+ else if (gSpecialVar_0x8004 == 2)
+ metatileId = 0x28F;
+ MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + deltaX + 7, gSaveBlock1Ptr->pos.y + deltaY + 7, metatileId | 0xC00);
+ DrawWholeMapView();
+}
+
+void SpawnCameraObject(void)
+{
+ u8 mapObjectId = SpawnSpecialFieldObjectParameterized(MAP_OBJ_GFX_YOUNGSTER, 8, 127, gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7, 3);
+ gMapObjects[mapObjectId].mapobj_bit_13 = TRUE;
+ CameraObjectSetFollowedObjectId(gMapObjects[mapObjectId].spriteId);
+}
+
+void RemoveCameraObject(void)
+{
+ CameraObjectSetFollowedObjectId(GetPlayerAvatarObjectId());
+ RemoveFieldObjectByLocalIdAndMap(127, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
+}
+
+void Special_BufferEReaderTrainerName5(void)
+{
+ CopyEReaderTrainerName5(gStringVar1);
+}
+
+static const u8 sUnused_83F5B04[] = {
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 12,
+ 2,
+ 4,
+ 5,
+ 1,
+ 8,
+ 7,
+ 11,
+ 3,
+ 10,
+ 9,
+ 6
+};
+
+static const u8 sSlotMachineIndices[] = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 1,
+ 2,
+ 2,
+ 2,
+ 3,
+ 3,
+ 3,
+ 4,
+ 4,
+ 5
+};
+
+u8 Special_GetRandomSlotMachine(void)
+{
+ u16 rval = Random() % NELEMS(sSlotMachineIndices);
+ return sSlotMachineIndices[rval];
+}
+
+bool8 LeadMonHasEffortRibbon(void)
+{
+ u8 leadMonIdx = GetLeadMonIndex();
+ return GetMonData(&gPlayerParty[leadMonIdx], MON_DATA_EFFORT_RIBBON, NULL);
+}
+
+void GiveLeadMonEffortRibbon(void)
+{
+ u8 leadMonIdx;
+ bool8 param;
+ IncrementGameStat(GAME_STAT_RECEIVED_RIBBONS);
+ FlagSet(FLAG_SYS_RIBBON_GET);
+ param = TRUE;
+ leadMonIdx = GetLeadMonIndex();
+ SetMonData(&gPlayerParty[leadMonIdx], MON_DATA_EFFORT_RIBBON, &param);
+}
+
+bool8 ScrSpecial_AreLeadMonEVsMaxedOut(void)
+{
+ u8 leadMonIndex = GetLeadMonIndex();
+ if (GetMonEVCount(&gPlayerParty[leadMonIndex]) >= 510)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 Special_IsStarterFirstStageInParty(void)
+{
+ u16 species = GetStarterPokemon(VarGet(VAR_STARTER_MON));
+ u8 partyCount = CalculatePlayerPartyCount();
+ u8 i;
+ for (i = 0; i < partyCount; i++)
+ {
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) == species)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+bool8 Special_IsThereRoomInAnyBoxForMorePokemon(void)
+{
+ u16 i;
+ u16 j;
+ for (i = 0; i < TOTAL_BOXES_COUNT; i++)
+ {
+ for (j = 0; j < IN_BOX_COUNT; j++)
+ {
+ if (GetBoxMonDataFromAnyBox(i, j, MON_DATA_SPECIES) == SPECIES_NONE)
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+bool8 Special_CheckPartyPokerus(void)
+{
+ if (!CheckPartyPokerus(gPlayerParty, 0x3F))
+ return FALSE;
+ else
+ return TRUE;
+}
+
+#define tXtrans data[0]
+#define tTimer data[1]
+#define tNremain data[2]
+#define tDuration data[3]
+#define tYtrans data[4]
+
+void Special_ShakeScreen(void)
+{
+ /*
+ * 0x8004 = x translation
+ * 0x8005 = y translation
+ * 0x8006 = num interations
+ * 0x8007 = duration of an iteration
+ */
+ u8 taskId = CreateTask(Task_ShakeScreen, 9);
+ gTasks[taskId].tXtrans = gSpecialVar_0x8005;
+ gTasks[taskId].tTimer = 0;
+ gTasks[taskId].tNremain = gSpecialVar_0x8006;
+ gTasks[taskId].tDuration = gSpecialVar_0x8007;
+ gTasks[taskId].tYtrans = gSpecialVar_0x8004;
+ SetCameraPanningCallback(NULL);
+ PlaySE(SE_W070);
+}
+
+static void Task_ShakeScreen(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ tTimer++;
+ if (tTimer % tDuration == 0)
+ {
+ tTimer = 0;
+ tNremain--;
+ tXtrans = -tXtrans;
+ tYtrans = -tYtrans;
+ SetCameraPanning(tXtrans, tYtrans);
+ if (tNremain == 0)
+ {
+ Task_EndScreenShake(taskId);
+ InstallCameraPanAheadCallback();
+ }
+ }
+}
+
+static void Task_EndScreenShake(u8 taskId)
+{
+ DestroyTask(taskId);
+ EnableBothScriptContexts();
+}
+
+#undef tYtrans
+#undef tDuration
+#undef tNremain
+#undef tTimer
+#undef tXtrans
+
+u8 GetLeadMonIndex(void)
+{
+ u8 partyCount = CalculatePlayerPartyCount();
+ u8 i;
+ struct Pokemon * pokemon;
+ for (i = 0; i < partyCount; i++)
+ {
+ pokemon = &gPlayerParty[i];
+ if (GetMonData(pokemon, MON_DATA_SPECIES2, NULL) != SPECIES_EGG && GetMonData(pokemon, MON_DATA_SPECIES2, NULL) != SPECIES_NONE)
+ return i;
+ }
+ return 0;
+}
+
+u16 Special_GetSpeciesOfPartySlot_x8004(void)
+{
+ return GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_SPECIES2, NULL);
+}
+
+bool8 Special_BufferMonOTNameAndCompareToPlayerName(void)
+{
+ GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_OT_NAME, gStringVar1);
+ if (!StringCompare(gSaveBlock2Ptr->playerName, gStringVar1))
+ return FALSE;
+ else
+ return TRUE;
+}
+
+void nullsub_75(void)
+{
+
+}
+
+void sub_80CADC4(void)
+{
+ u8 t = EOS;
+ AddTextPrinterParameterized(0, 2, &t, 0, 1, 0, NULL);
+ sub_809D424();
+}
+
+void Special_SetVermilionTrashCans(void)
+{
+ u16 idx = (Random() % 15) + 1;
+ gSpecialVar_0x8004 = idx;
+ gSpecialVar_0x8005 = idx;
+ switch (gSpecialVar_0x8004)
+ {
+ case 1:
+ idx = Random() % 2;
+ if (idx == 0)
+ gSpecialVar_0x8005 += 1;
+ else
+ gSpecialVar_0x8005 += 5;
+ break;
+ case 2:
+ case 3:
+ case 4:
+ idx = Random() % 3;
+ if (idx == 0)
+ gSpecialVar_0x8005 += 1;
+ else if (idx == 1)
+ gSpecialVar_0x8005 += 5;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ case 5:
+ idx = Random() % 2;
+ if (idx == 0)
+ gSpecialVar_0x8005 += 5;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ case 6:
+ idx = Random() % 3;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else if (idx == 1)
+ gSpecialVar_0x8005 += 1;
+ else
+ gSpecialVar_0x8005 += 5;
+ break;
+ case 7:
+ case 8:
+ case 9:
+ idx = Random() % 4;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else if (idx == 1)
+ gSpecialVar_0x8005 += 1;
+ else if (idx == 2)
+ gSpecialVar_0x8005 += 5;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ case 10:
+ idx = Random() % 3;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else if (idx == 1)
+ gSpecialVar_0x8005 += 5;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ case 11:
+ idx = Random() % 2;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else
+ gSpecialVar_0x8005 += 1;
+ break;
+ case 12:
+ case 13:
+ case 14:
+ idx = Random() % 3;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else if (idx == 1)
+ gSpecialVar_0x8005 += 1;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ case 15:
+ idx = Random() % 2;
+ if (idx == 0)
+ gSpecialVar_0x8005 -= 5;
+ else
+ gSpecialVar_0x8005 -= 1;
+ break;
+ }
+ if (gSpecialVar_0x8005 > 15)
+ {
+ if (gSpecialVar_0x8004 % 5 == 1)
+ gSpecialVar_0x8005 = gSpecialVar_0x8004 + 1;
+ else if (gSpecialVar_0x8004 % 5 == 0)
+ gSpecialVar_0x8005 = gSpecialVar_0x8004 - 1;
+ else
+ gSpecialVar_0x8005 = gSpecialVar_0x8004 + 1;
+ }
+}
+
+static const u16 sResortGorgeousDeluxeRewards[] = {
+ ITEM_BIG_PEARL,
+ ITEM_PEARL,
+ ITEM_STARDUST,
+ ITEM_STAR_PIECE,
+ ITEM_NUGGET,
+ ITEM_RARE_CANDY
+};
+
+void IncrementResortGorgeousStepCounter(void)
+{
+ u16 var4035 = VarGet(VAR_RESORT_GOREGEOUS_STEP_COUNTER);
+ if (VarGet(VAR_RESORT_GORGEOUS_REQUESTED_MON) != SPECIES_NONE)
+ {
+ var4035++;
+ if (var4035 >= 250)
+ {
+ VarSet(VAR_RESORT_GORGEOUS_REQUESTED_MON, 0xFFFF);
+ VarSet(VAR_RESORT_GOREGEOUS_STEP_COUNTER, 0);
+ }
+ else
+ {
+ VarSet(VAR_RESORT_GOREGEOUS_STEP_COUNTER, var4035);
+ }
+ }
+}
+
+void Special_SampleResortGorgeousMonAndReward(void)
+{
+ u16 var4036 = VarGet(VAR_RESORT_GORGEOUS_REQUESTED_MON);
+ if (var4036 == SPECIES_NONE || var4036 == 0xFFFF)
+ {
+ VarSet(VAR_RESORT_GORGEOUS_REQUESTED_MON, SampleResortGorgeousMon());
+ VarSet(VAR_RESORT_GORGEOUS_REWARD, SampleResortGorgeousReward());
+ VarSet(VAR_RESORT_GOREGEOUS_STEP_COUNTER, 0);
+ }
+ StringCopy(gStringVar1, gSpeciesNames[VarGet(VAR_RESORT_GORGEOUS_REQUESTED_MON)]);
+}
+
+static u16 SampleResortGorgeousMon(void)
+{
+ u16 i;
+ u16 species;
+ for (i = 0; i < 100; i++)
+ {
+ species = (Random() % (NUM_SPECIES - 1)) + 1;
+ if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), 0) == TRUE)
+ return species;
+ }
+ while (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), 0) != TRUE)
+ {
+ if (species == SPECIES_BULBASAUR)
+ species = NUM_SPECIES - 1;
+ else
+ species--;
+ }
+ return species;
+}
+
+static u16 SampleResortGorgeousReward(void)
+{
+ if ((Random() % 100) >= 30)
+ return ITEM_LUXURY_BALL;
+ else
+ return sResortGorgeousDeluxeRewards[Random() % NELEMS(sResortGorgeousDeluxeRewards)];
+}
+
+bool8 Special_CheckAddCoins(void)
+{
+ if (gSpecialVar_Result + gSpecialVar_0x8006 > 9999)
+ return FALSE;
+ else
+ return TRUE;
+}
+
+static const struct WindowTemplate sElevatorCurrentFloorWindowTemplate = {
+ .bg = 0,
+ .tilemapLeft = 22,
+ .tilemapTop = 1,
+ .width = 7,
+ .height = 4,
+ .paletteNum = 0xF,
+ .baseBlock = 0x008
+};
+
+static const u8 *const sFloorNamePointers[] = {
+ gUnknown_8418069,
+ gUnknown_8418065,
+ gUnknown_8418061,
+ gUnknown_841805D,
+ gUnknown_841803A,
+ gUnknown_841803D,
+ gUnknown_8418040,
+ gUnknown_8418043,
+ gUnknown_8418046,
+ gUnknown_8418049,
+ gUnknown_841804C,
+ gUnknown_841804F,
+ gUnknown_8418052,
+ gUnknown_8418055,
+ gUnknown_8418059,
+ gUnknown_841806D
+};
+
+static const u8 sUnused_83F5B84[] = {
+ 26,
+ 26,
+ 26,
+ 26,
+ 30,
+ 30,
+ 30,
+ 30,
+ 30,
+ 30,
+ 30,
+ 30,
+ 30,
+ 26,
+ 26,
+ 18
+};
+
+static const u16 sElevatorWindowMetatilesGoingUp[][3] = {
+ {0x2e8, 0x2e9, 0x2ea},
+ {0x2f0, 0x2f1, 0x2f2},
+ {0x2f8, 0x2f9, 0x2fa}
+};
+
+static const u16 sElevatorWindowMetatilesGoingDown[][3] = {
+ {0x2e8, 0x2ea, 0x2e9},
+ {0x2f0, 0x2f2, 0x2f1},
+ {0x2f8, 0x2fa, 0x2f9}
+};
+
+static const u8 sElevatorAnimationDuration[] = {
+ 8,
+ 16,
+ 24,
+ 32,
+ 38,
+ 46,
+ 53,
+ 56,
+ 57
+};
+
+static const u8 sElevatorWindowAnimDuration[] = {
+ 3,
+ 6,
+ 9,
+ 12,
+ 15,
+ 18,
+ 21,
+ 24,
+ 27
+};
+
+void Special_GetElevatorFloor(void)
+{
+ u16 floor = 4;
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(ROCKET_HIDEOUT_B1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(SILPH_CO_1F):
+ floor = 4;
+ break;
+ case MAP_NUM(SILPH_CO_2F):
+ floor = 5;
+ break;
+ case MAP_NUM(SILPH_CO_3F):
+ floor = 6;
+ break;
+ case MAP_NUM(SILPH_CO_4F):
+ floor = 7;
+ break;
+ case MAP_NUM(SILPH_CO_5F):
+ floor = 8;
+ break;
+ case MAP_NUM(SILPH_CO_6F):
+ floor = 9;
+ break;
+ case MAP_NUM(SILPH_CO_7F):
+ floor = 10;
+ break;
+ case MAP_NUM(SILPH_CO_8F):
+ floor = 11;
+ break;
+ case MAP_NUM(SILPH_CO_9F):
+ floor = 12;
+ break;
+ case MAP_NUM(SILPH_CO_10F):
+ floor = 13;
+ break;
+ case MAP_NUM(SILPH_CO_11F):
+ floor = 14;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B1F):
+ floor = 3;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B2F):
+ floor = 2;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B4F):
+ floor = 0;
+ break;
+ }
+ }
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(CELADON_CITY_DEPARTMENT_STORE_1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_1F):
+ floor = 4;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_2F):
+ floor = 5;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_3F):
+ floor = 6;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_4F):
+ floor = 7;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_5F):
+ floor = 8;
+ break;
+ }
+ }
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(SEVEN_ISLAND_TRAINER_TOWER_1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_1F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_2F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_3F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_4F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_5F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_6F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_7F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_8F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_ROOF):
+ floor = 15;
+ break;
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_LOBBY):
+ floor = 3;
+ break;
+ }
+ }
+ VarSet(VAR_ELEVATOR_FLOOR, floor);
+}
+
+u16 Special_InitElevatorFloorSelectMenuPos(void)
+{
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 0;
+
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(ROCKET_HIDEOUT_B1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(SILPH_CO_11F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 0;
+ break;
+ case MAP_NUM(SILPH_CO_10F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 1;
+ break;
+ case MAP_NUM(SILPH_CO_9F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 2;
+ break;
+ case MAP_NUM(SILPH_CO_8F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 3;
+ break;
+ case MAP_NUM(SILPH_CO_7F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_6F):
+ sElevatorScroll = 1;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_5F):
+ sElevatorScroll = 2;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_4F):
+ sElevatorScroll = 3;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_3F):
+ sElevatorScroll = 4;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_2F):
+ sElevatorScroll = 5;
+ sElevatorCursorPos = 4;
+ break;
+ case MAP_NUM(SILPH_CO_1F):
+ sElevatorScroll = 5;
+ sElevatorCursorPos = 5;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B1F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 0;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B2F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 1;
+ break;
+ case MAP_NUM(ROCKET_HIDEOUT_B4F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 2;
+ break;
+ }
+ }
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(CELADON_CITY_DEPARTMENT_STORE_1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_5F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 0;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_4F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 1;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_3F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 2;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_2F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 3;
+ break;
+ case MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_1F):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 4;
+ break;
+ }
+ }
+ if (gSaveBlock1Ptr->warp2.mapGroup == MAP_GROUP(SEVEN_ISLAND_TRAINER_TOWER_1F))
+ {
+ switch (gSaveBlock1Ptr->warp2.mapNum)
+ {
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_1F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_2F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_3F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_4F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_5F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_6F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_7F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_8F):
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_ROOF):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 0;
+ break;
+ case MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_LOBBY):
+ sElevatorScroll = 0;
+ sElevatorCursorPos = 1;
+ break;
+ }
+ }
+ return sElevatorCursorPos;
+}
+
+void Special_AnimateElevator(void)
+{
+ u16 nfloors;
+ s16 *data = gTasks[CreateTask(Task_ElevatorShake, 9)].data;
+ data[1] = 0;
+ data[2] = 0;
+ data[4] = 1;
+ if (gSpecialVar_0x8005 > gSpecialVar_0x8006)
+ {
+ nfloors = gSpecialVar_0x8005 - gSpecialVar_0x8006;
+ data[6] = 1;
+ }
+ else
+ {
+ nfloors = gSpecialVar_0x8006 - gSpecialVar_0x8005;
+ data[6] = 0;
+ }
+ if (nfloors > 8)
+ nfloors = 8;
+ data[5] = sElevatorAnimationDuration[nfloors];
+ SetCameraPanningCallback(NULL);
+ AnimateElevatorWindowView(nfloors, data[6]);
+ PlaySE(SE_ELEBETA);
+}
+
+static void Task_ElevatorShake(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ data[1]++;
+ if ((data[1] % 3) == 0)
+ {
+ data[1] = 0;
+ data[2]++;
+ data[4] = -data[4];
+ SetCameraPanning(0, data[4]);
+ if (data[2] == data[5])
+ {
+ PlaySE(SE_PINPON);
+ DestroyTask(taskId);
+ EnableBothScriptContexts();
+ InstallCameraPanAheadCallback();
+ }
+ }
+}
+
+void Special_DrawElevatorCurrentFloorWindow(void)
+{
+ const u8 *floorname;
+ u32 strwidth;
+ if (sub_81119D4(sub_809D6D4) != TRUE)
+ {
+ sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate);
+ TextWindow_SetStdFrame0_WithPal(sElevatorCurrentFloorWindowId, 0x21D, 0xD0);
+ DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 0xD);
+ AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, gUnknown_8418075, 0, 2, 0xFF, NULL);
+ floorname = sFloorNamePointers[gSpecialVar_0x8005];
+ strwidth = GetStringWidth(2, floorname, 0);
+ AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, floorname, 56 - strwidth, 16, 0xFF, NULL);
+ PutWindowTilemap(sElevatorCurrentFloorWindowId);
+ CopyWindowToVram(sElevatorCurrentFloorWindowId, 3);
+ }
+}
+
+void Special_CloseElevatorCurrentFloorWindow(void)
+{
+ ClearStdWindowAndFrameToTransparent(sElevatorCurrentFloorWindowId, TRUE);
+ RemoveWindow(sElevatorCurrentFloorWindowId);
+}
+
+static void AnimateElevatorWindowView(u16 nfloors, u8 direction)
+{
+ u8 taskId;
+ if (FuncIsActiveTask(Task_AnimateElevatorWindowView) != TRUE)
+ {
+ taskId = CreateTask(Task_AnimateElevatorWindowView, 8);
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[2] = direction;
+ gTasks[taskId].data[3] = sElevatorWindowAnimDuration[nfloors];
+ }
+}
+
+static void Task_AnimateElevatorWindowView(u8 taskId)
+{
+ u8 i;
+ u8 j;
+ s16 *data = gTasks[taskId].data;
+ if (data[1] == 6)
+ {
+ data[0]++;
+ if (data[2] == 0)
+ {
+ for (i = 0; i < 3; i++)
+ {
+ for (j = 0; j < 3; j++)
+ {
+ MapGridSetMetatileIdAt(j + 8, i + 7, sElevatorWindowMetatilesGoingUp[i][data[0] % 3] | 0xC00);
+ }
+ }
+ }
+ else
+ {
+ for (i = 0; i < 3; i++)
+ {
+ for (j = 0; j < 3; j++)
+ {
+ MapGridSetMetatileIdAt(j + 8, i + 7, sElevatorWindowMetatilesGoingDown[i][data[0] % 3] | 0xC00);
+ }
+ }
+ }
+ DrawWholeMapView();
+ data[1] = 0;
+ if (data[0] == data[3])
+ DestroyTask(taskId);
+ }
+ data[1]++;
+}
+
+void Special_ListMenu(void)
+{
+ u8 taskId;
+ struct Task * task;
+ if (sub_81119D4(sub_809D6D4) != TRUE)
+ {
+ taskId = CreateTask(Task_CreateScriptListMenu, 8);
+ task = &gTasks[taskId];
+ switch (gSpecialVar_0x8004)
+ {
+ case 0:
+ task->data[0] = 4;
+ task->data[1] = 9;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 12;
+ task->data[5] = 7;
+ task->data[6] = 1;
+ task->data[15] = taskId;
+ break;
+ case 1:
+ task->data[0] = 7;
+ task->data[1] = 12;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 8;
+ task->data[5] = 12;
+ task->data[6] = 0;
+ task->data[15] = taskId;
+ task->data[7] = sElevatorScroll;
+ task->data[8] = sElevatorCursorPos;
+ break;
+ case 2:
+ task->data[0] = 4;
+ task->data[1] = 4;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 8;
+ task->data[5] = 8;
+ task->data[6] = 0;
+ task->data[15] = taskId;
+ break;
+ case 3:
+ task->data[0] = 4;
+ task->data[1] = 6;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 8;
+ task->data[5] = 8;
+ task->data[6] = 0;
+ task->data[15] = taskId;
+ break;
+ case 4:
+ task->data[0] = 4;
+ task->data[1] = 4;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 17;
+ task->data[5] = 8;
+ task->data[6] = 1;
+ task->data[15] = taskId;
+ break;
+ case 5:
+ task->data[0] = 7;
+ task->data[1] = 12;
+ task->data[2] = 16;
+ task->data[3] = 1;
+ task->data[4] = 17;
+ task->data[5] = 12;
+ task->data[6] = 0;
+ task->data[15] = taskId;
+ break;
+ case 6:
+ task->data[0] = 3;
+ task->data[1] = 3;
+ task->data[2] = 1;
+ task->data[3] = 1;
+ task->data[4] = 8;
+ task->data[5] = 6;
+ task->data[6] = 0;
+ task->data[15] = taskId;
+ break;
+ case 99:
+ break;
+ default:
+ gSpecialVar_Result = 0x7F;
+ DestroyTask(taskId);
+ break;
+ }
+ }
+}
+
+static const u8 *const sListMenuLabels[][12] = {
+ {
+ gUnknown_8417FD9,
+ gUnknown_8417FE6,
+ gUnknown_8417FF3,
+ gUnknown_8418000,
+ gUnknown_841800D,
+ gUnknown_8418017,
+ gUnknown_8418022,
+ gUnknown_841802F,
+ gOtherText_Exit,
+ }, {
+ gUnknown_8418059,
+ gUnknown_8418055,
+ gUnknown_8418052,
+ gUnknown_841804F,
+ gUnknown_841804C,
+ gUnknown_8418049,
+ gUnknown_8418046,
+ gUnknown_8418043,
+ gUnknown_8418040,
+ gUnknown_841803D,
+ gUnknown_841803A,
+ gOtherText_Exit,
+ }, {
+ gUnknown_841805D,
+ gUnknown_8418061,
+ gUnknown_8418069,
+ gOtherText_Exit,
+ }, {
+ gUnknown_8418046,
+ gUnknown_8418043,
+ gUnknown_8418040,
+ gUnknown_841803D,
+ gUnknown_841803A,
+ gOtherText_Exit,
+ }, {
+ gUnknown_841807D,
+ gUnknown_841808E,
+ gUnknown_841809C,
+ gOtherText_Quit,
+ }, {
+ gUnknown_84180A7,
+ gUnknown_84180BC,
+ gUnknown_84180D0,
+ gUnknown_84180E4,
+ gUnknown_84180FA,
+ gUnknown_841810D,
+ gUnknown_841811D,
+ gUnknown_841812F,
+ gUnknown_8418142,
+ gUnknown_8418152,
+ gUnknown_8418163,
+ gOtherText_Exit,
+ }, {
+ gUnknown_841806D,
+ gUnknown_841805D,
+ gOtherText_Exit,
+ }
+};
+
+static void Task_CreateScriptListMenu(u8 taskId)
+{
+ struct WindowTemplate template;
+ u8 i;
+ s32 width;
+ s32 mwidth;
+ struct Task * task = &gTasks[taskId];
+ u8 windowId;
+ ScriptContext2_Enable();
+ if (gSpecialVar_0x8004 == 1)
+ sListMenuLastScrollPosition = sElevatorScroll;
+ else
+ sListMenuLastScrollPosition = 0;
+ sListMenuItems = AllocZeroed(task->data[1] * sizeof(struct ListMenuItem));
+ CreateScriptListMenu();
+ mwidth = 0;
+ for (i = 0; i < task->data[1]; i++)
+ {
+ sListMenuItems[i].label = sListMenuLabels[gSpecialVar_0x8004][i];
+ sListMenuItems[i].index = i;
+ width = GetStringWidth(2, sListMenuItems[i].label, 0);
+ if (width > mwidth)
+ mwidth = width;
+ }
+ task->data[4] = (mwidth + 9) / 8 + 1;
+ if (task->data[2] + task->data[4] > 29)
+ task->data[2] = 29 - task->data[4];
+ template = SetWindowTemplateFields(0, task->data[2], task->data[3], task->data[4], task->data[5], 15, 0x038);
+ task->data[13] = windowId = AddWindow(&template);
+ SetStdWindowBorderStyle(task->data[13], 0);
+ sFieldSpecialsListMenuTemplate.totalItems = task->data[1];
+ sFieldSpecialsListMenuTemplate.maxShowed = task->data[0];
+ sFieldSpecialsListMenuTemplate.windowId = task->data[13];
+ Task_CreateMenuRemoveScrollIndicatorArrowPair(taskId);
+ task->data[14] = ListMenuInit(&sFieldSpecialsListMenuTemplate, task->data[7], task->data[8]);
+ PutWindowTilemap(task->data[13]);
+ CopyWindowToVram(task->data[13], 3);
+ gTasks[taskId].func = Task_ListMenuHandleInput;
+}
+
+static void CreateScriptListMenu(void)
+{
+ sFieldSpecialsListMenuTemplate.items = sListMenuItems;
+ sFieldSpecialsListMenuTemplate.moveCursorFunc = ScriptListMenuMoveCursorFunction;
+ sFieldSpecialsListMenuTemplate.itemPrintFunc = NULL;
+ sFieldSpecialsListMenuTemplate.totalItems = 1;
+ sFieldSpecialsListMenuTemplate.maxShowed = 1;
+ sFieldSpecialsListMenuTemplate.windowId = 0;
+ sFieldSpecialsListMenuTemplate.header_X = 0;
+ sFieldSpecialsListMenuTemplate.item_X = 8;
+ sFieldSpecialsListMenuTemplate.cursor_X = 0;
+ sFieldSpecialsListMenuTemplate.upText_Y = 0;
+ sFieldSpecialsListMenuTemplate.cursorPal = 2;
+ sFieldSpecialsListMenuTemplate.fillValue = 1;
+ sFieldSpecialsListMenuTemplate.cursorShadowPal = 3;
+ sFieldSpecialsListMenuTemplate.lettersSpacing = 1;
+ sFieldSpecialsListMenuTemplate.itemVerticalPadding = 0;
+ sFieldSpecialsListMenuTemplate.scrollMultiple = 0;
+ sFieldSpecialsListMenuTemplate.fontId = 2;
+ sFieldSpecialsListMenuTemplate.cursorKind = 0;
+}
+
+static void ScriptListMenuMoveCursorFunction(s32 nothing, bool8 is, struct ListMenu * used)
+{
+ u8 taskId;
+ struct Task * task;
+ PlaySE(SE_SELECT);
+ taskId = FindTaskIdByFunc(Task_ListMenuHandleInput);
+ if (taskId != 0xFF)
+ {
+ task = &gTasks[taskId];
+ ListMenuGetScrollAndRow(task->data[14], &sFieldSpecialsListMenuScrollBuffer, NULL);
+ sListMenuLastScrollPosition = sFieldSpecialsListMenuScrollBuffer;
+ }
+}
+
+static void Task_ListMenuHandleInput(u8 taskId)
+{
+ s32 input;
+ struct Task * task;
+
+ task = &gTasks[taskId];
+ task++;task--;
+ input = ListMenu_ProcessInput(task->data[14]);
+ switch (input)
+ {
+ case -1:
+ break;
+ case -2:
+ gSpecialVar_Result = 0x7F;
+ PlaySE(SE_SELECT);
+ Task_DestroyListMenu(taskId);
+ break;
+ default:
+ gSpecialVar_Result = input;
+ PlaySE(SE_SELECT);
+ if (task->data[6] == 0 || input == task->data[1] - 1)
+ {
+ Task_DestroyListMenu(taskId);
+ }
+ else
+ {
+ Task_ListMenuRemoveScrollIndicatorArrowPair(taskId);
+ task->func = Task_SuspendListMenu;
+ EnableBothScriptContexts();
+ }
+ break;
+ }
+}
+
+static void Task_DestroyListMenu(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ Task_ListMenuRemoveScrollIndicatorArrowPair(taskId);
+ DestroyListMenuTask(task->data[14], NULL, NULL);
+ Free(sListMenuItems);
+ ClearStdWindowAndFrameToTransparent(task->data[13], TRUE);
+ FillWindowPixelBuffer(task->data[13], PIXEL_FILL(0));
+ ClearWindowTilemap(task->data[13]);
+ CopyWindowToVram(task->data[13], 2);
+ RemoveWindow(task->data[13]);
+ DestroyTask(taskId);
+ EnableBothScriptContexts();
+}
+
+static void Task_SuspendListMenu(u8 taskId)
+{
+ switch (gTasks[taskId].data[6])
+ {
+ case 1:
+ break;
+ case 2:
+ gTasks[taskId].data[6] = 1;
+ gTasks[taskId].func = Task_RedrawScrollArrowsAndWaitInput;
+ break;
+ }
+}
+
+void Special_ReturnToListMenu(void)
+{
+ u8 taskId = FindTaskIdByFunc(Task_SuspendListMenu);
+ if (taskId == 0xFF)
+ EnableBothScriptContexts();
+ else
+ gTasks[taskId].data[6]++;
+}
+
+static void Task_RedrawScrollArrowsAndWaitInput(u8 taskId)
+{
+ ScriptContext2_Enable();
+ Task_CreateMenuRemoveScrollIndicatorArrowPair(taskId);
+ gTasks[taskId].func = Task_ListMenuHandleInput;
+}
+
+static void Task_CreateMenuRemoveScrollIndicatorArrowPair(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ struct ScrollArrowsTemplate template = {
+ .firstArrowType = 2,
+ .secondArrowType = 3,
+ .tileTag = 2000,
+ .palTag = 100
+ };
+ if (task->data[0] != task->data[1])
+ {
+ template.firstX = 4 * task->data[4] + 8 * task->data[2];
+ template.firstY = 8;
+ template.secondX = 4 * task->data[4] + 8 * task->data[2];
+ template.secondY = 8 * task->data[5] + 10;
+ template.fullyUpThreshold = 0;
+ template.fullyDownThreshold = task->data[1] - task->data[0];
+ task->data[12] = AddScrollIndicatorArrowPair(&template, &sListMenuLastScrollPosition);
+ }
+}
+
+static void Task_ListMenuRemoveScrollIndicatorArrowPair(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ if (task->data[0] != task->data[1])
+ RemoveScrollIndicatorArrowPair(task->data[12]);
+}
+
+void Special_ForcePlayerToStartSurfing(void)
+{
+ HelpSystem_SetSomeVariable2(22);
+ SetPlayerAvatarTransitionFlags(8);
+}
+
+static const u16 sStarterMon[] = {
+ SPECIES_BULBASAUR,
+ SPECIES_SQUIRTLE,
+ SPECIES_CHARMANDER
+};
+
+static u16 GetStarterPokemon(u16 idx)
+{
+ if (idx >= NELEMS(sStarterMon))
+ idx = 0;
+ return sStarterMon[idx];
+}
+
+u16 ScrSpecial_GetStarter(void)
+{
+ return GetStarterPokemon(VarGet(VAR_STARTER_MON));
+}
+
+void Special_SetSeenMon(void)
+{
+ GetSetPokedexFlag(SpeciesToNationalPokedexNum(gSpecialVar_0x8004), 2);
+}
+
+void sub_80CBDE8(void)
+{
+ gSelectedEventObject = 0;
+ gSpecialVar_TextColor = 0xFF;
+}
+
+u8 ContextNpcGetTextColor(void)
+{
+ u8 gfxId;
+ if (gSpecialVar_TextColor != 0xFF)
+ return gSpecialVar_TextColor;
+ else if (gSelectedEventObject == 0)
+ return 3;
+ else
+ {
+ gfxId = gMapObjects[gSelectedEventObject].graphicsId;
+ if (gfxId >= MAP_OBJ_GFX_VAR_0)
+ gfxId = VarGetFieldObjectGraphicsId(gfxId - MAP_OBJ_GFX_VAR_0);
+ return GetColorFromTextColorTable(gfxId);
+ }
+}
+
+static bool8 HasMonBeenRenamed(u8 idx)
+{
+ struct Pokemon * pokemon = &gPlayerParty[idx];
+ u8 language;
+ GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1);
+ language = GetMonData(pokemon, MON_DATA_LANGUAGE, &language);
+ if (language != LANGUAGE_ENGLISH)
+ return TRUE;
+ else if (StringCompare(gSpeciesNames[GetMonData(pokemon, MON_DATA_SPECIES, NULL)], gStringVar1) != 0)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 Special_HasLeadMonBeenRenamed(void)
+{
+ return HasMonBeenRenamed(GetLeadMonIndex());
+}
+
+void TV_PrintIntToStringVar(u8 varidx, s32 number)
+{
+ s32 n = CountDigits(number);
+ ConvertIntToDecimalStringN(sStringVarPtrs[varidx], number, STR_CONV_MODE_LEFT_ALIGN, n);
+}
+
+s32 CountDigits(s32 number)
+{
+ if (number / 10 == 0)
+ return 1;
+ else if (number / 100 == 0)
+ return 2;
+ else if (number / 1000 == 0)
+ return 3;
+ else if (number / 10000 == 0)
+ return 4;
+ else if (number / 100000 == 0)
+ return 5;
+ else if (number / 1000000 == 0)
+ return 6;
+ else if (number / 10000000 == 0)
+ return 7;
+ else if (number / 100000000 == 0)
+ return 8;
+ else
+ return 1;
+}
+
+bool8 NameRaterWasNicknameChanged(void)
+{
+ struct Pokemon * pokemon = &gPlayerParty[gSpecialVar_0x8004];
+ GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1);
+ if (StringCompare(gStringVar3, gStringVar1) == 0)
+ return FALSE;
+ else
+ return TRUE;
+}
+
+void ChangeBoxPokemonNickname(void)
+{
+ struct BoxPokemon * pokemon = GetBoxedMonPtr(gSpecialVar_MonBoxId, gSpecialVar_MonBoxPos);
+ u16 species;
+ u8 gender;
+ u32 personality;
+
+
+ GetBoxMonData(pokemon, MON_DATA_NICKNAME, gStringVar3);
+ GetBoxMonData(pokemon, MON_DATA_NICKNAME, gStringVar2);
+ species = GetBoxMonData(pokemon, MON_DATA_SPECIES, NULL);
+ gender = GetBoxMonGender(pokemon);
+ personality = GetBoxMonData(pokemon, MON_DATA_PERSONALITY, NULL);
+ DoNamingScreen(3, gStringVar2, species, gender, personality, ChangeBoxPokemonNickname_CB);
+}
+
+static void ChangeBoxPokemonNickname_CB(void)
+{
+ SetBoxMonNickFromAnyBox(gSpecialVar_MonBoxId, gSpecialVar_MonBoxPos, gStringVar2);
+ CB2_ReturnToFieldContinueScriptPlayMapMusic();
+}
+
+void ChangePokemonNickname(void)
+{
+ u16 species;
+ u8 gender;
+ u32 personality;
+
+ GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar3);
+ GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar2);
+ species = GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_SPECIES, NULL);
+ gender = GetMonGender(&gPlayerParty[gSpecialVar_0x8004]);
+ personality = GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_PERSONALITY, NULL);
+ DoNamingScreen(3, gStringVar2, species, gender, personality, ChangePokemonNickname_CB);
+}
+
+static void ChangePokemonNickname_CB(void)
+{
+ SetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar2);
+ CB2_ReturnToFieldContinueScriptPlayMapMusic();
+}
+
+void TV_CopyNicknameToStringVar1AndEnsureTerminated(void)
+{
+ GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar1);
+ StringGetEnd10(gStringVar1);
+}
+
+void TV_CheckMonOTIDEqualsPlayerID(void)
+{
+ if (GetPlayerTrainerId() == GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_OT_ID, NULL))
+ gSpecialVar_Result = FALSE;
+ else
+ gSpecialVar_Result = TRUE;
+}
+
+u32 GetPlayerTrainerId(void)
+{
+ return (gSaveBlock2Ptr->playerTrainerId[3] << 24) | (gSaveBlock2Ptr->playerTrainerId[2] << 16) | (gSaveBlock2Ptr->playerTrainerId[1] << 8) | gSaveBlock2Ptr->playerTrainerId[0];
+}
+
+u8 GetUnlockedSeviiAreas(void)
+{
+ u8 result = 0;
+ if (FlagGet(FLAG_WORLD_MAP_ONE_ISLAND) == TRUE)
+ result |= 1 << 0;
+ if (FlagGet(FLAG_WORLD_MAP_TWO_ISLAND) == TRUE)
+ result |= 1 << 1;
+ if (FlagGet(FLAG_WORLD_MAP_THREE_ISLAND) == TRUE)
+ result |= 1 << 2;
+ if (FlagGet(FLAG_WORLD_MAP_FOUR_ISLAND) == TRUE)
+ result |= 1 << 3;
+ if (FlagGet(FLAG_WORLD_MAP_FIVE_ISLAND) == TRUE)
+ result |= 1 << 4;
+ if (FlagGet(FLAG_WORLD_MAP_SIX_ISLAND) == TRUE)
+ result |= 1 << 5;
+ if (FlagGet(FLAG_WORLD_MAP_SEVEN_ISLAND) == TRUE)
+ result |= 1 << 6;
+ return result;
+}
+
+void Special_UpdateTrainerCardPhotoIcons(void)
+{
+ u16 species[PARTY_SIZE];
+ u32 personality[PARTY_SIZE];
+ u8 i;
+ u8 partyCount;
+ for (i = 0; i < PARTY_SIZE; i++)
+ species[i] = SPECIES_NONE;
+ partyCount = CalculatePlayerPartyCount();
+ for (i = 0; i < partyCount; i++)
+ {
+ species[i] = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL);
+ personality[i] = GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY, NULL);
+ }
+ VarSet(VAR_TRAINER_CARD_MON_ICON_1, SpeciesToMailSpecies(species[0], personality[0]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_2, SpeciesToMailSpecies(species[1], personality[1]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_3, SpeciesToMailSpecies(species[2], personality[2]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_4, SpeciesToMailSpecies(species[3], personality[3]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_5, SpeciesToMailSpecies(species[4], personality[4]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_6, SpeciesToMailSpecies(species[5], personality[5]));
+ VarSet(VAR_TRAINER_CARD_MON_ICON_TINT_IDX, gSpecialVar_0x8004);
+}
+
+u16 Special_StickerLadyGetBragFlags(void)
+{
+ u16 result = 0;
+ u32 numEggs;
+ gSpecialVar_0x8004 = GetGameStat(GAME_STAT_ENTERED_HOF);
+ numEggs = GetGameStat(GAME_STAT_HATCHED_EGGS);
+ gSpecialVar_0x8006 = GetGameStat(GAME_STAT_LINK_BATTLE_WINS);
+ if (numEggs > 0xFFFF)
+ gSpecialVar_0x8005 = 0xFFFF;
+ else
+ gSpecialVar_0x8005 = numEggs;
+ if (gSpecialVar_0x8004 != 0)
+ result |= 1 << 0;
+ if (gSpecialVar_0x8005 != 0)
+ result |= 1 << 1;
+ if (gSpecialVar_0x8006 != 0)
+ result |= 1 << 2;
+ return result;
+}
+
+u16 GetHiddenItemAttr(u32 hiddenItem, u8 attr)
+{
+ if (attr == 0)
+ return hiddenItem & 0xFFFF;
+ else if (attr == 1)
+ return ((hiddenItem >> 16) & 0xFF) + 1000;
+ else if (attr == 2)
+ return (hiddenItem >> 24) & 0x7F;
+ else if (attr == 3)
+ return (hiddenItem >> 31) & 0x01;
+ else
+ return 1;
+}
+
+bool8 Special_PlayerPartyContainsSpecies(void)
+{
+ u8 partyCount = CalculatePlayerPartyCount();
+ u8 i;
+ for (i = 0; i < partyCount; i++)
+ {
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) == gSpecialVar_0x8004)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static const u8 sMartMaps[][3] = {
+ {MAP_GROUP(VIRIDIAN_CITY_MART), MAP_NUM(VIRIDIAN_CITY_MART), 1},
+ {MAP_GROUP(PEWTER_CITY_MART), MAP_NUM(PEWTER_CITY_MART), 3},
+ {MAP_GROUP(CERULEAN_CITY_MART), MAP_NUM(CERULEAN_CITY_MART), 1},
+ {MAP_GROUP(LAVENDER_TOWN_MART), MAP_NUM(LAVENDER_TOWN_MART), 1},
+ {MAP_GROUP(VERMILION_CITY_MART), MAP_NUM(VERMILION_CITY_MART), 1},
+ {MAP_GROUP(FUCHSIA_CITY_MART), MAP_NUM(FUCHSIA_CITY_MART), 1},
+ {MAP_GROUP(CINNABAR_ISLAND_MART), MAP_NUM(CINNABAR_ISLAND_MART), 1},
+ {MAP_GROUP(SAFFRON_CITY_MART), MAP_NUM(SAFFRON_CITY_MART), 1},
+ {MAP_GROUP(THREE_ISLAND_MART), MAP_NUM(THREE_ISLAND_MART), 1},
+ {MAP_GROUP(FOUR_ISLAND_MART), MAP_NUM(FOUR_ISLAND_MART), 1},
+ {MAP_GROUP(SEVEN_ISLAND_MART), MAP_NUM(SEVEN_ISLAND_MART), 1},
+ {MAP_GROUP(SIX_ISLAND_MART), MAP_NUM(SIX_ISLAND_MART), 1}
+};
+
+u8 Special_GetMartClerkObjectId(void)
+{
+ u8 i;
+ for (i = 0; i < NELEMS(sMartMaps); i++)
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == sMartMaps[i][0] && gSaveBlock1Ptr->location.mapNum == sMartMaps[i][1])
+ return sMartMaps[i][2];
+ }
+ return 1;
+}
+
+void sub_80CC524(void)
+{
+ sub_8113550(11, NULL);
+}
+
+static const struct {
+ u16 grp;
+ u16 num;
+ u16 grp2;
+ u16 num2;
+} sInsideOutsidePairs[51] = {
+ {MAP_GROUP(PALLET_TOWN_PLAYERS_HOUSE_1F), MAP_NUM(PALLET_TOWN_PLAYERS_HOUSE_1F), MAP_GROUP(PALLET_TOWN), MAP_NUM(PALLET_TOWN)},
+ {MAP_GROUP(PALLET_TOWN_PROFESSOR_OAKS_LAB), MAP_NUM(PALLET_TOWN_PROFESSOR_OAKS_LAB), MAP_GROUP(PALLET_TOWN), MAP_NUM(PALLET_TOWN)},
+ {MAP_GROUP(VIRIDIAN_CITY_GYM), MAP_NUM(VIRIDIAN_CITY_GYM), MAP_GROUP(VIRIDIAN_CITY), MAP_NUM(VIRIDIAN_CITY)},
+ {MAP_GROUP(ROUTE22_NORTH_ENTRANCE), MAP_NUM(ROUTE22_NORTH_ENTRANCE), MAP_GROUP(ROUTE22), MAP_NUM(ROUTE22)},
+ {MAP_GROUP(ROUTE22_NORTH_ENTRANCE), MAP_NUM(ROUTE22_NORTH_ENTRANCE), MAP_GROUP(ROUTE23), MAP_NUM(ROUTE23)},
+ {MAP_GROUP(VIRIDIAN_FOREST), MAP_NUM(VIRIDIAN_FOREST), MAP_GROUP(ROUTE2_VIRIDIAN_FOREST_SOUTH_ENTRANCE), MAP_NUM(ROUTE2_VIRIDIAN_FOREST_SOUTH_ENTRANCE)},
+ {MAP_GROUP(VIRIDIAN_FOREST), MAP_NUM(VIRIDIAN_FOREST), MAP_GROUP(ROUTE2_VIRIDIAN_FOREST_NORTH_ENTRANCE), MAP_NUM(ROUTE2_VIRIDIAN_FOREST_NORTH_ENTRANCE)},
+ {MAP_GROUP(PEWTER_CITY_MUSEUM_1F), MAP_NUM(PEWTER_CITY_MUSEUM_1F), MAP_GROUP(PEWTER_CITY), MAP_NUM(PEWTER_CITY)},
+ {MAP_GROUP(PEWTER_CITY_GYM), MAP_NUM(PEWTER_CITY_GYM), MAP_GROUP(PEWTER_CITY), MAP_NUM(PEWTER_CITY)},
+ {MAP_GROUP(MT_MOON_1F), MAP_NUM(MT_MOON_1F), MAP_GROUP(ROUTE4), MAP_NUM(ROUTE4)},
+ {MAP_GROUP(MT_MOON_B1F), MAP_NUM(MT_MOON_B1F), MAP_GROUP(ROUTE4), MAP_NUM(ROUTE4)},
+ {MAP_GROUP(CERULEAN_CITY_GYM), MAP_NUM(CERULEAN_CITY_GYM), MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY)},
+ {MAP_GROUP(CERULEAN_CITY_BIKE_SHOP), MAP_NUM(CERULEAN_CITY_BIKE_SHOP), MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY)},
+ {MAP_GROUP(ROUTE25_SEA_COTTAGE), MAP_NUM(ROUTE25_SEA_COTTAGE), MAP_GROUP(ROUTE25), MAP_NUM(ROUTE25)},
+ {MAP_GROUP(ROUTE5_POKEMON_DAY_CARE), MAP_NUM(ROUTE5_POKEMON_DAY_CARE), MAP_GROUP(ROUTE5), MAP_NUM(ROUTE5)},
+ {MAP_GROUP(UNDERGROUND_PATH_NORTH_ENTRANCE), MAP_NUM(UNDERGROUND_PATH_NORTH_ENTRANCE), MAP_GROUP(ROUTE5), MAP_NUM(ROUTE5)},
+ {MAP_GROUP(UNDERGROUND_PATH_SOUTH_ENTRANCE), MAP_NUM(UNDERGROUND_PATH_SOUTH_ENTRANCE), MAP_GROUP(ROUTE6), MAP_NUM(ROUTE6)},
+ {MAP_GROUP(VERMILION_CITY_POKEMON_FAN_CLUB), MAP_NUM(VERMILION_CITY_POKEMON_FAN_CLUB), MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY)},
+ {MAP_GROUP(VERMILION_CITY_GYM), MAP_NUM(VERMILION_CITY_GYM), MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY)},
+ {MAP_GROUP(SSANNE_1F_CORRIDOR), MAP_NUM(SSANNE_1F_CORRIDOR), MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY)},
+ {MAP_GROUP(DIGLETTS_CAVE_NORTH_ENTRANCE), MAP_NUM(DIGLETTS_CAVE_NORTH_ENTRANCE), MAP_GROUP(ROUTE2), MAP_NUM(ROUTE2)},
+ {MAP_GROUP(DIGLETTS_CAVE_SOUTH_ENTRANCE), MAP_NUM(DIGLETTS_CAVE_SOUTH_ENTRANCE), MAP_GROUP(ROUTE11), MAP_NUM(ROUTE11)},
+ {MAP_GROUP(ROCK_TUNNEL_1F), MAP_NUM(ROCK_TUNNEL_1F), MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10)},
+ {MAP_GROUP(ROCK_TUNNEL_1F), MAP_NUM(ROCK_TUNNEL_1F), MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10)},
+ {MAP_GROUP(POWER_PLANT), MAP_NUM(POWER_PLANT), MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10)},
+ {MAP_GROUP(POKEMON_TOWER_1F), MAP_NUM(POKEMON_TOWER_1F), MAP_GROUP(LAVENDER_TOWN), MAP_NUM(LAVENDER_TOWN)},
+ {MAP_GROUP(LAVENDER_TOWN_VOLUNTEER_POKEMON_HOUSE), MAP_NUM(LAVENDER_TOWN_VOLUNTEER_POKEMON_HOUSE), MAP_GROUP(LAVENDER_TOWN), MAP_NUM(LAVENDER_TOWN)},
+ {MAP_GROUP(LAVENDER_TOWN_HOUSE2), MAP_NUM(LAVENDER_TOWN_HOUSE2), MAP_GROUP(LAVENDER_TOWN), MAP_NUM(LAVENDER_TOWN)},
+ {MAP_GROUP(UNDERGROUND_PATH_EAST_ENTRANCE), MAP_NUM(UNDERGROUND_PATH_EAST_ENTRANCE), MAP_GROUP(ROUTE8), MAP_NUM(ROUTE8)},
+ {MAP_GROUP(UNDERGROUND_PATH_WEST_ENTRANCE), MAP_NUM(UNDERGROUND_PATH_WEST_ENTRANCE), MAP_GROUP(ROUTE7), MAP_NUM(ROUTE7)},
+ {MAP_GROUP(CELADON_CITY_DEPARTMENT_STORE_1F), MAP_NUM(CELADON_CITY_DEPARTMENT_STORE_1F), MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY)},
+ {MAP_GROUP(CELADON_CITY_CONDOMINIUMS_1F), MAP_NUM(CELADON_CITY_CONDOMINIUMS_1F), MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY)},
+ {MAP_GROUP(CELADON_CITY_GAME_CORNER), MAP_NUM(CELADON_CITY_GAME_CORNER), MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY)},
+ {MAP_GROUP(CELADON_CITY_GYM), MAP_NUM(CELADON_CITY_GYM), MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY)},
+ {MAP_GROUP(CELADON_CITY_RESTAURANT), MAP_NUM(CELADON_CITY_RESTAURANT), MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY)},
+ {MAP_GROUP(ROCKET_HIDEOUT_B1F), MAP_NUM(ROCKET_HIDEOUT_B1F), MAP_GROUP(CELADON_CITY_GAME_CORNER), MAP_NUM(CELADON_CITY_GAME_CORNER)},
+ {MAP_GROUP(SAFARI_ZONE_CENTER), MAP_NUM(SAFARI_ZONE_CENTER), MAP_GROUP(FUCHSIA_CITY_SAFARI_ZONE_ENTRANCE), MAP_NUM(FUCHSIA_CITY_SAFARI_ZONE_ENTRANCE)},
+ {MAP_GROUP(FUCHSIA_CITY_GYM), MAP_NUM(FUCHSIA_CITY_GYM), MAP_GROUP(FUCHSIA_CITY), MAP_NUM(FUCHSIA_CITY)},
+ {MAP_GROUP(FUCHSIA_CITY_BUILDING1), MAP_NUM(FUCHSIA_CITY_BUILDING1), MAP_GROUP(FUCHSIA_CITY), MAP_NUM(FUCHSIA_CITY)},
+ {MAP_GROUP(SAFFRON_CITY_DOJO), MAP_NUM(SAFFRON_CITY_DOJO), MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY)},
+ {MAP_GROUP(SAFFRON_CITY_GYM), MAP_NUM(SAFFRON_CITY_GYM), MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY)},
+ {MAP_GROUP(SILPH_CO_1F), MAP_NUM(SILPH_CO_1F), MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY)},
+ {MAP_GROUP(SEAFOAM_ISLANDS_1F), MAP_NUM(SEAFOAM_ISLANDS_1F), MAP_GROUP(ROUTE20), MAP_NUM(ROUTE20)},
+ {MAP_GROUP(SEAFOAM_ISLANDS_1F), MAP_NUM(SEAFOAM_ISLANDS_1F), MAP_GROUP(ROUTE20), MAP_NUM(ROUTE20)},
+ {MAP_GROUP(POKEMON_MANSION_1F), MAP_NUM(POKEMON_MANSION_1F), MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND)},
+ {MAP_GROUP(CINNABAR_ISLAND_GYM), MAP_NUM(CINNABAR_ISLAND_GYM), MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND)},
+ {MAP_GROUP(CINNABAR_ISLAND_POKEMON_LAB_ENTRANCE), MAP_NUM(CINNABAR_ISLAND_POKEMON_LAB_ENTRANCE), MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND)},
+ {MAP_GROUP(VICTORY_ROAD_1F), MAP_NUM(VICTORY_ROAD_1F), MAP_GROUP(ROUTE23), MAP_NUM(ROUTE23)},
+ {MAP_GROUP(VICTORY_ROAD_2F), MAP_NUM(VICTORY_ROAD_2F), MAP_GROUP(ROUTE23), MAP_NUM(ROUTE23)},
+ {MAP_GROUP(INDIGO_PLATEAU_POKEMON_CENTER_1F), MAP_NUM(INDIGO_PLATEAU_POKEMON_CENTER_1F), MAP_GROUP(INDIGO_PLATEAU_EXTERIOR), MAP_NUM(INDIGO_PLATEAU_EXTERIOR)},
+ {MAP_GROUP(CERULEAN_CAVE_1F), MAP_NUM(CERULEAN_CAVE_1F), MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY)}
+};
+
+void sub_80CC534(void)
+{
+ u8 i;
+ for (i = 0; i < NELEMS(sInsideOutsidePairs); i++)
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == sInsideOutsidePairs[i].grp && gSaveBlock1Ptr->location.mapNum == sInsideOutsidePairs[i].num)
+ {
+ if (VarGet(VAR_0x404D) != 35 || i != 32)
+ {
+ VarSet(VAR_0x404D, i);
+ FlagSet(FLAG_0x808);
+ }
+ break;
+ }
+ }
+}
+
+void sub_80CC59C(void)
+{
+ s16 x, y;
+ struct {
+ u8 unk0;
+ u8 unk1;
+ } sp0;
+ u16 r5 = VarGet(VAR_0x404D);
+ sp0.unk0 = 0;
+ sp0.unk1 = 0;
+ if (FlagGet(FLAG_0x808))
+ {
+ if (r5 == 5)
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE2_VIRIDIAN_FOREST_SOUTH_ENTRANCE) && (gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE2_VIRIDIAN_FOREST_SOUTH_ENTRANCE) || gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE2_VIRIDIAN_FOREST_NORTH_ENTRANCE)))
+ {
+ sp0.unk0 = MAPSEC_ROUTE_2;
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE2_VIRIDIAN_FOREST_SOUTH_ENTRANCE))
+ sp0.unk1 = r5;
+ else
+ sp0.unk1 = r5 + 1;
+ sub_8113550(35, (void *)&sp0);
+ FlagClear(FLAG_0x808);
+ return;
+ }
+ }
+ else if (r5 == 3)
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE22) && (gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE22) || gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE23)))
+ {
+ sp0.unk0 = get_mapheader_by_bank_and_number(sInsideOutsidePairs[r5].grp, sInsideOutsidePairs[r5].num)->regionMapSectionId;
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE22))
+ sp0.unk1 = r5;
+ else
+ sp0.unk1 = r5 + 1;
+ sub_8113550(35, (void *)&sp0);
+ FlagClear(FLAG_0x808);
+ return;
+ }
+ }
+ if (gSaveBlock1Ptr->location.mapGroup == sInsideOutsidePairs[r5].grp2 && gSaveBlock1Ptr->location.mapNum == sInsideOutsidePairs[r5].num2)
+ {
+ sp0.unk0 = get_mapheader_by_bank_and_number(sInsideOutsidePairs[r5].grp, sInsideOutsidePairs[r5].num)->regionMapSectionId;
+ sp0.unk1 = r5;
+ if (r5 == 22)
+ {
+ PlayerGetDestCoords(&x, &y);
+ if (x != 15 || y != 26)
+ sp0.unk1++;
+ }
+ else if (r5 == 42)
+ {
+ PlayerGetDestCoords(&x, &y);
+ if (x != 67 || y != 15)
+ sp0.unk1++;
+ }
+ sub_8113550(35, (void *)&sp0);
+ FlagClear(FLAG_0x808);
+ if (r5 == 35)
+ {
+ VarSet(VAR_0x404D, 32);
+ FlagSet(FLAG_0x808);
+ }
+ }
+ }
+}
+
+u16 Special_BattleCardAction(void)
+{
+ switch (gSpecialVar_Result)
+ {
+ case 0:
+ return sub_81445C0(3);
+ case 1:
+ return sub_81445C0(4);
+ case 2:
+ return sub_81445C0(0);
+ case 3:
+ return sub_81445C0(1);
+ case 4:
+ return sub_81445C0(2);
+ default:
+ AGB_ASSERT_EX(0, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scr_tool.c", 3873);
+ return 0;
+ }
+}
+
+void set_unknown_box_id(u8 boxId)
+{
+ sUnknownBoxId = boxId;
+}
+
+u16 get_unknown_box_id(void)
+{
+ return sUnknownBoxId;
+}
+
+bool8 sub_80CC7B4(void)
+{
+ if (FlagGet(FLAG_SYS_CHANGED_BOX_TO_STORE_MON))
+ return FALSE;
+ if (StorageGetCurrentBox() == VarGet(VAR_0x4037))
+ return FALSE;
+ FlagSet(FLAG_SYS_CHANGED_BOX_TO_STORE_MON);
+ return TRUE;
+}
+
+bool8 sub_80CC7F8(void)
+{
+ s32 i;
+ s32 j;
+ set_unknown_box_id(VarGet(VAR_0x4037));
+ i = StorageGetCurrentBox();
+ do
+ {
+ for (j = 0; j < IN_BOX_COUNT; j++)
+ {
+ if (GetBoxMonData(GetBoxedMonPtr(i, j), MON_DATA_SPECIES, NULL) == SPECIES_NONE)
+ {
+ if (get_unknown_box_id() != i)
+ FlagClear(FLAG_SYS_CHANGED_BOX_TO_STORE_MON);
+ VarSet(VAR_0x4037, i);
+ return sub_80CC7B4();
+ }
+ }
+ i++;
+ if (i == TOTAL_BOXES_COUNT)
+ i = 0;
+ } while (i != StorageGetCurrentBox());
+ return FALSE;
+}
+
+const u16 sPokeCenter1FMaps[] = {
+ MAP_VIRIDIAN_CITY_POKEMON_CENTER_1F,
+ MAP_PEWTER_CITY_POKEMON_CENTER_1F,
+ MAP_CERULEAN_CITY_POKEMON_CENTER_1F,
+ MAP_LAVENDER_TOWN_POKEMON_CENTER_1F,
+ MAP_VERMILION_CITY_POKEMON_CENTER_1F,
+ MAP_CELADON_CITY_POKEMON_CENTER_1F,
+ MAP_FUCHSIA_CITY_POKEMON_CENTER_1F,
+ MAP_CINNABAR_ISLAND_POKEMON_CENTER_1F,
+ MAP_INDIGO_PLATEAU_POKEMON_CENTER_1F,
+ MAP_SAFFRON_CITY_POKEMON_CENTER_1F,
+ MAP_ROUTE4_POKEMON_CENTER_1F,
+ MAP_ROUTE10_POKEMON_CENTER_1F,
+ MAP_ONE_ISLAND_POKEMON_CENTER_1F,
+ MAP_TWO_ISLAND_POKEMON_CENTER_1F,
+ MAP_THREE_ISLAND_POKEMON_CENTER_1F,
+ MAP_FOUR_ISLAND_POKEMON_CENTER_1F,
+ MAP_FIVE_ISLAND_POKEMON_CENTER_1F,
+ MAP_SEVEN_ISLAND_POKEMON_CENTER_1F,
+ MAP_SIX_ISLAND_POKEMON_CENTER_1F,
+ MAP_UNKNOWN_MAP_00_04,
+ MAP_UNDEFINED
+};
+
+bool8 sub_80CC87C(void)
+{
+ s32 i;
+ u16 mapno = (gUnknown_2031DB4.mapGroup << 8) + gUnknown_2031DB4.mapNum;
+ for (i = 0; sPokeCenter1FMaps[i] != MAP_UNDEFINED; i++)
+ {
+ if (sPokeCenter1FMaps[i] == mapno)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+bool8 Special_ItemIsTM_GetMoveName(void)
+{
+ // 8004 = item ID
+ if (gSpecialVar_0x8004 >= ITEM_TM01 && gSpecialVar_0x8004 <= ITEM_HM08)
+ {
+ StringCopy(gStringVar1, gMoveNames[ItemIdToBattleMoveId(gSpecialVar_0x8004)]);
+ return TRUE;
+ }
+ else
+ return FALSE;
+}
+
+void RunMassageCooldownStepCounter(void)
+{
+ u16 count = VarGet(VAR_MASSAGE_COOLDOWN_STEP_COUNTER);
+ if (count < 500)
+ VarSet(VAR_MASSAGE_COOLDOWN_STEP_COUNTER, count + 1);
+}
+
+void Special_DaisyMassageServices(void)
+{
+ AdjustFriendship(&gPlayerParty[gSpecialVar_0x8004], 6);
+ VarSet(VAR_MASSAGE_COOLDOWN_STEP_COUNTER, 0);
+}
+
+static const u16 sEliteFourLightingPalettes[][16] = {
+ INCBIN_U16("data/field_specials/unk_83F5F50.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F5F70.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F5F90.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F5FB0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F5FD0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F5FF0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6010.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6030.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6050.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6070.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6090.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F60B0.gbapal")
+};
+
+static const u16 sChampionRoomLightingPalettes[][16] = {
+ INCBIN_U16("data/field_specials/unk_83F60D0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F60F0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6110.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6130.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6150.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6170.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6190.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F61B0.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F61D0.gbapal")
+};
+
+static const u8 sEliteFourLightingTimers[] = {
+ 40,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12,
+ 12
+};
+
+static const u8 sChampionRoomLightingTimers[] = {
+ 20,
+ 8,
+ 8,
+ 8,
+ 8,
+ 8,
+ 8,
+ 8
+};
+
+void Special_PokemonLeagueLightingEffect(void)
+{
+ u8 taskId = CreateTask(Task_RunPokemonLeagueLightingEffect, 8);
+ s16 *data = gTasks[taskId].data;
+ if (FlagGet(FLAG_TEMP_3) == TRUE)
+ {
+ gTasks[taskId].func = Task_CancelPokemonLeagueLightingEffect;
+ }
+ else
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
+ {
+ data[0] = sChampionRoomLightingTimers[0];
+ data[2] = 8;
+ LoadPalette(sChampionRoomLightingPalettes[0], 0x70, 0x20);
+ }
+ else
+ {
+ data[0] = sEliteFourLightingTimers[0];
+ data[2] = 11;
+ LoadPalette(sEliteFourLightingPalettes[0], 0x70, 0x20);
+ }
+ data[1] = 0;
+ sub_8059948(7, 1);
+ }
+}
+
+static void Task_RunPokemonLeagueLightingEffect(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (!gPaletteFade.active
+ && FlagGet(FLAG_TEMP_2) != FALSE
+ && FlagGet(FLAG_TEMP_5) != TRUE
+ && gUnknown_2036E28 != 3
+ && --data[0] == 0
+ )
+ {
+ if (++data[1] == data[2])
+ data[1] = 0;
+
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
+ {
+ data[0] = sChampionRoomLightingTimers[data[1]];
+ LoadPalette(sChampionRoomLightingPalettes[data[1]], 0x70, 0x20);
+ }
+ else
+ {
+ data[0] = sEliteFourLightingTimers[data[1]];
+ LoadPalette(sEliteFourLightingPalettes[data[1]], 0x70, 0x20);
+ }
+ sub_8059948(7, 1);
+ }
+}
+
+static void Task_CancelPokemonLeagueLightingEffect(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (FlagGet(FLAG_TEMP_4) != FALSE)
+ {
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
+ {
+ LoadPalette(sChampionRoomLightingPalettes[8], 0x70, 0x20);
+ }
+ else
+ {
+ LoadPalette(sEliteFourLightingPalettes[11], 0x70, 0x20);
+ }
+ sub_8059948(7, 1);
+ if (gPaletteFade.active)
+ {
+ BlendPalettes(0x00000080, 16, RGB_BLACK);
+ }
+ DestroyTask(taskId);
+ }
+}
+
+void StopPokemonLeagueLightingEffectTask(void)
+{
+ if (FuncIsActiveTask(Task_RunPokemonLeagueLightingEffect) == TRUE)
+ {
+ DestroyTask(FindTaskIdByFunc(Task_RunPokemonLeagueLightingEffect));
+ }
+}
+
+static const u8 sCapeBrinkCompatibleSpecies[] = {
+ SPECIES_VENUSAUR,
+ SPECIES_CHARIZARD,
+ SPECIES_BLASTOISE
+};
+
+bool8 Special_CapeBrinkGetMoveToTeachLeadPokemon(void)
+{
+ // Returns:
+ // 8005 = Move tutor index
+ // 8006 = Num moves known by lead mon
+ // 8007 = Index of lead mon
+ // to specialvar = whether a move can be taught in the first place
+ u8 r7 = 0;
+ u8 r6 = 0;
+ u8 r8 = GetLeadMonIndex();
+ u8 r4;
+ gSpecialVar_0x8007 = r8;
+ for (r4 = 0; r4 < NELEMS(sCapeBrinkCompatibleSpecies); r4++)
+ {
+ if (GetMonData(&gPlayerParty[r8], MON_DATA_SPECIES2, NULL) == sCapeBrinkCompatibleSpecies[r4])
+ {
+ r7 = r4;
+ break;
+ }
+ }
+ if (r4 == NELEMS(sCapeBrinkCompatibleSpecies) || GetMonData(&gPlayerParty[r8], MON_DATA_FRIENDSHIP) != 255)
+ return FALSE;
+ if (r7 == 0)
+ {
+ StringCopy(gStringVar2, gMoveNames[MOVE_FRENZY_PLANT]);
+ gSpecialVar_0x8005 = MOVETUTOR_FRENZY_PLANT;
+ if (FlagGet(FLAG_TUTOR_FRENZY_PLANT) == TRUE)
+ return FALSE;
+ }
+ else if (r7 == 1)
+ {
+ StringCopy(gStringVar2, gMoveNames[MOVE_BLAST_BURN]);
+ gSpecialVar_0x8005 = MOVETUTOR_BLAST_BURN;
+ if (FlagGet(FLAG_TUTOR_BLAST_BURN) == TRUE)
+ return FALSE;
+ }
+ else
+ {
+ StringCopy(gStringVar2, gMoveNames[MOVE_HYDRO_CANNON]);
+ gSpecialVar_0x8005 = MOVETUTOR_HYDRO_CANNON;
+ if (FlagGet(FLAG_TUTOR_HYDRO_CANNON) == TRUE)
+ return FALSE;
+ }
+ if (GetMonData(&gPlayerParty[r8], MON_DATA_MOVE1) != MOVE_NONE)
+ r6++;
+ if (GetMonData(&gPlayerParty[r8], MON_DATA_MOVE2) != MOVE_NONE)
+ r6++;
+ if (GetMonData(&gPlayerParty[r8], MON_DATA_MOVE3) != MOVE_NONE)
+ r6++;
+ if (GetMonData(&gPlayerParty[r8], MON_DATA_MOVE4) != MOVE_NONE)
+ r6++;
+ gSpecialVar_0x8006 = r6;
+ return TRUE;
+}
+
+bool8 Special_HasLearnedAllMovesFromCapeBrinkTutor(void)
+{
+ // 8005 is set by Special_CapeBrinkGetMoveToTeachLeadPokemon
+ u8 r4 = 0;
+ if (gSpecialVar_0x8005 == MOVETUTOR_FRENZY_PLANT)
+ FlagSet(FLAG_TUTOR_FRENZY_PLANT);
+ else if (gSpecialVar_0x8005 == MOVETUTOR_BLAST_BURN)
+ FlagSet(FLAG_TUTOR_BLAST_BURN);
+ else
+ FlagSet(FLAG_TUTOR_HYDRO_CANNON);
+ if (FlagGet(FLAG_TUTOR_FRENZY_PLANT) == TRUE)
+ r4++;
+ if (FlagGet(FLAG_TUTOR_BLAST_BURN) == TRUE)
+ r4++;
+ if (FlagGet(FLAG_TUTOR_HYDRO_CANNON) == TRUE)
+ r4++;
+ if (r4 == 3)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 CutMoveRuinValleyCheck(void)
+{
+ if (FlagGet(FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE) != TRUE
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SIX_ISLAND_RUIN_VALLEY)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SIX_ISLAND_RUIN_VALLEY)
+ && gSaveBlock1Ptr->pos.x == 24
+ && gSaveBlock1Ptr->pos.y == 25
+ && GetPlayerFacingDirection() == DIR_NORTH
+ )
+ return TRUE;
+ else
+ return FALSE;
+}
+
+void CutMoveOpenDottedHoleDoor(void)
+{
+ MapGridSetMetatileIdAt(31, 31, 0x358);
+ DrawWholeMapView();
+ PlaySE(SE_BAN);
+ FlagSet(FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE);
+ ScriptContext2_Disable();
+}
+
+static const u16 sDeoxysObjectPals[][16] = {
+ INCBIN_U16("data/field_specials/unk_83F6206.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6226.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6246.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6266.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6286.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F62A6.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F62C6.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F62E6.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6306.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6326.gbapal"),
+ INCBIN_U16("data/field_specials/unk_83F6346.gbapal")
+};
+
+static const u8 sDeoxysCoords[][2] = {
+ {15, 12},
+ {11, 14},
+ {15, 8},
+ {19, 14},
+ {12, 11},
+ {18, 11},
+ {15, 14},
+ {11, 14},
+ {19, 14},
+ {15, 15},
+ {15, 10}
+};
+
+static const u8 sDeoxysStepCaps[] = {
+ 4,
+ 8,
+ 8,
+ 8,
+ 4,
+ 4,
+ 4,
+ 6,
+ 3,
+ 3
+};
+
+void Special_DeoxysSound(void)
+{
+ CreateTask(task_deoxys_sound, 8);
+}
+
+static void task_deoxys_sound(u8 taskId)
+{
+ u16 r5;
+ u16 r6;
+ if (FlagGet(FLAG_SYS_DEOXYS_AWAKENED) == TRUE)
+ {
+ gSpecialVar_Result = 3;
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ }
+ else
+ {
+ r5 = VarGet(VAR_DEOXYS_INTERACTION_NUM);
+ r6 = VarGet(VAR_DEOXYS_INTERACTION_STEP_COUNTER);
+ VarSet(VAR_DEOXYS_INTERACTION_STEP_COUNTER, 0);
+ if (r5 != 0 && sDeoxysStepCaps[r5 - 1] < r6)
+ {
+ MoveDeoxysObject(0);
+ VarSet(VAR_DEOXYS_INTERACTION_NUM, 0);
+ gSpecialVar_Result = 0;
+ DestroyTask(taskId);
+ }
+ else if (r5 == 10)
+ {
+ FlagSet(FLAG_SYS_DEOXYS_AWAKENED);
+ gSpecialVar_Result = 2;
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ }
+ else
+ {
+ r5++;
+ MoveDeoxysObject(r5);
+ VarSet(VAR_DEOXYS_INTERACTION_NUM, r5);
+ gSpecialVar_Result = 1;
+ DestroyTask(taskId);
+ }
+ }
+}
+
+static void MoveDeoxysObject(u8 num)
+{
+ u8 mapObjId;
+ LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08);
+ sub_8083598(10);
+ TryGetFieldObjectIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &mapObjId);
+ if (num == 0)
+ PlaySE(SE_W109);
+ else
+ PlaySE(SE_DEOMOV);
+ CreateTask(Task_WaitDeoxysFieldEffect, 8);
+ gFieldEffectArguments[0] = 1;
+ gFieldEffectArguments[1] = 56;
+ gFieldEffectArguments[2] = 2;
+ gFieldEffectArguments[3] = sDeoxysCoords[num][0];
+ gFieldEffectArguments[4] = sDeoxysCoords[num][1];
+ if (num == 0)
+ gFieldEffectArguments[5] = 60;
+ else
+ gFieldEffectArguments[5] = 5;
+ FieldEffectStart(FLDEFF_UNK_43);
+ Overworld_SetMapObjTemplateCoords(1, sDeoxysCoords[num][0], sDeoxysCoords[num][1]);
+}
+
+static void Task_WaitDeoxysFieldEffect(u8 taskId)
+{
+ if (!FieldEffectActiveListContains(FLDEFF_UNK_43))
+ {
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ }
+}
+
+void BirthIslandDeoxysStepCounter(void)
+{
+ u16 count = VarGet(VAR_DEOXYS_INTERACTION_STEP_COUNTER);
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BIRTH_ISLAND_EXTERIOR) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BIRTH_ISLAND_EXTERIOR))
+ {
+ count++;
+ if (count > 99)
+ VarSet(VAR_DEOXYS_INTERACTION_STEP_COUNTER, 0);
+ else
+ VarSet(VAR_DEOXYS_INTERACTION_STEP_COUNTER, count);
+ }
+}
+
+void Special_SetDeoxysTriangleObjectPal(void)
+{
+ u8 num = VarGet(VAR_DEOXYS_INTERACTION_NUM);
+ LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08);
+ sub_8083598(10);
+}
+
+bool8 Special_BadEggInParty(void)
+{
+ u8 partyCount = CalculatePlayerPartyCount();
+ u8 i;
+ for (i = 0; i < partyCount; i++)
+ {
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SANITY_IS_BAD_EGG) == TRUE)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+bool8 Special_PlayerIsNotInTrainerTowerLobby(void)
+{
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SEVEN_ISLAND_TRAINER_TOWER_LOBBY) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER_LOBBY))
+ return FALSE;
+ else
+ return TRUE;
+}
+
+void Special_BrailleCursorToggle(void)
+{
+ // 8004 = x - 27
+ // 8005 = y
+ // 8006 = action (0 = create, 1 = delete)
+ u16 x;
+ if (gUnknown_203ADFA != 2)
+ {
+ x = gSpecialVar_0x8004 + 27;
+ if (gSpecialVar_0x8006 == 0)
+ sBrailleTextCursorSpriteID = CreateTextCursorSpriteForOakSpeech(0, x, gSpecialVar_0x8005, 0, 0);
+ else
+ sub_8006398(sBrailleTextCursorSpriteID);
+ }
+}
+
+bool8 Special_PlayerPartyContainsSpeciesWithPlayerID(void)
+{
+ // 8004 = species
+ u8 playerCount = CalculatePlayerPartyCount();
+ u8 i;
+ for (i = 0; i < playerCount; i++)
+ {
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) == gSpecialVar_0x8004 && GetPlayerTrainerId() == GetMonData(&gPlayerParty[i], MON_DATA_OT_ID, NULL))
+ return TRUE;
+ }
+ return FALSE;
+}
+
+/*
+ * Determines which of Lorelei's doll collection to show
+ * based on how many times you've entered the Hall of Fame.
+ */
+void Special_ComputeLoreleiDollCollection(void)
+{
+ u32 numHofClears = GetGameStat(GAME_STAT_ENTERED_HOF);
+ if (numHofClears >= 25)
+ {
+ FlagClear(FLAG_HIDE_LORELEI_HOUSE_MEOWTH_DOLL);
+ if (numHofClears >= 50)
+ FlagClear(FLAG_HIDE_LORELEI_HOUSE_CHANSEY_DOLL);
+ if (numHofClears >= 75)
+ FlagClear(FLAG_HIDE_LORELEIS_HOUSE_NIDORAN_F_DOLL);
+ if (numHofClears >= 100)
+ FlagClear(FLAG_HIDE_LORELEI_HOUSE_JIGGLYPUFF_DOLL);
+ if (numHofClears >= 125)
+ FlagClear(FLAG_HIDE_LORELEIS_HOUSE_NIDORAN_M_DOLL);
+ if (numHofClears >= 150)
+ FlagClear(FLAG_HIDE_LORELEIS_HOUSE_FEAROW_DOLL);
+ if (numHofClears >= 175)
+ FlagClear(FLAG_HIDE_LORELEIS_HOUSE_PIDGEOT_DOLL);
+ if (numHofClears >= 200)
+ FlagClear(FLAG_HIDE_LORELEIS_HOUSE_LAPRAS_DOLL);
+ }
+}
+
+void Special_LoopWingFlapSound(void)
+{
+ // 8004 = Num flaps
+ // 8005 = Frame delay between flaps
+ CreateTask(Task_WingFlapSound, 8);
+ PlaySE(SE_W017);
+}
+
+static void Task_WingFlapSound(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ data[1]++;
+ if (data[1] == gSpecialVar_0x8005)
+ {
+ data[0]++;
+ data[1] = 0;
+ PlaySE(SE_W017);
+ }
+ if (data[0] == gSpecialVar_0x8004 - 1)
+ DestroyTask(taskId);
+}
diff --git a/src/item_use.c b/src/item_use.c
index fd247acbb..679a3b8cc 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -396,7 +396,7 @@ void FieldUseFunc_TmCase(u8 taskId)
}
else
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
gTasks[taskId].func = Task_InitTMCaseFromField;
}
@@ -427,7 +427,7 @@ void FieldUseFunc_BerryPouch(u8 taskId)
}
else
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
gTasks[taskId].func = Task_InitBerryPouchFromField;
}
@@ -470,7 +470,7 @@ void FieldUseFunc_TeachyTv(u8 taskId)
}
else
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
gTasks[taskId].func = Task_InitTeachyTvFromField;
}
@@ -600,7 +600,7 @@ void FieldUseFunc_TownMap(u8 taskId)
}
else
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
gTasks[taskId].func = sub_80A1CC0;
}
@@ -632,7 +632,7 @@ void FieldUseFunc_FameChecker(u8 taskId)
}
else
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
gTasks[taskId].func = sub_80A1D68;
}
diff --git a/src/itemfinder.c b/src/itemfinder.c
index e6448a166..05072c49e 100644
--- a/src/itemfinder.c
+++ b/src/itemfinder.c
@@ -17,7 +17,7 @@ static void Task_NoResponse_CleanUp(u8 taskId);
static void Task_ItemfinderResponseSoundsAndAnims(u8 taskId);
static void Task_ItemfinderUnderfootSoundsAndAnims(u8 taskId);
static bool8 HiddenItemIsWithinRangeOfPlayer(struct MapEvents * events, u8 taskId);
-static void SetUnderfootHiddenItem(u8 taskId, struct HiddenItemStruct hiddenItem);
+static void SetUnderfootHiddenItem(u8 taskId, u32 hiddenItem);
static void SetNormalHiddenItem(u8 taskId);
static void FindHiddenItemsInConnectedMaps(u8 taskId);
static void RegisterHiddenItemRelativeCoordsIfCloser(u8 taskId, s16 dx, s16 dy);
@@ -239,7 +239,7 @@ static bool8 HiddenItemIsWithinRangeOfPlayer(struct MapEvents * events, u8 taskI
return FALSE;
}
-static void SetUnderfootHiddenItem(u8 taskId, struct HiddenItemStruct hiddenItem)
+static void SetUnderfootHiddenItem(u8 taskId, u32 hiddenItem)
{
s16 *data = gTasks[taskId].data;
gSpecialVar_0x8004 = GetHiddenItemAttr(hiddenItem, HIDDEN_ITEM_FLAG);
diff --git a/src/mevent.c b/src/mevent.c
index 74dca5a75..dc8df05d0 100644
--- a/src/mevent.c
+++ b/src/mevent.c
@@ -588,7 +588,7 @@ void DestroyWonderCard(void)
ClearRamScript();
sub_806E2D0();
sub_806E370();
- sub_80E7524(gSaveBlock2Ptr->unk_B0.field_3F0);
+ sub_80E7524(&gSaveBlock2Ptr->unk_B0.field_3F0);
}
bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data)
diff --git a/src/mevent_server.c b/src/mevent_server.c
index 4e2b7280d..9fe9e9e79 100644
--- a/src/mevent_server.c
+++ b/src/mevent_server.c
@@ -226,7 +226,7 @@ static u32 ish_mainseq_4(struct mevent_client * svr)
sub_8069EA4(svr->recvBuffer, 1000);
break;
case 18:
- memcpy(gSaveBlock2Ptr->unk_B0.field_3F0, svr->recvBuffer, 0xbc);
+ memcpy(&gSaveBlock2Ptr->unk_B0.field_3F0, svr->recvBuffer, sizeof(struct BattleTowerEReaderTrainer));
ValidateEReaderTrainer();
break;
case 21:
diff --git a/src/mystery_event_script.c b/src/mystery_event_script.c
index 26cbdb145..146595272 100644
--- a/src/mystery_event_script.c
+++ b/src/mystery_event_script.c
@@ -281,7 +281,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx)
bool8 MEScrCmd_addtrainer(struct ScriptContext *ctx)
{
u32 data = ScriptReadWord(ctx) - ctx->data[1] + ctx->data[0];
- memcpy(gSaveBlock2Ptr->unk_B0.field_3F0, (void *)data, 0xBC);
+ memcpy(&gSaveBlock2Ptr->unk_B0.field_3F0, (void *)data, sizeof(struct BattleTowerEReaderTrainer));
ValidateEReaderTrainer();
StringExpandPlaceholders(gStringVar4, gText_MysteryGiftNewTrainer);
ctx->data[2] = 2;
diff --git a/src/player_pc.c b/src/player_pc.c
index bb073e3a6..f454cd07f 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -149,7 +149,7 @@ void NewGameInitPCItems(void)
;
}
-void sub_80EB6AC(void)
+void BedroomPC(void)
{
u8 taskId;
@@ -161,7 +161,7 @@ void sub_80EB6AC(void)
DisplayItemMessageOnField(taskId, 2, gText_WhatWouldYouLikeToDo, Task_DrawPlayerPcTopMenu);
}
-void sub_80EB6FC(void)
+void PlayerPC(void)
{
u8 taskId;
diff --git a/src/prof_pc.c b/src/prof_pc.c
index aeabc8644..d1f06a2ba 100644
--- a/src/prof_pc.c
+++ b/src/prof_pc.c
@@ -36,7 +36,7 @@ u16 Special_GetPokedexCount(void)
return IsNationalPokedexEnabled();
}
-const u8 * sub_80CA424(u16 count)
+static const u8 *GetProfOaksRatingMessageByCount(u16 count)
{
gSpecialVar_Result = FALSE;
@@ -102,7 +102,7 @@ const u8 * sub_80CA424(u16 count)
return gUnknown_81A6D17;
}
-void sub_80CA524(void)
+void Special_GetProfOaksRatingMessage(void)
{
- ShowFieldMessage(sub_80CA424(gSpecialVar_0x8004));
+ ShowFieldMessage(GetProfOaksRatingMessageByCount(gSpecialVar_0x8004));
}
diff --git a/src/quest_log.c b/src/quest_log.c
index 1c951867e..ffced87ee 100644
--- a/src/quest_log.c
+++ b/src/quest_log.c
@@ -2594,7 +2594,7 @@ u8 sub_81131FC(struct Var4038Struct * a0)
return gUnknown_8456940[retval];
}
-u16 sub_8113288(void)
+u16 GetNumMovedSaffronFanClubMembers(void)
{
return sub_81132A0(VAR_0x4038_STRUCT);
}
@@ -2613,7 +2613,7 @@ static u16 sub_81132A0(struct Var4038Struct * a0)
return count;
}
-void sub_81132CC(void)
+void UpdateMovedSaffronFanClubMembers(void)
{
sub_81132E0(VAR_0x4038_STRUCT);
}
@@ -2645,7 +2645,7 @@ static void sub_81132E0(struct Var4038Struct * a0)
}
}
-bool16 sub_8113364(void)
+bool16 ShouldMoveSaffronFanClubMember(void)
{
return sub_811337C(VAR_0x4038_STRUCT);
}
@@ -2662,7 +2662,7 @@ static void sub_8113390(struct Var4038Struct * a0)
a0->unk_1 |= 4;
}
-void sub_81133A4(void)
+void BufferStreakTrainerText(void)
{
u8 r3 = 0;
u8 r2 = 0;
diff --git a/src/start_menu.c b/src/start_menu.c
index 442884c05..221ae1f1f 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -445,7 +445,7 @@ static void StartMenu_FadeScreenIfLeavingOverworld(void)
&& sStartMenuCallback != StartMenuExitCallback
&& sStartMenuCallback != StartMenuSafariZoneRetireCallback)
{
- sub_80CCB68();
+ StopPokemonLeagueLightingEffectTask();
fade_screen(1, 0);
}
}
diff --git a/src/vs_seeker.c b/src/vs_seeker.c
index c0145e22d..6ae92236f 100644
--- a/src/vs_seeker.c
+++ b/src/vs_seeker.c
@@ -1290,7 +1290,7 @@ static u8 GetRematchTrainerIdGivenGameState(const u16 * a0, u8 a1)
return 0;
}
-u8 sub_810CD4C(void)
+u8 ShouldTryRematchBattle(void)
{
if (sub_810CD80(sVsSeekerData, gTrainerBattleOpponent_A))
{
@@ -1364,7 +1364,7 @@ s32 sub_810CE64(u16 a0)
return sVsSeekerData[i].trainerIdxs[j];
}
-u8 sub_810CEB4(void) // unreferenced, or reference not disassembled
+u8 ScrSpecial_GetTrainerEyeRematchFlag(void) // unreferenced, or reference not disassembled
{
return sub_810CED0(sVsSeekerData, gTrainerBattleOpponent_A);
}
diff --git a/sym_common.txt b/sym_common.txt
index 7e3d83488..96ac36e1c 100644
--- a/sym_common.txt
+++ b/sym_common.txt
@@ -120,11 +120,8 @@ gUnknown_3005350: @ 3005350
gUnknown_3005354: @ 3005354
.space 0xC
-gUnknown_3005360: @ 3005360
- .space 0x18
-
-gUnknown_3005378: @ 3005378
- .space 0x4
+ .align 2
+ .include "field_specials.o"
gUnknown_300537C: @ 300537C
.space 0x4
diff --git a/sym_ewram.txt b/sym_ewram.txt
index 85ff1bdb2..1d7f2aaec 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -847,27 +847,10 @@ gAIScriptPtr: @ 2039A00
gPlayerFacingPosition: @ 2039A04
.space 0x8
-gUnknown_2039A0C: @ 2039A0C
- .space 0x2
-
-gUnknown_2039A0E: @ 2039A0E
- .space 0x2
-
-gUnknown_2039A10: @ 2039A10
- .space 0x4
-
-gUnknown_2039A14: @ 2039A14
- .space 0x4
-
-gUnknown_2039A18: @ 2039A18
- .space 0x2
-
-gUnknown_2039A1A: @ 2039A1A
- .space 0x1
-
-gUnknown_2039A1B: @ 2039A1B
- .space 0x1
+ .align 2
+ .include "src/field_specials.o"
+ .align 2
.include "src/battle_records.o"
gUnknown_2039A20: @ 2039A20