summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/cable_club.s2528
-rw-r--r--asm/event_object_movement.s18
-rw-r--r--asm/field_camera.s24
-rw-r--r--asm/field_effect.s9666
-rw-r--r--asm/field_effect_helpers.s30
-rw-r--r--asm/field_player_avatar.s4
-rw-r--r--asm/field_weather.s12
-rw-r--r--asm/overworld.s48
-rw-r--r--asm/pokemon_storage_system.s2
-rw-r--r--common_syms/cable_club.txt1
-rw-r--r--data/cable_club.s15
-rw-r--r--data/event_object_movement.s4
-rw-r--r--data/event_scripts.s2
-rw-r--r--data/field_effect.s432
-rw-r--r--data/field_effect_scripts.s40
-rw-r--r--data/maps/FiveIsland/map.json6
-rw-r--r--data/maps/FiveIsland/scripts.inc12
-rw-r--r--data/maps/FiveIsland/text.inc6
-rw-r--r--data/maps/FiveIsland_Harbor/map.json2
-rw-r--r--data/maps/FiveIsland_Harbor/scripts.inc2
-rw-r--r--data/maps/FiveIsland_House1/map.json2
-rw-r--r--data/maps/FiveIsland_House1/scripts.inc4
-rw-r--r--data/maps/FiveIsland_House1/text.inc4
-rw-r--r--data/maps/FiveIsland_House2/map.json2
-rw-r--r--data/maps/FiveIsland_House2/scripts.inc4
-rw-r--r--data/maps/FiveIsland_House2/text.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room1/map.json2
-rw-r--r--data/maps/FiveIsland_LostCave_Room1/scripts.inc6
-rw-r--r--data/maps/FiveIsland_LostCave_Room1/text.inc6
-rw-r--r--data/maps/FiveIsland_LostCave_Room10/scripts.inc32
-rw-r--r--data/maps/FiveIsland_LostCave_Room10/text.inc6
-rw-r--r--data/maps/FiveIsland_LostCave_Room4/map.json2
-rw-r--r--data/maps/FiveIsland_LostCave_Room4/scripts.inc6
-rw-r--r--data/maps/FiveIsland_LostCave_Room4/text.inc6
-rw-r--r--data/maps/FiveIsland_Meadow/map.json8
-rw-r--r--data/maps/FiveIsland_Meadow/scripts.inc42
-rw-r--r--data/maps/FiveIsland_Meadow/text.inc39
-rw-r--r--data/maps/FiveIsland_MemorialPillar/map.json10
-rw-r--r--data/maps/FiveIsland_MemorialPillar/scripts.inc66
-rw-r--r--data/maps/FiveIsland_MemorialPillar/text.inc42
-rw-r--r--data/maps/FiveIsland_PokemonCenter_1F/map.json10
-rw-r--r--data/maps/FiveIsland_PokemonCenter_1F/scripts.inc10
-rw-r--r--data/maps/FiveIsland_PokemonCenter_1F/text.inc4
-rw-r--r--data/maps/FiveIsland_ResortGorgeous/map.json16
-rw-r--r--data/maps/FiveIsland_ResortGorgeous/scripts.inc24
-rw-r--r--data/maps/FiveIsland_ResortGorgeous/text.inc46
-rw-r--r--data/maps/FiveIsland_ResortGorgeous_House/map.json4
-rw-r--r--data/maps/FiveIsland_ResortGorgeous_House/scripts.inc126
-rw-r--r--data/maps/FiveIsland_ResortGorgeous_House/text.inc24
-rw-r--r--data/maps/FiveIsland_WaterLabyrinth/map.json4
-rw-r--r--data/maps/FiveIsland_WaterLabyrinth/scripts.inc60
-rw-r--r--data/maps/FiveIsland_WaterLabyrinth/text.inc28
-rw-r--r--data/maps/FourIsland/map.json10
-rw-r--r--data/maps/FourIsland/scripts.inc70
-rw-r--r--data/maps/FourIsland/text.inc14
-rw-r--r--data/maps/FourIsland_Harbor/map.json2
-rw-r--r--data/maps/FourIsland_Harbor/scripts.inc2
-rw-r--r--data/maps/FourIsland_House1/map.json2
-rw-r--r--data/maps/FourIsland_House1/scripts.inc4
-rw-r--r--data/maps/FourIsland_House1/text.inc13
-rw-r--r--data/maps/FourIsland_House2/map.json2
-rw-r--r--data/maps/FourIsland_LoreleisHouse/map.json30
-rw-r--r--data/maps/FourIsland_LoreleisHouse/scripts.inc20
-rw-r--r--data/maps/FourIsland_LoreleisHouse/text.inc8
-rw-r--r--data/maps/FourIsland_Mart/map.json6
-rw-r--r--data/maps/FourIsland_Mart/scripts.inc10
-rw-r--r--data/maps/FourIsland_Mart/text.inc4
-rw-r--r--data/maps/FourIsland_PokemonCenter_1F/map.json12
-rw-r--r--data/maps/FourIsland_PokemonCenter_1F/scripts.inc14
-rw-r--r--data/maps/FourIsland_PokemonCenter_1F/text.inc9
-rw-r--r--data/maps/PalletTown_GarysHouse/scripts.inc2
-rw-r--r--data/maps/SevenIsland/map.json6
-rw-r--r--data/maps/SevenIsland/scripts.inc12
-rw-r--r--data/maps/SevenIsland/text.inc6
-rw-r--r--data/maps/SevenIsland_Harbor/map.json2
-rw-r--r--data/maps/SevenIsland_Harbor/scripts.inc2
-rw-r--r--data/maps/SevenIsland_House_Room1/map.json4
-rw-r--r--data/maps/SevenIsland_House_Room1/scripts.inc138
-rw-r--r--data/maps/SevenIsland_House_Room1/text.inc31
-rw-r--r--data/maps/SevenIsland_House_Room2/scripts.inc28
-rw-r--r--data/maps/SevenIsland_Mart/map.json8
-rw-r--r--data/maps/SevenIsland_Mart/scripts.inc18
-rw-r--r--data/maps/SevenIsland_Mart/text.inc6
-rw-r--r--data/maps/SevenIsland_PokemonCenter_1F/map.json12
-rw-r--r--data/maps/SevenIsland_PokemonCenter_1F/scripts.inc14
-rw-r--r--data/maps/SevenIsland_PokemonCenter_1F/text.inc6
-rw-r--r--data/maps/SevenIsland_SevaultCanyon/map.json20
-rw-r--r--data/maps/SevenIsland_SevaultCanyon/scripts.inc4
-rw-r--r--data/maps/SevenIsland_SevaultCanyon/text.inc56
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_Entrance/map.json14
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc4
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_Entrance/text.inc50
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_House/map.json4
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_House/scripts.inc36
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_House/text.inc12
-rw-r--r--data/maps/SevenIsland_TrainerTower/map.json8
-rw-r--r--data/maps/SevenIsland_TrainerTower/scripts.inc8
-rw-r--r--data/maps/SevenIsland_TrainerTower/text.inc90
-rw-r--r--data/maps/SixIsland/map.json6
-rw-r--r--data/maps/SixIsland/scripts.inc12
-rw-r--r--data/maps/SixIsland/text.inc6
-rw-r--r--data/maps/SixIsland_GreenPath/map.json6
-rw-r--r--data/maps/SixIsland_GreenPath/scripts.inc8
-rw-r--r--data/maps/SixIsland_GreenPath/text.inc83
-rw-r--r--data/maps/SixIsland_Harbor/map.json2
-rw-r--r--data/maps/SixIsland_Harbor/scripts.inc2
-rw-r--r--data/maps/SixIsland_House/map.json2
-rw-r--r--data/maps/SixIsland_House/scripts.inc4
-rw-r--r--data/maps/SixIsland_House/text.inc2
-rw-r--r--data/maps/SixIsland_Mart/map.json6
-rw-r--r--data/maps/SixIsland_Mart/scripts.inc10
-rw-r--r--data/maps/SixIsland_Mart/text.inc4
-rw-r--r--data/maps/SixIsland_OutcastIsland/map.json12
-rw-r--r--data/maps/SixIsland_OutcastIsland/scripts.inc6
-rw-r--r--data/maps/SixIsland_OutcastIsland/text.inc78
-rw-r--r--data/maps/SixIsland_PatternBush/map.json24
-rw-r--r--data/maps/SixIsland_PatternBush/scripts.inc80
-rw-r--r--data/maps/SixIsland_PatternBush/text.inc72
-rw-r--r--data/maps/SixIsland_PokemonCenter_1F/map.json6
-rw-r--r--data/maps/SixIsland_PokemonCenter_1F/scripts.inc42
-rw-r--r--data/maps/SixIsland_PokemonCenter_1F/text.inc6
-rw-r--r--data/maps/SixIsland_RuinValley/map.json14
-rw-r--r--data/maps/SixIsland_RuinValley/scripts.inc30
-rw-r--r--data/maps/SixIsland_RuinValley/text.inc76
-rw-r--r--data/maps/SixIsland_WaterPath/map.json18
-rw-r--r--data/maps/SixIsland_WaterPath/scripts.inc8
-rw-r--r--data/maps/SixIsland_WaterPath/text.inc50
-rw-r--r--data/maps/SixIsland_WaterPath_House1/map.json4
-rw-r--r--data/maps/SixIsland_WaterPath_House1/scripts.inc66
-rw-r--r--data/maps/SixIsland_WaterPath_House1/text.inc74
-rw-r--r--data/maps/SixIsland_WaterPath_House2/map.json2
-rw-r--r--data/maps/SixIsland_WaterPath_House2/scripts.inc4
-rw-r--r--data/maps/SixIsland_WaterPath_House2/text.inc2
-rw-r--r--data/maps/ThreeIsland/map.json46
-rw-r--r--data/maps/ThreeIsland/scripts.inc343
-rw-r--r--data/maps/ThreeIsland/text.inc66
-rw-r--r--data/maps/ThreeIsland_BerryForest/map.json6
-rw-r--r--data/maps/ThreeIsland_BerryForest/scripts.inc30
-rw-r--r--data/maps/ThreeIsland_BerryForest/text.inc14
-rw-r--r--data/maps/ThreeIsland_BondBridge/map.json18
-rw-r--r--data/maps/ThreeIsland_BondBridge/scripts.inc8
-rw-r--r--data/maps/ThreeIsland_BondBridge/text.inc50
-rw-r--r--data/maps/ThreeIsland_Harbor/map.json2
-rw-r--r--data/maps/ThreeIsland_Harbor/scripts.inc2
-rw-r--r--data/maps/ThreeIsland_House1/map.json4
-rw-r--r--data/maps/ThreeIsland_House1/scripts.inc8
-rw-r--r--data/maps/ThreeIsland_House1/text.inc4
-rw-r--r--data/maps/ThreeIsland_House2/map.json4
-rw-r--r--data/maps/ThreeIsland_House2/scripts.inc8
-rw-r--r--data/maps/ThreeIsland_House2/text.inc4
-rw-r--r--data/maps/ThreeIsland_House3/map.json2
-rw-r--r--data/maps/ThreeIsland_House3/scripts.inc4
-rw-r--r--data/maps/ThreeIsland_House3/text.inc2
-rw-r--r--data/maps/ThreeIsland_House4/map.json4
-rw-r--r--data/maps/ThreeIsland_House4/scripts.inc8
-rw-r--r--data/maps/ThreeIsland_House4/text.inc4
-rw-r--r--data/maps/ThreeIsland_House5/map.json2
-rw-r--r--data/maps/ThreeIsland_House5/scripts.inc10
-rw-r--r--data/maps/ThreeIsland_House5/text.inc4
-rw-r--r--data/maps/ThreeIsland_Mart/map.json8
-rw-r--r--data/maps/ThreeIsland_Mart/scripts.inc18
-rw-r--r--data/maps/ThreeIsland_Mart/text.inc6
-rw-r--r--data/maps/ThreeIsland_PokemonCenter_1F/map.json8
-rw-r--r--data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc14
-rw-r--r--data/maps/ThreeIsland_PokemonCenter_1F/text.inc6
-rw-r--r--data/maps/ThreeIsland_Port/map.json6
-rw-r--r--data/maps/ThreeIsland_Port/scripts.inc24
-rw-r--r--data/maps/ThreeIsland_Port/text.inc10
-rw-r--r--data/maps/TwoIsland_CapeBrink_House/text.inc53
-rw-r--r--data/maps/VermilionCity_House3/map.json8
-rw-r--r--data/maps/VermilionCity_House3/scripts.inc16
-rw-r--r--data/maps/VermilionCity_House3/text.inc8
-rw-r--r--data/scripts/fame_checker.inc24
-rw-r--r--data/scripts/trainer_card.inc336
-rw-r--r--data/scripts/trainers.inc744
-rw-r--r--data/specials.inc18
-rw-r--r--data/text/fame_checker.inc6
-rw-r--r--data/text/trainer_card.inc60
-rw-r--r--data/text/trainers.inc104
-rw-r--r--graphics/trainer_card/back.bin (renamed from graphics/trainer_card/unk_83CC984.bin)bin300 -> 300 bytes
-rw-r--r--graphics/trainer_card/back_hoenn.bin (renamed from graphics/trainer_card/unk_83CC8A8.bin)bin220 -> 220 bytes
-rw-r--r--graphics/trainer_card/bg.bin (renamed from graphics/trainer_card/unk_83CCEC8.bin)bin184 -> 184 bytes
-rw-r--r--graphics/trainer_card/bg_hoenn.bin (renamed from graphics/trainer_card/unk_83CCE30.bin)bin152 -> 152 bytes
-rw-r--r--graphics/trainer_card/front.bin (renamed from graphics/trainer_card/unk_83CC6F0.bin)bin440 -> 440 bytes
-rw-r--r--graphics/trainer_card/front_hoenn.bin (renamed from graphics/trainer_card/unk_83CC4DC.bin)bin532 -> 532 bytes
-rw-r--r--graphics/trainer_card/front_hoenn_link.bin (renamed from graphics/trainer_card/unk_83CCAB0.bin)bin500 -> 500 bytes
-rw-r--r--graphics/trainer_card/front_link.bin (renamed from graphics/trainer_card/unk_83CCCA4.bin)bin396 -> 396 bytes
-rw-r--r--graphics/trainer_card/gold.pal (renamed from graphics/trainer_card/unk_83CD300.pal)0
-rw-r--r--include/battle_records.h1
-rw-r--r--include/cable_club.h4
-rw-r--r--include/constants/event_object_movement.h2
-rw-r--r--include/constants/facility_trainer_classes.h8
-rw-r--r--include/constants/field_effects.h4
-rw-r--r--include/constants/flags.h5
-rw-r--r--include/constants/metatile_labels.h8
-rw-r--r--include/constants/trainer_card.h17
-rw-r--r--include/data.h2
-rw-r--r--include/event_object_movement.h6
-rw-r--r--include/event_scripts.h6
-rw-r--r--include/field_camera.h7
-rw-r--r--include/field_control_avatar.h1
-rw-r--r--include/field_effect.h16
-rw-r--r--include/field_effect_helpers.h1
-rw-r--r--include/field_effect_scripts.h6
-rw-r--r--include/field_fadetransition.h5
-rw-r--r--include/field_message_box.h1
-rw-r--r--include/field_player_avatar.h1
-rw-r--r--include/field_screen_effect.h1
-rw-r--r--include/field_weather.h3
-rw-r--r--include/fldeff.h2
-rw-r--r--include/global.fieldmap.h11
-rw-r--r--include/graphics.h8
-rw-r--r--include/link.h12
-rw-r--r--include/overworld.h16
-rw-r--r--include/quest_log.h5
-rw-r--r--include/special_field_anim.h2
-rw-r--r--include/strings.h7
-rw-r--r--include/trainer_card.h23
-rw-r--r--include/trainer_pokemon_sprites.h2
-rw-r--r--include/union_room.h1
-rw-r--r--ld_script.txt8
-rw-r--r--src/battle_controller_link_opponent.c8
-rw-r--r--src/battle_records.c6
-rw-r--r--src/battle_tower.c16
-rw-r--r--src/cable_club.c964
-rw-r--r--src/data/pokemon/trainer_class_lookups.h16
-rw-r--r--src/data/pokemon_graphics/palette_table.h3
-rw-r--r--src/field_effect.c3907
-rw-r--r--src/field_fadetransition.c70
-rw-r--r--src/field_screen_effect.c2
-rw-r--r--src/field_specials.c21
-rw-r--r--src/fldeff_rocksmash.c6
-rw-r--r--src/fldeff_strength.c14
-rw-r--r--src/graphics.c8
-rw-r--r--src/item_use.c6
-rw-r--r--src/link.c8
-rw-r--r--src/main.c6
-rw-r--r--src/map_preview_screen.c2
-rw-r--r--src/party_menu.c15
-rw-r--r--src/player_pc.c8
-rw-r--r--src/quest_log.c2
-rw-r--r--src/quest_log_player.c6
-rw-r--r--src/region_map.c2
-rw-r--r--src/script_menu.c8
-rw-r--r--src/seagallop.c2
-rw-r--r--src/shop.c2
-rw-r--r--src/trainer_card.c1132
-rw-r--r--src/trainer_pokemon_sprites.c2
-rw-r--r--src/union_room.c27
-rw-r--r--src/vs_seeker.c4
-rw-r--r--sym_bss.txt4
-rw-r--r--sym_common.txt9
252 files changed, 8088 insertions, 15695 deletions
diff --git a/asm/cable_club.s b/asm/cable_club.s
deleted file mode 100644
index 92f14461a..000000000
--- a/asm/cable_club.s
+++ /dev/null
@@ -1,2528 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8080748
-sub_8080748: @ 8080748
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r4, _08080784 @ =sub_80809F8
- adds r0, r4, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _0808077C
- adds r0, r4, 0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08080788 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r6, [r1, 0xA]
- strh r5, [r1, 0xC]
-_0808077C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08080784: .4byte sub_80809F8
-_08080788: .4byte gTasks
- thumb_func_end sub_8080748
-
- thumb_func_start sub_808078C
-sub_808078C: @ 808078C
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, _080807DC @ =gStringVar1
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl SetStdWindowBorderStyle
- ldr r5, _080807E0 @ =gStringVar4
- ldr r1, _080807E4 @ =gUnknown_841DF82
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r1, 0
- str r1, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- adds r0, r4, 0
- movs r1, 0x2
- adds r2, r5, 0
- movs r3, 0
- bl AddTextPrinterParameterized
- adds r0, r4, 0
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080807DC: .4byte gStringVar1
-_080807E0: .4byte gStringVar4
-_080807E4: .4byte gUnknown_841DF82
- thumb_func_end sub_808078C
-
- thumb_func_start sub_80807E8
-sub_80807E8: @ 80807E8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl ClearStdWindowAndFrame
- adds r0, r4, 0
- movs r1, 0x3
- bl CopyWindowToVram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80807E8
-
- thumb_func_start sub_8080808
-sub_8080808: @ 8080808
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08080830 @ =gTasks+0x8
- adds r4, r1, r0
- movs r1, 0x6
- ldrsh r0, [r4, r1]
- cmp r5, r0
- beq _0808083E
- cmp r5, 0x1
- bhi _08080834
- ldrh r0, [r4, 0xA]
- bl sub_80807E8
- b _0808083C
- .align 2, 0
-_08080830: .4byte gTasks+0x8
-_08080834:
- ldrh r0, [r4, 0xA]
- adds r1, r5, 0
- bl sub_808078C
-_0808083C:
- strh r5, [r4, 0x6]
-_0808083E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8080808
-
- thumb_func_start sub_8080844
-sub_8080844: @ 8080844
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- bl GetLinkPlayerDataExchangeStatusTimed
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x5
- bhi _080808B4
- lsls r0, 2
- ldr r1, _08080868 @ =_0808086C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08080868: .4byte _0808086C
- .align 2, 0
-_0808086C:
- .4byte _08080884
- .4byte _080808B4
- .4byte _08080888
- .4byte _0808088C
- .4byte _08080890
- .4byte _08080894
-_08080884:
- movs r0, 0x1
- b _080808B6
-_08080888:
- movs r0, 0x3
- b _080808B6
-_0808088C:
- movs r0, 0x7
- b _080808B6
-_08080890:
- movs r0, 0x9
- b _080808B6
-_08080894:
- ldr r4, _080808B0 @ =gStringVar1
- bl GetLinkPlayerCount_2
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- movs r0, 0x4
- b _080808B6
- .align 2, 0
-_080808B0: .4byte gStringVar1
-_080808B4:
- movs r0, 0
-_080808B6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8080844
-
- thumb_func_start sub_80808BC
-sub_80808BC: @ 80808BC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl HasLinkErrorOccurred
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080808D2
- movs r0, 0
- b _080808E2
-_080808D2:
- ldr r0, _080808E8 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _080808EC @ =sub_8080FF0
- str r0, [r1]
- movs r0, 0x1
-_080808E2:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080808E8: .4byte gTasks
-_080808EC: .4byte sub_8080FF0
- thumb_func_end sub_80808BC
-
- thumb_func_start sub_80808F0
-sub_80808F0: @ 80808F0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08080924 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08080934
- bl IsLinkConnectionEstablished
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _08080934
- ldr r0, _08080928 @ =gLinkType
- strh r1, [r0]
- ldr r1, _0808092C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08080930 @ =sub_8080FB4
- str r1, [r0]
- movs r0, 0x1
- b _08080936
- .align 2, 0
-_08080924: .4byte gMain
-_08080928: .4byte gLinkType
-_0808092C: .4byte gTasks
-_08080930: .4byte sub_8080FB4
-_08080934:
- movs r0, 0
-_08080936:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80808F0
-
- thumb_func_start sub_808093C
-sub_808093C: @ 808093C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsLinkConnectionEstablished
- lsls r0, 24
- cmp r0, 0
- beq _08080952
- movs r0, 0x1
- bl SetSuppressLinkErrorMessage
-_08080952:
- ldr r0, _08080964 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08080968
- movs r0, 0
- b _0808097E
- .align 2, 0
-_08080964: .4byte gMain
-_08080968:
- ldr r1, _08080984 @ =gLinkType
- movs r0, 0
- strh r0, [r1]
- ldr r1, _08080988 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808098C @ =sub_8080FB4
- str r1, [r0]
- movs r0, 0x1
-_0808097E:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08080984: .4byte gLinkType
-_08080988: .4byte gTasks
-_0808098C: .4byte sub_8080FB4
- thumb_func_end sub_808093C
-
- thumb_func_start sub_8080990
-sub_8080990: @ 8080990
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl GetSioMultiSI
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080809A6
- movs r0, 0
- b _080809B6
-_080809A6:
- ldr r0, _080809BC @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _080809C0 @ =sub_8080FF0
- str r0, [r1]
- movs r0, 0x1
-_080809B6:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080809BC: .4byte gTasks
-_080809C0: .4byte sub_8080FF0
- thumb_func_end sub_8080990
-
- thumb_func_start sub_80809C4
-sub_80809C4: @ 80809C4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080809F4 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bne _080809EE
- movs r0, 0x2
- bl sub_800A474
- adds r0, r4, 0
- bl DestroyTask
-_080809EE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080809F4: .4byte gTasks
- thumb_func_end sub_80809C4
-
- thumb_func_start sub_80809F8
-sub_80809F8: @ 80809F8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08080A28 @ =gTasks+0x8
- adds r4, r1, r0
- movs r3, 0
- ldrsh r2, [r4, r3]
- cmp r2, 0
- bne _08080A30
- bl OpenLinkTimed
- bl sub_800AA24
- bl ResetLinkPlayers
- ldr r0, _08080A2C @ =gUnknown_83C6AB0
- bl AddWindow
- strh r0, [r4, 0xA]
- b _08080A3C
- .align 2, 0
-_08080A28: .4byte gTasks+0x8
-_08080A2C: .4byte gUnknown_83C6AB0
-_08080A30:
- cmp r2, 0x9
- ble _08080A3C
- subs r0, 0x8
- adds r0, r1, r0
- ldr r1, _08080A48 @ =sub_8080A4C
- str r1, [r0]
-_08080A3C:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08080A48: .4byte sub_8080A4C
- thumb_func_end sub_80809F8
-
- thumb_func_start sub_8080A4C
-sub_8080A4C: @ 8080A4C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl GetLinkPlayerCount_2
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- bl sub_80808F0
- cmp r0, 0x1
- beq _08080AC0
- adds r0, r4, 0
- bl sub_808093C
- cmp r0, 0x1
- beq _08080AC0
- cmp r5, 0x1
- bls _08080AC0
- movs r0, 0x1
- bl SetSuppressLinkErrorMessage
- ldr r1, _08080AA4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r4, r0, r1
- movs r0, 0
- strh r0, [r4, 0xE]
- bl IsLinkMaster
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08080AB0
- movs r0, 0x15
- bl PlaySE
- ldr r0, _08080AA8 @ =CableClub_Text_WhenAllPlayersReadyAConfirmBCancel
- bl ShowFieldAutoScrollMessage
- ldr r0, _08080AAC @ =sub_8080AD0
- b _08080ABE
- .align 2, 0
-_08080AA4: .4byte gTasks
-_08080AA8: .4byte CableClub_Text_WhenAllPlayersReadyAConfirmBCancel
-_08080AAC: .4byte sub_8080AD0
-_08080AB0:
- movs r0, 0x16
- bl PlaySE
- ldr r0, _08080AC8 @ =CableClub_Text_AwaitingLinkupBCancel
- bl ShowFieldAutoScrollMessage
- ldr r0, _08080ACC @ =sub_8080CDC
-_08080ABE:
- str r0, [r4]
-_08080AC0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08080AC8: .4byte CableClub_Text_AwaitingLinkupBCancel
-_08080ACC: .4byte sub_8080CDC
- thumb_func_end sub_8080A4C
-
- thumb_func_start sub_8080AD0
-sub_8080AD0: @ 8080AD0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80808F0
- cmp r0, 0x1
- beq _08080B10
- adds r0, r4, 0
- bl sub_8080990
- cmp r0, 0x1
- beq _08080B10
- adds r0, r4, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080B10
- bl textbox_any_visible
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _08080B10
- ldr r0, _08080B18 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- strh r2, [r1, 0xE]
- ldr r0, _08080B1C @ =sub_8080B20
- str r0, [r1]
-_08080B10:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08080B18: .4byte gTasks
-_08080B1C: .4byte sub_8080B20
- thumb_func_end sub_8080AD0
-
- thumb_func_start sub_8080B20
-sub_8080B20: @ 8080B20
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- mov r8, r0
- ldr r0, _08080BB4 @ =gTasks+0x8
- mov r9, r0
- mov r7, r8
- add r7, r9
- bl GetLinkPlayerCount_2
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- bl sub_80808F0
- cmp r0, 0x1
- beq _08080BA8
- adds r0, r4, 0
- bl sub_8080990
- cmp r0, 0x1
- beq _08080BA8
- adds r0, r4, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080BA8
- adds r6, r5, 0
- adds r0, r4, 0
- adds r1, r6, 0
- bl sub_8080808
- ldr r0, _08080BB8 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08080BA8
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- cmp r5, r0
- blt _08080BA8
- adds r0, r6, 0
- bl sub_800A900
- ldrh r0, [r7, 0xA]
- bl sub_80807E8
- ldr r0, _08080BBC @ =gStringVar1
- adds r1, r5, 0
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- ldr r0, _08080BC0 @ =CableClub_Text_StartLinkWithXPlayersAConfirmBCancel
- bl ShowFieldAutoScrollMessage
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, _08080BC4 @ =sub_8080BC8
- str r1, [r0]
-_08080BA8:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08080BB4: .4byte gTasks+0x8
-_08080BB8: .4byte gMain
-_08080BBC: .4byte gStringVar1
-_08080BC0: .4byte CableClub_Text_StartLinkWithXPlayersAConfirmBCancel
-_08080BC4: .4byte sub_8080BC8
- thumb_func_end sub_8080B20
-
- thumb_func_start sub_8080BC8
-sub_8080BC8: @ 8080BC8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- adds r0, r5, 0
- bl sub_80808F0
- cmp r0, 0x1
- beq _08080C5C
- adds r0, r5, 0
- bl sub_8080990
- cmp r0, 0x1
- beq _08080C5C
- adds r0, r5, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080C5C
- bl textbox_any_visible
- lsls r0, 24
- cmp r0, 0
- bne _08080C5C
- bl GetSavedPlayerCount
- adds r4, r0, 0
- bl GetLinkPlayerCount_2
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _08080C16
- ldr r0, _08080C2C @ =gMain
- ldrh r1, [r0, 0x2C]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08080C3C
-_08080C16:
- ldr r0, _08080C30 @ =CableClub_Text_WhenAllPlayersReadyAConfirmBCancel
- bl ShowFieldAutoScrollMessage
- ldr r1, _08080C34 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08080C38 @ =sub_8080AD0
- str r1, [r0]
- b _08080C5C
- .align 2, 0
-_08080C2C: .4byte gMain
-_08080C30: .4byte CableClub_Text_WhenAllPlayersReadyAConfirmBCancel
-_08080C34: .4byte gTasks
-_08080C38: .4byte sub_8080AD0
-_08080C3C:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08080C5C
- movs r0, 0x5
- bl PlaySE
- bl CheckShouldAdvanceLinkState
- ldr r0, _08080C64 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _08080C68 @ =sub_8080C6C
- str r0, [r1]
-_08080C5C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08080C64: .4byte gTasks
-_08080C68: .4byte sub_8080C6C
- thumb_func_end sub_8080BC8
-
- thumb_func_start sub_8080C6C
-sub_8080C6C: @ 8080C6C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _08080CB0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- ldrb r7, [r5, 0xA]
- ldrb r6, [r5, 0xC]
- adds r0, r4, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080CCE
- adds r0, r4, 0
- bl sub_808102C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08080CCE
- bl GetLinkPlayerCount_2
- adds r4, r0, 0
- bl GetSavedPlayerCount
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _08080CB8
- ldr r0, _08080CB4 @ =sub_8080FF0
- b _08080CCC
- .align 2, 0
-_08080CB0: .4byte gTasks
-_08080CB4: .4byte sub_8080FF0
-_08080CB8:
- ldr r4, _08080CD4 @ =gSpecialVar_Result
- adds r0, r7, 0
- adds r1, r6, 0
- bl sub_8080844
- strh r0, [r4]
- lsls r0, 16
- cmp r0, 0
- beq _08080CCE
- ldr r0, _08080CD8 @ =sub_8080DC0
-_08080CCC:
- str r0, [r5]
-_08080CCE:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08080CD4: .4byte gSpecialVar_Result
-_08080CD8: .4byte sub_8080DC0
- thumb_func_end sub_8080C6C
-
- thumb_func_start sub_8080CDC
-sub_8080CDC: @ 8080CDC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _08080D30 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- ldrb r7, [r5, 0xA]
- ldrb r6, [r5, 0xC]
- adds r0, r4, 0
- bl sub_80808F0
- cmp r0, 0x1
- beq _08080D74
- adds r0, r4, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080D74
- ldr r4, _08080D34 @ =gSpecialVar_Result
- adds r0, r7, 0
- adds r1, r6, 0
- bl sub_8080844
- adds r1, r0, 0
- strh r1, [r4]
- lsls r0, r1, 16
- lsrs r2, r0, 16
- cmp r2, 0
- beq _08080D74
- subs r0, r1, 0x3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _08080D3C
- bl Link_TryStartSend5FFF
- bl HideFieldMessageBox
- ldr r0, _08080D38 @ =sub_8080F78
- b _08080D72
- .align 2, 0
-_08080D30: .4byte gTasks
-_08080D34: .4byte gSpecialVar_Result
-_08080D38: .4byte sub_8080F78
-_08080D3C:
- cmp r2, 0x7
- beq _08080D44
- cmp r2, 0x9
- bne _08080D54
-_08080D44:
- bl CloseLink
- bl HideFieldMessageBox
- ldr r0, _08080D50 @ =sub_8080F78
- b _08080D72
- .align 2, 0
-_08080D50: .4byte sub_8080F78
-_08080D54:
- bl GetLinkPlayerCount_2
- ldr r4, _08080D7C @ =gFieldLinkPlayerCount
- strb r0, [r4]
- bl GetMultiplayerId
- ldr r1, _08080D80 @ =gLocalLinkPlayerId
- strb r0, [r1]
- ldrb r0, [r4]
- bl sub_800A900
- ldr r0, _08080D84 @ =gBlockSendBuffer
- bl TrainerCard_GenerateCardForLinkPlayer
- ldr r0, _08080D88 @ =sub_8080E6C
-_08080D72:
- str r0, [r5]
-_08080D74:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08080D7C: .4byte gFieldLinkPlayerCount
-_08080D80: .4byte gLocalLinkPlayerId
-_08080D84: .4byte gBlockSendBuffer
-_08080D88: .4byte sub_8080E6C
- thumb_func_end sub_8080CDC
-
- thumb_func_start sub_8080D8C
-sub_8080D8C: @ 8080D8C
- push {r4,r5,lr}
- movs r5, 0
- ldr r4, _08080D94 @ =gLinkPlayers
- b _08080DAC
- .align 2, 0
-_08080D94: .4byte gLinkPlayers
-_08080D98:
- ldrb r0, [r4]
- subs r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _08080DA8
- movs r0, 0x1
- b _08080DBA
-_08080DA8:
- adds r4, 0x1C
- adds r5, 0x1
-_08080DAC:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r0
- blt _08080D98
- movs r0, 0
-_08080DBA:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8080D8C
-
- thumb_func_start sub_8080DC0
-sub_8080DC0: @ 8080DC0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080E50
- ldr r0, _08080DE8 @ =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0x4
- bne _08080DEC
- bl sub_8080D8C
- cmp r0, 0x1
- beq _08080DFE
- bl Link_TryStartSend5FFF
- b _08080E02
- .align 2, 0
-_08080DE8: .4byte gSpecialVar_Result
-_08080DEC:
- cmp r0, 0x3
- bne _08080DF6
- bl Link_TryStartSend5FFF
- b _08080E02
-_08080DF6:
- cmp r0, 0x7
- beq _08080DFE
- cmp r0, 0x9
- bne _08080E20
-_08080DFE:
- bl CloseLink
-_08080E02:
- bl HideFieldMessageBox
- ldr r0, _08080E18 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _08080E1C @ =sub_8080F78
- str r0, [r1]
- b _08080E50
- .align 2, 0
-_08080E18: .4byte gTasks
-_08080E1C: .4byte sub_8080F78
-_08080E20:
- bl GetLinkPlayerCount_2
- ldr r4, _08080E58 @ =gFieldLinkPlayerCount
- strb r0, [r4]
- bl GetMultiplayerId
- ldr r1, _08080E5C @ =gLocalLinkPlayerId
- strb r0, [r1]
- ldrb r0, [r4]
- bl sub_800A900
- ldr r0, _08080E60 @ =gBlockSendBuffer
- bl TrainerCard_GenerateCardForLinkPlayer
- ldr r1, _08080E64 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08080E68 @ =sub_8080E6C
- str r1, [r0]
- movs r0, 0x2
- bl sub_800A474
-_08080E50:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08080E58: .4byte gFieldLinkPlayerCount
-_08080E5C: .4byte gLocalLinkPlayerId
-_08080E60: .4byte gBlockSendBuffer
-_08080E64: .4byte gTasks
-_08080E68: .4byte sub_8080E6C
- thumb_func_end sub_8080DC0
-
- thumb_func_start sub_8080E6C
-sub_8080E6C: @ 8080E6C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r7, 0
- bl sub_80808BC
- cmp r0, 0x1
- beq _08080F66
- bl GetBlockReceivedStatus
- adds r4, r0, 0
- bl sub_800A8A4
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _08080F66
- movs r5, 0
- lsls r0, r7, 2
- mov r8, r0
- b _08080EF8
-_08080E9A:
- ldr r1, _08080ED0 @ =gLinkPlayers
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r6, r0, r1
- ldrb r0, [r6]
- subs r0, 0x4
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _08080EDC
- lsls r1, r5, 8
- ldr r0, _08080ED4 @ =gBlockRecvBuffer
- adds r1, r0
- ldr r0, _08080ED8 @ =gTrainerCards
- lsls r4, r5, 1
- adds r4, r5
- lsls r4, 5
- adds r4, r0
- adds r0, r4, 0
- movs r2, 0x38
- bl memcpy
- ldrh r0, [r6]
- adds r4, 0x38
- strb r0, [r4]
- b _08080EF2
- .align 2, 0
-_08080ED0: .4byte gLinkPlayers
-_08080ED4: .4byte gBlockRecvBuffer
-_08080ED8: .4byte gTrainerCards
-_08080EDC:
- lsls r1, r5, 8
- ldr r0, _08080F3C @ =gBlockRecvBuffer
- adds r1, r0
- ldr r2, _08080F40 @ =gTrainerCards
- lsls r0, r5, 1
- adds r0, r5
- lsls r0, 5
- adds r0, r2
- movs r2, 0x60
- bl memcpy
-_08080EF2:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_08080EF8:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r0
- bcc _08080E9A
- movs r0, 0
- bl SetSuppressLinkErrorMessage
- bl ResetBlockReceivedFlags
- bl HideFieldMessageBox
- ldr r0, _08080F44 @ =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0x1
- bne _08080F54
- ldr r0, _08080F48 @ =gLinkType
- ldrh r1, [r0]
- ldr r0, _08080F4C @ =0x00004411
- ldr r0, _08080F50 @ =gTasks
- mov r2, r8
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x12]
- bl sub_80807E8
- bl EnableBothScriptContexts
- adds r0, r7, 0
- bl DestroyTask
- b _08080F66
- .align 2, 0
-_08080F3C: .4byte gBlockRecvBuffer
-_08080F40: .4byte gTrainerCards
-_08080F44: .4byte gSpecialVar_Result
-_08080F48: .4byte gLinkType
-_08080F4C: .4byte 0x00004411
-_08080F50: .4byte gTasks
-_08080F54:
- bl Link_TryStartSend5FFF
- ldr r0, _08080F70 @ =gTasks
- mov r2, r8
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, _08080F74 @ =sub_8080F78
- str r0, [r1]
-_08080F66:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08080F70: .4byte gTasks
-_08080F74: .4byte sub_8080F78
- thumb_func_end sub_8080E6C
-
- thumb_func_start sub_8080F78
-sub_8080F78: @ 8080F78
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _08080FAC @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08080FA6
- ldr r0, _08080FB0 @ =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r4, 0x12]
- bl sub_80807E8
- bl EnableBothScriptContexts
- ldrb r0, [r4, 0x12]
- bl RemoveWindow
- adds r0, r5, 0
- bl DestroyTask
-_08080FA6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08080FAC: .4byte gReceivedRemoteLinkPlayers
-_08080FB0: .4byte gTasks
- thumb_func_end sub_8080F78
-
- thumb_func_start sub_8080FB4
-sub_8080FB4: @ 8080FB4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _08080FE8 @ =gSpecialVar_Result
- movs r0, 0x5
- strh r0, [r1]
- ldr r1, _08080FEC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r0, [r0, 0x12]
- bl sub_80807E8
- bl HideFieldMessageBox
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08080FE8: .4byte gSpecialVar_Result
-_08080FEC: .4byte gTasks
- thumb_func_end sub_8080FB4
-
- thumb_func_start sub_8080FF0
-sub_8080FF0: @ 8080FF0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _08081024 @ =gSpecialVar_Result
- movs r0, 0x6
- strh r0, [r1]
- ldr r1, _08081028 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r0, [r0, 0x12]
- bl sub_80807E8
- bl HideFieldMessageBox
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081024: .4byte gSpecialVar_Result
-_08081028: .4byte gTasks
- thumb_func_end sub_8080FF0
-
- thumb_func_start sub_808102C
-sub_808102C: @ 808102C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08081050 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r2, r1, r2
- ldrh r0, [r2, 0x10]
- adds r0, 0x1
- strh r0, [r2, 0x10]
- lsls r0, 16
- movs r1, 0x96
- lsls r1, 18
- cmp r0, r1
- bgt _08081054
- movs r0, 0
- b _0808105A
- .align 2, 0
-_08081050: .4byte gTasks
-_08081054:
- ldr r0, _08081060 @ =sub_8080FF0
- str r0, [r2]
- movs r0, 0x1
-_0808105A:
- pop {r1}
- bx r1
- .align 2, 0
-_08081060: .4byte sub_8080FF0
- thumb_func_end sub_808102C
-
- thumb_func_start TryBattleLinkup
-TryBattleLinkup: @ 8081064
- push {r4,lr}
- movs r3, 0x2
- movs r2, 0x2
- ldr r0, _0808107C @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x2
- beq _08081098
- cmp r0, 0x2
- bgt _08081080
- cmp r0, 0x1
- beq _08081086
- b _080810B4
- .align 2, 0
-_0808107C: .4byte gSpecialVar_0x8004
-_08081080:
- cmp r0, 0x5
- beq _080810A8
- b _080810B4
-_08081086:
- movs r3, 0x2
- ldr r1, _08081090 @ =gLinkType
- ldr r4, _08081094 @ =0x00002233
- b _080810B0
- .align 2, 0
-_08081090: .4byte gLinkType
-_08081094: .4byte 0x00002233
-_08081098:
- movs r3, 0x2
- ldr r1, _080810A0 @ =gLinkType
- ldr r4, _080810A4 @ =0x00002244
- b _080810B0
- .align 2, 0
-_080810A0: .4byte gLinkType
-_080810A4: .4byte 0x00002244
-_080810A8:
- movs r3, 0x4
- movs r2, 0x4
- ldr r1, _080810C4 @ =gLinkType
- ldr r4, _080810C8 @ =0x00002255
-_080810B0:
- adds r0, r4, 0
- strh r0, [r1]
-_080810B4:
- adds r0, r3, 0
- adds r1, r2, 0
- bl sub_8080748
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080810C4: .4byte gLinkType
-_080810C8: .4byte 0x00002255
- thumb_func_end TryBattleLinkup
-
- thumb_func_start TryTradeLinkup
-TryTradeLinkup: @ 80810CC
- push {lr}
- ldr r1, _080810E8 @ =gLinkType
- ldr r2, _080810EC @ =0x00001133
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, _080810F0 @ =gBattleTypeFlags
- movs r0, 0
- str r0, [r1]
- movs r0, 0x2
- movs r1, 0x2
- bl sub_8080748
- pop {r0}
- bx r0
- .align 2, 0
-_080810E8: .4byte gLinkType
-_080810EC: .4byte 0x00001133
-_080810F0: .4byte gBattleTypeFlags
- thumb_func_end TryTradeLinkup
-
- thumb_func_start sub_80810F4
-sub_80810F4: @ 80810F4
- push {lr}
- ldr r1, _08081118 @ =gSpecialVar_Result
- movs r0, 0
- strh r0, [r1]
- ldr r1, _0808111C @ =gLinkType
- ldr r2, _08081120 @ =0x00003311
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, _08081124 @ =gBattleTypeFlags
- movs r0, 0
- str r0, [r1]
- movs r0, 0x2
- movs r1, 0x4
- bl sub_8080748
- pop {r0}
- bx r0
- .align 2, 0
-_08081118: .4byte gSpecialVar_Result
-_0808111C: .4byte gLinkType
-_08081120: .4byte 0x00003311
-_08081124: .4byte gBattleTypeFlags
- thumb_func_end sub_80810F4
-
- thumb_func_start sub_8081128
-sub_8081128: @ 8081128
- push {lr}
- ldr r1, _08081144 @ =gLinkType
- ldr r2, _08081148 @ =0x00006601
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, _0808114C @ =gBattleTypeFlags
- movs r0, 0
- str r0, [r1]
- movs r0, 0x4
- movs r1, 0x4
- bl sub_8080748
- pop {r0}
- bx r0
- .align 2, 0
-_08081144: .4byte gLinkType
-_08081148: .4byte 0x00006601
-_0808114C: .4byte gBattleTypeFlags
- thumb_func_end sub_8081128
-
- thumb_func_start sub_8081150
-sub_8081150: @ 8081150
- push {lr}
- ldr r0, _08081164 @ =sub_80811FC
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08081168
- movs r0, 0xFF
- b _080811EC
- .align 2, 0
-_08081164: .4byte sub_80811FC
-_08081168:
- ldr r0, _0808117C @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r0, 0x4
- bhi _080811E0
- lsls r0, 2
- ldr r1, _08081180 @ =_08081184
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0808117C: .4byte gSpecialVar_0x8004
-_08081180: .4byte _08081184
- .align 2, 0
-_08081184:
- .4byte _08081198
- .4byte _080811A8
- .4byte _080811C8
- .4byte _080811D8
- .4byte _080811B8
-_08081198:
- ldr r1, _080811A0 @ =gLinkType
- ldr r2, _080811A4 @ =0x00002233
- b _080811DC
- .align 2, 0
-_080811A0: .4byte gLinkType
-_080811A4: .4byte 0x00002233
-_080811A8:
- ldr r1, _080811B0 @ =gLinkType
- ldr r2, _080811B4 @ =0x00002244
- b _080811DC
- .align 2, 0
-_080811B0: .4byte gLinkType
-_080811B4: .4byte 0x00002244
-_080811B8:
- ldr r1, _080811C0 @ =gLinkType
- ldr r2, _080811C4 @ =0x00002255
- b _080811DC
- .align 2, 0
-_080811C0: .4byte gLinkType
-_080811C4: .4byte 0x00002255
-_080811C8:
- ldr r1, _080811D0 @ =gLinkType
- ldr r2, _080811D4 @ =0x00001111
- b _080811DC
- .align 2, 0
-_080811D0: .4byte gLinkType
-_080811D4: .4byte 0x00001111
-_080811D8:
- ldr r1, _080811F0 @ =gLinkType
- ldr r2, _080811F4 @ =0x00003322
-_080811DC:
- adds r0, r2, 0
- strh r0, [r1]
-_080811E0:
- ldr r0, _080811F8 @ =sub_80811FC
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
-_080811EC:
- pop {r1}
- bx r1
- .align 2, 0
-_080811F0: .4byte gLinkType
-_080811F4: .4byte 0x00003322
-_080811F8: .4byte sub_80811FC
- thumb_func_end sub_8081150
-
- thumb_func_start sub_80811FC
-sub_80811FC: @ 80811FC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08081228 @ =gTasks+0x8
- adds r4, r1, r0
- movs r3, 0
- ldrsh r2, [r4, r3]
- cmp r2, 0
- bne _08081230
- bl OpenLink
- bl ResetLinkPlayers
- ldr r0, _0808122C @ =sub_8081A90
- movs r1, 0x50
- bl CreateTask
- b _0808123C
- .align 2, 0
-_08081228: .4byte gTasks+0x8
-_0808122C: .4byte sub_8081A90
-_08081230:
- cmp r2, 0x9
- ble _0808123C
- subs r0, 0x8
- adds r0, r1, r0
- ldr r1, _08081248 @ =sub_808124C
- str r1, [r0]
-_0808123C:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081248: .4byte sub_808124C
- thumb_func_end sub_80811FC
-
- thumb_func_start sub_808124C
-sub_808124C: @ 808124C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl GetLinkPlayerCount_2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _08081292
- bl IsLinkMaster
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08081284
- ldr r0, _0808127C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08081280 @ =sub_80812A0
- b _08081290
- .align 2, 0
-_0808127C: .4byte gTasks
-_08081280: .4byte sub_80812A0
-_08081284:
- ldr r0, _08081298 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _0808129C @ =sub_80812D8
-_08081290:
- str r0, [r1]
-_08081292:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081298: .4byte gTasks
-_0808129C: .4byte sub_80812D8
- thumb_func_end sub_808124C
-
- thumb_func_start sub_80812A0
-sub_80812A0: @ 80812A0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl GetSavedPlayerCount
- adds r4, r0, 0
- bl GetLinkPlayerCount_2
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _080812CA
- bl CheckShouldAdvanceLinkState
- ldr r0, _080812D0 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _080812D4 @ =sub_80812D8
- str r0, [r1]
-_080812CA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080812D0: .4byte gTasks
-_080812D4: .4byte sub_80812D8
- thumb_func_end sub_80812A0
-
- thumb_func_start sub_80812D8
-sub_80812D8: @ 80812D8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08081308 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08081300
- bl IsLinkPlayerDataExchangeComplete
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08081300
- bl sub_800A9A4
- bl sub_8009FE8
- adds r0, r4, 0
- bl DestroyTask
-_08081300:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081308: .4byte gReceivedRemoteLinkPlayers
- thumb_func_end sub_80812D8
-
- thumb_func_start sub_808130C
-sub_808130C: @ 808130C
- push {lr}
- bl Field_AskSaveTheGame
- pop {r0}
- bx r0
- thumb_func_end sub_808130C
-
- thumb_func_start sub_8081318
-sub_8081318: @ 8081318
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0808133C @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- bls _08081332
- b _0808143A
-_08081332:
- lsls r0, 2
- ldr r1, _08081340 @ =_08081344
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0808133C: .4byte gTasks
-_08081340: .4byte _08081344
- .align 2, 0
-_08081344:
- .4byte _0808135C
- .4byte _0808137C
- .4byte _0808138C
- .4byte _0808139C
- .4byte _080813A2
- .4byte _080813B8
-_0808135C:
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- ldr r1, _08081374 @ =gLinkType
- ldr r2, _08081378 @ =0x00002211
- adds r0, r2, 0
- strh r0, [r1]
- bl ClearLinkCallback_2
- b _080813AA
- .align 2, 0
-_08081374: .4byte gLinkType
-_08081378: .4byte 0x00002211
-_0808137C:
- ldr r0, _08081388 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- b _080813A6
- .align 2, 0
-_08081388: .4byte gPaletteFade
-_0808138C:
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- ble _0808143A
- b _080813AA
-_0808139C:
- bl Link_TryStartSend5FFF
- b _080813AA
-_080813A2:
- ldr r0, _080813B4 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
-_080813A6:
- cmp r0, 0
- bne _0808143A
-_080813AA:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0808143A
- .align 2, 0
-_080813B4: .4byte gReceivedRemoteLinkPlayers
-_080813B8:
- ldr r0, _080813CC @ =gLinkPlayers
- ldr r0, [r0, 0x4]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080813D4
- ldr r0, _080813D0 @ =0x00000109
- bl PlayMapChosenOrBattleBGM
- b _080813DC
- .align 2, 0
-_080813CC: .4byte gLinkPlayers
-_080813D0: .4byte 0x00000109
-_080813D4:
- movs r0, 0x85
- lsls r0, 1
- bl PlayMapChosenOrBattleBGM
-_080813DC:
- ldr r0, _080813F0 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x2
- beq _08081404
- cmp r0, 0x2
- bgt _080813F4
- cmp r0, 0x1
- beq _080813FA
- b _0808141A
- .align 2, 0
-_080813F0: .4byte gSpecialVar_0x8004
-_080813F4:
- cmp r0, 0x5
- beq _08081410
- b _0808141A
-_080813FA:
- ldr r1, _08081400 @ =gBattleTypeFlags
- movs r0, 0xA
- b _08081418
- .align 2, 0
-_08081400: .4byte gBattleTypeFlags
-_08081404:
- ldr r1, _0808140C @ =gBattleTypeFlags
- movs r0, 0xB
- b _08081418
- .align 2, 0
-_0808140C: .4byte gBattleTypeFlags
-_08081410:
- bl ReducePlayerPartyToThree
- ldr r1, _08081440 @ =gBattleTypeFlags
- movs r0, 0x4B
-_08081418:
- str r0, [r1]
-_0808141A:
- bl CleanupOverworldWindowsAndTilemaps
- ldr r1, _08081444 @ =gTrainerBattleOpponent_A
- movs r2, 0x80
- lsls r2, 4
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _08081448 @ =CB2_InitBattle
- bl SetMainCallback2
- ldr r1, _0808144C @ =gMain
- ldr r0, _08081450 @ =sub_8081668
- str r0, [r1, 0x8]
- adds r0, r5, 0
- bl DestroyTask
-_0808143A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081440: .4byte gBattleTypeFlags
-_08081444: .4byte gTrainerBattleOpponent_A
-_08081448: .4byte CB2_InitBattle
-_0808144C: .4byte gMain
-_08081450: .4byte sub_8081668
- thumb_func_end sub_8081318
-
- thumb_func_start sub_8081454
-sub_8081454: @ 8081454
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08081478 @ =gTasks+0x8
- adds r6, r0, r1
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0x7
- bls _0808146E
- b _0808160A
-_0808146E:
- lsls r0, 2
- ldr r1, _0808147C @ =_08081480
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08081478: .4byte gTasks+0x8
-_0808147C: .4byte _08081480
- .align 2, 0
-_08081480:
- .4byte _080814A0
- .4byte _080814C4
- .4byte _080814DC
- .4byte _080814F0
- .4byte _0808154C
- .4byte _08081560
- .4byte _0808156A
- .4byte _0808157A
-_080814A0:
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- ldr r0, _080814BC @ =gLinkType
- ldr r2, _080814C0 @ =0x00002211
- adds r1, r2, 0
- strh r1, [r0]
- bl ClearLinkCallback_2
- movs r0, 0x1
- strh r0, [r6]
- b _0808160A
- .align 2, 0
-_080814BC: .4byte gLinkType
-_080814C0: .4byte 0x00002211
-_080814C4:
- ldr r0, _080814D8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080814D2
- b _0808160A
-_080814D2:
- movs r0, 0x2
- strh r0, [r6]
- b _0808160A
- .align 2, 0
-_080814D8: .4byte gPaletteFade
-_080814DC:
- ldr r1, _080814EC @ =gLocalLinkPlayer
- movs r0, 0
- movs r2, 0x1C
- bl SendBlock
- movs r0, 0x3
- strh r0, [r6]
- b _0808160A
- .align 2, 0
-_080814EC: .4byte gLocalLinkPlayer
-_080814F0:
- bl GetBlockReceivedStatus
- adds r4, r0, 0
- bl sub_800A8D4
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _08081504
- b _0808160A
-_08081504:
- movs r4, 0
- ldr r5, _0808150C @ =gLinkPlayers
- b _08081536
- .align 2, 0
-_0808150C: .4byte gLinkPlayers
-_08081510:
- lsls r1, r4, 8
- ldr r2, _08081548 @ =gBlockRecvBuffer
- adds r0, r5, 0
- adds r1, r2
- ldm r1!, {r2,r3,r7}
- stm r0!, {r2,r3,r7}
- ldm r1!, {r2,r3,r7}
- stm r0!, {r2,r3,r7}
- ldr r1, [r1]
- str r1, [r0]
- adds r0, r5, 0
- bl IntlConvertLinkPlayerName
- lsls r0, r4, 24
- lsrs r0, 24
- bl ResetBlockReceivedFlag
- adds r5, 0x1C
- adds r4, 0x1
-_08081536:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- blt _08081510
- movs r0, 0x4
- strh r0, [r6]
- b _0808160A
- .align 2, 0
-_08081548: .4byte gBlockRecvBuffer
-_0808154C:
- ldrh r0, [r6, 0x2]
- adds r0, 0x1
- strh r0, [r6, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- ble _0808160A
- movs r0, 0x5
- strh r0, [r6]
- b _0808160A
-_08081560:
- bl PrepareSendLinkCmd2FFE_or_RfuCmd6600
- movs r0, 0x6
- strh r0, [r6]
- b _0808160A
-_0808156A:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0808160A
- movs r0, 0x7
- strh r0, [r6]
- b _0808160A
-_0808157A:
- ldr r0, _08081590 @ =gLinkPlayers
- ldr r0, [r0, 0x4]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08081598
- ldr r0, _08081594 @ =0x00000109
- bl PlayMapChosenOrBattleBGM
- b _080815A0
- .align 2, 0
-_08081590: .4byte gLinkPlayers
-_08081594: .4byte 0x00000109
-_08081598:
- movs r0, 0x85
- lsls r0, 1
- bl PlayMapChosenOrBattleBGM
-_080815A0:
- ldr r0, _080815B8 @ =gLinkPlayers
- ldr r1, _080815BC @ =0x00002211
- str r1, [r0, 0x14]
- ldr r0, _080815C0 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x2
- beq _080815D4
- cmp r0, 0x2
- bgt _080815C4
- cmp r0, 0x1
- beq _080815CA
- b _080815EA
- .align 2, 0
-_080815B8: .4byte gLinkPlayers
-_080815BC: .4byte 0x00002211
-_080815C0: .4byte gSpecialVar_0x8004
-_080815C4:
- cmp r0, 0x5
- beq _080815E0
- b _080815EA
-_080815CA:
- ldr r1, _080815D0 @ =gBattleTypeFlags
- movs r0, 0xA
- b _080815E8
- .align 2, 0
-_080815D0: .4byte gBattleTypeFlags
-_080815D4:
- ldr r1, _080815DC @ =gBattleTypeFlags
- movs r0, 0xB
- b _080815E8
- .align 2, 0
-_080815DC: .4byte gBattleTypeFlags
-_080815E0:
- bl ReducePlayerPartyToThree
- ldr r1, _08081610 @ =gBattleTypeFlags
- movs r0, 0x4B
-_080815E8:
- str r0, [r1]
-_080815EA:
- bl CleanupOverworldWindowsAndTilemaps
- ldr r1, _08081614 @ =gTrainerBattleOpponent_A
- movs r3, 0x80
- lsls r3, 4
- adds r0, r3, 0
- strh r0, [r1]
- ldr r0, _08081618 @ =CB2_InitBattle
- bl SetMainCallback2
- ldr r1, _0808161C @ =gMain
- ldr r0, _08081620 @ =sub_8081668
- str r0, [r1, 0x8]
- adds r0, r4, 0
- bl DestroyTask
-_0808160A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08081610: .4byte gBattleTypeFlags
-_08081614: .4byte gTrainerBattleOpponent_A
-_08081618: .4byte CB2_InitBattle
-_0808161C: .4byte gMain
-_08081620: .4byte sub_8081668
- thumb_func_end sub_8081454
-
- thumb_func_start sub_8081624
-sub_8081624: @ 8081624
- push {r4,lr}
- ldr r0, _0808163C @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _08081640
- cmp r0, 0x1
- beq _0808164C
- b _0808165C
- .align 2, 0
-_0808163C: .4byte gMain
-_08081640:
- bl Link_TryStartSend5FFF
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0808165C
-_0808164C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0808165C
- ldr r0, _08081664 @ =CB2_ReturnToField
- bl SetMainCallback2
-_0808165C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081664: .4byte CB2_ReturnToField
- thumb_func_end sub_8081624
-
- thumb_func_start sub_8081668
-sub_8081668: @ 8081668
- push {r4,r5,lr}
- ldr r2, _080816B0 @ =gBattleTypeFlags
- ldr r0, [r2]
- ldr r1, _080816B4 @ =0x0000ffdf
- ands r0, r1
- str r0, [r2]
- bl sub_8055DB8
- bl LoadPlayerParty
- bl SavePlayerBag
- bl Special_UpdateTrainerFansAfterLinkBattle
- ldr r0, _080816B8 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x5
- beq _0808170A
- ldr r0, _080816BC @ =gLocalLinkPlayerId
- ldrb r0, [r0]
- movs r5, 0x1
- eors r0, r5
- bl TryRecordLinkBattleOutcome
- ldr r0, _080816C0 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808170A
- ldr r0, _080816C4 @ =gBattleOutcome
- ldrb r0, [r0]
- cmp r0, 0x1 @ B_OUTCOME_WON
- beq _080816C8
- cmp r0, 0x2 @ B_OUTCOME_LOST
- beq _080816EC
- b _0808170A
- .align 2, 0
-_080816B0: .4byte gBattleTypeFlags
-_080816B4: .4byte 0x0000ffdf
-_080816B8: .4byte gSpecialVar_0x8004
-_080816BC: .4byte gLocalLinkPlayerId
-_080816C0: .4byte gWirelessCommType
-_080816C4: .4byte gBattleOutcome
-_080816C8:
- @ MEvent_RecordIdOfWonderCardSenderByEventType(0, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId);
- ldr r4, _080816E8 @ =gLinkPlayers
- bl GetMultiplayerId
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r4, 0x4
- adds r1, r4
- ldr r1, [r1]
- movs r0, 0
- bl MEvent_RecordIdOfWonderCardSenderByEventType
- b _0808170A
- .align 2, 0
-_080816E8: .4byte gLinkPlayers
-_080816EC:
- @ MEvent_RecordIdOfWonderCardSenderByEventType(1, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId);
- ldr r4, _08081718 @ =gLinkPlayers
- bl GetMultiplayerId
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r4, 0x4
- adds r1, r4
- ldr r1, [r1]
- movs r0, 0x1
- bl MEvent_RecordIdOfWonderCardSenderByEventType
-_0808170A:
- bl InUnionRoom
- cmp r0, 0x1
- bne _08081724
- ldr r1, _0808171C @ =gMain
- ldr r0, _08081720 @ =sub_8081624
- b _08081728
- .align 2, 0
-_08081718: .4byte gLinkPlayers
-_0808171C: .4byte gMain
-_08081720: .4byte sub_8081624
-_08081724:
- ldr r1, _08081738 @ =gMain
- ldr r0, _0808173C @ =c2_8056854
-_08081728:
- str r0, [r1, 0x8]
- ldr r0, _08081740 @ =CB2_SetUpSaveAfterLinkBattle
- bl SetMainCallback2
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081738: .4byte gMain
-_0808173C: .4byte c2_8056854
-_08081740: .4byte CB2_SetUpSaveAfterLinkBattle
- thumb_func_end sub_8081668
-
- thumb_func_start CleanupLinkRoomState
-CleanupLinkRoomState: @ 8081744
- push {lr}
- ldr r0, _0808176C @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- subs r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _08081758
- cmp r1, 0x5
- bne _08081760
-_08081758:
- bl LoadPlayerParty
- bl SavePlayerBag
-_08081760:
- movs r0, 0x7F
- bl copy_saved_warp2_bank_and_enter_x_to_warp1
- pop {r0}
- bx r0
- .align 2, 0
-_0808176C: .4byte gSpecialVar_0x8004
- thumb_func_end CleanupLinkRoomState
-
- thumb_func_start sub_8081770
-sub_8081770: @ 8081770
- push {lr}
- bl sub_8057F5C
- pop {r0}
- bx r0
- thumb_func_end sub_8081770
-
- thumb_func_start sub_808177C
-sub_808177C: @ 808177C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _080817A0 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080817C0
- cmp r0, 0x1
- bgt _080817A4
- cmp r0, 0
- beq _080817AE
- b _08081820
- .align 2, 0
-_080817A0: .4byte gTasks
-_080817A4:
- cmp r0, 0x2
- beq _080817E0
- cmp r0, 0x3
- beq _0808180C
- b _08081820
-_080817AE:
- ldr r0, _080817BC @ =CableClub_Text_PleaseWaitBCancel
- bl ShowFieldMessage
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _08081820
- .align 2, 0
-_080817BC: .4byte CableClub_Text_PleaseWaitBCancel
-_080817C0:
- bl IsFieldMessageBoxHidden
- lsls r0, 24
- cmp r0, 0
- beq _08081820
- bl sub_8057F34
- ldr r0, _080817DC @ =gSpecialVar_0x8005
- ldrb r0, [r0]
- bl SetLocalLinkPlayerId
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _08081820
- .align 2, 0
-_080817DC: .4byte gSpecialVar_0x8005
-_080817E0:
- bl sub_8057EC0
- cmp r0, 0x1
- beq _080817F2
- cmp r0, 0x1
- bcc _08081820
- cmp r0, 0x2
- beq _08081806
- b _08081820
-_080817F2:
- bl HideFieldMessageBox
- movs r0, 0
- strh r0, [r5, 0x8]
- bl sub_8057F70
- adds r0, r4, 0
- bl SwitchTaskToFollowupFunc
- b _08081820
-_08081806:
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _08081820
-_0808180C:
- bl sub_8057F48
- movs r0, 0x1
- bl sub_80F771C
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_08081820:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_808177C
-
- thumb_func_start sub_8081828
-sub_8081828: @ 8081828
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r4, _0808184C @ =sub_808177C
- adds r0, r4, 0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- adds r2, r5, 0
- bl SetTaskFuncWithFollowupFunc
- bl ScriptContext1_Stop
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808184C: .4byte sub_808177C
- thumb_func_end sub_8081828
-
- thumb_func_start sub_8081850
-sub_8081850: @ 8081850
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08081874 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08081894
- cmp r0, 0x1
- bgt _08081878
- cmp r0, 0
- beq _08081882
- b _080818D8
- .align 2, 0
-_08081874: .4byte gTasks
-_08081878:
- cmp r0, 0x2
- beq _080818A8
- cmp r0, 0x3
- beq _080818C4
- b _080818D8
-_08081882:
- bl ScriptContext2_Enable
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- bl ClearLinkCallback_2
- b _080818B8
-_08081894:
- ldr r0, _080818A4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080818D8
- b _080818B8
- .align 2, 0
-_080818A4: .4byte gPaletteFade
-_080818A8:
- ldr r1, _080818C0 @ =gSelectedTradeMonPositions
- movs r0, 0
- strb r0, [r1]
- strb r0, [r1, 0x1]
- bl m4aMPlayAllStop
- bl Link_TryStartSend5FFF
-_080818B8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080818D8
- .align 2, 0
-_080818C0: .4byte gSelectedTradeMonPositions
-_080818C4:
- ldr r0, _080818E0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080818D8
- ldr r0, _080818E4 @ =CB2_ReturnFromLinkTrade
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080818D8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080818E0: .4byte gReceivedRemoteLinkPlayers
-_080818E4: .4byte CB2_ReturnFromLinkTrade
- thumb_func_end sub_8081850
-
- thumb_func_start sub_80818E8
-sub_80818E8: @ 80818E8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0808190C @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _0808192C
- cmp r0, 0x1
- bgt _08081910
- cmp r0, 0
- beq _0808191A
- b _08081970
- .align 2, 0
-_0808190C: .4byte gTasks+0x8
-_08081910:
- cmp r0, 0x2
- beq _08081940
- cmp r0, 0x3
- beq _0808195C
- b _08081970
-_0808191A:
- bl ScriptContext2_Enable
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- bl Rfu_set_zero
- b _08081950
-_0808192C:
- ldr r0, _0808193C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08081970
- b _08081950
- .align 2, 0
-_0808193C: .4byte gPaletteFade
-_08081940:
- ldr r1, _08081958 @ =gSelectedTradeMonPositions
- movs r0, 0
- strb r0, [r1]
- strb r0, [r1, 0x1]
- bl m4aMPlayAllStop
- bl PrepareSendLinkCmd2FFE_or_RfuCmd6600
-_08081950:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _08081970
- .align 2, 0
-_08081958: .4byte gSelectedTradeMonPositions
-_0808195C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08081970
- bl UnionRoom_CreateTask_CallBC2ReturnFromLinkTrade
- adds r0, r5, 0
- bl DestroyTask
-_08081970:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80818E8
-
- thumb_func_start EnterTradeSeat
-EnterTradeSeat: @ 8081978
- push {lr}
- ldr r0, _0808198C @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08081994
- ldr r0, _08081990 @ =sub_80818E8
- bl sub_8081828
- b _0808199A
- .align 2, 0
-_0808198C: .4byte gWirelessCommType
-_08081990: .4byte sub_80818E8
-_08081994:
- ldr r0, _080819A0 @ =sub_8081850
- bl sub_8081828
-_0808199A:
- pop {r0}
- bx r0
- .align 2, 0
-_080819A0: .4byte sub_8081850
- thumb_func_end EnterTradeSeat
-
- thumb_func_start sub_80819A4
-sub_80819A4: @ 80819A4
- push {lr}
- ldr r0, _080819B4 @ =sub_8081850
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080819B4: .4byte sub_8081850
- thumb_func_end sub_80819A4
-
- thumb_func_start sub_80819B8
-sub_80819B8: @ 80819B8
- push {lr}
- bl sub_80819A4
- bl ScriptContext1_Stop
- pop {r0}
- bx r0
- thumb_func_end sub_80819B8
-
- thumb_func_start EnterColosseumPlayerSpot
-EnterColosseumPlayerSpot: @ 80819C8
- push {lr}
- ldr r1, _080819E4 @ =gLinkType
- ldr r2, _080819E8 @ =0x00002211
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _080819EC @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _080819F4
- ldr r0, _080819F0 @ =sub_8081454
- bl sub_8081828
- b _080819FA
- .align 2, 0
-_080819E4: .4byte gLinkType
-_080819E8: .4byte 0x00002211
-_080819EC: .4byte gWirelessCommType
-_080819F0: .4byte sub_8081454
-_080819F4:
- ldr r0, _08081A00 @ =sub_8081318
- bl sub_8081828
-_080819FA:
- pop {r0}
- bx r0
- .align 2, 0
-_08081A00: .4byte sub_8081318
- thumb_func_end EnterColosseumPlayerSpot
-
- thumb_func_start sub_8081A04
-sub_8081A04: @ 8081A04
- push {lr}
- ldr r0, _08081A18 @ =sub_808177C
- movs r1, 0x50
- bl CreateTask
- bl ScriptContext1_Stop
- pop {r0}
- bx r0
- .align 2, 0
-_08081A18: .4byte sub_808177C
- thumb_func_end sub_8081A04
-
- thumb_func_start Script_ShowLinkTrainerCard
-Script_ShowLinkTrainerCard: @ 8081A1C
- push {lr}
- ldr r0, _08081A2C @ =gSpecialVar_0x8006
- ldrb r0, [r0]
- ldr r1, _08081A30 @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
- bl ShowTrainerCardInLink
- pop {r0}
- bx r0
- .align 2, 0
-_08081A2C: .4byte gSpecialVar_0x8006
-_08081A30: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
- thumb_func_end Script_ShowLinkTrainerCard
-
- thumb_func_start sub_8081A34
-sub_8081A34: @ 8081A34
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08081A74 @ =gSpecialVar_0x8006
- strh r4, [r0]
- ldr r0, _08081A78 @ =gStringVar1
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- ldr r2, _08081A7C @ =gLinkPlayers + 8
- adds r1, r2
- bl StringCopy
- adds r0, r4, 0
- bl GetTrainerCardStars
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08081A88
- ldr r0, _08081A80 @ =gStringVar2
- ldr r2, _08081A84 @ =gUnknown_83C6AB8
- subs r1, 0x1
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- movs r0, 0x1
- b _08081A8A
- .align 2, 0
-_08081A74: .4byte gSpecialVar_0x8006
-_08081A78: .4byte gStringVar1
-_08081A7C: .4byte gLinkPlayers + 8
-_08081A80: .4byte gStringVar2
-_08081A84: .4byte gUnknown_83C6AB8
-_08081A88:
- movs r0, 0
-_08081A8A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8081A34
-
- thumb_func_start sub_8081A90
-sub_8081A90: @ 8081A90
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08081AD8 @ =gTasks
- adds r0, r1
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- lsls r1, 16
- movs r0, 0x96
- lsls r0, 17
- cmp r1, r0
- ble _08081AC2
- bl CloseLink
- ldr r0, _08081ADC @ =CB2_LinkError
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_08081AC2:
- ldr r0, _08081AE0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _08081AD0
- adds r0, r5, 0
- bl DestroyTask
-_08081AD0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081AD8: .4byte gTasks
-_08081ADC: .4byte CB2_LinkError
-_08081AE0: .4byte gReceivedRemoteLinkPlayers
- thumb_func_end sub_8081A90
-
- thumb_func_start sub_8081AE4
-sub_8081AE4: @ 8081AE4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08081B04 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08081AFC
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_08081AFC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081B04: .4byte gReceivedRemoteLinkPlayers
- thumb_func_end sub_8081AE4
-
- thumb_func_start sub_8081B08
-sub_8081B08: @ 8081B08
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl Link_TryStartSend5FFF
- ldr r1, _08081B28 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08081B2C @ =sub_8081AE4
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08081B28: .4byte gTasks
-_08081B2C: .4byte sub_8081AE4
- thumb_func_end sub_8081B08
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/event_object_movement.s b/asm/event_object_movement.s
index 811182517..cf5b8c54d 100644
--- a/asm/event_object_movement.s
+++ b/asm/event_object_movement.s
@@ -669,7 +669,7 @@ sub_805E2E8: @ 805E2E8
bl GetCurrentMapType
lsls r0, 24
lsrs r0, 24
- bl is_light_level_1_2_3_5_or_6
+ bl IsMapTypeOutdoors
lsls r0, 24
cmp r0, 0
beq _0805E37C
@@ -12893,12 +12893,12 @@ sub_8063AD4: @ 8063AD4
subs r1, r0
lsls r1, 4
strh r1, [r3]
- ldr r1, _08063B14 @ =gUnknown_300506C
+ ldr r1, _08063B14 @ =gTotalCameraPixelOffsetX
ldrh r0, [r2]
ldrh r1, [r1]
subs r0, r1
strh r0, [r2]
- ldr r1, _08063B18 @ =gUnknown_3005068
+ ldr r1, _08063B18 @ =gTotalCameraPixelOffsetY
ldrh r0, [r3]
ldrh r1, [r1]
subs r0, r1
@@ -12908,8 +12908,8 @@ sub_8063AD4: @ 8063AD4
bx r0
.align 2, 0
_08063B10: .4byte gSaveBlock1Ptr
-_08063B14: .4byte gUnknown_300506C
-_08063B18: .4byte gUnknown_3005068
+_08063B14: .4byte gTotalCameraPixelOffsetX
+_08063B18: .4byte gTotalCameraPixelOffsetY
thumb_func_end sub_8063AD4
thumb_func_start sub_8063B1C
@@ -12921,7 +12921,7 @@ sub_8063B1C: @ 8063B1C
lsrs r5, r0, 16
lsls r1, 16
lsrs r6, r1, 16
- ldr r0, _08063BB0 @ =gUnknown_300506C
+ ldr r0, _08063BB0 @ =gTotalCameraPixelOffsetX
ldrh r0, [r0]
negs r0, r0
ldr r1, _08063BB4 @ =gUnknown_3005050
@@ -12929,7 +12929,7 @@ sub_8063B1C: @ 8063B1C
subs r0, r2
lsls r0, 16
lsrs r3, r0, 16
- ldr r0, _08063BB8 @ =gUnknown_3005068
+ ldr r0, _08063BB8 @ =gTotalCameraPixelOffsetY
ldrh r0, [r0]
negs r0, r0
ldr r1, [r1, 0x14]
@@ -12992,9 +12992,9 @@ _08063B7C:
pop {r0}
bx r0
.align 2, 0
-_08063BB0: .4byte gUnknown_300506C
+_08063BB0: .4byte gTotalCameraPixelOffsetX
_08063BB4: .4byte gUnknown_3005050
-_08063BB8: .4byte gUnknown_3005068
+_08063BB8: .4byte gTotalCameraPixelOffsetY
_08063BBC: .4byte 0xfff00000
_08063BC0: .4byte gSaveBlock1Ptr
thumb_func_end sub_8063B1C
diff --git a/asm/field_camera.s b/asm/field_camera.s
index cf9fff21d..aa906d6fc 100644
--- a/asm/field_camera.s
+++ b/asm/field_camera.s
@@ -956,11 +956,11 @@ _0805AC7E:
adds r1, r7, 0
mov r2, r8
bl coords8_add
- ldr r1, _0805ACAC @ =gUnknown_300506C
+ ldr r1, _0805ACAC @ =gTotalCameraPixelOffsetX
ldrh r0, [r1]
subs r0, r7
strh r0, [r1]
- ldr r1, _0805ACB0 @ =gUnknown_3005068
+ ldr r1, _0805ACB0 @ =gTotalCameraPixelOffsetY
ldrh r0, [r1]
mov r2, r8
subs r0, r2
@@ -973,8 +973,8 @@ _0805AC7E:
.align 2, 0
_0805ACA4: .4byte gUnknown_3005050
_0805ACA8: .4byte gUnknown_3000E90
-_0805ACAC: .4byte gUnknown_300506C
-_0805ACB0: .4byte gUnknown_3005068
+_0805ACAC: .4byte gTotalCameraPixelOffsetX
+_0805ACB0: .4byte gTotalCameraPixelOffsetY
thumb_func_end CameraUpdate
thumb_func_start sub_805ACB4
@@ -989,12 +989,12 @@ sub_805ACB4: @ 805ACB4
asrs r1, 16
bl UpdateObjectEventsForCameraUpdate
bl DrawWholeMapView
- ldr r1, _0805ACE8 @ =gUnknown_300506C
+ ldr r1, _0805ACE8 @ =gTotalCameraPixelOffsetX
lsls r4, 4
ldrh r0, [r1]
subs r0, r4
strh r0, [r1]
- ldr r1, _0805ACEC @ =gUnknown_3005068
+ ldr r1, _0805ACEC @ =gTotalCameraPixelOffsetY
lsls r5, 4
ldrh r0, [r1]
subs r0, r5
@@ -1003,8 +1003,8 @@ sub_805ACB4: @ 805ACB4
pop {r0}
bx r0
.align 2, 0
-_0805ACE8: .4byte gUnknown_300506C
-_0805ACEC: .4byte gUnknown_3005068
+_0805ACE8: .4byte gTotalCameraPixelOffsetX
+_0805ACEC: .4byte gTotalCameraPixelOffsetY
thumb_func_end sub_805ACB4
thumb_func_start sub_805ACF0
@@ -1184,14 +1184,14 @@ UpdateCameraPanning: @ 805AE28
bl _call_via_r0
_0805AE36:
ldr r2, _0805AE5C @ =gSpriteCoordOffsetX
- ldr r0, _0805AE60 @ =gUnknown_300506C
+ ldr r0, _0805AE60 @ =gTotalCameraPixelOffsetX
ldr r1, _0805AE64 @ =gUnknown_3000E98
ldrh r0, [r0]
ldrh r1, [r1]
subs r0, r1
strh r0, [r2]
ldr r2, _0805AE68 @ =gSpriteCoordOffsetY
- ldr r0, _0805AE6C @ =gUnknown_3005068
+ ldr r0, _0805AE6C @ =gTotalCameraPixelOffsetY
ldr r1, _0805AE70 @ =gUnknown_3000E9A
ldrh r0, [r0]
ldrh r1, [r1]
@@ -1203,10 +1203,10 @@ _0805AE36:
.align 2, 0
_0805AE58: .4byte gUnknown_3000EA0
_0805AE5C: .4byte gSpriteCoordOffsetX
-_0805AE60: .4byte gUnknown_300506C
+_0805AE60: .4byte gTotalCameraPixelOffsetX
_0805AE64: .4byte gUnknown_3000E98
_0805AE68: .4byte gSpriteCoordOffsetY
-_0805AE6C: .4byte gUnknown_3005068
+_0805AE6C: .4byte gTotalCameraPixelOffsetY
_0805AE70: .4byte gUnknown_3000E9A
thumb_func_end UpdateCameraPanning
diff --git a/asm/field_effect.s b/asm/field_effect.s
deleted file mode 100644
index 91ea68461..000000000
--- a/asm/field_effect.s
+++ /dev/null
@@ -1,9666 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start FieldEffectStart
-FieldEffectStart: @ 8083444
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl FieldEffectActiveListAdd
- ldr r0, _08083484 @ =gUnknown_81D96AC
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- str r0, [sp]
- add r4, sp, 0x4
- ldr r5, _08083488 @ =gUnknown_83CBE30
-_08083462:
- ldr r0, [sp]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r5
- ldr r2, [r0]
- mov r0, sp
- adds r1, r4, 0
- bl _call_via_r2
- lsls r0, 24
- cmp r0, 0
- bne _08083462
- ldr r0, [sp, 0x4]
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08083484: .4byte gUnknown_81D96AC
-_08083488: .4byte gUnknown_83CBE30
- thumb_func_end FieldEffectStart
-
- thumb_func_start FieldEffectCmd_loadtiles
-FieldEffectCmd_loadtiles: @ 808348C
- push {lr}
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- bl FieldEffectScript_LoadTiles
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadtiles
-
- thumb_func_start FieldEffectCmd_loadfadedpal
-FieldEffectCmd_loadfadedpal: @ 80834A0
- push {lr}
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- bl sub_8083614
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadfadedpal
-
- thumb_func_start FieldEffectCmd_loadpal
-FieldEffectCmd_loadpal: @ 80834B4
- push {lr}
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- bl sub_808365C
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadpal
-
- thumb_func_start FieldEffectCmd_callnative
-FieldEffectCmd_callnative: @ 80834C8
- push {lr}
- ldr r2, [r0]
- adds r2, 0x1
- str r2, [r0]
- bl FieldEffectScript_CallNative
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_callnative
-
- thumb_func_start sub_80834DC
-sub_80834DC: @ 80834DC
- movs r0, 0
- bx lr
- thumb_func_end sub_80834DC
-
- thumb_func_start FieldEffectCmd_loadgfx_callnative
-FieldEffectCmd_loadgfx_callnative: @ 80834E0
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- adds r0, r4, 0
- bl FieldEffectScript_LoadTiles
- adds r0, r4, 0
- bl sub_8083614
- adds r0, r4, 0
- adds r1, r5, 0
- bl FieldEffectScript_CallNative
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadgfx_callnative
-
- thumb_func_start FieldEffectCmd_loadtiles_callnative
-FieldEffectCmd_loadtiles_callnative: @ 8083508
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- adds r0, r4, 0
- bl FieldEffectScript_LoadTiles
- adds r0, r4, 0
- adds r1, r5, 0
- bl FieldEffectScript_CallNative
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadtiles_callnative
-
- thumb_func_start FieldEffectCmd_loadfadedpal_callnative
-FieldEffectCmd_loadfadedpal_callnative: @ 808352C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- adds r0, r4, 0
- bl sub_8083614
- adds r0, r4, 0
- adds r1, r5, 0
- bl FieldEffectScript_CallNative
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end FieldEffectCmd_loadfadedpal_callnative
-
- thumb_func_start FieldEffectScript_ReadWord
-FieldEffectScript_ReadWord: @ 8083550
- ldr r2, [r0]
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- ldrb r1, [r2, 0x2]
- lsls r1, 16
- adds r0, r1
- ldrb r1, [r2, 0x3]
- lsls r1, 24
- adds r0, r1
- bx lr
- thumb_func_end FieldEffectScript_ReadWord
-
- thumb_func_start FieldEffectScript_LoadTiles
-FieldEffectScript_LoadTiles: @ 8083568
- push {r4,r5,lr}
- adds r4, r0, 0
- bl FieldEffectScript_ReadWord
- adds r5, r0, 0
- ldrh r0, [r5, 0x6]
- bl GetSpriteTileStartByTag
- lsls r0, 16
- ldr r1, _08083594 @ =0xffff0000
- cmp r0, r1
- bne _08083586
- adds r0, r5, 0
- bl LoadSpriteSheet
-_08083586:
- ldr r0, [r4]
- adds r0, 0x4
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08083594: .4byte 0xffff0000
- thumb_func_end FieldEffectScript_LoadTiles
-
- thumb_func_start sub_8083598
-sub_8083598: @ 8083598
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080835B4 @ =gUnknown_2036E28
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080835B8
- cmp r0, 0x1
- ble _08083606
- cmp r0, 0x2
- beq _080835CC
- cmp r0, 0x3
- beq _080835E0
- b _08083606
- .align 2, 0
-_080835B4: .4byte gUnknown_2036E28
-_080835B8:
- adds r4, 0x10
- lsls r0, r4, 5
- ldr r1, _080835C8 @ =gPlttBufferUnfaded
- adds r0, r1
- movs r1, 0x10
- bl TintPalette_GrayScale
- b _080835F6
- .align 2, 0
-_080835C8: .4byte gPlttBufferUnfaded
-_080835CC:
- adds r4, 0x10
- lsls r0, r4, 5
- ldr r1, _080835DC @ =gPlttBufferUnfaded
- adds r0, r1
- movs r1, 0x10
- bl TintPalette_SepiaTone
- b _080835F6
- .align 2, 0
-_080835DC: .4byte gPlttBufferUnfaded
-_080835E0:
- adds r4, 0x10
- lsls r0, r4, 4
- movs r1, 0x10
- bl sub_8111F38
- lsls r0, r4, 5
- ldr r1, _0808360C @ =gPlttBufferUnfaded
- adds r0, r1
- movs r1, 0x10
- bl TintPalette_GrayScale
-_080835F6:
- lsls r1, r4, 5
- ldr r0, _0808360C @ =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, _08083610 @ =gPlttBufferFaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
-_08083606:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0808360C: .4byte gPlttBufferUnfaded
-_08083610: .4byte gPlttBufferFaded
- thumb_func_end sub_8083598
-
- thumb_func_start sub_8083614
-sub_8083614: @ 8083614
- push {r4-r6,lr}
- adds r6, r0, 0
- bl FieldEffectScript_ReadWord
- adds r5, r0, 0
- ldrh r0, [r5, 0x4]
- bl IndexOfSpritePaletteTag
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl LoadSpritePalette
- cmp r4, 0xFF
- bne _08083642
- ldrh r0, [r5, 0x4]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- bl sub_8083598
-_08083642:
- ldrh r0, [r5, 0x4]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- bl sub_807AA8C
- ldr r0, [r6]
- adds r0, 0x4
- str r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8083614
-
- thumb_func_start sub_808365C
-sub_808365C: @ 808365C
- push {r4-r6,lr}
- adds r6, r0, 0
- bl FieldEffectScript_ReadWord
- adds r5, r0, 0
- ldrh r0, [r5, 0x4]
- bl IndexOfSpritePaletteTag
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl LoadSpritePalette
- cmp r4, 0xFF
- beq _0808368A
- ldrh r0, [r5, 0x4]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- bl sub_8083598
-_0808368A:
- ldr r0, [r6]
- adds r0, 0x4
- str r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_808365C
-
- thumb_func_start FieldEffectScript_CallNative
-FieldEffectScript_CallNative: @ 8083698
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- bl FieldEffectScript_ReadWord
- bl _call_via_r0
- str r0, [r5]
- ldr r0, [r4]
- adds r0, 0x4
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end FieldEffectScript_CallNative
-
- thumb_func_start FieldEffectFreeGraphicsResources
-FieldEffectFreeGraphicsResources: @ 80836B4
- push {r4,r5,lr}
- adds r1, r0, 0
- adds r1, 0x40
- ldrh r5, [r1]
- ldrb r4, [r0, 0x5]
- lsrs r4, 4
- bl DestroySprite
- adds r0, r5, 0
- bl FieldEffectFreeTilesIfUnused
- adds r0, r4, 0
- bl FieldEffectFreePaletteIfUnused
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end FieldEffectFreeGraphicsResources
-
- thumb_func_start FieldEffectStop
-FieldEffectStop: @ 80836D8
- push {r4,lr}
- lsls r4, r1, 24
- lsrs r4, 24
- bl FieldEffectFreeGraphicsResources
- adds r0, r4, 0
- bl FieldEffectActiveListRemove
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end FieldEffectStop
-
- thumb_func_start FieldEffectFreeTilesIfUnused
-FieldEffectFreeTilesIfUnused: @ 80836F0
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl GetSpriteTileTagByTileStart
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r0, _0808374C @ =0x0000ffff
- cmp r3, r0
- beq _08083744
- movs r2, 0
- ldr r5, _08083750 @ =gSprites
-_0808370A:
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r5
- adds r0, r1, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _08083734
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 25
- cmp r0, 0
- bge _08083734
- adds r0, r1, 0
- adds r0, 0x40
- ldrh r0, [r0]
- cmp r4, r0
- beq _08083744
-_08083734:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3F
- bls _0808370A
- adds r0, r3, 0
- bl FreeSpriteTilesByTag
-_08083744:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808374C: .4byte 0x0000ffff
-_08083750: .4byte gSprites
- thumb_func_end FieldEffectFreeTilesIfUnused
-
- thumb_func_start FieldEffectFreePaletteIfUnused
-FieldEffectFreePaletteIfUnused: @ 8083754
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl GetSpritePaletteTagByPaletteNum
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, _080837A4 @ =0x0000ffff
- cmp r5, r0
- beq _0808379C
- movs r2, 0
- ldr r6, _080837A8 @ =gSprites
- adds r3, r4, 0
-_08083770:
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r6
- adds r0, r1, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0808378C
- ldrb r0, [r1, 0x5]
- lsrs r0, 4
- cmp r0, r3
- beq _0808379C
-_0808378C:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3F
- bls _08083770
- adds r0, r5, 0
- bl FreeSpritePaletteByTag
-_0808379C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080837A4: .4byte 0x0000ffff
-_080837A8: .4byte gSprites
- thumb_func_end FieldEffectFreePaletteIfUnused
-
- thumb_func_start FieldEffectActiveListClear
-FieldEffectActiveListClear: @ 80837AC
- push {r4,lr}
- movs r2, 0
- ldr r4, _080837CC @ =gUnknown_3000FC8
- movs r3, 0xFF
-_080837B4:
- adds r0, r2, r4
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1F
- bls _080837B4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080837CC: .4byte gUnknown_3000FC8
- thumb_func_end FieldEffectActiveListClear
-
- thumb_func_start FieldEffectActiveListAdd
-FieldEffectActiveListAdd: @ 80837D0
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r2, 0
- ldr r4, _080837E8 @ =gUnknown_3000FC8
-_080837DA:
- adds r1, r2, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _080837EC
- strb r3, [r1]
- b _080837F6
- .align 2, 0
-_080837E8: .4byte gUnknown_3000FC8
-_080837EC:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1F
- bls _080837DA
-_080837F6:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end FieldEffectActiveListAdd
-
- thumb_func_start FieldEffectActiveListRemove
-FieldEffectActiveListRemove: @ 80837FC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r2, 0
- ldr r4, _08083818 @ =gUnknown_3000FC8
- movs r5, 0xFF
-_08083808:
- adds r1, r2, r4
- ldrb r0, [r1]
- cmp r0, r3
- bne _0808381C
- orrs r0, r5
- strb r0, [r1]
- b _08083826
- .align 2, 0
-_08083818: .4byte gUnknown_3000FC8
-_0808381C:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1F
- bls _08083808
-_08083826:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end FieldEffectActiveListRemove
-
- thumb_func_start FieldEffectActiveListContains
-FieldEffectActiveListContains: @ 808382C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, _08083844 @ =gUnknown_3000FC8
-_08083836:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _08083848
- movs r0, 0x1
- b _08083854
- .align 2, 0
-_08083844: .4byte gUnknown_3000FC8
-_08083848:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x1F
- bls _08083836
- movs r0, 0
-_08083854:
- pop {r1}
- bx r1
- thumb_func_end FieldEffectActiveListContains
-
- thumb_func_start CreateTrainerSprite
-CreateTrainerSprite: @ 8083858
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x18
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- mov r9, r3
- ldr r7, [sp, 0x34]
- lsls r4, 24
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsrs r4, 21
- ldr r3, _080838E0 @ =gTrainerFrontPicPaletteTable
- mov r8, r3
- add r8, r4
- mov r0, r8
- adds r1, r7, 0
- bl LoadCompressedSpritePaletteOverrideBuffer
- ldr r0, _080838E4 @ =gTrainerFrontPicTable
- adds r4, r0
- adds r0, r4, 0
- adds r1, r7, 0
- bl LoadCompressedSpriteSheetOverrideBuffer
- mov r1, sp
- ldrh r0, [r4, 0x6]
- movs r2, 0
- strh r0, [r1]
- mov r3, r8
- ldrh r0, [r3, 0x4]
- strh r0, [r1, 0x2]
- ldr r0, _080838E8 @ =gUnknown_83CBE50
- str r0, [sp, 0x4]
- ldr r0, _080838EC @ =gDummySpriteAnimTable
- str r0, [sp, 0x8]
- str r2, [sp, 0xC]
- ldr r0, _080838F0 @ =gDummySpriteAffineAnimTable
- str r0, [sp, 0x10]
- ldr r0, _080838F4 @ =SpriteCallbackDummy
- str r0, [sp, 0x14]
- lsls r5, 16
- asrs r5, 16
- lsls r6, 16
- asrs r6, 16
- mov r0, sp
- adds r1, r5, 0
- adds r2, r6, 0
- mov r3, r9
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x18
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080838E0: .4byte gTrainerFrontPicPaletteTable
-_080838E4: .4byte gTrainerFrontPicTable
-_080838E8: .4byte gUnknown_83CBE50
-_080838EC: .4byte gDummySpriteAnimTable
-_080838F0: .4byte gDummySpriteAffineAnimTable
-_080838F4: .4byte SpriteCallbackDummy
- thumb_func_end CreateTrainerSprite
-
- thumb_func_start LoadTrainerGfx_TrainerCard
-LoadTrainerGfx_TrainerCard: @ 80838F8
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r1, r2, 0
- lsls r4, 24
- lsls r5, 16
- lsrs r5, 16
- ldr r0, _08083928 @ =gTrainerFrontPicTable
- lsrs r4, 21
- adds r0, r4, r0
- ldr r0, [r0]
- bl LZDecompressVram
- ldr r0, _0808392C @ =gTrainerFrontPicPaletteTable
- adds r4, r0
- ldr r0, [r4]
- adds r1, r5, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08083928: .4byte gTrainerFrontPicTable
-_0808392C: .4byte gTrainerFrontPicPaletteTable
- thumb_func_end LoadTrainerGfx_TrainerCard
-
- thumb_func_start AddNewGameBirchObject
-AddNewGameBirchObject: @ 8083930
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _08083968 @ =gUnknown_83CBE70
- bl LoadSpritePalette
- ldr r0, _0808396C @ =gUnknown_83CBE84
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08083968: .4byte gUnknown_83CBE70
-_0808396C: .4byte gUnknown_83CBE84
- thumb_func_end AddNewGameBirchObject
-
- thumb_func_start sub_8083970
-sub_8083970: @ 8083970
- push {r4,r5,lr}
- sub sp, 0x10
- lsls r0, 16
- lsrs r0, 16
- movs r3, 0x80
- lsls r3, 8
- lsls r1, 16
- asrs r1, 16
- str r1, [sp]
- lsls r2, 16
- asrs r2, 16
- str r2, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- ldr r1, _080839C0 @ =gMonPaletteTable
- lsls r4, r0, 3
- adds r4, r1
- ldrh r1, [r4, 0x4]
- str r1, [sp, 0xC]
- movs r1, 0
- adds r2, r3, 0
- movs r3, 0x1
- bl CreateMonPicSprite_HandleDeoxys
- lsls r0, 16
- lsrs r5, r0, 16
- ldrh r0, [r4, 0x4]
- bl IndexOfSpritePaletteTag
- adds r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- bl sub_807B084
- ldr r0, _080839C4 @ =0x0000ffff
- cmp r5, r0
- beq _080839C8
- lsls r0, r5, 24
- lsrs r0, 24
- b _080839CA
- .align 2, 0
-_080839C0: .4byte gMonPaletteTable
-_080839C4: .4byte 0x0000ffff
-_080839C8:
- movs r0, 0x40
-_080839CA:
- add sp, 0x10
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8083970
-
- thumb_func_start sub_80839D4
-sub_80839D4: @ 80839D4
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x10
- adds r6, r0, 0
- mov r9, r1
- mov r10, r2
- adds r4, r3, 0
- ldr r5, [sp, 0x2C]
- lsls r6, 16
- lsrs r6, 16
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- adds r0, r6, 0
- bl GetMonSpritePalStructFromOtIdPersonality
- mov r8, r0
- lsls r4, 16
- asrs r4, 16
- str r4, [sp]
- lsls r5, 16
- asrs r5, 16
- str r5, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- mov r1, r8
- ldrh r0, [r1, 0x4]
- str r0, [sp, 0xC]
- adds r0, r6, 0
- mov r1, r9
- mov r2, r10
- movs r3, 0x1
- bl CreateMonPicSprite_HandleDeoxys
- lsls r0, 16
- lsrs r4, r0, 16
- mov r1, r8
- ldrh r0, [r1, 0x4]
- bl IndexOfSpritePaletteTag
- adds r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- bl sub_807B084
- ldr r0, _08083A44 @ =0x0000ffff
- cmp r4, r0
- beq _08083A48
- lsls r0, r4, 24
- lsrs r0, 24
- b _08083A4A
- .align 2, 0
-_08083A44: .4byte 0x0000ffff
-_08083A48:
- movs r0, 0x40
-_08083A4A:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80839D4
-
- thumb_func_start sub_8083A5C
-sub_8083A5C: @ 8083A5C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- bl sub_807B0B4
- ldrb r0, [r4, 0x1]
- lsls r0, 30
- cmp r0, 0
- beq _08083A7A
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
-_08083A7A:
- adds r0, r5, 0
- bl FreeAndDestroyMonPicSprite
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8083A5C
-
- thumb_func_start MultiplyInvertedPaletteRGBComponents
-MultiplyInvertedPaletteRGBComponents: @ 8083A88
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 16
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- ldr r4, _08083B0C @ =gPlttBufferUnfaded
- lsrs r0, 15
- adds r4, r0, r4
- ldrh r4, [r4]
- movs r5, 0x1F
- mov r9, r5
- mov r8, r4
- mov r6, r8
- ands r6, r5
- mov r8, r6
- movs r6, 0xF8
- lsls r6, 2
- ands r6, r4
- lsrs r6, 5
- movs r5, 0xF8
- lsls r5, 7
- ands r4, r5
- lsrs r4, 10
- mov r7, r9
- mov r5, r8
- subs r7, r5
- mov r12, r7
- mov r7, r12
- muls r7, r1
- adds r1, r7, 0
- asrs r1, 4
- add r8, r1
- mov r5, r9
- subs r1, r5, r6
- muls r1, r2
- asrs r1, 4
- adds r6, r1
- subs r5, r4
- mov r9, r5
- mov r1, r9
- muls r1, r3
- asrs r1, 4
- adds r4, r1
- mov r7, r8
- lsls r7, 16
- lsls r6, 21
- orrs r6, r7
- lsls r4, 26
- orrs r4, r6
- lsrs r4, 16
- ldr r1, _08083B10 @ =gPlttBufferFaded
- adds r0, r1
- strh r4, [r0]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08083B0C: .4byte gPlttBufferUnfaded
-_08083B10: .4byte gPlttBufferFaded
- thumb_func_end MultiplyInvertedPaletteRGBComponents
-
- thumb_func_start MultiplyPaletteRGBComponents
-MultiplyPaletteRGBComponents: @ 8083B14
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- lsls r0, 16
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- ldr r4, _08083B84 @ =gPlttBufferUnfaded
- lsrs r0, 15
- adds r4, r0, r4
- ldrh r4, [r4]
- movs r5, 0x1F
- mov r8, r5
- mov r6, r8
- ands r6, r4
- mov r8, r6
- movs r5, 0xF8
- lsls r5, 2
- ands r5, r4
- lsrs r5, 5
- movs r6, 0xF8
- lsls r6, 7
- ands r4, r6
- lsrs r4, 10
- mov r6, r8
- muls r6, r1
- adds r1, r6, 0
- asrs r1, 4
- mov r6, r8
- subs r6, r1
- adds r1, r5, 0
- muls r1, r2
- asrs r1, 4
- subs r5, r1
- adds r1, r4, 0
- muls r1, r3
- asrs r1, 4
- subs r4, r1
- lsls r6, 16
- lsls r5, 21
- orrs r5, r6
- lsls r4, 26
- orrs r4, r5
- lsrs r4, 16
- ldr r1, _08083B88 @ =gPlttBufferFaded
- adds r0, r1
- strh r4, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08083B84: .4byte gPlttBufferUnfaded
-_08083B88: .4byte gPlttBufferFaded
- thumb_func_end MultiplyPaletteRGBComponents
-
- thumb_func_start sub_8083B8C
-sub_8083B8C: @ 8083B8C
- push {r4,lr}
- bl CalculatePlayerPartyCount
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08083BC8 @ =sub_8083BD0
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08083BCC @ =gTasks
- adds r1, r0
- strh r4, [r1, 0xA]
- movs r0, 0x5D
- strh r0, [r1, 0xC]
- movs r0, 0x24
- strh r0, [r1, 0xE]
- movs r0, 0x80
- strh r0, [r1, 0x10]
- movs r0, 0x18
- strh r0, [r1, 0x12]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08083BC8: .4byte sub_8083BD0
-_08083BCC: .4byte gTasks
- thumb_func_end sub_8083B8C
-
- thumb_func_start sub_8083BD0
-sub_8083BD0: @ 8083BD0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08083BF8 @ =gTasks
- adds r1, r0
- ldr r2, _08083BFC @ =gUnknown_83CBFD0
- movs r3, 0x8
- ldrsh r0, [r1, r3]
- lsls r0, 2
- adds r0, r2
- ldr r2, [r0]
- adds r0, r1, 0
- bl _call_via_r2
- pop {r0}
- bx r0
- .align 2, 0
-_08083BF8: .4byte gTasks
-_08083BFC: .4byte gUnknown_83CBFD0
- thumb_func_end sub_8083BD0
-
- thumb_func_start PokecenterHealEffect_0
-PokecenterHealEffect_0: @ 8083C00
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- movs r3, 0xE
- ldrsh r2, [r4, r3]
- movs r3, 0x1
- bl sub_8083E14
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x14]
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- movs r2, 0x12
- ldrsh r1, [r4, r2]
- bl PokecenterHealEffectHelper
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x16]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end PokecenterHealEffect_0
-
- thumb_func_start PokecenterHealEffect_1
-PokecenterHealEffect_1: @ 8083C3C
- push {r4,lr}
- adds r2, r0, 0
- ldr r3, _08083C74 @ =gSprites
- movs r1, 0x14
- ldrsh r0, [r2, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- movs r4, 0x2E
- ldrsh r0, [r1, r4]
- cmp r0, 0x1
- ble _08083C6E
- movs r0, 0x16
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x2E]
- adds r1, 0x1
- strh r1, [r0, 0x2E]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
-_08083C6E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08083C74: .4byte gSprites
- thumb_func_end PokecenterHealEffect_1
-
- thumb_func_start sub_8083C78
-sub_8083C78: @ 8083C78
- push {lr}
- adds r3, r0, 0
- ldr r2, _08083C9C @ =gSprites
- movs r0, 0x14
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, 0x4
- ble _08083C98
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_08083C98:
- pop {r0}
- bx r0
- .align 2, 0
-_08083C9C: .4byte gSprites
- thumb_func_end sub_8083C78
-
- thumb_func_start PokecenterHealEffect_3
-PokecenterHealEffect_3: @ 8083CA0
- push {lr}
- ldr r2, _08083CD8 @ =gSprites
- movs r3, 0x14
- ldrsh r1, [r0, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0x6
- ble _08083CD2
- adds r0, r1, 0
- bl DestroySprite
- movs r0, 0x19
- bl FieldEffectActiveListRemove
- ldr r0, _08083CDC @ =sub_8083BD0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08083CD2:
- pop {r0}
- bx r0
- .align 2, 0
-_08083CD8: .4byte gSprites
-_08083CDC: .4byte sub_8083BD0
- thumb_func_end PokecenterHealEffect_3
-
- thumb_func_start sub_8083CE0
-sub_8083CE0: @ 8083CE0
- push {r4,lr}
- bl CalculatePlayerPartyCount
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08083D14 @ =sub_8083D1C
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08083D18 @ =gTasks
- adds r1, r0
- strh r4, [r1, 0xA]
- movs r0, 0x75
- strh r0, [r1, 0xC]
- movs r0, 0x3C
- strh r0, [r1, 0xE]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08083D14: .4byte sub_8083D1C
-_08083D18: .4byte gTasks
- thumb_func_end sub_8083CE0
-
- thumb_func_start sub_8083D1C
-sub_8083D1C: @ 8083D1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08083D44 @ =gTasks
- adds r1, r0
- ldr r2, _08083D48 @ =gUnknown_83CBFE0
- movs r3, 0x8
- ldrsh r0, [r1, r3]
- lsls r0, 2
- adds r0, r2
- ldr r2, [r0]
- adds r0, r1, 0
- bl _call_via_r2
- pop {r0}
- bx r0
- .align 2, 0
-_08083D44: .4byte gTasks
-_08083D48: .4byte gUnknown_83CBFE0
- thumb_func_end sub_8083D1C
-
- thumb_func_start HallOfFameRecordEffect_0
-HallOfFameRecordEffect_0: @ 8083D4C
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- movs r3, 0xE
- ldrsh r2, [r4, r3]
- movs r3, 0
- bl sub_8083E14
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x14]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end HallOfFameRecordEffect_0
-
- thumb_func_start sub_8083D74
-sub_8083D74: @ 8083D74
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, _08083DA8 @ =gSprites
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, 0x1
- ble _08083DA2
- movs r0, 0x78
- movs r1, 0x19
- bl sub_808428C
- ldrh r0, [r4, 0x26]
- adds r0, 0x1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08083DA2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08083DA8: .4byte gSprites
- thumb_func_end sub_8083D74
-
- thumb_func_start sub_8083DAC
-sub_8083DAC: @ 8083DAC
- push {lr}
- adds r3, r0, 0
- ldr r2, _08083DD0 @ =gSprites
- movs r0, 0x14
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, 0x4
- ble _08083DCC
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_08083DCC:
- pop {r0}
- bx r0
- .align 2, 0
-_08083DD0: .4byte gSprites
- thumb_func_end sub_8083DAC
-
- thumb_func_start sub_8083DD4
-sub_8083DD4: @ 8083DD4
- push {lr}
- ldr r2, _08083E0C @ =gSprites
- movs r3, 0x14
- ldrsh r1, [r0, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0x6
- ble _08083E06
- adds r0, r1, 0
- bl DestroySprite
- movs r0, 0x3E
- bl FieldEffectActiveListRemove
- ldr r0, _08083E10 @ =sub_8083D1C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08083E06:
- pop {r0}
- bx r0
- .align 2, 0
-_08083E0C: .4byte gSprites
-_08083E10: .4byte sub_8083D1C
- thumb_func_end sub_8083DD4
-
- thumb_func_start sub_8083E14
-sub_8083E14: @ 8083E14
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- mov r8, r0
- adds r4, r1, 0
- adds r5, r2, 0
- adds r6, r3, 0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- ldr r0, _08083E68 @ =sub_8083E70
- bl CreateInvisibleSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r2, _08083E6C @ =gSprites
- adds r1, r2
- strh r4, [r1, 0x24]
- strh r5, [r1, 0x26]
- adds r3, r1, 0
- adds r3, 0x43
- movs r2, 0xFF
- strb r2, [r3]
- strh r6, [r1, 0x38]
- mov r2, r8
- strh r2, [r1, 0x3A]
- strh r0, [r1, 0x3C]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08083E68: .4byte sub_8083E70
-_08083E6C: .4byte gSprites
- thumb_func_end sub_8083E14
-
- thumb_func_start sub_8083E70
-sub_8083E70: @ 8083E70
- push {lr}
- ldr r2, _08083E88 @ =gUnknown_83CBFF0
- movs r3, 0x2E
- ldrsh r1, [r0, r3]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08083E88: .4byte gUnknown_83CBFF0
- thumb_func_end sub_8083E70
-
- thumb_func_start PokeballGlowEffect_0
-PokeballGlowEffect_0: @ 8083E8C
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x30]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08083EA4
- subs r0, r1, 0x1
- strh r0, [r4, 0x30]
- lsls r0, 16
- cmp r0, 0
- bne _08083F00
-_08083EA4:
- movs r0, 0x19
- strh r0, [r4, 0x30]
- ldr r0, _08083F18 @ =gUnknown_83CBF88
- ldr r1, _08083F1C @ =gUnknown_83CC010
- movs r2, 0x32
- ldrsh r3, [r4, r2]
- lsls r3, 2
- adds r3, r1
- ldrh r1, [r4, 0x24]
- ldrh r2, [r3]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r4, 0x26]
- ldrh r3, [r3, 0x2]
- adds r2, r3
- lsls r2, 16
- asrs r2, 16
- movs r3, 0xFF
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08083F20 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- movs r2, 0x8
- orrs r0, r2
- strb r0, [r1, 0x5]
- ldrh r0, [r4, 0x3C]
- strh r0, [r1, 0x2E]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x3A]
- subs r0, 0x1
- strh r0, [r4, 0x3A]
- movs r0, 0x17
- bl PlaySE
-_08083F00:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08083F12
- movs r0, 0x20
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
-_08083F12:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08083F18: .4byte gUnknown_83CBF88
-_08083F1C: .4byte gUnknown_83CC010
-_08083F20: .4byte gSprites
- thumb_func_end PokeballGlowEffect_0
-
- thumb_func_start PokeballGlowEffect_1
-PokeballGlowEffect_1: @ 8083F24
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x30]
- subs r0, 0x1
- strh r0, [r1, 0x30]
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _08083F54
- ldrh r0, [r1, 0x2E]
- adds r0, 0x1
- strh r0, [r1, 0x2E]
- movs r0, 0x8
- strh r0, [r1, 0x30]
- strh r2, [r1, 0x32]
- strh r2, [r1, 0x34]
- movs r2, 0x38
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _08083F54
- movs r0, 0x80
- lsls r0, 1
- bl PlayFanfare
-_08083F54:
- pop {r0}
- bx r0
- thumb_func_end PokeballGlowEffect_1
-
- thumb_func_start PokeballGlowEffect_2
-PokeballGlowEffect_2: @ 8083F58
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r7, r0, 0
- ldrh r0, [r7, 0x30]
- subs r0, 0x1
- strh r0, [r7, 0x30]
- lsls r0, 16
- cmp r0, 0
- bne _08083F88
- movs r0, 0x8
- strh r0, [r7, 0x30]
- ldrh r0, [r7, 0x32]
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- strh r0, [r7, 0x32]
- cmp r0, 0
- bne _08083F88
- ldrh r0, [r7, 0x34]
- adds r0, 0x1
- strh r0, [r7, 0x34]
-_08083F88:
- ldrh r4, [r7, 0x32]
- adds r4, 0x3
- movs r0, 0x3
- mov r8, r0
- mov r1, r8
- ands r4, r1
- ldr r3, _08084080 @ =0x00001007
- mov r10, r3
- mov r0, r10
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x84
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- ldr r6, _08084084 @ =gUnknown_83CC028
- adds r1, r4, r6
- ldrb r1, [r1]
- ldr r5, _08084088 @ =gUnknown_83CC02C
- adds r2, r4, r5
- ldrb r2, [r2]
- ldr r3, _0808408C @ =gUnknown_83CC030
- mov r9, r3
- add r4, r9
- ldrb r3, [r4]
- bl MultiplyInvertedPaletteRGBComponents
- ldrh r4, [r7, 0x32]
- adds r4, 0x2
- mov r0, r8
- ands r4, r0
- mov r0, r10
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x83
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- adds r1, r4, r6
- ldrb r1, [r1]
- adds r2, r4, r5
- ldrb r2, [r2]
- add r4, r9
- ldrb r3, [r4]
- bl MultiplyInvertedPaletteRGBComponents
- ldrh r4, [r7, 0x32]
- adds r4, 0x1
- mov r3, r8
- ands r4, r3
- mov r0, r10
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x81
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- adds r1, r4, r6
- ldrb r1, [r1]
- adds r2, r4, r5
- ldrb r2, [r2]
- add r4, r9
- ldrb r3, [r4]
- bl MultiplyInvertedPaletteRGBComponents
- ldrh r4, [r7, 0x32]
- lsls r4, 24
- lsrs r4, 24
- mov r0, r10
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- ldr r3, _08084090 @ =0x01050000
- adds r0, r3
- lsrs r0, 16
- adds r6, r4, r6
- ldrb r6, [r6]
- adds r5, r4, r5
- ldrb r5, [r5]
- add r4, r9
- ldrb r4, [r4]
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- mov r0, r10
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- ldr r1, _08084094 @ =0x01030000
- adds r0, r1
- lsrs r0, 16
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- movs r3, 0x34
- ldrsh r0, [r7, r3]
- cmp r0, 0x2
- ble _08084072
- ldrh r0, [r7, 0x2E]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r7, 0x2E]
- movs r0, 0x8
- strh r0, [r7, 0x30]
- strh r1, [r7, 0x32]
-_08084072:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08084080: .4byte 0x00001007
-_08084084: .4byte gUnknown_83CC028
-_08084088: .4byte gUnknown_83CC02C
-_0808408C: .4byte gUnknown_83CC030
-_08084090: .4byte 0x01050000
-_08084094: .4byte 0x01030000
- thumb_func_end PokeballGlowEffect_2
-
- thumb_func_start PokeballGlowEffect_3
-PokeballGlowEffect_3: @ 8084098
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r2, r0, 0
- ldrh r0, [r2, 0x30]
- subs r0, 0x1
- strh r0, [r2, 0x30]
- lsls r0, 16
- cmp r0, 0
- bne _080840C8
- movs r0, 0x8
- strh r0, [r2, 0x30]
- ldrh r0, [r2, 0x32]
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- strh r0, [r2, 0x32]
- cmp r0, 0x3
- bne _080840C8
- ldrh r0, [r2, 0x2E]
- adds r0, 0x1
- strh r0, [r2, 0x2E]
- movs r0, 0x1E
- strh r0, [r2, 0x30]
-_080840C8:
- ldrh r4, [r2, 0x32]
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08084174 @ =0x00001007
- mov r8, r0
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x84
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- ldr r1, _08084178 @ =gUnknown_83CC028
- adds r1, r4, r1
- ldrb r6, [r1]
- ldr r1, _0808417C @ =gUnknown_83CC02C
- adds r1, r4, r1
- ldrb r5, [r1]
- ldr r1, _08084180 @ =gUnknown_83CC030
- adds r4, r1
- ldrb r4, [r4]
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- mov r0, r8
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x83
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- mov r0, r8
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- movs r1, 0x81
- lsls r1, 17
- adds r0, r1
- lsrs r0, 16
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- mov r0, r8
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- ldr r1, _08084184 @ =0x01050000
- adds r0, r1
- lsrs r0, 16
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- mov r0, r8
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- ldr r1, _08084188 @ =0x01030000
- adds r0, r1
- lsrs r0, 16
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl MultiplyInvertedPaletteRGBComponents
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08084174: .4byte 0x00001007
-_08084178: .4byte gUnknown_83CC028
-_0808417C: .4byte gUnknown_83CC02C
-_08084180: .4byte gUnknown_83CC030
-_08084184: .4byte 0x01050000
-_08084188: .4byte 0x01030000
- thumb_func_end PokeballGlowEffect_3
-
- thumb_func_start PokeballGlowEffect_4
-PokeballGlowEffect_4: @ 808418C
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x30]
- subs r0, 0x1
- strh r0, [r1, 0x30]
- lsls r0, 16
- cmp r0, 0
- bne _080841A2
- ldrh r0, [r1, 0x2E]
- adds r0, 0x1
- strh r0, [r1, 0x2E]
-_080841A2:
- pop {r0}
- bx r0
- thumb_func_end PokeballGlowEffect_4
-
- thumb_func_start PokeballGlowEffect_5
-PokeballGlowEffect_5: @ 80841A8
- ldrh r1, [r0, 0x2E]
- adds r1, 0x1
- strh r1, [r0, 0x2E]
- bx lr
- thumb_func_end PokeballGlowEffect_5
-
- thumb_func_start PokeballGlowEffect_6
-PokeballGlowEffect_6: @ 80841B0
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080841C6
- bl IsFanfareTaskInactive
- lsls r0, 24
- cmp r0, 0
- beq _080841CC
-_080841C6:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
-_080841CC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end PokeballGlowEffect_6
-
- thumb_func_start nullsub_50
-nullsub_50: @ 80841D4
- bx lr
- thumb_func_end nullsub_50
-
- thumb_func_start SpriteCB_PokeballGlow
-SpriteCB_PokeballGlow: @ 80841D8
- push {lr}
- adds r3, r0, 0
- ldr r2, _080841FC @ =gSprites
- movs r0, 0x2E
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, 0x4
- ble _080841F8
- adds r0, r3, 0
- bl FieldEffectFreeGraphicsResources
-_080841F8:
- pop {r0}
- bx r0
- .align 2, 0
-_080841FC: .4byte gSprites
- thumb_func_end SpriteCB_PokeballGlow
-
- thumb_func_start PokecenterHealEffectHelper
-PokecenterHealEffectHelper: @ 8084200
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- ldr r0, _08084244 @ =gUnknown_83CBFA0
- lsls r3, 16
- asrs r3, 16
- lsls r2, 16
- asrs r2, 16
- adds r1, r3, 0
- movs r3, 0
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r1, _08084248 @ =gSprites
- adds r2, r1
- ldrb r3, [r2, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r3
- movs r3, 0x8
- orrs r1, r3
- strb r1, [r2, 0x5]
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r3, 0x4
- orrs r1, r3
- strb r1, [r2]
- pop {r1}
- bx r1
- .align 2, 0
-_08084244: .4byte gUnknown_83CBFA0
-_08084248: .4byte gSprites
- thumb_func_end PokecenterHealEffectHelper
-
- thumb_func_start sub_808424C
-sub_808424C: @ 808424C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08084270
- movs r0, 0
- strh r0, [r4, 0x2E]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- subs r0, 0x5
- ands r0, r1
- strb r0, [r2]
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAnim
-_08084270:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08084284
- adds r0, r4, 0
- bl FieldEffectFreeGraphicsResources
-_08084284:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_808424C
-
- thumb_func_start sub_808428C
-sub_808428C: @ 808428C
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- ldr r0, _080842A8 @ =gUnknown_83CBFB8
- lsls r3, 16
- asrs r3, 16
- lsls r2, 16
- asrs r2, 16
- adds r1, r3, 0
- movs r3, 0
- bl CreateSpriteAtEnd
- pop {r0}
- bx r0
- .align 2, 0
-_080842A8: .4byte gUnknown_83CBFB8
- thumb_func_end sub_808428C
-
- thumb_func_start sub_80842AC
-sub_80842AC: @ 80842AC
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080842C2
- adds r0, r2, 0
- bl FieldEffectFreeGraphicsResources
-_080842C2:
- pop {r0}
- bx r0
- thumb_func_end sub_80842AC
-
- thumb_func_start sub_80842C8
-sub_80842C8: @ 80842C8
- push {lr}
- ldr r0, _080842DC @ =CB2_ReturnToField
- bl SetMainCallback2
- ldr r1, _080842E0 @ =gFieldCallback
- ldr r0, _080842E4 @ =mapldr_080842E8
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_080842DC: .4byte CB2_ReturnToField
-_080842E0: .4byte gFieldCallback
-_080842E4: .4byte mapldr_080842E8
- thumb_func_end sub_80842C8
-
- thumb_func_start mapldr_080842E8
-mapldr_080842E8: @ 80842E8
- push {lr}
- bl sub_807DC00
- ldr r0, _08084308 @ =task00_8084310
- movs r1, 0
- bl CreateTask
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _0808430C @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08084308: .4byte task00_8084310
-_0808430C: .4byte gFieldCallback
- thumb_func_end mapldr_080842E8
-
- thumb_func_start task00_8084310
-task00_8084310: @ 8084310
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0808437C @ =gTasks
- adds r4, r0, r1
- movs r0, 0x8
- ldrsh r6, [r4, r0]
- cmp r6, 0
- bne _08084350
- bl IsWeatherNotFadingIn
- lsls r0, 24
- cmp r0, 0
- beq _08084376
- bl GetCursorSelectionMonId
- ldr r1, _08084380 @ =gFieldEffectArguments
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1]
- cmp r0, 0x5
- ble _08084344
- str r6, [r1]
-_08084344:
- movs r0, 0x1F
- bl FieldEffectStart
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08084350:
- movs r0, 0x1F
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08084376
- bl sub_8054CA0
- bl WarpIntoMap
- ldr r0, _08084384 @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r1, _08084388 @ =gFieldCallback
- ldr r0, _0808438C @ =mapldr_08084390
- str r0, [r1]
- adds r0, r5, 0
- bl DestroyTask
-_08084376:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0808437C: .4byte gTasks
-_08084380: .4byte gFieldEffectArguments
-_08084384: .4byte CB2_LoadMap
-_08084388: .4byte gFieldCallback
-_0808438C: .4byte mapldr_08084390
- thumb_func_end task00_8084310
-
- thumb_func_start mapldr_08084390
-mapldr_08084390: @ 8084390
- push {r4,lr}
- bl Overworld_PlaySpecialMapMusic
- bl sub_807DC00
- ldr r0, _080843E8 @ =c3_080843F8
- movs r1, 0
- bl CreateTask
- ldr r4, _080843EC @ =gObjectEvents
- ldr r3, _080843F0 @ =gPlayerAvatar
- ldrb r1, [r3, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x1]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldrb r1, [r3]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080843D2
- ldrb r1, [r3, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x3
- bl ObjectEventTurn
-_080843D2:
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _080843F4 @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080843E8: .4byte c3_080843F8
-_080843EC: .4byte gObjectEvents
-_080843F0: .4byte gPlayerAvatar
-_080843F4: .4byte gFieldCallback
- thumb_func_end mapldr_08084390
-
- thumb_func_start c3_080843F8
-c3_080843F8: @ 80843F8
- 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, _0808444C @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0808442A
- ldr r0, _08084450 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08084444
- movs r0, 0x20
- bl FieldEffectStart
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_0808442A:
- movs r0, 0x20
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08084444
- bl ScriptContext2_Disable
- bl UnfreezeObjectEvents
- adds r0, r5, 0
- bl DestroyTask
-_08084444:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808444C: .4byte gTasks
-_08084450: .4byte gPaletteFade
- thumb_func_end c3_080843F8
-
- thumb_func_start sub_8084454
-sub_8084454: @ 8084454
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_8111CF0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r0, _0808447C @ =sub_8084484
- movs r1, 0
- bl CreateTask
- ldr r1, _08084480 @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_0808447C: .4byte sub_8084484
-_08084480: .4byte gFieldCallback
- thumb_func_end sub_8084454
-
- thumb_func_start sub_8084484
-sub_8084484: @ 8084484
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080844B4 @ =gTasks
- adds r4, r1, r0
- ldr r5, _080844B8 @ =gUnknown_83CC034
-_08084496:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _08084496
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080844B4: .4byte gTasks
-_080844B8: .4byte gUnknown_83CC034
- thumb_func_end sub_8084484
-
- thumb_func_start sub_80844BC
-sub_80844BC: @ 80844BC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- mov r9, r0
- ldr r6, _08084558 @ =gPlayerAvatar
- ldrb r0, [r6, 0x5]
- lsls r5, r0, 3
- adds r5, r0
- lsls r5, 2
- ldr r0, _0808455C @ =gObjectEvents
- mov r8, r0
- add r5, r8
- ldrb r0, [r6, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08084560 @ =gSprites
- adds r4, r0
- bl CameraObjectReset2
- ldrb r1, [r6, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldrb r1, [r0, 0x1]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x1]
- movs r0, 0x1
- strb r0, [r6, 0x6]
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl ObjectEventSetHeldMovement
- adds r3, r4, 0
- adds r3, 0x42
- ldrb r0, [r3]
- lsrs r0, 6
- mov r1, r9
- strh r0, [r1, 0x10]
- ldrb r0, [r5, 0x3]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r5, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- orrs r0, r2
- strb r0, [r4, 0x5]
- ldrb r1, [r3]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r3]
- mov r1, r9
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- movs r0, 0x1
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08084558: .4byte gPlayerAvatar
-_0808455C: .4byte gObjectEvents
-_08084560: .4byte gSprites
- thumb_func_end sub_80844BC
-
- thumb_func_start sub_8084564
-sub_8084564: @ 8084564
- push {r4,lr}
- adds r4, r0, 0
- bl IsWeatherNotFadingIn
- lsls r0, 24
- cmp r0, 0
- beq _08084578
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08084578:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8084564
-
- thumb_func_start sub_8084580
-sub_8084580: @ 8084580
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r6, _080845E4 @ =gPlayerAvatar
- ldrb r0, [r6, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r0, _080845E8 @ =gSprites
- adds r2, r0
- adds r0, r2, 0
- adds r0, 0x29
- movs r4, 0
- ldrsb r4, [r0, r4]
- lsls r0, r4, 17
- negs r0, r0
- ldrh r1, [r2, 0x22]
- ldr r3, _080845EC @ =gSpriteCoordOffsetY
- adds r1, r4
- ldrh r3, [r3]
- adds r1, r3
- asrs r0, 16
- adds r0, r1
- negs r0, r0
- movs r1, 0
- strh r0, [r2, 0x26]
- movs r0, 0x1
- strh r0, [r5, 0xA]
- strh r1, [r5, 0xC]
- ldr r2, _080845F0 @ =gObjectEvents
- ldrb r0, [r6, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1]
- movs r0, 0x25
- bl PlaySE
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080845E4: .4byte gPlayerAvatar
-_080845E8: .4byte gSprites
-_080845EC: .4byte gSpriteCoordOffsetY
-_080845F0: .4byte gObjectEvents
- thumb_func_end sub_8084580
-
- thumb_func_start sub_80845F4
-sub_80845F4: @ 80845F4
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r2, _080846A0 @ =gPlayerAvatar
- ldrb r1, [r2, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080846A4 @ =gObjectEvents
- adds r6, r0, r1
- ldrb r1, [r2, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080846A8 @ =gSprites
- adds r5, r0, r1
- ldrh r0, [r4, 0xA]
- ldrh r1, [r5, 0x26]
- adds r0, r1
- strh r0, [r5, 0x26]
- ldrh r2, [r4, 0xA]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x7
- bgt _08084636
- ldrh r1, [r4, 0xC]
- adds r0, r2, r1
- strh r0, [r4, 0xC]
- movs r1, 0xF
- ands r0, r1
- cmp r0, 0
- beq _08084636
- lsls r0, r2, 1
- strh r0, [r4, 0xA]
-_08084636:
- ldrh r2, [r4, 0xE]
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08084674
- movs r0, 0x26
- ldrsh r1, [r5, r0]
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- blt _08084674
- adds r0, r2, 0x1
- strh r0, [r4, 0xE]
- ldrb r1, [r6, 0x3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r6, 0x3]
- ldrb r1, [r4, 0x10]
- adds r3, r5, 0
- adds r3, 0x42
- lsls r1, 6
- ldrb r2, [r3]
- movs r0, 0x3F
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- ldrb r0, [r6]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r6]
-_08084674:
- movs r1, 0x26
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _08084698
- movs r0, 0xCF
- bl PlaySE
- ldrb r0, [r6]
- movs r1, 0x8
- orrs r0, r1
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r6]
- movs r0, 0
- strh r0, [r5, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08084698:
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080846A0: .4byte gPlayerAvatar
-_080846A4: .4byte gObjectEvents
-_080846A8: .4byte gSprites
- thumb_func_end sub_80845F4
-
- thumb_func_start sub_80846AC
-sub_80846AC: @ 80846AC
- push {lr}
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- movs r2, 0
- strh r1, [r0, 0x8]
- movs r1, 0x4
- strh r1, [r0, 0xA]
- strh r2, [r0, 0xC]
- movs r0, 0
- bl SetCameraPanningCallback
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_80846AC
-
- thumb_func_start sub_80846C8
-sub_80846C8: @ 80846C8
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl SetCameraPanning
- ldrh r0, [r4, 0xA]
- negs r2, r0
- strh r2, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- movs r1, 0x3
- ands r0, r1
- cmp r0, 0
- bne _080846F0
- lsls r0, r2, 16
- asrs r0, 17
- strh r0, [r4, 0xA]
-_080846F0:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080846FE
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080846FE:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80846C8
-
- thumb_func_start sub_8084708
-sub_8084708: @ 8084708
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _08084778 @ =gPlayerAvatar
- movs r0, 0
- strb r0, [r1, 0x6]
- bl ScriptContext2_Disable
- bl CameraObjectReset1
- bl UnfreezeObjectEvents
- bl InstallCameraPanAheadCallback
- 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]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 16
- lsrs r0, 16
- bl sub_8055B38
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08084760
- ldr r0, _0808477C @ =0x00004001
- movs r1, 0x1
- bl VarSet
- movs r0, 0x8
- bl SetPlayerAvatarTransitionFlags
- movs r0, 0x16
- bl HelpSystem_SetSomeVariable2
-_08084760:
- ldr r0, _08084780 @ =sub_8084484
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084778: .4byte gPlayerAvatar
-_0808477C: .4byte 0x00004001
-_08084780: .4byte sub_8084484
- thumb_func_end sub_8084708
-
- thumb_func_start sub_8084784
-sub_8084784: @ 8084784
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _080847B8 @ =sub_80847C0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080847BC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0xA]
- cmp r4, 0x6A
- bne _080847B0
- movs r0, 0x1
- strh r0, [r1, 0xA]
-_080847B0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080847B8: .4byte sub_80847C0
-_080847BC: .4byte gTasks
- thumb_func_end sub_8084784
-
- thumb_func_start sub_80847C0
-sub_80847C0: @ 80847C0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080847F0 @ =gTasks
- adds r4, r1, r0
- ldr r5, _080847F4 @ =gUnknown_83CC050
-_080847D2:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _080847D2
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080847F0: .4byte gTasks
-_080847F4: .4byte gUnknown_83CC050
- thumb_func_end sub_80847C0
-
- thumb_func_start sub_80847F8
-sub_80847F8: @ 80847F8
- push {r4,lr}
- adds r4, r0, 0
- bl FreezeObjectEvents
- bl CameraObjectReset2
- ldrb r0, [r4, 0xA]
- bl StartEscalator
- movs r0, 0x1
- bl sub_81128BC
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80847F8
-
- thumb_func_start sub_8084820
-sub_8084820: @ 8084820
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08084888 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0808488C @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _0808484A
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _0808487E
-_0808484A:
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r5, 0x8]
- strh r1, [r5, 0xC]
- strh r1, [r5, 0xE]
- ldrb r0, [r5, 0xA]
- cmp r0, 0
- bne _08084878
- movs r0, 0x4
- strh r0, [r5, 0x8]
-_08084878:
- movs r0, 0x49
- bl PlaySE
-_0808487E:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084888: .4byte gPlayerAvatar
-_0808488C: .4byte gObjectEvents
- thumb_func_end sub_8084820
-
- thumb_func_start sub_8084890
-sub_8084890: @ 8084890
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80848F8
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x3
- ble _080848AA
- bl sub_8084990
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080848AA:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8084890
-
- thumb_func_start sub_80848B4
-sub_80848B4: @ 80848B4
- push {lr}
- bl sub_80848F8
- bl sub_80849A0
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80848B4
-
- thumb_func_start sub_80848C4
-sub_80848C4: @ 80848C4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8084944
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x3
- ble _080848DE
- bl sub_8084990
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080848DE:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80848C4
-
- thumb_func_start sub_80848E8
-sub_80848E8: @ 80848E8
- push {lr}
- bl sub_8084944
- bl sub_80849A0
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80848E8
-
- thumb_func_start sub_80848F8
-sub_80848F8: @ 80848F8
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _0808493C @ =gPlayerAvatar
- ldrb r0, [r0, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08084940 @ =gSprites
- adds r4, r0
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- movs r0, 0x84
- bl Cos
- strh r0, [r4, 0x24]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- movs r0, 0x94
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0xE]
- adds r0, 0x1
- strh r0, [r5, 0xE]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08084936
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
-_08084936:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808493C: .4byte gPlayerAvatar
-_08084940: .4byte gSprites
- thumb_func_end sub_80848F8
-
- thumb_func_start sub_8084944
-sub_8084944: @ 8084944
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08084988 @ =gPlayerAvatar
- ldrb r0, [r0, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _0808498C @ =gSprites
- adds r4, r0
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- movs r0, 0x7C
- bl Cos
- strh r0, [r4, 0x24]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- movs r0, 0x76
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0xE]
- adds r0, 0x1
- strh r0, [r5, 0xE]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08084982
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
-_08084982:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08084988: .4byte gPlayerAvatar
-_0808498C: .4byte gSprites
- thumb_func_end sub_8084944
-
- thumb_func_start sub_8084990
-sub_8084990: @ 8084990
- push {lr}
- bl sub_8055F88
- bl sub_807DC18
- pop {r0}
- bx r0
- thumb_func_end sub_8084990
-
- thumb_func_start sub_80849A0
-sub_80849A0: @ 80849A0
- push {lr}
- ldr r0, _080849E0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080849DC
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080849DC
- bl StopEscalator
- bl WarpIntoMap
- ldr r1, _080849E4 @ =gFieldCallback
- ldr r0, _080849E8 @ =sub_80849F4
- str r0, [r1]
- ldr r0, _080849EC @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r0, _080849F0 @ =sub_80847C0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080849DC:
- pop {r0}
- bx r0
- .align 2, 0
-_080849E0: .4byte gPaletteFade
-_080849E4: .4byte gFieldCallback
-_080849E8: .4byte sub_80849F4
-_080849EC: .4byte CB2_LoadMap
-_080849F0: .4byte sub_80847C0
- thumb_func_end sub_80849A0
-
- thumb_func_start sub_80849F4
-sub_80849F4: @ 80849F4
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_8111CF0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r0, _08084A1C @ =sub_8084A24
- movs r1, 0
- bl CreateTask
- ldr r1, _08084A20 @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08084A1C: .4byte sub_8084A24
-_08084A20: .4byte gFieldCallback
- thumb_func_end sub_80849F4
-
- thumb_func_start sub_8084A24
-sub_8084A24: @ 8084A24
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08084A54 @ =gTasks
- adds r4, r1, r0
- ldr r5, _08084A58 @ =gUnknown_83CC068
-_08084A36:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _08084A36
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08084A54: .4byte gTasks
-_08084A58: .4byte gUnknown_83CC068
- thumb_func_end sub_8084A24
-
- thumb_func_start sub_8084A5C
-sub_8084A5C: @ 8084A5C
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- bl CameraObjectReset2
- ldr r0, _08084ABC @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08084AC0 @ =gObjectEvents
- adds r4, r0
- movs r0, 0x4
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- 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]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r1, r0, 24
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0x10
- strh r0, [r5, 0xA]
- cmp r1, 0x6B
- bne _08084AC4
- movs r1, 0x1
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _08084AC6
- .align 2, 0
-_08084ABC: .4byte gPlayerAvatar
-_08084AC0: .4byte gObjectEvents
-_08084AC4:
- movs r1, 0
-_08084AC6:
- adds r0, r1, 0
- bl StartEscalator
- movs r0, 0x1
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8084A5C
-
- thumb_func_start sub_8084AD8
-sub_8084AD8: @ 8084AD8
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08084B10 @ =gPlayerAvatar
- ldrb r0, [r0, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08084B14 @ =gSprites
- adds r4, r0
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- movs r0, 0x84
- bl Cos
- strh r0, [r4, 0x24]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- movs r0, 0x94
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084B10: .4byte gPlayerAvatar
-_08084B14: .4byte gSprites
- thumb_func_end sub_8084AD8
-
- thumb_func_start sub_8084B18
-sub_8084B18: @ 8084B18
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, _08084B70 @ =gPlayerAvatar
- ldrb r1, [r0, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08084B74 @ =gSprites
- adds r5, r0, r1
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0x84
- bl Cos
- strh r0, [r5, 0x24]
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0x94
- bl Sin
- strh r0, [r5, 0x26]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08084B56
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
-_08084B56:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08084B66
- strh r0, [r5, 0x24]
- strh r0, [r5, 0x26]
- movs r0, 0x5
- strh r0, [r4, 0x8]
-_08084B66:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084B70: .4byte gPlayerAvatar
-_08084B74: .4byte gSprites
- thumb_func_end sub_8084B18
-
- thumb_func_start sub_8084B78
-sub_8084B78: @ 8084B78
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08084BB0 @ =gPlayerAvatar
- ldrb r0, [r0, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08084BB4 @ =gSprites
- adds r4, r0
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- movs r0, 0x7C
- bl Cos
- strh r0, [r4, 0x24]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- movs r0, 0x76
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084BB0: .4byte gPlayerAvatar
-_08084BB4: .4byte gSprites
- thumb_func_end sub_8084B78
-
- thumb_func_start sub_8084BB8
-sub_8084BB8: @ 8084BB8
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, _08084C10 @ =gPlayerAvatar
- ldrb r1, [r0, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08084C14 @ =gSprites
- adds r5, r0, r1
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0x7C
- bl Cos
- strh r0, [r5, 0x24]
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0x76
- bl Sin
- strh r0, [r5, 0x26]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08084BF6
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
-_08084BF6:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08084C08
- strh r0, [r5, 0x24]
- strh r0, [r5, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08084C08:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084C10: .4byte gPlayerAvatar
-_08084C14: .4byte gSprites
- thumb_func_end sub_8084BB8
-
- thumb_func_start sub_8084C18
-sub_8084C18: @ 8084C18
- push {r4,lr}
- adds r4, r0, 0
- bl IsEscalatorMoving
- lsls r0, 24
- cmp r0, 0
- bne _08084C34
- bl StopEscalator
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x1
- b _08084C36
-_08084C34:
- movs r0, 0
-_08084C36:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8084C18
-
- thumb_func_start sub_8084C3C
-sub_8084C3C: @ 8084C3C
- push {r4,lr}
- ldr r0, _08084C94 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08084C98 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08084C8A
- bl CameraObjectReset1
- bl ScriptContext2_Disable
- bl UnfreezeObjectEvents
- movs r0, 0x4
- bl GetWalkNormalMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldr r0, _08084C9C @ =sub_8084A24
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0x2
- bl sub_81128BC
-_08084C8A:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084C94: .4byte gPlayerAvatar
-_08084C98: .4byte gObjectEvents
-_08084C9C: .4byte sub_8084A24
- thumb_func_end sub_8084C3C
-
- thumb_func_start oei_waterfall
-oei_waterfall: @ 8084CA0
- push {r4,lr}
- ldr r4, _08084CCC @ =sub_8084CD8
- adds r0, r4, 0
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08084CD0 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _08084CD4 @ =gFieldEffectArguments
- ldr r2, [r2]
- strh r2, [r1, 0xA]
- bl _call_via_r4
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084CCC: .4byte sub_8084CD8
-_08084CD0: .4byte gTasks
-_08084CD4: .4byte gFieldEffectArguments
- thumb_func_end oei_waterfall
-
- thumb_func_start sub_8084CD8
-sub_8084CD8: @ 8084CD8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _08084D14 @ =gUnknown_83CC084
- ldr r2, _08084D18 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_08084CEA:
- movs r0, 0x8
- ldrsh r2, [r4, r0]
- lsls r2, 2
- adds r2, r5
- ldr r0, _08084D1C @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _08084D20 @ =gObjectEvents
- adds r1, r0
- ldr r2, [r2]
- adds r0, r4, 0
- bl _call_via_r2
- lsls r0, 24
- cmp r0, 0
- bne _08084CEA
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08084D14: .4byte gUnknown_83CC084
-_08084D18: .4byte gTasks
-_08084D1C: .4byte gPlayerAvatar
-_08084D20: .4byte gObjectEvents
- thumb_func_end sub_8084CD8
-
- thumb_func_start sub_8084D24
-sub_8084D24: @ 8084D24
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- ldr r1, _08084D40 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084D40: .4byte gPlayerAvatar
- thumb_func_end sub_8084D24
-
- thumb_func_start waterfall_1_do_anim_probably
-waterfall_1_do_anim_probably: @ 8084D44
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- bl ScriptContext2_Enable
- adds r0, r5, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- bne _08084D74
- adds r0, r5, 0
- bl ObjectEventClearHeldMovementIfFinished
- ldr r1, _08084D7C @ =gFieldEffectArguments
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- str r0, [r1]
- movs r0, 0x3B
- bl FieldEffectStart
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08084D74:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084D7C: .4byte gFieldEffectArguments
- thumb_func_end waterfall_1_do_anim_probably
-
- thumb_func_start waterfall_2_wait_anim_finish_probably
-waterfall_2_wait_anim_finish_probably: @ 8084D80
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x6
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08084D9A
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x1
- b _08084D9C
-_08084D9A:
- movs r0, 0
-_08084D9C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end waterfall_2_wait_anim_finish_probably
-
- thumb_func_start sub_8084DA4
-sub_8084DA4: @ 8084DA4
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r0, 0x2
- bl sub_8063F2C
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8084DA4
-
- thumb_func_start sub_8084DCC
-sub_8084DCC: @ 8084DCC
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- bne _08084DE2
- movs r0, 0
- b _08084E1E
-_08084DE2:
- ldrb r0, [r4, 0x1E]
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08084E18
- bl ScriptContext2_Disable
- ldr r0, _08084E10 @ =gPlayerAvatar
- strb r4, [r0, 0x6]
- ldr r0, _08084E14 @ =sub_8084CD8
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0x2B
- bl FieldEffectActiveListRemove
- movs r0, 0
- b _08084E1E
- .align 2, 0
-_08084E10: .4byte gPlayerAvatar
-_08084E14: .4byte sub_8084CD8
-_08084E18:
- movs r0, 0x3
- strh r0, [r5, 0x8]
- movs r0, 0x1
-_08084E1E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8084DCC
-
- thumb_func_start FldEff_UseDive
-FldEff_UseDive: @ 8084E24
- push {r4,lr}
- ldr r4, _08084E54 @ =sub_8084E60
- adds r0, r4, 0
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08084E58 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r3, _08084E5C @ =gFieldEffectArguments
- ldr r2, [r3]
- strh r2, [r1, 0x26]
- ldr r2, [r3, 0x4]
- strh r2, [r1, 0x24]
- bl _call_via_r4
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084E54: .4byte sub_8084E60
-_08084E58: .4byte gTasks
-_08084E5C: .4byte gFieldEffectArguments
- thumb_func_end FldEff_UseDive
-
- thumb_func_start sub_8084E60
-sub_8084E60: @ 8084E60
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _08084E90 @ =gUnknown_83CC098
- ldr r2, _08084E94 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_08084E72:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _08084E72
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08084E90: .4byte gUnknown_83CC098
-_08084E94: .4byte gTasks
- thumb_func_end sub_8084E60
-
- thumb_func_start dive_1_lock
-dive_1_lock: @ 8084E98
- ldr r2, _08084EA8 @ =gPlayerAvatar
- movs r1, 0x1
- strb r1, [r2, 0x6]
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- movs r0, 0
- bx lr
- .align 2, 0
-_08084EA8: .4byte gPlayerAvatar
- thumb_func_end dive_1_lock
-
- thumb_func_start dive_2_unknown
-dive_2_unknown: @ 8084EAC
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- ldr r1, _08084ED0 @ =gFieldEffectArguments
- movs r2, 0x26
- ldrsh r0, [r4, r2]
- str r0, [r1]
- movs r0, 0x3B
- bl FieldEffectStart
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08084ED0: .4byte gFieldEffectArguments
- thumb_func_end dive_2_unknown
-
- thumb_func_start dive_3_unknown
-dive_3_unknown: @ 8084ED4
- push {lr}
- sub sp, 0x8
- mov r1, sp
- adds r1, 0x2
- mov r0, sp
- bl PlayerGetDestCoords
- movs r0, 0x6
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08084F18
- ldr r2, _08084F20 @ =gObjectEvents
- ldr r0, _08084F24 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x1E]
- mov r0, sp
- bl dive_warp
- ldr r0, _08084F28 @ =sub_8084E60
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0x2C
- bl FieldEffectActiveListRemove
-_08084F18:
- movs r0, 0
- add sp, 0x8
- pop {r1}
- bx r1
- .align 2, 0
-_08084F20: .4byte gObjectEvents
-_08084F24: .4byte gPlayerAvatar
-_08084F28: .4byte sub_8084E60
- thumb_func_end dive_3_unknown
-
- thumb_func_start sub_8084F2C
-sub_8084F2C: @ 8084F2C
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _08084F40 @ =sub_8084F44
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08084F40: .4byte sub_8084F44
- thumb_func_end sub_8084F2C
-
- thumb_func_start sub_8084F44
-sub_8084F44: @ 8084F44
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r6, _08084F8C @ =gUnknown_83CC0A4
- ldr r2, _08084F90 @ =gTasks
- ldr r5, _08084F94 @ =gPlayerAvatar
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_08084F58:
- movs r0, 0x8
- ldrsh r3, [r4, r0]
- lsls r3, 2
- adds r3, r6
- ldrb r0, [r5, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _08084F98 @ =gObjectEvents
- adds r1, r0
- ldrb r0, [r5, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r0, _08084F9C @ =gSprites
- adds r2, r0
- ldr r3, [r3]
- adds r0, r4, 0
- bl _call_via_r3
- lsls r0, 24
- cmp r0, 0
- bne _08084F58
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08084F8C: .4byte gUnknown_83CC0A4
-_08084F90: .4byte gTasks
-_08084F94: .4byte gPlayerAvatar
-_08084F98: .4byte gObjectEvents
-_08084F9C: .4byte gSprites
- thumb_func_end sub_8084F44
-
- thumb_func_start sub_8084FA0
-sub_8084FA0: @ 8084FA0
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- bl FreezeObjectEvents
- bl CameraObjectReset2
- movs r0, 0
- bl SetCameraPanningCallback
- ldr r0, _08084FD4 @ =gPlayerAvatar
- movs r2, 0x1
- strb r2, [r0, 0x6]
- ldrb r0, [r5, 0x3]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5, 0x3]
- strh r2, [r4, 0xA]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08084FD4: .4byte gPlayerAvatar
- thumb_func_end sub_8084FA0
-
- thumb_func_start sub_8084FD8
-sub_8084FD8: @ 8084FD8
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl SetCameraPanning
- ldrh r0, [r4, 0xA]
- negs r0, r0
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _08085004
- movs r0, 0
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08085004:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8084FD8
-
- thumb_func_start sub_808500C
-sub_808500C: @ 808500C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0
- strh r0, [r2, 0x26]
- movs r0, 0x1
- strh r0, [r4, 0xE]
- ldr r3, _08085054 @ =gFieldEffectArguments
- movs r5, 0x10
- ldrsh r0, [r1, r5]
- str r0, [r3]
- movs r5, 0x12
- ldrsh r0, [r1, r5]
- str r0, [r3, 0x4]
- adds r0, r2, 0
- adds r0, 0x43
- ldrb r0, [r0]
- subs r0, 0x1
- str r0, [r3, 0x8]
- ldrb r0, [r2, 0x5]
- lsls r0, 28
- lsrs r0, 30
- str r0, [r3, 0xC]
- movs r0, 0x32
- bl FieldEffectStart
- movs r0, 0xAB
- bl PlaySE
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08085054: .4byte gFieldEffectArguments
- thumb_func_end sub_808500C
-
- thumb_func_start sub_8085058
-sub_8085058: @ 8085058
- push {r4-r7,lr}
- adds r4, r0, 0
- adds r6, r1, 0
- adds r5, r2, 0
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl SetCameraPanning
- ldrh r0, [r4, 0xA]
- negs r2, r0
- strh r2, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r1, r0, 0x1
- strh r1, [r4, 0xC]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x11
- bgt _08085092
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- bne _080850A4
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, 0x3
- bgt _080850A4
- lsls r0, r2, 1
- b _080850A2
-_08085092:
- movs r0, 0x4
- ands r1, r0
- cmp r1, 0
- bne _080850A4
- lsls r0, r2, 16
- cmp r0, 0
- ble _080850A4
- asrs r0, 17
-_080850A2:
- strh r0, [r4, 0xA]
-_080850A4:
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x6
- ble _080850F0
- adds r0, r5, 0
- adds r0, 0x29
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r2, r1, 17
- negs r2, r2
- movs r7, 0x26
- ldrsh r3, [r5, r7]
- movs r7, 0x22
- ldrsh r0, [r5, r7]
- adds r0, r1
- ldr r1, _080850E8 @ =gSpriteCoordOffsetY
- movs r7, 0
- ldrsh r1, [r1, r7]
- adds r0, r1
- asrs r2, 16
- adds r0, r2
- cmn r3, r0
- ble _080850EC
- ldrh r0, [r5, 0x26]
- ldrh r1, [r4, 0xE]
- subs r0, r1
- strh r0, [r5, 0x26]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x7
- bgt _080850F0
- adds r0, r1, 0x1
- strh r0, [r4, 0xE]
- b _080850F0
- .align 2, 0
-_080850E8: .4byte gSpriteCoordOffsetY
-_080850EC:
- movs r0, 0x1
- strh r0, [r4, 0x10]
-_080850F0:
- ldrh r2, [r4, 0x12]
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0808512E
- movs r7, 0x26
- ldrsh r1, [r5, r7]
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- bge _0808512E
- adds r0, r2, 0x1
- strh r0, [r4, 0x12]
- ldrb r0, [r6, 0x3]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r6, 0x3]
- ldrb r1, [r5, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- orrs r0, r2
- strb r0, [r5, 0x5]
- adds r2, r5, 0
- adds r2, 0x42
- ldrb r1, [r2]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
-_0808512E:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08085144
- movs r7, 0x10
- ldrsh r0, [r4, r7]
- cmp r0, 0
- beq _08085144
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08085144:
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8085058
-
- thumb_func_start sub_808514C
-sub_808514C: @ 808514C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8055F88
- bl sub_807DC18
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_808514C
-
- thumb_func_start sub_8085168
-sub_8085168: @ 8085168
- push {lr}
- ldr r0, _080851A8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080851A0
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080851A0
- bl WarpIntoMap
- ldr r1, _080851AC @ =gFieldCallback
- ldr r0, _080851B0 @ =mapldr_080851BC
- str r0, [r1]
- ldr r0, _080851B4 @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r0, _080851B8 @ =sub_8084F44
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080851A0:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080851A8: .4byte gPaletteFade
-_080851AC: .4byte gFieldCallback
-_080851B0: .4byte mapldr_080851BC
-_080851B4: .4byte CB2_LoadMap
-_080851B8: .4byte sub_8084F44
- thumb_func_end sub_8085168
-
- thumb_func_start mapldr_080851BC
-mapldr_080851BC: @ 80851BC
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_8111CF0
- bl ScriptContext2_Enable
- ldr r0, _080851E0 @ =gFieldCallback
- movs r1, 0
- str r1, [r0]
- ldr r0, _080851E4 @ =sub_80851E8
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080851E0: .4byte gFieldCallback
-_080851E4: .4byte sub_80851E8
- thumb_func_end mapldr_080851BC
-
- thumb_func_start sub_80851E8
-sub_80851E8: @ 80851E8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r6, _08085230 @ =gUnknown_83CC0BC
- ldr r2, _08085234 @ =gTasks
- ldr r5, _08085238 @ =gPlayerAvatar
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_080851FC:
- movs r0, 0x8
- ldrsh r3, [r4, r0]
- lsls r3, 2
- adds r3, r6
- ldrb r0, [r5, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _0808523C @ =gObjectEvents
- adds r1, r0
- ldrb r0, [r5, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r0, _08085240 @ =gSprites
- adds r2, r0
- ldr r3, [r3]
- adds r0, r4, 0
- bl _call_via_r3
- lsls r0, 24
- cmp r0, 0
- bne _080851FC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08085230: .4byte gUnknown_83CC0BC
-_08085234: .4byte gTasks
-_08085238: .4byte gPlayerAvatar
-_0808523C: .4byte gObjectEvents
-_08085240: .4byte gSprites
- thumb_func_end sub_80851E8
-
- thumb_func_start sub_8085244
-sub_8085244: @ 8085244
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- bl CameraObjectReset2
- bl FreezeObjectEvents
- ldr r1, _08085270 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrb r0, [r4, 0x1]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08085270: .4byte gPlayerAvatar
- thumb_func_end sub_8085244
-
- thumb_func_start sub_8085274
-sub_8085274: @ 8085274
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- bl IsWeatherNotFadingIn
- lsls r0, 24
- cmp r0, 0
- beq _080852B4
- ldr r1, _080852BC @ =gFieldEffectArguments
- movs r2, 0x10
- ldrsh r0, [r5, r2]
- str r0, [r1]
- movs r2, 0x12
- ldrsh r0, [r5, r2]
- str r0, [r1, 0x4]
- adds r0, r6, 0
- adds r0, 0x43
- ldrb r0, [r0]
- subs r0, 0x1
- str r0, [r1, 0x8]
- ldrb r0, [r6, 0x5]
- lsls r0, 28
- lsrs r0, 30
- str r0, [r1, 0xC]
- movs r0, 0x31
- bl FieldEffectStart
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080852B4:
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080852BC: .4byte gFieldEffectArguments
- thumb_func_end sub_8085274
-
- thumb_func_start sub_80852C0
-sub_80852C0: @ 80852C0
- push {r4,lr}
- adds r2, r0, 0
- adds r4, r1, 0
- movs r0, 0xA
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085310 @ =gSprites
- adds r0, r1
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x1
- bls _08085308
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- ldrb r1, [r4, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
- bl CameraObjectReset1
- movs r0, 0xA8
- bl PlaySE
- movs r0, 0x4
- bl sub_8064194
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
-_08085308:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08085310: .4byte gSprites
- thumb_func_end sub_80852C0
-
- thumb_func_start sub_8085314
-sub_8085314: @ 8085314
- push {lr}
- adds r0, r1, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _0808533E
- ldr r1, _08085344 @ =gPlayerAvatar
- movs r0, 0
- strb r0, [r1, 0x6]
- bl ScriptContext2_Disable
- bl UnfreezeObjectEvents
- ldr r0, _08085348 @ =sub_80851E8
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_0808533E:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08085344: .4byte gPlayerAvatar
-_08085348: .4byte sub_80851E8
- thumb_func_end sub_8085314
-
- thumb_func_start FldEff_LavaridgeGymWarp
-FldEff_LavaridgeGymWarp: @ 808534C
- push {r4,lr}
- ldr r4, _080853A4 @ =gFieldEffectArguments
- adds r1, r4, 0x4
- adds r0, r4, 0
- movs r2, 0x8
- movs r3, 0x8
- bl sub_8063BC4
- ldr r0, _080853A8 @ =gFieldEffectObjectTemplatePointers
- adds r0, 0x84
- ldr r0, [r0]
- movs r2, 0
- ldrsh r1, [r4, r2]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- ldrb r3, [r4, 0x8]
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080853AC @ =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- movs r1, 0x3
- ldrb r3, [r4, 0xC]
- ands r3, r1
- lsls r3, 2
- ldrb r4, [r2, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r4
- orrs r1, r3
- strb r1, [r2, 0x5]
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r3, 0x2
- orrs r1, r3
- strb r1, [r2]
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080853A4: .4byte gFieldEffectArguments
-_080853A8: .4byte gFieldEffectObjectTemplatePointers
-_080853AC: .4byte gSprites
- thumb_func_end FldEff_LavaridgeGymWarp
-
- thumb_func_start sub_80853B0
-sub_80853B0: @ 80853B0
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080853C8
- adds r0, r2, 0
- movs r1, 0x32
- bl FieldEffectStop
-_080853C8:
- pop {r0}
- bx r0
- thumb_func_end sub_80853B0
-
- thumb_func_start sub_80853CC
-sub_80853CC: @ 80853CC
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _080853E0 @ =sub_80853E4
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080853E0: .4byte sub_80853E4
- thumb_func_end sub_80853CC
-
- thumb_func_start sub_80853E4
-sub_80853E4: @ 80853E4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r6, _0808542C @ =gUnknown_83CC0CC
- ldr r2, _08085430 @ =gTasks
- ldr r5, _08085434 @ =gPlayerAvatar
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_080853F8:
- movs r0, 0x8
- ldrsh r3, [r4, r0]
- lsls r3, 2
- adds r3, r6
- ldrb r0, [r5, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _08085438 @ =gObjectEvents
- adds r1, r0
- ldrb r0, [r5, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r0, _0808543C @ =gSprites
- adds r2, r0
- ldr r3, [r3]
- adds r0, r4, 0
- bl _call_via_r3
- lsls r0, 24
- cmp r0, 0
- bne _080853F8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0808542C: .4byte gUnknown_83CC0CC
-_08085430: .4byte gTasks
-_08085434: .4byte gPlayerAvatar
-_08085438: .4byte gObjectEvents
-_0808543C: .4byte gSprites
- thumb_func_end sub_80853E4
-
- thumb_func_start sub_8085440
-sub_8085440: @ 8085440
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- bl FreezeObjectEvents
- bl CameraObjectReset2
- ldr r1, _0808546C @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrb r0, [r4, 0x3]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0808546C: .4byte gPlayerAvatar
- thumb_func_end sub_8085440
-
- thumb_func_start sub_8085470
-sub_8085470: @ 8085470
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _080854E4
- ldrh r1, [r5, 0xA]
- movs r2, 0xA
- ldrsh r0, [r5, r2]
- cmp r0, 0x3
- ble _080854C4
- ldr r1, _080854C0 @ =gFieldEffectArguments
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- str r0, [r1]
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- str r0, [r1, 0x4]
- adds r0, r6, 0
- adds r0, 0x43
- ldrb r0, [r0]
- subs r0, 0x1
- str r0, [r1, 0x8]
- ldrb r0, [r6, 0x5]
- lsls r0, 28
- lsrs r0, 30
- str r0, [r1, 0xC]
- movs r0, 0x31
- bl FieldEffectStart
- strh r0, [r5, 0xA]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _080854E4
- .align 2, 0
-_080854C0: .4byte gFieldEffectArguments
-_080854C4:
- adds r0, r1, 0x1
- strh r0, [r5, 0xA]
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetStepInPlaceDelay4AnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- movs r0, 0x21
- bl PlaySE
-_080854E4:
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8085470
-
- thumb_func_start sub_80854EC
-sub_80854EC: @ 80854EC
- push {r4,lr}
- adds r3, r0, 0
- adds r4, r1, 0
- ldr r2, _08085520 @ =gSprites
- movs r0, 0xA
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x2B
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _08085516
- ldrb r0, [r4, 0x1]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_08085516:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08085520: .4byte gSprites
- thumb_func_end sub_80854EC
-
- thumb_func_start sub_8085524
-sub_8085524: @ 8085524
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x31
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08085542
- bl sub_8055F88
- bl sub_807DC18
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08085542:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8085524
-
- thumb_func_start sub_808554C
-sub_808554C: @ 808554C
- push {lr}
- ldr r0, _0808558C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08085584
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08085584
- bl WarpIntoMap
- ldr r1, _08085590 @ =gFieldCallback
- ldr r0, _08085594 @ =sub_8084454
- str r0, [r1]
- ldr r0, _08085598 @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r0, _0808559C @ =sub_80853E4
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08085584:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0808558C: .4byte gPaletteFade
-_08085590: .4byte gFieldCallback
-_08085594: .4byte sub_8084454
-_08085598: .4byte CB2_LoadMap
-_0808559C: .4byte sub_80853E4
- thumb_func_end sub_808554C
-
- thumb_func_start FldEff_PopOutOfAsh
-FldEff_PopOutOfAsh: @ 80855A0
- push {r4,lr}
- ldr r4, _080855F8 @ =gFieldEffectArguments
- adds r1, r4, 0x4
- adds r0, r4, 0
- movs r2, 0x8
- movs r3, 0x8
- bl sub_8063BC4
- ldr r0, _080855FC @ =gFieldEffectObjectTemplatePointers
- adds r0, 0x80
- ldr r0, [r0]
- movs r2, 0
- ldrsh r1, [r4, r2]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- ldrb r3, [r4, 0x8]
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08085600 @ =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- movs r1, 0x3
- ldrb r3, [r4, 0xC]
- ands r3, r1
- lsls r3, 2
- ldrb r4, [r2, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r4
- orrs r1, r3
- strb r1, [r2, 0x5]
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r3, 0x2
- orrs r1, r3
- strb r1, [r2]
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080855F8: .4byte gFieldEffectArguments
-_080855FC: .4byte gFieldEffectObjectTemplatePointers
-_08085600: .4byte gSprites
- thumb_func_end FldEff_PopOutOfAsh
-
- thumb_func_start sub_8085604
-sub_8085604: @ 8085604
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0808561C
- adds r0, r2, 0
- movs r1, 0x31
- bl FieldEffectStop
-_0808561C:
- pop {r0}
- bx r0
- thumb_func_end sub_8085604
-
- thumb_func_start sub_8085620
-sub_8085620: @ 8085620
- push {lr}
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r0, _08085638 @ =sub_808563C
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08085638: .4byte sub_808563C
- thumb_func_end sub_8085620
-
- thumb_func_start sub_808563C
-sub_808563C: @ 808563C
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08085664 @ =gUnknown_83CC0E0
- ldr r2, _08085668 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08085664: .4byte gUnknown_83CC0E0
-_08085668: .4byte gTasks
- thumb_func_end sub_808563C
-
- thumb_func_start sub_808566C
-sub_808566C: @ 808566C
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- movs r5, 0
- strh r0, [r4, 0x8]
- movs r0, 0x40
- strh r0, [r4, 0x22]
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x24]
- strh r5, [r4, 0x26]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_808566C
-
- thumb_func_start sub_8085690
-sub_8085690: @ 8085690
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r0, _080856D4 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080856D8 @ =gObjectEvents
- adds r6, r0, r1
- adds r4, r5, 0
- adds r4, 0x8
- adds r1, r5, 0
- adds r1, 0xA
- adds r2, r5, 0
- adds r2, 0xC
- adds r0, r6, 0
- bl sub_808576C
- ldrh r1, [r4, 0x6]
- movs r2, 0x6
- ldrsh r0, [r4, r2]
- cmp r0, 0x3B
- bgt _080856DC
- adds r0, r1, 0x1
- strh r0, [r4, 0x6]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- bne _08085702
- movs r0, 0x27
- bl PlaySE
- b _08085702
- .align 2, 0
-_080856D4: .4byte gPlayerAvatar
-_080856D8: .4byte gObjectEvents
-_080856DC:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08085702
- adds r1, r5, 0
- adds r1, 0x12
- adds r2, r5, 0
- adds r2, 0x14
- adds r0, r6, 0
- bl sub_80857F0
- cmp r0, 0
- bne _08085702
- bl sub_8055F88
- bl sub_807DC18
- movs r0, 0x1
- strh r0, [r4, 0x8]
-_08085702:
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0x1
- bne _08085750
- ldr r0, _08085758 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08085750
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08085750
- ldrh r1, [r5, 0x26]
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl ObjectEventSetDirection
- bl sub_80555E0
- bl WarpIntoMap
- ldr r1, _0808575C @ =gFieldCallback
- ldr r0, _08085760 @ =sub_80859D4
- str r0, [r1]
- ldr r0, _08085764 @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r0, _08085768 @ =sub_808563C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08085750:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08085758: .4byte gPaletteFade
-_0808575C: .4byte gFieldCallback
-_08085760: .4byte sub_80859D4
-_08085764: .4byte CB2_LoadMap
-_08085768: .4byte sub_808563C
- thumb_func_end sub_8085690
-
- thumb_func_start sub_808576C
-sub_808576C: @ 808576C
- push {r4-r7,lr}
- adds r4, r0, 0
- adds r6, r1, 0
- adds r5, r2, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _0808578A
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _080857E4
-_0808578A:
- ldrh r1, [r6]
- movs r2, 0
- ldrsh r0, [r6, r2]
- cmp r0, 0
- beq _0808579E
- subs r0, r1, 0x1
- strh r0, [r6]
- lsls r0, 16
- cmp r0, 0
- bne _080857E4
-_0808579E:
- ldr r7, _080857E0 @ =gUnknown_83CC0E8
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r0, [r0]
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldrh r1, [r5]
- movs r2, 0
- ldrsh r0, [r5, r2]
- cmp r0, 0xB
- bgt _080857C8
- adds r0, r1, 0x1
- strh r0, [r5]
-_080857C8:
- movs r0, 0
- ldrsh r1, [r5, r0]
- movs r0, 0xC
- asrs r0, r1
- strh r0, [r6]
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r0, [r0]
- b _080857EA
- .align 2, 0
-_080857E0: .4byte gUnknown_83CC0E8
-_080857E4:
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
-_080857EA:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_808576C
-
- thumb_func_start sub_80857F0
-sub_80857F0: @ 80857F0
- push {r4-r7,lr}
- adds r7, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldrb r0, [r7, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _08085818 @ =gSprites
- adds r4, r1, r0
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _08085830
- cmp r0, 0x1
- bgt _0808581C
- cmp r0, 0
- beq _08085826
- b _0808589A
- .align 2, 0
-_08085818: .4byte gSprites
-_0808581C:
- cmp r0, 0x2
- beq _08085878
- cmp r0, 0x3
- beq _08085896
- b _0808589A
-_08085826:
- bl CameraObjectReset2
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08085830:
- ldrh r0, [r4, 0x26]
- subs r0, 0x8
- strh r0, [r4, 0x26]
- ldrh r0, [r6]
- subs r0, 0x8
- strh r0, [r6]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- negs r1, r1
- cmp r0, r1
- bgt _0808589A
- ldrb r0, [r7, 0x3]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r7, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- orrs r0, r2
- strb r0, [r4, 0x5]
- adds r1, r4, 0
- adds r1, 0x43
- movs r0, 0
- strb r0, [r1]
- adds r2, r4, 0
- adds r2, 0x42
- ldrb r1, [r2]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- b _0808589A
-_08085878:
- ldrh r0, [r4, 0x26]
- subs r0, 0x8
- strh r0, [r4, 0x26]
- ldrh r0, [r6]
- subs r0, 0x8
- strh r0, [r6]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x58
- negs r1, r1
- cmp r0, r1
- bgt _0808589A
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08085896:
- movs r0, 0
- b _0808589C
-_0808589A:
- movs r0, 0x1
-_0808589C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80857F0
-
- thumb_func_start sub_80858A4
-sub_80858A4: @ 80858A4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r6, r0, 0
- adds r5, r1, 0
- adds r7, r2, 0
- mov r9, r3
- ldr r0, [sp, 0x20]
- mov r10, r0
- ldrb r0, [r6, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _080858D8 @ =gSprites
- adds r4, r1, r0
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _08085948
- cmp r0, 0x1
- bgt _080858DC
- cmp r0, 0
- beq _080858E6
- b _080859C2
- .align 2, 0
-_080858D8: .4byte gSprites
-_080858DC:
- cmp r0, 0x2
- beq _0808599C
- cmp r0, 0x3
- beq _080859BE
- b _080859C2
-_080858E6:
- bl CameraObjectReset2
- movs r2, 0x58
- negs r2, r2
- adds r0, r2, 0
- strh r0, [r7]
- ldrh r0, [r4, 0x26]
- subs r0, 0x58
- movs r3, 0
- strh r0, [r4, 0x26]
- ldrb r0, [r4, 0x5]
- lsls r0, 28
- lsrs r0, 30
- mov r1, r9
- strh r0, [r1]
- movs r2, 0x43
- adds r2, r4
- mov r8, r2
- ldrb r0, [r2]
- mov r1, r10
- strh r0, [r1]
- movs r2, 0x42
- adds r2, r4
- mov r12, r2
- ldrb r0, [r2]
- lsrs r0, 6
- ldr r1, [sp, 0x24]
- strh r0, [r1]
- ldrb r0, [r6, 0x3]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r6, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- orrs r0, r2
- strb r0, [r4, 0x5]
- mov r2, r8
- strb r3, [r2]
- mov r0, r12
- ldrb r1, [r0]
- movs r0, 0x3F
- ands r0, r1
- mov r1, r12
- strb r0, [r1]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08085948:
- ldrh r0, [r4, 0x26]
- adds r0, 0x4
- strh r0, [r4, 0x26]
- ldrh r0, [r7]
- adds r0, 0x4
- strh r0, [r7]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- negs r1, r1
- cmp r0, r1
- blt _080859C2
- movs r0, 0x3
- mov r2, r9
- ldrb r1, [r2]
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x5]
- mov r1, r10
- ldrh r0, [r1]
- adds r1, r4, 0
- adds r1, 0x43
- strb r0, [r1]
- ldr r2, [sp, 0x24]
- ldrb r1, [r2]
- adds r3, r4, 0
- adds r3, 0x42
- lsls r1, 6
- ldrb r2, [r3]
- movs r0, 0x3F
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- b _080859C2
-_0808599C:
- ldrh r0, [r4, 0x26]
- adds r0, 0x4
- strh r0, [r4, 0x26]
- ldrh r0, [r7]
- adds r0, 0x4
- strh r0, [r7]
- lsls r0, 16
- cmp r0, 0
- blt _080859C2
- movs r0, 0x1E
- bl PlaySE
- bl CameraObjectReset1
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080859BE:
- movs r0, 0
- b _080859C4
-_080859C2:
- movs r0, 0x1
-_080859C4:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80858A4
-
- thumb_func_start sub_80859D4
-sub_80859D4: @ 80859D4
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_8111CF0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _08085A14 @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- ldr r2, _08085A18 @ =gObjectEvents
- ldr r0, _08085A1C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldr r0, _08085A20 @ =sub_8085A24
- movs r1, 0
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08085A14: .4byte gFieldCallback
-_08085A18: .4byte gObjectEvents
-_08085A1C: .4byte gPlayerAvatar
-_08085A20: .4byte sub_8085A24
- thumb_func_end sub_80859D4
-
- thumb_func_start sub_8085A24
-sub_8085A24: @ 8085A24
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08085A4C @ =gUnknown_83CC0F0
- ldr r2, _08085A50 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08085A4C: .4byte gUnknown_83CC0F0
-_08085A50: .4byte gTasks
- thumb_func_end sub_8085A24
-
- thumb_func_start sub_8085A54
-sub_8085A54: @ 8085A54
- push {r4,lr}
- adds r4, r0, 0
- bl IsWeatherNotFadingIn
- lsls r0, 24
- cmp r0, 0
- beq _08085A78
- movs r0, 0x28
- bl PlaySE
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08085A78:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8085A54
-
- thumb_func_start sub_8085A80
-sub_8085A80: @ 8085A80
- push {r4-r7,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r4, 0
- adds r5, 0x8
- ldr r0, _08085AD4 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085AD8 @ =gObjectEvents
- adds r6, r0, r1
- adds r1, r4, 0
- adds r1, 0xA
- adds r2, r4, 0
- adds r2, 0xC
- adds r3, r4, 0
- adds r3, 0xE
- adds r0, r5, 0
- adds r0, 0x8
- str r0, [sp]
- adds r0, r4, 0
- adds r0, 0x12
- str r0, [sp, 0x4]
- adds r0, r6, 0
- bl sub_80858A4
- adds r7, r0, 0
- ldrb r1, [r6, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r6, 0x1]
- ldrh r1, [r5, 0xC]
- movs r2, 0xC
- ldrsh r0, [r5, r2]
- cmp r0, 0x7
- bgt _08085ADC
- adds r0, r1, 0x1
- strh r0, [r5, 0xC]
- b _08085B10
- .align 2, 0
-_08085AD4: .4byte gPlayerAvatar
-_08085AD8: .4byte gObjectEvents
-_08085ADC:
- movs r2, 0xE
- ldrsh r0, [r5, r2]
- cmp r0, 0
- bne _08085B10
- adds r0, r1, 0x1
- strh r0, [r5, 0xC]
- adds r1, r4, 0
- adds r1, 0x1A
- adds r2, r4, 0
- adds r2, 0x1C
- adds r0, r6, 0
- bl sub_808576C
- lsls r0, 24
- lsrs r1, r0, 24
- strh r1, [r5, 0x10]
- movs r2, 0xC
- ldrsh r0, [r5, r2]
- cmp r0, 0x31
- ble _08085B10
- movs r2, 0x1E
- ldrsh r0, [r5, r2]
- cmp r1, r0
- bne _08085B10
- movs r0, 0x1
- strh r0, [r5, 0xE]
-_08085B10:
- cmp r7, 0
- bne _08085B58
- movs r0, 0x10
- ldrsh r1, [r5, r0]
- movs r2, 0x1E
- ldrsh r0, [r5, r2]
- cmp r1, r0
- bne _08085B58
- adds r0, r6, 0
- bl ObjectEventCheckHeldMovementStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08085B58
- ldrb r1, [r6, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r6, 0x1]
- ldrb r1, [r6, 0x3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r6, 0x3]
- bl ScriptContext2_Disable
- bl UnfreezeObjectEvents
- ldr r0, _08085B60 @ =sub_8085A24
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08085B58:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08085B60: .4byte sub_8085A24
- thumb_func_end sub_8085A80
-
- thumb_func_start CreateTeleportFieldEffectTask
-CreateTeleportFieldEffectTask: @ 8085B64
- push {lr}
- ldr r0, _08085B74 @ =sub_8085B78
- movs r1, 0
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08085B74: .4byte sub_8085B78
- thumb_func_end CreateTeleportFieldEffectTask
-
- thumb_func_start sub_8085B78
-sub_8085B78: @ 8085B78
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08085BA0 @ =gUnknown_83CC0F8
- ldr r2, _08085BA4 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08085BA0: .4byte gUnknown_83CC0F8
-_08085BA4: .4byte gTasks
- thumb_func_end sub_8085B78
-
- thumb_func_start sub_8085BA8
-sub_8085BA8: @ 8085BA8
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- bl CameraObjectReset2
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8085BA8
-
- thumb_func_start sub_8085BD0
-sub_8085BD0: @ 8085BD0
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _08085C54 @ =gUnknown_83CC108
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- ldr r0, _08085C58 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085C5C @ =gObjectEvents
- adds r5, r0, r1
- ldrh r1, [r4, 0xA]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08085C02
- subs r0, r1, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- bne _08085C1C
-_08085C02:
- ldrb r0, [r5, 0x18]
- lsls r0, 28
- lsrs r0, 28
- add r0, sp
- ldrb r1, [r0]
- adds r0, r5, 0
- bl ObjectEventTurn
- movs r0, 0x8
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
-_08085C1C:
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x7
- ble _08085C4A
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- ldrb r0, [r5, 0x18]
- lsls r0, 28
- lsrs r0, 28
- cmp r1, r0
- bne _08085C4A
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x4
- strh r0, [r4, 0xA]
- movs r0, 0x8
- strh r0, [r4, 0xC]
- movs r0, 0x1
- strh r0, [r4, 0xE]
- movs r0, 0x27
- bl PlaySE
-_08085C4A:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08085C54: .4byte gUnknown_83CC108
-_08085C58: .4byte gPlayerAvatar
-_08085C5C: .4byte gObjectEvents
- thumb_func_end sub_8085BD0
-
- thumb_func_start sub_8085C60
-sub_8085C60: @ 8085C60
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _08085D24 @ =gUnknown_83CC108
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- ldr r2, _08085D28 @ =gPlayerAvatar
- ldrb r1, [r2, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085D2C @ =gObjectEvents
- adds r3, r0, r1
- ldrb r1, [r2, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085D30 @ =gSprites
- adds r5, r0, r1
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- bgt _08085CAA
- movs r0, 0x4
- strh r0, [r4, 0xA]
- ldrb r0, [r3, 0x18]
- lsls r0, 28
- lsrs r0, 28
- add r0, sp
- ldrb r1, [r0]
- adds r0, r3, 0
- bl ObjectEventTurn
-_08085CAA:
- ldrh r0, [r5, 0x22]
- ldrh r1, [r4, 0xE]
- subs r0, r1
- strh r0, [r5, 0x22]
- ldrh r1, [r4, 0xE]
- ldrh r2, [r4, 0x10]
- adds r0, r1, r2
- strh r0, [r4, 0x10]
- ldrh r0, [r4, 0xC]
- subs r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- cmp r0, 0
- bgt _08085CD6
- movs r0, 0x4
- strh r0, [r4, 0xC]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x7
- bgt _08085CD6
- lsls r0, r1, 1
- strh r0, [r4, 0xE]
-_08085CD6:
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- cmp r0, 0x8
- ble _08085D04
- ldrb r1, [r5, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5, 0x5]
- adds r2, r5, 0
- adds r2, 0x42
- ldrb r1, [r2]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0
- beq _08085D04
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
-_08085D04:
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- cmp r0, 0xA7
- ble _08085D1A
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- bl sub_8055F88
- bl sub_807DC18
-_08085D1A:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08085D24: .4byte gUnknown_83CC108
-_08085D28: .4byte gPlayerAvatar
-_08085D2C: .4byte gObjectEvents
-_08085D30: .4byte gSprites
- thumb_func_end sub_8085C60
-
- thumb_func_start sub_8085D34
-sub_8085D34: @ 8085D34
- push {lr}
- ldr r0, _08085D74 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08085D70
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08085D70
- bl copy_saved_warp3_bank_and_enter_x_to_warp1
- bl WarpIntoMap
- ldr r0, _08085D78 @ =CB2_LoadMap
- bl SetMainCallback2
- ldr r1, _08085D7C @ =gFieldCallback
- ldr r0, _08085D80 @ =mapldr_08085D88
- str r0, [r1]
- ldr r0, _08085D84 @ =sub_8085B78
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08085D70:
- pop {r0}
- bx r0
- .align 2, 0
-_08085D74: .4byte gPaletteFade
-_08085D78: .4byte CB2_LoadMap
-_08085D7C: .4byte gFieldCallback
-_08085D80: .4byte mapldr_08085D88
-_08085D84: .4byte sub_8085B78
- thumb_func_end sub_8085D34
-
- thumb_func_start mapldr_08085D88
-mapldr_08085D88: @ 8085D88
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_8111CF0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _08085DCC @ =gFieldCallback
- movs r0, 0
- str r0, [r1]
- ldr r2, _08085DD0 @ =gObjectEvents
- ldr r0, _08085DD4 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x1]
- bl CameraObjectReset2
- ldr r0, _08085DD8 @ =sub_8085DDC
- movs r1, 0
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08085DCC: .4byte gFieldCallback
-_08085DD0: .4byte gObjectEvents
-_08085DD4: .4byte gPlayerAvatar
-_08085DD8: .4byte sub_8085DDC
- thumb_func_end mapldr_08085D88
-
- thumb_func_start sub_8085DDC
-sub_8085DDC: @ 8085DDC
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08085E04 @ =gUnknown_83CC110
- ldr r2, _08085E08 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08085E04: .4byte gUnknown_83CC110
-_08085E08: .4byte gTasks
- thumb_func_end sub_8085DDC
-
- thumb_func_start sub_8085E0C
-sub_8085E0C: @ 8085E0C
- push {r4-r6,lr}
- adds r6, r0, 0
- bl IsWeatherNotFadingIn
- lsls r0, 24
- cmp r0, 0
- beq _08085E82
- ldr r5, _08085E88 @ =gPlayerAvatar
- ldrb r0, [r5, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r0, _08085E8C @ =gSprites
- adds r2, r0
- adds r0, r2, 0
- adds r0, 0x29
- movs r4, 0
- ldrsb r4, [r0, r4]
- lsls r0, r4, 17
- negs r0, r0
- ldrh r1, [r2, 0x22]
- ldr r3, _08085E90 @ =gSpriteCoordOffsetY
- adds r1, r4
- ldrh r3, [r3]
- adds r1, r3
- asrs r0, 16
- adds r0, r1
- negs r0, r0
- strh r0, [r2, 0x26]
- ldr r3, _08085E94 @ =gObjectEvents
- ldrb r0, [r5, 0x5]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrb r3, [r1, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r3
- strb r0, [r1, 0x1]
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
- movs r0, 0x8
- strh r0, [r6, 0xA]
- movs r0, 0x1
- strh r0, [r6, 0xC]
- adds r2, 0x42
- ldrb r0, [r2]
- lsrs r0, 6
- strh r0, [r6, 0x24]
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r6, 0x26]
- movs r0, 0x27
- bl PlaySE
-_08085E82:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08085E88: .4byte gPlayerAvatar
-_08085E8C: .4byte gSprites
-_08085E90: .4byte gSpriteCoordOffsetY
-_08085E94: .4byte gObjectEvents
- thumb_func_end sub_8085E0C
-
- thumb_func_start sub_8085E98
-sub_8085E98: @ 8085E98
- push {r4-r7,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _08085F00 @ =gUnknown_83CC108
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- ldr r2, _08085F04 @ =gPlayerAvatar
- ldrb r1, [r2, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085F08 @ =gObjectEvents
- adds r6, r0, r1
- ldrb r1, [r2, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08085F0C @ =gSprites
- adds r5, r0, r1
- ldrh r0, [r4, 0xA]
- ldrh r1, [r5, 0x26]
- adds r0, r1
- strh r0, [r5, 0x26]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- negs r1, r1
- cmp r0, r1
- blt _08085F10
- ldrh r1, [r4, 0x22]
- movs r2, 0x22
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _08085F36
- adds r0, r1, 0x1
- strh r0, [r4, 0x22]
- ldrb r0, [r6]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r6]
- ldrh r1, [r4, 0x24]
- adds r3, r5, 0
- adds r3, 0x42
- lsls r1, 6
- ldrb r2, [r3]
- movs r0, 0x3F
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _08085F36
- .align 2, 0
-_08085F00: .4byte gUnknown_83CC108
-_08085F04: .4byte gPlayerAvatar
-_08085F08: .4byte gObjectEvents
-_08085F0C: .4byte gSprites
-_08085F10:
- ldrb r1, [r5, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5, 0x5]
- adds r2, r5, 0
- adds r2, 0x42
- ldrb r1, [r2]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0
- beq _08085F36
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
-_08085F36:
- ldrh r2, [r5, 0x26]
- movs r3, 0x26
- ldrsh r1, [r5, r3]
- movs r0, 0x30
- negs r0, r0
- cmp r1, r0
- blt _08085F5A
- ldrh r1, [r4, 0xA]
- movs r3, 0xA
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- ble _08085F5A
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- bne _08085F5A
- subs r0, r1, 0x1
- strh r0, [r4, 0xA]
-_08085F5A:
- ldrh r0, [r4, 0xC]
- subs r0, 0x1
- movs r7, 0
- strh r0, [r4, 0xC]
- lsls r0, 16
- cmp r0, 0
- bne _08085F7C
- movs r0, 0x4
- strh r0, [r4, 0xC]
- ldrb r0, [r6, 0x18]
- lsls r0, 28
- lsrs r0, 28
- add r0, sp
- ldrb r1, [r0]
- adds r0, r6, 0
- bl ObjectEventTurn
-_08085F7C:
- movs r1, 0x26
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _08085F92
- strh r7, [r5, 0x26]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x1
- strh r0, [r4, 0xA]
- strh r7, [r4, 0xC]
-_08085F92:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8085E98
-
- thumb_func_start sub_8085F9C
-sub_8085F9C: @ 8085F9C
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _08086018 @ =gUnknown_83CC108
- mov r0, sp
- movs r2, 0x5
- bl memcpy
- ldr r0, _0808601C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086020 @ =gObjectEvents
- adds r5, r0, r1
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- bne _08086010
- ldrb r0, [r5, 0x18]
- lsls r0, 28
- lsrs r0, 28
- add r0, sp
- ldrb r1, [r0]
- adds r0, r5, 0
- bl ObjectEventTurn
- movs r0, 0x8
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- ble _08086010
- movs r0, 0x24
- ldrsh r1, [r4, r0]
- ldrb r0, [r5, 0x18]
- lsls r0, 28
- lsrs r0, 28
- cmp r1, r0
- bne _08086010
- bl ScriptContext2_Disable
- bl CameraObjectReset1
- bl UnfreezeObjectEvents
- ldr r0, _08086024 @ =sub_8085DDC
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08086010:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086018: .4byte gUnknown_83CC108
-_0808601C: .4byte gPlayerAvatar
-_08086020: .4byte gObjectEvents
-_08086024: .4byte sub_8085DDC
- thumb_func_end sub_8085F9C
-
- thumb_func_start FldEff_FieldMoveShowMon
-FldEff_FieldMoveShowMon: @ 8086028
- push {r4,lr}
- bl GetCurrentMapType
- lsls r0, 24
- lsrs r0, 24
- bl is_light_level_1_2_3_5_or_6
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08086048
- ldr r0, _08086044 @ =sub_80860E0
- b _0808604A
- .align 2, 0
-_08086044: .4byte sub_80860E0
-_08086048:
- ldr r0, _08086078 @ =sub_8086468
-_0808604A:
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, _0808607C @ =gFieldEffectArguments
- ldr r0, [r2]
- ldr r1, [r2, 0x4]
- ldr r2, [r2, 0x8]
- bl sub_8086860
- ldr r2, _08086080 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x26]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08086078: .4byte sub_8086468
-_0808607C: .4byte gFieldEffectArguments
-_08086080: .4byte gTasks
- thumb_func_end FldEff_FieldMoveShowMon
-
- thumb_func_start FldEff_FieldMoveShowMonInit
-FldEff_FieldMoveShowMonInit: @ 8086084
- push {r4-r6,lr}
- ldr r5, _080860D8 @ =gFieldEffectArguments
- ldr r0, [r5]
- movs r6, 0x80
- lsls r6, 24
- ands r6, r0
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- adds r4, r0, 0
- muls r4, r1
- ldr r0, _080860DC @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- str r0, [r5]
- adds r0, r4, 0
- movs r1, 0x1
- bl GetMonData
- str r0, [r5, 0x4]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [r5, 0x8]
- ldr r0, [r5]
- orrs r0, r6
- str r0, [r5]
- movs r0, 0x6
- bl FieldEffectStart
- movs r0, 0x3B
- bl FieldEffectActiveListRemove
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080860D8: .4byte gFieldEffectArguments
-_080860DC: .4byte gPlayerParty
- thumb_func_end FldEff_FieldMoveShowMonInit
-
- thumb_func_start sub_80860E0
-sub_80860E0: @ 80860E0
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08086108 @ =gUnknown_83CC11C
- ldr r2, _0808610C @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08086108: .4byte gUnknown_83CC11C
-_0808610C: .4byte gTasks
- thumb_func_end sub_80860E0
-
- thumb_func_start sub_8086110
-sub_8086110: @ 8086110
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x48
- bl GetGpuReg
- strh r0, [r4, 0x1E]
- movs r0, 0x4A
- bl GetGpuReg
- strh r0, [r4, 0x20]
- adds r0, r4, 0
- adds r0, 0x22
- ldr r1, _08086170 @ =gMain
- ldr r1, [r1, 0xC]
- bl StoreWordInTwoHalfwords
- ldr r1, _08086174 @ =0x0000f0f1
- strh r1, [r4, 0xA]
- ldr r0, _08086178 @ =0x00005051
- strh r0, [r4, 0xC]
- movs r0, 0x3F
- strh r0, [r4, 0xE]
- movs r0, 0x3E
- strh r0, [r4, 0x10]
- movs r0, 0x40
- bl SetGpuReg
- ldrh r1, [r4, 0xC]
- movs r0, 0x44
- bl SetGpuReg
- ldrh r1, [r4, 0xE]
- movs r0, 0x48
- bl SetGpuReg
- ldrh r1, [r4, 0x10]
- movs r0, 0x4A
- bl SetGpuReg
- ldr r0, _0808617C @ =sub_80863C0
- bl SetVBlankCallback
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086170: .4byte gMain
-_08086174: .4byte 0x0000f0f1
-_08086178: .4byte 0x00005051
-_0808617C: .4byte sub_80863C0
- thumb_func_end sub_8086110
-
- thumb_func_start sub_8086180
-sub_8086180: @ 8086180
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- mov r8, r0
- movs r0, 0x8
- bl GetGpuReg
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 18
- lsls r4, 30
- lsrs r4, 16
- movs r0, 0x8
- bl GetGpuReg
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 24
- lsls r5, 27
- lsrs r5, 16
- ldr r0, _080861F0 @ =gUnknown_83CB5F0
- movs r6, 0xC0
- lsls r6, 19
- adds r4, r6
- movs r2, 0x80
- lsls r2, 1
- adds r1, r4, 0
- bl CpuSet
- movs r0, 0
- str r0, [sp]
- adds r6, r5, r6
- ldr r2, _080861F4 @ =0x05000200
- mov r0, sp
- adds r1, r6, 0
- bl CpuSet
- ldr r0, _080861F8 @ =gUnknown_83CB7F0
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- adds r0, r5, 0
- bl sub_8086428
- mov r1, r8
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080861F0: .4byte gUnknown_83CB5F0
-_080861F4: .4byte 0x05000200
-_080861F8: .4byte gUnknown_83CB7F0
- thumb_func_end sub_8086180
-
- thumb_func_start sub_80861FC
-sub_80861FC: @ 80861FC
- push {r4-r7,lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x12]
- subs r0, 0x10
- strh r0, [r3, 0x12]
- ldrh r6, [r3, 0xA]
- ldrh r2, [r3, 0xC]
- movs r7, 0xFF
- lsrs r1, r6, 8
- subs r1, 0x10
- lsls r1, 16
- lsrs r0, r2, 8
- subs r0, 0x2
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r7, 0
- ands r0, r2
- adds r5, r0, 0x2
- lsrs r2, r1, 16
- cmp r1, 0
- bge _08086228
- movs r2, 0
-_08086228:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, 0x27
- bgt _08086232
- movs r4, 0x28
-_08086232:
- cmp r5, 0x78
- ble _08086238
- movs r5, 0x78
-_08086238:
- lsls r2, 16
- asrs r2, 16
- lsls r1, r2, 8
- adds r0, r7, 0
- ands r0, r6
- orrs r1, r0
- strh r1, [r3, 0xA]
- lsls r0, r4, 16
- asrs r4, r0, 16
- lsls r0, r4, 8
- adds r1, r5, 0
- orrs r0, r1
- strh r0, [r3, 0xC]
- cmp r2, 0
- bne _08086278
- cmp r4, 0x28
- bne _08086278
- cmp r1, 0x78
- bne _08086278
- ldr r2, _08086280 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, _08086284 @ =sub_80868C0
- str r1, [r0]
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_08086278:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08086280: .4byte gSprites
-_08086284: .4byte sub_80868C0
- thumb_func_end sub_80861FC
-
- thumb_func_start sub_8086288
-sub_8086288: @ 8086288
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x12]
- subs r0, 0x10
- strh r0, [r3, 0x12]
- ldr r2, _080862B4 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x3C
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _080862AE
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_080862AE:
- pop {r0}
- bx r0
- .align 2, 0
-_080862B4: .4byte gSprites
- thumb_func_end sub_8086288
-
- thumb_func_start sub_80862B8
-sub_80862B8: @ 80862B8
- push {r4,lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x12]
- subs r0, 0x10
- strh r0, [r3, 0x12]
- ldrh r2, [r3, 0xC]
- lsls r1, r2, 16
- movs r0, 0xFF
- asrs r1, 24
- adds r1, 0x6
- lsls r1, 16
- ands r0, r2
- subs r0, 0x6
- lsls r0, 16
- lsrs r2, r0, 16
- lsrs r4, r1, 16
- asrs r1, 16
- cmp r1, 0x50
- ble _080862E0
- movs r4, 0x50
-_080862E0:
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, 0x50
- bgt _080862EA
- movs r2, 0x51
-_080862EA:
- lsls r0, r4, 16
- asrs r0, 16
- lsls r1, r0, 8
- lsls r2, 16
- asrs r2, 16
- orrs r1, r2
- strh r1, [r3, 0xC]
- cmp r0, 0x50
- bne _08086306
- cmp r2, 0x51
- bne _08086306
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_08086306:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80862B8
-
- thumb_func_start sub_808630C
-sub_808630C: @ 808630C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- movs r0, 0x8
- bl GetGpuReg
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 24
- lsls r1, 27
- lsrs r1, 16
- movs r0, 0
- str r0, [sp]
- movs r0, 0xC0
- lsls r0, 19
- adds r1, r0
- ldr r2, _08086354 @ =0x05000200
- mov r0, sp
- bl CpuSet
- movs r0, 0xF1
- strh r0, [r4, 0xA]
- movs r0, 0xA1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x1E]
- strh r0, [r4, 0xE]
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x10]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086354: .4byte 0x05000200
- thumb_func_end sub_808630C
-
- thumb_func_start sub_8086358
-sub_8086358: @ 8086358
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r0, 0x22
- mov r1, sp
- bl LoadWordFromTwoHalfwords
- ldr r0, [sp]
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- bl Menu_LoadStdPal
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080863B8 @ =gSprites
- adds r0, r1
- ldrh r1, [r4, 0x26]
- lsls r1, 24
- lsrs r1, 24
- bl sub_8083A5C
- movs r0, 0x6
- bl FieldEffectActiveListRemove
- ldr r0, _080863BC @ =sub_80860E0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080863B8: .4byte gSprites
-_080863BC: .4byte sub_80860E0
- thumb_func_end sub_8086358
-
- thumb_func_start sub_80863C0
-sub_80863C0: @ 80863C0
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _08086420 @ =sub_80860E0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, _08086424 @ =gTasks
- adds r4, r0
- adds r0, r4, 0
- adds r0, 0x22
- mov r1, sp
- bl LoadWordFromTwoHalfwords
- ldr r0, [sp]
- bl _call_via_r0
- ldrh r1, [r4, 0xA]
- movs r0, 0x40
- bl SetGpuReg
- ldrh r1, [r4, 0xC]
- movs r0, 0x44
- bl SetGpuReg
- ldrh r1, [r4, 0xE]
- movs r0, 0x48
- bl SetGpuReg
- ldrh r1, [r4, 0x10]
- movs r0, 0x4A
- bl SetGpuReg
- ldrh r1, [r4, 0x12]
- movs r0, 0x10
- bl SetGpuReg
- ldrh r1, [r4, 0x14]
- movs r0, 0x12
- bl SetGpuReg
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086420: .4byte sub_80860E0
-_08086424: .4byte gTasks
- thumb_func_end sub_80863C0
-
- thumb_func_start sub_8086428
-sub_8086428: @ 8086428
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _0808645C @ =0x06000140
- adds r2, r0, r1
- movs r1, 0
- ldr r5, _08086460 @ =gUnknown_83CB810
- movs r0, 0xF0
- lsls r0, 8
- adds r4, r0, 0
- ldr r3, _08086464 @ =0x0000013f
-_0808643E:
- lsls r0, r1, 1
- adds r0, r5
- ldrh r0, [r0]
- orrs r0, r4
- strh r0, [r2]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- adds r2, 0x2
- cmp r1, r3
- bls _0808643E
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808645C: .4byte 0x06000140
-_08086460: .4byte gUnknown_83CB810
-_08086464: .4byte 0x0000013f
- thumb_func_end sub_8086428
-
- thumb_func_start sub_8086468
-sub_8086468: @ 8086468
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08086490 @ =gUnknown_83CC138
- ldr r2, _08086494 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08086490: .4byte gUnknown_83CC138
-_08086494: .4byte gTasks
- thumb_func_end sub_8086468
-
- thumb_func_start sub_8086498
-sub_8086498: @ 8086498
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0xA]
- movs r0, 0x10
- bl SetGpuReg
- ldrh r1, [r4, 0xC]
- movs r0, 0x12
- bl SetGpuReg
- adds r0, r4, 0
- adds r0, 0x22
- ldr r1, _080864CC @ =gMain
- ldr r1, [r1, 0xC]
- bl StoreWordInTwoHalfwords
- ldr r0, _080864D0 @ =sub_80866E0
- bl SetVBlankCallback
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080864CC: .4byte gMain
-_080864D0: .4byte sub_80866E0
- thumb_func_end sub_8086498
-
- thumb_func_start sub_80864D4
-sub_80864D4: @ 80864D4
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- mov r9, r0
- movs r0, 0x8
- bl GetGpuReg
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 18
- lsls r5, 30
- lsrs r5, 16
- movs r0, 0x8
- bl GetGpuReg
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 24
- lsls r4, 27
- lsrs r4, 16
- movs r0, 0
- mov r8, r0
- mov r1, r9
- strh r4, [r1, 0x20]
- ldr r0, _08086548 @ =gUnknown_83CBA90
- movs r6, 0xC0
- lsls r6, 19
- adds r5, r6
- adds r1, r5, 0
- movs r2, 0x40
- bl CpuSet
- mov r0, r8
- str r0, [sp]
- adds r4, r6
- ldr r2, _0808654C @ =0x05000200
- mov r0, sp
- adds r1, r4, 0
- bl CpuSet
- ldr r0, _08086550 @ =gUnknown_83CBB10
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- mov r1, r9
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08086548: .4byte gUnknown_83CBA90
-_0808654C: .4byte 0x05000200
-_08086550: .4byte gUnknown_83CBB10
- thumb_func_end sub_80864D4
-
- thumb_func_start sub_8086554
-sub_8086554: @ 8086554
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8086738
- lsls r0, 24
- cmp r0, 0
- beq _080865A6
- movs r0, 0x48
- bl GetGpuReg
- strh r0, [r4, 0x12]
- movs r1, 0xFF
- ands r1, r0
- movs r2, 0x88
- lsls r2, 5
- adds r0, r2, 0
- orrs r1, r0
- movs r0, 0x48
- bl SetGpuReg
- movs r0, 0x42
- movs r1, 0xF0
- bl SetGpuReg
- ldr r1, _080865B4 @ =0x00002878
- movs r0, 0x46
- bl SetGpuReg
- ldr r2, _080865B8 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, _080865BC @ =sub_80868C0
- str r1, [r0]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080865A6:
- adds r0, r4, 0
- bl sub_8086728
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080865B4: .4byte 0x00002878
-_080865B8: .4byte gSprites
-_080865BC: .4byte sub_80868C0
- thumb_func_end sub_8086554
-
- thumb_func_start sub_80865C0
-sub_80865C0: @ 80865C0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8086728
- ldr r2, _080865EC @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x3C
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _080865E4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080865E4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080865EC: .4byte gSprites
- thumb_func_end sub_80865C0
-
- thumb_func_start sub_80865F0
-sub_80865F0: @ 80865F0
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_8086728
- ldrh r1, [r4, 0xA]
- movs r0, 0x7
- ands r0, r1
- movs r1, 0
- strh r0, [r4, 0xE]
- strh r1, [r4, 0x10]
- ldr r5, _0808662C @ =0x0000ffff
- movs r0, 0x42
- adds r1, r5, 0
- bl SetGpuReg
- movs r0, 0x46
- adds r1, r5, 0
- bl SetGpuReg
- ldrh r1, [r4, 0x12]
- movs r0, 0x48
- bl SetGpuReg
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808662C: .4byte 0x0000ffff
- thumb_func_end sub_80865F0
-
- thumb_func_start sub_8086630
-sub_8086630: @ 8086630
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8086728
- adds r0, r4, 0
- bl sub_80867F0
- lsls r0, 24
- cmp r0, 0
- beq _0808664A
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_0808664A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8086630
-
- thumb_func_start sub_8086650
-sub_8086650: @ 8086650
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- movs r0, 0x8
- bl GetGpuReg
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 24
- lsls r1, 27
- lsrs r1, 16
- movs r0, 0
- str r0, [sp]
- movs r0, 0xC0
- lsls r0, 19
- adds r1, r0
- ldr r2, _080866D4 @ =0x05000200
- mov r0, sp
- bl CpuSet
- adds r0, r4, 0
- adds r0, 0x22
- add r1, sp, 0x4
- bl LoadWordFromTwoHalfwords
- ldr r0, [sp, 0x4]
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- bl Menu_LoadStdPal
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080866D8 @ =gSprites
- adds r0, r1
- ldrh r1, [r4, 0x26]
- lsls r1, 24
- lsrs r1, 24
- bl sub_8083A5C
- movs r0, 0x6
- bl FieldEffectActiveListRemove
- ldr r0, _080866DC @ =sub_8086468
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080866D4: .4byte 0x05000200
-_080866D8: .4byte gSprites
-_080866DC: .4byte sub_8086468
- thumb_func_end sub_8086650
-
- thumb_func_start sub_80866E0
-sub_80866E0: @ 80866E0
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _08086720 @ =sub_8086468
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, _08086724 @ =gTasks
- adds r4, r0
- adds r0, r4, 0
- adds r0, 0x22
- mov r1, sp
- bl LoadWordFromTwoHalfwords
- ldr r0, [sp]
- bl _call_via_r0
- ldrh r1, [r4, 0xA]
- movs r0, 0x10
- bl SetGpuReg
- ldrh r1, [r4, 0xC]
- movs r0, 0x12
- bl SetGpuReg
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086720: .4byte sub_8086468
-_08086724: .4byte gTasks
- thumb_func_end sub_80866E0
-
- thumb_func_start sub_8086728
-sub_8086728: @ 8086728
- ldrh r1, [r0, 0xA]
- subs r1, 0x10
- strh r1, [r0, 0xA]
- ldrh r1, [r0, 0xE]
- adds r1, 0x10
- strh r1, [r0, 0xE]
- bx lr
- thumb_func_end sub_8086728
-
- thumb_func_start sub_8086738
-sub_8086738: @ 8086738
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r5, r0, 0
- ldrh r2, [r5, 0x10]
- movs r1, 0x10
- ldrsh r0, [r5, r1]
- cmp r0, 0x1F
- ble _08086754
- movs r0, 0x1
- b _080867D8
-_08086754:
- ldrh r0, [r5, 0xE]
- lsls r0, 16
- asrs r3, r0, 19
- movs r1, 0x1F
- ands r3, r1
- movs r4, 0x10
- ldrsh r0, [r5, r4]
- cmp r3, r0
- blt _080867D6
- movs r0, 0x20
- subs r3, r0, r3
- ands r3, r1
- subs r0, r2
- mov r12, r0
- mov r7, r12
- ands r7, r1
- mov r12, r7
- ldrh r0, [r5, 0x20]
- ldr r1, _080867E8 @ =0x06000140
- adds r1, r0
- mov r8, r1
- movs r4, 0
- ldr r7, _080867EC @ =gUnknown_83CBB30
- mov r10, r7
- movs r0, 0xF0
- lsls r0, 8
- mov r9, r0
- adds r1, r3, 0x1
- movs r0, 0x1F
- ands r1, r0
- str r1, [sp]
- mov r6, r12
- adds r6, 0x1
- ands r6, r0
-_08086798:
- lsls r1, r4, 5
- adds r2, r1, r3
- lsls r2, 1
- add r2, r8
- mov r7, r12
- adds r0, r7, r1
- lsls r0, 1
- add r0, r10
- ldrh r0, [r0]
- mov r7, r9
- orrs r0, r7
- strh r0, [r2]
- ldr r0, [sp]
- adds r2, r1, r0
- lsls r2, 1
- add r2, r8
- adds r1, r6, r1
- lsls r1, 1
- add r1, r10
- ldrh r0, [r1]
- mov r1, r9
- orrs r0, r1
- strh r0, [r2]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x9
- bls _08086798
- ldrh r0, [r5, 0x10]
- adds r0, 0x2
- strh r0, [r5, 0x10]
-_080867D6:
- movs r0, 0
-_080867D8:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080867E8: .4byte 0x06000140
-_080867EC: .4byte gUnknown_83CBB30
- thumb_func_end sub_8086738
-
- thumb_func_start sub_80867F0
-sub_80867F0: @ 80867F0
- push {r4-r7,lr}
- adds r5, r0, 0
- movs r1, 0x10
- ldrsh r0, [r5, r1]
- cmp r0, 0x1F
- ble _08086800
- movs r0, 0x1
- b _08086854
-_08086800:
- ldrh r0, [r5, 0xE]
- lsls r0, 16
- asrs r0, 19
- lsls r0, 16
- lsrs r2, r0, 16
- movs r1, 0x10
- ldrsh r0, [r5, r1]
- cmp r2, r0
- blt _08086852
- ldrh r0, [r5, 0xA]
- lsls r0, 16
- asrs r2, r0, 19
- movs r0, 0x1F
- ands r2, r0
- ldrh r0, [r5, 0x20]
- ldr r1, _0808685C @ =0x06000140
- adds r6, r0, r1
- movs r3, 0
- movs r0, 0xF0
- lsls r0, 8
- adds r7, r0, 0
- adds r4, r2, 0x1
- movs r0, 0x1F
- ands r4, r0
-_08086830:
- lsls r0, r3, 5
- adds r1, r0, r2
- lsls r1, 1
- adds r1, r6
- strh r7, [r1]
- adds r0, r4
- lsls r0, 1
- adds r0, r6
- strh r7, [r0]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x9
- bls _08086830
- ldrh r0, [r5, 0x10]
- adds r0, 0x2
- strh r0, [r5, 0x10]
-_08086852:
- movs r0, 0
-_08086854:
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808685C: .4byte 0x06000140
- thumb_func_end sub_80867F0
-
- thumb_func_start sub_8086860
-sub_8086860: @ 8086860
- push {r4-r6,lr}
- sub sp, 0x8
- adds r6, r0, 0
- movs r5, 0x80
- lsls r5, 24
- ands r5, r6
- lsrs r5, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r0, _080868B4 @ =0x7fffffff
- ands r6, r0
- lsls r0, r6, 16
- lsrs r0, 16
- movs r3, 0xA0
- lsls r3, 1
- movs r4, 0x50
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- bl sub_80839D4
- lsls r0, 24
- lsrs r0, 24
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r1, _080868B8 @ =gSprites
- adds r2, r1
- ldr r1, _080868BC @ =SpriteCallbackDummy
- str r1, [r2, 0x1C]
- ldrb r3, [r2, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r3
- strb r1, [r2, 0x5]
- strh r6, [r2, 0x2E]
- strh r5, [r2, 0x3A]
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080868B4: .4byte 0x7fffffff
-_080868B8: .4byte gSprites
-_080868BC: .4byte SpriteCallbackDummy
- thumb_func_end sub_8086860
-
- thumb_func_start sub_80868C0
-sub_80868C0: @ 80868C0
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x20]
- subs r0, 0x14
- strh r0, [r1, 0x20]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x78
- bgt _08086900
- movs r0, 0x78
- strh r0, [r1, 0x20]
- movs r0, 0x1E
- strh r0, [r1, 0x30]
- ldr r0, _080868F4 @ =sub_8086904
- str r0, [r1, 0x1C]
- movs r2, 0x3A
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _080868F8
- ldrh r0, [r1, 0x2E]
- movs r1, 0
- movs r2, 0x7D
- movs r3, 0xA
- bl PlayCry2
- b _08086900
- .align 2, 0
-_080868F4: .4byte sub_8086904
-_080868F8:
- ldrh r0, [r1, 0x2E]
- movs r1, 0
- bl PlayCry1
-_08086900:
- pop {r0}
- bx r0
- thumb_func_end sub_80868C0
-
- thumb_func_start sub_8086904
-sub_8086904: @ 8086904
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x30]
- subs r0, 0x1
- strh r0, [r1, 0x30]
- lsls r0, 16
- cmp r0, 0
- bne _08086918
- ldr r0, _0808691C @ =sub_8086920
- str r0, [r1, 0x1C]
-_08086918:
- pop {r0}
- bx r0
- .align 2, 0
-_0808691C: .4byte sub_8086920
- thumb_func_end sub_8086904
-
- thumb_func_start sub_8086920
-sub_8086920: @ 8086920
- push {lr}
- adds r2, r0, 0
- ldrh r3, [r2, 0x20]
- movs r0, 0x20
- ldrsh r1, [r2, r0]
- movs r0, 0x40
- negs r0, r0
- cmp r1, r0
- bge _08086938
- movs r0, 0x1
- strh r0, [r2, 0x3C]
- b _0808693E
-_08086938:
- adds r0, r3, 0
- subs r0, 0x14
- strh r0, [r2, 0x20]
-_0808693E:
- pop {r0}
- bx r0
- thumb_func_end sub_8086920
-
- thumb_func_start sub_8086944
-sub_8086944: @ 8086944
- push {r4,lr}
- ldr r0, _08086980 @ =sub_8086990
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08086984 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _08086988 @ =gFieldEffectArguments
- ldr r0, [r0]
- strh r0, [r1, 0x26]
- bl sav1_reset_battle_music_maybe
- ldr r4, _0808698C @ =0x00000131
- adds r0, r4, 0
- bl sub_8056124
- cmp r0, 0
- beq _08086978
- adds r0, r4, 0
- bl Overworld_ChangeMusicTo
-_08086978:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08086980: .4byte sub_8086990
-_08086984: .4byte gTasks
-_08086988: .4byte gFieldEffectArguments
-_0808698C: .4byte 0x00000131
- thumb_func_end sub_8086944
-
- thumb_func_start sub_8086990
-sub_8086990: @ 8086990
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _080869B8 @ =gUnknown_83CC154
- ldr r2, _080869BC @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_080869B8: .4byte gUnknown_83CC154
-_080869BC: .4byte gTasks
- thumb_func_end sub_8086990
-
- thumb_func_start sub_80869C0
-sub_80869C0: @ 80869C0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r5, _08086A18 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r5, 0x6]
- movs r0, 0x8
- bl SetPlayerAvatarStateMask
- adds r6, r4, 0
- adds r6, 0xA
- movs r0, 0xC
- adds r0, r4
- mov r8, r0
- adds r0, r6, 0
- mov r1, r8
- bl PlayerGetDestCoords
- ldr r2, _08086A1C @ =gObjectEvents
- ldrb r1, [r5, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x18]
- lsrs r0, 4
- adds r1, r6, 0
- mov r2, r8
- bl MoveCoords
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08086A18: .4byte gPlayerAvatar
-_08086A1C: .4byte gObjectEvents
- thumb_func_end sub_80869C0
-
- thumb_func_start sub_8086A20
-sub_8086A20: @ 8086A20
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08086A64 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086A68 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _08086A4A
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086A5C
-_08086A4A:
- bl sub_805CB70
- adds r0, r4, 0
- movs r1, 0x45
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_08086A5C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086A64: .4byte gPlayerAvatar
-_08086A68: .4byte gObjectEvents
- thumb_func_end sub_8086A20
-
- thumb_func_start sub_8086A6C
-sub_8086A6C: @ 8086A6C
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08086AA8 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086AAC @ =gObjectEvents
- adds r0, r1
- bl ObjectEventCheckHeldMovementStatus
- lsls r0, 24
- cmp r0, 0
- beq _08086AA2
- ldr r2, _08086AB0 @ =gFieldEffectArguments
- movs r1, 0x26
- ldrsh r0, [r4, r1]
- movs r1, 0x80
- lsls r1, 24
- orrs r0, r1
- str r0, [r2]
- movs r0, 0x3B
- bl FieldEffectStart
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08086AA2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086AA8: .4byte gPlayerAvatar
-_08086AAC: .4byte gObjectEvents
-_08086AB0: .4byte gFieldEffectArguments
- thumb_func_end sub_8086A6C
-
- thumb_func_start sub_8086AB4
-sub_8086AB4: @ 8086AB4
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r0, 0x6
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08086B1E
- ldr r5, _08086B24 @ =gPlayerAvatar
- ldrb r0, [r5, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08086B28 @ =gObjectEvents
- adds r4, r0
- movs r0, 0x2
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- ldrb r0, [r4, 0x18]
- lsrs r0, 4
- bl sub_80641C0
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldr r1, _08086B2C @ =gFieldEffectArguments
- movs r2, 0xA
- ldrsh r0, [r6, r2]
- str r0, [r1]
- movs r2, 0xC
- ldrsh r0, [r6, r2]
- str r0, [r1, 0x4]
- ldrb r0, [r5, 0x5]
- str r0, [r1, 0x8]
- movs r0, 0x8
- bl FieldEffectStart
- strb r0, [r4, 0x1A]
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
-_08086B1E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08086B24: .4byte gPlayerAvatar
-_08086B28: .4byte gObjectEvents
-_08086B2C: .4byte gFieldEffectArguments
- thumb_func_end sub_8086AB4
-
- thumb_func_start sub_8086B30
-sub_8086B30: @ 8086B30
- push {r4,r5,lr}
- ldr r5, _08086B9C @ =gPlayerAvatar
- ldrb r1, [r5, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086BA0 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086B96
- movs r0, 0
- strb r0, [r5, 0x6]
- ldrb r1, [r5]
- movs r0, 0xDF
- ands r0, r1
- strb r0, [r5]
- ldrb r0, [r4, 0x18]
- lsrs r0, 4
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- ldrb r0, [r4, 0x1A]
- movs r1, 0x1
- bl sub_80DC44C
- bl UnfreezeObjectEvents
- bl ScriptContext2_Disable
- movs r0, 0x9
- bl FieldEffectActiveListRemove
- ldr r0, _08086BA4 @ =sub_8086990
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0x16
- bl HelpSystem_SetSomeVariable2
-_08086B96:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086B9C: .4byte gPlayerAvatar
-_08086BA0: .4byte gObjectEvents
-_08086BA4: .4byte sub_8086990
- thumb_func_end sub_8086B30
-
- thumb_func_start sub_8086BA8
-sub_8086BA8: @ 8086BA8
- push {lr}
- ldr r0, _08086BC8 @ =gQuestLogState
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08086BBA
- movs r0, 0x8
- movs r1, 0x59
- bl sub_811278C
-_08086BBA:
- ldr r0, _08086BCC @ =sub_8086BD0
- movs r1, 0xFF
- bl CreateTask
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08086BC8: .4byte gQuestLogState
-_08086BCC: .4byte sub_8086BD0
- thumb_func_end sub_8086BA8
-
- thumb_func_start sub_8086BD0
-sub_8086BD0: @ 8086BD0
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08086BF8 @ =gUnknown_83CC168
- ldr r2, _08086BFC @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08086BF8: .4byte gUnknown_83CC168
-_08086BFC: .4byte gTasks
- thumb_func_end sub_8086BD0
-
- thumb_func_start sub_8086C00
-sub_8086C00: @ 8086C00
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _08086C20 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086C20: .4byte gPlayerAvatar
- thumb_func_end sub_8086C00
-
- thumb_func_start sub_8086C24
-sub_8086C24: @ 8086C24
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08086C68 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086C6C @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _08086C4E
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086C60
-_08086C4E:
- bl sub_805CBE8
- adds r0, r4, 0
- movs r1, 0x45
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_08086C60:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086C68: .4byte gPlayerAvatar
-_08086C6C: .4byte gObjectEvents
- thumb_func_end sub_8086C24
-
- thumb_func_start sub_8086C70
-sub_8086C70: @ 8086C70
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r5, _08086C9C @ =gPlayerAvatar
- ldrb r1, [r5, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086CA0 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086CEE
- ldrb r1, [r5]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- beq _08086CA4
- movs r0, 0x1
- b _08086CAE
- .align 2, 0
-_08086C9C: .4byte gPlayerAvatar
-_08086CA0: .4byte gObjectEvents
-_08086CA4:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08086CC0
- movs r0, 0x2
-_08086CAE:
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
- b _08086CD2
-_08086CC0:
- movs r0, 0
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
-_08086CD2:
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventForceSetSpecialAnim
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
-_08086CEE:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8086C70
-
- thumb_func_start sub_8086CF4
-sub_8086CF4: @ 8086CF4
- push {r4,lr}
- ldr r4, _08086D2C @ =gPlayerAvatar
- ldrb r1, [r4, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086D30 @ =gObjectEvents
- adds r0, r1
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086D26
- movs r0, 0
- strb r0, [r4, 0x6]
- movs r0, 0x41
- bl FieldEffectActiveListRemove
- ldr r0, _08086D34 @ =sub_8086BD0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08086D26:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086D2C: .4byte gPlayerAvatar
-_08086D30: .4byte gObjectEvents
-_08086D34: .4byte sub_8086BD0
- thumb_func_end sub_8086CF4
-
- thumb_func_start sub_8086D38
-sub_8086D38: @ 8086D38
- push {r4,lr}
- ldr r0, _08086D84 @ =gFieldEffectObjectTemplatePointers
- ldr r0, [r0, 0x68]
- movs r1, 0x78
- movs r2, 0
- movs r3, 0x1
- bl CreateSprite
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r2, r4, 4
- adds r2, r4
- lsls r2, 2
- ldr r0, _08086D88 @ =gSprites
- adds r2, r0
- ldrb r1, [r2, 0x5]
- movs r0, 0xF
- ands r0, r1
- movs r1, 0xD
- negs r1, r1
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2, 0x5]
- ldr r0, _08086D8C @ =sub_8086D94
- str r0, [r2, 0x1C]
- ldr r0, _08086D90 @ =gFieldEffectArguments
- ldr r0, [r0]
- strh r0, [r2, 0x30]
- movs r0, 0x97
- bl PlaySE
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08086D84: .4byte gFieldEffectObjectTemplatePointers
-_08086D88: .4byte gSprites
-_08086D8C: .4byte sub_8086D94
-_08086D90: .4byte gFieldEffectArguments
- thumb_func_end sub_8086D38
-
- thumb_func_start sub_8086D94
-sub_8086D94: @ 8086D94
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x8C
- bl Cos
- movs r5, 0
- strh r0, [r4, 0x24]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0x48
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x4
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x32]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08086DF6
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _08086E0C @ =gSprites
- adds r1, r0
- adds r3, r1, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r3]
- ldrh r0, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r1, 0x20]
- ldrh r0, [r4, 0x26]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- subs r0, 0x8
- strh r0, [r1, 0x22]
- strh r5, [r1, 0x24]
- strh r5, [r1, 0x26]
-_08086DF6:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _08086E06
- adds r0, r4, 0
- movs r1, 0x1E
- bl FieldEffectStop
-_08086E06:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086E0C: .4byte gSprites
- thumb_func_end sub_8086D94
-
- thumb_func_start FldEff_UseFly
-FldEff_UseFly: @ 8086E10
- push {lr}
- ldr r0, _08086E34 @ =sub_8086E40
- movs r1, 0xFE
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08086E38 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _08086E3C @ =gFieldEffectArguments
- ldr r0, [r0]
- strh r0, [r1, 0xA]
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08086E34: .4byte sub_8086E40
-_08086E38: .4byte gTasks
-_08086E3C: .4byte gFieldEffectArguments
- thumb_func_end FldEff_UseFly
-
- thumb_func_start sub_8086E40
-sub_8086E40: @ 8086E40
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08086E68 @ =gUnknown_83CC178
- ldr r2, _08086E6C @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08086E68: .4byte gUnknown_83CC178
-_08086E6C: .4byte gTasks
- thumb_func_end sub_8086E40
-
- thumb_func_start sub_8086E70
-sub_8086E70: @ 8086E70
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r6, _08086EC0 @ =gPlayerAvatar
- ldrb r1, [r6, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086EC4 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _08086E9A
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086EB8
-_08086E9A:
- ldrb r0, [r6]
- strh r0, [r5, 0x26]
- movs r0, 0x1
- strb r0, [r6, 0x6]
- bl SetPlayerAvatarStateMask
- bl sub_805CB70
- adds r0, r4, 0
- movs r1, 0x45
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_08086EB8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08086EC0: .4byte gPlayerAvatar
-_08086EC4: .4byte gObjectEvents
- thumb_func_end sub_8086E70
-
- thumb_func_start sub_8086EC8
-sub_8086EC8: @ 8086EC8
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08086F00 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086F04 @ =gObjectEvents
- adds r0, r1
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086EF8
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- ldr r1, _08086F08 @ =gFieldEffectArguments
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- str r0, [r1]
- movs r0, 0x3B
- bl FieldEffectStart
-_08086EF8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086F00: .4byte gPlayerAvatar
-_08086F04: .4byte gObjectEvents
-_08086F08: .4byte gFieldEffectArguments
- thumb_func_end sub_8086EC8
-
- thumb_func_start sub_8086F0C
-sub_8086F0C: @ 8086F0C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x6
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- bne _08086F54
- ldr r0, _08086F5C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086F60 @ =gObjectEvents
- adds r5, r0, r1
- ldrh r1, [r4, 0x26]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08086F44
- ldrb r0, [r5, 0x1A]
- movs r1, 0x2
- bl sub_80DC44C
- ldrb r0, [r5, 0x1A]
- movs r1, 0
- bl sub_80DC478
-_08086F44:
- bl sub_8087168
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08086F54:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086F5C: .4byte gPlayerAvatar
-_08086F60: .4byte gObjectEvents
- thumb_func_end sub_8086F0C
-
- thumb_func_start sub_8086F64
-sub_8086F64: @ 8086F64
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xA]
- bl sub_80871AC
- lsls r0, 24
- cmp r0, 0
- beq _08086F98
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x10
- strh r0, [r4, 0xC]
- movs r0, 0x1
- bl SetPlayerAvatarTransitionFlags
- ldr r0, _08086FA0 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086FA4 @ =gObjectEvents
- adds r0, r1
- movs r1, 0x2
- bl ObjectEventSetHeldMovement
-_08086F98:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086FA0: .4byte gPlayerAvatar
-_08086FA4: .4byte gObjectEvents
- thumb_func_end sub_8086F64
-
- thumb_func_start sub_8086FA8
-sub_8086FA8: @ 8086FA8
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08086FF4 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086FF8 @ =gObjectEvents
- adds r2, r0, r1
- ldrh r1, [r4, 0xC]
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _08086FCE
- subs r0, r1, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- cmp r0, 0
- bne _08086FEC
-_08086FCE:
- adds r0, r2, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086FEC
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x97
- bl PlaySE
- ldrb r0, [r4, 0xA]
- bl sub_80871C8
-_08086FEC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086FF4: .4byte gPlayerAvatar
-_08086FF8: .4byte gObjectEvents
- thumb_func_end sub_8086FA8
-
- thumb_func_start sub_8086FFC
-sub_8086FFC: @ 8086FFC
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _0808705A
- ldr r0, _08087060 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08087064 @ =gObjectEvents
- adds r4, r0
- movs r0, 0x2
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08087068 @ =gSprites
- adds r0, r1
- movs r1, 0x16
- bl StartSpriteAnim
- ldrb r0, [r4, 0x1]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r4, 0x1]
- adds r0, r4, 0
- movs r1, 0x54
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0
- strh r0, [r5, 0xC]
-_0808705A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087060: .4byte gPlayerAvatar
-_08087064: .4byte gObjectEvents
-_08087068: .4byte gSprites
- thumb_func_end sub_8086FFC
-
- thumb_func_start sub_808706C
-sub_808706C: @ 808706C
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x9
- ble _080870FC
- ldr r0, _08087104 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08087108 @ =gObjectEvents
- adds r4, r0
- adds r0, r4, 0
- bl ObjectEventClearAnimIfSpecialAnimActive
- ldrb r1, [r4, 0x1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4, 0x2]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x2]
- ldrb r0, [r5, 0xA]
- ldrb r1, [r4, 0x4]
- bl sub_8087204
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0808710C @ =gSprites
- adds r0, r4
- ldr r1, _08087110 @ =gSaveBlock2Ptr
- ldr r1, [r1]
- ldrb r1, [r1, 0x8]
- lsls r1, 1
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- bl sub_80877FC
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, 0x1C
- adds r0, r4
- ldr r1, _08087114 @ =sub_8087828
- str r1, [r0]
- bl CameraObjectReset2
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_080870FC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087104: .4byte gPlayerAvatar
-_08087108: .4byte gObjectEvents
-_0808710C: .4byte gSprites
-_08087110: .4byte gSaveBlock2Ptr
-_08087114: .4byte sub_8087828
- thumb_func_end sub_808706C
-
- thumb_func_start sub_8087118
-sub_8087118: @ 8087118
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xA]
- bl sub_80871AC
- lsls r0, 24
- cmp r0, 0
- beq _08087132
- bl sub_807DC18
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08087132:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8087118
-
- thumb_func_start sub_8087138
-sub_8087138: @ 8087138
- push {lr}
- ldr r0, _08087160 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0808715A
- movs r0, 0x1F
- bl FieldEffectActiveListRemove
- ldr r0, _08087164 @ =sub_8086E40
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_0808715A:
- pop {r0}
- bx r0
- .align 2, 0
-_08087160: .4byte gPaletteFade
-_08087164: .4byte sub_8086E40
- thumb_func_end sub_8087138
-
- thumb_func_start sub_8087168
-sub_8087168: @ 8087168
- push {lr}
- ldr r0, _080871A0 @ =gFieldEffectObjectTemplatePointers
- ldr r0, [r0, 0x68]
- movs r1, 0xFF
- movs r2, 0xB4
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- ldr r1, _080871A4 @ =gSprites
- adds r2, r1
- ldrb r3, [r2, 0x5]
- movs r1, 0xF
- ands r1, r3
- movs r3, 0xD
- negs r3, r3
- ands r1, r3
- movs r3, 0x4
- orrs r1, r3
- strb r1, [r2, 0x5]
- ldr r1, _080871A8 @ =sub_8087220
- str r1, [r2, 0x1C]
- pop {r1}
- bx r1
- .align 2, 0
-_080871A0: .4byte gFieldEffectObjectTemplatePointers
-_080871A4: .4byte gSprites
-_080871A8: .4byte sub_8087220
- thumb_func_end sub_8087168
-
- thumb_func_start sub_80871AC
-sub_80871AC: @ 80871AC
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080871C4 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x3C]
- lsls r0, 24
- lsrs r0, 24
- bx lr
- .align 2, 0
-_080871C4: .4byte gSprites
- thumb_func_end sub_80871AC
-
- thumb_func_start sub_80871C8
-sub_80871C8: @ 80871C8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _080871FC @ =gSprites
- adds r4, r0
- ldr r0, _08087200 @ =sub_80872F0
- str r0, [r4, 0x1C]
- movs r1, 0
- movs r0, 0x78
- strh r0, [r4, 0x20]
- strh r1, [r4, 0x22]
- strh r1, [r4, 0x24]
- strh r1, [r4, 0x26]
- adds r0, r4, 0
- adds r0, 0x2E
- movs r2, 0x10
- bl memset
- movs r0, 0x40
- strh r0, [r4, 0x3A]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080871FC: .4byte gSprites
-_08087200: .4byte sub_80872F0
- thumb_func_end sub_80871C8
-
- thumb_func_start sub_8087204
-sub_8087204: @ 8087204
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0808721C @ =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r3
- strh r1, [r2, 0x3A]
- bx lr
- .align 2, 0
-_0808721C: .4byte gSprites
- thumb_func_end sub_8087204
-
- thumb_func_start sub_8087220
-sub_8087220: @ 8087220
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080872E2
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0808727A
- ldrb r0, [r4, 0x1]
- movs r1, 0x3
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldr r0, _0808725C @ =gUnknown_83CC1CC
- str r0, [r4, 0x10]
- adds r0, r4, 0
- bl InitSpriteAffineAnim
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAffineAnim
- ldr r0, _08087260 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _08087264
- movs r0, 0x80
- b _08087266
- .align 2, 0
-_0808725C: .4byte gUnknown_83CC1CC
-_08087260: .4byte gSaveBlock2Ptr
-_08087264:
- movs r0, 0x76
-_08087266:
- strh r0, [r4, 0x20]
- ldr r0, _080872E8 @ =0x0000ffd0
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r0, 0x40
- strh r0, [r4, 0x30]
- adds r0, 0xC0
- strh r0, [r4, 0x32]
-_0808727A:
- ldrh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r4, 0x30]
- adds r0, r1
- strh r0, [r4, 0x30]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x78
- bl Cos
- strh r0, [r4, 0x24]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x78
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r2, [r4, 0x32]
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- ldr r0, _080872EC @ =0x000007ff
- cmp r1, r0
- bgt _080872B0
- adds r0, r2, 0
- adds r0, 0x60
- strh r0, [r4, 0x32]
-_080872B0:
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0x81
- ble _080872E2
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldrb r1, [r4, 0x1]
- lsrs r1, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- adds r0, r4, 0
- movs r3, 0
- bl CalcCenterToCornerVec
-_080872E2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080872E8: .4byte 0x0000ffd0
-_080872EC: .4byte 0x000007ff
- thumb_func_end sub_8087220
-
- thumb_func_start sub_80872F0
-sub_80872F0: @ 80872F0
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x8C
- bl Cos
- movs r5, 0
- strh r0, [r4, 0x24]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0x48
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x4
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x32]
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x40
- beq _0808734E
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _08087360 @ =gSprites
- adds r1, r0
- adds r3, r1, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r3]
- ldrh r0, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r1, 0x20]
- ldrh r0, [r4, 0x26]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- subs r0, 0x8
- strh r0, [r1, 0x22]
- strh r5, [r1, 0x24]
- strh r5, [r1, 0x26]
-_0808734E:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _0808735A
- movs r0, 0x1
- strh r0, [r4, 0x3C]
-_0808735A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087360: .4byte gSprites
- thumb_func_end sub_80872F0
-
- thumb_func_start sub_8087364
-sub_8087364: @ 8087364
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0808744E
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080873C4
- ldrb r0, [r4, 0x1]
- movs r1, 0x3
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldr r0, _080873A0 @ =gUnknown_83CC1CC
- str r0, [r4, 0x10]
- adds r0, r4, 0
- bl InitSpriteAffineAnim
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- ldr r0, _080873A4 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _080873A8
- movs r0, 0x70
- b _080873AA
- .align 2, 0
-_080873A0: .4byte gUnknown_83CC1CC
-_080873A4: .4byte gSaveBlock2Ptr
-_080873A8:
- movs r0, 0x64
-_080873AA:
- strh r0, [r4, 0x20]
- ldr r0, _08087454 @ =0x0000ffe0
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r0, 0xF0
- strh r0, [r4, 0x30]
- movs r0, 0x80
- lsls r0, 4
- strh r0, [r4, 0x32]
- movs r0, 0x80
- strh r0, [r4, 0x36]
-_080873C4:
- ldrh r1, [r4, 0x32]
- lsls r1, 16
- asrs r1, 24
- ldrh r2, [r4, 0x30]
- adds r2, r1
- ldrh r0, [r4, 0x34]
- adds r0, r1
- strh r0, [r4, 0x34]
- movs r0, 0xFF
- ands r2, r0
- strh r2, [r4, 0x30]
- movs r3, 0x30
- ldrsh r0, [r4, r3]
- movs r1, 0x20
- bl Cos
- strh r0, [r4, 0x24]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x78
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r2, 0x80
- lsls r2, 1
- cmp r0, r2
- ble _08087406
- ldrh r0, [r4, 0x36]
- subs r0, r1, r0
- strh r0, [r4, 0x32]
-_08087406:
- ldrh r1, [r4, 0x36]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- cmp r0, 0xFF
- bgt _08087416
- adds r0, r1, 0
- adds r0, 0x18
- strh r0, [r4, 0x36]
-_08087416:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0xFF
- bgt _08087420
- strh r2, [r4, 0x32]
-_08087420:
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- cmp r0, 0x3B
- ble _0808744E
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_0808744E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08087454: .4byte 0x0000ffe0
- thumb_func_end sub_8087364
-
- thumb_func_start sub_8087458
-sub_8087458: @ 8087458
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80871C8
- ldr r1, _0808747C @ =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08087480 @ =sub_8087364
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0808747C: .4byte gSprites
-_08087480: .4byte sub_8087364
- thumb_func_end sub_8087458
-
- thumb_func_start FldEff_FlyIn
-FldEff_FlyIn: @ 8087484
- push {lr}
- ldr r0, _08087494 @ =sub_8087498
- movs r1, 0xFE
- bl CreateTask
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08087494: .4byte sub_8087498
- thumb_func_end FldEff_FlyIn
-
- thumb_func_start sub_8087498
-sub_8087498: @ 8087498
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _080874C0 @ =gUnknown_83CC1D4
- ldr r2, _080874C4 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_080874C0: .4byte gUnknown_83CC1D4
-_080874C4: .4byte gTasks
- thumb_func_end sub_8087498
-
- thumb_func_start sub_80874C8
-sub_80874C8: @ 80874C8
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r4, _080875B4 @ =gPlayerAvatar
- ldrb r1, [r4, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080875B8 @ =gObjectEvents
- adds r5, r0, r1
- adds r0, r5, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _080874F2
- adds r0, r5, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _080875AE
-_080874F2:
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
- movs r0, 0x21
- strh r0, [r6, 0xC]
- ldrb r0, [r4]
- strh r0, [r6, 0x26]
- movs r0, 0x1
- strb r0, [r4, 0x6]
- bl SetPlayerAvatarStateMask
- ldrh r1, [r6, 0x26]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0808751A
- ldrb r0, [r5, 0x1A]
- movs r1, 0
- bl sub_80DC44C
-_0808751A:
- movs r0, 0x2
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl ObjectEventSetGraphicsId
- bl CameraObjectReset2
- adds r0, r5, 0
- movs r1, 0x3
- bl ObjectEventTurn
- ldrb r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _080875BC @ =gSprites
- adds r0, r4
- movs r1, 0x16
- bl StartSpriteAnim
- ldrb r1, [r5, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r5, 0x1]
- bl sub_8087168
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r6, 0xA]
- bl sub_80871C8
- ldrb r0, [r6, 0xA]
- ldrb r1, [r5, 0x4]
- bl sub_8087204
- movs r0, 0xA
- ldrsh r1, [r6, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _080875C0 @ =gSaveBlock2Ptr
- ldr r1, [r1]
- ldrb r1, [r1, 0x8]
- lsls r1, 25
- movs r2, 0x80
- lsls r2, 18
- adds r1, r2
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0xA
- ldrsh r1, [r6, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- bl sub_80877FC
- movs r2, 0xA
- ldrsh r1, [r6, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, 0x1C
- adds r0, r4
- ldr r1, _080875C4 @ =sub_8087828
- str r1, [r0]
-_080875AE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080875B4: .4byte gPlayerAvatar
-_080875B8: .4byte gObjectEvents
-_080875BC: .4byte gSprites
-_080875C0: .4byte gSaveBlock2Ptr
-_080875C4: .4byte sub_8087828
- thumb_func_end sub_80874C8
-
- thumb_func_start sub_80875C8
-sub_80875C8: @ 80875C8
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r6, _08087638 @ =gSprites
- adds r0, r6
- bl sub_80878C0
- ldrh r1, [r5, 0xC]
- movs r2, 0xC
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _080875F2
- subs r0, r1, 0x1
- strh r0, [r5, 0xC]
- lsls r0, 16
- cmp r0, 0
- bne _08087630
-_080875F2:
- ldr r0, _0808763C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08087640 @ =gObjectEvents
- adds r0, r1
- ldrb r0, [r0, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r4, r6
- ldrb r0, [r5, 0xA]
- movs r1, 0x40
- bl sub_8087204
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- movs r1, 0
- strh r0, [r4, 0x20]
- ldrh r0, [r4, 0x26]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- strh r0, [r4, 0x22]
- strh r1, [r4, 0x24]
- strh r1, [r4, 0x26]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- strh r1, [r5, 0xC]
-_08087630:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08087638: .4byte gSprites
-_0808763C: .4byte gPlayerAvatar
-_08087640: .4byte gObjectEvents
- thumb_func_end sub_80875C8
-
- thumb_func_start sub_8087644
-sub_8087644: @ 8087644
- push {r4,lr}
- sub sp, 0x24
- adds r4, r0, 0
- ldr r1, _0808768C @ =gUnknown_83CC1F0
- mov r0, sp
- movs r2, 0x24
- bl memcpy
- ldr r0, _08087690 @ =gPlayerAvatar
- ldrb r0, [r0, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _08087694 @ =gSprites
- adds r1, r0
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- strh r0, [r1, 0x26]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x11
- ble _08087682
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_08087682:
- add sp, 0x24
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0808768C: .4byte gUnknown_83CC1F0
-_08087690: .4byte gPlayerAvatar
-_08087694: .4byte gSprites
- thumb_func_end sub_8087644
-
- thumb_func_start sub_8087698
-sub_8087698: @ 8087698
- push {r4-r6,lr}
- adds r6, r0, 0
- ldrb r0, [r6, 0xA]
- bl sub_80871AC
- lsls r0, 24
- cmp r0, 0
- beq _080876FC
- ldr r0, _08087704 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r5, r0, 3
- adds r5, r0
- lsls r5, 2
- ldr r0, _08087708 @ =gObjectEvents
- adds r5, r0
- ldrb r0, [r5, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _0808770C @ =gSprites
- adds r4, r0
- ldrb r1, [r5, 0x1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
- strb r0, [r5, 0x1]
- movs r0, 0x10
- ldrsh r1, [r5, r0]
- movs r0, 0x12
- ldrsh r2, [r5, r0]
- adds r0, r5, 0
- bl sub_805F724
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- bl sub_805CB70
- adds r0, r5, 0
- movs r1, 0x45
- bl ObjectEventSetHeldMovement
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
-_080876FC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08087704: .4byte gPlayerAvatar
-_08087708: .4byte gObjectEvents
-_0808770C: .4byte gSprites
- thumb_func_end sub_8087698
-
- thumb_func_start sub_8087710
-sub_8087710: @ 8087710
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08087740 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08087744 @ =gObjectEvents
- adds r0, r1
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08087738
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- ldrb r0, [r4, 0xA]
- bl sub_8087458
-_08087738:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08087740: .4byte gPlayerAvatar
-_08087744: .4byte gObjectEvents
- thumb_func_end sub_8087710
-
- thumb_func_start sub_8087748
-sub_8087748: @ 8087748
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xA]
- bl sub_80871AC
- lsls r0, 24
- cmp r0, 0
- beq _08087774
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0808777C @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x10
- strh r0, [r4, 0xA]
-_08087774:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0808777C: .4byte gSprites
- thumb_func_end sub_8087748
-
- thumb_func_start fishE
-fishE: @ 8087780
- push {r4-r7,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0xA]
- subs r0, 0x1
- strh r0, [r5, 0xA]
- lsls r0, 16
- cmp r0, 0
- bne _080877EA
- ldr r6, _080877F0 @ =gPlayerAvatar
- ldrb r1, [r6, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080877F4 @ =gObjectEvents
- adds r4, r0, r1
- movs r7, 0
- ldrh r1, [r5, 0x26]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080877B4
- movs r7, 0x2
- ldrb r0, [r4, 0x1A]
- movs r1, 0x1
- bl sub_80DC44C
-_080877B4:
- adds r0, r7, 0
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
- adds r0, r4, 0
- movs r1, 0x1
- bl ObjectEventTurn
- ldrh r0, [r5, 0x26]
- strb r0, [r6]
- movs r0, 0
- strb r0, [r6, 0x6]
- movs r0, 0x20
- bl FieldEffectActiveListRemove
- ldr r0, _080877F8 @ =sub_8087498
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080877EA:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080877F0: .4byte gPlayerAvatar
-_080877F4: .4byte gObjectEvents
-_080877F8: .4byte sub_8087498
- thumb_func_end fishE
-
- thumb_func_start sub_80877FC
-sub_80877FC: @ 80877FC
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r5, r1, 24
- lsrs r5, 24
- ldrb r0, [r4, 0x1]
- movs r1, 0x3
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldr r0, _08087824 @ =gUnknown_83CC23C
- str r0, [r4, 0x10]
- adds r0, r4, 0
- bl InitSpriteAffineAnim
- adds r0, r4, 0
- adds r1, r5, 0
- bl StartSpriteAffineAnim
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087824: .4byte gUnknown_83CC23C
- thumb_func_end sub_80877FC
-
- thumb_func_start sub_8087828
-sub_8087828: @ 8087828
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0xB4
- bl Cos
- movs r5, 0
- strh r0, [r4, 0x24]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0x48
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x32]
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x40
- beq _08087886
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _080878BC @ =gSprites
- adds r1, r0
- adds r3, r1, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r3]
- ldrh r0, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r1, 0x20]
- ldrh r0, [r4, 0x26]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- subs r0, 0x8
- strh r0, [r1, 0x22]
- strh r5, [r1, 0x24]
- strh r5, [r1, 0x26]
-_08087886:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _080878B4
- movs r0, 0x1
- strh r0, [r4, 0x3C]
- ldrb r1, [r4, 0x1]
- subs r0, 0x5
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldrb r1, [r4, 0x1]
- lsrs r1, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- adds r0, r4, 0
- movs r3, 0
- bl CalcCenterToCornerVec
-_080878B4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080878BC: .4byte gSprites
- thumb_func_end sub_8087828
-
- thumb_func_start sub_80878C0
-sub_80878C0: @ 80878C0
- push {r4-r6,lr}
- adds r4, r0, 0
- ldrb r5, [r4, 0x1]
- lsls r0, r5, 30
- cmp r0, 0
- beq _08087916
- ldr r1, _0808791C @ =gOamMatrices
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r3, r0, 27
- lsls r0, r3, 3
- adds r1, r0, r1
- movs r2, 0
- ldrsh r0, [r1, r2]
- movs r2, 0x80
- lsls r2, 1
- cmp r0, r2
- beq _080878EC
- movs r6, 0x6
- ldrsh r0, [r1, r6]
- cmp r0, r2
- bne _08087916
-_080878EC:
- movs r0, 0x4
- negs r0, r0
- ands r0, r5
- strb r0, [r4, 0x1]
- adds r0, r3, 0
- bl FreeOamMatrix
- ldrb r1, [r4, 0x1]
- lsrs r1, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- adds r0, r4, 0
- movs r3, 0
- bl CalcCenterToCornerVec
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnim
- ldr r0, _08087920 @ =sub_80872F0
- str r0, [r4, 0x1C]
-_08087916:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0808791C: .4byte gOamMatrices
-_08087920: .4byte sub_80872F0
- thumb_func_end sub_80878C0
-
- thumb_func_start sub_8087924
-sub_8087924: @ 8087924
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r7, _080879C4 @ =gFieldEffectArguments
- ldrb r0, [r7]
- ldrb r1, [r7, 0x4]
- ldrb r2, [r7, 0x8]
- mov r3, sp
- bl TryGetObjectEventIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _080879BA
- mov r0, sp
- ldrb r0, [r0]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _080879C8 @ =gObjectEvents
- adds r4, r0
- movs r0, 0x10
- ldrsh r5, [r4, r0]
- subs r5, 0x7
- movs r0, 0x12
- ldrsh r6, [r4, r0]
- subs r6, 0x7
- ldr r1, [r7, 0xC]
- subs r5, r1, r5
- lsls r5, 4
- ldr r2, [r7, 0x10]
- subs r6, r2, r6
- lsls r6, 4
- adds r1, 0x7
- lsls r1, 16
- asrs r1, 16
- adds r2, 0x7
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- bl npc_coords_shift
- ldr r0, _080879CC @ =sub_80879D8
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080879D0 @ =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r1
- ldrb r0, [r4, 0x4]
- strh r0, [r2, 0xA]
- ldr r3, _080879D4 @ =gSprites
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x20]
- adds r0, r5
- strh r0, [r2, 0xC]
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x22]
- adds r0, r6
- strh r0, [r2, 0xE]
- ldr r0, [r7, 0x14]
- strh r0, [r2, 0x18]
- mov r0, sp
- ldrb r0, [r0]
- strh r0, [r2, 0x1A]
-_080879BA:
- movs r0, 0
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080879C4: .4byte gFieldEffectArguments
-_080879C8: .4byte gObjectEvents
-_080879CC: .4byte sub_80879D8
-_080879D0: .4byte gTasks
-_080879D4: .4byte gSprites
- thumb_func_end sub_8087924
-
- thumb_func_start sub_80879D8
-sub_80879D8: @ 80879D8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, _08087A04 @ =gTasks+0x8
- adds r5, r0, r1
- movs r0, 0x2
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08087A08 @ =gSprites
- adds r6, r0, r1
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08087A0C
- cmp r0, 0x1
- beq _08087A4A
- b _08087AA8
- .align 2, 0
-_08087A04: .4byte gTasks+0x8
-_08087A08: .4byte gSprites
-_08087A0C:
- ldrh r0, [r6, 0x20]
- lsls r0, 4
- strh r0, [r5, 0x8]
- ldrh r0, [r6, 0x22]
- lsls r0, 4
- strh r0, [r5, 0xA]
- movs r2, 0x4
- ldrsh r0, [r5, r2]
- lsls r0, 4
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- subs r0, r1
- movs r2, 0x10
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r5, 0xC]
- movs r1, 0x6
- ldrsh r0, [r5, r1]
- lsls r0, 4
- movs r2, 0xA
- ldrsh r1, [r5, r2]
- subs r0, r1
- movs r2, 0x10
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r5, 0xE]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08087A4A:
- ldrh r1, [r5, 0x10]
- movs r2, 0x10
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _08087A78
- subs r0, r1, 0x1
- strh r0, [r5, 0x10]
- ldrh r1, [r5, 0xC]
- ldrh r0, [r5, 0x8]
- adds r1, r0
- strh r1, [r5, 0x8]
- ldrh r0, [r5, 0xE]
- ldrh r2, [r5, 0xA]
- adds r0, r2
- strh r0, [r5, 0xA]
- lsls r1, 16
- asrs r1, 20
- strh r1, [r6, 0x20]
- ldrh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 20
- strh r0, [r6, 0x22]
- b _08087AA8
-_08087A78:
- movs r1, 0x12
- ldrsh r0, [r5, r1]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08087AB0 @ =gObjectEvents
- adds r4, r0
- ldrh r0, [r5, 0x4]
- strh r0, [r6, 0x20]
- ldrh r0, [r5, 0x6]
- strh r0, [r6, 0x22]
- adds r0, r4, 0
- bl npc_coords_shift_still
- ldrb r0, [r4]
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r4]
- movs r0, 0x43
- bl FieldEffectActiveListRemove
- adds r0, r7, 0
- bl DestroyTask
-_08087AA8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08087AB0: .4byte gObjectEvents
- thumb_func_end sub_80879D8
-
- thumb_func_start sub_8087AB4
-sub_8087AB4: @ 8087AB4
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _08087AF8 @ =gFieldEffectArguments
- ldrb r0, [r4]
- ldrb r1, [r4, 0x4]
- ldrb r2, [r4, 0x8]
- mov r3, sp
- bl TryGetObjectEventIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _08087B04
- ldr r0, _08087AFC @ =sub_8087BC0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08087B00 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- mov r0, sp
- ldrb r0, [r0]
- strh r0, [r1, 0xC]
- ldr r0, [r4]
- strh r0, [r1, 0x14]
- ldr r0, [r4, 0x4]
- strh r0, [r1, 0x16]
- ldr r0, [r4, 0x8]
- strh r0, [r1, 0x18]
- b _08087B0A
- .align 2, 0
-_08087AF8: .4byte gFieldEffectArguments
-_08087AFC: .4byte sub_8087BC0
-_08087B00: .4byte gTasks
-_08087B04:
- movs r0, 0x44
- bl FieldEffectActiveListRemove
-_08087B0A:
- movs r0, 0
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8087AB4
-
- thumb_func_start sub_8087B14
-sub_8087B14: @ 8087B14
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08087B4C @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08087B50
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- ble _08087B54
- movs r0, 0
- strh r0, [r4, 0xC]
- ldrh r1, [r4, 0xA]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08087B54
- subs r0, r1, 0x1
- b _08087B52
- .align 2, 0
-_08087B4C: .4byte gTasks+0x8
-_08087B50:
- movs r0, 0x4
-_08087B52:
- strh r0, [r4, 0xA]
-_08087B54:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _08087B8E
- movs r0, 0
- strh r0, [r4]
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08087B84
- ldrh r1, [r4, 0xA]
- negs r1, r1
- lsls r1, 16
- asrs r1, 16
- movs r0, 0
- bl SetCameraPanning
- b _08087B8E
-_08087B84:
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl SetCameraPanning
-_08087B8E:
- bl UpdateCameraPanning
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08087BA0
- adds r0, r5, 0
- bl DestroyTask
-_08087BA0:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8087B14
-
- thumb_func_start sub_8087BA8
-sub_8087BA8: @ 8087BA8
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08087BBC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0x1
- strh r0, [r1, 0x16]
- bx lr
- .align 2, 0
-_08087BBC: .4byte gTasks
- thumb_func_end sub_8087BA8
-
- thumb_func_start sub_8087BC0
-sub_8087BC0: @ 8087BC0
- 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, _08087BF8 @ =gTasks+0x8
- adds r4, r0
- bl InstallCameraPanAheadCallback
- movs r0, 0
- bl SetCameraPanningCallback
- ldr r1, _08087BFC @ =gUnknown_83CC244
- movs r2, 0x2
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r1
- ldr r2, [r0]
- adds r0, r4, 0
- adds r1, r5, 0
- bl _call_via_r2
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087BF8: .4byte gTasks+0x8
-_08087BFC: .4byte gUnknown_83CC244
- thumb_func_end sub_8087BC0
-
- thumb_func_start sub_8087C00
-sub_8087C00: @ 8087C00
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08087C28 @ =sub_8087B14
- movs r1, 0x5A
- bl CreateTask
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x51
- bl PlaySE
- strh r4, [r5, 0xA]
- ldrh r0, [r5, 0x2]
- adds r0, 0x1
- strh r0, [r5, 0x2]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087C28: .4byte sub_8087B14
- thumb_func_end sub_8087C00
-
- thumb_func_start sub_8087C2C
-sub_8087C2C: @ 8087C2C
- push {r4-r7,lr}
- sub sp, 0x4
- adds r7, r0, 0
- ldrh r0, [r7, 0x6]
- adds r0, 0x1
- strh r0, [r7, 0x6]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x78
- ble _08087C9A
- ldr r2, _08087CA4 @ =gObjectEvents
- movs r1, 0x4
- ldrsh r0, [r7, r1]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08087CA8 @ =gSprites
- adds r4, r0
- ldrb r0, [r1, 0x1]
- movs r2, 0x20
- orrs r0, r2
- strb r0, [r1, 0x1]
- ldr r6, _08087CAC @ =0x0000ffff
- ldr r5, _08087CB0 @ =0x00007fff
- adds r0, r6, 0
- movs r1, 0x10
- adds r2, r5, 0
- bl BlendPalettes
- str r5, [sp]
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- adds r0, r4, 0
- bl sub_8087CFC
- movs r0, 0x50
- bl PlaySE
- ldrb r0, [r7, 0xA]
- bl sub_8087BA8
- movs r0, 0
- strh r0, [r7, 0x6]
- ldrh r0, [r7, 0x2]
- adds r0, 0x1
- strh r0, [r7, 0x2]
-_08087C9A:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08087CA4: .4byte gObjectEvents
-_08087CA8: .4byte gSprites
-_08087CAC: .4byte 0x0000ffff
-_08087CB0: .4byte 0x00007fff
- thumb_func_end sub_8087C2C
-
- thumb_func_start sub_8087CB4
-sub_8087CB4: @ 8087CB4
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _08087CF4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08087CEE
- ldr r0, _08087CF8 @ =sub_8087B14
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _08087CEE
- bl InstallCameraPanAheadCallback
- ldrb r0, [r4, 0xC]
- ldrb r1, [r4, 0xE]
- ldrb r2, [r4, 0x10]
- bl RemoveObjectEventByLocalIdAndMap
- movs r0, 0x44
- bl FieldEffectActiveListRemove
- adds r0, r5, 0
- bl DestroyTask
-_08087CEE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087CF4: .4byte gPaletteFade
-_08087CF8: .4byte sub_8087B14
- thumb_func_end sub_8087CB4
-
- thumb_func_start sub_8087CFC
-sub_8087CFC: @ 8087CFC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- ldr r0, _08087D80 @ =gUnknown_300506C
- movs r1, 0
- ldrsh r2, [r0, r1]
- movs r3, 0x20
- ldrsh r0, [r6, r3]
- adds r2, r0
- movs r1, 0x24
- ldrsh r0, [r6, r1]
- adds r2, r0
- ldr r0, _08087D84 @ =gUnknown_3005068
- movs r3, 0
- ldrsh r0, [r0, r3]
- movs r3, 0x22
- ldrsh r1, [r6, r3]
- adds r0, r1
- movs r3, 0x26
- ldrsh r1, [r6, r3]
- adds r0, r1
- subs r0, 0x4
- movs r5, 0
- lsls r2, 16
- mov r8, r2
- lsls r7, r0, 16
-_08087D32:
- ldr r0, _08087D88 @ =gUnknown_83CC2A0
- mov r2, r8
- asrs r1, r2, 16
- asrs r2, r7, 16
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _08087D6E
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _08087D8C @ =gSprites
- adds r4, r0
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- strh r5, [r4, 0x2E]
- ldrb r1, [r6, 0x5]
- lsrs r1, 4
- lsls r1, 4
- ldrb r2, [r4, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x5]
-_08087D6E:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08087D32
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08087D80: .4byte gUnknown_300506C
-_08087D84: .4byte gUnknown_3005068
-_08087D88: .4byte gUnknown_83CC2A0
-_08087D8C: .4byte gSprites
- thumb_func_end sub_8087CFC
-
- thumb_func_start sub_8087D90
-sub_8087D90: @ 8087D90
- push {lr}
- adds r1, r0, 0
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- beq _08087DBC
- cmp r0, 0x1
- bgt _08087DA6
- cmp r0, 0
- beq _08087DB0
- b _08087DDA
-_08087DA6:
- cmp r0, 0x2
- beq _08087DC8
- cmp r0, 0x3
- beq _08087DCE
- b _08087DDA
-_08087DB0:
- ldrh r0, [r1, 0x20]
- subs r0, 0x10
- strh r0, [r1, 0x20]
- ldrh r0, [r1, 0x22]
- subs r0, 0xC
- b _08087DD8
-_08087DBC:
- ldrh r0, [r1, 0x20]
- adds r0, 0x10
- strh r0, [r1, 0x20]
- ldrh r0, [r1, 0x22]
- subs r0, 0xC
- b _08087DD8
-_08087DC8:
- ldrh r0, [r1, 0x20]
- subs r0, 0x10
- b _08087DD2
-_08087DCE:
- ldrh r0, [r1, 0x20]
- adds r0, 0x10
-_08087DD2:
- strh r0, [r1, 0x20]
- ldrh r0, [r1, 0x22]
- adds r0, 0xC
-_08087DD8:
- strh r0, [r1, 0x22]
-_08087DDA:
- ldrh r0, [r1, 0x20]
- adds r0, 0x4
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xF8
- bhi _08087DF6
- movs r0, 0x22
- ldrsh r2, [r1, r0]
- movs r0, 0x4
- negs r0, r0
- cmp r2, r0
- blt _08087DF6
- cmp r2, 0xA4
- ble _08087DFC
-_08087DF6:
- adds r0, r1, 0
- bl DestroySprite
-_08087DFC:
- pop {r0}
- bx r0
- thumb_func_end sub_8087D90
-
- thumb_func_start sub_8087E00
-sub_8087E00: @ 8087E00
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08087E24 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08087E1E
- movs r0, 0x45
- bl FieldEffectActiveListRemove
- adds r0, r4, 0
- bl DestroyTask
-_08087E1E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08087E24: .4byte gPaletteFade
- thumb_func_end sub_8087E00
-
- thumb_func_start sub_8087E28
-sub_8087E28: @ 8087E28
- push {r4,r5,lr}
- sub sp, 0x4
- movs r4, 0x1
- negs r4, r4
- ldr r5, _08087E5C @ =0x00007fff
- adds r0, r4, 0
- movs r1, 0x10
- adds r2, r5, 0
- bl BlendPalettes
- str r5, [sp]
- adds r0, r4, 0
- adds r1, r4, 0
- movs r2, 0xF
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, _08087E60 @ =sub_8087E00
- movs r1, 0x5A
- bl CreateTask
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08087E5C: .4byte 0x00007fff
-_08087E60: .4byte sub_8087E00
- thumb_func_end sub_8087E28
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s
index db64b77db..564cc519f 100644
--- a/asm/field_effect_helpers.s
+++ b/asm/field_effect_helpers.s
@@ -1369,8 +1369,8 @@ _080DB800: .4byte gFieldEffectObjectTemplatePointers
_080DB804: .4byte gSprites
thumb_func_end FldEff_JumpLongGrass
- thumb_func_start sub_80DB808
-sub_80DB808: @ 80DB808
+ thumb_func_start FldEff_ShortGrass
+FldEff_ShortGrass: @ 80DB808
push {r4-r6,lr}
ldr r6, _080DB89C @ =gFieldEffectArguments
ldrb r0, [r6]
@@ -1449,7 +1449,7 @@ _080DB89C: .4byte gFieldEffectArguments
_080DB8A0: .4byte gObjectEvents
_080DB8A4: .4byte gFieldEffectObjectTemplatePointers
_080DB8A8: .4byte gSprites
- thumb_func_end sub_80DB808
+ thumb_func_end FldEff_ShortGrass
thumb_func_start sub_80DB8AC
sub_80DB8AC: @ 80DB8AC
@@ -2310,8 +2310,8 @@ _080DBF48: .4byte gFieldEffectArguments
_080DBF4C: .4byte gSprites
thumb_func_end oei_ripples
- thumb_func_start sub_80DBF50
-sub_80DBF50: @ 80DBF50
+ thumb_func_start FldEff_HotSpringsWater
+FldEff_HotSpringsWater: @ 80DBF50
push {r4-r6,lr}
ldr r6, _080DBFE4 @ =gFieldEffectArguments
ldrb r0, [r6]
@@ -2390,7 +2390,7 @@ _080DBFE4: .4byte gFieldEffectArguments
_080DBFE8: .4byte gObjectEvents
_080DBFEC: .4byte gFieldEffectObjectTemplatePointers
_080DBFF0: .4byte gSprites
- thumb_func_end sub_80DBF50
+ thumb_func_end FldEff_HotSpringsWater
thumb_func_start sub_80DBFF4
sub_80DBFF4: @ 80DBFF4
@@ -2720,8 +2720,8 @@ StartAshFieldEffect: @ 80DC23C
_080DC26C: .4byte gFieldEffectArguments
thumb_func_end StartAshFieldEffect
- thumb_func_start oei_ash
-oei_ash: @ 80DC270
+ thumb_func_start FldEff_Ash
+FldEff_Ash: @ 80DC270
push {r4,r5,lr}
sub sp, 0x4
ldr r5, _080DC2F0 @ =gFieldEffectArguments
@@ -2789,7 +2789,7 @@ _080DC2E6:
_080DC2F0: .4byte gFieldEffectArguments
_080DC2F4: .4byte gFieldEffectObjectTemplatePointers
_080DC2F8: .4byte gSprites
- thumb_func_end oei_ash
+ thumb_func_end FldEff_Ash
thumb_func_start sub_80DC2FC
sub_80DC2FC: @ 80DC2FC
@@ -2906,8 +2906,8 @@ _080DC3C8:
bx r0
thumb_func_end sub_80DC3A8
- thumb_func_start sub_80DC3D0
-sub_80DC3D0: @ 80DC3D0
+ thumb_func_start FldEff_SurfBlob
+FldEff_SurfBlob: @ 80DC3D0
push {r4,r5,lr}
ldr r4, _080DC43C @ =gFieldEffectArguments
adds r1, r4, 0x4
@@ -2964,7 +2964,7 @@ _080DC43C: .4byte gFieldEffectArguments
_080DC440: .4byte gFieldEffectObjectTemplatePointers
_080DC444: .4byte gSprites
_080DC448: .4byte 0x0000ffff
- thumb_func_end sub_80DC3D0
+ thumb_func_end FldEff_SurfBlob
thumb_func_start sub_80DC44C
sub_80DC44C: @ 80DC44C
@@ -3723,11 +3723,11 @@ _080DC9D0:
_080DC9D8: .4byte 0x00001004
thumb_func_end sub_80DC99C
- thumb_func_start sub_80DC9DC
-sub_80DC9DC: @ 80DC9DC
+ thumb_func_start FldEff_BerryTreeGrowthSparkle
+FldEff_BerryTreeGrowthSparkle: @ 80DC9DC
movs r0, 0
bx lr
- thumb_func_end sub_80DC9DC
+ thumb_func_end FldEff_BerryTreeGrowthSparkle
thumb_func_start ShowTreeDisguiseFieldEffect
ShowTreeDisguiseFieldEffect: @ 80DC9E0
diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s
index 6e425d2c7..ccf946752 100644
--- a/asm/field_player_avatar.s
+++ b/asm/field_player_avatar.s
@@ -5337,7 +5337,7 @@ _0805DBBA:
strh r0, [r7, 0x22]
movs r2, 0x22
ldrsh r1, [r7, r2]
- ldr r0, _0805DBF0 @ =gUnknown_3005068
+ ldr r0, _0805DBF0 @ =gTotalCameraPixelOffsetY
movs r2, 0
ldrsh r0, [r0, r2]
adds r1, r0
@@ -5350,7 +5350,7 @@ _0805DBBA:
strh r0, [r5]
b _0805DBFA
.align 2, 0
-_0805DBF0: .4byte gUnknown_3005068
+_0805DBF0: .4byte gTotalCameraPixelOffsetY
_0805DBF4:
adds r0, r2, 0
bl DestroyTask
diff --git a/asm/field_weather.s b/asm/field_weather.s
index 7960543a6..2c7ef2128 100644
--- a/asm/field_weather.s
+++ b/asm/field_weather.s
@@ -2698,8 +2698,8 @@ _0807B07C: .4byte gUnknown_2037F34
_0807B080: .4byte 0x000006c6
thumb_func_end sub_807B070
- thumb_func_start sub_807B084
-sub_807B084: @ 807B084
+ thumb_func_start PreservePaletteInWeather
+PreservePaletteInWeather: @ 807B084
push {r4,r5,lr}
adds r4, r0, 0
lsls r4, 24
@@ -2721,10 +2721,10 @@ sub_807B084: @ 807B084
_0807B0A8: .4byte gUnknown_83C2CC0
_0807B0AC: .4byte gUnknown_2038684
_0807B0B0: .4byte gUnknown_20386A4
- thumb_func_end sub_807B084
+ thumb_func_end PreservePaletteInWeather
- thumb_func_start sub_807B0B4
-sub_807B0B4: @ 807B0B4
+ thumb_func_start ResetPreservedPalettesInWeather
+ResetPreservedPalettesInWeather: @ 807B0B4
ldr r1, _0807B0BC @ =gUnknown_20386A4
ldr r0, _0807B0C0 @ =gUnknown_83C2CC0
str r0, [r1]
@@ -2732,7 +2732,7 @@ sub_807B0B4: @ 807B0B4
.align 2, 0
_0807B0BC: .4byte gUnknown_20386A4
_0807B0C0: .4byte gUnknown_83C2CC0
- thumb_func_end sub_807B0B4
+ thumb_func_end ResetPreservedPalettesInWeather
thumb_func_start sub_807B0C4
sub_807B0C4: @ 807B0C4
diff --git a/asm/overworld.s b/asm/overworld.s
index e16709d54..7572f413a 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -115,8 +115,8 @@ _08054C8A:
_08054C9C: .4byte sWhiteOutMoneyLossBadgeFlagIDs
thumb_func_end CountBadgesForOverworldWhiteOutLossCalculation
- thumb_func_start sub_8054CA0
-sub_8054CA0: @ 8054CA0
+ thumb_func_start Overworld_ResetStateAfterFly
+Overworld_ResetStateAfterFly: @ 8054CA0
push {lr}
bl ResetInitialPlayerAvatarState
movs r0, 0x83
@@ -152,7 +152,7 @@ _08054CF8: .4byte 0x00000805
_08054CFC: .4byte 0x00000806
_08054D00: .4byte 0x00000808
_08054D04: .4byte 0x0000404d
- thumb_func_end sub_8054CA0
+ thumb_func_end Overworld_ResetStateAfterFly
thumb_func_start Overworld_ResetStateAfterTeleport
Overworld_ResetStateAfterTeleport: @ 8054D08
@@ -1242,12 +1242,12 @@ sub_805550C: @ 805550C
lsls r0, 24
lsrs r5, r0, 24
adds r0, r4, 0
- bl is_light_level_1_2_3_5_or_6
+ bl IsMapTypeOutdoors
lsls r0, 24
cmp r0, 0
beq _08055590
adds r0, r5, 0
- bl is_light_level_1_2_3_5_or_6
+ bl IsMapTypeOutdoors
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1764,7 +1764,7 @@ sub_8055920: @ 8055920
bl sub_8054F68
ldr r0, _0805599C @ =gMapHeader
ldrb r0, [r0, 0x17]
- bl is_light_level_1_2_3_5_or_6
+ bl IsMapTypeOutdoors
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -1815,7 +1815,7 @@ sub_80559A8: @ 80559A8
bl sub_8054F68
ldr r0, _080559E0 @ =gMapHeader
ldrb r0, [r0, 0x17]
- bl is_light_level_1_2_3_5_or_6
+ bl IsMapTypeOutdoors
bl TrySetMapSaveWarpStatus
bl SetSav1WeatherFromCurrMapHeader
bl sub_805610C
@@ -2611,8 +2611,8 @@ _08055F82:
bx r1
thumb_func_end GetMapMusicFadeoutSpeed
- thumb_func_start sub_8055F88
-sub_8055F88: @ 8055F88
+ thumb_func_start TryFadeOutOldMapMusic
+TryFadeOutOldMapMusic: @ 8055F88
push {r4,lr}
bl sub_8055DA4
lsls r0, 16
@@ -2638,7 +2638,7 @@ _08055FB8:
bx r0
.align 2, 0
_08055FC0: .4byte 0x00004001
- thumb_func_end sub_8055F88
+ thumb_func_end TryFadeOutOldMapMusic
thumb_func_start BGMusicStopped
BGMusicStopped: @ 8055FC4
@@ -2933,8 +2933,8 @@ sub_80561B4: @ 80561B4
_080561D4: .4byte gUnknown_2031DB4
thumb_func_end sub_80561B4
- thumb_func_start is_light_level_1_2_3_5_or_6
-is_light_level_1_2_3_5_or_6: @ 80561D8
+ thumb_func_start IsMapTypeOutdoors
+IsMapTypeOutdoors: @ 80561D8
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -2956,7 +2956,7 @@ _080561F6:
_080561F8:
pop {r1}
bx r1
- thumb_func_end is_light_level_1_2_3_5_or_6
+ thumb_func_end IsMapTypeOutdoors
thumb_func_start Overworld_MapTypeAllowsTeleportAndFly
Overworld_MapTypeAllowsTeleportAndFly: @ 80561FC
@@ -3741,7 +3741,7 @@ _08056880: .4byte gFieldCallback
_08056884: .4byte FieldCB_ReturnToFieldWirelessLink
_08056888:
ldr r1, _080568A0 @ =gFieldCallback
- ldr r0, _080568A4 @ =sub_807DDD0
+ ldr r0, _080568A4 @ =FieldCB_ReturnToFieldWiredLink
_0805688C:
str r0, [r1]
bl ScriptContext1_Init
@@ -3751,7 +3751,7 @@ _0805688C:
bx r0
.align 2, 0
_080568A0: .4byte gFieldCallback
-_080568A4: .4byte sub_807DDD0
+_080568A4: .4byte FieldCB_ReturnToFieldWiredLink
thumb_func_end c2_8056854
thumb_func_start CB2_ReturnToFieldWithOpenMenu
@@ -4659,10 +4659,10 @@ _0805706A:
thumb_func_start sub_8057074
sub_8057074: @ 8057074
push {lr}
- ldr r0, _08057094 @ =gUnknown_300506C
+ ldr r0, _08057094 @ =gTotalCameraPixelOffsetX
movs r1, 0
strh r1, [r0]
- ldr r0, _08057098 @ =gUnknown_3005068
+ ldr r0, _08057098 @ =gTotalCameraPixelOffsetY
strh r1, [r0]
bl sub_805DE74
movs r0, 0
@@ -4672,18 +4672,18 @@ sub_8057074: @ 8057074
pop {r0}
bx r0
.align 2, 0
-_08057094: .4byte gUnknown_300506C
-_08057098: .4byte gUnknown_3005068
+_08057094: .4byte gTotalCameraPixelOffsetX
+_08057098: .4byte gTotalCameraPixelOffsetY
thumb_func_end sub_8057074
thumb_func_start mli4_mapscripts_and_other
mli4_mapscripts_and_other: @ 805709C
push {r4,r5,lr}
sub sp, 0x4
- ldr r0, _080570F4 @ =gUnknown_300506C
+ ldr r0, _080570F4 @ =gTotalCameraPixelOffsetX
movs r1, 0
strh r1, [r0]
- ldr r0, _080570F8 @ =gUnknown_3005068
+ ldr r0, _080570F8 @ =gTotalCameraPixelOffsetY
strh r1, [r0]
bl sub_805DE74
mov r4, sp
@@ -4715,8 +4715,8 @@ mli4_mapscripts_and_other: @ 805709C
pop {r0}
bx r0
.align 2, 0
-_080570F4: .4byte gUnknown_300506C
-_080570F8: .4byte gUnknown_3005068
+_080570F4: .4byte gTotalCameraPixelOffsetX
+_080570F8: .4byte gTotalCameraPixelOffsetY
_080570FC: .4byte gSaveBlock2Ptr
thumb_func_end mli4_mapscripts_and_other
@@ -6809,7 +6809,7 @@ _080580F4: .4byte gUnknown_3000E80
_080580F8: .4byte CableClub_EventScript_TooBusyToNotice
_080580FC:
adds r0, r2, 0
- bl sub_8081A34
+ bl GetSeeingLinkPlayerCardMsg
cmp r0, 0
bne _08058110
ldr r0, _0805810C @ =CableClub_EventScript_ReadTrainerCard
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 115c9567b..79966093f 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1801,7 +1801,7 @@ mapldr_0808C6D8: @ 808C6D8
bl _call_via_r4
adds r0, r5, 0
bl SetVBlankCallback
- bl sub_807DC00
+ bl FadeInFromBlack
pop {r4,r5}
pop {r0}
bx r0
diff --git a/common_syms/cable_club.txt b/common_syms/cable_club.txt
new file mode 100644
index 000000000..9cdf633b5
--- /dev/null
+++ b/common_syms/cable_club.txt
@@ -0,0 +1 @@
+UnusedVarNeededToMatch
diff --git a/data/cable_club.s b/data/cable_club.s
deleted file mode 100644
index 8ea8b9167..000000000
--- a/data/cable_club.s
+++ /dev/null
@@ -1,15 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
- .align 2
-
-gUnknown_83C6AB0:: @ 83C6AB0
- .byte 0, 16, 11, 11, 2, 15
- .2byte 0x125
-
-gUnknown_83C6AB8:: @ 83C6AB8
- .4byte gUnknown_841DF8B
- .4byte gUnknown_841DF92
- .4byte gUnknown_841DF99
- .4byte gUnknown_841DFA0
diff --git a/data/event_object_movement.s b/data/event_object_movement.s
index 17adf3ef4..5920835c4 100644
--- a/data/event_object_movement.s
+++ b/data/event_object_movement.s
@@ -7028,7 +7028,7 @@ gUnknown_83A5EBC:: @ 83A5EBC
.4byte gUnknown_83A5EA4
gUnknown_83A5EC0:: @ 83A5EC0
- spr_template 0xFFFF, 0x100D, gObjectEventBaseOam_16x16, gUnknown_83A5EBC, gUnknown_83A5E7C, gDummySpriteAffineAnimTable, sub_8085604
+ spr_template 0xFFFF, 0x100D, gObjectEventBaseOam_16x16, gUnknown_83A5EBC, gUnknown_83A5E7C, gDummySpriteAffineAnimTable, SpriteCB_PopOutOfAsh
gUnknown_83A5ED8:: @ 83A5ED8
obj_pal gUnknown_839C588, 0x100D
@@ -7052,7 +7052,7 @@ gUnknown_83A5F20:: @ 83A5F20
.4byte gUnknown_83A5F08
gUnknown_83A5F24:: @ 83A5F24
- spr_template 0xFFFF, 0x100D, gObjectEventBaseOam_16x16, gUnknown_83A5F20, gUnknown_83A5EE0, gDummySpriteAffineAnimTable, sub_80853B0
+ spr_template 0xFFFF, 0x100D, gObjectEventBaseOam_16x16, gUnknown_83A5F20, gUnknown_83A5EE0, gDummySpriteAffineAnimTable, SpriteCB_LavaridgeGymWarp
gUnknown_83A5F3C:: @ 83A5F3C
overworld_frame gUnknown_839CAA8, 2, 4, 0
diff --git a/data/event_scripts.s b/data/event_scripts.s
index f148e2bd2..dae7ba832 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -34,6 +34,7 @@
#include "constants/quest_log.h"
#include "constants/daycare.h"
#include "constants/easy_chat.h"
+#include "constants/trainer_card.h"
.include "asm/macros.inc"
.include "asm/macros/event.inc"
.set FALSE, 0
@@ -795,6 +796,7 @@ gStdScriptsEnd::
.include "data/maps/SixIsland_House/text.inc"
.include "data/maps/SixIsland_Mart/text.inc"
.include "data/maps/FiveIsland_ResortGorgeous_House/text.inc"
+ .include "data/maps/TwoIsland_CapeBrink_House/text.inc"
.include "data/maps/SixIsland_WaterPath_House1/text.inc"
.include "data/maps/SixIsland_WaterPath_House2/text.inc"
.include "data/maps/SevenIsland_SevaultCanyon_House/text.inc"
diff --git a/data/field_effect.s b/data/field_effect.s
deleted file mode 100644
index 7e797c560..000000000
--- a/data/field_effect.s
+++ /dev/null
@@ -1,432 +0,0 @@
-#include "constants/maps.h"
-#include "constants/species.h"
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
- .align 2
-
-gUnknown_83CA770:: @ 3CA770 4bpp
- .incbin "graphics/field_effects/unk_83CA770.4bpp"
-
-gUnknown_83CAF70:: @ 83CAF70 gbapal
- .incbin "graphics/field_effects/unk_83CAF70.gbapal"
-
-gUnknown_83CAF90:: @ 83CAF90 4bpp
- .incbin "graphics/field_effects/unk_83CAF90.4bpp"
-
-gUnknown_83CAFB0:: @ 83CAFB0 gbapal
- .incbin "graphics/field_effects/unk_83CAFB0.gbapal"
-
-gUnknown_83CAFD0:: @ 83CAFD0 4bpp
- .incbin "graphics/field_effects/unk_83CAFD0.4bpp"
-
-gUnknown_83CB3D0:: @ 83CB3D0 gbapal
- .incbin "graphics/field_effects/unk_83CB3D0.gbapal"
-
-gUnknown_83CB3F0:: @ 83CB3F0 4bpp
- .incbin "graphics/field_effects/unk_83CB3F0.4bpp"
-
-gUnknown_83CB5F0:: @ 83CB5F0 4bpp
- .incbin "graphics/field_effects/unk_83CB5F0.4bpp"
-
-gUnknown_83CB7F0:: @ 83CB7F0 gbapal gUnknown_83CB5F0
- .incbin "graphics/field_effects/unk_83CB7F0.gbapal"
-
-gUnknown_83CB810:: @ 83CB810 4bpp
- .incbin "graphics/field_effects/unk_83CB810.bin"
-
-gUnknown_83CBA90:: @ 83CBA90 4bpp
- .incbin "graphics/field_effects/unk_83CBA90.4bpp"
-
-gUnknown_83CBB10:: @ 83CBB10 gbapal gUnknown_83CBA90
- .incbin "graphics/field_effects/unk_83CBB10.gbapal"
-
-gUnknown_83CBB30:: @ 83CBB30 4bpp
- .incbin "graphics/field_effects/unk_83CBB30.bin"
-
-gUnknown_83CBDB0::
- .incbin "graphics/field_effects/unk_83CBDB0.4bpp"
-
- .align 2
-gUnknown_83CBE30:: @ 83CBE30 dataptr
- .4byte FieldEffectCmd_loadtiles
- .4byte FieldEffectCmd_loadfadedpal
- .4byte FieldEffectCmd_loadpal
- .4byte FieldEffectCmd_callnative
- .4byte sub_80834DC
- .4byte FieldEffectCmd_loadgfx_callnative
- .4byte FieldEffectCmd_loadtiles_callnative
- .4byte FieldEffectCmd_loadfadedpal_callnative
-
-gUnknown_83CBE50:: @ 83CBE50 oamdata
- .4byte 0xc0000000, 0x00000000
-
-gOamData_83CBE58:: @ 83CBE58 oamdata
- .4byte 0x00000000, 0x00000000
-
-gOamData_83CBE60:: @ 83CBE60 oamdata
- .4byte 0x40000000, 0x00000000
-
-gUnknown_83CBE68:: @ 83CBE68 sprite_frames
- obj_frame_tiles gUnknown_83CA770, 0x0800
-
-gUnknown_83CBE70:: @ 83CBE70 sprite_palette
- obj_pal gUnknown_83CAF70, 4102
-
-gUnknown_83CBE78:: @ 83CBE78
- obj_image_anim_frame 0x0000, 1
- obj_image_anim_end
-
- .align 2
-gUnknown_83CBE80:: @ 83CBE80 dataptr
- .4byte gUnknown_83CBE78
-
-gUnknown_83CBE84:: @ 83CBE84 spr_template
- spr_template 65535, 4102, gUnknown_83CBE50, gUnknown_83CBE80, gUnknown_83CBE68, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
-gUnknown_83CBE9C:: @ 83CBE9C sprite_palette
- obj_pal gUnknown_83CAFB0, 4103
-
-gUnknown_83CBEA4:: @ 83CBEA4 sprite_palette
- obj_pal gUnknown_83CB3D0, 4112
-
-gOamData_83CBEAC:: @ 83CBEAC oam_data
- .4byte 0x80004000, 0x00000000
-
-gUnknown_83CBEB4:: @ 83CBEB4 sprite_frames
- obj_frame_tiles gUnknown_83CAF90, 0x0020
-
-gUnknown_83CBEBC:: @ 83CBEBC sprite_frames
- obj_frame_tiles gUnknown_83CAFD0 + 0x000, 0x0100
- obj_frame_tiles gUnknown_83CAFD0 + 0x100, 0x0100
- obj_frame_tiles gUnknown_83CAFD0 + 0x200, 0x0100
- obj_frame_tiles gUnknown_83CAFD0 + 0x300, 0x0100
-
-gUnknown_83CBEDC:: @ 83CBEDC sprite_frames
- obj_frame_tiles gUnknown_83CB3F0 + 0x000, 0x0080
- obj_frame_tiles gUnknown_83CB3F0 + 0x080, 0x0080
- obj_frame_tiles gUnknown_83CB3F0 + 0x100, 0x0080
- obj_frame_tiles gUnknown_83CB3F0 + 0x180, 0x0080
-
-gUnknown_83CBEFC:: @ 83CBEFC unknown
- .byte 0xf4, 0xf8, 0x01, 0x80
- .byte 0x04, 0xf8, 0x20, 0x80
- .byte 0xf4, 0x00, 0x31, 0x80
- .byte 0x04, 0x00, 0x50, 0x80
- .byte 0x04, 0x00, 0x00, 0x00
-
-gUnknown_83CBF10:: @ 83CBF10 dataptr
- .4byte gUnknown_83CBEFC
-
-gUnknown_83CBF14:: @ 83CBF14 unknown
- .byte 0xe0, 0xf8, 0x05, 0x80
- .byte 0x00, 0xf8, 0x45, 0x80
- .byte 0xe0, 0x00, 0x85, 0x80
- .byte 0x00, 0x00, 0xc5, 0x80
- .byte 0x04, 0x00, 0x00, 0x00
-
-gUnknown_83CBF28:: @ 83CBE28 dataptr
- .4byte gUnknown_83CBF14
-
-gUnknown_83CBF2C:: @ 83CBF2C animcmd
- obj_image_anim_frame 0x0000, 1
- obj_image_anim_jump 0
-
-gUnknown_83CBF34:: @ 83CBF34 animcmd
- obj_image_anim_frame 0x0001, 5
- obj_image_anim_frame 0x0002, 5
- obj_image_anim_frame 0x0003, 7
- obj_image_anim_frame 0x0002, 5
- obj_image_anim_frame 0x0001, 5
- obj_image_anim_frame 0x0000, 5
- obj_image_anim_loop 3
- obj_image_anim_end
-
- .align 2
-gUnknown_83CBF54:: @ 83CBF54 dataptr
- .4byte gUnknown_83CBF2C
- .4byte gUnknown_83CBF34
-
-gUnknown_83CBF5C:: @ 83CBF5C animcmd
- obj_image_anim_frame 0x0003, 8
- obj_image_anim_frame 0x0002, 8
- obj_image_anim_frame 0x0001, 8
- obj_image_anim_frame 0x0000, 8
- obj_image_anim_frame 0x0001, 8
- obj_image_anim_frame 0x0002, 8
- obj_image_anim_loop 2
- obj_image_anim_frame 0x0001, 8
- obj_image_anim_frame 0x0000, 8
- obj_image_anim_end
-
- .align 2
-gUnknown_83CBF84:: @ 83CBF84 dataptr
- .4byte gUnknown_83CBF5C
-
-gUnknown_83CBF88:: @ 83CBF88 spr_template
- spr_template 65535, 4103, gOamData_83CBE58, gUnknown_83CBF54, gUnknown_83CBEB4, gDummySpriteAffineAnimTable, SpriteCB_PokeballGlow
-
-gUnknown_83CBFA0:: @ 83CBFA0 spr_template
- spr_template 65535, 4103, gOamData_83CBEAC, gUnknown_83CBF54, gUnknown_83CBEBC, gDummySpriteAffineAnimTable, sub_808424C
-
-gUnknown_83CBFB8:: @ 83CBFB8 spr_template
- spr_template 65535, 4112, gOamData_83CBE60, gUnknown_83CBF84, gUnknown_83CBEDC, gDummySpriteAffineAnimTable, sub_80842AC
-
- .align 2
-gUnknown_83CBFD0:: @ 83CBFD0 dataptr
- .4byte PokecenterHealEffect_0
- .4byte PokecenterHealEffect_1
- .4byte sub_8083C78
- .4byte PokecenterHealEffect_3
-
- .align 2
-gUnknown_83CBFE0:: @ 83CBFE0 dataptr
- .4byte HallOfFameRecordEffect_0
- .4byte sub_8083D74
- .4byte sub_8083DAC
- .4byte sub_8083DD4
-
- .align 2
-gUnknown_83CBFF0:: @ 83CBFF0 dataptr
- .4byte PokeballGlowEffect_0
- .4byte PokeballGlowEffect_1
- .4byte PokeballGlowEffect_2
- .4byte PokeballGlowEffect_3
- .4byte PokeballGlowEffect_4
- .4byte PokeballGlowEffect_5
- .4byte PokeballGlowEffect_6
- .4byte nullsub_50
-
-gUnknown_83CC010:: @ 83CC010 data16
- .2byte 0x0000, 0x0000, 0x0006, 0x0000, 0x0000, 0x0004, 0x0006, 0x0004, 0x0000, 0x0008, 0x0006, 0x0008
-
-gUnknown_83CC028:: @ 83CC028 data8
- .byte 0x10, 0x0c, 0x08, 0x00
-
-gUnknown_83CC02C:: @ 83CC02C data8
- .byte 0x10, 0x0c, 0x08, 0x00
-
-gUnknown_83CC030:: @ 83CC030 data8
- .byte 0x00, 0x00, 0x00, 0x00
-
- .align 2
-gUnknown_83CC034:: @ 83CC034 dataptr
- .4byte sub_80844BC
- .4byte sub_8084564
- .4byte sub_8084580
- .4byte sub_80845F4
- .4byte sub_80846AC
- .4byte sub_80846C8
- .4byte sub_8084708
-
- .align 2
-gUnknown_83CC050:: @ 83CC050 dataptr
- .4byte sub_80847F8
- .4byte sub_8084820
- .4byte sub_8084890
- .4byte sub_80848B4
- .4byte sub_80848C4
- .4byte sub_80848E8
-
- .align 2
-gUnknown_83CC068:: @ 83CC068 dataptr
- .4byte sub_8084A5C
- .4byte sub_8084AD8
- .4byte sub_8084B18
- .4byte sub_8084B78
- .4byte sub_8084BB8
- .4byte sub_8084C18
- .4byte sub_8084C3C
-
- .align 2
-gUnknown_83CC084:: @ 83CC084 dataptr
- .4byte sub_8084D24
- .4byte waterfall_1_do_anim_probably
- .4byte waterfall_2_wait_anim_finish_probably
- .4byte sub_8084DA4
- .4byte sub_8084DCC
-
- .align 2
-gUnknown_83CC098:: @ 83CC098 dataptr
- .4byte dive_1_lock
- .4byte dive_2_unknown
- .4byte dive_3_unknown
-
- .align 2
-gUnknown_83CC0A4:: @ 83CC0A4 dataptr
- .4byte sub_8084FA0
- .4byte sub_8084FD8
- .4byte sub_808500C
- .4byte sub_8085058
- .4byte sub_808514C
- .4byte sub_8085168
-
- .align 2
-gUnknown_83CC0BC:: @ 83CC0BC dataptr
- .4byte sub_8085244
- .4byte sub_8085274
- .4byte sub_80852C0
- .4byte sub_8085314
-
- .align 2
-gUnknown_83CC0CC:: @ 83CC0CC dataptr
- .4byte sub_8085440
- .4byte sub_8085470
- .4byte sub_80854EC
- .4byte sub_8085524
- .4byte sub_808554C
-
- .align 2
-gUnknown_83CC0E0:: @ 83CC0E0 dataptr
- .4byte sub_808566C
- .4byte sub_8085690
-
-gUnknown_83CC0E8:: @ 83CC0E8 data8
- .byte 0x01, 0x03, 0x04, 0x02, 0x01
-
- .align 2
-gUnknown_83CC0F0:: @ 83CC0F0 dataptr
- .4byte sub_8085A54
- .4byte sub_8085A80
-
- .align 2
-gUnknown_83CC0F8:: @ 83CC0F8 dataptr
- .4byte sub_8085BA8
- .4byte sub_8085BD0
- .4byte sub_8085C60
- .4byte sub_8085D34
-
-gUnknown_83CC108:: @ 83CC108 data8
- .byte 0x01, 0x03, 0x04, 0x02, 0x01
-
- .align 2
-gUnknown_83CC110:: @ 83CC110 dataptr
- .4byte sub_8085E0C
- .4byte sub_8085E98
- .4byte sub_8085F9C
-
- .align 2
-gUnknown_83CC11C:: @ 83CC11C dataptr
- .4byte sub_8086110
- .4byte sub_8086180
- .4byte sub_80861FC
- .4byte sub_8086288
- .4byte sub_80862B8
- .4byte sub_808630C
- .4byte sub_8086358
-
- .align 2
-gUnknown_83CC138:: @ 83CC138 dataptr
- .4byte sub_8086498
- .4byte sub_80864D4
- .4byte sub_8086554
- .4byte sub_80865C0
- .4byte sub_80865F0
- .4byte sub_8086630
- .4byte sub_8086650
-
- .align 2
-gUnknown_83CC154:: @ 83CC154 dataptr
- .4byte sub_80869C0
- .4byte sub_8086A20
- .4byte sub_8086A6C
- .4byte sub_8086AB4
- .4byte sub_8086B30
-
- .align 2
-gUnknown_83CC168:: @ 83CC168 dataptr
- .4byte sub_8086C00
- .4byte sub_8086C24
- .4byte sub_8086C70
- .4byte sub_8086CF4
-
-gUnknown_83CC178:: @ 83CC178 dataptr (incomplete)
- .4byte sub_8086E70
- .4byte sub_8086EC8
- .4byte sub_8086F0C
- .4byte sub_8086F64
- .4byte sub_8086FA8
- .4byte sub_8086FFC
- .4byte sub_808706C
- .4byte sub_8087118
- .4byte sub_8087138
-
-gUnknown_83CC19C:: @ 83CC19C affineanimcmd
- obj_rot_scal_anim_frame 8, 8, 226, 0
- obj_rot_scal_anim_frame 28, 28, 0, 30
- obj_rot_scal_anim_end
-
-gUnknown_83CC1B4:: @ 83CC1B4 affineanimcmd
- obj_rot_scal_anim_frame 256, 256, 64, 0
- obj_rot_scal_anim_frame -10, -10, 0, 22
- obj_rot_scal_anim_end
-
- .align 2
-gUnknown_83CC1CC:: @ 83CC1CC dataptr
- .4byte gUnknown_83CC19C
- .4byte gUnknown_83CC1B4
-
- .align 2
-gUnknown_83CC1D4:: @ 83CC1D4 dataptr
- .4byte sub_80874C8
- .4byte sub_80875C8
- .4byte sub_8087644
- .4byte sub_8087698
- .4byte sub_8087710
- .4byte sub_8087748
- .4byte fishE
-
-gUnknown_83CC1F0:: @ 83CC1F0 data16
- .2byte 0xfffe, 0xfffc, 0xfffb, 0xfffa, 0xfff9, 0xfff8, 0xfff8, 0xfff8, 0xfff9, 0xfff9, 0xfffa, 0xfffb, 0xfffd, 0xfffe, 0x0000, 0x0002
- .2byte 0x0004, 0x0008
-
-gUnknown_83CC214:: @ 83CC214 affineanimcmd
- obj_rot_scal_anim_frame 24, 24, 0, 1
- obj_rot_scal_anim_jump 0
-
-gUnknown_83CC224:: @ 83CC224 affineanimcmd
- obj_rot_scal_anim_frame 512, 512, 0, 1
- obj_rot_scal_anim_frame -16, -16, 0, 1
- obj_rot_scal_anim_jump 1
-
- .align 2
-gUnknown_83CC23C:: @ 83CC23C dataptr
- .4byte gUnknown_83CC214
- .4byte gUnknown_83CC224
-
-gUnknown_83CC244:: @ 83CC244 dataptr
- .4byte sub_8087C00
- .4byte sub_8087C2C
- .4byte sub_8087CB4
-
-gUnknown_83CC250:: @ 83CC250 sprite_frames
- obj_frame_tiles gUnknown_83CBDB0 + 0x00, 0x0020
- obj_frame_tiles gUnknown_83CBDB0 + 0x20, 0x0020
- obj_frame_tiles gUnknown_83CBDB0 + 0x40, 0x0020
- obj_frame_tiles gUnknown_83CBDB0 + 0x60, 0x0020
-
-gUnknown_83CC270:: @ 83CC270 animcmd
- obj_image_anim_frame 0x0000, 0
- obj_image_anim_end
-
-gUnknown_83CC278:: @ 83CC278 animcmd
- obj_image_anim_frame 0x0001, 0
- obj_image_anim_end
-
-gUnknown_83CC280:: @ 83CC280 animcmd
- obj_image_anim_frame 0x0002, 0
- obj_image_anim_end
-
-gUnknown_83CC288:: @ 83CC288 animcmd
- obj_image_anim_frame 0x0003, 0
- obj_image_anim_end
-
-gUnknown_83CC290:: @ 83CC290 dataptr
- .4byte gUnknown_83CC270
- .4byte gUnknown_83CC278
- .4byte gUnknown_83CC280
- .4byte gUnknown_83CC288
-
-gUnknown_83CC2A0:: @ 83CC2A0 spr_template
- spr_template 65535, 4371, gOamData_83CBE58, gUnknown_83CC290, gUnknown_83CC250, gDummySpriteAffineAnimTable, sub_8087D90
diff --git a/data/field_effect_scripts.s b/data/field_effect_scripts.s
index cac76bea9..95d63568c 100644
--- a/data/field_effect_scripts.s
+++ b/data/field_effect_scripts.s
@@ -1,7 +1,7 @@
.include "asm/macros/field_effect_script.inc"
.section script_data, "aw", %progbits
.align 2
-gUnknown_81D96AC:: @ 81D96AC
+gFieldEffectScriptPointers:: @ 81D96AC
.4byte gFldEffScript_ExclamationMarkIcon
.4byte gFldEffScript_UseCutOnGrass
.4byte gFldEffScript_UseCutOnTree
@@ -67,9 +67,9 @@ gUnknown_81D96AC:: @ 81D96AC
.4byte gFldEffScript_HallOfFameRecord
.4byte gFldEffScript_UseTeleport
.4byte gFldEffScript_SmileyFaceIcon
- .4byte gFldEffScript_Unk41
+ .4byte gFldEffScript_UseVsSeeker
.4byte gFldEffScript_DoubleExclMarkIcon
- .4byte gFldEffScript_Unk43
+ .4byte gFldEffScript_MoveDeoxysRock
.4byte gFldEffScript_Unk44
.4byte gFldEffScript_Unk45
@@ -102,15 +102,15 @@ gFldEffScript_FieldMoveShowMon:: @ 81D97F0
end
gFldEffScript_Ash:: @ 81D97F6
- loadfadedpal_callnative gUnknown_83A5348, oei_ash
+ loadfadedpal_callnative gUnknown_83A5348, FldEff_Ash
end
gFldEffScript_SurfBlob:: @ 81D9800
- callnative sub_80DC3D0
+ callnative FldEff_SurfBlob
end
gFldEffScript_UseSurf:: @ 81D9806
- callnative sub_8086944
+ callnative FldEff_UseSurf
end
gFldEffScript_Dust:: @ 81D980C
@@ -165,7 +165,7 @@ gFldEffScript_Unknown22:: @ 81D987B
end
gFldEffScript_BerryTreeGrowthSparkle:: @ 81D9885
- callnative sub_80DC9DC
+ callnative FldEff_BerryTreeGrowthSparkle
end
gFldEffScript_DeepSandFootprints:: @ 81D988B
@@ -174,7 +174,7 @@ gFldEffScript_DeepSandFootprints:: @ 81D988B
gFldEffScript_PokecenterHeal:: @ 81D9895
loadfadedpal gUnknown_83CBE9C
- loadfadedpal_callnative gUnknown_83A5340, sub_8083B8C
+ loadfadedpal_callnative gUnknown_83A5340, FldEff_PokecenterHeal
end
gFldEffScript_UseSecretPowerTree:: @ 81D98A4
@@ -192,7 +192,7 @@ gFldEffScript_MountainDisguise:: @ 81D98AC
end
gFldEffScript_NpcflyOut:: @ 81D98B2
- callnative sub_8086D38
+ callnative FldEff_NpcFlyOut
end
gFldEffScript_UseFly:: @ 81D98B8
@@ -224,7 +224,7 @@ gFldEffScript_UseRockSmash:: @ 81D98E4
end
gFldEffScript_UseStrength:: @ 81D98EA
- callnative sub_80D0860
+ callnative FldEff_UseStrength
end
gFldEffScript_UseDig:: @ 81D98F0
@@ -236,15 +236,15 @@ gFldEffScript_SandPile:: @ 81D98F6
end
gFldEffScript_ShortGrass:: @ 81D9900
- loadfadedpal_callnative gUnknown_83A5348, sub_80DB808
+ loadfadedpal_callnative gUnknown_83A5348, FldEff_ShortGrass
end
gFldEffScript_HotSpringsWater:: @ 81D990A
- loadfadedpal_callnative gUnknown_83A5348, sub_80DBF50
+ loadfadedpal_callnative gUnknown_83A5348, FldEff_HotSpringsWater
end
gFldEffScript_UseWaterfall:: @ 81D9914
- callnative oei_waterfall
+ callnative FldEff_UseWaterfall
end
gFldEffScript_UseDive:: @ 81D991A
@@ -314,7 +314,7 @@ gFldEffScript_PcturnOn:: @ 81D9976
gFldEffScript_HallOfFameRecord:: @ 81D9977
loadfadedpal gUnknown_83CBE9C
- loadfadedpal_callnative gUnknown_83CBEA4, sub_8083CE0
+ loadfadedpal_callnative gUnknown_83CBEA4, FldEff_HallOfFameRecord
end
gFldEffScript_UseTeleport:: @ 81D9986
@@ -325,22 +325,22 @@ gFldEffScript_SmileyFaceIcon:: @ 81D998C
callnative FldEff_SmileyFaceIcon
end
-gFldEffScript_Unk41:: @ 81D9992
- callnative sub_8086BA8
+gFldEffScript_UseVsSeeker:: @ 81D9992
+ callnative FldEff_UseVsSeeker
end
gFldEffScript_DoubleExclMarkIcon:: @ 81D9998
callnative FldEff_DoubleExclMarkIcon
end
-gFldEffScript_Unk43:: @ 81D999E
- callnative sub_8087924
+gFldEffScript_MoveDeoxysRock:: @ 81D999E
+ callnative FldEff_MoveDeoxysRock
end
gFldEffScript_Unk44:: @ 81D99A4
- callnative sub_8087AB4
+ callnative FldEff_Unk44
end
gFldEffScript_Unk45:: @ 81D99AA
- callnative sub_8087E28
+ callnative FldEff_Unk45
end
diff --git a/data/maps/FiveIsland/map.json b/data/maps/FiveIsland/map.json
index cf40eae9e..f91680715 100644
--- a/data/maps/FiveIsland/map.json
+++ b/data/maps/FiveIsland/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_EventScript_167EAA",
+ "script": "FiveIsland_EventScript_Fisher",
"flag": "0"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_EventScript_167EA1",
+ "script": "FiveIsland_EventScript_BugCatcher",
"flag": "0"
},
{
@@ -104,7 +104,7 @@
"x": 20,
"y": 8,
"elevation": 0,
- "script": "FiveIsland_EventScript_167E98"
+ "script": "FiveIsland_EventScript_IslandSign"
}
]
}
diff --git a/data/maps/FiveIsland/scripts.inc b/data/maps/FiveIsland/scripts.inc
index 6b925d8f9..ca47c7db4 100644
--- a/data/maps/FiveIsland/scripts.inc
+++ b/data/maps/FiveIsland/scripts.inc
@@ -6,14 +6,14 @@ FiveIsland_OnTransition:: @ 8167E94
setworldmapflag FLAG_WORLD_MAP_FIVE_ISLAND
end
-FiveIsland_EventScript_167E98:: @ 8167E98
- msgbox gUnknown_8182DFB, MSGBOX_SIGN
+FiveIsland_EventScript_IslandSign:: @ 8167E98
+ msgbox FiveIsland_Text_IslandSign, MSGBOX_SIGN
end
-FiveIsland_EventScript_167EA1:: @ 8167EA1
- msgbox gUnknown_8182E26, MSGBOX_NPC
+FiveIsland_EventScript_BugCatcher:: @ 8167EA1
+ msgbox FiveIsland_Text_WeirdBuildingInMeadow, MSGBOX_NPC
end
-FiveIsland_EventScript_167EAA:: @ 8167EAA
- msgbox gUnknown_8182E96, MSGBOX_NPC
+FiveIsland_EventScript_Fisher:: @ 8167EAA
+ msgbox FiveIsland_Text_BeenGettingBusierAroundHere, MSGBOX_NPC
end
diff --git a/data/maps/FiveIsland/text.inc b/data/maps/FiveIsland/text.inc
index 40c0d7b4e..045f8c09f 100644
--- a/data/maps/FiveIsland/text.inc
+++ b/data/maps/FiveIsland/text.inc
@@ -1,14 +1,14 @@
-gUnknown_8182DFB:: @ 8182DFB
+FiveIsland_Text_IslandSign:: @ 8182DFB
.string "FIVE ISLAND\n"
.string "Chrono Island: Where Time Goes$"
-gUnknown_8182E26:: @ 8182E26
+FiveIsland_Text_WeirdBuildingInMeadow:: @ 8182E26
.string "Oh, this stinks. I wanted to play in\n"
.string "the MEADOW.\p"
.string "But they put up a weird building\n"
.string "on it, so I can't play there.$"
-gUnknown_8182E96:: @ 8182E96
+FiveIsland_Text_BeenGettingBusierAroundHere:: @ 8182E96
.string "It's been getting busier around\n"
.string "these parts lately.\p"
.string "I haven't been catching many good\n"
diff --git a/data/maps/FiveIsland_Harbor/map.json b/data/maps/FiveIsland_Harbor/map.json
index 4cbf533e1..3dbe4effc 100644
--- a/data/maps/FiveIsland_Harbor/map.json
+++ b/data/maps/FiveIsland_Harbor/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_Harbor_EventScript_171D43",
+ "script": "FiveIsland_Harbor_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_Harbor/scripts.inc b/data/maps/FiveIsland_Harbor/scripts.inc
index 47ee3487f..6cb97fd8e 100644
--- a/data/maps/FiveIsland_Harbor/scripts.inc
+++ b/data/maps/FiveIsland_Harbor/scripts.inc
@@ -1,7 +1,7 @@
FiveIsland_Harbor_MapScripts:: @ 8171D42
.byte 0
-FiveIsland_Harbor_EventScript_171D43:: @ 8171D43
+FiveIsland_Harbor_EventScript_Sailor:: @ 8171D43
lock
faceplayer
message Text_WhereDoYouWantToSail
diff --git a/data/maps/FiveIsland_House1/map.json b/data/maps/FiveIsland_House1/map.json
index d75fa598d..e6f0c29c5 100644
--- a/data/maps/FiveIsland_House1/map.json
+++ b/data/maps/FiveIsland_House1/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_House1_EventScript_171D57",
+ "script": "FiveIsland_House1_EventScript_Woman",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_House1/scripts.inc b/data/maps/FiveIsland_House1/scripts.inc
index 86f6cbcb4..b3ea78ecb 100644
--- a/data/maps/FiveIsland_House1/scripts.inc
+++ b/data/maps/FiveIsland_House1/scripts.inc
@@ -1,6 +1,6 @@
FiveIsland_House1_MapScripts:: @ 8171D56
.byte 0
-FiveIsland_House1_EventScript_171D57:: @ 8171D57
- msgbox gUnknown_81A3CAC, MSGBOX_NPC
+FiveIsland_House1_EventScript_Woman:: @ 8171D57
+ msgbox FiveIsland_House1_Text_HusbandWentOffFishing, MSGBOX_NPC
end
diff --git a/data/maps/FiveIsland_House1/text.inc b/data/maps/FiveIsland_House1/text.inc
index 7fa7e5ac1..1724cf678 100644
--- a/data/maps/FiveIsland_House1/text.inc
+++ b/data/maps/FiveIsland_House1/text.inc
@@ -1,11 +1,11 @@
-Text_1A3C71:: @ 81A3C71
+FiveIsland_House1_JPText_HusbandWentOffFishing:: @ 81A3C71
.string "こんばんの おかずは\n"
.string "ようい しなくて いいぞ!\p"
.string "って だんなが\n"
.string "つりに いったん だけど‥\l"
.string "しんじて いいのかねえ$"
-gUnknown_81A3CAC:: @ 81A3CAC
+FiveIsland_House1_Text_HusbandWentOffFishing:: @ 81A3CAC
.string "Don't worry about buying anything\n"
.string "for dinner tonight!\p"
.string "…That's what my husband said when\n"
diff --git a/data/maps/FiveIsland_House2/map.json b/data/maps/FiveIsland_House2/map.json
index 2a3c96e0c..b1e15c7e9 100644
--- a/data/maps/FiveIsland_House2/map.json
+++ b/data/maps/FiveIsland_House2/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 2,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_House2_EventScript_171D61",
+ "script": "FiveIsland_House2_EventScript_OldMan",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_House2/scripts.inc b/data/maps/FiveIsland_House2/scripts.inc
index 79cfa755f..938571eb0 100644
--- a/data/maps/FiveIsland_House2/scripts.inc
+++ b/data/maps/FiveIsland_House2/scripts.inc
@@ -1,6 +1,6 @@
FiveIsland_House2_MapScripts:: @ 8171D60
.byte 0
-FiveIsland_House2_EventScript_171D61:: @ 8171D61
- msgbox gUnknown_81A3D5E, MSGBOX_NPC
+FiveIsland_House2_EventScript_OldMan:: @ 8171D61
+ msgbox FiveIsland_House2_Text_MeadowBelongedToFamily, MSGBOX_NPC
end
diff --git a/data/maps/FiveIsland_House2/text.inc b/data/maps/FiveIsland_House2/text.inc
index bad18b3a3..dd794b4e3 100644
--- a/data/maps/FiveIsland_House2/text.inc
+++ b/data/maps/FiveIsland_House2/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A3D5E:: @ 81A3D5E
+FiveIsland_House2_Text_MeadowBelongedToFamily:: @ 81A3D5E
.string "That MEADOW has belonged to our\n"
.string "family for generations.\p"
.string "I should have had a giant mansion\n"
diff --git a/data/maps/FiveIsland_LostCave_Room1/map.json b/data/maps/FiveIsland_LostCave_Room1/map.json
index 43b8fe08c..ab4b2a727 100644
--- a/data/maps/FiveIsland_LostCave_Room1/map.json
+++ b/data/maps/FiveIsland_LostCave_Room1/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_LostCave_Room1_EventScript_164BF7",
+ "script": "FiveIsland_LostCave_Room1_EventScript_Lawson",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_LostCave_Room1/scripts.inc b/data/maps/FiveIsland_LostCave_Room1/scripts.inc
index b6f4e0257..07e1df046 100644
--- a/data/maps/FiveIsland_LostCave_Room1/scripts.inc
+++ b/data/maps/FiveIsland_LostCave_Room1/scripts.inc
@@ -1,7 +1,7 @@
FiveIsland_LostCave_Room1_MapScripts:: @ 8164BF6
.byte 0
-FiveIsland_LostCave_Room1_EventScript_164BF7:: @ 8164BF7
- trainerbattle_single TRAINER_RUIN_MANIAC_LAWSON, Text_17CEF5, Text_17CF42
- msgbox gUnknown_817CF54, MSGBOX_AUTOCLOSE
+FiveIsland_LostCave_Room1_EventScript_Lawson:: @ 8164BF7
+ trainerbattle_single TRAINER_RUIN_MANIAC_LAWSON, FiveIsland_LostCave_Room1_Text_LawsonIntro, FiveIsland_LostCave_Room1_Text_LawsonDefeat
+ msgbox FiveIsland_LostCave_Room1_Text_LawsonPostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/maps/FiveIsland_LostCave_Room1/text.inc b/data/maps/FiveIsland_LostCave_Room1/text.inc
index 820a9a10f..d57eb39cf 100644
--- a/data/maps/FiveIsland_LostCave_Room1/text.inc
+++ b/data/maps/FiveIsland_LostCave_Room1/text.inc
@@ -1,13 +1,13 @@
-Text_17CEF5:: @ 817CEF5
+FiveIsland_LostCave_Room1_Text_LawsonIntro:: @ 817CEF5
.string "Aiyeeeeeh!\p"
.string "I thought this was an ancient ruin.\n"
.string "But it's teeming with ghosts!$"
-Text_17CF42:: @ 817CF42
+FiveIsland_LostCave_Room1_Text_LawsonDefeat:: @ 817CF42
.string "Aiyeeeeeh!\n"
.string "Mercy!$"
-gUnknown_817CF54:: @ 817CF54
+FiveIsland_LostCave_Room1_Text_LawsonPostBattle:: @ 817CF54
.string "I'm trying to get out of here, but\n"
.string "I always end up at the same spot.\p"
.string "Maybe the number of boulders is\n"
diff --git a/data/maps/FiveIsland_LostCave_Room10/scripts.inc b/data/maps/FiveIsland_LostCave_Room10/scripts.inc
index 8610c7c2d..747823b0d 100644
--- a/data/maps/FiveIsland_LostCave_Room10/scripts.inc
+++ b/data/maps/FiveIsland_LostCave_Room10/scripts.inc
@@ -4,50 +4,50 @@ FiveIsland_LostCave_Room10_MapScripts:: @ 8164C2D
.byte 0
FiveIsland_LostCave_Room10_OnResume:: @ 8164C38
- call_if_defeated TRAINER_LADY_SELPHY, EventScript_164C42
+ call_if_defeated TRAINER_LADY_SELPHY, FiveIsland_LostCave_Room10_EventScript_StopSelphySceneTrigger
end
-EventScript_164C42:: @ 8164C42
+FiveIsland_LostCave_Room10_EventScript_StopSelphySceneTrigger:: @ 8164C42
setvar VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10, 1
return
FiveIsland_LostCave_Room10_OnFrame:: @ 8164C48
- map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10, 0, EventScript_164C52
+ map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10, 0, FiveIsland_LostCave_Room10_EventScript_FindSelphyScene
.2byte 0
-EventScript_164C52:: @ 8164C52
+FiveIsland_LostCave_Room10_EventScript_FindSelphyScene:: @ 8164C52
lockall
textcolor 1
- applymovement 1, Movement_164CC0
+ applymovement 1, FiveIsland_LostCave_Room10_Movement_SelphyWander
waitmovement 0
delay 100
- applymovement 1, Movement_164CC8
+ applymovement 1, FiveIsland_LostCave_Room10_Movement_SelphyApproach
waitmovement 0
- msgbox gUnknown_817D062
- goto_if_questlog EventScript_164CB6
- trainerbattle_no_intro TRAINER_LADY_SELPHY, Text_17D086
- msgbox gUnknown_817D0B2
+ msgbox FiveIsland_LostCave_Room10_Text_SelphyIntro
+ goto_if_questlog FiveIsland_LostCave_Room10_EventScript_SelphyQuestLog
+ trainerbattle_no_intro TRAINER_LADY_SELPHY, FiveIsland_LostCave_Room10_Text_SelphyDefeat
+ msgbox FiveIsland_LostCave_Room10_Text_MayIAskYouToTakeMeHome
closemessage
- call EventScript_164CA5
+ call FiveIsland_LostCave_Room10_EventScript_SetSelphyFound
warp MAP_FIVE_ISLAND_RESORT_GORGEOUS, 255, 39, 10
waitstate
releaseall
end
-EventScript_164CA5:: @ 8164CA5
+FiveIsland_LostCave_Room10_EventScript_SetSelphyFound:: @ 8164CA5
setflag FLAG_HIDE_LOST_CAVE_SELPHY
clearflag FLAG_HIDE_RESORT_GORGEOUS_SELPHY
setvar VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10, 1
setvar VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 1
return
-EventScript_164CB6:: @ 8164CB6
+FiveIsland_LostCave_Room10_EventScript_SelphyQuestLog:: @ 8164CB6
settrainerflag TRAINER_LADY_SELPHY
- call EventScript_164CA5
+ call FiveIsland_LostCave_Room10_EventScript_SetSelphyFound
releaseall
end
-Movement_164CC0:: @ 8164CC0
+FiveIsland_LostCave_Room10_Movement_SelphyWander:: @ 8164CC0
walk_left
delay_16
walk_right
@@ -57,7 +57,7 @@ Movement_164CC0:: @ 8164CC0
walk_in_place_fastest_down
step_end
-Movement_164CC8:: @ 8164CC8
+FiveIsland_LostCave_Room10_Movement_SelphyApproach:: @ 8164CC8
walk_down
walk_down
step_end
diff --git a/data/maps/FiveIsland_LostCave_Room10/text.inc b/data/maps/FiveIsland_LostCave_Room10/text.inc
index da92ae5e7..57542fe1f 100644
--- a/data/maps/FiveIsland_LostCave_Room10/text.inc
+++ b/data/maps/FiveIsland_LostCave_Room10/text.inc
@@ -1,12 +1,12 @@
-gUnknown_817D062:: @ 817D062
+FiveIsland_LostCave_Room10_Text_SelphyIntro:: @ 817D062
.string "W-what do you intend to do with\n"
.string "me?$"
-Text_17D086:: @ 817D086
+FiveIsland_LostCave_Room10_Text_SelphyDefeat:: @ 817D086
.string "Oh… I was afraid that you meant to\n"
.string "harm me.$"
-gUnknown_817D0B2:: @ 817D0B2
+FiveIsland_LostCave_Room10_Text_MayIAskYouToTakeMeHome:: @ 817D0B2
.string "I am so glad that you happened\n"
.string "here.\p"
.string "I grew rather bored of walking,\n"
diff --git a/data/maps/FiveIsland_LostCave_Room4/map.json b/data/maps/FiveIsland_LostCave_Room4/map.json
index 844d47ac4..059093f62 100644
--- a/data/maps/FiveIsland_LostCave_Room4/map.json
+++ b/data/maps/FiveIsland_LostCave_Room4/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_LostCave_Room4_EventScript_164C11",
+ "script": "FiveIsland_LostCave_Room4_EventScript_Laura",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_LostCave_Room4/scripts.inc b/data/maps/FiveIsland_LostCave_Room4/scripts.inc
index 38241ab71..936e488e8 100644
--- a/data/maps/FiveIsland_LostCave_Room4/scripts.inc
+++ b/data/maps/FiveIsland_LostCave_Room4/scripts.inc
@@ -1,7 +1,7 @@
FiveIsland_LostCave_Room4_MapScripts:: @ 8164C10
.byte 0
-FiveIsland_LostCave_Room4_EventScript_164C11:: @ 8164C11
- trainerbattle_single TRAINER_PSYCHIC_LAURA, Text_17CFC1, Text_17CFFB
- msgbox gUnknown_817D037, MSGBOX_AUTOCLOSE
+FiveIsland_LostCave_Room4_EventScript_Laura:: @ 8164C11
+ trainerbattle_single TRAINER_PSYCHIC_LAURA, FiveIsland_LostCave_Room4_Text_LauraIntro, FiveIsland_LostCave_Room4_Text_LauraDefeat
+ msgbox FiveIsland_LostCave_Room4_Text_LauraPostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/maps/FiveIsland_LostCave_Room4/text.inc b/data/maps/FiveIsland_LostCave_Room4/text.inc
index a9a8c0daf..7244fcccb 100644
--- a/data/maps/FiveIsland_LostCave_Room4/text.inc
+++ b/data/maps/FiveIsland_LostCave_Room4/text.inc
@@ -1,12 +1,12 @@
-Text_17CFC1:: @ 817CFC1
+FiveIsland_LostCave_Room4_Text_LauraIntro:: @ 817CFC1
.string "I think there is a mysterious power\n"
.string "at work in this cave.$"
-Text_17CFFB:: @ 817CFFB
+FiveIsland_LostCave_Room4_Text_LauraDefeat:: @ 817CFFB
.string "If you don't go into the right\n"
.string "tunnel, you won't get ahead.$"
-gUnknown_817D037:: @ 817D037
+FiveIsland_LostCave_Room4_Text_LauraPostBattle:: @ 817D037
.string "Earlier, a lady went into the caves\n"
.string "ahead.$"
diff --git a/data/maps/FiveIsland_Meadow/map.json b/data/maps/FiveIsland_Meadow/map.json
index 6546c6e5a..6c1caf054 100644
--- a/data/maps/FiveIsland_Meadow/map.json
+++ b/data/maps/FiveIsland_Meadow/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_Meadow_EventScript_1689BB",
+ "script": "FiveIsland_Meadow_EventScript_Rocket3",
"flag": "FLAG_HIDE_FIVE_ISLAND_ROCKETS"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 5,
- "script": "FiveIsland_Meadow_EventScript_16898D",
+ "script": "FiveIsland_Meadow_EventScript_Rocket1",
"flag": "FLAG_HIDE_FIVE_ISLAND_ROCKETS"
},
{
@@ -62,7 +62,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "FiveIsland_Meadow_EventScript_1689A4",
+ "script": "FiveIsland_Meadow_EventScript_Rocket2",
"flag": "FLAG_HIDE_FIVE_ISLAND_ROCKETS"
},
{
@@ -134,7 +134,7 @@
"x": 12,
"y": 21,
"elevation": 0,
- "script": "FiveIsland_Meadow_EventScript_168942"
+ "script": "FiveIsland_Meadow_EventScript_WarehouseDoor"
}
]
}
diff --git a/data/maps/FiveIsland_Meadow/scripts.inc b/data/maps/FiveIsland_Meadow/scripts.inc
index 21fd9be76..e0e94022f 100644
--- a/data/maps/FiveIsland_Meadow/scripts.inc
+++ b/data/maps/FiveIsland_Meadow/scripts.inc
@@ -3,49 +3,49 @@ FiveIsland_Meadow_MapScripts:: @ 8168932
.byte 0
FiveIsland_Meadow_OnLoad:: @ 8168938
- call_if_set FLAG_UNLOCKED_ROCKET_WAREHOUSE, EventScript_168983
+ call_if_set FLAG_UNLOCKED_ROCKET_WAREHOUSE, FiveIsland_Meadow_EventScript_SetWarehouseDoorUnlocked
end
-FiveIsland_Meadow_EventScript_168942:: @ 8168942
+FiveIsland_Meadow_EventScript_WarehouseDoor:: @ 8168942
lockall
- goto_if_set FLAG_UNLOCKED_ROCKET_WAREHOUSE, EventScript_168979
- goto_if_set FLAG_LEARNED_YES_NAH_CHANSEY, EventScript_16895F
- msgbox gUnknown_818AB8E
+ goto_if_set FLAG_UNLOCKED_ROCKET_WAREHOUSE, FiveIsland_Meadow_EventScript_WarehouseDoorAlreadyOpen
+ goto_if_set FLAG_LEARNED_YES_NAH_CHANSEY, FiveIsland_Meadow_EventScript_OpenWarehouseDoor
+ msgbox FiveIsland_Meadow_Text_EnteredPasswordAnotherNeeded
releaseall
end
-EventScript_16895F:: @ 816895F
+FiveIsland_Meadow_EventScript_OpenWarehouseDoor:: @ 816895F
setflag FLAG_UNLOCKED_ROCKET_WAREHOUSE
- message Text_18ABF4
+ message FiveIsland_Meadow_Text_EnteredPasswordDoorOpened
waitmessage
delay 60
- call EventScript_168983
+ call FiveIsland_Meadow_EventScript_SetWarehouseDoorUnlocked
special DrawWholeMapView
playse SE_PIN
waitse
releaseall
end
-EventScript_168979:: @ 8168979
- msgbox gUnknown_818AC62
+FiveIsland_Meadow_EventScript_WarehouseDoorAlreadyOpen:: @ 8168979
+ msgbox FiveIsland_Meadow_Text_WarehouseDoorAlreadyOpen
releaseall
end
-EventScript_168983:: @ 8168983
- setmetatile 12, 21, 687, 1
+FiveIsland_Meadow_EventScript_SetWarehouseDoorUnlocked:: @ 8168983
+ setmetatile 12, 21, METATILE_SeviiIslands45_RocketWarehouseDoor_Unlocked, 1
return
-FiveIsland_Meadow_EventScript_16898D:: @ 816898D
- trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_49, Text_18AC88, Text_18ACB3
- msgbox gUnknown_818ACC5, MSGBOX_AUTOCLOSE
+FiveIsland_Meadow_EventScript_Rocket1:: @ 816898D
+ trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_49, FiveIsland_Meadow_Text_Rocket1Intro, FiveIsland_Meadow_Text_Rocket1Defeat
+ msgbox FiveIsland_Meadow_Text_Rocket1PostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_Meadow_EventScript_1689A4:: @ 81689A4
- trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_50, Text_18ACF0, Text_18AD39
- msgbox gUnknown_818AD59, MSGBOX_AUTOCLOSE
+FiveIsland_Meadow_EventScript_Rocket2:: @ 81689A4
+ trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_50, FiveIsland_Meadow_Text_Rocket2Intro, FiveIsland_Meadow_Text_Rocket2Defeat
+ msgbox FiveIsland_Meadow_Text_Rocket2PostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_Meadow_EventScript_1689BB:: @ 81689BB
- trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_51, Text_18ADC6, Text_18ADFB
- msgbox gUnknown_818AE16, MSGBOX_AUTOCLOSE
+FiveIsland_Meadow_EventScript_Rocket3:: @ 81689BB
+ trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_51, FiveIsland_Meadow_Text_Rocket3Intro, FiveIsland_Meadow_Text_Rocket3Defeat
+ msgbox FiveIsland_Meadow_Text_Rocket3PostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/maps/FiveIsland_Meadow/text.inc b/data/maps/FiveIsland_Meadow/text.inc
index 7ffd69619..7d1ef844c 100644
--- a/data/maps/FiveIsland_Meadow/text.inc
+++ b/data/maps/FiveIsland_Meadow/text.inc
@@ -1,70 +1,59 @@
-Text_18AAD5:: @ 818AAD5
- .string "This is an excellent environment\n"
- .string "for raising POKéMON.$"
-
-Text_18AB0B:: @ 818AB0B
- .string "Your POKéMON are growing up\n"
- .string "admirably well!$"
-
-Text_18AB37:: @ 818AB37
- .string "You know, I think you have the\n"
- .string "talent to be a good BREEDER.$"
-
-Text_18AB73:: @ 818AB73
+@ Unused
+FiveIsland_Meadow_Text_DoorNeedsTwoPasswords:: @ 818AB73
.string "とびらを あけるには\n"
.string "パスワードが 2つ いるようだ$"
-gUnknown_818AB8E:: @ 818AB8E
+FiveIsland_Meadow_Text_EnteredPasswordAnotherNeeded:: @ 818AB8E
.string "{PLAYER} entered a password.\p"
.string "“GOLDEEN need log.”\p"
.string "… … … … … …\p"
.string "Another password is needed to\n"
.string "open the door…$"
-Text_18ABF4:: @ 818ABF4
+FiveIsland_Meadow_Text_EnteredPasswordDoorOpened:: @ 818ABF4
.string "{PLAYER} entered two passwords.\p"
.string "“GOLDEEN need log.”\n"
.string "“Yes, nah, CHANSEY.”\p"
.string "… … … … … …\p"
.string "The WAREHOUSE's door opened!$"
-gUnknown_818AC62:: @ 818AC62
+FiveIsland_Meadow_Text_WarehouseDoorAlreadyOpen:: @ 818AC62
.string "The WAREHOUSE's door is already\n"
.string "open.$"
-Text_18AC88:: @ 818AC88
+FiveIsland_Meadow_Text_Rocket1Intro:: @ 818AC88
.string "This area's strictly off-limits!\n"
.string "Out, out!$"
-Text_18ACB3:: @ 818ACB3
+FiveIsland_Meadow_Text_Rocket1Defeat:: @ 818ACB3
.string "Is this for real?$"
-gUnknown_818ACC5:: @ 818ACC5
+FiveIsland_Meadow_Text_Rocket1PostBattle:: @ 818ACC5
.string "You don't have any business here!\n"
.string "Go home!$"
-Text_18ACF0:: @ 818ACF0
+FiveIsland_Meadow_Text_Rocket2Intro:: @ 818ACF0
.string "There's nothing past here except\n"
.string "our WAREHOUSE.\p"
.string "So what brings you here?$"
-Text_18AD39:: @ 818AD39
+FiveIsland_Meadow_Text_Rocket2Defeat:: @ 818AD39
.string "That wasn't supposed to happen…$"
-gUnknown_818AD59:: @ 818AD59
+FiveIsland_Meadow_Text_Rocket2PostBattle:: @ 818AD59
.string "You're wanting to know what's inside\n"
.string "this WAREHOUSE?\p"
.string "It's better you didn't know.\n"
.string "For your own sake, I mean.$"
-Text_18ADC6:: @ 818ADC6
+FiveIsland_Meadow_Text_Rocket3Intro:: @ 818ADC6
.string "You'd be wasting time even if you\n"
.string "were to get by me.$"
-Text_18ADFB:: @ 818ADFB
+FiveIsland_Meadow_Text_Rocket3Defeat:: @ 818ADFB
.string "Oh, that makes me furious!$"
-gUnknown_818AE16:: @ 818AE16
+FiveIsland_Meadow_Text_Rocket3PostBattle:: @ 818AE16
.string "You won't be able to get in without\n"
.string "the passwords anyway.$"
diff --git a/data/maps/FiveIsland_MemorialPillar/map.json b/data/maps/FiveIsland_MemorialPillar/map.json
index 34edad014..11719d89b 100644
--- a/data/maps/FiveIsland_MemorialPillar/map.json
+++ b/data/maps/FiveIsland_MemorialPillar/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_MemorialPillar_EventScript_1689D3",
+ "script": "FiveIsland_MemorialPillar_EventScript_MemorialMan",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "FiveIsland_MemorialPillar_EventScript_1AC317",
+ "script": "FiveIsland_MemorialPillar_EventScript_Milo",
"flag": "0"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "FiveIsland_MemorialPillar_EventScript_1AC355",
+ "script": "FiveIsland_MemorialPillar_EventScript_Chaz",
"flag": "0"
},
{
@@ -70,7 +70,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "FiveIsland_MemorialPillar_EventScript_1AC393",
+ "script": "FiveIsland_MemorialPillar_EventScript_Harold",
"flag": "0"
},
{
@@ -95,7 +95,7 @@
"x": 9,
"y": 43,
"elevation": 0,
- "script": "FiveIsland_MemorialPillar_EventScript_168A48"
+ "script": "FiveIsland_MemorialPillar_EventScript_Memorial"
},
{
"type": "hidden_item",
diff --git a/data/maps/FiveIsland_MemorialPillar/scripts.inc b/data/maps/FiveIsland_MemorialPillar/scripts.inc
index 98de6167e..7fd2a810d 100644
--- a/data/maps/FiveIsland_MemorialPillar/scripts.inc
+++ b/data/maps/FiveIsland_MemorialPillar/scripts.inc
@@ -1,59 +1,59 @@
FiveIsland_MemorialPillar_MapScripts:: @ 81689D2
.byte 0
-FiveIsland_MemorialPillar_EventScript_1689D3:: @ 81689D3
+FiveIsland_MemorialPillar_EventScript_MemorialMan:: @ 81689D3
lock
- goto_if_set FLAG_GOT_TM42_AT_MEMORIAL_PILLAR, EventScript_168A18
- goto_if_set FLAG_NO_ROOM_FOR_TM42_AT_MEMORIAL_PILLAR, EventScript_168A22
- msgbox gUnknown_818B02E
+ goto_if_set FLAG_GOT_TM42_AT_MEMORIAL_PILLAR, FiveIsland_MemorialPillar_EventScript_AlreadyGotTM42
+ goto_if_set FLAG_NO_ROOM_FOR_TM42_AT_MEMORIAL_PILLAR, FiveIsland_MemorialPillar_EventScript_ReturnedForTM42
+ msgbox FiveIsland_MemorialPillar_Text_ScrubScrub
closemessage
applymovement 1, Movement_FacePlayer
waitmovement 0
delay 45
- msgbox gUnknown_818B03C
+ msgbox FiveIsland_MemorialPillar_Text_YourMonsLookHealthy
applymovement 1, Movement_WalkInPlaceFastestUp
waitmovement 0
- msgbox gUnknown_818B05E
+ msgbox FiveIsland_MemorialPillar_Text_ThisIsWhereIBuriedMyOnix
release
end
-EventScript_168A18:: @ 8168A18
- msgbox gUnknown_818B2DA
+FiveIsland_MemorialPillar_EventScript_AlreadyGotTM42:: @ 8168A18
+ msgbox FiveIsland_MemorialPillar_Text_ScrubScrubTectonix
release
end
-EventScript_168A22:: @ 8168A22
- msgbox gUnknown_818B282
+FiveIsland_MemorialPillar_EventScript_ReturnedForTM42:: @ 8168A22
+ msgbox FiveIsland_MemorialPillar_Text_StillHaveThingAsMyThanks
giveitem ITEM_TM42
- compare VAR_RESULT, 0
- goto_if_eq EventScript_168AFE
- call EventScript_168AE8
+ compare VAR_RESULT, FALSE
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_NoRoomForTM42
+ call FiveIsland_MemorialPillar_EventScript_ReceivedTM42
release
end
-FiveIsland_MemorialPillar_EventScript_168A48:: @ 8168A48
+FiveIsland_MemorialPillar_EventScript_Memorial:: @ 8168A48
goto_if_questlog EventScript_ReleaseEnd
special sub_8112364
lockall
- goto_if_set FLAG_GOT_TM42_AT_MEMORIAL_PILLAR, EventScript_168B0B
- goto_if_set FLAG_NO_ROOM_FOR_TM42_AT_MEMORIAL_PILLAR, EventScript_168B0B
- msgbox gUnknown_818B095
+ goto_if_set FLAG_GOT_TM42_AT_MEMORIAL_PILLAR, FiveIsland_MemorialPillar_EventScript_MemorialLemonadeAlreadyPlaced
+ goto_if_set FLAG_NO_ROOM_FOR_TM42_AT_MEMORIAL_PILLAR, FiveIsland_MemorialPillar_EventScript_MemorialLemonadeAlreadyPlaced
+ msgbox FiveIsland_MemorialPillar_Text_HereLiesTectonixLemonadeOffering
checkitem ITEM_LEMONADE, 1
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_168A86
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_AskPlaceLemonade
releaseall
end
-EventScript_168A86:: @ 8168A86
- msgbox gUnknown_818B105, MSGBOX_YESNO
+FiveIsland_MemorialPillar_EventScript_AskPlaceLemonade:: @ 8168A86
+ msgbox FiveIsland_MemorialPillar_Text_LeaveAnotherLemonadeOffering, MSGBOX_YESNO
compare VAR_RESULT, YES
- goto_if_eq EventScript_168A9B
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_PlaceLemonade
releaseall
end
-EventScript_168A9B:: @ 8168A9B
+FiveIsland_MemorialPillar_EventScript_PlaceLemonade:: @ 8168A9B
removeitem ITEM_LEMONADE, 1
- msgbox gUnknown_818B13E
+ msgbox FiveIsland_MemorialPillar_Text_PlacedCanOfLemonade
closemessage
applymovement 1, Movement_WalkInPlaceFastestRight
waitmovement 0
@@ -61,28 +61,28 @@ EventScript_168A9B:: @ 8168A9B
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestLeft
waitmovement 0
textcolor 0
- msgbox gUnknown_818B171
+ msgbox FiveIsland_MemorialPillar_Text_ThankYouPleaseTakeThis
giveitem ITEM_TM42
- compare VAR_RESULT, 0
- goto_if_eq EventScript_168AFE
- call EventScript_168AE8
+ compare VAR_RESULT, FALSE
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_NoRoomForTM42
+ call FiveIsland_MemorialPillar_EventScript_ReceivedTM42
releaseall
end
-EventScript_168AE8:: @ 8168AE8
- msgbox gUnknown_818B219
+FiveIsland_MemorialPillar_EventScript_ReceivedTM42:: @ 8168AE8
+ msgbox FiveIsland_MemorialPillar_Text_BeGoodToYourMonsToo
applymovement 1, Movement_WalkInPlaceFastestUp
waitmovement 0
setflag FLAG_GOT_TM42_AT_MEMORIAL_PILLAR
return
-EventScript_168AFE:: @ 8168AFE
+FiveIsland_MemorialPillar_EventScript_NoRoomForTM42:: @ 8168AFE
setflag FLAG_NO_ROOM_FOR_TM42_AT_MEMORIAL_PILLAR
- msgbox gUnknown_818B23E
+ msgbox FiveIsland_MemorialPillar_Text_DontHaveRoomForIt
releaseall
end
-EventScript_168B0B:: @ 8168B0B
- msgbox gUnknown_818B2F8
+FiveIsland_MemorialPillar_EventScript_MemorialLemonadeAlreadyPlaced:: @ 8168B0B
+ msgbox FiveIsland_MemorialPillar_Text_HereLiesTectonix
releaseall
end
diff --git a/data/maps/FiveIsland_MemorialPillar/text.inc b/data/maps/FiveIsland_MemorialPillar/text.inc
index 051f3fdc1..9ba8625e5 100644
--- a/data/maps/FiveIsland_MemorialPillar/text.inc
+++ b/data/maps/FiveIsland_MemorialPillar/text.inc
@@ -1,69 +1,69 @@
-Text_18AE50:: @ 818AE50
+FiveIsland_MemorialPillar_Text_MiloIntro:: @ 818AE50
.string "I'm the eldest of the BIRD\n"
.string "BROTHERS.\p"
.string "The best thing about birds…\n"
.string "It has to be the beak.$"
-Text_18AEA8:: @ 818AEA8
+FiveIsland_MemorialPillar_Text_MiloDefeat:: @ 818AEA8
.string "Oh, so sharp!$"
-Text_18AEB6:: @ 818AEB6
+FiveIsland_MemorialPillar_Text_MiloPostBattle:: @ 818AEB6
.string "You can fly to FOUR ISLAND from\n"
.string "here.$"
-Text_18AEDC:: @ 818AEDC
+FiveIsland_MemorialPillar_Text_ChazIntro:: @ 818AEDC
.string "I'm the middle kid of the BIRD\n"
.string "BROTHERS.\p"
.string "The best thing about birds…\n"
.string "It has to be the wings.$"
-Text_18AF39:: @ 818AF39
+FiveIsland_MemorialPillar_Text_ChazDefeat:: @ 818AF39
.string "Flap, flap!$"
-Text_18AF45:: @ 818AF45
+FiveIsland_MemorialPillar_Text_ChazPostBattle:: @ 818AF45
.string "There was a really somber guy\n"
.string "over that way.$"
-Text_18AF72:: @ 818AF72
+FiveIsland_MemorialPillar_Text_HaroldIntro:: @ 818AF72
.string "I'm the youngest of the BIRD\n"
.string "BROTHERS.\p"
.string "The best thing about birds…\n"
.string "It has to be the down.$"
-Text_18AFCC:: @ 818AFCC
+FiveIsland_MemorialPillar_Text_HaroldDefeat:: @ 818AFCC
.string "Down is so comfy…\n"
.string "It makes me drowsy…$"
-Text_18AFF2:: @ 818AFF2
+FiveIsland_MemorialPillar_Text_HaroldPostBattle:: @ 818AFF2
.string "It fills me with happiness when\n"
.string "bird POKéMON beg playfully…$"
-gUnknown_818B02E:: @ 818B02E
+FiveIsland_MemorialPillar_Text_ScrubScrub:: @ 818B02E
.string "Scrub, scrub…$"
-gUnknown_818B03C:: @ 818B03C
+FiveIsland_MemorialPillar_Text_YourMonsLookHealthy:: @ 818B03C
.string "Hello…\n"
.string "Your POKéMON look healthy…$"
-gUnknown_818B05E:: @ 818B05E
+FiveIsland_MemorialPillar_Text_ThisIsWhereIBuriedMyOnix:: @ 818B05E
.string "This is where I buried my ONIX…\n"
.string "It was named TECTONIX…$"
-gUnknown_818B095:: @ 818B095
+FiveIsland_MemorialPillar_Text_HereLiesTectonixLemonadeOffering:: @ 818B095
.string "“Here lies TECTONIX” is engraved\n"
.string "on a boulder.\p"
.string "There is a LEMONADE placed as an\n"
.string "offering in front of the grave.$"
-gUnknown_818B105:: @ 818B105
+FiveIsland_MemorialPillar_Text_LeaveAnotherLemonadeOffering:: @ 818B105
.string "Would you like to leave another\n"
.string "LEMONADE as an offering?$"
-gUnknown_818B13E:: @ 818B13E
+FiveIsland_MemorialPillar_Text_PlacedCanOfLemonade:: @ 818B13E
.string "{PLAYER} placed a can of LEMONADE\n"
.string "in front of the grave.$"
-gUnknown_818B171:: @ 818B171
+FiveIsland_MemorialPillar_Text_ThankYouPleaseTakeThis:: @ 818B171
.string "Th-thank you…\p"
.string "That was my TECTONIX's favorite\n"
.string "drink…\p"
@@ -73,25 +73,25 @@ gUnknown_818B171:: @ 818B171
.string "Can you please take this as my\n"
.string "thanks?$"
-gUnknown_818B219:: @ 818B219
+FiveIsland_MemorialPillar_Text_BeGoodToYourMonsToo:: @ 818B219
.string "Please be good to your POKéMON,\n"
.string "too.$"
-gUnknown_818B23E:: @ 818B23E
+FiveIsland_MemorialPillar_Text_DontHaveRoomForIt:: @ 818B23E
.string "If you don't have room for it,\n"
.string "I'll hold it for you till next time.$"
-gUnknown_818B282:: @ 818B282
+FiveIsland_MemorialPillar_Text_StillHaveThingAsMyThanks:: @ 818B282
.string "Oh, it's you from that time…\p"
.string "I still have that thing I wanted\n"
.string "you to have as my thanks.$"
-gUnknown_818B2DA:: @ 818B2DA
+FiveIsland_MemorialPillar_Text_ScrubScrubTectonix:: @ 818B2DA
.string "Scrub, scrub…\p"
.string "… … …\n"
.string "TECTONIX…$"
-gUnknown_818B2F8:: @ 818B2F8
+FiveIsland_MemorialPillar_Text_HereLiesTectonix:: @ 818B2F8
.string "Boulders and rocks are neatly piled\n"
.string "up as a cairn.\p"
.string "“Here lies TECTONIX” is engraved\n"
diff --git a/data/maps/FiveIsland_PokemonCenter_1F/map.json b/data/maps/FiveIsland_PokemonCenter_1F/map.json
index 5bb403d1c..25b7159c0 100644
--- a/data/maps/FiveIsland_PokemonCenter_1F/map.json
+++ b/data/maps/FiveIsland_PokemonCenter_1F/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_PokemonCenter_1F_EventScript_171D00",
+ "script": "FiveIsland_PokemonCenter_1F_EventScript_Nurse",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_PokemonCenter_1F_EventScript_171D12",
+ "script": "FiveIsland_PokemonCenter_1F_EventScript_CooltrainerF",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_PokemonCenter_1F_EventScript_171D09",
+ "script": "FiveIsland_PokemonCenter_1F_EventScript_Chef",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_PokemonCenter_1F_EventScript_1ACF5F",
+ "script": "FiveIsland_PokemonCenter_1F_EventScript_PokemonJournal",
"flag": "FLAG_HIDE_POSTGAME_GOSSIPERS"
},
{
@@ -77,7 +77,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_PokemonCenter_1F_EventScript_1ACF5F",
+ "script": "FiveIsland_PokemonCenter_1F_EventScript_PokemonJournal",
"flag": "FLAG_HIDE_POSTGAME_GOSSIPERS"
}
],
diff --git a/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc b/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc
index 21148cede..c66871fea 100644
--- a/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc
@@ -7,17 +7,17 @@ FiveIsland_PokemonCenter_1F_OnTransition:: @ 8171CFC
setrespawn SPAWN_FIVE_ISLAND
end
-FiveIsland_PokemonCenter_1F_EventScript_171D00:: @ 8171D00
+FiveIsland_PokemonCenter_1F_EventScript_Nurse:: @ 8171D00
lock
faceplayer
call EventScript_PkmnCenterNurse
release
end
-FiveIsland_PokemonCenter_1F_EventScript_171D09:: @ 8171D09
- msgbox gUnknown_81A3BBA, MSGBOX_NPC
+FiveIsland_PokemonCenter_1F_EventScript_Chef:: @ 8171D09
+ msgbox FiveIsland_PokemonCenter_1F_Text_OnMyWayToPrepareMeal, MSGBOX_NPC
end
-FiveIsland_PokemonCenter_1F_EventScript_171D12:: @ 8171D12
- msgbox gUnknown_81A3BFD, MSGBOX_NPC
+FiveIsland_PokemonCenter_1F_EventScript_CooltrainerF:: @ 8171D12
+ msgbox FiveIsland_PokemonCenter_1F_Text_YoureOnQuestToCatchEveryMon, MSGBOX_NPC
end
diff --git a/data/maps/FiveIsland_PokemonCenter_1F/text.inc b/data/maps/FiveIsland_PokemonCenter_1F/text.inc
index e1b0e1ea4..3d1be0df1 100644
--- a/data/maps/FiveIsland_PokemonCenter_1F/text.inc
+++ b/data/maps/FiveIsland_PokemonCenter_1F/text.inc
@@ -1,8 +1,8 @@
-gUnknown_81A3BBA:: @ 81A3BBA
+FiveIsland_PokemonCenter_1F_Text_OnMyWayToPrepareMeal:: @ 81A3BBA
.string "I'm on my way to prepare a meal\n"
.string "for a certain high-society person.$"
-gUnknown_81A3BFD:: @ 81A3BFD
+FiveIsland_PokemonCenter_1F_Text_YoureOnQuestToCatchEveryMon:: @ 81A3BFD
.string "You're on a quest to catch every\n"
.string "single kind of POKéMON?\p"
.string "…How incredible. Please tell me if\n"
diff --git a/data/maps/FiveIsland_ResortGorgeous/map.json b/data/maps/FiveIsland_ResortGorgeous/map.json
index ecb514ff8..8b5b3afd4 100644
--- a/data/maps/FiveIsland_ResortGorgeous/map.json
+++ b/data/maps/FiveIsland_ResortGorgeous/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC127",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Daisy",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 4,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC165",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Celina",
"flag": "0"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC1A3",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Rayna",
"flag": "0"
},
{
@@ -70,7 +70,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC1E1",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Jacki",
"flag": "0"
},
{
@@ -83,7 +83,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC21F",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Gillian",
"flag": "0"
},
{
@@ -96,7 +96,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC25D",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Destin",
"flag": "0"
},
{
@@ -109,7 +109,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_ResortGorgeous_EventScript_1AC29B",
+ "script": "FiveIsland_ResortGorgeous_EventScript_Toby",
"flag": "0"
},
{
@@ -189,7 +189,7 @@
"x": 42,
"y": 9,
"elevation": 0,
- "script": "FiveIsland_ResortGorgeous_EventScript_168844"
+ "script": "FiveIsland_ResortGorgeous_EventScript_SelphysHouseSign"
}
]
}
diff --git a/data/maps/FiveIsland_ResortGorgeous/scripts.inc b/data/maps/FiveIsland_ResortGorgeous/scripts.inc
index 4a5502062..c4ef75ed7 100644
--- a/data/maps/FiveIsland_ResortGorgeous/scripts.inc
+++ b/data/maps/FiveIsland_ResortGorgeous/scripts.inc
@@ -1,44 +1,46 @@
+.equ LOCALID_SELPHY, 8
+
FiveIsland_ResortGorgeous_MapScripts:: @ 81687E4
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FiveIsland_ResortGorgeous_OnWarp
map_script MAP_SCRIPT_ON_FRAME_TABLE, FiveIsland_ResortGorgeous_OnFrame
.byte 0
FiveIsland_ResortGorgeous_OnWarp:: @ 81687EF
- map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 1, EventScript_1687F9
+ map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 1, FiveIsland_ResortGorgeous_EventScript_TurnPlayerNorth
.2byte 0
-EventScript_1687F9:: @ 81687F9
+FiveIsland_ResortGorgeous_EventScript_TurnPlayerNorth:: @ 81687F9
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
FiveIsland_ResortGorgeous_OnFrame:: @ 81687FE
- map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 1, EventScript_168808
+ map_script_2 VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 1, FiveIsland_ResortGorgeous_EventScript_SelphyReturnHomeScene
.2byte 0
-EventScript_168808:: @ 8168808
+FiveIsland_ResortGorgeous_EventScript_SelphyReturnHomeScene:: @ 8168808
lockall
textcolor 1
- msgbox gUnknown_818A7DB
+ msgbox FiveIsland_ResortGorgeous_Text_SelphyThanksYouMayGoNow
closemessage
- applymovement 8, Movement_WalkInPlaceFastestUp
+ applymovement LOCALID_SELPHY, Movement_WalkInPlaceFastestUp
waitmovement 0
opendoor 39, 8
waitdooranim
- applymovement 8, Movement_168841
+ applymovement LOCALID_SELPHY, FiveIsland_ResortGorgeous_Movement_SelphyEnterHome
waitmovement 0
closedoor 39, 8
waitdooranim
- removeobject 8
+ removeobject LOCALID_SELPHY
clearflag FLAG_HIDE_RESORT_GORGEOUS_INSIDE_SELPHY
setvar VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS, 2
releaseall
end
-Movement_168841:: @ 8168841
+FiveIsland_ResortGorgeous_Movement_SelphyEnterHome:: @ 8168841
walk_up
set_invisible
step_end
-FiveIsland_ResortGorgeous_EventScript_168844:: @ 8168844
- msgbox gUnknown_818A7FE, MSGBOX_SIGN
+FiveIsland_ResortGorgeous_EventScript_SelphysHouseSign:: @ 8168844
+ msgbox FiveIsland_ResortGorgeous_Text_SelphysHouse, MSGBOX_SIGN
end
diff --git a/data/maps/FiveIsland_ResortGorgeous/text.inc b/data/maps/FiveIsland_ResortGorgeous/text.inc
index d984ab092..7e5ee195f 100644
--- a/data/maps/FiveIsland_ResortGorgeous/text.inc
+++ b/data/maps/FiveIsland_ResortGorgeous/text.inc
@@ -1,93 +1,93 @@
-Text_18A3E2:: @ 818A3E2
+FiveIsland_ResortGorgeous_Text_DaisyIntro:: @ 818A3E2
.string "With these hands, I will create\n"
.string "my victory!$"
-Text_18A40E:: @ 818A40E
+FiveIsland_ResortGorgeous_Text_DaisyDefeat:: @ 818A40E
.string "The shame of this…\n"
.string "I'm red-faced…$"
-Text_18A430:: @ 818A430
+FiveIsland_ResortGorgeous_Text_DaisyPostBattle:: @ 818A430
.string "Uh-oh, my paint tubes have\n"
.string "scattered everywhere!$"
-Text_18A461:: @ 818A461
+FiveIsland_ResortGorgeous_Text_CelinaIntro:: @ 818A461
.string "Excuse me!\n"
.string "I'm trying to paint.\l"
.string "Please keep out of my sight!$"
-Text_18A49E:: @ 818A49E
+FiveIsland_ResortGorgeous_Text_CelinaDefeat:: @ 818A49E
.string "This loss…\n"
.string "I feel like I'm whiting out…$"
-Text_18A4C6:: @ 818A4C6
+FiveIsland_ResortGorgeous_Text_CelinaPostBattle:: @ 818A4C6
.string "GILLIAN?\n"
.string "Please tilt your head slightly…\l"
.string "There! That's the look I want!$"
-Text_18A50E:: @ 818A50E
+FiveIsland_ResortGorgeous_Text_RaynaIntro:: @ 818A50E
.string "Hmm…\n"
.string "The angle, it is not quite there…$"
-Text_18A535:: @ 818A535
+FiveIsland_ResortGorgeous_Text_RaynaDefeat:: @ 818A535
.string "Oh…\n"
.string "My feelings, they are blue…$"
-Text_18A555:: @ 818A555
+FiveIsland_ResortGorgeous_Text_RaynaPostBattle:: @ 818A555
.string "The sky and the sea…\n"
.string "They are so fickle.\p"
.string "Their changing expressions make\n"
.string "them difficult to capture.$"
-Text_18A5B9:: @ 818A5B9
+FiveIsland_ResortGorgeous_Text_JackiIntro:: @ 818A5B9
.string "I am visiting my friend's retreat,\n"
.string "if you must know.$"
-Text_18A5EE:: @ 818A5EE
+FiveIsland_ResortGorgeous_Text_JackiDefeat:: @ 818A5EE
.string "Oh, my, so strong.$"
-Text_18A601:: @ 818A601
+FiveIsland_ResortGorgeous_Text_JackiPostBattle:: @ 818A601
.string "I find it pleasurable to leisurely\n"
.string "battle in the gentle sea breeze.$"
-Text_18A645:: @ 818A645
+FiveIsland_ResortGorgeous_Text_GillianIntro:: @ 818A645
.string "I'm thinking of having a pool\n"
.string "made specially for POKéMON.$"
-Text_18A67F:: @ 818A67F
+FiveIsland_ResortGorgeous_Text_GillianDefeat:: @ 818A67F
.string "Oh, my goodness gracious!$"
-Text_18A699:: @ 818A699
+FiveIsland_ResortGorgeous_Text_GillianPostBattle:: @ 818A699
.string "A pool would be nice, but I must\n"
.string "say, a sun-room may be sublime.$"
-Text_18A6DA:: @ 818A6DA
+FiveIsland_ResortGorgeous_Text_DestinIntro:: @ 818A6DA
.string "I'm a good runner.\n"
.string "I'm really fast!$"
-Text_18A6FE:: @ 818A6FE
+FiveIsland_ResortGorgeous_Text_DestinDefeat:: @ 818A6FE
.string "Oops!\n"
.string "I rushed things!$"
-Text_18A715:: @ 818A715
+FiveIsland_ResortGorgeous_Text_DestinPostBattle:: @ 818A715
.string "When I run with the wind, it feels\n"
.string "like I could fly!$"
-Text_18A74A:: @ 818A74A
+FiveIsland_ResortGorgeous_Text_TobyIntro:: @ 818A74A
.string "I say, this marine life here at\n"
.string "this resort agrees with me.$"
-Text_18A786:: @ 818A786
+FiveIsland_ResortGorgeous_Text_TobyDefeat:: @ 818A786
.string "That's a shocker!\n"
.string "You must be joking.$"
-Text_18A7AC:: @ 818A7AC
+FiveIsland_ResortGorgeous_Text_TobyPostBattle:: @ 818A7AC
.string "Getting so serious over this…\n"
.string "How nonsensical.$"
-gUnknown_818A7DB:: @ 818A7DB
+FiveIsland_ResortGorgeous_Text_SelphyThanksYouMayGoNow:: @ 818A7DB
.string "SELPHY: Thank you.\p"
.string "You may go now.$"
-gUnknown_818A7FE:: @ 818A7FE
+FiveIsland_ResortGorgeous_Text_SelphysHouse:: @ 818A7FE
.string "SELPHY'S HOUSE$"
diff --git a/data/maps/FiveIsland_ResortGorgeous_House/map.json b/data/maps/FiveIsland_ResortGorgeous_House/map.json
index 2c2563031..82cf27051 100644
--- a/data/maps/FiveIsland_ResortGorgeous_House/map.json
+++ b/data/maps/FiveIsland_ResortGorgeous_House/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_ResortGorgeous_House_EventScript_171EBE",
+ "script": "FiveIsland_ResortGorgeous_House_EventScript_Selphy",
"flag": "FLAG_HIDE_RESORT_GORGEOUS_INSIDE_SELPHY"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_ResortGorgeous_House_EventScript_172062",
+ "script": "FiveIsland_ResortGorgeous_House_EventScript_Butler",
"flag": "FLAG_HIDE_SELPHYS_BUTLER"
}
],
diff --git a/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
index 50fe74879..367458ffa 100644
--- a/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
+++ b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
@@ -1,116 +1,121 @@
+.equ LOCALID_SELPHY, 1
+.equ LOCALID_BUTLER, 2
+
+.equ SHOWN_REQUESTED_MON, FLAG_TEMP_2
+
FiveIsland_ResortGorgeous_House_MapScripts:: @ 8171EBD
.byte 0
-FiveIsland_ResortGorgeous_House_EventScript_171EBE:: @ 8171EBE
+FiveIsland_ResortGorgeous_House_EventScript_Selphy:: @ 8171EBE
goto_if_questlog EventScript_ReleaseEnd
special sub_8112364
lock
faceplayer
- goto_if_set FLAG_TEMP_2, EventScript_172043
+ goto_if_set SHOWN_REQUESTED_MON, FiveIsland_ResortGorgeous_House_EventScript_JustFulfilledRequest
compare VAR_RESORT_GORGEOUS_REQUESTED_MON, 0xFFFF
- goto_if_eq EventScript_171F0B
+ goto_if_eq FiveIsland_ResortGorgeous_House_EventScript_RequestTookTooLong
compare VAR_RESORT_GORGEOUS_REQUESTED_MON, SPECIES_NONE
- goto_if_ne EventScript_171F19
- msgbox gUnknown_81A42A0
- goto EventScript_171EFE
+ goto_if_ne FiveIsland_ResortGorgeous_House_EventScript_CheckForRequestedMon
+ msgbox FiveIsland_ResortGorgeous_House_Text_PleaseHearMyWish
+ goto FiveIsland_ResortGorgeous_House_EventScript_RequestMon
end
-EventScript_171EFE:: @ 8171EFE
- special Special_SampleResortGorgeousMonAndReward
- msgbox gUnknown_81A4315
+FiveIsland_ResortGorgeous_House_EventScript_RequestMon:: @ 8171EFE
+ special SampleResortGorgeousMonAndReward
+ msgbox FiveIsland_ResortGorgeous_House_Text_WishToSeeMonPlease
release
end
-EventScript_171F0B:: @ 8171F0B
- msgbox gUnknown_81A437A
- goto EventScript_171EFE
+FiveIsland_ResortGorgeous_House_EventScript_RequestTookTooLong:: @ 8171F0B
+ msgbox FiveIsland_ResortGorgeous_House_Text_OhImTiredOfWaiting
+ goto FiveIsland_ResortGorgeous_House_EventScript_RequestMon
end
-EventScript_171F19:: @ 8171F19
+FiveIsland_ResortGorgeous_House_EventScript_CheckForRequestedMon:: @ 8171F19
copyvar VAR_0x8004, VAR_RESORT_GORGEOUS_REQUESTED_MON
specialvar VAR_RESULT, Special_PlayerPartyContainsSpecies
- compare VAR_RESULT, 1
- goto_if_eq EventScript_171F34
- goto EventScript_171EFE
+ compare VAR_RESULT, TRUE
+ goto_if_eq FiveIsland_ResortGorgeous_House_EventScript_ShowRequestedMon
+ goto FiveIsland_ResortGorgeous_House_EventScript_RequestMon
end
-EventScript_171F34:: @ 8171F34
- special Special_SampleResortGorgeousMonAndReward
- msgbox gUnknown_81A43F7
- addobject 2
- applymovement 2, Movement_172060
+FiveIsland_ResortGorgeous_House_EventScript_ShowRequestedMon:: @ 8171F34
+ special SampleResortGorgeousMonAndReward
+ msgbox FiveIsland_ResortGorgeous_House_Text_MonYouCaughtForMeThankYou
+ addobject LOCALID_BUTLER
+ applymovement LOCALID_BUTLER, FiveIsland_ResortGorgeous_House_Movement_ButlerEnter
waitmovement 0
textcolor 0
- msgbox gUnknown_81A450B
- applymovement 1, Movement_WalkInPlaceFastestUp
+ msgbox FiveIsland_ResortGorgeous_House_Text_ButlerYesMyLady
+ applymovement LOCALID_SELPHY, Movement_WalkInPlaceFastestUp
waitmovement 0
textcolor 1
- msgbox gUnknown_81A4521
+ msgbox FiveIsland_ResortGorgeous_House_Text_SelphyGiveTokenOfAppreciation
textcolor 0
- msgbox gUnknown_81A4566
+ msgbox FiveIsland_ResortGorgeous_House_Text_ButlerIShallDoAsYouBid
closemessage
compare VAR_FACING, DIR_NORTH
- call_if_eq EventScript_171FCD
+ call_if_eq FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerNorth
compare VAR_FACING, DIR_SOUTH
- call_if_eq EventScript_171FE9
+ call_if_eq FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerSouth
compare VAR_FACING, DIR_EAST
- call_if_eq EventScript_171FFE
+ call_if_eq FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerEast
compare VAR_FACING, DIR_WEST
- call_if_eq EventScript_17201A
- moveobjectoffscreen 2
- msgbox gUnknown_81A458E
+ call_if_eq FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerWest
+ moveobjectoffscreen LOCALID_BUTLER
+ msgbox FiveIsland_ResortGorgeous_House_Text_ButlerPleaseAcceptThisAsHerThanks
giveitem VAR_RESORT_GORGEOUS_REWARD
- compare VAR_RESULT, 0
- goto_if_eq EventScript_172025
- setflag FLAG_TEMP_2
- setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, 0
+ compare VAR_RESULT, FALSE
+ goto_if_eq FiveIsland_ResortGorgeous_House_EventScript_NoRoomForReward
+ setflag SHOWN_REQUESTED_MON
+ setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, SPECIES_NONE
release
end
-EventScript_171FCD:: @ 8171FCD
- applymovement 1, Movement_WalkInPlaceFastestDown
- applymovement 2, Movement_17204D
+FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerNorth:: @ 8171FCD
+ applymovement LOCALID_SELPHY, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_BUTLER, FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerNorth
waitmovement 0
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestLeft
waitmovement 0
return
-EventScript_171FE9:: @ 8171FE9
- applymovement 2, Movement_172055
+FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerSouth:: @ 8171FE9
+ applymovement LOCALID_BUTLER, FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerSouth
waitmovement 0
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
waitmovement 0
return
-EventScript_171FFE:: @ 8171FFE
- applymovement 1, Movement_WalkInPlaceFastestLeft
- applymovement 2, Movement_172059
+FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerEast:: @ 8171FFE
+ applymovement LOCALID_SELPHY, Movement_WalkInPlaceFastestLeft
+ applymovement LOCALID_BUTLER, FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerEast
waitmovement 0
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
waitmovement 0
return
-EventScript_17201A:: @ 817201A
- applymovement 2, Movement_17205E
+FiveIsland_ResortGorgeous_House_EventScript_ButlerApproachPlayerWest:: @ 817201A
+ applymovement LOCALID_BUTLER, FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerWest
waitmovement 0
return
-EventScript_172025:: @ 8172025
+FiveIsland_ResortGorgeous_House_EventScript_NoRoomForReward:: @ 8172025
textcolor 0
- msgbox gUnknown_81A45E8
+ msgbox FiveIsland_ResortGorgeous_House_Text_ButlerBagAppearsToBeFull
textcolor 1
- msgbox gUnknown_81A461B
- setflag FLAG_TEMP_2
- setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, 0
+ msgbox FiveIsland_ResortGorgeous_House_Text_OhHowDisappointing
+ setflag SHOWN_REQUESTED_MON
+ setvar VAR_RESORT_GORGEOUS_REQUESTED_MON, SPECIES_NONE
release
end
-EventScript_172043:: @ 8172043
- msgbox gUnknown_81A4632
+FiveIsland_ResortGorgeous_House_EventScript_JustFulfilledRequest:: @ 8172043
+ msgbox FiveIsland_ResortGorgeous_House_Text_SelphyWishYouBestOfLuck
release
end
-Movement_17204D:: @ 817204D
+FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerNorth:: @ 817204D
walk_left
walk_left
walk_left
@@ -120,27 +125,30 @@ Movement_17204D:: @ 817204D
walk_in_place_fastest_right
step_end
-Movement_172055:: @ 8172055
+FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerSouth:: @ 8172055
walk_left
walk_left
walk_in_place_fastest_down
step_end
-Movement_172059:: @ 8172059
+FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerEast:: @ 8172059
walk_left
walk_left
walk_left
walk_down
step_end
-Movement_17205E:: @ 817205E
+@ Very odd. If the player is talking to Selphy facing West, then the player has clipped through the table
+@ In this case rather than approach the player the Butler walks up, which clips the Butler into a wall
+FiveIsland_ResortGorgeous_House_Movement_ButlerApproachPlayerWest:: @ 817205E
walk_up
step_end
-Movement_172060:: @ 8172060
+FiveIsland_ResortGorgeous_House_Movement_ButlerEnter:: @ 8172060
walk_in_place_down
step_end
-FiveIsland_ResortGorgeous_House_EventScript_172062:: @ 8172062
- msgbox gUnknown_81A4657, MSGBOX_NPC
+@ Addressed as "Sebastian" but speaks only as "Butler"
+FiveIsland_ResortGorgeous_House_EventScript_Butler:: @ 8172062
+ msgbox FiveIsland_ResortGorgeous_House_Text_LadySelphySmileHasBrillianceOfSun, MSGBOX_NPC
end
diff --git a/data/maps/FiveIsland_ResortGorgeous_House/text.inc b/data/maps/FiveIsland_ResortGorgeous_House/text.inc
index 1d872274b..cd01000ba 100644
--- a/data/maps/FiveIsland_ResortGorgeous_House/text.inc
+++ b/data/maps/FiveIsland_ResortGorgeous_House/text.inc
@@ -1,23 +1,23 @@
-gUnknown_81A42A0:: @ 81A42A0
+FiveIsland_ResortGorgeous_House_Text_PleaseHearMyWish:: @ 81A42A0
.string "SELPHY: Oh?\n"
.string "Do I know you from somewhere?\p"
.string "Oh, but that doesn't matter.\p"
.string "I am exquisitely bored.\n"
.string "Please, hear my wish.$"
-gUnknown_81A4315:: @ 81A4315
+FiveIsland_ResortGorgeous_House_Text_WishToSeeMonPlease:: @ 81A4315
.string "I wish to see a POKéMON.\n"
.string "A darling {STR_VAR_1}.\p"
.string "I want to see one right away.\n"
.string "Please, make my wish come true.$"
-gUnknown_81A437A:: @ 81A437A
+FiveIsland_ResortGorgeous_House_Text_OhImTiredOfWaiting:: @ 81A437A
.string "SELPHY: Oh, I'm tired of this.\n"
.string "I'm tired of waiting for you.\p"
.string "I'll forgive you this time, but\n"
.string "please don't fail me next time.$"
-gUnknown_81A43F7:: @ 81A43F7
+FiveIsland_ResortGorgeous_House_Text_MonYouCaughtForMeThankYou:: @ 81A43F7
.string "SELPHY: Oh, hello, there.\p"
.string "Oh, my gracious. That must be the\n"
.string "{STR_VAR_1} you caught for me.\p"
@@ -32,35 +32,35 @@ gUnknown_81A43F7:: @ 81A43F7
.string "SEBASTIAN!\n"
.string "I need you here this instant!$"
-gUnknown_81A450B:: @ 81A450B
+FiveIsland_ResortGorgeous_House_Text_ButlerYesMyLady:: @ 81A450B
.string "Butler: Yes, my lady.$"
-gUnknown_81A4521:: @ 81A4521
+FiveIsland_ResortGorgeous_House_Text_SelphyGiveTokenOfAppreciation:: @ 81A4521
.string "SELPHY: See to it that this person\n"
.string "is given a token of appreciation.$"
-gUnknown_81A4566:: @ 81A4566
+FiveIsland_ResortGorgeous_House_Text_ButlerIShallDoAsYouBid:: @ 81A4566
.string "Butler: I shall do as you bid,\n"
.string "my lady.$"
-gUnknown_81A458E:: @ 81A458E
+FiveIsland_ResortGorgeous_House_Text_ButlerPleaseAcceptThisAsHerThanks:: @ 81A458E
.string "Butler: I sincerely thank you for\n"
.string "pleasing Lady SELPHY.\p"
.string "Please accept this as her thanks…$"
-gUnknown_81A45E8:: @ 81A45E8
+FiveIsland_ResortGorgeous_House_Text_ButlerBagAppearsToBeFull:: @ 81A45E8
.string "Butler: Your BAG appears to be\n"
.string "unfortunately full.$"
-gUnknown_81A461B:: @ 81A461B
+FiveIsland_ResortGorgeous_House_Text_OhHowDisappointing:: @ 81A461B
.string "Oh…\n"
.string "How disappointing.$"
-gUnknown_81A4632:: @ 81A4632
+FiveIsland_ResortGorgeous_House_Text_SelphyWishYouBestOfLuck:: @ 81A4632
.string "SELPHY: I wish you the best of\n"
.string "luck.$"
-gUnknown_81A4657:: @ 81A4657
+FiveIsland_ResortGorgeous_House_Text_LadySelphySmileHasBrillianceOfSun:: @ 81A4657
.string "Butler: The smile of Lady SELPHY\n"
.string "has the brilliance of the sun.\p"
.string "Please, I beg you to bring joy\n"
diff --git a/data/maps/FiveIsland_WaterLabyrinth/map.json b/data/maps/FiveIsland_WaterLabyrinth/map.json
index 627ee6b87..2950419f3 100644
--- a/data/maps/FiveIsland_WaterLabyrinth/map.json
+++ b/data/maps/FiveIsland_WaterLabyrinth/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FiveIsland_WaterLabyrinth_EventScript_16884E",
+ "script": "FiveIsland_WaterLabyrinth_EventScript_EggGentleman",
"flag": "0"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "FiveIsland_WaterLabyrinth_EventScript_1AC2D9",
+ "script": "FiveIsland_WaterLabyrinth_EventScript_Alize",
"flag": "0"
}
],
diff --git a/data/maps/FiveIsland_WaterLabyrinth/scripts.inc b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
index ed82fc5eb..f1080d094 100644
--- a/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
+++ b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
@@ -1,68 +1,70 @@
FiveIsland_WaterLabyrinth_MapScripts:: @ 816884D
.byte 0
-FiveIsland_WaterLabyrinth_EventScript_16884E:: @ 816884E
+FiveIsland_WaterLabyrinth_EventScript_EggGentleman:: @ 816884E
goto_if_questlog EventScript_ReleaseEnd
special sub_8112364
lock
faceplayer
- goto_if_set FLAG_GOT_TOGEPI_EGG, EventScript_1688E3
- goto_if_set FLAG_NO_ROOM_FOR_TOGEPI_EGG, EventScript_16892C
- msgbox gUnknown_818A80D
- specialvar VAR_RESULT, Special_GetLeadMonFriendship
- compare VAR_RESULT, 6
- goto_if_eq EventScript_1688AC
- msgbox gUnknown_818A88F
+ goto_if_set FLAG_GOT_TOGEPI_EGG, FiveIsland_WaterLabyrinth_EventScript_PostEggComment
+ goto_if_set FLAG_NO_ROOM_FOR_TOGEPI_EGG, FiveIsland_WaterLabyrinth_EventScript_ReturnForEgg
+ msgbox FiveIsland_WaterLabyrinth_Text_LetMeTakeLookAtMons
+ specialvar VAR_RESULT, GetLeadMonFriendship
+ compare VAR_RESULT, 6 @ Max friendship
+ goto_if_eq FiveIsland_WaterLabyrinth_EventScript_LeadMonMaxFriendship
+ msgbox FiveIsland_WaterLabyrinth_Text_HmmISeeIsee
release
end
-EventScript_168895:: @ 8168895
+FiveIsland_WaterLabyrinth_EventScript_MonDaisyComment:: @ 8168895
famechecker FAMECHECKER_DAISY, 2
- msgbox gUnknown_818AA0C
+ msgbox FiveIsland_WaterLabyrinth_Text_CuteMonRemindsMeOfDaisy
release
end
-EventScript_1688AC:: @ 81688AC
- msgbox gUnknown_818A8A6
- goto EventScript_1688BA
+FiveIsland_WaterLabyrinth_EventScript_LeadMonMaxFriendship:: @ 81688AC
+ msgbox FiveIsland_WaterLabyrinth_Text_TreatMonRightHaveThis
+ goto FiveIsland_WaterLabyrinth_EventScript_TryGiveEgg
end
-EventScript_1688BA:: @ 81688BA
+FiveIsland_WaterLabyrinth_EventScript_TryGiveEgg:: @ 81688BA
getpartysize
compare VAR_RESULT, PARTY_SIZE
- goto_if_eq EventScript_16891F
+ goto_if_eq FiveIsland_WaterLabyrinth_EventScript_NoRoomForEgg
setflag FLAG_GOT_TOGEPI_EGG
giveegg SPECIES_TOGEPI
textcolor 3
playfanfare MUS_FANFA1
- message Text_18A91F
+ message FiveIsland_WaterLabyrinth_Text_ReceivedEggFromMan
waitfanfare
waitmessage
call EventScript_1A6675
- goto EventScript_1688E3
+ goto FiveIsland_WaterLabyrinth_EventScript_PostEggComment
end
-EventScript_1688E3:: @ 81688E3
+@ If the player has a Togepi/Togetic from this game (assumed to be the one the man gave you) then comment on it
+@ Otherwise make normal comment
+FiveIsland_WaterLabyrinth_EventScript_PostEggComment:: @ 81688E3
getspeciesname 1, SPECIES_TOGEPI
setvar VAR_0x8004, SPECIES_TOGEPI
- specialvar VAR_RESULT, Special_PlayerPartyContainsSpeciesWithPlayerID
- compare VAR_RESULT, 1
- goto_if_eq EventScript_168895
+ specialvar VAR_RESULT, PlayerPartyContainsSpeciesWithPlayerID
+ compare VAR_RESULT, TRUE
+ goto_if_eq FiveIsland_WaterLabyrinth_EventScript_MonDaisyComment
getspeciesname 1, SPECIES_TOGETIC
setvar VAR_0x8004, SPECIES_TOGETIC
- specialvar VAR_RESULT, Special_PlayerPartyContainsSpeciesWithPlayerID
- compare VAR_RESULT, 1
- goto_if_eq EventScript_168895
- msgbox gUnknown_818A9C0
+ specialvar VAR_RESULT, PlayerPartyContainsSpeciesWithPlayerID
+ compare VAR_RESULT, TRUE
+ goto_if_eq FiveIsland_WaterLabyrinth_EventScript_MonDaisyComment
+ msgbox FiveIsland_WaterLabyrinth_Text_GladIMetSomeoneLikeYou
release
end
-EventScript_16891F:: @ 816891F
+FiveIsland_WaterLabyrinth_EventScript_NoRoomForEgg:: @ 816891F
setflag FLAG_NO_ROOM_FOR_TOGEPI_EGG
- msgbox gUnknown_818A940
+ msgbox FiveIsland_WaterLabyrinth_Text_DontHaveSpaceInYourParty
release
end
-EventScript_16892C:: @ 816892C
- goto EventScript_1688BA
+FiveIsland_WaterLabyrinth_EventScript_ReturnForEgg:: @ 816892C
+ goto FiveIsland_WaterLabyrinth_EventScript_TryGiveEgg
end
diff --git a/data/maps/FiveIsland_WaterLabyrinth/text.inc b/data/maps/FiveIsland_WaterLabyrinth/text.inc
index 111671eb9..c4a5542d3 100644
--- a/data/maps/FiveIsland_WaterLabyrinth/text.inc
+++ b/data/maps/FiveIsland_WaterLabyrinth/text.inc
@@ -1,4 +1,4 @@
-gUnknown_818A80D:: @ 818A80D
+FiveIsland_WaterLabyrinth_Text_LetMeTakeLookAtMons:: @ 818A80D
.string "You travel all over the place,\n"
.string "don't you?\p"
.string "You're not driving your POKéMON\n"
@@ -6,38 +6,39 @@ gUnknown_818A80D:: @ 818A80D
.string "Let me take a look.\n"
.string "… … … … … …$"
-gUnknown_818A88F:: @ 818A88F
+FiveIsland_WaterLabyrinth_Text_HmmISeeIsee:: @ 818A88F
.string "Ah, hmm…\n"
.string "I see, I see…$"
-gUnknown_818A8A6:: @ 818A8A6
+FiveIsland_WaterLabyrinth_Text_TreatMonRightHaveThis:: @ 818A8A6
.string "Oh, impressive.\n"
.string "You treat your POKéMON right.\p"
.string "I think you can be entrusted with\n"
.string "this.\p"
.string "Please, I'd like you to have this.$"
-Text_18A91F:: @ 818A91F
+FiveIsland_WaterLabyrinth_Text_ReceivedEggFromMan:: @ 818A91F
.string "{PLAYER} received an EGG\n"
.string "from the man!$"
-gUnknown_818A940:: @ 818A940
+FiveIsland_WaterLabyrinth_Text_DontHaveSpaceInYourParty:: @ 818A940
.string "…Unfortunately, you don't have\n"
.string "space for this in your party.\p"
.string "You'd better come back for it\n"
.string "another time.$"
-Text_18A9A9:: @ 818A9A9
+@ Unused
+FiveIsland_WaterLabyrinth_Text_YouveComeBackForTheEgg:: @ 818A9A9
.string "やあ\n"
.string "タマゴを もらいに\l"
.string "きて くれたんだね$"
-gUnknown_818A9C0:: @ 818A9C0
+FiveIsland_WaterLabyrinth_Text_GladIMetSomeoneLikeYou:: @ 818A9C0
.string "I received that EGG while I was\n"
.string "traveling.\p"
.string "I'm glad I met someone like you.$"
-gUnknown_818AA0C:: @ 818AA0C
+FiveIsland_WaterLabyrinth_Text_CuteMonRemindsMeOfDaisy:: @ 818AA0C
.string "Oh, hello.\n"
.string "That's a cute {STR_VAR_2}.\p"
.string "Seeing it reminds me of a sweet \n"
@@ -47,3 +48,14 @@ gUnknown_818AA0C:: @ 818AA0C
.string "That little girl's name…\n"
.string "I think it was DAISY.$"
+FiveIsland_WaterLabyrinth_Text_AlizeIntro:: @ 818AAD5
+ .string "This is an excellent environment\n"
+ .string "for raising POKéMON.$"
+
+FiveIsland_WaterLabyrinth_Text_AlizeDefeat:: @ 818AB0B
+ .string "Your POKéMON are growing up\n"
+ .string "admirably well!$"
+
+FiveIsland_WaterLabyrinth_Text_AlizePostBattle:: @ 818AB37
+ .string "You know, I think you have the\n"
+ .string "talent to be a good BREEDER.$"
diff --git a/data/maps/FourIsland/map.json b/data/maps/FourIsland/map.json
index ed72da60f..35dd24e8c 100644
--- a/data/maps/FourIsland/map.json
+++ b/data/maps/FourIsland/map.json
@@ -90,7 +90,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_EventScript_167E2E",
+ "script": "FourIsland_EventScript_OldWoman",
"flag": "0"
},
{
@@ -155,7 +155,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_EventScript_167E73",
+ "script": "FourIsland_EventScript_FatMan",
"flag": "0"
},
{
@@ -168,7 +168,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_EventScript_167E5A",
+ "script": "FourIsland_EventScript_LittleGirl",
"flag": "0"
}
],
@@ -237,7 +237,7 @@
"x": 13,
"y": 19,
"elevation": 0,
- "script": "FourIsland_EventScript_167E7C"
+ "script": "FourIsland_EventScript_IslandSign"
},
{
"type": "hidden_item",
@@ -264,7 +264,7 @@
"x": 31,
"y": 23,
"elevation": 0,
- "script": "FourIsland_EventScript_167E85"
+ "script": "FourIsland_EventScript_LoreleisHouseSign"
}
]
}
diff --git a/data/maps/FourIsland/scripts.inc b/data/maps/FourIsland/scripts.inc
index 85e1db283..8a7dfafbf 100644
--- a/data/maps/FourIsland/scripts.inc
+++ b/data/maps/FourIsland/scripts.inc
@@ -1,3 +1,6 @@
+.equ LOCALID_DAYCARE_MAN, 1
+.equ LOCALID_RIVAL, 10
+
FourIsland_MapScripts:: @ 8167CAE
map_script MAP_SCRIPT_ON_TRANSITION, FourIsland_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, FourIsland_OnFrame
@@ -6,65 +9,64 @@ FourIsland_MapScripts:: @ 8167CAE
FourIsland_OnTransition:: @ 8167CB9
setworldmapflag FLAG_WORLD_MAP_FOUR_ISLAND
compare VAR_MAP_SCENE_FOUR_ISLAND, 0
- call_if_eq EventScript_167CCD
- call EventScript_167CD1
+ call_if_eq FourIsland_EventScript_ShowRival
+ call FourIsland_EventScript_TrySetDayCareManPos
end
-EventScript_167CCD:: @ 8167CCD
+FourIsland_EventScript_ShowRival:: @ 8167CCD
clearflag FLAG_HIDE_FOUR_ISLAND_RIVAL
return
-EventScript_167CD1:: @ 8167CD1
- goto_if_unset FLAG_PENDING_DAYCARE_EGG, EventScript_167CE1
- setobjectxyperm 1, 16, 14
-
-EventScript_167CE1:: @ 8167CE1
+FourIsland_EventScript_TrySetDayCareManPos:: @ 8167CD1
+ goto_if_unset FLAG_PENDING_DAYCARE_EGG, FourIsland_EventScript_EndSetDayCareManPos
+ setobjectxyperm LOCALID_DAYCARE_MAN, 16, 14
+FourIsland_EventScript_EndSetDayCareManPos:: @ 8167CE1
return
FourIsland_OnFrame:: @ 8167CE2
- map_script_2 VAR_MAP_SCENE_FOUR_ISLAND, 0, EventScript_167CEC
+ map_script_2 VAR_MAP_SCENE_FOUR_ISLAND, 0, FourIsland_EventScript_RivalScene
.2byte 0
-EventScript_167CEC:: @ 8167CEC
+FourIsland_EventScript_RivalScene:: @ 8167CEC
lockall
textcolor 0
- applymovement 10, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_RIVAL, Movement_WalkInPlaceFastestDown
waitmovement 0
playbgm MUS_RIVAL1, 0
- applymovement 10, Movement_ExclamationMark
+ applymovement LOCALID_RIVAL, Movement_ExclamationMark
waitmovement 0
- applymovement 10, Movement_Delay48
+ applymovement LOCALID_RIVAL, Movement_Delay48
waitmovement 0
delay 25
- applymovement 10, Movement_167D49
+ applymovement LOCALID_RIVAL, FourIsland_Movement_RivalApproach
waitmovement 0
- msgbox gUnknown_8182B37
+ msgbox FourIsland_Text_RivalAlreadyGotEggBeSmellingYa
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_167D52
- applymovement 10, Movement_167D4E
+ applymovement OBJ_EVENT_ID_PLAYER, FourIsland_Movement_PlayerWatchRivalExit
+ applymovement LOCALID_RIVAL, FourIsland_Movement_RivalExit
waitmovement 0
fadedefaultbgm
playse SE_KAIDAN
delay 35
- removeobject 10
+ removeobject LOCALID_RIVAL
setvar VAR_MAP_SCENE_FOUR_ISLAND, 1
releaseall
end
-Movement_167D49:: @ 8167D49
+FourIsland_Movement_RivalApproach:: @ 8167D49
walk_right
walk_right
walk_down
walk_down
step_end
-Movement_167D4E:: @ 8167D4E
+FourIsland_Movement_RivalExit:: @ 8167D4E
delay_16
delay_4
walk_down
step_end
-Movement_167D52:: @ 8167D52
+FourIsland_Movement_PlayerWatchRivalExit:: @ 8167D52
walk_left
walk_in_place_fastest_right
step_end
@@ -136,36 +138,36 @@ FourIsland_EventScript_CheckOnTwoMons:: @ 8167E19
release
end
-FourIsland_EventScript_167E2E:: @ 8167E2E
+FourIsland_EventScript_OldWoman:: @ 8167E2E
lock
faceplayer
- goto_if_set FLAG_SYS_CAN_LINK_WITH_RS, EventScript_167E43
- msgbox gUnknown_8182A2B
+ goto_if_set FLAG_SYS_CAN_LINK_WITH_RS, FourIsland_EventScript_OldWomanLoreleiLeft
+ msgbox FourIsland_Text_LoreleiHasReturned
release
end
-EventScript_167E43:: @ 8167E43
+FourIsland_EventScript_OldWomanLoreleiLeft:: @ 8167E43
famechecker FAMECHECKER_LORELEI, 5
- msgbox gUnknown_8182A75
+ msgbox FourIsland_Text_LoreleiMetLaprasAsChild
release
end
-FourIsland_EventScript_167E5A:: @ 8167E5A
+FourIsland_EventScript_LittleGirl:: @ 8167E5A
lock
faceplayer
famechecker FAMECHECKER_LORELEI, 4
- msgbox gUnknown_8182CE3
+ msgbox FourIsland_Text_LoreleiHasLotsOfStuffedDolls
release
end
-FourIsland_EventScript_167E73:: @ 8167E73
- msgbox gUnknown_8182D8E, MSGBOX_NPC
+FourIsland_EventScript_FatMan:: @ 8167E73
+ msgbox FourIsland_Text_MadeSlushieUsingIcefallCaveIce, MSGBOX_NPC
end
-FourIsland_EventScript_167E7C:: @ 8167E7C
- msgbox gUnknown_8182A03, MSGBOX_SIGN
+FourIsland_EventScript_IslandSign:: @ 8167E7C
+ msgbox FourIsland_Text_IslandSign, MSGBOX_SIGN
end
-FourIsland_EventScript_167E85:: @ 8167E85
- msgbox gUnknown_8182DEB, MSGBOX_SIGN
+FourIsland_EventScript_LoreleisHouseSign:: @ 8167E85
+ msgbox FourIsland_Text_LoreleisHouse, MSGBOX_SIGN
end
diff --git a/data/maps/FourIsland/text.inc b/data/maps/FourIsland/text.inc
index 04845b223..e54650761 100644
--- a/data/maps/FourIsland/text.inc
+++ b/data/maps/FourIsland/text.inc
@@ -1,13 +1,13 @@
-gUnknown_8182A03:: @ 8182A03
+FourIsland_Text_IslandSign:: @ 8182A03
.string "FOUR ISLAND\n"
.string "The Warm, Blue, Floe Island$"
-gUnknown_8182A2B:: @ 8182A2B
+FourIsland_Text_LoreleiHasReturned:: @ 8182A2B
.string "LORELEI has returned.\p"
.string "Did she find the city life too\n"
.string "stressful, I wonder?$"
-gUnknown_8182A75:: @ 8182A75
+FourIsland_Text_LoreleiMetLaprasAsChild:: @ 8182A75
.string "LORELEI has gone back.\p"
.string "The LAPRAS she has, I imagine it\n"
.string "to be the one she met as a child.\p"
@@ -16,7 +16,7 @@ gUnknown_8182A75:: @ 8182A75
.string "Perhaps that POKéMON has been with\n"
.string "her ever since.$"
-gUnknown_8182B37:: @ 8182B37
+FourIsland_Text_RivalAlreadyGotEggBeSmellingYa:: @ 8182B37
.string "{RIVAL}: Hey!\n"
.string "{PLAYER}!\p"
.string "What are you doing here in the\n"
@@ -37,7 +37,7 @@ gUnknown_8182B37:: @ 8182B37
.string "waste.\p"
.string "Be smelling ya!$"
-gUnknown_8182CE3:: @ 8182CE3
+FourIsland_Text_LoreleiHasLotsOfStuffedDolls:: @ 8182CE3
.string "Oh, you found me!\n"
.string "Please don't tell LORELEI.\p"
.string "Did you know that LORELEI has lots\n"
@@ -45,12 +45,12 @@ gUnknown_8182CE3:: @ 8182CE3
.string "Every time she comes back to\n"
.string "FOUR ISLAND, her collection grows!$"
-gUnknown_8182D8E:: @ 8182D8E
+FourIsland_Text_MadeSlushieUsingIcefallCaveIce:: @ 8182D8E
.string "Ooh, chilly!\p"
.string "I made a slushie using ice I\n"
.string "shaved inside ICEFALL CAVE.\p"
.string "It's chilly and tasty!$"
-gUnknown_8182DEB:: @ 8182DEB
+FourIsland_Text_LoreleisHouse:: @ 8182DEB
.string "LORELEI'S HOUSE$"
diff --git a/data/maps/FourIsland_Harbor/map.json b/data/maps/FourIsland_Harbor/map.json
index 6cd0223da..fa23fe2cd 100644
--- a/data/maps/FourIsland_Harbor/map.json
+++ b/data/maps/FourIsland_Harbor/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_Harbor_EventScript_171C99",
+ "script": "FourIsland_Harbor_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/FourIsland_Harbor/scripts.inc b/data/maps/FourIsland_Harbor/scripts.inc
index d8933d783..3a16cd3e3 100644
--- a/data/maps/FourIsland_Harbor/scripts.inc
+++ b/data/maps/FourIsland_Harbor/scripts.inc
@@ -1,7 +1,7 @@
FourIsland_Harbor_MapScripts:: @ 8171C98
.byte 0
-FourIsland_Harbor_EventScript_171C99:: @ 8171C99
+FourIsland_Harbor_EventScript_Sailor:: @ 8171C99
lock
faceplayer
message Text_WhereDoYouWantToSail
diff --git a/data/maps/FourIsland_House1/map.json b/data/maps/FourIsland_House1/map.json
index 3d4984879..f581ffa5a 100644
--- a/data/maps/FourIsland_House1/map.json
+++ b/data/maps/FourIsland_House1/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_House1_EventScript_171C45",
+ "script": "FourIsland_House1_EventScript_FatMan",
"flag": "0"
}
],
diff --git a/data/maps/FourIsland_House1/scripts.inc b/data/maps/FourIsland_House1/scripts.inc
index 46ec500fe..e8e6322f5 100644
--- a/data/maps/FourIsland_House1/scripts.inc
+++ b/data/maps/FourIsland_House1/scripts.inc
@@ -1,6 +1,6 @@
FourIsland_House1_MapScripts:: @ 8171C44
.byte 0
-FourIsland_House1_EventScript_171C45:: @ 8171C45
- msgbox gUnknown_81A3802, MSGBOX_NPC
+FourIsland_House1_EventScript_FatMan:: @ 8171C45
+ msgbox FourIsland_House1_Text_YoureAwfullyHeavy, MSGBOX_NPC
end
diff --git a/data/maps/FourIsland_House1/text.inc b/data/maps/FourIsland_House1/text.inc
index 2d4f8c4bd..255b3c028 100644
--- a/data/maps/FourIsland_House1/text.inc
+++ b/data/maps/FourIsland_House1/text.inc
@@ -1,4 +1,7 @@
-Text_1A3778:: @ 81A3778
+@ Text for this file was split weirdly, and is instead in FourIsland_PokemonCenter_1F/text.inc
+@ Theres also an unused JP version of that text in this file instead
+
+JPText_BodySlamTeach:: @ 81A3778
.string "そーれ ぼよーん!\n"
.string "どっちが さきに へたばるか?\l"
.string "のしかかり しょうぶ してるんだ\p"
@@ -7,17 +10,17 @@ Text_1A3778:: @ 81A3778
.string "かわりに きみの ポケモンに\l"
.string "のしかかり おしえて やろっか?$"
-Text_1A37DB:: @ 81A37DB
+JPText_BodySlamDeclined:: @ 81A37DB
.string "また おいで ぼよーん!$"
-Text_1A37E8:: @ 81A37E8
+JPText_BodySlamWhichMon:: @ 81A37E8
.string "どの ポケモンに\n"
.string "おしえたい かい?$"
-Text_1A37FB:: @ 81A37FB
+JPText_BodySlamTaught:: @ 81A37FB
.string "ぼよよーん!$"
-gUnknown_81A3802:: @ 81A3802
+FourIsland_House1_Text_YoureAwfullyHeavy:: @ 81A3802
.string "There! Boing!\n"
.string "You're awfully heavy!$"
diff --git a/data/maps/FourIsland_House2/map.json b/data/maps/FourIsland_House2/map.json
index b83419325..a4b926233 100644
--- a/data/maps/FourIsland_House2/map.json
+++ b/data/maps/FourIsland_House2/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_House2_EventScript_1B2938",
+ "script": "FourIsland_House2_EventScript_StickerMan",
"flag": "0"
}
],
diff --git a/data/maps/FourIsland_LoreleisHouse/map.json b/data/maps/FourIsland_LoreleisHouse/map.json
index 7dbe72a88..1c09bc412 100644
--- a/data/maps/FourIsland_LoreleisHouse/map.json
+++ b/data/maps/FourIsland_LoreleisHouse/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C58",
+ "script": "FourIsland_LoreleisHouse_EventScript_Lorelei",
"flag": "FLAG_HIDE_LORELEI_IN_HER_HOUSE"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -77,7 +77,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -90,7 +90,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -103,7 +103,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "0"
},
{
@@ -116,7 +116,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEI_HOUSE_MEOWTH_DOLL"
},
{
@@ -129,7 +129,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEI_HOUSE_CHANSEY_DOLL"
},
{
@@ -142,7 +142,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEI_HOUSE_JIGGLYPUFF_DOLL"
},
{
@@ -155,7 +155,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEIS_HOUSE_NIDORAN_F_DOLL"
},
{
@@ -168,7 +168,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEIS_HOUSE_NIDORAN_M_DOLL"
},
{
@@ -181,7 +181,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEIS_HOUSE_PIDGEOT_DOLL"
},
{
@@ -194,7 +194,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEIS_HOUSE_FEAROW_DOLL"
},
{
@@ -207,7 +207,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_LoreleisHouse_EventScript_171C8D",
+ "script": "FourIsland_LoreleisHouse_EventScript_Doll",
"flag": "FLAG_HIDE_LORELEIS_HOUSE_LAPRAS_DOLL"
}
],
diff --git a/data/maps/FourIsland_LoreleisHouse/scripts.inc b/data/maps/FourIsland_LoreleisHouse/scripts.inc
index c39cc1da9..6259870e6 100644
--- a/data/maps/FourIsland_LoreleisHouse/scripts.inc
+++ b/data/maps/FourIsland_LoreleisHouse/scripts.inc
@@ -6,28 +6,28 @@ FourIsland_LoreleisHouse_OnTransition:: @ 8171C54
special Special_ComputeLoreleiDollCollection
end
-FourIsland_LoreleisHouse_EventScript_171C58:: @ 8171C58
+FourIsland_LoreleisHouse_EventScript_Lorelei:: @ 8171C58
lock
faceplayer
- goto_if_set FLAG_TALKED_TO_LORELEI_AFTER_WAREHOUSE, EventScript_171C83
- goto_if_set FLAG_DEFEATED_ROCKETS_IN_WAREHOUSE, EventScript_171C76
- msgbox gUnknown_81A3826
+ goto_if_set FLAG_TALKED_TO_LORELEI_AFTER_WAREHOUSE, FourIsland_LoreleisHouse_EventScript_Lorelei3
+ goto_if_set FLAG_DEFEATED_ROCKETS_IN_WAREHOUSE, FourIsland_LoreleisHouse_EventScript_Lorelei2
+ msgbox FourIsland_LoreleisHouse_Text_IfAnythingWereToHappenToIsland
release
end
-EventScript_171C76:: @ 8171C76
+FourIsland_LoreleisHouse_EventScript_Lorelei2:: @ 8171C76
setflag FLAG_TALKED_TO_LORELEI_AFTER_WAREHOUSE
- msgbox gUnknown_81A390C
+ msgbox FourIsland_LoreleisHouse_Text_IllReturnToLeagueInShortWhile
release
end
-EventScript_171C83:: @ 8171C83
- msgbox gUnknown_81A39D8
+FourIsland_LoreleisHouse_EventScript_Lorelei3:: @ 8171C83
+ msgbox FourIsland_LoreleisHouse_Text_WillDoWhatICanHereAndNow
release
end
-FourIsland_LoreleisHouse_EventScript_171C8D:: @ 8171C8D
+FourIsland_LoreleisHouse_EventScript_Doll:: @ 8171C8D
lock
- msgbox gUnknown_81A3A42
+ msgbox FourIsland_LoreleisHouse_Text_StuffedMonDollsGalore
release
end
diff --git a/data/maps/FourIsland_LoreleisHouse/text.inc b/data/maps/FourIsland_LoreleisHouse/text.inc
index 5c7d0cd81..b332cd50e 100644
--- a/data/maps/FourIsland_LoreleisHouse/text.inc
+++ b/data/maps/FourIsland_LoreleisHouse/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A3826:: @ 81A3826
+FourIsland_LoreleisHouse_Text_IfAnythingWereToHappenToIsland:: @ 81A3826
.string "LORELEI: There's something weighing\n"
.string "heavily on my mind.\p"
.string "If anything were to happen on\n"
@@ -8,7 +8,7 @@ gUnknown_81A3826:: @ 81A3826
.string "I wonder if that would make me\n"
.string "irresponsible to my home…$"
-gUnknown_81A390C:: @ 81A390C
+FourIsland_LoreleisHouse_Text_IllReturnToLeagueInShortWhile:: @ 81A390C
.string "LORELEI: So, you managed to solve\n"
.string "all the problems here?\p"
.string "That's wonderful.\p"
@@ -18,12 +18,12 @@ gUnknown_81A390C:: @ 81A390C
.string "I'll return to the POKéMON LEAGUE\n"
.string "in a short while.$"
-gUnknown_81A39D8:: @ 81A39D8
+FourIsland_LoreleisHouse_Text_WillDoWhatICanHereAndNow:: @ 81A39D8
.string "I don't know what will happen in\n"
.string "the future, but…\p"
.string "I will do what I can here and now.\n"
.string "That's all I can do.$"
-gUnknown_81A3A42:: @ 81A3A42
+FourIsland_LoreleisHouse_Text_StuffedMonDollsGalore:: @ 81A3A42
.string "Stuffed POKéMON dolls galore!$"
diff --git a/data/maps/FourIsland_Mart/map.json b/data/maps/FourIsland_Mart/map.json
index f5820fef9..5543c8c50 100644
--- a/data/maps/FourIsland_Mart/map.json
+++ b/data/maps/FourIsland_Mart/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_Mart_EventScript_171CAE",
+ "script": "FourIsland_Mart_EventScript_Clerk",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_Mart_EventScript_1ACF46",
+ "script": "FourIsland_Mart_EventScript_OldMan",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_Mart_EventScript_171CE8",
+ "script": "FourIsland_Mart_EventScript_Camper",
"flag": "0"
}
],
diff --git a/data/maps/FourIsland_Mart/scripts.inc b/data/maps/FourIsland_Mart/scripts.inc
index 5f85eaae4..36b3a0914 100644
--- a/data/maps/FourIsland_Mart/scripts.inc
+++ b/data/maps/FourIsland_Mart/scripts.inc
@@ -1,19 +1,19 @@
FourIsland_Mart_MapScripts:: @ 8171CAD
.byte 0
-FourIsland_Mart_EventScript_171CAE:: @ 8171CAE
+FourIsland_Mart_EventScript_Clerk:: @ 8171CAE
goto_if_questlog EventScript_ReleaseEnd
lock
faceplayer
message Text_MayIHelpYou
waitmessage
- pokemart Items_171CD4
+ pokemart FourIsland_Mart_Items
msgbox Text_PleaseComeAgain
release
end
.align 2
-Items_171CD4:: @ 8171CD4
+FourIsland_Mart_Items:: @ 8171CD4
.2byte ITEM_ULTRA_BALL
.2byte ITEM_FULL_RESTORE
.2byte ITEM_MAX_POTION
@@ -26,6 +26,6 @@ Items_171CD4:: @ 8171CD4
release
end
-FourIsland_Mart_EventScript_171CE8:: @ 8171CE8
- msgbox gUnknown_81A3B14, MSGBOX_NPC
+FourIsland_Mart_EventScript_Camper:: @ 8171CE8
+ msgbox FourIsland_Mart_Text_IcefallCaveIsFrigid, MSGBOX_NPC
end
diff --git a/data/maps/FourIsland_Mart/text.inc b/data/maps/FourIsland_Mart/text.inc
index eba66dd37..afde0e79c 100644
--- a/data/maps/FourIsland_Mart/text.inc
+++ b/data/maps/FourIsland_Mart/text.inc
@@ -1,4 +1,4 @@
-Text_1A3A60:: @ 81A3A60
+FourIsland_Mart_Text_LoreleiGrewUpOnThisIsland:: @ 81A3A60
.string "We've had a great and powerful\n"
.string "TRAINER grow up on this island.\p"
.string "I bet even you'd know her.\n"
@@ -6,7 +6,7 @@ Text_1A3A60:: @ 81A3A60
.string "When LORELEI was just a tyke,\n"
.string "I taught her about POKéMON.$"
-gUnknown_81A3B14:: @ 81A3B14
+FourIsland_Mart_Text_IcefallCaveIsFrigid:: @ 81A3B14
.string "The SEVII ISLANDS are in a warm\n"
.string "region overall.\p"
.string "But there is one exception you\n"
diff --git a/data/maps/FourIsland_PokemonCenter_1F/map.json b/data/maps/FourIsland_PokemonCenter_1F/map.json
index a8bf5fa97..7757c904e 100644
--- a/data/maps/FourIsland_PokemonCenter_1F/map.json
+++ b/data/maps/FourIsland_PokemonCenter_1F/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_171BF9",
+ "script": "FourIsland_PokemonCenter_1F_EventScript_Nurse",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_171C02",
+ "script": "FourIsland_PokemonCenter_1F_EventScript_Man",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_171C0B",
+ "script": "FourIsland_PokemonCenter_1F_EventScript_Woman",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_171C14",
+ "script": "FourIsland_PokemonCenter_1F_EventScript_Gentleman",
"flag": "0"
}
],
@@ -91,14 +91,14 @@
"x": 3,
"y": 1,
"elevation": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_1ACDD0"
+ "script": "FourIsland_PokemonCenter_1F_EventScript_PokemonJournal"
},
{
"type": "bg_event_type_1",
"x": 2,
"y": 1,
"elevation": 0,
- "script": "FourIsland_PokemonCenter_1F_EventScript_1ACDD0"
+ "script": "FourIsland_PokemonCenter_1F_EventScript_PokemonJournal"
}
]
}
diff --git a/data/maps/FourIsland_PokemonCenter_1F/scripts.inc b/data/maps/FourIsland_PokemonCenter_1F/scripts.inc
index 4ee8e33c1..afb0c7582 100644
--- a/data/maps/FourIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/FourIsland_PokemonCenter_1F/scripts.inc
@@ -7,21 +7,21 @@ FourIsland_PokemonCenter_1F_OnTransition:: @ 8171BF5
setrespawn SPAWN_FOUR_ISLAND
end
-FourIsland_PokemonCenter_1F_EventScript_171BF9:: @ 8171BF9
+FourIsland_PokemonCenter_1F_EventScript_Nurse:: @ 8171BF9
lock
faceplayer
call EventScript_PkmnCenterNurse
release
end
-FourIsland_PokemonCenter_1F_EventScript_171C02:: @ 8171C02
- msgbox gUnknown_81A3627, MSGBOX_NPC
+FourIsland_PokemonCenter_1F_EventScript_Man:: @ 8171C02
+ msgbox FourIsland_PokemonCenter_1F_Text_RareIceMonsInCave, MSGBOX_NPC
end
-FourIsland_PokemonCenter_1F_EventScript_171C0B:: @ 8171C0B
- msgbox gUnknown_81A3697, MSGBOX_NPC
+FourIsland_PokemonCenter_1F_EventScript_Woman:: @ 8171C0B
+ msgbox FourIsland_PokemonCenter_1F_Text_DayCarePeopleFoundEggBefore, MSGBOX_NPC
end
-FourIsland_PokemonCenter_1F_EventScript_171C14:: @ 8171C14
- msgbox gUnknown_81A3734, MSGBOX_NPC
+FourIsland_PokemonCenter_1F_EventScript_Gentleman:: @ 8171C14
+ msgbox FourIsland_PokemonCenter_1F_Text_NewPokemonJournalHasntArrived, MSGBOX_NPC
end
diff --git a/data/maps/FourIsland_PokemonCenter_1F/text.inc b/data/maps/FourIsland_PokemonCenter_1F/text.inc
index 954aabd96..43e6cacf6 100644
--- a/data/maps/FourIsland_PokemonCenter_1F/text.inc
+++ b/data/maps/FourIsland_PokemonCenter_1F/text.inc
@@ -1,3 +1,4 @@
+@ The 5 texts below are supposed to be in FourIsland_House1
Text_BodySlamTeach:: @ 81A3505
.string "Ready?\n"
.string "Boing!\p"
@@ -19,17 +20,17 @@ Text_BodySlamWhichMon:: @ 81A35DA
Text_BodySlamTaught:: @ 81A3609
.string "Boioing!$"
-Text_1A3612:: @ 81A3612
+FourIsland_House1_Text_FatMan:: @ 81A3612
.string "それ ぼよーん!\n"
.string "おまえ おもいなあー!$"
-gUnknown_81A3627:: @ 81A3627
+FourIsland_PokemonCenter_1F_Text_RareIceMonsInCave:: @ 81A3627
.string "There's a rare kind of ICE POKéMON\n"
.string "that lives in the cave.\p"
.string "We get a lot of visitors hoping to\n"
.string "see that POKéMON.$"
-gUnknown_81A3697:: @ 81A3697
+FourIsland_PokemonCenter_1F_Text_DayCarePeopleFoundEggBefore:: @ 81A3697
.string "Oh? A POKéMON EGG?\n"
.string "…I have no idea.\p"
.string "…Oh, wait. The DAY-CARE people\n"
@@ -37,7 +38,7 @@ gUnknown_81A3697:: @ 81A3697
.string "They said that they'd found EGGS\n"
.string "before on their property.$"
-gUnknown_81A3734:: @ 81A3734
+FourIsland_PokemonCenter_1F_Text_NewPokemonJournalHasntArrived:: @ 81A3734
.string "What's this?\p"
.string "The new POKéMON JOURNAL hasn't\n"
.string "arrived on this island?$"
diff --git a/data/maps/PalletTown_GarysHouse/scripts.inc b/data/maps/PalletTown_GarysHouse/scripts.inc
index a64dff1a9..16413d758 100644
--- a/data/maps/PalletTown_GarysHouse/scripts.inc
+++ b/data/maps/PalletTown_GarysHouse/scripts.inc
@@ -90,7 +90,7 @@ PalletTown_GarysHouse_EventScript_DeclineGrooming:: @ 8168E3C
PalletTown_GarysHouse_EventScript_RateMonFriendship:: @ 8168E46
msgbox PalletTown_GarysHouse_Text_MayISeeFirstMon
- specialvar VAR_RESULT, Special_GetLeadMonFriendship
+ specialvar VAR_RESULT, GetLeadMonFriendship
switch VAR_RESULT
case 0, PalletTown_GarysHouse_EventScript_MonFriendshipLowest
case 1, PalletTown_GarysHouse_EventScript_MonFriendshipLower
diff --git a/data/maps/SevenIsland/map.json b/data/maps/SevenIsland/map.json
index c71782405..e55ba193a 100644
--- a/data/maps/SevenIsland/map.json
+++ b/data/maps/SevenIsland/map.json
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_EventScript_167EC6",
+ "script": "SevenIsland_EventScript_OldWoman",
"flag": "0"
},
{
@@ -62,7 +62,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_EventScript_167ECF",
+ "script": "SevenIsland_EventScript_Scientist",
"flag": "0"
}
],
@@ -103,7 +103,7 @@
"x": 17,
"y": 9,
"elevation": 0,
- "script": "SevenIsland_EventScript_167EBD"
+ "script": "SevenIsland_EventScript_IslandSign"
}
]
}
diff --git a/data/maps/SevenIsland/scripts.inc b/data/maps/SevenIsland/scripts.inc
index f7debbf02..649c1ea73 100644
--- a/data/maps/SevenIsland/scripts.inc
+++ b/data/maps/SevenIsland/scripts.inc
@@ -6,14 +6,14 @@ SevenIsland_OnTransition:: @ 8167EB9
setworldmapflag FLAG_WORLD_MAP_SEVEN_ISLAND
end
-SevenIsland_EventScript_167EBD:: @ 8167EBD
- msgbox gUnknown_8183046, MSGBOX_SIGN
+SevenIsland_EventScript_IslandSign:: @ 8167EBD
+ msgbox SevenIsland_Text_IslandSign, MSGBOX_SIGN
end
-SevenIsland_EventScript_167EC6:: @ 8167EC6
- msgbox gUnknown_818306C, MSGBOX_NPC
+SevenIsland_EventScript_OldWoman:: @ 8167EC6
+ msgbox SevenIsland_Text_IslandsMadeInSevenDays, MSGBOX_NPC
end
-SevenIsland_EventScript_167ECF:: @ 8167ECF
- msgbox gUnknown_8183143, MSGBOX_NPC
+SevenIsland_EventScript_Scientist:: @ 8167ECF
+ msgbox SevenIsland_Text_IslandVirtuallyUntouched, MSGBOX_NPC
end
diff --git a/data/maps/SevenIsland/text.inc b/data/maps/SevenIsland/text.inc
index 995752422..8b0e98818 100644
--- a/data/maps/SevenIsland/text.inc
+++ b/data/maps/SevenIsland/text.inc
@@ -17,11 +17,11 @@ Text_SwordsDanceTaught:: @ 818300D
.string "If only we could keep getting\n"
.string "stronger and stronger, eh?$"
-gUnknown_8183046:: @ 8183046
+SevenIsland_Text_IslandSign:: @ 8183046
.string "SEVEN ISLAND\n"
.string "Quest Island of Infinity$"
-gUnknown_818306C:: @ 818306C
+SevenIsland_Text_IslandsMadeInSevenDays:: @ 818306C
.string "These islands are called the SEVII\n"
.string "ISLANDS because there are seven.\p"
.string "…Or at least that's what the young\n"
@@ -30,7 +30,7 @@ gUnknown_818306C:: @ 818306C
.string "named because they are said to\l"
.string "have been made in seven days.$"
-gUnknown_8183143:: @ 8183143
+SevenIsland_Text_IslandVirtuallyUntouched:: @ 8183143
.string "This island has been left virtually\n"
.string "untouched in its natural state.\p"
.string "It could be a little difficult to\n"
diff --git a/data/maps/SevenIsland_Harbor/map.json b/data/maps/SevenIsland_Harbor/map.json
index 5c1a8726a..61f41a9f3 100644
--- a/data/maps/SevenIsland_Harbor/map.json
+++ b/data/maps/SevenIsland_Harbor/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_Harbor_EventScript_170BE5",
+ "script": "SevenIsland_Harbor_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/SevenIsland_Harbor/scripts.inc b/data/maps/SevenIsland_Harbor/scripts.inc
index f042ca668..fb51c905c 100644
--- a/data/maps/SevenIsland_Harbor/scripts.inc
+++ b/data/maps/SevenIsland_Harbor/scripts.inc
@@ -1,7 +1,7 @@
SevenIsland_Harbor_MapScripts:: @ 8170BE4
.byte 0
-SevenIsland_Harbor_EventScript_170BE5:: @ 8170BE5
+SevenIsland_Harbor_EventScript_Sailor:: @ 8170BE5
lock
faceplayer
message Text_WhereDoYouWantToSail
diff --git a/data/maps/SevenIsland_House_Room1/map.json b/data/maps/SevenIsland_House_Room1/map.json
index 052d7fa31..b2f5611b1 100644
--- a/data/maps/SevenIsland_House_Room1/map.json
+++ b/data/maps/SevenIsland_House_Room1/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_House_Room1_EventScript_170958",
+ "script": "SevenIsland_House_Room1_EventScript_OldWoman",
"flag": "0"
}
],
@@ -52,7 +52,7 @@
"x": 4,
"y": 1,
"elevation": 0,
- "script": "SevenIsland_House_Room1_EventScript_170A75"
+ "script": "SevenIsland_House_Room1_EventScript_Box"
}
]
}
diff --git a/data/maps/SevenIsland_House_Room1/scripts.inc b/data/maps/SevenIsland_House_Room1/scripts.inc
index 8875211f8..63e8a7250 100644
--- a/data/maps/SevenIsland_House_Room1/scripts.inc
+++ b/data/maps/SevenIsland_House_Room1/scripts.inc
@@ -1,3 +1,7 @@
+.equ LOCALID_OLD_WOMAN, 1
+
+.equ TRAINER_VISITING, VAR_TEMP_1
+
SevenIsland_House_Room1_MapScripts:: @ 817088A
map_script MAP_SCRIPT_ON_TRANSITION, SevenIsland_House_Room1_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, SevenIsland_House_Room1_OnFrame
@@ -6,178 +10,178 @@ SevenIsland_House_Room1_MapScripts:: @ 817088A
SevenIsland_House_Room1_OnTransition:: @ 8170895
special ValidateEReaderTrainer
compare VAR_RESULT, 0
- call_if_eq EventScript_1708AF
+ call_if_eq SevenIsland_House_Room1_EventScript_SetTrainerVisitingLayout
compare VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 0
- call_if_ne EventScript_1708C3
+ call_if_ne SevenIsland_House_Room1_EventScript_MoveOldWomanToDoor
end
-EventScript_1708AF:: @ 81708AF
- setvar VAR_TEMP_1, 1
- setobjectxyperm 1, 4, 2
- setobjectmovementtype 1, 8
+SevenIsland_House_Room1_EventScript_SetTrainerVisitingLayout:: @ 81708AF
+ setvar TRAINER_VISITING, TRUE
+ setobjectxyperm LOCALID_OLD_WOMAN, 4, 2
+ setobjectmovementtype LOCALID_OLD_WOMAN, MOVEMENT_TYPE_FACE_DOWN
setmaplayoutindex LAYOUT_SEVEN_ISLAND_HOUSE_ROOM1_DOOR_OPEN
return
-EventScript_1708C3:: @ 81708C3
- setobjectxyperm 1, 3, 2
- setobjectmovementtype 1, 10
+SevenIsland_House_Room1_EventScript_MoveOldWomanToDoor:: @ 81708C3
+ setobjectxyperm LOCALID_OLD_WOMAN, 3, 2
+ setobjectmovementtype LOCALID_OLD_WOMAN, MOVEMENT_TYPE_FACE_RIGHT
return
SevenIsland_House_Room1_OnFrame:: @ 81708CF
- map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 1, EventScript_1708E9
- map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 2, EventScript_1708E9
- map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 3, EventScript_1708E9
+ map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 1, SevenIsland_House_Room1_EventScript_OldWomanCommentOnBattle
+ map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 2, SevenIsland_House_Room1_EventScript_OldWomanCommentOnBattle
+ map_script_2 VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 3, SevenIsland_House_Room1_EventScript_OldWomanCommentOnBattle
.2byte 0
-EventScript_1708E9:: @ 1708E9
+SevenIsland_House_Room1_EventScript_OldWomanCommentOnBattle:: @ 1708E9
lockall
textcolor 1
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170953
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room1_Movement_PlayerReEnterRoom
waitmovement 0
- applymovement 1, Movement_170955
+ applymovement LOCALID_OLD_WOMAN, SevenIsland_House_Room1_Movement_OldWomanWalkBehindPlayer
waitmovement 0
- moveobjectoffscreen 1
+ moveobjectoffscreen LOCALID_OLD_WOMAN
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
waitmovement 0
compare VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 1
- call_if_eq EventScript_170938
+ call_if_eq SevenIsland_House_Room1_EventScript_BattleWonComment
compare VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 2
- call_if_eq EventScript_170941
+ call_if_eq SevenIsland_House_Room1_EventScript_BattleLostComment
compare VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 3
- call_if_eq EventScript_17094A
+ call_if_eq SevenIsland_House_Room1_EventScript_BattleTiedComment
special LoadPlayerParty
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 0
releaseall
end
-EventScript_170938:: @ 8170938
- msgbox gUnknown_81A088C
+SevenIsland_House_Room1_EventScript_BattleWonComment:: @ 8170938
+ msgbox SevenIsland_House_Room1_Text_AstoundingBattle
return
-EventScript_170941:: @ 8170941
- msgbox gUnknown_81A0971
+SevenIsland_House_Room1_EventScript_BattleLostComment:: @ 8170941
+ msgbox SevenIsland_House_Room1_Text_FeelYourDisappointment
return
-EventScript_17094A:: @ 817094A
- msgbox gUnknown_81A0807
+SevenIsland_House_Room1_EventScript_BattleTiedComment:: @ 817094A
+ msgbox SevenIsland_House_Room1_Text_DrawWasIt
return
-Movement_170953:: @ 8170953
+SevenIsland_House_Room1_Movement_PlayerReEnterRoom:: @ 8170953
walk_down
step_end
-Movement_170955:: @ 8170955
+SevenIsland_House_Room1_Movement_OldWomanWalkBehindPlayer:: @ 8170955
walk_right
walk_in_place_fastest_down
step_end
-SevenIsland_House_Room1_EventScript_170958:: @ 8170958
+SevenIsland_House_Room1_EventScript_OldWoman:: @ 8170958
lock
faceplayer
special ValidateEReaderTrainer
compare VAR_RESULT, 1
- call_if_eq EventScript_17097D
- compare VAR_TEMP_1, 1
- goto_if_eq EventScript_170987
- msgbox gUnknown_81A049B
+ call_if_eq SevenIsland_House_Room1_EventScript_InvalidVisitingTrainer
+ compare TRAINER_VISITING, TRUE
+ goto_if_eq SevenIsland_House_Room1_EventScript_TrainerVisiting
+ msgbox SevenIsland_House_Room1_Text_OnlyEnjoymentWatchingBattles
release
end
-EventScript_17097D:: @ 817097D
- msgbox gUnknown_81A049B
+SevenIsland_House_Room1_EventScript_InvalidVisitingTrainer:: @ 817097D
+ msgbox SevenIsland_House_Room1_Text_OnlyEnjoymentWatchingBattles
release
end
-EventScript_170987:: @ 8170987
+SevenIsland_House_Room1_EventScript_TrainerVisiting:: @ 8170987
special SavePlayerParty
- special Special_BufferEReaderTrainerName5
- msgbox gUnknown_81A0598, MSGBOX_YESNO
+ special BufferEReaderTrainerName
+ msgbox SevenIsland_House_Room1_Text_ChallengeVisitingTrainer, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_170A11
- call EventScript_170A1E
+ goto_if_eq SevenIsland_House_Room1_EventScript_DeclineBattle
+ call SevenIsland_House_Room1_EventScript_ChooseParty
compare VAR_RESULT, 0
- goto_if_eq EventScript_170A11
- msgbox gUnknown_81A0788, MSGBOX_YESNO
+ goto_if_eq SevenIsland_House_Room1_EventScript_DeclineBattle
+ msgbox SevenIsland_House_Room1_Text_SaveProgressBeforeBattle, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_170A11
+ goto_if_eq SevenIsland_House_Room1_EventScript_DeclineBattle
special LoadPlayerParty
call EventScript_AskSaveGame
compare VAR_RESULT, 0
- goto_if_eq EventScript_170A11
+ goto_if_eq SevenIsland_House_Room1_EventScript_DeclineBattle
special SavePlayerParty
special ReducePlayerPartyToThree
- msgbox gUnknown_81A07C4
+ msgbox SevenIsland_House_Room1_Text_DontHoldAnythingBack
closemessage
compare VAR_FACING, DIR_NORTH
- call_if_eq EventScript_170A2D
+ call_if_eq SevenIsland_House_Room1_EventScript_EnterBattleRoomNorth
compare VAR_FACING, DIR_EAST
- call_if_eq EventScript_170A3F
+ call_if_eq SevenIsland_House_Room1_EventScript_EnterBattleRoomEast
compare VAR_FACING, DIR_WEST
- call_if_eq EventScript_170A51
+ call_if_eq SevenIsland_House_Room1_EventScript_EnterBattleRoomWest
warp MAP_SEVEN_ISLAND_HOUSE_ROOM2, 255, 3, 1
waitstate
release
end
-EventScript_170A11:: @ 8170A11
+SevenIsland_House_Room1_EventScript_DeclineBattle:: @ 8170A11
special LoadPlayerParty
- msgbox gUnknown_81A064E
+ msgbox SevenIsland_House_Room1_Text_OhYouWontBattle
release
end
-EventScript_170A1E:: @ 8170A1E
- msgbox gUnknown_81A06AB
+SevenIsland_House_Room1_EventScript_ChooseParty:: @ 8170A1E
+ msgbox SevenIsland_House_Room1_Text_LimitThreeMonsPerSide
fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
return
-EventScript_170A2D:: @ 8170A2D
- applymovement VAR_LAST_TALKED, Movement_170A6F
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170A63
+SevenIsland_House_Room1_EventScript_EnterBattleRoomNorth:: @ 8170A2D
+ applymovement VAR_LAST_TALKED, SevenIsland_House_Room1_Movement_OldWomanMoveAsideLeft
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomNorth
waitmovement 0
return
-EventScript_170A3F:: @ 8170A3F
- applymovement VAR_LAST_TALKED, Movement_170A72
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170A67
+SevenIsland_House_Room1_EventScript_EnterBattleRoomEast:: @ 8170A3F
+ applymovement VAR_LAST_TALKED, SevenIsland_House_Room1_Movement_OldWomanMoveAsideRight
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomEast
waitmovement 0
return
-EventScript_170A51:: @ 8170A51
- applymovement VAR_LAST_TALKED, Movement_170A6F
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170A6B
+SevenIsland_House_Room1_EventScript_EnterBattleRoomWest:: @ 8170A51
+ applymovement VAR_LAST_TALKED, SevenIsland_House_Room1_Movement_OldWomanMoveAsideLeft
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomWest
waitmovement 0
return
-Movement_170A63:: @ 8170A63
+SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomNorth:: @ 8170A63
delay_16
walk_up
walk_up
step_end
-Movement_170A67:: @ 8170A67
+SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomEast:: @ 8170A67
delay_16
walk_right
walk_up
step_end
-Movement_170A6B:: @ 8170A6B
+SevenIsland_House_Room1_Movement_PlayerEnterBattleRoomWest:: @ 8170A6B
delay_16
walk_left
walk_up
step_end
-Movement_170A6F:: @ 8170A6F
+SevenIsland_House_Room1_Movement_OldWomanMoveAsideLeft:: @ 8170A6F
walk_left
walk_in_place_fastest_right
step_end
-Movement_170A72:: @ 8170A72
+SevenIsland_House_Room1_Movement_OldWomanMoveAsideRight:: @ 8170A72
walk_right
walk_in_place_fastest_left
step_end
-SevenIsland_House_Room1_EventScript_170A75:: @ 8170A75
- msgbox gUnknown_81A0567, MSGBOX_SIGN
+SevenIsland_House_Room1_EventScript_Box:: @ 8170A75
+ msgbox SevenIsland_House_Room1_Text_SlightBreezeAroundBox, MSGBOX_SIGN
end
diff --git a/data/maps/SevenIsland_House_Room1/text.inc b/data/maps/SevenIsland_House_Room1/text.inc
index 2e6c7f2f8..d8ddad04e 100644
--- a/data/maps/SevenIsland_House_Room1/text.inc
+++ b/data/maps/SevenIsland_House_Room1/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A049B:: @ 81A049B
+SevenIsland_House_Room1_Text_OnlyEnjoymentWatchingBattles:: @ 81A049B
.string "I may not look like much now,\n"
.string "but when I was younger…\p"
.string "I flew everywhere, challenging\n"
@@ -7,11 +7,11 @@ gUnknown_81A049B:: @ 81A049B
.string "is reminiscing about the past while\l"
.string "watching battles.$"
-gUnknown_81A0567:: @ 81A0567
+SevenIsland_House_Room1_Text_SlightBreezeAroundBox:: @ 81A0567
.string "There is a slight breeze blowing\n"
.string "around the box.$"
-gUnknown_81A0598:: @ 81A0598
+SevenIsland_House_Room1_Text_ChallengeVisitingTrainer:: @ 81A0598
.string "Ah!\n"
.string "Welcome, my friend!\p"
.string "Let me tell you something. There's\n"
@@ -21,7 +21,7 @@ gUnknown_81A0598:: @ 81A0598
.string "Tell me, you did come to challenge\n"
.string "{STR_VAR_1}, am I right?$"
-gUnknown_81A064E:: @ 81A064E
+SevenIsland_House_Room1_Text_OhYouWontBattle:: @ 81A064E
.string "Oh…\n"
.string "You won't battle…\p"
.string "I see, I see.\n"
@@ -29,7 +29,7 @@ gUnknown_81A064E:: @ 81A064E
.string "Well, perhaps if you change your\n"
.string "mind, do come back.$"
-gUnknown_81A06AB:: @ 81A06AB
+SevenIsland_House_Room1_Text_LimitThreeMonsPerSide:: @ 81A06AB
.string "Ah!\n"
.string "You will battle for me?\p"
.string "It was worth my time moving the\n"
@@ -41,31 +41,33 @@ gUnknown_81A06AB:: @ 81A06AB
.string "Can I get you to limit it to\n"
.string "battles of three POKéMON per side?$"
-gUnknown_81A0788:: @ 81A0788
+SevenIsland_House_Room1_Text_SaveProgressBeforeBattle:: @ 81A0788
.string "Fine! Before your battle, would\n"
.string "you like to save your game?$"
-gUnknown_81A07C4:: @ 81A07C4
+SevenIsland_House_Room1_Text_DontHoldAnythingBack:: @ 81A07C4
.string "All right.\n"
.string "Don't hold anything back!$"
-Text_1A07E9:: @ 81A07E9
+@ Unused
+SevenIsland_House_Room1_Text_StrVar1_1:: @ 81A07E9
.string "{STR_VAR_1}$"
-gUnknown_81A07EC:: @ 81A07EC
+SevenIsland_House_Room2_Text_MatchEndedUpDraw:: @ 81A07EC
.string "The match ended up a draw.$"
-gUnknown_81A0807:: @ 81A0807
+SevenIsland_House_Room1_Text_DrawWasIt:: @ 81A0807
.string "A draw, was it?\p"
.string "However, let me say that it was\n"
.string "a worthy spectacle.\p"
.string "I'd say it was a wonderful battle\n"
.string "with a real sense of depth!$"
-Text_1A0889:: @ 81A0889
+@ Unused
+SevenIsland_House_Room1_Text_StrVar1_2:: @ 81A0889
.string "{STR_VAR_1}$"
-gUnknown_81A088C:: @ 81A088C
+SevenIsland_House_Room1_Text_AstoundingBattle:: @ 81A088C
.string "Bravo!\p"
.string "Bravo, indeed!\n"
.string "What an astounding battle!\p"
@@ -77,10 +79,11 @@ gUnknown_81A088C:: @ 81A088C
.string "Yes!\n"
.string "It was sheer magnificence!$"
-Text_1A096E:: @ 81A096E
+@ Unused
+SevenIsland_House_Room1_Text_StrVar1_3:: @ 81A096E
.string "{STR_VAR_1}$"
-gUnknown_81A0971:: @ 81A0971
+SevenIsland_House_Room1_Text_FeelYourDisappointment:: @ 81A0971
.string "Too bad!\n"
.string "I feel your disappointment.\p"
.string "However, that disappointment is\n"
diff --git a/data/maps/SevenIsland_House_Room2/scripts.inc b/data/maps/SevenIsland_House_Room2/scripts.inc
index 8d0ef3475..311c7200f 100644
--- a/data/maps/SevenIsland_House_Room2/scripts.inc
+++ b/data/maps/SevenIsland_House_Room2/scripts.inc
@@ -8,14 +8,14 @@ SevenIsland_House_Room2_OnTransition:: @ 8170A89
end
SevenIsland_House_Room2_OnFrame:: @ 8170A8D
- map_script_2 VAR_TEMP_1, 0, EventScript_170A97
+ map_script_2 VAR_TEMP_1, 0, SevenIsland_House_Room2_EventScript_BattleVisitingTrainer
.2byte 0
-EventScript_170A97:: @ 8170A97
+SevenIsland_House_Room2_EventScript_BattleVisitingTrainer:: @ 8170A97
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170B22
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room2_Movement_PlayerEnterRoom
waitmovement 0
- special PrintEReaderTrainerGreeting
+ special BufferEReaderTrainerGreeting
msgbox gStringVar4
closemessage
setvar VAR_0x8004, 2
@@ -23,14 +23,14 @@ EventScript_170A97:: @ 8170A97
special StartSpecialBattle
waitstate
compare VAR_RESULT, 3
- call_if_eq EventScript_170AFE
+ call_if_eq SevenIsland_House_Room2_EventScript_BattleTie
compare VAR_RESULT, 1
- call_if_eq EventScript_170B0C
+ call_if_eq SevenIsland_House_Room2_EventScript_BattleWon
compare VAR_RESULT, 2
- call_if_eq EventScript_170B17
+ call_if_eq SevenIsland_House_Room2_EventScript_BattleLost
closemessage
special HealPlayerParty
- applymovement OBJ_EVENT_ID_PLAYER, Movement_170B28
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_House_Room2_Movement_PlayerExitRoom
waitmovement 0
special LoadPlayerParty
setvar VAR_TEMP_1, 1
@@ -39,26 +39,26 @@ EventScript_170A97:: @ 8170A97
releaseall
end
-EventScript_170AFE:: @ 8170AFE
+SevenIsland_House_Room2_EventScript_BattleTie:: @ 8170AFE
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 3
- msgbox gUnknown_81A07EC
+ msgbox SevenIsland_House_Room2_Text_MatchEndedUpDraw
return
-EventScript_170B0C:: @ 8170B0C
+SevenIsland_House_Room2_EventScript_BattleWon:: @ 8170B0C
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 1
special Special_ShowStringVar4AsFieldMessage
waitmessage
waitbuttonpress
return
-EventScript_170B17:: @ 8170B17
+SevenIsland_House_Room2_EventScript_BattleLost:: @ 8170B17
setvar VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1, 2
special Special_ShowStringVar4AsFieldMessage
waitmessage
waitbuttonpress
return
-Movement_170B22:: @ 8170B22
+SevenIsland_House_Room2_Movement_PlayerEnterRoom:: @ 8170B22
walk_down
walk_down
walk_down
@@ -66,7 +66,7 @@ Movement_170B22:: @ 8170B22
walk_right
step_end
-Movement_170B28:: @ 8170B28
+SevenIsland_House_Room2_Movement_PlayerExitRoom:: @ 8170B28
walk_left
walk_left
walk_up
diff --git a/data/maps/SevenIsland_Mart/map.json b/data/maps/SevenIsland_Mart/map.json
index 16ff19533..a3ba4eb37 100644
--- a/data/maps/SevenIsland_Mart/map.json
+++ b/data/maps/SevenIsland_Mart/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_Mart_EventScript_170B31",
+ "script": "SevenIsland_Mart_EventScript_Clerk",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_Mart_EventScript_170B6E",
+ "script": "SevenIsland_Mart_EventScript_Lass",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_Mart_EventScript_170B80",
+ "script": "SevenIsland_Mart_EventScript_Fisher",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_Mart_EventScript_170B77",
+ "script": "SevenIsland_Mart_EventScript_Hiker",
"flag": "0"
}
],
diff --git a/data/maps/SevenIsland_Mart/scripts.inc b/data/maps/SevenIsland_Mart/scripts.inc
index 2757fba07..a816cb8b4 100644
--- a/data/maps/SevenIsland_Mart/scripts.inc
+++ b/data/maps/SevenIsland_Mart/scripts.inc
@@ -1,19 +1,19 @@
SevenIsland_Mart_MapScripts:: @ 8170B30
.byte 0
-SevenIsland_Mart_EventScript_170B31:: @ 8170B31
+SevenIsland_Mart_EventScript_Clerk:: @ 8170B31
goto_if_questlog EventScript_ReleaseEnd
lock
faceplayer
message Text_MayIHelpYou
waitmessage
- pokemart Items_170B58
+ pokemart SevenIsland_Mart_Items
msgbox Text_PleaseComeAgain
release
end
.align 2
-Items_170B58:: @ 8170B58
+SevenIsland_Mart_Items:: @ 8170B58
.2byte ITEM_ULTRA_BALL
.2byte ITEM_GREAT_BALL
.2byte ITEM_FULL_RESTORE
@@ -27,14 +27,14 @@ Items_170B58:: @ 8170B58
release
end
-SevenIsland_Mart_EventScript_170B6E:: @ 8170B6E
- msgbox gUnknown_81A0A4F, MSGBOX_NPC
+SevenIsland_Mart_EventScript_Lass:: @ 8170B6E
+ msgbox SevenIsland_Mart_Text_MonHavePersonalitiesOfTheirOwn, MSGBOX_NPC
end
-SevenIsland_Mart_EventScript_170B77:: @ 8170B77
- msgbox gUnknown_81A0ACC, MSGBOX_NPC
+SevenIsland_Mart_EventScript_Hiker:: @ 8170B77
+ msgbox SevenIsland_Mart_Text_PreparationsCompleteForRuins, MSGBOX_NPC
end
-SevenIsland_Mart_EventScript_170B80:: @ 8170B80
- msgbox gUnknown_81A0B09, MSGBOX_NPC
+SevenIsland_Mart_EventScript_Fisher:: @ 8170B80
+ msgbox SevenIsland_Mart_Text_NeedToFishOnSevenIsland, MSGBOX_NPC
end
diff --git a/data/maps/SevenIsland_Mart/text.inc b/data/maps/SevenIsland_Mart/text.inc
index 9716c2427..ab364c889 100644
--- a/data/maps/SevenIsland_Mart/text.inc
+++ b/data/maps/SevenIsland_Mart/text.inc
@@ -1,14 +1,14 @@
-gUnknown_81A0A4F:: @ 81A0A4F
+SevenIsland_Mart_Text_MonHavePersonalitiesOfTheirOwn:: @ 81A0A4F
.string "POKéMON have personalities of their\n"
.string "own, just like people.\p"
.string "My PIKACHU has a HASTY nature,\n"
.string "so it grew to be a speedy POKéMON.$"
-gUnknown_81A0ACC:: @ 81A0ACC
+SevenIsland_Mart_Text_PreparationsCompleteForRuins:: @ 81A0ACC
.string "Okay, preparations are complete\n"
.string "for me to explore the RUINS.$"
-gUnknown_81A0B09:: @ 81A0B09
+SevenIsland_Mart_Text_NeedToFishOnSevenIsland:: @ 81A0B09
.string "I need to fish on SEVEN ISLAND.\p"
.string "That will complete my fishing tour\n"
.string "of the SEVII ISLANDS.\p"
diff --git a/data/maps/SevenIsland_PokemonCenter_1F/map.json b/data/maps/SevenIsland_PokemonCenter_1F/map.json
index 522d68473..40f31f2b8 100644
--- a/data/maps/SevenIsland_PokemonCenter_1F/map.json
+++ b/data/maps/SevenIsland_PokemonCenter_1F/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_170B98",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_Nurse",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_170BA1",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_OldMan",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_170BAA",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_Sailor",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_170BB3",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_Beauty",
"flag": "0"
},
{
@@ -77,7 +77,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_1ACFD4",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_PokemonJournal",
"flag": "FLAG_HIDE_POSTGAME_GOSSIPERS"
},
{
@@ -90,7 +90,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_PokemonCenter_1F_EventScript_1ACFD4",
+ "script": "SevenIsland_PokemonCenter_1F_EventScript_PokemonJournal",
"flag": "FLAG_HIDE_POSTGAME_GOSSIPERS"
}
],
diff --git a/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc b/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc
index 459806f32..447d9d1e8 100644
--- a/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc
@@ -7,21 +7,21 @@ SevenIsland_PokemonCenter_1F_OnTransition:: @ 8170B94
setrespawn SPAWN_SEVEN_ISLAND
end
-SevenIsland_PokemonCenter_1F_EventScript_170B98:: @ 8170B98
+SevenIsland_PokemonCenter_1F_EventScript_Nurse:: @ 8170B98
lock
faceplayer
call EventScript_PkmnCenterNurse
release
end
-SevenIsland_PokemonCenter_1F_EventScript_170BA1:: @ 8170BA1
- msgbox gUnknown_81A0B98, MSGBOX_NPC
+SevenIsland_PokemonCenter_1F_EventScript_OldMan:: @ 8170BA1
+ msgbox SevenIsland_PokemonCenter_1F_Text_EventsDependingOnConnections, MSGBOX_NPC
end
-SevenIsland_PokemonCenter_1F_EventScript_170BAA:: @ 8170BAA
- msgbox gUnknown_81A0C1F, MSGBOX_NPC
+SevenIsland_PokemonCenter_1F_EventScript_Sailor:: @ 8170BAA
+ msgbox SevenIsland_PokemonCenter_1F_Text_DidYouRideSeagallopHere, MSGBOX_NPC
end
-SevenIsland_PokemonCenter_1F_EventScript_170BB3:: @ 8170BB3
- msgbox gUnknown_81A0CA5, MSGBOX_NPC
+SevenIsland_PokemonCenter_1F_EventScript_Beauty:: @ 8170BB3
+ msgbox SevenIsland_PokemonCenter_1F_Text_CheckOutTrainerTower, MSGBOX_NPC
end
diff --git a/data/maps/SevenIsland_PokemonCenter_1F/text.inc b/data/maps/SevenIsland_PokemonCenter_1F/text.inc
index 44e325ca0..feacb5b4d 100644
--- a/data/maps/SevenIsland_PokemonCenter_1F/text.inc
+++ b/data/maps/SevenIsland_PokemonCenter_1F/text.inc
@@ -1,11 +1,11 @@
-gUnknown_81A0B98:: @ 81A0B98
+SevenIsland_PokemonCenter_1F_Text_EventsDependingOnConnections:: @ 81A0B98
.string "On this island, different events\n"
.string "occur depending on connections.\p"
.string "What are those connections?\p"
.string "They are for you to discover on\n"
.string "your own.$"
-gUnknown_81A0C1F:: @ 81A0C1F
+SevenIsland_PokemonCenter_1F_Text_DidYouRideSeagallopHere:: @ 81A0C1F
.string "Did you ride a SEAGALLOP ferry\n"
.string "to get here?\p"
.string "There are at least ten of those\n"
@@ -13,7 +13,7 @@ gUnknown_81A0C1F:: @ 81A0C1F
.string "I don't know where they all go,\n"
.string "though.$"
-gUnknown_81A0CA5:: @ 81A0CA5
+SevenIsland_PokemonCenter_1F_Text_CheckOutTrainerTower:: @ 81A0CA5
.string "If you're confident, you should\n"
.string "check out TRAINER TOWER.$"
diff --git a/data/maps/SevenIsland_SevaultCanyon/map.json b/data/maps/SevenIsland_SevaultCanyon/map.json
index b9c1bc77e..a3d196ac3 100644
--- a/data/maps/SevenIsland_SevaultCanyon/map.json
+++ b/data/maps/SevenIsland_SevaultCanyon/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACA4D",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Cyndy",
"flag": "0"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACA8B",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Evan",
"flag": "0"
},
{
@@ -62,7 +62,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACAC9",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Jackson",
"flag": "0"
},
{
@@ -75,7 +75,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACB07",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Katelyn",
"flag": "0"
},
{
@@ -88,7 +88,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACB45",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Leroy",
"flag": "0"
},
{
@@ -101,7 +101,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACB83",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Michelle",
"flag": "0"
},
{
@@ -114,7 +114,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACBC1",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Lex",
"flag": "0"
},
{
@@ -127,7 +127,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACC07",
+ "script": "SevenIsland_SevaultCanyon_EventScript_Nya",
"flag": "0"
},
{
@@ -283,7 +283,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_SevaultCanyon_EventScript_1ACF95",
+ "script": "SevenIsland_SevaultCanyon_EventScript_BlackBelt",
"flag": "0"
}
],
@@ -320,7 +320,7 @@
"x": 16,
"y": 71,
"elevation": 0,
- "script": "SevenIsland_SevaultCanyon_EventScript_168BFE"
+ "script": "SevenIsland_SevaultCanyon_EventScript_RouteSign"
}
]
}
diff --git a/data/maps/SevenIsland_SevaultCanyon/scripts.inc b/data/maps/SevenIsland_SevaultCanyon/scripts.inc
index 8c906d3f2..0d5b46b87 100644
--- a/data/maps/SevenIsland_SevaultCanyon/scripts.inc
+++ b/data/maps/SevenIsland_SevaultCanyon/scripts.inc
@@ -1,6 +1,6 @@
SevenIsland_SevaultCanyon_MapScripts:: @ 8168BFD
.byte 0
-SevenIsland_SevaultCanyon_EventScript_168BFE:: @ 8168BFE
- msgbox gUnknown_818CF2B, MSGBOX_SIGN
+SevenIsland_SevaultCanyon_EventScript_RouteSign:: @ 8168BFE
+ msgbox SevenIsland_SevaultCanyon_Text_RouteSign, MSGBOX_SIGN
end
diff --git a/data/maps/SevenIsland_SevaultCanyon/text.inc b/data/maps/SevenIsland_SevaultCanyon/text.inc
index 21c87dbc0..4e3dda9d1 100644
--- a/data/maps/SevenIsland_SevaultCanyon/text.inc
+++ b/data/maps/SevenIsland_SevaultCanyon/text.inc
@@ -1,126 +1,126 @@
-Text_18C887:: @ 818C887
+SevenIsland_SevaultCanyon_Text_CyndyIntro:: @ 818C887
.string "My conditioning's in top form!$"
-Text_18C8A6:: @ 818C8A6
+SevenIsland_SevaultCanyon_Text_CyndyDefeat:: @ 818C8A6
.string "Huh?\n"
.string "Something's not right…$"
-Text_18C8C2:: @ 818C8C2
+SevenIsland_SevaultCanyon_Text_CyndyPostBattle:: @ 818C8C2
.string "The way I am now, I may have to\n"
.string "hold off on TRAINER TOWER…$"
-Text_18C8FD:: @ 818C8FD
+SevenIsland_SevaultCanyon_Text_EvanIntro:: @ 818C8FD
.string "It doesn't matter if you happen to\n"
.string "have the strongest POKéMON…\p"
.string "It doesn't mean a thing if you don't\n"
.string "know how to use them properly!$"
-Text_18C980:: @ 818C980
+SevenIsland_SevaultCanyon_Text_EvanDefeat:: @ 818C980
.string "You're a master at this.$"
-Text_18C999:: @ 818C999
+SevenIsland_SevaultCanyon_Text_EvanPostBattle:: @ 818C999
.string "You see them every so often,\n"
.string "TRAINERS with awesome POKéMON\l"
.string "who have no idea what to do.\p"
.string "Before training POKéMON, TRAINERS\n"
.string "themselves need to grow up.$"
-Text_18CA2F:: @ 818CA2F
+SevenIsland_SevaultCanyon_Text_JacksonIntro:: @ 818CA2F
.string "I work to protect the environment.\n"
.string "In turn, nature protects me!$"
-Text_18CA6F:: @ 818CA6F
+SevenIsland_SevaultCanyon_Text_JacksonDefeat:: @ 818CA6F
.string "Whoa! You're tough!\n"
.string "How about protecting me?$"
-Text_18CA9C:: @ 818CA9C
+SevenIsland_SevaultCanyon_Text_JacksonPostBattle:: @ 818CA9C
.string "From far out among the stars, our\n"
.string "planet is just a drop of water.\p"
.string "But we want to protect that drop\n"
.string "of water for everyone.$"
-Text_18CB16:: @ 818CB16
+SevenIsland_SevaultCanyon_Text_KatelynIntro:: @ 818CB16
.string "Those shoes you have are pretty\n"
.string "snazzy.$"
-Text_18CB3E:: @ 818CB3E
+SevenIsland_SevaultCanyon_Text_KatelynDefeat:: @ 818CB3E
.string "You're hot stuff in spite of your\n"
.string "cute looks.$"
-Text_18CB6C:: @ 818CB6C
+SevenIsland_SevaultCanyon_Text_KatelynPostBattle:: @ 818CB6C
.string "Your mom bought those snazzy\n"
.string "RUNNING SHOES for you?\p"
.string "She must adore you.$"
-Text_18CBB4:: @ 818CBB4
+SevenIsland_SevaultCanyon_Text_LeroyIntro:: @ 818CBB4
.string "You look strong.\n"
.string "Let me battle you, please!$"
-Text_18CBE0:: @ 818CBE0
+SevenIsland_SevaultCanyon_Text_LeroyDefeat:: @ 818CBE0
.string "I knew it!\n"
.string "You're as tough as I thought!$"
-Text_18CC09:: @ 818CC09
+SevenIsland_SevaultCanyon_Text_LeroyPostBattle:: @ 818CC09
.string "The way you battle has given me\n"
.string "a lot of useful data.\p"
.string "Thanks so much!$"
-Text_18CC4F:: @ 818CC4F
+SevenIsland_SevaultCanyon_Text_MichelleIntro:: @ 818CC4F
.string "I was given the best possible\n"
.string "education to become this strong.\p"
.string "I don't want to lose to anyone!$"
-Text_18CCAE:: @ 818CCAE
+SevenIsland_SevaultCanyon_Text_MichelleDefeat:: @ 818CCAE
.string "Thank you. I feel like I've been\n"
.string "set free by losing to you.$"
-Text_18CCEA:: @ 818CCEA
+SevenIsland_SevaultCanyon_Text_MichellePostBattle:: @ 818CCEA
.string "For some reason, I get furious\n"
.string "over the slightest thing.\p"
.string "I'll calm myself by breathing\n"
.string "deeply.$"
-Text_18CD49:: @ 818CD49
+SevenIsland_SevaultCanyon_Text_LexIntro:: @ 818CD49
.string "LEX: My darling NYA, together\n"
.string "we could win!$"
-Text_18CD75:: @ 818CD75
+SevenIsland_SevaultCanyon_Text_LexDefeat:: @ 818CD75
.string "LEX: I seem to have been too\n"
.string "careless…$"
-Text_18CD9C:: @ 818CD9C
+SevenIsland_SevaultCanyon_Text_LexPostBattle:: @ 818CD9C
.string "LEX: I think it was a good\n"
.string "experience for NYA.\p"
.string "You have my gratitude.$"
-Text_18CDE2:: @ 818CDE2
+SevenIsland_SevaultCanyon_Text_LexNotEnoughMons:: @ 818CDE2
.string "LEX: May I ask you to battle the\n"
.string "both of us at the same time?$"
-Text_18CE20:: @ 818CE20
+SevenIsland_SevaultCanyon_Text_NyaIntro:: @ 818CE20
.string "NYA: I'll do my best so I won't\n"
.string "drag down my mentor, LEX!$"
-Text_18CE5A:: @ 818CE5A
+SevenIsland_SevaultCanyon_Text_NyaDefeat:: @ 818CE5A
.string "NYA: Oh, no…\n"
.string "I'm so sorry, I…$"
-Text_18CE78:: @ 818CE78
+SevenIsland_SevaultCanyon_Text_NyaPostBattle:: @ 818CE78
.string "NYA: I think I'm going to need\n"
.string "much more seasoning and tutoring\l"
.string "under LEX…\p"
.string "…So, LEX, please, may I stay with\n"
.string "you like this?$"
-Text_18CEF4:: @ 818CEF4
+SevenIsland_SevaultCanyon_Text_NyaNotEnoughMons:: @ 818CEF4
.string "NYA: I'm sorry, but may we battle\n"
.string "in two-on-two style?$"
-gUnknown_818CF2B:: @ 818CF2B
+SevenIsland_SevaultCanyon_Text_RouteSign:: @ 818CF2B
.string "SEVAULT CANYON\n"
.string "TANOBY RUINS AHEAD$"
-Text_18CF4D:: @ 818CF4D
+SevenIsland_SevaultCanyon_Text_BrunoTrainedWithBrawly:: @ 818CF4D
.string "Training by oneself is certainly\n"
.string "not a bad thing.\p"
.string "But it's also not bad to aim for\n"
diff --git a/data/maps/SevenIsland_SevaultCanyon_Entrance/map.json b/data/maps/SevenIsland_SevaultCanyon_Entrance/map.json
index 75c09cc6f..6939e8dfc 100644
--- a/data/maps/SevenIsland_SevaultCanyon_Entrance/map.json
+++ b/data/maps/SevenIsland_SevaultCanyon_Entrance/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 5,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1AC8C9",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Miah",
"flag": "0"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1AC907",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Eve",
"flag": "0"
},
{
@@ -62,7 +62,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1AC94D",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Jon",
"flag": "0"
},
{
@@ -75,7 +75,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1AC9D1",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Nicolas",
"flag": "0"
},
{
@@ -88,7 +88,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1ACA0F",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Madeline",
"flag": "0"
},
{
@@ -101,7 +101,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_1AC993",
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_Mason",
"flag": "0"
},
{
@@ -137,7 +137,7 @@
"x": 14,
"y": 26,
"elevation": 0,
- "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_168BF4"
+ "script": "SevenIsland_SevaultCanyon_Entrance_EventScript_RouteSign"
}
]
}
diff --git a/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc b/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc
index 617055d66..b032d990b 100644
--- a/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc
@@ -1,6 +1,6 @@
SevenIsland_SevaultCanyon_Entrance_MapScripts:: @ 8168BF3
.byte 0
-SevenIsland_SevaultCanyon_Entrance_EventScript_168BF4:: @ 8168BF4
- msgbox gUnknown_818C82D, MSGBOX_SIGN
+SevenIsland_SevaultCanyon_Entrance_EventScript_RouteSign:: @ 8168BF4
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_RouteSign, MSGBOX_SIGN
end
diff --git a/data/maps/SevenIsland_SevaultCanyon_Entrance/text.inc b/data/maps/SevenIsland_SevaultCanyon_Entrance/text.inc
index 86ade1dbd..3ab590e41 100644
--- a/data/maps/SevenIsland_SevaultCanyon_Entrance/text.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_Entrance/text.inc
@@ -1,100 +1,92 @@
-Text_18C384:: @ 818C384
- .string "トレーナータワーには\n"
- .string "いまは はいれない みたい‥$"
-
-Text_18C39E:: @ 818C39E
- .string "トレーナータワーが あいてる!\n"
- .string "さっそく はいってみよう!$"
-
-Text_18C3BC:: @ 818C3BC
+SevenIsland_SevaultCanyon_Entrance_Text_MiahIntro:: @ 818C3BC
.string "Kyahaha!\n"
.string "I'll flick you away effortlessly!$"
-Text_18C3E7:: @ 818C3E7
+SevenIsland_SevaultCanyon_Entrance_Text_MiahDefeat:: @ 818C3E7
.string "Tch!\n"
.string "Too strong for me!$"
-Text_18C3FF:: @ 818C3FF
+SevenIsland_SevaultCanyon_Entrance_Text_MiahPostBattle:: @ 818C3FF
.string "What's that?\n"
.string "I don't act the way I look?\p"
.string "Heh, that's a part of my strategy!$"
-Text_18C44B:: @ 818C44B
+SevenIsland_SevaultCanyon_Entrance_Text_MasonIntro:: @ 818C44B
.string "Howdy!\n"
.string "Are you a member of my fan club?$"
-Text_18C473:: @ 818C473
+SevenIsland_SevaultCanyon_Entrance_Text_MasonDefeat:: @ 818C473
.string "Oh, so you're not a fan…\p"
.string "Well, I can change that.\n"
.string "Let me sing for you!$"
-Text_18C4BA:: @ 818C4BA
+SevenIsland_SevaultCanyon_Entrance_Text_MasonPostBattle:: @ 818C4BA
.string "Lalalah…\n"
.string "My POKéMON, I send them out,\l"
.string "all the girls scream and shout!$"
-Text_18C500:: @ 818C500
+SevenIsland_SevaultCanyon_Entrance_Text_NicolasIntro:: @ 818C500
.string "This island is too spread out…\n"
.string "It's not easy patrolling the place.$"
-Text_18C543:: @ 818C543
+SevenIsland_SevaultCanyon_Entrance_Text_NicolasDefeat:: @ 818C543
.string "Uh-huh…$"
-Text_18C54B:: @ 818C54B
+SevenIsland_SevaultCanyon_Entrance_Text_NicolasPostBattle:: @ 818C54B
.string "TRAINERS like you from cities,\n"
.string "they sure are tough.\p"
.string "You'll be headed for the TOWER,\n"
.string "won't you?$"
-Text_18C5AA:: @ 818C5AA
+SevenIsland_SevaultCanyon_Entrance_Text_MadelineIntro:: @ 818C5AA
.string "I punish people who abuse\n"
.string "POKéMON!$"
-Text_18C5CD:: @ 818C5CD
+SevenIsland_SevaultCanyon_Entrance_Text_MadelineDefeat:: @ 818C5CD
.string "You don't seem to be a problem\n"
.string "TRAINER.$"
-Text_18C5F5:: @ 818C5F5
+SevenIsland_SevaultCanyon_Entrance_Text_MadelinePostBattle:: @ 818C5F5
.string "If you treat your POKéMON with\n"
.string "kindness, they'll understand.$"
-Text_18C632:: @ 818C632
+SevenIsland_SevaultCanyon_Entrance_Text_EveIntro:: @ 818C632
.string "EVE: I'll team up with JON and\n"
.string "battle together.$"
-Text_18C662:: @ 818C662
+SevenIsland_SevaultCanyon_Entrance_Text_EveDefeat:: @ 818C662
.string "EVE: Me and JON, we lost.\n"
.string "Ehehe.$"
-Text_18C683:: @ 818C683
+SevenIsland_SevaultCanyon_Entrance_Text_EvePostBattle:: @ 818C683
.string "EVE: I'm going to work harder with\n"
.string "JON.$"
-Text_18C6AB:: @ 818C6AB
+SevenIsland_SevaultCanyon_Entrance_Text_EveNotEnoughMons:: @ 818C6AB
.string "EVE: I want to team up with JON\n"
.string "when I battle you.\p"
.string "Come back with two POKéMON, okay?$"
-Text_18C700:: @ 818C700
+SevenIsland_SevaultCanyon_Entrance_Text_JonIntro:: @ 818C700
.string "JON: When I'm with EVE, it feels\n"
.string "like we could never lose.$"
-Text_18C73B:: @ 818C73B
+SevenIsland_SevaultCanyon_Entrance_Text_JonDefeat:: @ 818C73B
.string "JON: When I'm with EVE,\n"
.string "it doesn't feel like I've lost!$"
-Text_18C773:: @ 818C773
+SevenIsland_SevaultCanyon_Entrance_Text_JonPostBattle:: @ 818C773
.string "JON: When I'm with EVE, I feel\n"
.string "giddy whether I win or lose.\p"
.string "It's magical!$"
-Text_18C7BD:: @ 818C7BD
+SevenIsland_SevaultCanyon_Entrance_Text_JonNotEnoughMons:: @ 818C7BD
.string "JON: If it's with EVE, I'll be\n"
.string "happy to battle with you.\p"
.string "So, I'd like to make it a\n"
.string "two-on-two battle, if I may.$"
-gUnknown_818C82D:: @ 818C82D
+SevenIsland_SevaultCanyon_Entrance_Text_RouteSign:: @ 818C82D
.string "SEVAULT CANYON ENTRANCE\p"
.string "TRAINERS are asked to refrain from\n"
.string "damaging plants in the CANYON.$"
diff --git a/data/maps/SevenIsland_SevaultCanyon_House/map.json b/data/maps/SevenIsland_SevaultCanyon_House/map.json
index 9dd436790..bee4a1a86 100644
--- a/data/maps/SevenIsland_SevaultCanyon_House/map.json
+++ b/data/maps/SevenIsland_SevaultCanyon_House/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_SevaultCanyon_House_EventScript_172183",
+ "script": "SevenIsland_SevaultCanyon_House_EventScript_BaldingMan",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SevenIsland_SevaultCanyon_House_EventScript_172242",
+ "script": "SevenIsland_SevaultCanyon_House_EventScript_Chansey",
"flag": "0"
},
{
diff --git a/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc b/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc
index 975444645..3d0bb73ea 100644
--- a/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc
@@ -1,57 +1,57 @@
SevenIsland_SevaultCanyon_House_MapScripts:: @ 8172182
.byte 0
-SevenIsland_SevaultCanyon_House_EventScript_172183:: @ 8172183
+SevenIsland_SevaultCanyon_House_EventScript_BaldingMan:: @ 8172183
lock
- goto_if_set FLAG_TEMP_2, EventScript_172211
+ goto_if_set FLAG_TEMP_2, SevenIsland_SevaultCanyon_House_EventScript_AlreadyDanced
playbgm MUS_P_SCHOOL, 0
- applymovement 1, Movement_172231
+ applymovement 1, SevenIsland_SevaultCanyon_House_Movement_ChanseyDance
waitmovement 0
fadedefaultbgm
delay 30
applymovement 1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_81A4D72
+ msgbox SevenIsland_SevaultCanyon_House_Text_ChanseyDanceJoinIn
textcolor 3
- msgbox gUnknown_81A4DAF, MSGBOX_YESNO
+ msgbox SevenIsland_SevaultCanyon_House_Text_WouldYouLikeToDance, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_172225
- msgbox gUnknown_81A4DD8
+ goto_if_eq SevenIsland_SevaultCanyon_House_EventScript_DeclineDance
+ msgbox SevenIsland_SevaultCanyon_House_Text_DancedChanseyDance
closemessage
call EventScript_1A6675
compare VAR_FACING, DIR_SOUTH
- call_if_ne EventScript_172206
+ call_if_ne SevenIsland_SevaultCanyon_House_EventScript_PlayerFaceDown
delay 30
playbgm MUS_P_SCHOOL, 0
- applymovement OBJ_EVENT_ID_PLAYER, Movement_172231
+ applymovement OBJ_EVENT_ID_PLAYER, SevenIsland_SevaultCanyon_House_Movement_ChanseyDance
waitmovement 0
fadedefaultbgm
delay 30
call EventScript_OutOfCenterPartyHeal
- msgbox gUnknown_81A4DF5
+ msgbox SevenIsland_SevaultCanyon_House_Text_YoureAllChipperNow
setflag FLAG_TEMP_2
release
end
-EventScript_172206:: @ 8172206
+SevenIsland_SevaultCanyon_House_EventScript_PlayerFaceDown:: @ 8172206
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestDown
waitmovement 0
return
-EventScript_172211:: @ 8172211
+SevenIsland_SevaultCanyon_House_EventScript_AlreadyDanced:: @ 8172211
applymovement 1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_81A4D72
+ msgbox SevenIsland_SevaultCanyon_House_Text_ChanseyDanceJoinIn
release
end
-EventScript_172225:: @ 8172225
+SevenIsland_SevaultCanyon_House_EventScript_DeclineDance:: @ 8172225
textcolor 0
- msgbox gUnknown_81A4DC8
+ msgbox SevenIsland_SevaultCanyon_House_Text_ComeOnDance
release
end
-Movement_172231:: @ 8172231
+SevenIsland_SevaultCanyon_House_Movement_ChanseyDance:: @ 8172231
walk_in_place_down
delay_16
walk_in_place_down
@@ -70,12 +70,12 @@ Movement_172231:: @ 8172231
delay_4
step_end
-SevenIsland_SevaultCanyon_House_EventScript_172242:: @ 8172242
+SevenIsland_SevaultCanyon_House_EventScript_Chansey:: @ 8172242
lock
faceplayer
waitse
playmoncry SPECIES_CHANSEY, 0
- msgbox gUnknown_81A4E26
+ msgbox SevenIsland_SevaultCanyon_House_Text_Chansey
waitmoncry
release
end
diff --git a/data/maps/SevenIsland_SevaultCanyon_House/text.inc b/data/maps/SevenIsland_SevaultCanyon_House/text.inc
index 0602136b9..478107036 100644
--- a/data/maps/SevenIsland_SevaultCanyon_House/text.inc
+++ b/data/maps/SevenIsland_SevaultCanyon_House/text.inc
@@ -1,22 +1,22 @@
-gUnknown_81A4D72:: @ 81A4D72
+SevenIsland_SevaultCanyon_House_Text_ChanseyDanceJoinIn:: @ 81A4D72
.string "Dance, dance!\n"
.string "CHANSEY Dance!\p"
.string "You join in, too!\n"
.string "Dance, dance!$"
-gUnknown_81A4DAF:: @ 81A4DAF
+SevenIsland_SevaultCanyon_House_Text_WouldYouLikeToDance:: @ 81A4DAF
.string "Would you like to dance?$"
-gUnknown_81A4DC8:: @ 81A4DC8
+SevenIsland_SevaultCanyon_House_Text_ComeOnDance:: @ 81A4DC8
.string "Come on, dance!$"
-gUnknown_81A4DD8:: @ 81A4DD8
+SevenIsland_SevaultCanyon_House_Text_DancedChanseyDance:: @ 81A4DD8
.string "{PLAYER} danced the CHANSEY Dance!$"
-gUnknown_81A4DF5:: @ 81A4DF5
+SevenIsland_SevaultCanyon_House_Text_YoureAllChipperNow:: @ 81A4DF5
.string "Ahahahaha!\p"
.string "There, you're all chipper now!\n"
.string "Lucky!$"
-gUnknown_81A4E26:: @ 81A4E26
+SevenIsland_SevaultCanyon_House_Text_Chansey:: @ 81A4E26
.string "CHANSEY: Chansi! Chansi!$"
diff --git a/data/maps/SevenIsland_TrainerTower/map.json b/data/maps/SevenIsland_TrainerTower/map.json
index 29095ad7e..f7a3a7402 100644
--- a/data/maps/SevenIsland_TrainerTower/map.json
+++ b/data/maps/SevenIsland_TrainerTower/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_TrainerTower_EventScript_1AC84D",
+ "script": "SevenIsland_TrainerTower_EventScript_Dario",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SevenIsland_TrainerTower_EventScript_1AC88B",
+ "script": "SevenIsland_TrainerTower_EventScript_Rodette",
"flag": "0"
}
],
@@ -94,14 +94,14 @@
"x": 56,
"y": 8,
"elevation": 0,
- "script": "SevenIsland_TrainerTower_EventScript_168BE1"
+ "script": "SevenIsland_TrainerTower_EventScript_TrainerTowerSign"
},
{
"type": "bg_event_type_0",
"x": 50,
"y": 30,
"elevation": 0,
- "script": "SevenIsland_TrainerTower_EventScript_168BEA"
+ "script": "SevenIsland_TrainerTower_EventScript_TrainerTowerAheadSign"
}
]
}
diff --git a/data/maps/SevenIsland_TrainerTower/scripts.inc b/data/maps/SevenIsland_TrainerTower/scripts.inc
index 56716493a..6e9daea9f 100644
--- a/data/maps/SevenIsland_TrainerTower/scripts.inc
+++ b/data/maps/SevenIsland_TrainerTower/scripts.inc
@@ -6,10 +6,10 @@ SevenIsland_TrainerTower_OnTransition:: @ 8168BDB
setvar VAR_MAP_SCENE_TRAINER_TOWER, 0
end
-SevenIsland_TrainerTower_EventScript_168BE1:: @ 8168BE1
- msgbox gUnknown_818C338, MSGBOX_SIGN
+SevenIsland_TrainerTower_EventScript_TrainerTowerSign:: @ 8168BE1
+ msgbox SevenIsland_TrainerTower_Text_TrainerTowerSign, MSGBOX_SIGN
end
-SevenIsland_TrainerTower_EventScript_168BEA:: @ 8168BEA
- msgbox gUnknown_818C370, MSGBOX_SIGN
+SevenIsland_TrainerTower_EventScript_TrainerTowerAheadSign:: @ 8168BEA
+ msgbox SevenIsland_TrainerTower_Text_TrainerTowerAhead, MSGBOX_SIGN
end
diff --git a/data/maps/SevenIsland_TrainerTower/text.inc b/data/maps/SevenIsland_TrainerTower/text.inc
index 027b3de54..92fa81605 100644
--- a/data/maps/SevenIsland_TrainerTower/text.inc
+++ b/data/maps/SevenIsland_TrainerTower/text.inc
@@ -1,97 +1,41 @@
-Text_18BE5D:: @ 818BE5D
- .string "There appear to be many secrets\n"
- .string "still unsolved in this world.$"
-
-Text_18BE9B:: @ 818BE9B
- .string "Hmm…$"
-
-Text_18BEA0:: @ 818BEA0
- .string "I suggest to you that you, too,\n"
- .string "give a thought to the secrets and\l"
- .string "mysteries of our world once a day.$"
-
-Text_18BF05:: @ 818BF05
- .string "I'm curious, what compelled you to\n"
- .string "come here?$"
-
-Text_18BF33:: @ 818BF33
- .string "It's been so long since I battled,\n"
- .string "my instincts are off.$"
-
-Text_18BF6C:: @ 818BF6C
- .string "There are several ruins on the\n"
- .string "SEVII ISLANDS.\p"
- .string "The majority of them date back\n"
- .string "a long way.$"
-
-Text_18BFC5:: @ 818BFC5
- .string "It's been said that there are\n"
- .string "mysterious stones on this island.\p"
- .string "I suspect it has something to do\n"
- .string "with the ruins here.$"
-
-Text_18C03B:: @ 818C03B
- .string "Oh, interesting.$"
-
-Text_18C04C:: @ 818C04C
- .string "Those ruins over there…\p"
- .string "I haven't had any luck in finding\n"
- .string "how I can get inside.$"
-
-Text_18C09C:: @ 818C09C
- .string "A battle with you, so high up!$"
-
-Text_18C0BB:: @ 818C0BB
- .string "Oh, the heartbreak of losing so\n"
- .string "easily to you!$"
-
-Text_18C0EA:: @ 818C0EA
- .string "Experience the joy of climbing!$"
-
-Text_18C10A:: @ 818C10A
- .string "I'm pretty familiar with the land\n"
- .string "around these parts.$"
-
-Text_18C140:: @ 818C140
- .string "You don't need to be so pushy.\n"
- .string "I'll be happy to tell you.$"
-
-Text_18C17A:: @ 818C17A
- .string "The door to the ruins…\n"
- .string "It has these strange patterns\l"
- .string "engraved on the outside.\p"
- .string "I don't know what they mean,\n"
- .string "though.$"
-
-Text_18C1ED:: @ 818C1ED
+SevenIsland_TrainerTower_Text_DarioIntro:: @ 818C1ED
.string "I sensed your approach.$"
-Text_18C205:: @ 818C205
+SevenIsland_TrainerTower_Text_DarioDefeat:: @ 818C205
.string "Give up…$"
-Text_18C20E:: @ 818C20E
+SevenIsland_TrainerTower_Text_DarioPostBattle:: @ 818C20E
.string "In your future, I sense that you\n"
.string "will meet many others.\p"
.string "I think you will be linked to each\n"
.string "other by a strange power.$"
-Text_18C283:: @ 818C283
+SevenIsland_TrainerTower_Text_RodetteIntro:: @ 818C283
.string "Somewhere on this island, peculiar\n"
.string "POKéMON are sleeping.$"
-Text_18C2BC:: @ 818C2BC
+SevenIsland_TrainerTower_Text_RodetteDefeat:: @ 818C2BC
.string "What an amazing TRAINER!$"
-Text_18C2D5:: @ 818C2D5
+SevenIsland_TrainerTower_Text_RodettePostBattle:: @ 818C2D5
.string "Somewhere on this island, peculiar\n"
.string "POKéMON are sleeping.\p"
.string "Could it be that they're waiting\n"
.string "for you?$"
-gUnknown_818C338:: @ 818C338
+SevenIsland_TrainerTower_Text_TrainerTowerSign:: @ 818C338
.string "TRAINER TOWER ENTRANCE\n"
.string "Rise to the Challenge, TRAINERS!$"
-gUnknown_818C370:: @ 818C370
+SevenIsland_TrainerTower_Text_TrainerTowerAhead:: @ 818C370
.string "TRAINER TOWER AHEAD$"
+@ Unused text perhaps indicating Trainer Tower was planned to be unlocked by something
+SevenIsland_TrainerTower_Text_LooksLikeTrainerTowerIsClosed:: @ 818C384
+ .string "トレーナータワーには\n"
+ .string "いまは はいれない みたい‥$"
+
+SevenIsland_TrainerTower_Text_TrainerTowerIsOpenLetsGoIn:: @ 818C39E
+ .string "トレーナータワーが あいてる!\n"
+ .string "さっそく はいってみよう!$"
+
diff --git a/data/maps/SixIsland/map.json b/data/maps/SixIsland/map.json
index ec8c1ffe3..bc04c47d8 100644
--- a/data/maps/SixIsland/map.json
+++ b/data/maps/SixIsland/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_EventScript_167EEB",
+ "script": "SixIsland_EventScript_Boy",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_EventScript_167EE2",
+ "script": "SixIsland_EventScript_Hiker",
"flag": "0"
}
],
@@ -85,7 +85,7 @@
"x": 9,
"y": 17,
"elevation": 0,
- "script": "SixIsland_EventScript_167EF4"
+ "script": "SixIsland_EventScript_IslandSign"
},
{
"type": "hidden_item",
diff --git a/data/maps/SixIsland/scripts.inc b/data/maps/SixIsland/scripts.inc
index 01d373654..863390ba8 100644
--- a/data/maps/SixIsland/scripts.inc
+++ b/data/maps/SixIsland/scripts.inc
@@ -6,14 +6,14 @@ SixIsland_OnTransition:: @ 8167EDE
setworldmapflag FLAG_WORLD_MAP_SIX_ISLAND
end
-SixIsland_EventScript_167EE2:: @ 8167EE2
- msgbox gUnknown_81831EF, MSGBOX_NPC
+SixIsland_EventScript_Hiker:: @ 8167EE2
+ msgbox SixIsland_Text_ThatWayToWaterPathRuinValley, MSGBOX_NPC
end
-SixIsland_EventScript_167EEB:: @ 8167EEB
- msgbox gUnknown_8183255, MSGBOX_NPC
+SixIsland_EventScript_Boy:: @ 8167EEB
+ msgbox SixIsland_Text_SkyAtNightIsFantastic, MSGBOX_NPC
end
-SixIsland_EventScript_167EF4:: @ 8167EF4
- msgbox gUnknown_81831C6, MSGBOX_SIGN
+SixIsland_EventScript_IslandSign:: @ 8167EF4
+ msgbox SixIsland_Text_IslandSign, MSGBOX_SIGN
end
diff --git a/data/maps/SixIsland/text.inc b/data/maps/SixIsland/text.inc
index bade2abd1..0d2fc43ce 100644
--- a/data/maps/SixIsland/text.inc
+++ b/data/maps/SixIsland/text.inc
@@ -1,14 +1,14 @@
-gUnknown_81831C6:: @ 81831C6
+SixIsland_Text_IslandSign:: @ 81831C6
.string "SIX ISLAND\n"
.string "Fortune Island of Aged Wisdom$"
-gUnknown_81831EF:: @ 81831EF
+SixIsland_Text_ThatWayToWaterPathRuinValley:: @ 81831EF
.string "Keep going this way and you'll get\n"
.string "to the WATER PATH.\p"
.string "Stay on that and you'll get to\n"
.string "the RUIN VALLEY.$"
-gUnknown_8183255:: @ 8183255
+SixIsland_Text_SkyAtNightIsFantastic:: @ 8183255
.string "When you're this far away from the\n"
.string "city, the sky at night is fantastic.$"
diff --git a/data/maps/SixIsland_GreenPath/map.json b/data/maps/SixIsland_GreenPath/map.json
index ff6ad2c51..f9955cfd2 100644
--- a/data/maps/SixIsland_GreenPath/map.json
+++ b/data/maps/SixIsland_GreenPath/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_GreenPath_EventScript_1AC517",
+ "script": "SixIsland_GreenPath_EventScript_Jaclyn",
"flag": "0"
}
],
@@ -77,14 +77,14 @@
"x": 40,
"y": 10,
"elevation": 0,
- "script": "SixIsland_GreenPath_EventScript_168B37"
+ "script": "SixIsland_GreenPath_EventScript_LeftRouteSign"
},
{
"type": "bg_event_type_0",
"x": 69,
"y": 10,
"elevation": 0,
- "script": "SixIsland_GreenPath_EventScript_168B2E"
+ "script": "SixIsland_GreenPath_EventScript_RightRouteSign"
},
{
"type": "hidden_item",
diff --git a/data/maps/SixIsland_GreenPath/scripts.inc b/data/maps/SixIsland_GreenPath/scripts.inc
index acc4336d2..559158455 100644
--- a/data/maps/SixIsland_GreenPath/scripts.inc
+++ b/data/maps/SixIsland_GreenPath/scripts.inc
@@ -1,10 +1,10 @@
SixIsland_GreenPath_MapScripts:: @ 8168B2D
.byte 0
-SixIsland_GreenPath_EventScript_168B2E:: @ 8168B2E
- msgbox gUnknown_818B84D, MSGBOX_SIGN
+SixIsland_GreenPath_EventScript_RightRouteSign:: @ 8168B2E
+ msgbox SixIsland_GreenPath_Text_LeftRouteSign, MSGBOX_SIGN
end
-SixIsland_GreenPath_EventScript_168B37:: @ 8168B37
- msgbox gUnknown_818B86B, MSGBOX_SIGN
+SixIsland_GreenPath_EventScript_LeftRouteSign:: @ 8168B37
+ msgbox SixIsland_GreenPath_Text_RightRouteSign, MSGBOX_SIGN
end
diff --git a/data/maps/SixIsland_GreenPath/text.inc b/data/maps/SixIsland_GreenPath/text.inc
index 97d8bc2c8..e8113cac3 100644
--- a/data/maps/SixIsland_GreenPath/text.inc
+++ b/data/maps/SixIsland_GreenPath/text.inc
@@ -1,94 +1,21 @@
-Text_18B400:: @ 818B400
- .string "I'm having no luck at all.\n"
- .string "A battle'd be a change of pace!$"
-
-Text_18B43B:: @ 818B43B
- .string "Nope, no luck at all…$"
-
-Text_18B451:: @ 818B451
- .string "I can't very well go home without\n"
- .string "catching something, though.$"
-
-Text_18B48F:: @ 818B48F
- .string "Gasp… Gasp…\p"
- .string "I swam here from SIX ISLE PORT\n"
- .string "in one go.$"
-
-Text_18B4C5:: @ 818B4C5
- .string "Gasp…\n"
- .string "Gasp…$"
-
-Text_18B4D1:: @ 818B4D1
- .string "I'm only at the halfway point…\n"
- .string "I'm beat…$"
-
-Text_18B4FA:: @ 818B4FA
- .string "It's not so easy sending POKéMON\n"
- .string "out while swimming, you know?$"
-
-Text_18B539:: @ 818B539
- .string "I didn't lose to you at swimming.\n"
- .string "This doesn't bother me.$"
-
-Text_18B573:: @ 818B573
- .string "Are you headed for the island up\n"
- .string "past here?\p"
- .string "I didn't see anything interesting\n"
- .string "there.$"
-
-Text_18B5C8:: @ 818B5C8
- .string "AVA: Let's have a two-on-two\n"
- .string "marine battle!$"
-
-Text_18B5F4:: @ 818B5F4
- .string "AVA: Oh, you're amazing!\n"
- .string "Even better, you're on your own!$"
-
-Text_18B62E:: @ 818B62E
- .string "AVA: You know, I do prefer the\n"
- .string "sea over any pool.$"
-
-Text_18B660:: @ 818B660
- .string "AVA: You're challenging us to\n"
- .string "a battle?\p"
- .string "You'll need at least two POKéMON\n"
- .string "if you want to do that.$"
-
-Text_18B6C1:: @ 818B6C1
- .string "GEB: Big Sister, help!\n"
- .string "Please battle with me!$"
-
-Text_18B6EF:: @ 818B6EF
- .string "GEB: Wow, Big Sister, this person's\n"
- .string "really good!$"
-
-Text_18B720:: @ 818B720
- .string "GEB: I'm hanging onto my sister\n"
- .string "because I can't touch the bottom.$"
-
-Text_18B762:: @ 818B762
- .string "GEB: Please battle against me and\n"
- .string "my sister!\p"
- .string "…Oh, you don't have two POKéMON?$"
-
-Text_18B7B0:: @ 818B7B0
+SixIsland_GreenPath_Text_JaclynIntro:: @ 818B7B0
.string "…Huh?\p"
.string "I was envisioning my house, but\n"
.string "this is where I TELEPORT?$"
-Text_18B7F0:: @ 818B7F0
+SixIsland_GreenPath_Text_JaclynDefeat:: @ 818B7F0
.string "Big boo-boo!$"
-Text_18B7FD:: @ 818B7FD
+SixIsland_GreenPath_Text_JaclynPostBattle:: @ 818B7FD
.string "I am so scatterbrained!\p"
.string "I need to focus so I can TELEPORT\n"
.string "properly to my house!$"
-gUnknown_818B84D:: @ 818B84D
+SixIsland_GreenPath_Text_LeftRouteSign:: @ 818B84D
.string "GREEN PATH\n"
.string "PATTERN BUSH AHEAD$"
-gUnknown_818B86B:: @ 818B86B
+SixIsland_GreenPath_Text_RightRouteSign:: @ 818B86B
.string "GREEN PATH\n"
.string "Think Green, Keep Nature Clean!$"
diff --git a/data/maps/SixIsland_Harbor/map.json b/data/maps/SixIsland_Harbor/map.json
index e303ff025..58c47c48a 100644
--- a/data/maps/SixIsland_Harbor/map.json
+++ b/data/maps/SixIsland_Harbor/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_Harbor_EventScript_171E48",
+ "script": "SixIsland_Harbor_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_Harbor/scripts.inc b/data/maps/SixIsland_Harbor/scripts.inc
index 11ed9c7b8..fabf9d841 100644
--- a/data/maps/SixIsland_Harbor/scripts.inc
+++ b/data/maps/SixIsland_Harbor/scripts.inc
@@ -1,7 +1,7 @@
SixIsland_Harbor_MapScripts:: @ 8171E47
.byte 0
-SixIsland_Harbor_EventScript_171E48:: @ 8171E48
+SixIsland_Harbor_EventScript_Sailor:: @ 8171E48
lock
faceplayer
message Text_WhereDoYouWantToSail
diff --git a/data/maps/SixIsland_House/map.json b/data/maps/SixIsland_House/map.json
index 2747a0cf0..b27112474 100644
--- a/data/maps/SixIsland_House/map.json
+++ b/data/maps/SixIsland_House/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_House_EventScript_171E5C",
+ "script": "SixIsland_House_EventScript_OldMan",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_House/scripts.inc b/data/maps/SixIsland_House/scripts.inc
index 1ad94906f..bf61629b2 100644
--- a/data/maps/SixIsland_House/scripts.inc
+++ b/data/maps/SixIsland_House/scripts.inc
@@ -1,6 +1,6 @@
SixIsland_House_MapScripts:: @ 8171E5B
.byte 0
-SixIsland_House_EventScript_171E5C:: @ 8171E5C
- msgbox gUnknown_81A412E, MSGBOX_NPC
+SixIsland_House_EventScript_OldMan:: @ 8171E5C
+ msgbox SixIsland_House_Text_GoodPlaceForNatureAndHistory, MSGBOX_NPC
end
diff --git a/data/maps/SixIsland_House/text.inc b/data/maps/SixIsland_House/text.inc
index 06fd9c274..839cdf2f3 100644
--- a/data/maps/SixIsland_House/text.inc
+++ b/data/maps/SixIsland_House/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A412E:: @ 81A412E
+SixIsland_House_Text_GoodPlaceForNatureAndHistory:: @ 81A412E
.string "There's nothing that young people'd\n"
.string "find exciting here on this island.\p"
.string "But, this is a good place in terms\n"
diff --git a/data/maps/SixIsland_Mart/map.json b/data/maps/SixIsland_Mart/map.json
index e208da76c..7607a118d 100644
--- a/data/maps/SixIsland_Mart/map.json
+++ b/data/maps/SixIsland_Mart/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_Mart_EventScript_171E66",
+ "script": "SixIsland_Mart_EventScript_Clerk",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_Mart_EventScript_1ACFEF",
+ "script": "SixIsland_Mart_EventScript_OldWoman",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_Mart_EventScript_171EA0",
+ "script": "SixIsland_Mart_EventScript_Picnicker",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_Mart/scripts.inc b/data/maps/SixIsland_Mart/scripts.inc
index 777948764..da7515c52 100644
--- a/data/maps/SixIsland_Mart/scripts.inc
+++ b/data/maps/SixIsland_Mart/scripts.inc
@@ -1,19 +1,19 @@
SixIsland_Mart_MapScripts:: @ 8171E65
.byte 0
-SixIsland_Mart_EventScript_171E66:: @ 8171E66
+SixIsland_Mart_EventScript_Clerk:: @ 8171E66
goto_if_questlog EventScript_ReleaseEnd
lock
faceplayer
message Text_MayIHelpYou
waitmessage
- pokemart Items_171E8C
+ pokemart SixIsland_Mart_Items
msgbox Text_PleaseComeAgain
release
end
.align 2
-Items_171E8C:: @ 8171E8C
+SixIsland_Mart_Items:: @ 8171E8C
.2byte ITEM_ULTRA_BALL
.2byte ITEM_FULL_RESTORE
.2byte ITEM_MAX_POTION
@@ -26,6 +26,6 @@ Items_171E8C:: @ 8171E8C
release
end
-SixIsland_Mart_EventScript_171EA0:: @ 8171EA0
- msgbox gUnknown_81A4271, MSGBOX_NPC
+SixIsland_Mart_EventScript_Picnicker:: @ 8171EA0
+ msgbox SixIsland_Mart_Text_ShouldBuyMailAndWriteLetter, MSGBOX_NPC
end
diff --git a/data/maps/SixIsland_Mart/text.inc b/data/maps/SixIsland_Mart/text.inc
index 34e6275a2..178f635ea 100644
--- a/data/maps/SixIsland_Mart/text.inc
+++ b/data/maps/SixIsland_Mart/text.inc
@@ -1,4 +1,4 @@
-Text_1A41CA:: @ 81A41CA
+SixIsland_Mart_Text_AgathaOldestEverEliteFourMember:: @ 81A41CA
.string "Play with POKéMON lots and live\n"
.string "a long life!\p"
.string "Take AGATHA, for example.\p"
@@ -6,7 +6,7 @@ Text_1A41CA:: @ 81A41CA
.string "oldest-ever ELITE FOUR member.\p"
.string "She spurs me to do bigger things.$"
-gUnknown_81A4271:: @ 81A4271
+SixIsland_Mart_Text_ShouldBuyMailAndWriteLetter:: @ 81A4271
.string "I should buy some MAIL and write\n"
.string "him a letter…$"
diff --git a/data/maps/SixIsland_OutcastIsland/map.json b/data/maps/SixIsland_OutcastIsland/map.json
index 14828c8eb..d39a4d70d 100644
--- a/data/maps/SixIsland_OutcastIsland/map.json
+++ b/data/maps/SixIsland_OutcastIsland/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_168B16",
+ "script": "SixIsland_OutcastIsland_EventScript_Rocket",
"flag": "FLAG_HIDE_FIVE_ISLAND_ROCKETS"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_1AC3D1",
+ "script": "SixIsland_OutcastIsland_EventScript_Tylor",
"flag": "0"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_1AC40F",
+ "script": "SixIsland_OutcastIsland_EventScript_Mymo",
"flag": "0"
},
{
@@ -70,7 +70,7 @@
"movement_range_y": 4,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_1AC44D",
+ "script": "SixIsland_OutcastIsland_EventScript_Nicole",
"flag": "0"
},
{
@@ -83,7 +83,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_1AC48B",
+ "script": "SixIsland_OutcastIsland_EventScript_Ava",
"flag": "0"
},
{
@@ -96,7 +96,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_OutcastIsland_EventScript_1AC4D1",
+ "script": "SixIsland_OutcastIsland_EventScript_Geb",
"flag": "0"
},
{
diff --git a/data/maps/SixIsland_OutcastIsland/scripts.inc b/data/maps/SixIsland_OutcastIsland/scripts.inc
index fb4ec0217..b43a93095 100644
--- a/data/maps/SixIsland_OutcastIsland/scripts.inc
+++ b/data/maps/SixIsland_OutcastIsland/scripts.inc
@@ -1,7 +1,7 @@
SixIsland_OutcastIsland_MapScripts:: @ 8168B15
.byte 0
-SixIsland_OutcastIsland_EventScript_168B16:: @ 8168B16
- trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_46, Text_18B35A, Text_18B3C2
- msgbox gUnknown_818B3C8, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_Rocket:: @ 8168B16
+ trainerbattle_single TRAINER_TEAM_ROCKET_GRUNT_46, SixIsland_OutcastIsland_Text_RocketIntro, SixIsland_OutcastIsland_Text_RocketDefeat
+ msgbox SixIsland_OutcastIsland_Text_RocketPostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/maps/SixIsland_OutcastIsland/text.inc b/data/maps/SixIsland_OutcastIsland/text.inc
index 47b138e41..67218e416 100644
--- a/data/maps/SixIsland_OutcastIsland/text.inc
+++ b/data/maps/SixIsland_OutcastIsland/text.inc
@@ -1,13 +1,85 @@
-Text_18B35A:: @ 818B35A
+SixIsland_OutcastIsland_Text_RocketIntro:: @ 818B35A
.string "There're no rare POKéMON around\n"
.string "these parts! Not a one!\p"
.string "That burns me up, man.\n"
.string "I'll take it out on you!$"
-Text_18B3C2:: @ 818B3C2
+SixIsland_OutcastIsland_Text_RocketDefeat:: @ 818B3C2
.string "…Huh?$"
-gUnknown_818B3C8:: @ 818B3C8
+SixIsland_OutcastIsland_Text_RocketPostBattle:: @ 818B3C8
.string "So listen, you haven't seen any\n"
.string "rare POKéMON, have you?$"
+SixIsland_OutcastIsland_Text_TylorIntro:: @ 818B400
+ .string "I'm having no luck at all.\n"
+ .string "A battle'd be a change of pace!$"
+
+SixIsland_OutcastIsland_Text_TylorDefeat:: @ 818B43B
+ .string "Nope, no luck at all…$"
+
+SixIsland_OutcastIsland_Text_TylorPostBattle:: @ 818B451
+ .string "I can't very well go home without\n"
+ .string "catching something, though.$"
+
+SixIsland_OutcastIsland_Text_MymoIntro:: @ 818B48F
+ .string "Gasp… Gasp…\p"
+ .string "I swam here from SIX ISLE PORT\n"
+ .string "in one go.$"
+
+SixIsland_OutcastIsland_Text_MymoDefeat:: @ 818B4C5
+ .string "Gasp…\n"
+ .string "Gasp…$"
+
+SixIsland_OutcastIsland_Text_MymoPostBattle:: @ 818B4D1
+ .string "I'm only at the halfway point…\n"
+ .string "I'm beat…$"
+
+SixIsland_OutcastIsland_Text_NicoleIntro:: @ 818B4FA
+ .string "It's not so easy sending POKéMON\n"
+ .string "out while swimming, you know?$"
+
+SixIsland_OutcastIsland_Text_NicoleDefeat:: @ 818B539
+ .string "I didn't lose to you at swimming.\n"
+ .string "This doesn't bother me.$"
+
+SixIsland_OutcastIsland_Text_NicolePostBattle:: @ 818B573
+ .string "Are you headed for the island up\n"
+ .string "past here?\p"
+ .string "I didn't see anything interesting\n"
+ .string "there.$"
+
+SixIsland_OutcastIsland_Text_AvaIntro:: @ 818B5C8
+ .string "AVA: Let's have a two-on-two\n"
+ .string "marine battle!$"
+
+SixIsland_OutcastIsland_Text_AvaDefeat:: @ 818B5F4
+ .string "AVA: Oh, you're amazing!\n"
+ .string "Even better, you're on your own!$"
+
+SixIsland_OutcastIsland_Text_AvaPostBattle:: @ 818B62E
+ .string "AVA: You know, I do prefer the\n"
+ .string "sea over any pool.$"
+
+SixIsland_OutcastIsland_Text_AvaNotEnoughMons:: @ 818B660
+ .string "AVA: You're challenging us to\n"
+ .string "a battle?\p"
+ .string "You'll need at least two POKéMON\n"
+ .string "if you want to do that.$"
+
+SixIsland_OutcastIsland_Text_GebIntro:: @ 818B6C1
+ .string "GEB: Big Sister, help!\n"
+ .string "Please battle with me!$"
+
+SixIsland_OutcastIsland_Text_GebDefeat:: @ 818B6EF
+ .string "GEB: Wow, Big Sister, this person's\n"
+ .string "really good!$"
+
+SixIsland_OutcastIsland_Text_GebPostBattle:: @ 818B720
+ .string "GEB: I'm hanging onto my sister\n"
+ .string "because I can't touch the bottom.$"
+
+SixIsland_OutcastIsland_Text_GebNotEnoughMons:: @ 818B762
+ .string "GEB: Please battle against me and\n"
+ .string "my sister!\p"
+ .string "…Oh, you don't have two POKéMON?$"
diff --git a/data/maps/SixIsland_PatternBush/map.json b/data/maps/SixIsland_PatternBush/map.json
index e0d100f6c..893790bd4 100644
--- a/data/maps/SixIsland_PatternBush/map.json
+++ b/data/maps/SixIsland_PatternBush/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_PatternBush_EventScript_164590",
+ "script": "SixIsland_PatternBush_EventScript_Bethany",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_PatternBush_EventScript_1645A7",
+ "script": "SixIsland_PatternBush_EventScript_Allison",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_PatternBush_EventScript_1645BE",
+ "script": "SixIsland_PatternBush_EventScript_Garret",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 2,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_PatternBush_EventScript_1645D5",
+ "script": "SixIsland_PatternBush_EventScript_Jonah",
"flag": "0"
},
{
@@ -77,7 +77,7 @@
"movement_range_y": 5,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_PatternBush_EventScript_1645EC",
+ "script": "SixIsland_PatternBush_EventScript_Vance",
"flag": "0"
},
{
@@ -90,7 +90,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_PatternBush_EventScript_164603",
+ "script": "SixIsland_PatternBush_EventScript_Nash",
"flag": "0"
},
{
@@ -103,7 +103,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 4,
- "script": "SixIsland_PatternBush_EventScript_16461A",
+ "script": "SixIsland_PatternBush_EventScript_Cordell",
"flag": "0"
},
{
@@ -116,7 +116,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 5,
- "script": "SixIsland_PatternBush_EventScript_164631",
+ "script": "SixIsland_PatternBush_EventScript_Dalia",
"flag": "0"
},
{
@@ -129,7 +129,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_PatternBush_EventScript_164648",
+ "script": "SixIsland_PatternBush_EventScript_Joana",
"flag": "0"
},
{
@@ -142,7 +142,7 @@
"movement_range_y": 2,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_PatternBush_EventScript_16465F",
+ "script": "SixIsland_PatternBush_EventScript_Riley",
"flag": "0"
},
{
@@ -155,7 +155,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_PatternBush_EventScript_164676",
+ "script": "SixIsland_PatternBush_EventScript_Marcy",
"flag": "0"
},
{
@@ -168,7 +168,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_PatternBush_EventScript_16468D",
+ "script": "SixIsland_PatternBush_EventScript_Layton",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_PatternBush/scripts.inc b/data/maps/SixIsland_PatternBush/scripts.inc
index 97a8a0a30..a9d9be019 100644
--- a/data/maps/SixIsland_PatternBush/scripts.inc
+++ b/data/maps/SixIsland_PatternBush/scripts.inc
@@ -6,75 +6,75 @@ SixIsland_PatternBush_OnTransition:: @ 816455F
setworldmapflag FLAG_WORLD_MAP_SIX_ISLAND_PATTERN_BUSH
getplayerxy VAR_TEMP_1, VAR_TEMP_2
compare VAR_TEMP_1, 50
- call_if_ge EventScript_16457E
+ call_if_ge SixIsland_PatternBush_EventScript_SetEscapeRightExit
compare VAR_TEMP_1, 49
- call_if_le EventScript_164587
+ call_if_le SixIsland_PatternBush_EventScript_SetEscapeLeftExit
end
-EventScript_16457E:: @ 816457E
+SixIsland_PatternBush_EventScript_SetEscapeRightExit:: @ 816457E
setescapewarp MAP_SIX_ISLAND_GREEN_PATH, 255, 64, 10
return
-EventScript_164587:: @ 8164587
+SixIsland_PatternBush_EventScript_SetEscapeLeftExit:: @ 8164587
setescapewarp MAP_SIX_ISLAND_GREEN_PATH, 255, 45, 10
return
-SixIsland_PatternBush_EventScript_164590:: @ 8164590
- trainerbattle_single TRAINER_PKMN_BREEDER_BETHANY, Text_17BF3A, Text_17BF66
- msgbox gUnknown_817BF97, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Bethany:: @ 8164590
+ trainerbattle_single TRAINER_PKMN_BREEDER_BETHANY, SixIsland_PatternBush_Text_BethanyIntro, SixIsland_PatternBush_Text_BethanyDefeat
+ msgbox SixIsland_PatternBush_Text_BethanyPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_1645A7:: @ 81645A7
- trainerbattle_single TRAINER_PKMN_BREEDER_ALLISON, Text_17BFEB, Text_17C028
- msgbox gUnknown_817C056, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Allison:: @ 81645A7
+ trainerbattle_single TRAINER_PKMN_BREEDER_ALLISON, SixIsland_PatternBush_Text_AllisonIntro, SixIsland_PatternBush_Text_AllisonDefeat
+ msgbox SixIsland_PatternBush_Text_AllisonPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_1645BE:: @ 81645BE
- trainerbattle_single TRAINER_BUG_CATCHER_GARRET, Text_17C0BE, Text_17C0F2
- msgbox gUnknown_817C113, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Garret:: @ 81645BE
+ trainerbattle_single TRAINER_BUG_CATCHER_GARRET, SixIsland_PatternBush_Text_GarretIntro, SixIsland_PatternBush_Text_GarretDefeat
+ msgbox SixIsland_PatternBush_Text_GarretPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_1645D5:: @ 81645D5
- trainerbattle_single TRAINER_BUG_CATCHER_JONAH, Text_17C155, Text_17C196
- msgbox gUnknown_817C1D0, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Jonah:: @ 81645D5
+ trainerbattle_single TRAINER_BUG_CATCHER_JONAH, SixIsland_PatternBush_Text_JonahIntro, SixIsland_PatternBush_Text_JonahDefeat
+ msgbox SixIsland_PatternBush_Text_JonahPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_1645EC:: @ 81645EC
- trainerbattle_single TRAINER_BUG_CATCHER_VANCE, Text_17C246, Text_17C275
- msgbox gUnknown_817C2A4, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Vance:: @ 81645EC
+ trainerbattle_single TRAINER_BUG_CATCHER_VANCE, SixIsland_PatternBush_Text_VanceIntro, SixIsland_PatternBush_Text_VanceDefeat
+ msgbox SixIsland_PatternBush_Text_VancePostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_164603:: @ 8164603
- trainerbattle_single TRAINER_YOUNGSTER_NASH, Text_17C2D9, Text_17C30D
- msgbox gUnknown_817C31C, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Nash:: @ 8164603
+ trainerbattle_single TRAINER_YOUNGSTER_NASH, SixIsland_PatternBush_Text_NashIntro, SixIsland_PatternBush_Text_NashDefeat
+ msgbox SixIsland_PatternBush_Text_NashPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_16461A:: @ 816461A
- trainerbattle_single TRAINER_YOUNGSTER_CORDELL, Text_17C373, Text_17C3A5
- msgbox gUnknown_817C3CE, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Cordell:: @ 816461A
+ trainerbattle_single TRAINER_YOUNGSTER_CORDELL, SixIsland_PatternBush_Text_CordellIntro, SixIsland_PatternBush_Text_CordellDefeat
+ msgbox SixIsland_PatternBush_Text_CordellPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_164631:: @ 8164631
- trainerbattle_single TRAINER_LASS_DALIA, Text_17C42B, Text_17C458
- msgbox gUnknown_817C490, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Dalia:: @ 8164631
+ trainerbattle_single TRAINER_LASS_DALIA, SixIsland_PatternBush_Text_DaliaIntro, SixIsland_PatternBush_Text_DaliaDefeat
+ msgbox SixIsland_PatternBush_Text_DaliaPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_164648:: @ 8164648
- trainerbattle_single TRAINER_LASS_JOANA, Text_17C4FE, Text_17C552
- msgbox gUnknown_817C590, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Joana:: @ 8164648
+ trainerbattle_single TRAINER_LASS_JOANA, SixIsland_PatternBush_Text_JoanaIntro, SixIsland_PatternBush_Text_JoanaDefeat
+ msgbox SixIsland_PatternBush_Text_JoanaPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_16465F:: @ 816465F
- trainerbattle_single TRAINER_CAMPER_RILEY, Text_17C5DB, Text_17C609
- msgbox gUnknown_817C615, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Riley:: @ 816465F
+ trainerbattle_single TRAINER_CAMPER_RILEY, SixIsland_PatternBush_Text_RileyIntro, SixIsland_PatternBush_Text_RileyDefeat
+ msgbox SixIsland_PatternBush_Text_RileyPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_164676:: @ 8164676
- trainerbattle_single TRAINER_PICNICKER_MARCY, Text_17C63E, Text_17C660
- msgbox gUnknown_817C68E, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Marcy:: @ 8164676
+ trainerbattle_single TRAINER_PICNICKER_MARCY, SixIsland_PatternBush_Text_MarcyIntro, SixIsland_PatternBush_Text_MarcyDefeat
+ msgbox SixIsland_PatternBush_Text_MarcyPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_PatternBush_EventScript_16468D:: @ 816468D
- trainerbattle_single TRAINER_RUIN_MANIAC_LAYTON, Text_17C6C9, Text_17C6FB
- msgbox gUnknown_817C728, MSGBOX_AUTOCLOSE
+SixIsland_PatternBush_EventScript_Layton:: @ 816468D
+ trainerbattle_single TRAINER_RUIN_MANIAC_LAYTON, SixIsland_PatternBush_Text_LaytonIntro, SixIsland_PatternBush_Text_LaytonDefeat
+ msgbox SixIsland_PatternBush_Text_LaytonPostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/maps/SixIsland_PatternBush/text.inc b/data/maps/SixIsland_PatternBush/text.inc
index eddaf1ed9..4c4161fe9 100644
--- a/data/maps/SixIsland_PatternBush/text.inc
+++ b/data/maps/SixIsland_PatternBush/text.inc
@@ -1,154 +1,154 @@
-Text_17BF3A:: @ 817BF3A
+SixIsland_PatternBush_Text_BethanyIntro:: @ 817BF3A
.string "I'm curious, how do you raise your\n"
.string "POKéMON?$"
-Text_17BF66:: @ 817BF66
+SixIsland_PatternBush_Text_BethanyDefeat:: @ 817BF66
.string "You raise your POKéMON with a\n"
.string "whole lot of love!$"
-gUnknown_817BF97:: @ 817BF97
+SixIsland_PatternBush_Text_BethanyPostBattle:: @ 817BF97
.string "In the same way your mother raised\n"
.string "you full of love, you should raise\l"
.string "your POKéMON.$"
-Text_17BFEB:: @ 817BFEB
+SixIsland_PatternBush_Text_AllisonIntro:: @ 817BFEB
.string "I'm working to preserve the natural\n"
.string "ecology of POKéMON here.$"
-Text_17C028:: @ 817C028
+SixIsland_PatternBush_Text_AllisonDefeat:: @ 817C028
.string "Oh, for someone so young, you are\n"
.string "tremendous!$"
-gUnknown_817C056:: @ 817C056
+SixIsland_PatternBush_Text_AllisonPostBattle:: @ 817C056
.string "I'm not saying that you shouldn't\n"
.string "catch POKéMON.\p"
.string "I just want people to raise their\n"
.string "POKéMON responsibly.$"
-Text_17C0BE:: @ 817C0BE
+SixIsland_PatternBush_Text_GarretIntro:: @ 817C0BE
.string "I caught a BUG POKéMON that lives\n"
.string "only around here!$"
-Text_17C0F2:: @ 817C0F2
+SixIsland_PatternBush_Text_GarretDefeat:: @ 817C0F2
.string "Heheh…\n"
.string "Isn't my POKéMON awesome?$"
-gUnknown_817C113:: @ 817C113
+SixIsland_PatternBush_Text_GarretPostBattle:: @ 817C113
.string "There's a girl near the BUSH who\n"
.string "measures HERACROSS for TRAINERS.$"
-Text_17C155:: @ 817C155
+SixIsland_PatternBush_Text_JonahIntro:: @ 817C155
.string "You know, it just doesn't feel right\n"
.string "if I don't use BUG POKéMON.$"
-Text_17C196:: @ 817C196
+SixIsland_PatternBush_Text_JonahDefeat:: @ 817C196
.string "It's okay, losing is a fun part of\n"
.string "POKéMON's appeal, too.$"
-gUnknown_817C1D0:: @ 817C1D0
+SixIsland_PatternBush_Text_JonahPostBattle:: @ 817C1D0
.string "By the way, “appeal” is a weird\n"
.string "word, if you think about it.\p"
.string "Like, is it like an orange peel?\n"
.string "Or like a ringing bell?$"
-Text_17C246:: @ 817C246
+SixIsland_PatternBush_Text_VanceIntro:: @ 817C246
.string "Yeah, yeah, yeah!\n"
.string "Look at all the BUG POKéMON!$"
-Text_17C275:: @ 817C275
+SixIsland_PatternBush_Text_VanceDefeat:: @ 817C275
.string "I got beat while I was still busy\n"
.string "celebrating!$"
-gUnknown_817C2A4:: @ 817C2A4
+SixIsland_PatternBush_Text_VancePostBattle:: @ 817C2A4
.string "I'm going to bring my little brother\n"
.string "here next time.$"
-Text_17C2D9:: @ 817C2D9
+SixIsland_PatternBush_Text_NashIntro:: @ 817C2D9
.string "Look, look! There are funny\n"
.string "patterns on the ground.$"
-Text_17C30D:: @ 817C30D
+SixIsland_PatternBush_Text_NashDefeat:: @ 817C30D
.string "Super awesome!$"
-gUnknown_817C31C:: @ 817C31C
+SixIsland_PatternBush_Text_NashPostBattle:: @ 817C31C
.string "The funny patterns on the ground…\p"
.string "They look like the patterns on my\n"
.string "grandpa's clothes.$"
-Text_17C373:: @ 817C373
+SixIsland_PatternBush_Text_CordellIntro:: @ 817C373
.string "I bet you think I'm just some guy,\n"
.string "don't you, eh?$"
-Text_17C3A5:: @ 817C3A5
+SixIsland_PatternBush_Text_CordellDefeat:: @ 817C3A5
.string "I bet you think I'm weak,\n"
.string "don't you, eh?$"
-gUnknown_817C3CE:: @ 817C3CE
+SixIsland_PatternBush_Text_CordellPostBattle:: @ 817C3CE
.string "Ayup, you townies come around all\n"
.string "so dandy with a hat that flashy…\p"
.string "How about giving me that?$"
-Text_17C42B:: @ 817C42B
+SixIsland_PatternBush_Text_DaliaIntro:: @ 817C42B
.string "Take a deep breath.\n"
.string "Isn't the air delicious?$"
-Text_17C458:: @ 817C458
+SixIsland_PatternBush_Text_DaliaDefeat:: @ 817C458
.string "If you'd like, I can teach you how\n"
.string "to breathe properly.$"
-gUnknown_817C490:: @ 817C490
+SixIsland_PatternBush_Text_DaliaPostBattle:: @ 817C490
.string "First, exhale.\n"
.string "Blow everything out.\p"
.string "When you can't exhale anymore,\n"
.string "inhale the clean air!\p"
.string "Isn't it refreshing?$"
-Text_17C4FE:: @ 817C4FE
+SixIsland_PatternBush_Text_JoanaIntro:: @ 817C4FE
.string "I love BUG POKéMON.\n"
.string "That's why I'm here all the time.\p"
.string "Am I the only girl like that?$"
-Text_17C552:: @ 817C552
+SixIsland_PatternBush_Text_JoanaDefeat:: @ 817C552
.string "I lost, but I'm still laughing.\n"
.string "Am I the only girl like that?$"
-gUnknown_817C590:: @ 817C590
+SixIsland_PatternBush_Text_JoanaPostBattle:: @ 817C590
.string "I'm going to keep on collecting\n"
.string "BUG POKéMON.\p"
.string "Am I the only girl like that?$"
-Text_17C5DB:: @ 817C5DB
+SixIsland_PatternBush_Text_RileyIntro:: @ 817C5DB
.string "This is a good spot.\n"
.string "I'll pitch my tent here.$"
-Text_17C609:: @ 817C609
+SixIsland_PatternBush_Text_RileyDefeat:: @ 817C609
.string "Wimped out…$"
-gUnknown_817C615:: @ 817C615
+SixIsland_PatternBush_Text_RileyPostBattle:: @ 817C615
.string "I'm going to observe the night sky\n"
.string "here.$"
-Text_17C63E:: @ 817C63E
+SixIsland_PatternBush_Text_MarcyIntro:: @ 817C63E
.string "Oh, yuck!\n"
.string "I think a bug stung me!$"
-Text_17C660:: @ 817C660
+SixIsland_PatternBush_Text_MarcyDefeat:: @ 817C660
.string "It wasn't a bug.\n"
.string "I cut my shin on some grass.$"
-gUnknown_817C68E:: @ 817C68E
+SixIsland_PatternBush_Text_MarcyPostBattle:: @ 817C68E
.string "A little cut like that…\n"
.string "A little spit's enough to cure it!$"
-Text_17C6C9:: @ 817C6C9
+SixIsland_PatternBush_Text_LaytonIntro:: @ 817C6C9
.string "Have you noticed something odd\n"
.string "about these parts?$"
-Text_17C6FB:: @ 817C6FB
+SixIsland_PatternBush_Text_LaytonDefeat:: @ 817C6FB
.string "Have you taken a good look around\n"
.string "your feet?$"
-gUnknown_817C728:: @ 817C728
+SixIsland_PatternBush_Text_LaytonPostBattle:: @ 817C728
.string "There are places here in PATTERN\n"
.string "BUSH where grass won't grow.\p"
.string "What could be the cause of such\n"
diff --git a/data/maps/SixIsland_PokemonCenter_1F/map.json b/data/maps/SixIsland_PokemonCenter_1F/map.json
index c866b4299..43a16ad00 100644
--- a/data/maps/SixIsland_PokemonCenter_1F/map.json
+++ b/data/maps/SixIsland_PokemonCenter_1F/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_PokemonCenter_1F_EventScript_171E05",
+ "script": "SixIsland_PokemonCenter_1F_EventScript_Nurse",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_PokemonCenter_1F_EventScript_171E0E",
+ "script": "SixIsland_PokemonCenter_1F_EventScript_Hiker",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_PokemonCenter_1F_EventScript_171E17",
+ "script": "SixIsland_PokemonCenter_1F_EventScript_OldMan",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_PokemonCenter_1F/scripts.inc b/data/maps/SixIsland_PokemonCenter_1F/scripts.inc
index 6bde430ab..72134595e 100644
--- a/data/maps/SixIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/SixIsland_PokemonCenter_1F/scripts.inc
@@ -1,3 +1,5 @@
+.equ LOCALID_RIVAL, 2
+
SixIsland_PokemonCenter_1F_MapScripts:: @ 8171D6A
map_script MAP_SCRIPT_ON_TRANSITION, SixIsland_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -7,73 +9,73 @@ SixIsland_PokemonCenter_1F_MapScripts:: @ 8171D6A
SixIsland_PokemonCenter_1F_OnTransition:: @ 8171D7A
setrespawn SPAWN_SIX_ISLAND
compare VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F, 0
- call_if_eq EventScript_171D89
+ call_if_eq SixIsland_PokemonCenter_1F_EventScript_ShowRival
end
-EventScript_171D89:: @ 8171D89
+SixIsland_PokemonCenter_1F_EventScript_ShowRival:: @ 8171D89
clearflag FLAG_HIDE_SIX_ISLAND_POKECENTER_RIVAL
return
SixIsland_PokemonCenter_1F_OnFrame:: @ 8171D8D
- map_script_2 VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F, 0, EventScript_171D97
+ map_script_2 VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F, 0, SixIsland_PokemonCenter_1F_EventScript_RivalScene
.2byte 0
-EventScript_171D97:: @ 8171D97
+SixIsland_PokemonCenter_1F_EventScript_RivalScene:: @ 8171D97
lockall
textcolor 0
- applymovement 2, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_RIVAL, Movement_WalkInPlaceFastestDown
waitmovement 0
playbgm MUS_RIVAL1, 0
- applymovement 2, Movement_ExclamationMark
+ applymovement LOCALID_RIVAL, Movement_ExclamationMark
waitmovement 0
- applymovement 2, Movement_Delay48
+ applymovement LOCALID_RIVAL, Movement_Delay48
waitmovement 0
delay 25
- applymovement 2, Movement_171DF9
+ applymovement LOCALID_RIVAL, SixIsland_PokemonCenter_1F_Movement_RivalApproach
waitmovement 0
- msgbox gUnknown_81A3F30
+ msgbox SixIsland_PokemonCenter_1F_Text_RivalImpossibleToGetAllMonsAroundHere
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_171E02
- applymovement 2, Movement_171DFE
+ applymovement OBJ_EVENT_ID_PLAYER, SixIsland_PokemonCenter_1F_Movement_PlayerWatchRivalExit
+ applymovement LOCALID_RIVAL, SixIsland_PokemonCenter_1F_Movement_RivalExit
waitmovement 0
fadedefaultbgm
playse SE_KAIDAN
delay 35
- removeobject 2
+ removeobject LOCALID_RIVAL
setvar VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F, 1
setvar VAR_MAP_SCENE_FOUR_ISLAND, 1
releaseall
end
-Movement_171DF9:: @ 8171DF9
+SixIsland_PokemonCenter_1F_Movement_RivalApproach:: @ 8171DF9
walk_right
walk_right
walk_down
walk_down
step_end
-Movement_171DFE:: @ 8171DFE
+SixIsland_PokemonCenter_1F_Movement_RivalExit:: @ 8171DFE
delay_16
delay_4
walk_down
step_end
-Movement_171E02:: @ 8171E02
+SixIsland_PokemonCenter_1F_Movement_PlayerWatchRivalExit:: @ 8171E02
walk_left
walk_in_place_fastest_right
step_end
-SixIsland_PokemonCenter_1F_EventScript_171E05:: @ 8171E05
+SixIsland_PokemonCenter_1F_EventScript_Nurse:: @ 8171E05
lock
faceplayer
call EventScript_PkmnCenterNurse
release
end
-SixIsland_PokemonCenter_1F_EventScript_171E0E:: @ 8171E0E
- msgbox gUnknown_81A3E02, MSGBOX_NPC
+SixIsland_PokemonCenter_1F_EventScript_Hiker:: @ 8171E0E
+ msgbox SixIsland_PokemonCenter_1F_Text_SomethingHiddenOnThisIsland, MSGBOX_NPC
end
-SixIsland_PokemonCenter_1F_EventScript_171E17:: @ 8171E17
- msgbox gUnknown_81A3E87, MSGBOX_NPC
+SixIsland_PokemonCenter_1F_EventScript_OldMan:: @ 8171E17
+ msgbox SixIsland_PokemonCenter_1F_Text_SomeMonsEvolveByTradingWithHeldItem, MSGBOX_NPC
end
diff --git a/data/maps/SixIsland_PokemonCenter_1F/text.inc b/data/maps/SixIsland_PokemonCenter_1F/text.inc
index a7b4f3336..170a0e011 100644
--- a/data/maps/SixIsland_PokemonCenter_1F/text.inc
+++ b/data/maps/SixIsland_PokemonCenter_1F/text.inc
@@ -1,11 +1,11 @@
-gUnknown_81A3E02:: @ 81A3E02
+SixIsland_PokemonCenter_1F_Text_SomethingHiddenOnThisIsland:: @ 81A3E02
.string "For ten years, I've searched for\n"
.string "RUINS.\p"
.string "No, make that twenty years.\p"
.string "I get this feeling that there's\n"
.string "something hidden on this island.$"
-gUnknown_81A3E87:: @ 81A3E87
+SixIsland_PokemonCenter_1F_Text_SomeMonsEvolveByTradingWithHeldItem:: @ 81A3E87
.string "You know of POKéMON that evolve\n"
.string "only upon trading, yes?\p"
.string "But did you know that there are\n"
@@ -13,7 +13,7 @@ gUnknown_81A3E87:: @ 81A3E87
.string "Some POKéMON evolve only when\n"
.string "traded while holding specific items.$"
-gUnknown_81A3F30:: @ 81A3F30
+SixIsland_PokemonCenter_1F_Text_RivalImpossibleToGetAllMonsAroundHere:: @ 81A3F30
.string "{RIVAL}: Hey, {PLAYER}!\n"
.string "How's your POKéDEX filling up?\p"
.string "It looks like it's impossible to get\n"
diff --git a/data/maps/SixIsland_RuinValley/map.json b/data/maps/SixIsland_RuinValley/map.json
index f800f0d0d..bb63d3db3 100644
--- a/data/maps/SixIsland_RuinValley/map.json
+++ b/data/maps/SixIsland_RuinValley/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_RuinValley_EventScript_168B6D",
+ "script": "SixIsland_RuinValley_EventScript_Scientist",
"flag": "FLAG_HIDE_RUIN_VALLEY_SCIENTIST"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 4,
- "script": "SixIsland_RuinValley_EventScript_1AC717",
+ "script": "SixIsland_RuinValley_EventScript_Stanly",
"flag": "0"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_RuinValley_EventScript_1AC755",
+ "script": "SixIsland_RuinValley_EventScript_Foster",
"flag": "0"
},
{
@@ -70,7 +70,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_RuinValley_EventScript_1AC793",
+ "script": "SixIsland_RuinValley_EventScript_Larry",
"flag": "0"
},
{
@@ -83,7 +83,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "SixIsland_RuinValley_EventScript_1AC7D1",
+ "script": "SixIsland_RuinValley_EventScript_Daryl",
"flag": "0"
},
{
@@ -96,7 +96,7 @@
"movement_range_y": 3,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_RuinValley_EventScript_1AC80F",
+ "script": "SixIsland_RuinValley_EventScript_Hector",
"flag": "0"
},
{
@@ -259,7 +259,7 @@
"x": 24,
"y": 24,
"elevation": 3,
- "script": "SixIsland_RuinValley_EventScript_168B94"
+ "script": "SixIsland_RuinValley_EventScript_DottedHoleDoor"
}
]
}
diff --git a/data/maps/SixIsland_RuinValley/scripts.inc b/data/maps/SixIsland_RuinValley/scripts.inc
index 9dadf5525..48888b357 100644
--- a/data/maps/SixIsland_RuinValley/scripts.inc
+++ b/data/maps/SixIsland_RuinValley/scripts.inc
@@ -3,42 +3,42 @@ SixIsland_RuinValley_MapScripts:: @ 8168B53
.byte 0
SixIsland_RuinValley_OnLoad:: @ 8168B59
- call_if_set FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE, EventScript_168B63
+ call_if_set FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE, SixIsland_RuinValley_EventScript_OpenDottedHoleDoor
end
-EventScript_168B63:: @ 8168B63
- setmetatile 24, 24, 856, 0
+SixIsland_RuinValley_EventScript_OpenDottedHoleDoor:: @ 8168B63
+ setmetatile 24, 24, METATILE_SeviiIslands67_DottedHoleDoor_Open, 0
return
-SixIsland_RuinValley_EventScript_168B6D:: @ 8168B6D
+SixIsland_RuinValley_EventScript_Scientist:: @ 8168B6D
lock
- msgbox gUnknown_818BD47
+ msgbox SixIsland_RuinValley_Text_CantFigureOutHowToGetInside
applymovement 1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_818BD7A
+ msgbox SixIsland_RuinValley_Text_IFoundThisPlace
applymovement 1, Movement_FaceOriginalDirection
waitmovement 0
release
end
-SixIsland_RuinValley_EventScript_168B94:: @ 8168B94
+SixIsland_RuinValley_EventScript_DottedHoleDoor:: @ 8168B94
lockall
- goto_if_set FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE, EventScript_168BC1
- msgbox gUnknown_818BDC0, MSGBOX_YESNO
+ goto_if_set FLAG_USED_CUT_ON_RUIN_VALLEY_BRAILLE, SixIsland_RuinValley_EventScript_DottedHoleDoorOpen
+ msgbox SixIsland_RuinValley_Text_CheckDoorMoreThoroughly, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_168BCB
- msgbox gUnknown_818BE11
+ goto_if_eq SixIsland_RuinValley_EventScript_IgnoreDottedHoleDoor
+ msgbox SixIsland_RuinValley_Text_SeveralDotsOnTheDoor
braillemessage Braille_Text_Cut
waitbuttonpress
releaseall
end
-EventScript_168BC1:: @ 8168BC1
- msgbox gUnknown_818BE4B
+SixIsland_RuinValley_EventScript_DottedHoleDoorOpen:: @ 8168BC1
+ msgbox SixIsland_RuinValley_Text_DoorIsOpen
releaseall
end
-EventScript_168BCB:: @ 8168BCB
- msgbox gUnknown_818BDF9
+SixIsland_RuinValley_EventScript_IgnoreDottedHoleDoor:: @ 8168BCB
+ msgbox SixIsland_RuinValley_Text_LeftDoorAlone
releaseall
end
diff --git a/data/maps/SixIsland_RuinValley/text.inc b/data/maps/SixIsland_RuinValley/text.inc
index 14cee7a88..63524bb19 100644
--- a/data/maps/SixIsland_RuinValley/text.inc
+++ b/data/maps/SixIsland_RuinValley/text.inc
@@ -1,23 +1,87 @@
-gUnknown_818BD47:: @ 818BD47
+SixIsland_RuinValley_Text_CantFigureOutHowToGetInside:: @ 818BD47
.string "I can't figure out how I'm supposed\n"
.string "to get inside.$"
-gUnknown_818BD7A:: @ 818BD7A
+SixIsland_RuinValley_Text_IFoundThisPlace:: @ 818BD7A
.string "Let me tell you, I found this\n"
.string "place.\p"
.string "Don't look so envious, will you?$"
-gUnknown_818BDC0:: @ 818BDC0
+SixIsland_RuinValley_Text_CheckDoorMoreThoroughly:: @ 818BDC0
.string "The door doesn't budge at all.\n"
.string "Check it more thoroughly?$"
-gUnknown_818BDF9:: @ 818BDF9
+SixIsland_RuinValley_Text_LeftDoorAlone:: @ 818BDF9
.string "{PLAYER} left the door alone.$"
-gUnknown_818BE11:: @ 818BE11
+SixIsland_RuinValley_Text_SeveralDotsOnTheDoor:: @ 818BE11
.string "On closer inspection, there are\n"
.string "several dots on the door…$"
-gUnknown_818BE4B:: @ 818BE4B
+SixIsland_RuinValley_Text_DoorIsOpen:: @ 818BE4B
.string "The door is open.$"
+SixIsland_RuinValley_Text_StanlyIntro:: @ 818BE5D
+ .string "There appear to be many secrets\n"
+ .string "still unsolved in this world.$"
+
+SixIsland_RuinValley_Text_StanlyDefeat:: @ 818BE9B
+ .string "Hmm…$"
+
+SixIsland_RuinValley_Text_StanlyPostBattle:: @ 818BEA0
+ .string "I suggest to you that you, too,\n"
+ .string "give a thought to the secrets and\l"
+ .string "mysteries of our world once a day.$"
+
+SixIsland_RuinValley_Text_FosterIntro:: @ 818BF05
+ .string "I'm curious, what compelled you to\n"
+ .string "come here?$"
+
+SixIsland_RuinValley_Text_FosterDefeat:: @ 818BF33
+ .string "It's been so long since I battled,\n"
+ .string "my instincts are off.$"
+
+SixIsland_RuinValley_Text_FosterPostBattle:: @ 818BF6C
+ .string "There are several ruins on the\n"
+ .string "SEVII ISLANDS.\p"
+ .string "The majority of them date back\n"
+ .string "a long way.$"
+
+SixIsland_RuinValley_Text_LarryIntro:: @ 818BFC5
+ .string "It's been said that there are\n"
+ .string "mysterious stones on this island.\p"
+ .string "I suspect it has something to do\n"
+ .string "with the ruins here.$"
+
+SixIsland_RuinValley_Text_LarryDefeat:: @ 818C03B
+ .string "Oh, interesting.$"
+
+SixIsland_RuinValley_Text_LarryPostBattle:: @ 818C04C
+ .string "Those ruins over there…\p"
+ .string "I haven't had any luck in finding\n"
+ .string "how I can get inside.$"
+
+SixIsland_RuinValley_Text_DarylIntro:: @ 818C09C
+ .string "A battle with you, so high up!$"
+
+SixIsland_RuinValley_Text_DarylDefeat:: @ 818C0BB
+ .string "Oh, the heartbreak of losing so\n"
+ .string "easily to you!$"
+
+SixIsland_RuinValley_Text_DarylPostBattle:: @ 818C0EA
+ .string "Experience the joy of climbing!$"
+
+SixIsland_RuinValley_Text_HectorIntro:: @ 818C10A
+ .string "I'm pretty familiar with the land\n"
+ .string "around these parts.$"
+
+SixIsland_RuinValley_Text_HectorDefeat:: @ 818C140
+ .string "You don't need to be so pushy.\n"
+ .string "I'll be happy to tell you.$"
+
+SixIsland_RuinValley_Text_HectorPostBattle:: @ 818C17A
+ .string "The door to the ruins…\n"
+ .string "It has these strange patterns\l"
+ .string "engraved on the outside.\p"
+ .string "I don't know what they mean,\n"
+ .string "though.$"
diff --git a/data/maps/SixIsland_WaterPath/map.json b/data/maps/SixIsland_WaterPath/map.json
index 97e30aa5c..0aefb4478 100644
--- a/data/maps/SixIsland_WaterPath/map.json
+++ b/data/maps/SixIsland_WaterPath/map.json
@@ -41,7 +41,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_WaterPath_EventScript_1AC555",
+ "script": "SixIsland_WaterPath_EventScript_Rose",
"flag": "0"
},
{
@@ -54,7 +54,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 3,
- "script": "SixIsland_WaterPath_EventScript_1AC593",
+ "script": "SixIsland_WaterPath_EventScript_Edward",
"flag": "0"
},
{
@@ -67,7 +67,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 4,
- "script": "SixIsland_WaterPath_EventScript_1AC5D1",
+ "script": "SixIsland_WaterPath_EventScript_Samir",
"flag": "0"
},
{
@@ -80,7 +80,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_WaterPath_EventScript_1AC60F",
+ "script": "SixIsland_WaterPath_EventScript_Denise",
"flag": "0"
},
{
@@ -93,7 +93,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_WaterPath_EventScript_1AC64D",
+ "script": "SixIsland_WaterPath_EventScript_Miu",
"flag": "0"
},
{
@@ -106,7 +106,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "SixIsland_WaterPath_EventScript_1AC693",
+ "script": "SixIsland_WaterPath_EventScript_Mia",
"flag": "0"
},
{
@@ -119,7 +119,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 4,
- "script": "SixIsland_WaterPath_EventScript_1AC6D9",
+ "script": "SixIsland_WaterPath_EventScript_Earl",
"flag": "0"
},
{
@@ -172,7 +172,7 @@
"x": 8,
"y": 14,
"elevation": 0,
- "script": "SixIsland_WaterPath_EventScript_168B41"
+ "script": "SixIsland_WaterPath_EventScript_HornWantedSign"
},
{
"type": "hidden_item",
@@ -209,7 +209,7 @@
"x": 12,
"y": 54,
"elevation": 0,
- "script": "SixIsland_WaterPath_EventScript_168B4A"
+ "script": "SixIsland_WaterPath_EventScript_RouteSign"
}
]
}
diff --git a/data/maps/SixIsland_WaterPath/scripts.inc b/data/maps/SixIsland_WaterPath/scripts.inc
index 27f49d4aa..0df3fab4b 100644
--- a/data/maps/SixIsland_WaterPath/scripts.inc
+++ b/data/maps/SixIsland_WaterPath/scripts.inc
@@ -1,10 +1,10 @@
SixIsland_WaterPath_MapScripts:: @ 8168B40
.byte 0
-SixIsland_WaterPath_EventScript_168B41:: @ 8168B41
- msgbox gUnknown_818BD0C, MSGBOX_SIGN
+SixIsland_WaterPath_EventScript_HornWantedSign:: @ 8168B41
+ msgbox SixIsland_WaterPath_Text_WantedUltimateHorn, MSGBOX_SIGN
end
-SixIsland_WaterPath_EventScript_168B4A:: @ 8168B4A
- msgbox gUnknown_818BD27, MSGBOX_SIGN
+SixIsland_WaterPath_EventScript_RouteSign:: @ 8168B4A
+ msgbox SixIsland_WaterPath_Text_RouteSign, MSGBOX_SIGN
end
diff --git a/data/maps/SixIsland_WaterPath/text.inc b/data/maps/SixIsland_WaterPath/text.inc
index 70a8ce017..7ee28923a 100644
--- a/data/maps/SixIsland_WaterPath/text.inc
+++ b/data/maps/SixIsland_WaterPath/text.inc
@@ -1,102 +1,102 @@
-Text_18B896:: @ 818B896
+SixIsland_WaterPath_Text_RoseIntro:: @ 818B896
.string "I let a pleasant breeze lead me\n"
.string "all the way here.$"
-Text_18B8C8:: @ 818B8C8
+SixIsland_WaterPath_Text_RoseDefeat:: @ 818B8C8
.string "Giggle… You're so cute when you're\n"
.string "determined.$"
-Text_18B8F7:: @ 818B8F7
+SixIsland_WaterPath_Text_RosePostBattle:: @ 818B8F7
.string "I want to go to the woods over\n"
.string "there, but…\p"
.string "There are lots of BUG POKéMON.\n"
.string "They scare me a little.$"
-Text_18B959:: @ 818B959
+SixIsland_WaterPath_Text_EdwardIntro:: @ 818B959
.string "I'm practicing in secret so no one\n"
.string "can see me.$"
-Text_18B988:: @ 818B988
+SixIsland_WaterPath_Text_EdwardDefeat:: @ 818B988
.string "Nobody saw me losing, right?$"
-Text_18B9A5:: @ 818B9A5
+SixIsland_WaterPath_Text_EdwardPostBattle:: @ 818B9A5
.string "As a performer, I don't want people\n"
.string "to know about the effort I put in.$"
-Text_18B9EC:: @ 818B9EC
+SixIsland_WaterPath_Text_SamirIntro:: @ 818B9EC
.string "What, you're suggesting that you're\n"
.string "sick of seeing SWIMMERS like me?\p"
.string "Aww, don't be hatin'!$"
-Text_18BA47:: @ 818BA47
+SixIsland_WaterPath_Text_SamirDefeat:: @ 818BA47
.string "Oh, no, no, no.$"
-Text_18BA57:: @ 818BA57
+SixIsland_WaterPath_Text_SamirPostBattle:: @ 818BA57
.string "I couldn't lift the stigma of being\n"
.string "a SWIMMER…$"
-Text_18BA86:: @ 818BA86
+SixIsland_WaterPath_Text_DeniseIntro:: @ 818BA86
.string "My boyfriend's always busy, so I\n"
.string "come swimming by myself.$"
-Text_18BAC0:: @ 818BAC0
+SixIsland_WaterPath_Text_DeniseDefeat:: @ 818BAC0
.string "Awww, I knew this would happen!$"
-Text_18BAE0:: @ 818BAE0
+SixIsland_WaterPath_Text_DenisePostBattle:: @ 818BAE0
.string "When I can't be with my boyfriend,\n"
.string "I spend time with the POKéMON he\l"
.string "gave me.$"
-Text_18BB2D:: @ 818BB2D
+SixIsland_WaterPath_Text_EarlIntro:: @ 818BB2D
.string "Tell me, where are the mountains\n"
.string "around these parts?$"
-Text_18BB62:: @ 818BB62
+SixIsland_WaterPath_Text_EarlDefeat:: @ 818BB62
.string "I lost my way while I was busy\n"
.string "battling!$"
-Text_18BB8B:: @ 818BB8B
+SixIsland_WaterPath_Text_EarlPostBattle:: @ 818BB8B
.string "Aren't there any mountains around\n"
.string "these parts?$"
-Text_18BBBA:: @ 818BBBA
+SixIsland_WaterPath_Text_MiuIntro:: @ 818BBBA
.string "MIU: Hello, POKéMON!\n"
.string "It's time to play!$"
-Text_18BBE2:: @ 818BBE2
+SixIsland_WaterPath_Text_MiuDefeat:: @ 818BBE2
.string "MIU: Oh, no!\n"
.string "Mommy!$"
-Text_18BBF6:: @ 818BBF6
+SixIsland_WaterPath_Text_MiuPostBattle:: @ 818BBF6
.string "MIU: It makes me all sad inside\n"
.string "when we lose…$"
-Text_18BC24:: @ 818BC24
+SixIsland_WaterPath_Text_MiuNotEnoughMons:: @ 818BC24
.string "MIU: MIA and I are TWINS.\n"
.string "We want to battle together.$"
-Text_18BC5A:: @ 818BC5A
+SixIsland_WaterPath_Text_MiaIntro:: @ 818BC5A
.string "MIA: Hello, POKéMON!\n"
.string "It's time to battle!$"
-Text_18BC84:: @ 818BC84
+SixIsland_WaterPath_Text_MiaDefeat:: @ 818BC84
.string "MIA: You're mean!\n"
.string "You're bad for winning!$"
-Text_18BCAE:: @ 818BCAE
+SixIsland_WaterPath_Text_MiaPostBattle:: @ 818BCAE
.string "MIA: Ohh…\n"
.string "I'm sorry, my POKéMON…$"
-Text_18BCCF:: @ 818BCCF
+SixIsland_WaterPath_Text_MiaNotEnoughMons:: @ 818BCCF
.string "MIA: Oh, you only have one\n"
.string "POKéMON?\p"
.string "Don't you feel lonesome?$"
-gUnknown_818BD0C:: @ 818BD0C
+SixIsland_WaterPath_Text_WantedUltimateHorn:: @ 818BD0C
.string "Wanted!\n"
.string "The Ultimate Horn!$"
-gUnknown_818BD27:: @ 818BD27
+SixIsland_WaterPath_Text_RouteSign:: @ 818BD27
.string "WATER PATH\n"
.string "Leads to RUIN VALLEY$"
diff --git a/data/maps/SixIsland_WaterPath_House1/map.json b/data/maps/SixIsland_WaterPath_House1/map.json
index 84a650469..cb9a39991 100644
--- a/data/maps/SixIsland_WaterPath_House1/map.json
+++ b/data/maps/SixIsland_WaterPath_House1/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_WaterPath_House1_EventScript_17206D",
+ "script": "SixIsland_WaterPath_House1_EventScript_Beauty",
"flag": "0"
}
],
@@ -45,7 +45,7 @@
"x": 9,
"y": 1,
"elevation": 0,
- "script": "SixIsland_WaterPath_House1_EventScript_172157"
+ "script": "SixIsland_WaterPath_House1_EventScript_SizeRecord"
}
]
}
diff --git a/data/maps/SixIsland_WaterPath_House1/scripts.inc b/data/maps/SixIsland_WaterPath_House1/scripts.inc
index a8efb4608..173179ac3 100644
--- a/data/maps/SixIsland_WaterPath_House1/scripts.inc
+++ b/data/maps/SixIsland_WaterPath_House1/scripts.inc
@@ -1,84 +1,84 @@
SixIsland_WaterPath_House1_MapScripts:: @ 817206C
.byte 0
-SixIsland_WaterPath_House1_EventScript_17206D:: @ 817206D
+SixIsland_WaterPath_House1_EventScript_Beauty:: @ 817206D
lock
faceplayer
goto_if_questlog EventScript_ReleaseEnd
special sub_8112364
setvar VAR_0x8004, SPECIES_HERACROSS
specialvar VAR_RESULT, Special_PlayerPartyContainsSpecies
- compare VAR_RESULT, 0
- goto_if_eq EventScript_1720E5
+ compare VAR_RESULT, FALSE
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_NoHeracrossInParty
special GetHeracrossSizeRecordInfo
- msgbox gUnknown_81A4A3F
+ msgbox SixIsland_WaterPath_House1_Text_MayIMeasureHeracross
special Special_ChooseMonFromParty
waitstate
copyvar VAR_RESULT, VAR_0x8004
- compare VAR_RESULT, 6
- goto_if_ge EventScript_1720EF
+ compare VAR_RESULT, PARTY_SIZE
+ goto_if_ge SixIsland_WaterPath_House1_EventScript_DontShowMon
special CompareHeracrossSize
compare VAR_RESULT, 1
- goto_if_eq EventScript_1720F1
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_ShownNonHeracross
compare VAR_RESULT, 2
- goto_if_eq EventScript_1720FB
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_ShownSmallHeracross
compare VAR_RESULT, 3
- goto_if_eq EventScript_172121
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_ShownBigHeracross
compare VAR_RESULT, 4
- goto_if_eq EventScript_17210E
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_ShownTiedHeracross
release
end
-EventScript_1720E5:: @ 81720E5
- msgbox gUnknown_81A49E9
+SixIsland_WaterPath_House1_EventScript_NoHeracrossInParty:: @ 81720E5
+ msgbox SixIsland_WaterPath_House1_Text_LoveItNeedItHeracross
release
end
-EventScript_1720EF:: @ 81720EF
+SixIsland_WaterPath_House1_EventScript_DontShowMon:: @ 81720EF
release
end
-EventScript_1720F1:: @ 81720F1
- msgbox gUnknown_81A4BEF
+SixIsland_WaterPath_House1_EventScript_ShownNonHeracross:: @ 81720F1
+ msgbox SixIsland_WaterPath_House1_Text_ThisWontDo
release
end
-EventScript_1720FB:: @ 81720FB
- goto_if_unset FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, EventScript_172121
- msgbox gUnknown_81A4B7A
+SixIsland_WaterPath_House1_EventScript_ShownSmallHeracross:: @ 81720FB
+ goto_if_unset FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, SixIsland_WaterPath_House1_EventScript_ShownBigHeracross
+ msgbox SixIsland_WaterPath_House1_Text_ItsXInchesYInchesWasBiggest
release
end
-EventScript_17210E:: @ 817210E
- goto_if_unset FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, EventScript_172121
- msgbox gUnknown_81A4B39
+SixIsland_WaterPath_House1_EventScript_ShownTiedHeracross:: @ 817210E
+ goto_if_unset FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, SixIsland_WaterPath_House1_EventScript_ShownBigHeracross
+ msgbox SixIsland_WaterPath_House1_Text_ItsXInchesSameAsBefore
release
end
-EventScript_172121:: @ 8172121
+SixIsland_WaterPath_House1_EventScript_ShownBigHeracross:: @ 8172121
setflag FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1
- msgbox gUnknown_81A4A88
+ msgbox SixIsland_WaterPath_House1_Text_ItsXInchesDeserveReward
giveitem ITEM_NEST_BALL
- compare VAR_RESULT, 0
- goto_if_eq EventScript_17214D
- msgbox gUnknown_81A4AD9
+ compare VAR_RESULT, FALSE
+ goto_if_eq SixIsland_WaterPath_House1_EventScript_NoRoomForNestBall
+ msgbox SixIsland_WaterPath_House1_Text_WantToSeeBiggerOne
release
end
-EventScript_17214D:: @ 817214D
- msgbox gUnknown_81A4C47
+SixIsland_WaterPath_House1_EventScript_NoRoomForNestBall:: @ 817214D
+ msgbox SixIsland_WaterPath_House1_Text_YourBagIsFull
release
end
-SixIsland_WaterPath_House1_EventScript_172157:: @ 8172157
+SixIsland_WaterPath_House1_EventScript_SizeRecord:: @ 8172157
lockall
- goto_if_set FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, EventScript_17216B
- msgbox gUnknown_81A4CB9
+ goto_if_set FLAG_GOT_NEST_BALL_FROM_WATER_PATH_HOUSE_1, SixIsland_WaterPath_House1_EventScript_SizeRecordNonEmpty
+ msgbox SixIsland_WaterPath_House1_Text_BlankChartOfSomeSort
releaseall
end
-EventScript_17216B:: @ 817216B
+SixIsland_WaterPath_House1_EventScript_SizeRecordNonEmpty:: @ 817216B
special GetHeracrossSizeRecordInfo
- msgbox gUnknown_81A4C6E
+ msgbox SixIsland_WaterPath_House1_Text_BiggestHeracrossIsXInches
releaseall
end
diff --git a/data/maps/SixIsland_WaterPath_House1/text.inc b/data/maps/SixIsland_WaterPath_House1/text.inc
index 4c32a80ff..a7e61b961 100644
--- a/data/maps/SixIsland_WaterPath_House1/text.inc
+++ b/data/maps/SixIsland_WaterPath_House1/text.inc
@@ -1,104 +1,50 @@
-Text_UltimateMoveThatMon:: @ 81A46C6
- .string "I perfected the ultimate move of\n"
- .string "its type…\p"
- .string "But will no one take it for\n"
- .string "future use?\p"
- .string "…Hm? Hmmm!\p"
- .string "Y-you…\n"
- .string "Th-that {STR_VAR_1}…$"
-
-Text_JustMistaken:: @ 81A4737
- .string "…No…\n"
- .string "I was just mistaken.$"
-
-Text_AllowMeToTeachMonUltimateMove:: @ 81A4751
- .string "Oh! This is the one!\n"
- .string "This is the POKéMON!\p"
- .string "This {STR_VAR_1} is worthy of\n"
- .string "learning my ultimate move!\p"
- .string "Will you allow it?\p"
- .string "Will you allow your {STR_VAR_1} to\n"
- .string "learn my {STR_VAR_2}?$"
-
-Text_YouRejectIt:: @ 81A47E5
- .string "Gaah! You reject it?\n"
- .string "No, I won't be dissuaded!$"
-
-Text_LetMeConferUltimateMove:: @ 81A4814
- .string "You will allow it?\p"
- .string "Then, let me confer my ultimate\n"
- .string "{STR_VAR_2} on your {STR_VAR_1}.\p"
- .string "Ggggrah-awooo!$"
-
-Text_TaughtMove:: @ 81A4865
- .string "Gasp, gasp, gasp…\p"
- .string "I didn't think I could teach that\n"
- .string "move while I still lived…$"
-
-Text_MakeBestUseOfMove:: @ 81A48B3
- .string "I implore you to make the best\n"
- .string "use of that move and gain power!$"
-
-Text_PassedOnEverythingIKnow:: @ 81A48F3
- .string "Gasp, gasp, gasp…\p"
- .string "I have no regrets now.\n"
- .string "I've passed on everything I know.\p"
- .string "Now I can live out my life knowing\n"
- .string "my work is done.$"
-
-Text_FeelRejuvenated:: @ 81A4972
- .string "After I passed on my knowledge to\n"
- .string "you, I felt so much relief.\p"
- .string "In fact, I feel rejuvenated,\n"
- .string "as if I were younger again!$"
-
-gUnknown_81A49E9:: @ 81A49E9
+SixIsland_WaterPath_House1_Text_LoveItNeedItHeracross:: @ 81A49E9
.string "Hera, hera, HERACROSS!\n"
.string "Big and shiny, it's the bug boss!\l"
.string "Love it, need it, HERACROSS!$"
-gUnknown_81A4A3F:: @ 81A4A3F
+SixIsland_WaterPath_House1_Text_MayIMeasureHeracross:: @ 81A4A3F
.string "Eeeeek!\n"
.string "That's a HERACROSS!\p"
.string "Please, please, may I measure how\n"
.string "big it is?$"
-gUnknown_81A4A88:: @ 81A4A88
+SixIsland_WaterPath_House1_Text_ItsXInchesDeserveReward:: @ 81A4A88
.string "Eeeek, it's {STR_VAR_2} inches!\n"
.string "I've never seen anything like this!\l"
.string "You deserve a reward!$"
-gUnknown_81A4AD9:: @ 81A4AD9
+SixIsland_WaterPath_House1_Text_WantToSeeBiggerOne:: @ 81A4AD9
.string "I want to see a much, much bigger\n"
.string "HERACROSS than that one.\p"
.string "Oh, how I adore them, big\n"
.string "HERACROSS!$"
-gUnknown_81A4B39:: @ 81A4B39
+SixIsland_WaterPath_House1_Text_ItsXInchesSameAsBefore:: @ 81A4B39
.string "Huh? This {STR_VAR_2}-inch measurement…\n"
.string "Oh, boo! It's the same as before.$"
-gUnknown_81A4B7A:: @ 81A4B7A
+SixIsland_WaterPath_House1_Text_ItsXInchesYInchesWasBiggest:: @ 81A4B7A
.string "Oh, it's just {STR_VAR_2} inches.\n"
.string "The HERACROSS before was bigger.\p"
.string "It was {STR_VAR_3} inches, the biggest\n"
.string "HERACROSS you've brought me.$"
-gUnknown_81A4BEF:: @ 81A4BEF
+SixIsland_WaterPath_House1_Text_ThisWontDo:: @ 81A4BEF
.string "Oh, no! This won't do!\p"
.string "HERACROSS looks much more macho\n"
.string "and cool, and has a lovely horn!$"
-gUnknown_81A4C47:: @ 81A4C47
+SixIsland_WaterPath_House1_Text_YourBagIsFull:: @ 81A4C47
.string "Your BAG is full.\n"
.string "My reward won't fit.$"
-gUnknown_81A4C6E:: @ 81A4C6E
+SixIsland_WaterPath_House1_Text_BiggestHeracrossIsXInches:: @ 81A4C6E
.string "The biggest HERACROSS that I have\n"
.string "ever seen measured so far is:\p"
.string "{STR_VAR_3} inches!$"
-gUnknown_81A4CB9:: @ 81A4CB9
+SixIsland_WaterPath_House1_Text_BlankChartOfSomeSort:: @ 81A4CB9
.string "It's a blank chart of some sort.\p"
.string "It has spaces for writing in\n"
.string "records of some kind.$"
diff --git a/data/maps/SixIsland_WaterPath_House2/map.json b/data/maps/SixIsland_WaterPath_House2/map.json
index 9dcdbd976..200475e2d 100644
--- a/data/maps/SixIsland_WaterPath_House2/map.json
+++ b/data/maps/SixIsland_WaterPath_House2/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "SixIsland_WaterPath_House2_EventScript_172179",
+ "script": "SixIsland_WaterPath_House2_EventScript_Man",
"flag": "0"
}
],
diff --git a/data/maps/SixIsland_WaterPath_House2/scripts.inc b/data/maps/SixIsland_WaterPath_House2/scripts.inc
index 4cb8e9827..937fdd178 100644
--- a/data/maps/SixIsland_WaterPath_House2/scripts.inc
+++ b/data/maps/SixIsland_WaterPath_House2/scripts.inc
@@ -1,6 +1,6 @@
SixIsland_WaterPath_House2_MapScripts:: @ 8172178
.byte 0
-SixIsland_WaterPath_House2_EventScript_172179:: @ 8172179
- msgbox gUnknown_81A4D0D, MSGBOX_NPC
+SixIsland_WaterPath_House2_EventScript_Man:: @ 8172179
+ msgbox SixIsland_WaterPath_House2_Text_MyNeighborMeasuredMe, MSGBOX_NPC
end
diff --git a/data/maps/SixIsland_WaterPath_House2/text.inc b/data/maps/SixIsland_WaterPath_House2/text.inc
index 03c8e187b..19dd60965 100644
--- a/data/maps/SixIsland_WaterPath_House2/text.inc
+++ b/data/maps/SixIsland_WaterPath_House2/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A4D0D:: @ 81A4D0D
+SixIsland_WaterPath_House2_Text_MyNeighborMeasuredMe:: @ 81A4D0D
.string "My height is 67.0 inches on the\n"
.string "button.\p"
.string "I know it is this precisely because\n"
diff --git a/data/maps/ThreeIsland/map.json b/data/maps/ThreeIsland/map.json
index 9ccf2b29d..94e4ec4bf 100644
--- a/data/maps/ThreeIsland/map.json
+++ b/data/maps/ThreeIsland/map.json
@@ -36,7 +36,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677E5",
+ "script": "ThreeIsland_EventScript_AntiBiker1",
"flag": "FLAG_HIDE_THREE_ISLAND_ANTIBIKERS"
},
{
@@ -49,7 +49,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_167989",
+ "script": "ThreeIsland_EventScript_AntiBiker2",
"flag": "FLAG_HIDE_THREE_ISLAND_ANTIBIKERS"
},
{
@@ -62,7 +62,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_LONE_BIKER"
},
{
@@ -75,7 +75,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -88,7 +88,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -101,7 +101,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -114,7 +114,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -127,7 +127,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_1677D8",
+ "script": "ThreeIsland_EventScript_Biker",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -166,7 +166,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_167C77",
+ "script": "ThreeIsland_EventScript_Woman",
"flag": "0"
},
{
@@ -179,7 +179,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_167C80",
+ "script": "ThreeIsland_EventScript_LittleBoy",
"flag": "0"
},
{
@@ -192,7 +192,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_167C89",
+ "script": "ThreeIsland_EventScript_Doduo",
"flag": "0"
},
{
@@ -205,7 +205,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_EventScript_167CA5",
+ "script": "ThreeIsland_EventScript_Biker6",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
}
],
@@ -268,7 +268,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 2,
- "script": "ThreeIsland_EventScript_1679B5"
+ "script": "ThreeIsland_EventScript_BikerBossIntroTrigger"
},
{
"type": "trigger",
@@ -277,7 +277,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 2,
- "script": "ThreeIsland_EventScript_1679B5"
+ "script": "ThreeIsland_EventScript_BikerBossIntroTrigger"
},
{
"type": "trigger",
@@ -286,7 +286,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 2,
- "script": "ThreeIsland_EventScript_1679B5"
+ "script": "ThreeIsland_EventScript_BikerBossIntroTrigger"
},
{
"type": "trigger",
@@ -295,7 +295,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 2,
- "script": "ThreeIsland_EventScript_1679B5"
+ "script": "ThreeIsland_EventScript_BikerBossIntroTrigger"
},
{
"type": "trigger",
@@ -304,7 +304,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 3,
- "script": "ThreeIsland_EventScript_167A1D"
+ "script": "ThreeIsland_EventScript_BattleBikersTriggerLeft"
},
{
"type": "trigger",
@@ -313,7 +313,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 3,
- "script": "ThreeIsland_EventScript_167A29"
+ "script": "ThreeIsland_EventScript_BattleBikersTriggerMidLeft"
},
{
"type": "trigger",
@@ -322,7 +322,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 3,
- "script": "ThreeIsland_EventScript_167A35"
+ "script": "ThreeIsland_EventScript_BattleBikersTriggerMid"
},
{
"type": "trigger",
@@ -331,7 +331,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 2,
- "script": "ThreeIsland_EventScript_1679B5"
+ "script": "ThreeIsland_EventScript_BikerBossIntroTrigger"
},
{
"type": "trigger",
@@ -340,7 +340,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 3,
- "script": "ThreeIsland_EventScript_167A41"
+ "script": "ThreeIsland_EventScript_BattleBikersTriggerMidRight"
},
{
"type": "trigger",
@@ -349,7 +349,7 @@
"elevation": 3,
"var": "VAR_MAP_SCENE_THREE_ISLAND",
"var_value": 3,
- "script": "ThreeIsland_EventScript_167A4D"
+ "script": "ThreeIsland_EventScript_BattleBikersTriggerRight"
}
],
"bg_events": [
@@ -358,7 +358,7 @@
"x": 12,
"y": 31,
"elevation": 0,
- "script": "ThreeIsland_EventScript_167C9C"
+ "script": "ThreeIsland_EventScript_IslandSign"
},
{
"type": "hidden_item",
diff --git a/data/maps/ThreeIsland/scripts.inc b/data/maps/ThreeIsland/scripts.inc
index a92ad452a..484d8dba0 100644
--- a/data/maps/ThreeIsland/scripts.inc
+++ b/data/maps/ThreeIsland/scripts.inc
@@ -1,379 +1,390 @@
+.equ LOCALID_ANTIBIKER1, 1
+.equ LOCALID_ANTIBIKER2, 2
+.equ LOCALID_PAXTON, 3
+.equ LOCALID_BIKER1, 5
+.equ LOCALID_BIKER2, 7
+.equ LOCALID_BIKER3, 4
+.equ LOCALID_BIKER4, 6
+.equ LOCALID_BIKER5, 8
+.equ LOCALID_BIKER6, 14
+
ThreeIsland_MapScripts:: @ 81677AD
map_script MAP_SCRIPT_ON_TRANSITION, ThreeIsland_OnTransition
.byte 0
ThreeIsland_OnTransition:: @ 81677B3
setworldmapflag FLAG_WORLD_MAP_THREE_ISLAND
- call_if_set FLAG_RESCUED_LOSTELLE, EventScript_1677CB
+ call_if_set FLAG_RESCUED_LOSTELLE, ThreeIsland_EventScript_HideAntiBikers
compare VAR_MAP_SCENE_THREE_ISLAND, 4
- call_if_eq EventScript_1677CF
+ call_if_eq ThreeIsland_EventScript_SetAntiBikersMovementAfterBikers
end
-EventScript_1677CB:: @ 81677CB
+ThreeIsland_EventScript_HideAntiBikers:: @ 81677CB
setflag FLAG_HIDE_THREE_ISLAND_ANTIBIKERS
return
-EventScript_1677CF:: @ 81677CF
- setobjectmovementtype 1, 1
- setobjectmovementtype 2, 1
+ThreeIsland_EventScript_SetAntiBikersMovementAfterBikers:: @ 81677CF
+ setobjectmovementtype LOCALID_ANTIBIKER1, MOVEMENT_TYPE_LOOK_AROUND
+ setobjectmovementtype LOCALID_ANTIBIKER2, MOVEMENT_TYPE_LOOK_AROUND
return
-ThreeIsland_EventScript_1677D8:: @ 81677D8
+ThreeIsland_EventScript_Biker:: @ 81677D8
lock
setvar VAR_TEMP_1, 2
- call EventScript_16786F
+ call ThreeIsland_EventScript_BikerArgumentScene
release
end
-ThreeIsland_EventScript_1677E5:: @ 81677E5
+ThreeIsland_EventScript_AntiBiker1:: @ 81677E5
lock
- goto_if_set FLAG_GOT_FULL_RESTORE_FROM_THREE_ISLAND_DEFENDER, EventScript_167806
+ goto_if_set FLAG_GOT_FULL_RESTORE_FROM_THREE_ISLAND_DEFENDER, ThreeIsland_EventScript_AntiBiker1GotFullRestore
compare VAR_MAP_SCENE_THREE_ISLAND, 4
- goto_if_eq EventScript_16781A
+ goto_if_eq ThreeIsland_EventScript_GiveFullRestore
setvar VAR_TEMP_1, 0
- call EventScript_16786F
+ call ThreeIsland_EventScript_BikerArgumentScene
release
end
-EventScript_167806:: @ 8167806
- applymovement 1, Movement_FacePlayer
+ThreeIsland_EventScript_AntiBiker1GotFullRestore:: @ 8167806
+ applymovement LOCALID_ANTIBIKER1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_81827F1
+ msgbox ThreeIsland_Text_YouveGotImpressiveMons
release
end
-EventScript_16781A:: @ 816781A
- applymovement 1, Movement_FacePlayer
+ThreeIsland_EventScript_GiveFullRestore:: @ 816781A
+ applymovement LOCALID_ANTIBIKER1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_818275A
+ msgbox ThreeIsland_Text_ThankYouOhYourMonGotHurt
checkitemspace ITEM_FULL_RESTORE, 1
compare VAR_RESULT, FALSE
- goto_if_eq EventScript_167865
- msgreceiveditem gUnknown_81827BE, ITEM_FULL_RESTORE
+ goto_if_eq ThreeIsland_EventScript_NoRoomForFullRestore
+ msgreceiveditem ThreeIsland_Text_GivenFullRestore, ITEM_FULL_RESTORE
additem ITEM_FULL_RESTORE
setflag FLAG_GOT_FULL_RESTORE_FROM_THREE_ISLAND_DEFENDER
- msgbox gUnknown_81827F1
+ msgbox ThreeIsland_Text_YouveGotImpressiveMons
release
end
-EventScript_167865:: @ 8167865
- msgbox gUnknown_81827DB
+ThreeIsland_EventScript_NoRoomForFullRestore:: @ 8167865
+ msgbox ThreeIsland_Text_OhYourBagIsFull
release
end
-EventScript_16786F:: @ 816786F
+ThreeIsland_EventScript_BikerArgumentScene:: @ 816786F
compare VAR_TEMP_1, 1
- call_if_eq EventScript_167947
+ call_if_eq ThreeIsland_EventScript_PlayerFaceLeft
compare VAR_TEMP_1, 2
- call_if_eq EventScript_167947
- applymovement 1, Movement_167A1B
+ call_if_eq ThreeIsland_EventScript_PlayerFaceLeft
+ applymovement LOCALID_ANTIBIKER1, ThreeIsland_Movement_SpeakRight
waitmovement 0
- msgbox gUnknown_81820C0
+ msgbox ThreeIsland_Text_GoBackToKanto
compare VAR_TEMP_1, 0
- call_if_eq EventScript_167952
+ call_if_eq ThreeIsland_EventScript_PlayerFaceRight
compare VAR_TEMP_1, 1
- call_if_eq EventScript_167952
+ call_if_eq ThreeIsland_EventScript_PlayerFaceRight
compare VAR_TEMP_1, 2
- call_if_eq EventScript_16795D
- applymovement 5, Movement_167A19
+ call_if_eq ThreeIsland_EventScript_PlayerFaceBiker
+ applymovement LOCALID_BIKER1, ThreeIsland_Movement_SpeakLeft
waitmovement 0
- msgbox gUnknown_8182125
+ msgbox ThreeIsland_Text_BossIsOnHisWay
compare VAR_TEMP_1, 0
- call_if_eq EventScript_167931
+ call_if_eq ThreeIsland_EventScript_PlayerFaceUp
compare VAR_TEMP_1, 1
- call_if_eq EventScript_167931
+ call_if_eq ThreeIsland_EventScript_PlayerFaceUp
compare VAR_TEMP_1, 2
- call_if_eq EventScript_167973
- applymovement 2, Movement_167A1B
+ call_if_eq ThreeIsland_EventScript_PlayerFaceAntiBiker
+ applymovement LOCALID_ANTIBIKER2, ThreeIsland_Movement_SpeakRight
waitmovement 0
- msgbox gUnknown_81821A9
+ msgbox ThreeIsland_Text_GetOffIslandNow
compare VAR_TEMP_1, 0
- call_if_eq EventScript_167952
+ call_if_eq ThreeIsland_EventScript_PlayerFaceRight
compare VAR_TEMP_1, 1
- call_if_eq EventScript_167952
+ call_if_eq ThreeIsland_EventScript_PlayerFaceRight
compare VAR_TEMP_1, 2
- call_if_eq EventScript_16795D
- applymovement 4, Movement_167A19
+ call_if_eq ThreeIsland_EventScript_PlayerFaceBiker
+ applymovement LOCALID_BIKER3, ThreeIsland_Movement_SpeakLeft
waitmovement 0
- msgbox gUnknown_81821DC
+ msgbox ThreeIsland_Text_WhosGonnaMakeMe
return
-EventScript_167931:: @ 8167931
+ThreeIsland_EventScript_PlayerFaceUp:: @ 8167931
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
waitmovement 0
return
-EventScript_16793C:: @ 816793C
+@ Unused
+ThreeIsland_EventScript_PlayerFaceDown:: @ 816793C
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestDown
waitmovement 0
return
-EventScript_167947:: @ 8167947
+ThreeIsland_EventScript_PlayerFaceLeft:: @ 8167947
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestLeft
waitmovement 0
return
-EventScript_167952:: @ 8167952
+ThreeIsland_EventScript_PlayerFaceRight:: @ 8167952
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestRight
waitmovement 0
return
-EventScript_16795D:: @ 816795D
+ThreeIsland_EventScript_PlayerFaceBiker:: @ 816795D
getplayerxy VAR_0x8004, VAR_0x8005
compare VAR_0x8004, 9
- goto_if_ge EventScript_167931
- goto EventScript_167952
+ goto_if_ge ThreeIsland_EventScript_PlayerFaceUp
+ goto ThreeIsland_EventScript_PlayerFaceRight
end
-EventScript_167973:: @ 8167973
+ThreeIsland_EventScript_PlayerFaceAntiBiker:: @ 8167973
getplayerxy VAR_0x8004, VAR_0x8005
compare VAR_0x8004, 9
- goto_if_ge EventScript_167947
- goto EventScript_167931
+ goto_if_ge ThreeIsland_EventScript_PlayerFaceLeft
+ goto ThreeIsland_EventScript_PlayerFaceUp
end
-ThreeIsland_EventScript_167989:: @ 8167989
+ThreeIsland_EventScript_AntiBiker2:: @ 8167989
lock
compare VAR_MAP_SCENE_THREE_ISLAND, 4
- goto_if_eq EventScript_1679A1
+ goto_if_eq ThreeIsland_EventScript_AntiBiker2BikersGone
setvar VAR_TEMP_1, 1
- call EventScript_16786F
+ call ThreeIsland_EventScript_BikerArgumentScene
release
end
-EventScript_1679A1:: @ 81679A1
- applymovement 2, Movement_FacePlayer
+ThreeIsland_EventScript_AntiBiker2BikersGone:: @ 81679A1
+ applymovement LOCALID_ANTIBIKER2, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_8182823
+ msgbox ThreeIsland_Text_LostelleWentOffTowardsBondBridge
release
end
-ThreeIsland_EventScript_1679B5:: @ 81679B5
+ThreeIsland_EventScript_BikerBossIntroTrigger:: @ 81679B5
lockall
textcolor 0
- applymovement 1, Movement_167A1B
+ applymovement LOCALID_ANTIBIKER1, ThreeIsland_Movement_SpeakRight
waitmovement 0
- msgbox gUnknown_81821F1
- applymovement 3, Movement_167A19
+ msgbox ThreeIsland_Text_AreYouBossGoBackToKanto
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_SpeakLeft
waitmovement 0
- msgbox gUnknown_818221F
- applymovement 1, Movement_167A1B
+ msgbox ThreeIsland_Text_JustGotHerePal
+ applymovement LOCALID_ANTIBIKER1, ThreeIsland_Movement_SpeakRight
waitmovement 0
- msgbox gUnknown_8182275
- applymovement 3, Movement_167A19
+ msgbox ThreeIsland_Text_FollowersRaisingHavoc
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_SpeakLeft
waitmovement 0
- msgbox gUnknown_81822FB
- applymovement 1, Movement_167A1B
+ msgbox ThreeIsland_Text_OughtToBeThankingUs
+ applymovement LOCALID_ANTIBIKER1, ThreeIsland_Movement_SpeakRight
waitmovement 0
- msgbox gUnknown_81823C7
+ msgbox ThreeIsland_Text_YouCowardsToughInPack
setvar VAR_MAP_SCENE_THREE_ISLAND, 3
releaseall
end
-Movement_167A19:: @ 8167A19
+ThreeIsland_Movement_SpeakLeft:: @ 8167A19
walk_in_place_left
step_end
-Movement_167A1B:: @ 8167A1B
+ThreeIsland_Movement_SpeakRight:: @ 8167A1B
walk_in_place_right
step_end
-ThreeIsland_EventScript_167A1D:: @ 8167A1D
+ThreeIsland_EventScript_BattleBikersTriggerLeft:: @ 8167A1D
lockall
setvar VAR_TEMP_1, 0
- goto EventScript_167A59
+ goto ThreeIsland_EventScript_BattleBikersScene
end
-ThreeIsland_EventScript_167A29:: @ 8167A29
+ThreeIsland_EventScript_BattleBikersTriggerMidLeft:: @ 8167A29
lockall
setvar VAR_TEMP_1, 1
- goto EventScript_167A59
+ goto ThreeIsland_EventScript_BattleBikersScene
end
-ThreeIsland_EventScript_167A35:: @ 8167A35
+ThreeIsland_EventScript_BattleBikersTriggerMid:: @ 8167A35
lockall
setvar VAR_TEMP_1, 2
- goto EventScript_167A59
+ goto ThreeIsland_EventScript_BattleBikersScene
end
-ThreeIsland_EventScript_167A41:: @ 8167A41
+ThreeIsland_EventScript_BattleBikersTriggerMidRight:: @ 8167A41
lockall
setvar VAR_TEMP_1, 3
- goto EventScript_167A59
+ goto ThreeIsland_EventScript_BattleBikersScene
end
-ThreeIsland_EventScript_167A4D:: @ 8167A4D
+ThreeIsland_EventScript_BattleBikersTriggerRight:: @ 8167A4D
lockall
setvar VAR_TEMP_1, 4
- goto EventScript_167A59
+ goto ThreeIsland_EventScript_BattleBikersScene
end
-EventScript_167A59:: @ 8167A59
+ThreeIsland_EventScript_BattleBikersScene:: @ 8167A59
textcolor 0
- applymovement 5, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_BIKER1, Movement_WalkInPlaceFastestDown
waitmovement 0
playse SE_PIN
- applymovement 5, Movement_ExclamationMark
+ applymovement LOCALID_BIKER1, Movement_ExclamationMark
waitmovement 0
- applymovement 5, Movement_Delay48
+ applymovement LOCALID_BIKER1, Movement_Delay48
waitmovement 0
- applymovement 5, Movement_167C57
+ applymovement LOCALID_BIKER1, ThreeIsland_Movement_BikerApproach
waitmovement 0
playbgm MUS_SHOUNEN, 0
- msgbox gUnknown_81823ED, MSGBOX_YESNO
+ msgbox ThreeIsland_Text_WannaMakeSomethingOfYourStaring, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_167C35
- msgbox gUnknown_818247D
- setvar VAR_LAST_TALKED, 5
- trainerbattle_no_intro TRAINER_BIKER_GOON, Text_1824B7
- applymovement 5, Movement_167C5C
+ goto_if_eq ThreeIsland_EventScript_LeaveBikersAlone
+ msgbox ThreeIsland_Text_Biker1Intro
+ setvar VAR_LAST_TALKED, LOCALID_BIKER1
+ trainerbattle_no_intro TRAINER_BIKER_GOON, ThreeIsland_Text_Biker1Defeat
+ applymovement LOCALID_BIKER1, ThreeIsland_Movement_BikerSpeak
waitmovement 0
- msgbox gUnknown_81824CF
+ msgbox ThreeIsland_Text_Biker1PostBattle
closemessage
- applymovement 7, Movement_167C57
+ applymovement LOCALID_BIKER2, ThreeIsland_Movement_BikerApproach
waitmovement 0
playbgm MUS_SHOUNEN, 0
- msgbox gUnknown_81824EF
- setvar VAR_LAST_TALKED, 7
- trainerbattle_no_intro TRAINER_BIKER_GOON_2, Text_182521
- applymovement 7, Movement_167C5C
+ msgbox ThreeIsland_Text_Biker2Intro
+ setvar VAR_LAST_TALKED, LOCALID_BIKER2
+ trainerbattle_no_intro TRAINER_BIKER_GOON_2, ThreeIsland_Text_Biker2Defeat
+ applymovement LOCALID_BIKER2, ThreeIsland_Movement_BikerSpeak
waitmovement 0
- msgbox gUnknown_8182536
+ msgbox ThreeIsland_Text_Biker2PostBattle
closemessage
- applymovement 4, Movement_167C57
+ applymovement LOCALID_BIKER3, ThreeIsland_Movement_BikerApproach
waitmovement 0
playbgm MUS_SHOUNEN, 0
- msgbox gUnknown_8182582
- setvar VAR_LAST_TALKED, 4
- trainerbattle_no_intro TRAINER_BIKER_GOON_3, Text_1825D4
- applymovement 4, Movement_WalkInPlaceFastestLeft
+ msgbox ThreeIsland_Text_Biker3Intro
+ setvar VAR_LAST_TALKED, LOCALID_BIKER3
+ trainerbattle_no_intro TRAINER_BIKER_GOON_3, ThreeIsland_Text_Biker3Defeat
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestLeft
waitmovement 0
- applymovement 6, Movement_WalkInPlaceFastestDown
- applymovement 8, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_BIKER4, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_BIKER5, Movement_WalkInPlaceFastestDown
waitmovement 0
- msgbox gUnknown_81825E2
+ msgbox ThreeIsland_Text_Biker3PostBattle
closemessage
delay 45
compare VAR_TEMP_1, 0
- call_if_eq EventScript_167BC6
+ call_if_eq ThreeIsland_EventScript_PaxtonApproachLeft
compare VAR_TEMP_1, 1
- call_if_eq EventScript_167BD8
+ call_if_eq ThreeIsland_EventScript_PaxtonApproachMidLeft
compare VAR_TEMP_1, 2
- call_if_eq EventScript_167BEA
+ call_if_eq ThreeIsland_EventScript_PaxtonApproachMid
compare VAR_TEMP_1, 3
- call_if_eq EventScript_167C03
+ call_if_eq ThreeIsland_EventScript_PaxtonApproachMidRight
compare VAR_TEMP_1, 4
- call_if_eq EventScript_167C1C
+ call_if_eq ThreeIsland_EventScript_PaxtonApproachRight
playbgm MUS_SHOUNEN, 0
- msgbox gUnknown_8182623
- setvar VAR_LAST_TALKED, 3
- trainerbattle_no_intro TRAINER_CUE_BALL_PAXTON, Text_1826B7
- msgbox gUnknown_818271D
+ msgbox ThreeIsland_Text_PaxtonIntro
+ setvar VAR_LAST_TALKED, LOCALID_PAXTON
+ trainerbattle_no_intro TRAINER_CUE_BALL_PAXTON, ThreeIsland_Text_PaxtonDefeat
+ msgbox ThreeIsland_Text_PaxtonPostBattle
closemessage
fadescreen FADE_TO_BLACK
- removeobject 3
- removeobject 5
- removeobject 7
- removeobject 4
- removeobject 6
- removeobject 8
- removeobject 14
+ removeobject LOCALID_PAXTON
+ removeobject LOCALID_BIKER1
+ removeobject LOCALID_BIKER2
+ removeobject LOCALID_BIKER3
+ removeobject LOCALID_BIKER4
+ removeobject LOCALID_BIKER5
+ removeobject LOCALID_BIKER6
fadescreen FADE_FROM_BLACK
setvar VAR_MAP_SCENE_THREE_ISLAND, 4
releaseall
end
-EventScript_167BC6:: @ 8167BC6
- applymovement 4, Movement_WalkInPlaceFastestDown
- applymovement 3, Movement_167C5E
+ThreeIsland_EventScript_PaxtonApproachLeft:: @ 8167BC6
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_PaxtonApproachLeft
waitmovement 0
return
-EventScript_167BD8:: @ 8167BD8
- applymovement 4, Movement_WalkInPlaceFastestDown
- applymovement 3, Movement_167C62
+ThreeIsland_EventScript_PaxtonApproachMidLeft:: @ 8167BD8
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_PaxtonApproachMidLeft
waitmovement 0
return
-EventScript_167BEA:: @ 8167BEA
- applymovement 4, Movement_WalkInPlaceFastestDown
- applymovement 3, Movement_167C64
- applymovement OBJ_EVENT_ID_PLAYER, Movement_167C68
+ThreeIsland_EventScript_PaxtonApproachMid:: @ 8167BEA
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestDown
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_PaxtonApproachMid
+ applymovement OBJ_EVENT_ID_PLAYER, ThreeIsland_Movement_PlayerFacePaxton
waitmovement 0
return
-EventScript_167C03:: @ 8167C03
- applymovement 4, Movement_WalkInPlaceFastestDown
- applymovement OBJ_EVENT_ID_PLAYER, Movement_167C68
- applymovement 3, Movement_167C6C
+ThreeIsland_EventScript_PaxtonApproachMidRight:: @ 8167C03
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestDown
+ applymovement OBJ_EVENT_ID_PLAYER, ThreeIsland_Movement_PlayerFacePaxton
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_PaxtonApproachMidRight
waitmovement 0
return
-EventScript_167C1C:: @ 8167C1C
- applymovement 4, Movement_WalkInPlaceFastestDown
- applymovement OBJ_EVENT_ID_PLAYER, Movement_167C68
- applymovement 3, Movement_167C71
+ThreeIsland_EventScript_PaxtonApproachRight:: @ 8167C1C
+ applymovement LOCALID_BIKER3, Movement_WalkInPlaceFastestDown
+ applymovement OBJ_EVENT_ID_PLAYER, ThreeIsland_Movement_PlayerFacePaxton
+ applymovement LOCALID_PAXTON, ThreeIsland_Movement_PaxtonApproachRight
waitmovement 0
return
-EventScript_167C35:: @ 8167C35
- msgbox gUnknown_8182453
+ThreeIsland_EventScript_LeaveBikersAlone:: @ 8167C35
+ msgbox ThreeIsland_Text_ThatsSmart
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_167C55
+ applymovement OBJ_EVENT_ID_PLAYER, ThreeIsland_Movement_PlayerLeaveBikers
waitmovement 0
- applymovement 5, Movement_167C59
+ applymovement LOCALID_BIKER1, ThreeIsland_Movement_Biker1ReturnToPack
waitmovement 0
fadedefaultbgm
releaseall
end
-Movement_167C55:: @ 8167C55
+ThreeIsland_Movement_PlayerLeaveBikers:: @ 8167C55
walk_down
step_end
-Movement_167C57:: @ 8167C57
+ThreeIsland_Movement_BikerApproach:: @ 8167C57
walk_down
step_end
-Movement_167C59:: @ 8167C59
+ThreeIsland_Movement_Biker1ReturnToPack:: @ 8167C59
walk_up
walk_in_place_fastest_left
step_end
-Movement_167C5C:: @ 8167C5C
+ThreeIsland_Movement_BikerSpeak:: @ 8167C5C
walk_in_place_down
step_end
-Movement_167C5E:: @ 8167C5E
+ThreeIsland_Movement_PaxtonApproachLeft:: @ 8167C5E
walk_down
walk_left
walk_in_place_fastest_down
step_end
-Movement_167C62:: @ 8167C62
+ThreeIsland_Movement_PaxtonApproachMidLeft:: @ 8167C62
walk_down
step_end
-Movement_167C64:: @ 8167C64
+ThreeIsland_Movement_PaxtonApproachMid:: @ 8167C64
walk_down
walk_down
walk_in_place_fastest_right
step_end
-Movement_167C68:: @ 8167C68
+ThreeIsland_Movement_PlayerFacePaxton:: @ 8167C68
delay_16
delay_16
walk_in_place_fastest_left
step_end
-Movement_167C6C:: @ 8167C6C
+ThreeIsland_Movement_PaxtonApproachMidRight:: @ 8167C6C
walk_down
walk_down
walk_right
walk_in_place_fastest_right
step_end
-Movement_167C71:: @ 8167C71
+ThreeIsland_Movement_PaxtonApproachRight:: @ 8167C71
walk_down
walk_down
walk_right
@@ -381,28 +392,28 @@ Movement_167C71:: @ 8167C71
walk_in_place_fastest_right
step_end
-ThreeIsland_EventScript_167C77:: @ 8167C77
- msgbox gUnknown_81828EB, MSGBOX_NPC
+ThreeIsland_EventScript_Woman:: @ 8167C77
+ msgbox ThreeIsland_Text_WouldntWantToSeeBikersHereAgain, MSGBOX_NPC
end
-ThreeIsland_EventScript_167C80:: @ 8167C80
- msgbox gUnknown_818298A, MSGBOX_NPC
+ThreeIsland_EventScript_LittleBoy:: @ 8167C80
+ msgbox ThreeIsland_Text_WhenDodouEvolvesGoingToPlayGame, MSGBOX_NPC
end
-ThreeIsland_EventScript_167C89:: @ 8167C89
+ThreeIsland_EventScript_Doduo:: @ 8167C89
lock
faceplayer
waitse
playmoncry SPECIES_DODUO, 0
- msgbox gUnknown_81829F4
+ msgbox ThreeIsland_Text_Doduo
waitmoncry
release
end
-ThreeIsland_EventScript_167C9C:: @ 8167C9C
- msgbox gUnknown_8182061, MSGBOX_SIGN
+ThreeIsland_EventScript_IslandSign:: @ 8167C9C
+ msgbox ThreeIsland_Text_IslandSign, MSGBOX_SIGN
end
-ThreeIsland_EventScript_167CA5:: @ 8167CA5
- msgbox gUnknown_818208B, MSGBOX_NPC
+ThreeIsland_EventScript_Biker6:: @ 8167CA5
+ msgbox ThreeIsland_Text_IslandBelongsToUs, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland/text.inc b/data/maps/ThreeIsland/text.inc
index 31e058a67..6f18aab9d 100644
--- a/data/maps/ThreeIsland/text.inc
+++ b/data/maps/ThreeIsland/text.inc
@@ -1,50 +1,50 @@
-gUnknown_8182061:: @ 8182061
+ThreeIsland_Text_IslandSign:: @ 8182061
.string "THREE ISLAND\n"
.string "Kin Island of Family Bonding$"
-gUnknown_818208B:: @ 818208B
+ThreeIsland_Text_IslandBelongsToUs:: @ 818208B
.string "Hyahoo!\p"
.string "From this day on, this island\n"
.string "belongs to us!$"
-gUnknown_81820C0:: @ 81820C0
+ThreeIsland_Text_GoBackToKanto:: @ 81820C0
.string "We don't need you people bringing\n"
.string "your noise and trouble here!\p"
.string "We're asking you to go back to\n"
.string "KANTO!$"
-gUnknown_8182125:: @ 8182125
+ThreeIsland_Text_BossIsOnHisWay:: @ 8182125
.string "Hey, go cry somewhere else.\n"
.string "Our boss is on his way.\p"
.string "When he gets here, we'll give you\n"
.string "a k-rad motorbike show you won't\l"
.string "soon forget!$"
-gUnknown_81821A9:: @ 81821A9
+ThreeIsland_Text_GetOffIslandNow:: @ 81821A9
.string "W-what!? Not on your life!\n"
.string "Get off the island now!$"
-gUnknown_81821DC:: @ 81821DC
+ThreeIsland_Text_WhosGonnaMakeMe:: @ 81821DC
.string "Who's gonna make me?$"
-gUnknown_81821F1:: @ 81821F1
+ThreeIsland_Text_AreYouBossGoBackToKanto:: @ 81821F1
.string "Are you the boss?\n"
.string "Go back to KANTO right now!$"
-gUnknown_818221F:: @ 818221F
+ThreeIsland_Text_JustGotHerePal:: @ 818221F
.string "Hah?\p"
.string "I just got here, pal.\p"
.string "What's with the hostile attitude?\n"
.string "It's mighty cold of you!$"
-gUnknown_8182275:: @ 8182275
+ThreeIsland_Text_FollowersRaisingHavoc:: @ 8182275
.string "Your gang of followers have been\n"
.string "raising havoc on their bikes.\p"
.string "Do you have any idea how much\n"
.string "trouble they've caused us on the\l"
.string "island?$"
-gUnknown_81822FB:: @ 81822FB
+ThreeIsland_Text_OughtToBeThankingUs:: @ 81822FB
.string "No, man, I don't get it at all.\p"
.string "Look at this place.\n"
.string "What do you do for entertainment?\p"
@@ -53,57 +53,57 @@ gUnknown_81822FB:: @ 81822FB
.string "But hey, if you insist, you can try\n"
.string "making us leave.$"
-gUnknown_81823C7:: @ 81823C7
+ThreeIsland_Text_YouCowardsToughInPack:: @ 81823C7
.string "Grr… You cowards…\n"
.string "So tough in a pack…$"
-gUnknown_81823ED:: @ 81823ED
+ThreeIsland_Text_WannaMakeSomethingOfYourStaring:: @ 81823ED
.string "You, what are you staring at?\n"
.string "Don't you know it's not polite?\p"
.string "You wanna make something of it\n"
.string "or what?$"
-gUnknown_8182453:: @ 8182453
+ThreeIsland_Text_ThatsSmart:: @ 8182453
.string "That's smart.\n"
.string "Keep your nose out of this.$"
-gUnknown_818247D:: @ 818247D
+ThreeIsland_Text_Biker1Intro:: @ 818247D
.string "Heh, I like your guts.\n"
.string "You'll be losing money to me, but…$"
-Text_1824B7:: @ 81824B7
+ThreeIsland_Text_Biker1Defeat:: @ 81824B7
.string "Wha…\n"
.string "What is this kid?!$"
-gUnknown_81824CF:: @ 81824CF
+ThreeIsland_Text_Biker1PostBattle:: @ 81824CF
.string "Aww, man…\n"
.string "Don't you dare laugh!$"
-gUnknown_81824EF:: @ 81824EF
+ThreeIsland_Text_Biker2Intro:: @ 81824EF
.string "Aren't you from KANTO?\n"
.string "You should be on our side!$"
-Text_182521:: @ 8182521
+ThreeIsland_Text_Biker2Defeat:: @ 8182521
.string "Stop fooling around!$"
-gUnknown_8182536:: @ 8182536
+ThreeIsland_Text_Biker2PostBattle:: @ 8182536
.string "What's the matter with you,\n"
.string "getting all hot like that?\p"
.string "Totally uncool, man!$"
-gUnknown_8182582:: @ 8182582
+ThreeIsland_Text_Biker3Intro:: @ 8182582
.string "We invited the boss out here,\n"
.string "but you had to mess it up!\p"
.string "You embarrassed us, man!$"
-Text_1825D4:: @ 81825D4
+ThreeIsland_Text_Biker3Defeat:: @ 81825D4
.string "… … … … … …$"
-gUnknown_81825E2:: @ 81825E2
+ThreeIsland_Text_Biker3PostBattle:: @ 81825E2
.string "Boss, I'm telling you, you've gotta\n"
.string "do something about this kid!$"
-gUnknown_8182623:: @ 8182623
+ThreeIsland_Text_PaxtonIntro:: @ 8182623
.string "I've been watching you, and I'd say\n"
.string "you've done enough.\p"
.string "What are you, their friend or\n"
@@ -111,35 +111,35 @@ gUnknown_8182623:: @ 8182623
.string "Then I guess you'll be battling me\n"
.string "in their place.$"
-Text_1826B7:: @ 81826B7
+ThreeIsland_Text_PaxtonDefeat:: @ 81826B7
.string "All right, enough!\n"
.string "We'll leave like you wanted!\p"
.string "We'll be happy to see the last of\n"
.string "this boring island!$"
-gUnknown_818271D:: @ 818271D
+ThreeIsland_Text_PaxtonPostBattle:: @ 818271D
.string "Humph! Yeah, go right on hanging\n"
.string "around with these hayseeds!$"
-gUnknown_818275A:: @ 818275A
+ThreeIsland_Text_ThankYouOhYourMonGotHurt:: @ 818275A
.string "Thank you! Those goons were\n"
.string "nothing but bad trouble.\p"
.string "Oh, look, your POKéMON got hurt\n"
.string "on my account.$"
-gUnknown_81827BE:: @ 81827BE
+ThreeIsland_Text_GivenFullRestore:: @ 81827BE
.string "{PLAYER} was given\n"
.string "a FULL RESTORE.$"
-gUnknown_81827DB:: @ 81827DB
+ThreeIsland_Text_OhYourBagIsFull:: @ 81827DB
.string "Oh?\n"
.string "Your BAG is full.$"
-gUnknown_81827F1:: @ 81827F1
+ThreeIsland_Text_YouveGotImpressiveMons:: @ 81827F1
.string "You've got seriously impressive\n"
.string "POKéMON with you.$"
-gUnknown_8182823:: @ 8182823
+ThreeIsland_Text_LostelleWentOffTowardsBondBridge:: @ 8182823
.string "It'd be fantastic if someone as\n"
.string "strong as you lived here.\p"
.string "I hope you'll at least stay here\n"
@@ -149,19 +149,19 @@ gUnknown_8182823:: @ 8182823
.string "LOSTELLE went off towards BOND\n"
.string "BRIDGE a while ago.$"
-gUnknown_81828EB:: @ 81828EB
+ThreeIsland_Text_WouldntWantToSeeBikersHereAgain:: @ 81828EB
.string "THREE ISLAND is actually the most\n"
.string "populous of the islands here.\p"
.string "Still, it could be less sleepy.\p"
.string "But I wouldn't want to see goons\n"
.string "like those BIKERS here again.$"
-gUnknown_818298A:: @ 818298A
+ThreeIsland_Text_WhenDodouEvolvesGoingToPlayGame:: @ 818298A
.string "I'm going to train my DODUO in the\n"
.string "BERRY FOREST.\p"
.string "When it evolves, I'm going to play\n"
.string "a game on TWO ISLAND.$"
-gUnknown_81829F4:: @ 81829F4
+ThreeIsland_Text_Doduo:: @ 81829F4
.string "DODUO: Gigiih!$"
diff --git a/data/maps/ThreeIsland_BerryForest/map.json b/data/maps/ThreeIsland_BerryForest/map.json
index 446dc2074..db32d0122 100644
--- a/data/maps/ThreeIsland_BerryForest/map.json
+++ b/data/maps/ThreeIsland_BerryForest/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_BerryForest_EventScript_163C83",
+ "script": "ThreeIsland_BerryForest_EventScript_Lostelle",
"flag": "FLAG_HIDE_LOSTELLE_IN_BERRY_FOREST"
},
{
@@ -228,14 +228,14 @@
"x": 7,
"y": 27,
"elevation": 0,
- "script": "ThreeIsland_BerryForest_EventScript_163D31"
+ "script": "ThreeIsland_BerryForest_EventScript_BewareSign"
},
{
"type": "bg_event_type_0",
"x": 39,
"y": 35,
"elevation": 0,
- "script": "ThreeIsland_BerryForest_EventScript_163D28"
+ "script": "ThreeIsland_BerryForest_EventScript_WelcomeSign"
},
{
"type": "hidden_item",
diff --git a/data/maps/ThreeIsland_BerryForest/scripts.inc b/data/maps/ThreeIsland_BerryForest/scripts.inc
index cf1693258..cc750f1f4 100644
--- a/data/maps/ThreeIsland_BerryForest/scripts.inc
+++ b/data/maps/ThreeIsland_BerryForest/scripts.inc
@@ -7,16 +7,16 @@ ThreeIsland_BerryForest_OnTransition:: @ 8163C77
setescapewarp MAP_THREE_ISLAND_BOND_BRIDGE, 255, 12, 6
end
-ThreeIsland_BerryForest_EventScript_163C83:: @ 8163C83
+ThreeIsland_BerryForest_EventScript_Lostelle:: @ 8163C83
lock
faceplayer
- msgbox gUnknown_817ADD6
+ msgbox ThreeIsland_BerryForest_Text_HelpScaryPokemon
playse SE_PIN
applymovement 1, Movement_ExclamationMark
waitmovement 0
- applymovement 1, Movement_163D22
+ applymovement 1, ThreeIsland_BerryForest_Movement_LostelleLookAround
waitmovement 0
- msgbox gUnknown_817AE8E
+ msgbox ThreeIsland_BerryForest_Text_HereItComesAgain
goto_if_questlog EventScript_ReleaseEnd
waitse
playmoncry SPECIES_HYPNO, 2
@@ -26,12 +26,12 @@ ThreeIsland_BerryForest_EventScript_163C83:: @ 8163C83
special sub_8112364
applymovement 1, Movement_FacePlayer
waitmovement 0
- msgbox gUnknown_817AEE1
+ msgbox ThreeIsland_BerryForest_Text_ThankYouHaveThis
giveitem ITEM_IAPAPA_BERRY
- compare VAR_RESULT, 0
- call_if_eq EventScript_163D19
+ compare VAR_RESULT, FALSE
+ call_if_eq ThreeIsland_BerryForest_EventScript_NoRoomForBerry
special Special_BufferBigGuyOrBigGirlString
- msgbox gUnknown_817AF3B
+ msgbox ThreeIsland_BerryForest_Text_LetsGoHome
closemessage
setflag FLAG_RESCUED_LOSTELLE
setflag FLAG_HIDE_LOSTELLE_IN_BERRY_FOREST
@@ -42,11 +42,11 @@ ThreeIsland_BerryForest_EventScript_163C83:: @ 8163C83
release
end
-EventScript_163D19:: @ 8163D19
- msgbox gUnknown_817AF9F
+ThreeIsland_BerryForest_EventScript_NoRoomForBerry:: @ 8163D19
+ msgbox ThreeIsland_BerryForest_Text_BerryPouchIsFull
return
-Movement_163D22:: @ 8163D22
+ThreeIsland_BerryForest_Movement_LostelleLookAround:: @ 8163D22
walk_in_place_fastest_left
delay_16
walk_in_place_fastest_right
@@ -54,10 +54,10 @@ Movement_163D22:: @ 8163D22
walk_in_place_fastest_left
step_end
-ThreeIsland_BerryForest_EventScript_163D28:: @ 8163D28
- msgbox gUnknown_817AFD6, MSGBOX_SIGN
+ThreeIsland_BerryForest_EventScript_WelcomeSign:: @ 8163D28
+ msgbox ThreeIsland_BerryForest_Text_WelcomeToBerryForest, MSGBOX_SIGN
end
-ThreeIsland_BerryForest_EventScript_163D31:: @ 8163D31
- msgbox gUnknown_817B029, MSGBOX_SIGN
+ThreeIsland_BerryForest_EventScript_BewareSign:: @ 8163D31
+ msgbox ThreeIsland_BerryForest_Text_BewareWildBerryLovingMons, MSGBOX_SIGN
end
diff --git a/data/maps/ThreeIsland_BerryForest/text.inc b/data/maps/ThreeIsland_BerryForest/text.inc
index 807df9c30..fdb08e3c6 100644
--- a/data/maps/ThreeIsland_BerryForest/text.inc
+++ b/data/maps/ThreeIsland_BerryForest/text.inc
@@ -1,4 +1,4 @@
-gUnknown_817ADD6:: @ 817ADD6
+ThreeIsland_BerryForest_Text_HelpScaryPokemon:: @ 817ADD6
.string "LOSTELLE: Whimper… Sniff…\n"
.string "Oh! Please, help!\p"
.string "A scary POKéMON appeared there\n"
@@ -8,36 +8,36 @@ gUnknown_817ADD6:: @ 817ADD6
.string "I'm too scared to move!\n"
.string "But I want to go home…$"
-gUnknown_817AE8E:: @ 817AE8E
+ThreeIsland_BerryForest_Text_HereItComesAgain:: @ 817AE8E
.string "Oh! Here it comes again!\n"
.string "No! Go away! It's scaring me!\p"
.string "Waaaaaaah!\n"
.string "I want my daddy!$"
-gUnknown_817AEE1:: @ 817AEE1
+ThreeIsland_BerryForest_Text_ThankYouHaveThis:: @ 817AEE1
.string "Ohh! That was so scary!\n"
.string "Thank you!\p"
.string "LOSTELLE came to pick some\n"
.string "BERRIES.\p"
.string "You can have this!$"
-gUnknown_817AF3B:: @ 817AF3B
+ThreeIsland_BerryForest_Text_LetsGoHome:: @ 817AF3B
.string "What's your name?\p"
.string "LOSTELLE's scared, so can I go\n"
.string "with you to my daddy's house?\p"
.string "Okay!\n"
.string "Let's go home!$"
-gUnknown_817AF9F:: @ 817AF9F
+ThreeIsland_BerryForest_Text_BerryPouchIsFull:: @ 817AF9F
.string "Your BERRY POUCH is full.\n"
.string "I guess you don't want this.$"
-gUnknown_817AFD6:: @ 817AFD6
+ThreeIsland_BerryForest_Text_WelcomeToBerryForest:: @ 817AFD6
.string "Welcome to the BERRY FOREST\p"
.string "Be friendly and share BERRIES with\n"
.string "others and POKéMON.$"
-gUnknown_817B029:: @ 817B029
+ThreeIsland_BerryForest_Text_BewareWildBerryLovingMons:: @ 817B029
.string "Beware of wild, BERRY-loving\n"
.string "POKéMON!$"
diff --git a/data/maps/ThreeIsland_BondBridge/map.json b/data/maps/ThreeIsland_BondBridge/map.json
index e4e05fb76..d9041df2d 100644
--- a/data/maps/ThreeIsland_BondBridge/map.json
+++ b/data/maps/ThreeIsland_BondBridge/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 5,
- "script": "ThreeIsland_BondBridge_EventScript_1ABF65",
+ "script": "ThreeIsland_BondBridge_EventScript_Nikki",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 2,
- "script": "ThreeIsland_BondBridge_EventScript_1ABFA3",
+ "script": "ThreeIsland_BondBridge_EventScript_Violet",
"flag": "0"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "ThreeIsland_BondBridge_EventScript_1ABFE1",
+ "script": "ThreeIsland_BondBridge_EventScript_Amira",
"flag": "0"
},
{
@@ -70,7 +70,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "ThreeIsland_BondBridge_EventScript_1AC01F",
+ "script": "ThreeIsland_BondBridge_EventScript_Alexis",
"flag": "0"
},
{
@@ -83,7 +83,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "ThreeIsland_BondBridge_EventScript_1AC05D",
+ "script": "ThreeIsland_BondBridge_EventScript_Tisha",
"flag": "0"
},
{
@@ -96,7 +96,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "ThreeIsland_BondBridge_EventScript_1AC09B",
+ "script": "ThreeIsland_BondBridge_EventScript_Joy",
"flag": "0"
},
{
@@ -109,7 +109,7 @@
"movement_range_y": 1,
"trainer_type": 1,
"trainer_sight_or_berry_tree_id": 1,
- "script": "ThreeIsland_BondBridge_EventScript_1AC0E1",
+ "script": "ThreeIsland_BondBridge_EventScript_Meg",
"flag": "0"
},
{
@@ -162,7 +162,7 @@
"x": 14,
"y": 7,
"elevation": 0,
- "script": "ThreeIsland_BondBridge_EventScript_168777"
+ "script": "ThreeIsland_BondBridge_EventScript_BerryForestSign"
},
{
"type": "hidden_item",
@@ -199,7 +199,7 @@
"x": 91,
"y": 9,
"elevation": 0,
- "script": "ThreeIsland_BondBridge_EventScript_168780"
+ "script": "ThreeIsland_BondBridge_EventScript_BondBridgeSign"
}
]
}
diff --git a/data/maps/ThreeIsland_BondBridge/scripts.inc b/data/maps/ThreeIsland_BondBridge/scripts.inc
index f36889d04..7c3210ba8 100644
--- a/data/maps/ThreeIsland_BondBridge/scripts.inc
+++ b/data/maps/ThreeIsland_BondBridge/scripts.inc
@@ -1,10 +1,10 @@
ThreeIsland_BondBridge_MapScripts:: @ 8168776
.byte 0
-ThreeIsland_BondBridge_EventScript_168777:: @ 8168777
- msgbox gUnknown_818A210, MSGBOX_SIGN
+ThreeIsland_BondBridge_EventScript_BerryForestSign:: @ 8168777
+ msgbox ThreeIsland_BondBridge_Text_BerryForestAhead, MSGBOX_SIGN
end
-ThreeIsland_BondBridge_EventScript_168780:: @ 8168780
- msgbox gUnknown_818A223, MSGBOX_SIGN
+ThreeIsland_BondBridge_EventScript_BondBridgeSign:: @ 8168780
+ msgbox ThreeIsland_BondBridge_Text_BondBridgeSign, MSGBOX_SIGN
end
diff --git a/data/maps/ThreeIsland_BondBridge/text.inc b/data/maps/ThreeIsland_BondBridge/text.inc
index dbf984c85..57f96b6d8 100644
--- a/data/maps/ThreeIsland_BondBridge/text.inc
+++ b/data/maps/ThreeIsland_BondBridge/text.inc
@@ -1,100 +1,100 @@
-Text_189E42:: @ 8189E42
+ThreeIsland_BondBridge_Text_NikkiIntro:: @ 8189E42
.string "The salty tang of the sea…\n"
.string "It tickles my heart.$"
-Text_189E72:: @ 8189E72
+ThreeIsland_BondBridge_Text_NikkiDefeat:: @ 8189E72
.string "…Sniff, sniff…\n"
.string "Something smells unpleasant…$"
-Text_189E9E:: @ 8189E9E
+ThreeIsland_BondBridge_Text_NikkiPostBattle:: @ 8189E9E
.string "Perhaps that reek is your sweaty\n"
.string "POKéMON's body odor…$"
-Text_189ED4:: @ 8189ED4
+ThreeIsland_BondBridge_Text_VioletIntro:: @ 8189ED4
.string "Where are you off to in such\n"
.string "a hurry?$"
-Text_189EFA:: @ 8189EFA
+ThreeIsland_BondBridge_Text_VioletDefeat:: @ 8189EFA
.string "You're raising some wonderful\n"
.string "POKéMON.$"
-Text_189F21:: @ 8189F21
+ThreeIsland_BondBridge_Text_VioletPostBattle:: @ 8189F21
.string "If you keep going this way, you'll\n"
.string "eventually reach BERRY FOREST.$"
-Text_189F63:: @ 8189F63
+ThreeIsland_BondBridge_Text_AmiraIntro:: @ 8189F63
.string "My mommy said that I can't swim\n"
.string "without my float ring.$"
-Text_189F9A:: @ 8189F9A
+ThreeIsland_BondBridge_Text_AmiraDefeat:: @ 8189F9A
.string "Waaah!\n"
.string "Waaah!$"
-Text_189FA8:: @ 8189FA8
+ThreeIsland_BondBridge_Text_AmiraPostBattle:: @ 8189FA8
.string "This year, I'm going to finally\n"
.string "learn how to swim!$"
-Text_189FDB:: @ 8189FDB
+ThreeIsland_BondBridge_Text_AlexisIntro:: @ 8189FDB
.string "Yay, yay!\n"
.string "POKéMON!$"
-Text_189FEE:: @ 8189FEE
+ThreeIsland_BondBridge_Text_AlexisDefeat:: @ 8189FEE
.string "What happens now?$"
-Text_18A000:: @ 818A000
+ThreeIsland_BondBridge_Text_AlexisPostBattle:: @ 818A000
.string "Did I just win?\n"
.string "Or did I lose?$"
-Text_18A01F:: @ 818A01F
+ThreeIsland_BondBridge_Text_TishaIntro:: @ 818A01F
.string "Oh, no, don't come here!\n"
.string "Please, stay away from me!$"
-Text_18A053:: @ 818A053
+ThreeIsland_BondBridge_Text_TishaDefeat:: @ 818A053
.string "Okay, you've won!\n"
.string "Now will you please go away?$"
-Text_18A082:: @ 818A082
+ThreeIsland_BondBridge_Text_TishaPostBattle:: @ 818A082
.string "A POKéMON bit through my \n"
.string "swimsuit.\p"
.string "I can't get out of the water!$"
-Text_18A0C4:: @ 818A0C4
+ThreeIsland_BondBridge_Text_JoyIntro:: @ 818A0C4
.string "JOY: We'll teach you what our\n"
.string "favorite POKéMON is!$"
-Text_18A0F7:: @ 818A0F7
+ThreeIsland_BondBridge_Text_JoyDefeat:: @ 818A0F7
.string "JOY: Ohh…\n"
.string "MEG!$"
-Text_18A106:: @ 818A106
+ThreeIsland_BondBridge_Text_JoyPostBattle:: @ 818A106
.string "JOY: Wasn't that fun?\n"
.string "I hope we can battle again!$"
-Text_18A138:: @ 818A138
+ThreeIsland_BondBridge_Text_JoyNotEnoughMons:: @ 818A138
.string "JOY: I really want to battle with\n"
.string "MEG.\p"
.string "One POKéMON isn't enough.$"
-Text_18A179:: @ 818A179
+ThreeIsland_BondBridge_Text_MegIntro:: @ 818A179
.string "MEG: We'll show you our favorite\n"
.string "POKéMON.$"
-Text_18A1A3:: @ 818A1A3
+ThreeIsland_BondBridge_Text_MegDefeat:: @ 818A1A3
.string "MEG: Ohh…\n"
.string "JOY!$"
-Text_18A1B2:: @ 818A1B2
+ThreeIsland_BondBridge_Text_MegPostBattle:: @ 818A1B2
.string "MEG: JOY, wasn't that fun?$"
-Text_18A1CD:: @ 818A1CD
+ThreeIsland_BondBridge_Text_MegNotEnoughMons:: @ 818A1CD
.string "MEG: I want to battle together\n"
.string "with JOY.\p"
.string "One POKéMON isn't enough.$"
-gUnknown_818A210:: @ 818A210
+ThreeIsland_BondBridge_Text_BerryForestAhead:: @ 818A210
.string "BERRY FOREST AHEAD$"
-gUnknown_818A223:: @ 818A223
+ThreeIsland_BondBridge_Text_BondBridgeSign:: @ 818A223
.string "BOND BRIDGE\n"
.string "Please be quiet when crossing.\p"
.string "BERRY FOREST AHEAD$"
diff --git a/data/maps/ThreeIsland_Harbor/map.json b/data/maps/ThreeIsland_Harbor/map.json
index 5864be00c..412177921 100644
--- a/data/maps/ThreeIsland_Harbor/map.json
+++ b/data/maps/ThreeIsland_Harbor/map.json
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Harbor_EventScript_171EAA",
+ "script": "ThreeIsland_Harbor_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_Harbor/scripts.inc b/data/maps/ThreeIsland_Harbor/scripts.inc
index 6705741cb..473b8b368 100644
--- a/data/maps/ThreeIsland_Harbor/scripts.inc
+++ b/data/maps/ThreeIsland_Harbor/scripts.inc
@@ -1,7 +1,7 @@
ThreeIsland_Harbor_MapScripts:: @ 8171EA9
.byte 0
-ThreeIsland_Harbor_EventScript_171EAA:: @ 8171EAA
+ThreeIsland_Harbor_EventScript_Sailor:: @ 8171EAA
lock
faceplayer
message Text_WhereDoYouWantToSail
diff --git a/data/maps/ThreeIsland_House1/map.json b/data/maps/ThreeIsland_House1/map.json
index 2174a571d..c06ba0e44 100644
--- a/data/maps/ThreeIsland_House1/map.json
+++ b/data/maps/ThreeIsland_House1/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House1_EventScript_17181A",
+ "script": "ThreeIsland_House1_EventScript_Lostelle",
"flag": "FLAG_HIDE_LOSTELLE_IN_HER_HOME"
}
],
@@ -45,7 +45,7 @@
"x": 2,
"y": 1,
"elevation": 0,
- "script": "ThreeIsland_House1_EventScript_171829"
+ "script": "ThreeIsland_House1_EventScript_DisplayCase"
}
]
}
diff --git a/data/maps/ThreeIsland_House1/scripts.inc b/data/maps/ThreeIsland_House1/scripts.inc
index 007f7d4be..d05416f9d 100644
--- a/data/maps/ThreeIsland_House1/scripts.inc
+++ b/data/maps/ThreeIsland_House1/scripts.inc
@@ -1,14 +1,14 @@
ThreeIsland_House1_MapScripts:: @ 8171819
.byte 0
-ThreeIsland_House1_EventScript_17181A:: @ 817181A
+ThreeIsland_House1_EventScript_Lostelle:: @ 817181A
lock
faceplayer
special Special_BufferBigGuyOrBigGirlString
- msgbox gUnknown_81A2F3E
+ msgbox ThreeIsland_House1_Text_YoureAlwaysSoCool
release
end
-ThreeIsland_House1_EventScript_171829:: @ 8171829
- msgbox gUnknown_81A2F92, MSGBOX_SIGN
+ThreeIsland_House1_EventScript_DisplayCase:: @ 8171829
+ msgbox ThreeIsland_House1_Text_RareRocksGemsDisplayed, MSGBOX_SIGN
end
diff --git a/data/maps/ThreeIsland_House1/text.inc b/data/maps/ThreeIsland_House1/text.inc
index 250671619..2e6a51b36 100644
--- a/data/maps/ThreeIsland_House1/text.inc
+++ b/data/maps/ThreeIsland_House1/text.inc
@@ -1,9 +1,9 @@
-gUnknown_81A2F3E:: @ 81A2F3E
+ThreeIsland_House1_Text_YoureAlwaysSoCool:: @ 81A2F3E
.string "LOSTELLE: Hi, {PLAYER}!\n"
.string "You're always so cool!\p"
.string "I'll make lunch for you, too, one\n"
.string "day, {PLAYER}.$"
-gUnknown_81A2F92:: @ 81A2F92
+ThreeIsland_House1_Text_RareRocksGemsDisplayed:: @ 81A2F92
.string "Rare rocks and gems are displayed.$"
diff --git a/data/maps/ThreeIsland_House2/map.json b/data/maps/ThreeIsland_House2/map.json
index a2fc4f7e3..c8dfc26ff 100644
--- a/data/maps/ThreeIsland_House2/map.json
+++ b/data/maps/ThreeIsland_House2/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House2_EventScript_1718F9",
+ "script": "ThreeIsland_House2_EventScript_Rocker",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House2_EventScript_1718E0",
+ "script": "ThreeIsland_House2_EventScript_Man",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_House2/scripts.inc b/data/maps/ThreeIsland_House2/scripts.inc
index a9fd52298..d66a13530 100644
--- a/data/maps/ThreeIsland_House2/scripts.inc
+++ b/data/maps/ThreeIsland_House2/scripts.inc
@@ -1,14 +1,14 @@
ThreeIsland_House2_MapScripts:: @ 81718DF
.byte 0
-ThreeIsland_House2_EventScript_1718E0:: @ 81718E0
+ThreeIsland_House2_EventScript_Man:: @ 81718E0
lock
faceplayer
famechecker FAMECHECKER_SABRINA, 1
- msgbox gUnknown_81A32CA
+ msgbox ThreeIsland_House2_Text_IAdmireSabrina
release
end
-ThreeIsland_House2_EventScript_1718F9:: @ 81718F9
- msgbox gUnknown_81A3245, MSGBOX_NPC
+ThreeIsland_House2_EventScript_Rocker:: @ 81718F9
+ msgbox ThreeIsland_House2_Text_CantMakeThisSpoonBend, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland_House2/text.inc b/data/maps/ThreeIsland_House2/text.inc
index cae2b9055..c265b2805 100644
--- a/data/maps/ThreeIsland_House2/text.inc
+++ b/data/maps/ThreeIsland_House2/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A3245:: @ 81A3245
+ThreeIsland_House2_Text_CantMakeThisSpoonBend:: @ 81A3245
.string "Urrrrrrrrgggghhhh…\n"
.string "Kwaaaaah!\p"
.string "…It's useless! I can't make this\n"
@@ -6,7 +6,7 @@ gUnknown_81A3245:: @ 81A3245
.string "Maybe I really don't have any\n"
.string "psychic powers.$"
-gUnknown_81A32CA:: @ 81A32CA
+ThreeIsland_House2_Text_IAdmireSabrina:: @ 81A32CA
.string "You know about a girl GYM LEADER\n"
.string "in SAFFRON CITY?\p"
.string "She uses PSYCHIC-type POKéMON,\n"
diff --git a/data/maps/ThreeIsland_House3/map.json b/data/maps/ThreeIsland_House3/map.json
index 684e06a68..7234a9af6 100644
--- a/data/maps/ThreeIsland_House3/map.json
+++ b/data/maps/ThreeIsland_House3/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House3_EventScript_171903",
+ "script": "ThreeIsland_House3_EventScript_Beauty",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_House3/scripts.inc b/data/maps/ThreeIsland_House3/scripts.inc
index b1c336d79..414761426 100644
--- a/data/maps/ThreeIsland_House3/scripts.inc
+++ b/data/maps/ThreeIsland_House3/scripts.inc
@@ -1,6 +1,6 @@
ThreeIsland_House3_MapScripts:: @ 8171902
.byte 0
-ThreeIsland_House3_EventScript_171903:: @ 8171903
- msgbox gUnknown_81A3379, MSGBOX_NPC
+ThreeIsland_House3_EventScript_Beauty:: @ 8171903
+ msgbox ThreeIsland_House3_Text_WantedToLiveSomewhereQuiet, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland_House3/text.inc b/data/maps/ThreeIsland_House3/text.inc
index 24b2c86c9..2a36d1ab1 100644
--- a/data/maps/ThreeIsland_House3/text.inc
+++ b/data/maps/ThreeIsland_House3/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A3379:: @ 81A3379
+ThreeIsland_House3_Text_WantedToLiveSomewhereQuiet:: @ 81A3379
.string "I bought this house because I\n"
.string "wanted to live somewhere quiet.\p"
.string "Today, I think I'll go out fishing.$"
diff --git a/data/maps/ThreeIsland_House4/map.json b/data/maps/ThreeIsland_House4/map.json
index c8aae0640..79aa8eedc 100644
--- a/data/maps/ThreeIsland_House4/map.json
+++ b/data/maps/ThreeIsland_House4/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House4_EventScript_17190D",
+ "script": "ThreeIsland_House4_EventScript_BaldingMan",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House4_EventScript_171916",
+ "script": "ThreeIsland_House4_EventScript_LittleBoy",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_House4/scripts.inc b/data/maps/ThreeIsland_House4/scripts.inc
index d0facf443..d33f7a6ad 100644
--- a/data/maps/ThreeIsland_House4/scripts.inc
+++ b/data/maps/ThreeIsland_House4/scripts.inc
@@ -1,10 +1,10 @@
ThreeIsland_House4_MapScripts:: @ 817190C
.byte 0
-ThreeIsland_House4_EventScript_17190D:: @ 817190D
- msgbox gUnknown_81A33DB, MSGBOX_NPC
+ThreeIsland_House4_EventScript_BaldingMan:: @ 817190D
+ msgbox ThreeIsland_House4_Text_GhostsInBerryForest, MSGBOX_NPC
end
-ThreeIsland_House4_EventScript_171916:: @ 8171916
- msgbox gUnknown_81A342F, MSGBOX_NPC
+ThreeIsland_House4_EventScript_LittleBoy:: @ 8171916
+ msgbox ThreeIsland_House4_Text_PapaKeepsLyingToMe, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland_House4/text.inc b/data/maps/ThreeIsland_House4/text.inc
index a32fb6a5f..f636555e5 100644
--- a/data/maps/ThreeIsland_House4/text.inc
+++ b/data/maps/ThreeIsland_House4/text.inc
@@ -1,10 +1,10 @@
-gUnknown_81A33DB:: @ 81A33DB
+ThreeIsland_House4_Text_GhostsInBerryForest:: @ 81A33DB
.string "You must never, ever go out to\n"
.string "the BERRY FOREST alone.\p"
.string "Why?\n"
.string "There are ghosts there.$"
-gUnknown_81A342F:: @ 81A342F
+ThreeIsland_House4_Text_PapaKeepsLyingToMe:: @ 81A342F
.string "Papa keeps lying to me, and won't\n"
.string "let me go out and play!$"
diff --git a/data/maps/ThreeIsland_House5/map.json b/data/maps/ThreeIsland_House5/map.json
index 209fca3f8..f5c10efdf 100644
--- a/data/maps/ThreeIsland_House5/map.json
+++ b/data/maps/ThreeIsland_House5/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_House5_EventScript_171920",
+ "script": "ThreeIsland_House5_EventScript_LittleGirl",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_House5/scripts.inc b/data/maps/ThreeIsland_House5/scripts.inc
index 4a2b4f370..f8d72e35b 100644
--- a/data/maps/ThreeIsland_House5/scripts.inc
+++ b/data/maps/ThreeIsland_House5/scripts.inc
@@ -1,15 +1,15 @@
ThreeIsland_House5_MapScripts:: @ 817191F
.byte 0
-ThreeIsland_House5_EventScript_171920:: @ 8171920
+ThreeIsland_House5_EventScript_LittleGirl:: @ 8171920
lock
faceplayer
- goto_if_set FLAG_RESCUED_LOSTELLE, EventScript_171935
- msgbox gUnknown_81A3469
+ goto_if_set FLAG_RESCUED_LOSTELLE, ThreeIsland_House5_EventScript_LittleGirlLostelleFound
+ msgbox ThreeIsland_House5_Text_ImNotLostelle
release
end
-EventScript_171935:: @ 8171935
- msgbox gUnknown_81A34DB
+ThreeIsland_House5_EventScript_LittleGirlLostelleFound:: @ 8171935
+ msgbox ThreeIsland_House5_Text_IllGoPlayWithLostelle
release
end
diff --git a/data/maps/ThreeIsland_House5/text.inc b/data/maps/ThreeIsland_House5/text.inc
index 16a034922..85ba66658 100644
--- a/data/maps/ThreeIsland_House5/text.inc
+++ b/data/maps/ThreeIsland_House5/text.inc
@@ -1,4 +1,4 @@
-gUnknown_81A3469:: @ 81A3469
+ThreeIsland_House5_Text_ImNotLostelle:: @ 81A3469
.string "Me?\n"
.string "I'm not LOSTELLE.\p"
.string "She's probably gone to the\n"
@@ -6,7 +6,7 @@ gUnknown_81A3469:: @ 81A3469
.string "She picks BERRIES there for making\n"
.string "lunch.$"
-gUnknown_81A34DB:: @ 81A34DB
+ThreeIsland_House5_Text_IllGoPlayWithLostelle:: @ 81A34DB
.string "I think I'll go play with LOSTELLE\n"
.string "today.$"
diff --git a/data/maps/ThreeIsland_Mart/map.json b/data/maps/ThreeIsland_Mart/map.json
index 84c4d70c5..d46aaa0f0 100644
--- a/data/maps/ThreeIsland_Mart/map.json
+++ b/data/maps/ThreeIsland_Mart/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Mart_EventScript_17188D",
+ "script": "ThreeIsland_Mart_EventScript_Clerk",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Mart_EventScript_1718C4",
+ "script": "ThreeIsland_Mart_EventScript_Picnicker",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Mart_EventScript_1718CD",
+ "script": "ThreeIsland_Mart_EventScript_BugCatcher",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Mart_EventScript_1718D6",
+ "script": "ThreeIsland_Mart_EventScript_Youngster",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_Mart/scripts.inc b/data/maps/ThreeIsland_Mart/scripts.inc
index 02afb8eb4..337bb2709 100644
--- a/data/maps/ThreeIsland_Mart/scripts.inc
+++ b/data/maps/ThreeIsland_Mart/scripts.inc
@@ -1,19 +1,19 @@
ThreeIsland_Mart_MapScripts:: @ 817188C
.byte 0
-ThreeIsland_Mart_EventScript_17188D:: @ 817188D
+ThreeIsland_Mart_EventScript_Clerk:: @ 817188D
goto_if_questlog EventScript_ReleaseEnd
lock
faceplayer
message Text_MayIHelpYou
waitmessage
- pokemart Items_1718B4
+ pokemart ThreeIsland_Mart_Items
msgbox Text_PleaseComeAgain
release
end
.align 2
-Items_1718B4:: @ 81718B4
+ThreeIsland_Mart_Items:: @ 81718B4
.2byte ITEM_ULTRA_BALL
.2byte ITEM_HYPER_POTION
.2byte ITEM_REVIVE
@@ -24,14 +24,14 @@ Items_1718B4:: @ 81718B4
release
end
-ThreeIsland_Mart_EventScript_1718C4:: @ 81718C4
- msgbox gUnknown_81A3114, MSGBOX_NPC
+ThreeIsland_Mart_EventScript_Picnicker:: @ 81718C4
+ msgbox ThreeIsland_Mart_Text_TrueThatCeldadonDeptStoreBigger, MSGBOX_NPC
end
-ThreeIsland_Mart_EventScript_1718CD:: @ 81718CD
- msgbox gUnknown_81A315C, MSGBOX_NPC
+ThreeIsland_Mart_EventScript_BugCatcher:: @ 81718CD
+ msgbox ThreeIsland_Mart_Text_PeopleHealWithBerriesFromForest, MSGBOX_NPC
end
-ThreeIsland_Mart_EventScript_1718D6:: @ 81718D6
- msgbox gUnknown_81A31F0, MSGBOX_NPC
+ThreeIsland_Mart_EventScript_Youngster:: @ 81718D6
+ msgbox ThreeIsland_Mart_Text_BikersWereAboutToTrashMart, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland_Mart/text.inc b/data/maps/ThreeIsland_Mart/text.inc
index 2618bf28e..8123f1e9c 100644
--- a/data/maps/ThreeIsland_Mart/text.inc
+++ b/data/maps/ThreeIsland_Mart/text.inc
@@ -1,16 +1,16 @@
-gUnknown_81A3114:: @ 81A3114
+ThreeIsland_Mart_Text_TrueThatCeldadonDeptStoreBigger:: @ 81A3114
.string "Is it true?\p"
.string "CELADON DEPT. STORE is several\n"
.string "times bigger than this shop?$"
-gUnknown_81A315C:: @ 81A315C
+ThreeIsland_Mart_Text_PeopleHealWithBerriesFromForest:: @ 81A315C
.string "I sometimes buy medicine here.\p"
.string "But a lot of people heal POKéMON\n"
.string "with BERRIES from BERRY FOREST.\p"
.string "After all, BERRIES are free and\n"
.string "they never run out.$"
-gUnknown_81A31F0:: @ 81A31F0
+ThreeIsland_Mart_Text_BikersWereAboutToTrashMart:: @ 81A31F0
.string "Those BIKERS were about to trash\n"
.string "this POKéMON MART.\p"
.string "Am I glad they decided to leave!$"
diff --git a/data/maps/ThreeIsland_PokemonCenter_1F/map.json b/data/maps/ThreeIsland_PokemonCenter_1F/map.json
index 65c74d9d8..596ea41cb 100644
--- a/data/maps/ThreeIsland_PokemonCenter_1F/map.json
+++ b/data/maps/ThreeIsland_PokemonCenter_1F/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_PokemonCenter_1F_EventScript_171841",
+ "script": "ThreeIsland_PokemonCenter_1F_EventScript_Nurse",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_PokemonCenter_1F_EventScript_17185C",
+ "script": "ThreeIsland_PokemonCenter_1F_EventScript_Rocker",
"flag": "0"
},
{
@@ -51,7 +51,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_PokemonCenter_1F_EventScript_171853",
+ "script": "ThreeIsland_PokemonCenter_1F_EventScript_Lass",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_PokemonCenter_1F_EventScript_17184A",
+ "script": "ThreeIsland_PokemonCenter_1F_EventScript_Sailor",
"flag": "0"
}
],
diff --git a/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc b/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc
index 15d568a6f..1f66b557d 100644
--- a/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc
@@ -7,21 +7,21 @@ ThreeIsland_PokemonCenter_1F_OnTransition:: @ 817183D
setrespawn SPAWN_THREE_ISLAND
end
-ThreeIsland_PokemonCenter_1F_EventScript_171841:: @ 8171841
+ThreeIsland_PokemonCenter_1F_EventScript_Nurse:: @ 8171841
lock
faceplayer
call EventScript_PkmnCenterNurse
release
end
-ThreeIsland_PokemonCenter_1F_EventScript_17184A:: @ 817184A
- msgbox gUnknown_81A303B, MSGBOX_NPC
+ThreeIsland_PokemonCenter_1F_EventScript_Sailor:: @ 817184A
+ msgbox ThreeIsland_PokemonCenter_1F_Text_ImpossibleToSurfBetweenIslands, MSGBOX_NPC
end
-ThreeIsland_PokemonCenter_1F_EventScript_171853:: @ 8171853
- msgbox gUnknown_81A30A3, MSGBOX_NPC
+ThreeIsland_PokemonCenter_1F_EventScript_Lass:: @ 8171853
+ msgbox ThreeIsland_PokemonCenter_1F_Text_AlwaysBerriesInBerryForest, MSGBOX_NPC
end
-ThreeIsland_PokemonCenter_1F_EventScript_17185C:: @ 817185C
- msgbox gUnknown_81A2FB5, MSGBOX_NPC
+ThreeIsland_PokemonCenter_1F_EventScript_Rocker:: @ 817185C
+ msgbox ThreeIsland_PokemonCenter_1F_Text_PCNetworkCanLinkWithKanto, MSGBOX_NPC
end
diff --git a/data/maps/ThreeIsland_PokemonCenter_1F/text.inc b/data/maps/ThreeIsland_PokemonCenter_1F/text.inc
index 449f80d70..a9d553efd 100644
--- a/data/maps/ThreeIsland_PokemonCenter_1F/text.inc
+++ b/data/maps/ThreeIsland_PokemonCenter_1F/text.inc
@@ -1,17 +1,17 @@
-gUnknown_81A2FB5:: @ 81A2FB5
+ThreeIsland_PokemonCenter_1F_Text_PCNetworkCanLinkWithKanto:: @ 81A2FB5
.string "Hey, did you hear the news?\p"
.string "The PC network here can now link\n"
.string "with PCs in KANTO.\p"
.string "I don't know how that came about,\n"
.string "but it's fantastic!$"
-gUnknown_81A303B:: @ 81A303B
+ThreeIsland_PokemonCenter_1F_Text_ImpossibleToSurfBetweenIslands:: @ 81A303B
.string "It's impossible to SURF between the\n"
.string "islands around these parts.\p"
.string "The tides are too fast and\n"
.string "treacherous.$"
-gUnknown_81A30A3:: @ 81A30A3
+ThreeIsland_PokemonCenter_1F_Text_AlwaysBerriesInBerryForest:: @ 81A30A3
.string "Let's crush BERRIES!\n"
.string "…That'd be wasting BERRIES?\p"
.string "You can always find some BERRIES\n"
diff --git a/data/maps/ThreeIsland_Port/map.json b/data/maps/ThreeIsland_Port/map.json
index 40b6fab36..c469fee53 100644
--- a/data/maps/ThreeIsland_Port/map.json
+++ b/data/maps/ThreeIsland_Port/map.json
@@ -31,7 +31,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Port_EventScript_168796",
+ "script": "ThreeIsland_Port_EventScript_Woman",
"flag": "0"
},
{
@@ -44,7 +44,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Port_EventScript_1687CC",
+ "script": "ThreeIsland_Port_EventScript_Biker1",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
},
{
@@ -57,7 +57,7 @@
"movement_range_y": 2,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "ThreeIsland_Port_EventScript_1687D5",
+ "script": "ThreeIsland_Port_EventScript_Biker2",
"flag": "FLAG_HIDE_THREE_ISLAND_BIKERS"
}
],
diff --git a/data/maps/ThreeIsland_Port/scripts.inc b/data/maps/ThreeIsland_Port/scripts.inc
index f7aa40e76..0a664b07d 100644
--- a/data/maps/ThreeIsland_Port/scripts.inc
+++ b/data/maps/ThreeIsland_Port/scripts.inc
@@ -7,33 +7,33 @@ ThreeIsland_Port_OnTransition:: @ 816878F
setflag FLAG_SEVII_DETOUR_FINISHED
end
-ThreeIsland_Port_EventScript_168796:: @ 8168796
+ThreeIsland_Port_EventScript_Woman:: @ 8168796
lock
faceplayer
compare VAR_MAP_SCENE_TWO_ISLAND_JOYFUL_GAME_CORNER, 2
- goto_if_ge EventScript_1687B8
+ goto_if_ge ThreeIsland_Port_EventScript_WomanLostelleFound
compare VAR_MAP_SCENE_THREE_ISLAND, 4
- goto_if_ge EventScript_1687C2
- msgbox gUnknown_818A307
+ goto_if_ge ThreeIsland_Port_EventScript_WomanBikersGone
+ msgbox ThreeIsland_Port_Text_IllCallThePolice
release
end
-EventScript_1687B8:: @ 81687B8
- msgbox gUnknown_818A38B
+ThreeIsland_Port_EventScript_WomanLostelleFound:: @ 81687B8
+ msgbox ThreeIsland_Port_Text_EverythingTurnedOutForBest
release
end
-EventScript_1687C2:: @ 81687C2
- msgbox gUnknown_818A339
+ThreeIsland_Port_EventScript_WomanBikersGone:: @ 81687C2
+ msgbox ThreeIsland_Port_Text_ThankGoodnessBikersGone
release
end
-ThreeIsland_Port_EventScript_1687CC:: @ 81687CC
- msgbox gUnknown_818A261, MSGBOX_NPC
+ThreeIsland_Port_EventScript_Biker1:: @ 81687CC
+ msgbox ThreeIsland_Port_Text_WereKantoRiderFederation, MSGBOX_NPC
end
-ThreeIsland_Port_EventScript_1687D5:: @ 81687D5
+ThreeIsland_Port_EventScript_Biker2:: @ 81687D5
lock
- msgbox gUnknown_818A2D8
+ msgbox ThreeIsland_Port_Text_ForkOverMoney
release
end
diff --git a/data/maps/ThreeIsland_Port/text.inc b/data/maps/ThreeIsland_Port/text.inc
index e98d5f53c..72026b353 100644
--- a/data/maps/ThreeIsland_Port/text.inc
+++ b/data/maps/ThreeIsland_Port/text.inc
@@ -1,25 +1,25 @@
-gUnknown_818A261:: @ 818A261
+ThreeIsland_Port_Text_WereKantoRiderFederation:: @ 818A261
.string "We're the KANTO RIDER FEDERATION!\n"
.string "Vroom! Vavavavooom! Vroom!\p"
.string "My bike's wimpy, so I have to\n"
.string "make exhaust noises myself!$"
-gUnknown_818A2D8:: @ 818A2D8
+ThreeIsland_Port_Text_ForkOverMoney:: @ 818A2D8
.string "Hey, hey, lady!\n"
.string "Fork over some spending money!$"
-gUnknown_818A307:: @ 818A307
+ThreeIsland_Port_Text_IllCallThePolice:: @ 818A307
.string "Aiyeeh!\p"
.string "Wh-who are you?!\n"
.string "I… I'll call the police!$"
-gUnknown_818A339:: @ 818A339
+ThreeIsland_Port_Text_ThankGoodnessBikersGone:: @ 818A339
.string "Those BIKERS…\n"
.string "Are they gone?\p"
.string "Oh, thank goodness!\n"
.string "They certainly had me terrified!$"
-gUnknown_818A38B:: @ 818A38B
+ThreeIsland_Port_Text_EverythingTurnedOutForBest:: @ 818A38B
.string "Those BIKERS ran off, and\n"
.string "LOSTELLE was found safe.\p"
.string "Everything turned out for the best!$"
diff --git a/data/maps/TwoIsland_CapeBrink_House/text.inc b/data/maps/TwoIsland_CapeBrink_House/text.inc
new file mode 100644
index 000000000..4b691163c
--- /dev/null
+++ b/data/maps/TwoIsland_CapeBrink_House/text.inc
@@ -0,0 +1,53 @@
+Text_UltimateMoveThatMon:: @ 81A46C6
+ .string "I perfected the ultimate move of\n"
+ .string "its type…\p"
+ .string "But will no one take it for\n"
+ .string "future use?\p"
+ .string "…Hm? Hmmm!\p"
+ .string "Y-you…\n"
+ .string "Th-that {STR_VAR_1}…$"
+
+Text_JustMistaken:: @ 81A4737
+ .string "…No…\n"
+ .string "I was just mistaken.$"
+
+Text_AllowMeToTeachMonUltimateMove:: @ 81A4751
+ .string "Oh! This is the one!\n"
+ .string "This is the POKéMON!\p"
+ .string "This {STR_VAR_1} is worthy of\n"
+ .string "learning my ultimate move!\p"
+ .string "Will you allow it?\p"
+ .string "Will you allow your {STR_VAR_1} to\n"
+ .string "learn my {STR_VAR_2}?$"
+
+Text_YouRejectIt:: @ 81A47E5
+ .string "Gaah! You reject it?\n"
+ .string "No, I won't be dissuaded!$"
+
+Text_LetMeConferUltimateMove:: @ 81A4814
+ .string "You will allow it?\p"
+ .string "Then, let me confer my ultimate\n"
+ .string "{STR_VAR_2} on your {STR_VAR_1}.\p"
+ .string "Ggggrah-awooo!$"
+
+Text_TaughtMove:: @ 81A4865
+ .string "Gasp, gasp, gasp…\p"
+ .string "I didn't think I could teach that\n"
+ .string "move while I still lived…$"
+
+Text_MakeBestUseOfMove:: @ 81A48B3
+ .string "I implore you to make the best\n"
+ .string "use of that move and gain power!$"
+
+Text_PassedOnEverythingIKnow:: @ 81A48F3
+ .string "Gasp, gasp, gasp…\p"
+ .string "I have no regrets now.\n"
+ .string "I've passed on everything I know.\p"
+ .string "Now I can live out my life knowing\n"
+ .string "my work is done.$"
+
+Text_FeelRejuvenated:: @ 81A4972
+ .string "After I passed on my knowledge to\n"
+ .string "you, I felt so much relief.\p"
+ .string "In fact, I feel rejuvenated,\n"
+ .string "as if I were younger again!$"
diff --git a/data/maps/VermilionCity_House3/map.json b/data/maps/VermilionCity_House3/map.json
index c5cd83671..2c12e663c 100644
--- a/data/maps/VermilionCity_House3/map.json
+++ b/data/maps/VermilionCity_House3/map.json
@@ -25,7 +25,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "VermilionCity_House3_EventScript_16BAAA",
+ "script": "VermilionCity_House3_EventScript_Boy",
"flag": "0"
},
{
@@ -38,7 +38,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "VermilionCity_House3_EventScript_16BABC",
+ "script": "VermilionCity_House3_EventScript_Pidgey",
"flag": "0"
},
{
@@ -64,7 +64,7 @@
"movement_range_y": 1,
"trainer_type": 0,
"trainer_sight_or_berry_tree_id": 0,
- "script": "VermilionCity_House3_EventScript_16BAB3",
+ "script": "VermilionCity_House3_EventScript_Lass",
"flag": "0"
}
],
@@ -98,7 +98,7 @@
"x": 6,
"y": 4,
"elevation": 3,
- "script": "VermilionCity_House3_EventScript_16BACF"
+ "script": "VermilionCity_House3_EventScript_Letter"
}
]
}
diff --git a/data/maps/VermilionCity_House3/scripts.inc b/data/maps/VermilionCity_House3/scripts.inc
index 8f9de55e0..78caf2156 100644
--- a/data/maps/VermilionCity_House3/scripts.inc
+++ b/data/maps/VermilionCity_House3/scripts.inc
@@ -1,24 +1,24 @@
VermilionCity_House3_MapScripts:: @ 816BAA9
.byte 0
-VermilionCity_House3_EventScript_16BAAA:: @ 816BAAA
- msgbox gUnknown_81953AF, MSGBOX_NPC
+VermilionCity_House3_EventScript_Boy:: @ 816BAAA
+ msgbox VermilionCity_House3_Text_PidgeyFlyLetterToSaffron, MSGBOX_NPC
end
-VermilionCity_House3_EventScript_16BAB3:: @ 816BAB3
- msgbox gUnknown_8195471, MSGBOX_NPC
+VermilionCity_House3_EventScript_Lass:: @ 816BAB3
+ msgbox VermilionCity_House3_Text_SendMyPidgeyToUnionRoom, MSGBOX_NPC
end
-VermilionCity_House3_EventScript_16BABC:: @ 816BABC
+VermilionCity_House3_EventScript_Pidgey:: @ 816BABC
lock
faceplayer
waitse
playmoncry SPECIES_PIDGEY, 0
- msgbox gUnknown_81953EE
+ msgbox VermilionCity_House3_Text_Pidgey
waitmoncry
release
end
-VermilionCity_House3_EventScript_16BACF:: @ 816BACF
- msgbox gUnknown_8195400, MSGBOX_SIGN
+VermilionCity_House3_EventScript_Letter:: @ 816BACF
+ msgbox VermilionCity_House3_Text_DearPippiLetter, MSGBOX_SIGN
end
diff --git a/data/maps/VermilionCity_House3/text.inc b/data/maps/VermilionCity_House3/text.inc
index 99ea3e49e..88be18c10 100644
--- a/data/maps/VermilionCity_House3/text.inc
+++ b/data/maps/VermilionCity_House3/text.inc
@@ -1,18 +1,18 @@
-gUnknown_81953AF:: @ 81953AF
+VermilionCity_House3_Text_PidgeyFlyLetterToSaffron:: @ 81953AF
.string "I'm getting my PIDGEY to fly a\n"
.string "letter to SAFFRON in the north.$"
-gUnknown_81953EE:: @ 81953EE
+VermilionCity_House3_Text_Pidgey:: @ 81953EE
.string "PIDGEY: Kurukkoo!$"
-gUnknown_8195400:: @ 8195400
+VermilionCity_House3_Text_DearPippiLetter:: @ 8195400
.string "Dear PIPPI,\n"
.string "I hope to see you soon.\p"
.string "I heard SAFFRON has problems with\n"
.string "TEAM ROCKET.\p"
.string "VERMILION appears to be safe.$"
-gUnknown_8195471:: @ 8195471
+VermilionCity_House3_Text_SendMyPidgeyToUnionRoom:: @ 8195471
.string "I want to exchange MAIL with all\n"
.string "sorts of people.\p"
.string "I send my PIDGEY to a UNION ROOM\n"
diff --git a/data/scripts/fame_checker.inc b/data/scripts/fame_checker.inc
index c844cc115..c7dab5b52 100644
--- a/data/scripts/fame_checker.inc
+++ b/data/scripts/fame_checker.inc
@@ -27,11 +27,11 @@ EventScript_1ACDB5:: @ 81ACDB5
release
end
-FourIsland_PokemonCenter_1F_EventScript_1ACDD0:: @ 81ACDD0
+FourIsland_PokemonCenter_1F_EventScript_PokemonJournal:: @ 81ACDD0
lockall
famechecker FAMECHECKER_DAISY, 5
textcolor 3
- msgbox gUnknown_81B1B3D
+ msgbox PokemonJournal_Text_SpecialFeatureDaisyOak
releaseall
end
@@ -143,20 +143,20 @@ FiveIsland_ResortGorgeous_House_EventScript_1ACF2C:: @ 81ACF2C
releaseall
end
-FourIsland_Mart_EventScript_1ACF46:: @ 81ACF46
+FourIsland_Mart_EventScript_OldMan:: @ 81ACF46
lock
faceplayer
famechecker FAMECHECKER_LORELEI, 2
- msgbox Text_1A3A60
+ msgbox FourIsland_Mart_Text_LoreleiGrewUpOnThisIsland
release
end
-FiveIsland_PokemonCenter_1F_EventScript_1ACF5F:: @ 81ACF5F
+FiveIsland_PokemonCenter_1F_EventScript_PokemonJournal:: @ 81ACF5F
lock
faceplayer
famechecker FAMECHECKER_LORELEI, 3
textcolor 3
- msgbox gUnknown_81B187F
+ msgbox PokemonJournal_Text_SpecialFeatureLorelei
release
end
@@ -169,11 +169,11 @@ SaffronCity_PokemonTrainerFanClub_EventScript_PokemonJournalBruno:: @ 81ACF7A
release
end
-SevenIsland_SevaultCanyon_EventScript_1ACF95:: @ 81ACF95
+SevenIsland_SevaultCanyon_EventScript_BlackBelt:: @ 81ACF95
lock
faceplayer
famechecker FAMECHECKER_BRUNO, 5
- msgbox Text_18CF4D
+ msgbox SevenIsland_SevaultCanyon_Text_BrunoTrainedWithBrawly
release
end
@@ -186,20 +186,20 @@ IndigoPlateau_PokemonCenter_1F_EventScript_BlackBelt:: @ 81ACFAE
release
end
-SevenIsland_PokemonCenter_1F_EventScript_1ACFD4:: @ 81ACFD4
+SevenIsland_PokemonCenter_1F_EventScript_PokemonJournal:: @ 81ACFD4
lock
faceplayer
famechecker FAMECHECKER_AGATHA, 3
textcolor 3
- msgbox gUnknown_81B19A8
+ msgbox PokemonJournal_Text_SpecialFeatureAgatha
release
end
-SixIsland_Mart_EventScript_1ACFEF:: @ 81ACFEF
+SixIsland_Mart_EventScript_OldWoman:: @ 81ACFEF
lock
faceplayer
famechecker FAMECHECKER_AGATHA, 5
- msgbox Text_1A41CA
+ msgbox SixIsland_Mart_Text_AgathaOldestEverEliteFourMember
release
end
diff --git a/data/scripts/trainer_card.inc b/data/scripts/trainer_card.inc
index 906744fa8..39589cffa 100644
--- a/data/scripts/trainer_card.inc
+++ b/data/scripts/trainer_card.inc
@@ -1,79 +1,79 @@
CeladonCity_GameCorner_EventScript_PhotoPrinter:: @ 81B2867
lockall
showmoneybox 0, 0, 0
- msgbox gUnknown_81B1D7D, MSGBOX_YESNO
+ msgbox CeladonCity_GameCorner_Text_TryPokemonPrinter, MSGBOX_YESNO
compare VAR_RESULT, NO
- goto_if_eq EventScript_1B2926
+ goto_if_eq CeladonCity_GameCorner_EventScript_DeclinePhoto
checkmoney 50, 0
compare VAR_RESULT, FALSE
- goto_if_eq EventScript_1B292B
+ goto_if_eq CeladonCity_GameCorner_EventScript_NotEnoughMoneyForPhoto
playse SE_SHOP
removemoney 50, 0
updatemoneybox 0, 0, 0
waitse
- message gUnknown_81B1E24
+ message CeladonCity_GameCorner_Text_ChoosePrintType
waitmessage
multichoice 21, 0, MULTICHOICE_TRAINER_CARD_ICON_TINT, TRUE
switch VAR_RESULT
- case 0, EventScript_1B28DB
- case 1, EventScript_1B28E6
- case 2, EventScript_1B28F1
- case 3, EventScript_1B28FC
+ case 0, CeladonCity_GameCorner_EventScript_PrintTypeNormal
+ case 1, CeladonCity_GameCorner_EventScript_PrintTypeBlack
+ case 2, CeladonCity_GameCorner_EventScript_PrintTypePink
+ case 3, CeladonCity_GameCorner_EventScript_PrintTypeSepia
end
-EventScript_1B28DB:: @ 81B28DB
- setvar VAR_0x8004, 0
- goto EventScript_1B2907
+CeladonCity_GameCorner_EventScript_PrintTypeNormal:: @ 81B28DB
+ setvar VAR_0x8004, MON_ICON_TINT_NORMAL
+ goto CeladonCity_GameCorner_EventScript_PrintPhoto
end
-EventScript_1B28E6:: @ 81B28E6
- setvar VAR_0x8004, 1
- goto EventScript_1B2907
+CeladonCity_GameCorner_EventScript_PrintTypeBlack:: @ 81B28E6
+ setvar VAR_0x8004, MON_ICON_TINT_BLACK
+ goto CeladonCity_GameCorner_EventScript_PrintPhoto
end
-EventScript_1B28F1:: @ 81B28F1
- setvar VAR_0x8004, 2
- goto EventScript_1B2907
+CeladonCity_GameCorner_EventScript_PrintTypePink:: @ 81B28F1
+ setvar VAR_0x8004, MON_ICON_TINT_PINK
+ goto CeladonCity_GameCorner_EventScript_PrintPhoto
end
-EventScript_1B28FC:: @ 81B28FC
- setvar VAR_0x8004, 3
- goto EventScript_1B2907
+CeladonCity_GameCorner_EventScript_PrintTypeSepia:: @ 81B28FC
+ setvar VAR_0x8004, MON_ICON_TINT_SEPIA
+ goto CeladonCity_GameCorner_EventScript_PrintPhoto
end
-EventScript_1B2907:: @ 81B2907
- message gUnknown_81B1E42
+CeladonCity_GameCorner_EventScript_PrintPhoto:: @ 81B2907
+ message CeladonCity_GameCorner_Text_BigSmileForPhoto
waitmessage
playse MUS_ME_PHOTO
dofieldeffect FLDEFF_UNK_45
delay 60
special Special_UpdateTrainerCardPhotoIcons
- msgbox gUnknown_81B1E7D
+ msgbox CeladonCity_GameCorner_Text_PrintIsReadyCheckTrainerCard
hidemoneybox 0, 0
releaseall
end
-EventScript_1B2926:: @ 81B2926
+CeladonCity_GameCorner_EventScript_DeclinePhoto:: @ 81B2926
hidemoneybox 0, 0
releaseall
end
-EventScript_1B292B:: @ 81B292B
- msgbox gUnknown_81B1E07
+CeladonCity_GameCorner_EventScript_NotEnoughMoneyForPhoto:: @ 81B292B
+ msgbox CeladonCity_GameCorner_Text_DontHaveEnoughMoney
hidemoneybox 0, 0
releaseall
end
-FourIsland_House2_EventScript_1B2938:: @ 81B2938
+FourIsland_House2_EventScript_StickerMan:: @ 81B2938
lock
- specialvar VAR_0x8008, Special_StickerLadyGetBragFlags
- goto_if_unset FLAG_MET_STICKER_LADY, EventScript_1B2951
- goto_if_set FLAG_MET_STICKER_LADY, EventScript_1B2994
+ specialvar VAR_0x8008, StickerManGetBragFlags
+ goto_if_unset FLAG_MET_STICKER_MAN, FourIsland_House2_EventScript_MeetStickerMan
+ goto_if_set FLAG_MET_STICKER_MAN, EventScript_1B2994
end
-EventScript_1B2951:: @ 81B2951
- setflag FLAG_MET_STICKER_LADY
- msgbox gUnknown_81B1EB3
+FourIsland_House2_EventScript_MeetStickerMan:: @ 81B2951
+ setflag FLAG_MET_STICKER_MAN
+ msgbox FourIsland_House2_Text_WishICouldShowOffStickers
applymovement 1, Movement_FacePlayer
waitmovement 0
playse SE_PIN
@@ -82,10 +82,10 @@ EventScript_1B2951:: @ 81B2951
applymovement 1, Movement_Delay48
waitmovement 0
compare VAR_0x8008, 0
- goto_if_eq EventScript_1B2B8E
- message gUnknown_81B1EF8
+ goto_if_eq FourIsland_House2_EventScript_StickerManNothingToBrag
+ message FourIsland_House2_Text_GiveYouStickerIfYouBrag
waitmessage
- goto EventScript_1B29D0
+ goto FourIsland_House2_EventScript_ChooseBrag
end
EventScript_1B2994:: @ 81B2994
@@ -95,290 +95,282 @@ EventScript_1B2994:: @ 81B2994
special sub_8112364
compare VAR_0x8008, 0
goto_if_eq EventScript_1B29C6
- message gUnknown_81B2025
+ message FourIsland_House2_Text_BragAboutWhatToday
waitmessage
- goto EventScript_1B29D0
+ goto FourIsland_House2_EventScript_ChooseBrag
end
EventScript_1B29C6:: @ 81B29C6
- msgbox gUnknown_81B1FEF
+ msgbox FourIsland_House2_Text_BragAboutSomethingForMe
release
end
-EventScript_1B29D0:: @ 81B29D0
+FourIsland_House2_EventScript_ChooseBrag:: @ 81B29D0
switch VAR_0x8008
- case 1, EventScript_1B2A23
- case 2, EventScript_1B2A4F
- case 4, EventScript_1B2A7B
- case 3, EventScript_1B2AA7
- case 5, EventScript_1B2ADE
- case 6, EventScript_1B2B15
- case 7, EventScript_1B2B4C
+ case 1, FourIsland_House2_EventScript_ChooseBragHoF
+ case 2, FourIsland_House2_EventScript_ChooseBragEggs
+ case 4, FourIsland_House2_EventScript_ChooseBragLinkWins
+ case 3, FourIsland_House2_EventScript_ChooseBragHoFEggs
+ case 5, FourIsland_House2_EventScript_ChooseBragHoFLinkWins
+ case 6, FourIsland_House2_EventScript_ChooseBragEggsLinkWins
+ case 7, FourIsland_House2_EventScript_ChooseBragHofEggsLinkWins
end
-EventScript_1B2A23:: @ 81B2A23
+FourIsland_House2_EventScript_ChooseBragHoF:: @ 81B2A23
multichoice 15, 8, MULTICHOICE_HOF_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2B98
- case 1, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragHoF
+ case 1, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2A4F:: @ 81B2A4F
+FourIsland_House2_EventScript_ChooseBragEggs:: @ 81B2A4F
multichoice 16, 8, MULTICHOICE_EGGS_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2C62
- case 1, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragEggs
+ case 1, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2A7B:: @ 81B2A7B
+FourIsland_House2_EventScript_ChooseBragLinkWins:: @ 81B2A7B
multichoice 15, 8, MULTICHOICE_VICTORIES_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2D2C
- case 1, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragLinkWins
+ case 1, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2AA7:: @ 81B2AA7
+FourIsland_House2_EventScript_ChooseBragHoFEggs:: @ 81B2AA7
multichoice 15, 6, MULTICHOICE_HOF_EGGS_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2B98
- case 1, EventScript_1B2C62
- case 2, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragHoF
+ case 1, FourIsland_House2_EventScript_BragEggs
+ case 2, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2ADE:: @ 81B2ADE
+FourIsland_House2_EventScript_ChooseBragHoFLinkWins:: @ 81B2ADE
multichoice 15, 6, MULTICHOICE_HOF_VICTORIES_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2B98
- case 1, EventScript_1B2D2C
- case 2, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragHoF
+ case 1, FourIsland_House2_EventScript_BragLinkWins
+ case 2, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2B15:: @ 81B2B15
+FourIsland_House2_EventScript_ChooseBragEggsLinkWins:: @ 81B2B15
multichoice 15, 6, MULTICHOICE_EGGS_VICTORIES_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2C62
- case 1, EventScript_1B2D2C
- case 2, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragEggs
+ case 1, FourIsland_House2_EventScript_BragLinkWins
+ case 2, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2B4C:: @ 81B2B4C
+FourIsland_House2_EventScript_ChooseBragHofEggsLinkWins:: @ 81B2B4C
multichoice 15, 5, MULTICHOICE_HOF_EGGS_VICTORIES_QUIT, FALSE
switch VAR_RESULT
- case 0, EventScript_1B2B98
- case 1, EventScript_1B2C62
- case 2, EventScript_1B2D2C
- case 3, EventScript_1B2DF6
- case SCR_MENU_CANCEL, EventScript_1B2DF6
+ case 0, FourIsland_House2_EventScript_BragHoF
+ case 1, FourIsland_House2_EventScript_BragEggs
+ case 2, FourIsland_House2_EventScript_BragLinkWins
+ case 3, FourIsland_House2_EventScript_QuitBrag
+ case SCR_MENU_CANCEL, FourIsland_House2_EventScript_QuitBrag
end
-EventScript_1B2B8E:: @ 81B2B8E
- msgbox gUnknown_81B1EF8
+FourIsland_House2_EventScript_StickerManNothingToBrag:: @ 81B2B8E
+ msgbox FourIsland_House2_Text_GiveYouStickerIfYouBrag
release
end
-EventScript_1B2B98:: @ 81B2B98
+FourIsland_House2_EventScript_BragHoF:: @ 81B2B98
compare VAR_0x8004, 39
- goto_if_le EventScript_1B2BC5
+ goto_if_le FourIsland_House2_EventScript_BragHoFLowest
compare VAR_0x8004, 99
- goto_if_le EventScript_1B2BE3
+ goto_if_le FourIsland_House2_EventScript_BragHoFLow
compare VAR_0x8004, 199
- goto_if_le EventScript_1B2C01
+ goto_if_le FourIsland_House2_EventScript_BragHoFHigh
compare VAR_0x8004, 200
- goto_if_ge EventScript_1B2C1F
+ goto_if_ge FourIsland_House2_EventScript_BragHoFHighest
end
-EventScript_1B2BC5:: @ 81B2BC5
+FourIsland_House2_EventScript_BragHoFLowest:: @ 81B2BC5
compare VAR_HOF_BRAG_STATE, 1
- goto_if_eq EventScript_1B2C3D
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedHoF
setvar VAR_HOF_BRAG_STATE, 1
- msgbox gUnknown_81B206E
- goto EventScript_1B2C51
-
-EventScript_1B2BE2:: @ 81B2BE2
+ msgbox FourIsland_House2_Text_WowHoFLowest
+ goto FourIsland_House2_EventScript_BraggedHoF
end
-EventScript_1B2BE3:: @ 81B2BE3
+FourIsland_House2_EventScript_BragHoFLow:: @ 81B2BE3
compare VAR_HOF_BRAG_STATE, 2
- goto_if_eq EventScript_1B2C3D
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedHoF
setvar VAR_HOF_BRAG_STATE, 2
- msgbox gUnknown_81B20CF
- goto EventScript_1B2C51
-
-EventScript_1B2C00:: @ 81B2C00
+ msgbox FourIsland_House2_Text_WowHoFLow
+ goto FourIsland_House2_EventScript_BraggedHoF
end
-EventScript_1B2C01:: @ 81B2C01
+FourIsland_House2_EventScript_BragHoFHigh:: @ 81B2C01
compare VAR_HOF_BRAG_STATE, 3
- goto_if_eq EventScript_1B2C3D
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedHoF
setvar VAR_HOF_BRAG_STATE, 3
- msgbox gUnknown_81B2133
- goto EventScript_1B2C51
-
-EventScript_1B2C1E:: @ 81B2C1E
+ msgbox FourIsland_House2_Text_WowHoFHigh
+ goto FourIsland_House2_EventScript_BraggedHoF
end
-EventScript_1B2C1F:: @ 81B2C1F
+FourIsland_House2_EventScript_BragHoFHighest:: @ 81B2C1F
compare VAR_HOF_BRAG_STATE, 4
- goto_if_eq EventScript_1B2C47
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedHoFMax
setvar VAR_HOF_BRAG_STATE, 4
- msgbox gUnknown_81B21C4
- goto EventScript_1B2C51
-
-EventScript_1B2C3C:: @ 81B2C3C
+ msgbox FourIsland_House2_Text_WowHoFHighest
+ goto FourIsland_House2_EventScript_BraggedHoF
end
-EventScript_1B2C3D:: @ 81B2C3D
- msgbox gUnknown_81B227C
+FourIsland_House2_EventScript_AlreadyBraggedHoF:: @ 81B2C3D
+ msgbox FourIsland_House2_Text_ComeBackWithBetterStoryHoF
release
end
-EventScript_1B2C47:: @ 81B2C47
- msgbox gUnknown_81B22B0
+FourIsland_House2_EventScript_AlreadyBraggedHoFMax:: @ 81B2C47
+ msgbox FourIsland_House2_Text_LivingLegendHoF
release
end
-EventScript_1B2C51:: @ 81B2C51
+FourIsland_House2_EventScript_BraggedHoF:: @ 81B2C51
textcolor 3
playfanfare MUS_FANFA1
- message gUnknown_81B2242
+ message FourIsland_House2_Text_HoFStickerApplied
waitmessage
waitfanfare
delay 90
release
end
-EventScript_1B2C62:: @ 81B2C62
+FourIsland_House2_EventScript_BragEggs:: @ 81B2C62
compare VAR_0x8005, 99
- goto_if_le EventScript_1B2C8F
+ goto_if_le FourIsland_House2_EventScript_BragEggsLowest
compare VAR_0x8005, 199
- goto_if_le EventScript_1B2CAD
+ goto_if_le FourIsland_House2_EventScript_BragEggsLow
compare VAR_0x8005, 299
- goto_if_le EventScript_1B2CCB
+ goto_if_le FourIsland_House2_EventScript_BragEggsHigh
compare VAR_0x8005, 300
- goto_if_ge EventScript_1B2CE9
+ goto_if_ge FourIsland_House2_EventScript_BragEggsHighest
end
-EventScript_1B2C8F:: @ 81B2C8F
+FourIsland_House2_EventScript_BragEggsLowest:: @ 81B2C8F
compare VAR_EGG_BRAG_STATE, 1
- goto_if_eq EventScript_1B2D07
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedEggs
setvar VAR_EGG_BRAG_STATE, 1
- msgbox gUnknown_81B2308
- goto EventScript_1B2D1B
+ msgbox FourIsland_House2_Text_WowEggsLowest
+ goto FourIsland_House2_EventScript_BraggedEggs
end
-EventScript_1B2CAD:: @ 81B2CAD
+FourIsland_House2_EventScript_BragEggsLow:: @ 81B2CAD
compare VAR_EGG_BRAG_STATE, 2
- goto_if_eq EventScript_1B2D07
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedEggs
setvar VAR_EGG_BRAG_STATE, 2
- msgbox gUnknown_81B2372
- goto EventScript_1B2D1B
+ msgbox FourIsland_House2_Text_WowEggsLow
+ goto FourIsland_House2_EventScript_BraggedEggs
end
-EventScript_1B2CCB:: @ 81B2CCB
+FourIsland_House2_EventScript_BragEggsHigh:: @ 81B2CCB
compare VAR_EGG_BRAG_STATE, 3
- goto_if_eq EventScript_1B2D07
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedEggs
setvar VAR_EGG_BRAG_STATE, 3
- msgbox gUnknown_81B23E0
- goto EventScript_1B2D1B
+ msgbox FourIsland_House2_Text_WowEggsHigh
+ goto FourIsland_House2_EventScript_BraggedEggs
end
-EventScript_1B2CE9:: @ 81B2CE9
+FourIsland_House2_EventScript_BragEggsHighest:: @ 81B2CE9
compare VAR_EGG_BRAG_STATE, 4
- goto_if_eq EventScript_1B2D11
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedEggsMax
setvar VAR_EGG_BRAG_STATE, 4
- msgbox gUnknown_81B2448
- goto EventScript_1B2D1B
+ msgbox FourIsland_House2_Text_WowEggsHighest
+ goto FourIsland_House2_EventScript_BraggedEggs
end
-EventScript_1B2D07:: @ 81B2D07
- msgbox gUnknown_81B251B
+FourIsland_House2_EventScript_AlreadyBraggedEggs:: @ 81B2D07
+ msgbox FourIsland_House2_Text_ComeBackWithBetterStoryEggs
release
end
-EventScript_1B2D11:: @ 81B2D11
- msgbox gUnknown_81B254F
+FourIsland_House2_EventScript_AlreadyBraggedEggsMax:: @ 81B2D11
+ msgbox FourIsland_House2_Text_LivingLegendEggs
release
end
-EventScript_1B2D1B:: @ 81B2D1B
+FourIsland_House2_EventScript_BraggedEggs:: @ 81B2D1B
textcolor 3
playfanfare MUS_FANFA1
- message gUnknown_81B24EA
+ message FourIsland_House2_Text_EggStickerApplied
waitmessage
waitfanfare
delay 90
release
end
-EventScript_1B2D2C:: @ 81B2D2C
+FourIsland_House2_EventScript_BragLinkWins:: @ 81B2D2C
compare VAR_0x8006, 19
- goto_if_le EventScript_1B2D59
+ goto_if_le FourIsland_House2_EventScript_BragLinkWinsLowest
compare VAR_0x8006, 49
- goto_if_le EventScript_1B2D77
+ goto_if_le FourIsland_House2_EventScript_BragLinkWinsLow
compare VAR_0x8006, 99
- goto_if_le EventScript_1B2D95
+ goto_if_le FourIsland_House2_EventScript_BragLinkWinsHigh
compare VAR_0x8006, 100
- goto_if_ge EventScript_1B2DB3
+ goto_if_ge FourIsland_House2_EventScript_BragLinkWinsHighest
end
-EventScript_1B2D59:: @ 81B2D59
+FourIsland_House2_EventScript_BragLinkWinsLowest:: @ 81B2D59
compare VAR_LINK_WIN_BRAG_STATE, 1
- goto_if_eq EventScript_1B2DD1
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedLinkWins
setvar VAR_LINK_WIN_BRAG_STATE, 1
- msgbox gUnknown_81B25A7
- goto EventScript_1B2DE5
+ msgbox FourIsland_House2_Text_WowLinkWinsLowest
+ goto FourIsland_House2_EventScript_BraggedLinkWins
end
-EventScript_1B2D77:: @ 81B2D77
+FourIsland_House2_EventScript_BragLinkWinsLow:: @ 81B2D77
compare VAR_LINK_WIN_BRAG_STATE, 2
- goto_if_eq EventScript_1B2DD1
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedLinkWins
setvar VAR_LINK_WIN_BRAG_STATE, 2
- msgbox gUnknown_81B2609
- goto EventScript_1B2DE5
+ msgbox FourIsland_House2_Text_WowLinkWinsLow
+ goto FourIsland_House2_EventScript_BraggedLinkWins
end
-EventScript_1B2D95:: @ 81B2D95
+FourIsland_House2_EventScript_BragLinkWinsHigh:: @ 81B2D95
compare VAR_LINK_WIN_BRAG_STATE, 3
- goto_if_eq EventScript_1B2DD1
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedLinkWins
setvar VAR_LINK_WIN_BRAG_STATE, 3
- msgbox gUnknown_81B267B
- goto EventScript_1B2DE5
+ msgbox FourIsland_House2_Text_WowLinkWinsHigh
+ goto FourIsland_House2_EventScript_BraggedLinkWins
end
-EventScript_1B2DB3:: @ 81B2DB3
+FourIsland_House2_EventScript_BragLinkWinsHighest:: @ 81B2DB3
compare VAR_LINK_WIN_BRAG_STATE, 4
- goto_if_eq EventScript_1B2DDB
+ goto_if_eq FourIsland_House2_EventScript_AlreadyBraggedLinkWinsMax
setvar VAR_LINK_WIN_BRAG_STATE, 4
- msgbox gUnknown_81B26F6
- goto EventScript_1B2DE5
+ msgbox FourIsland_House2_Text_WowLinkWinsHighest
+ goto FourIsland_House2_EventScript_BraggedLinkWins
end
-EventScript_1B2DD1:: @ 81B2DD1
- msgbox gUnknown_81B27DB
+FourIsland_House2_EventScript_AlreadyBraggedLinkWins:: @ 81B2DD1
+ msgbox FourIsland_House2_Text_ComeBackWithBetterStoryLinkWins
release
end
-EventScript_1B2DDB:: @ 81B2DDB
- msgbox gUnknown_81B280F
+FourIsland_House2_EventScript_AlreadyBraggedLinkWinsMax:: @ 81B2DDB
+ msgbox FourIsland_House2_Text_LivingLegendLinkWins
release
end
-EventScript_1B2DE5:: @ 81B2DE5
+FourIsland_House2_EventScript_BraggedLinkWins:: @ 81B2DE5
textcolor 3
playfanfare MUS_FANFA1
- message gUnknown_81B27A6
+ message FourIsland_House2_Text_VictoryStickerApplied
waitmessage
waitfanfare
delay 90
release
end
-EventScript_1B2DF6:: @ 81B2DF6
+FourIsland_House2_EventScript_QuitBrag:: @ 81B2DF6
release
end
diff --git a/data/scripts/trainers.inc b/data/scripts/trainers.inc
index eaa76b1fa..7e5f6102e 100644
--- a/data/scripts/trainers.inc
+++ b/data/scripts/trainers.inc
@@ -2312,691 +2312,691 @@ OneIsland_TreasureBeach_EventScript_AmaraRematch:: @ 81ABF4E
msgbox OneIsland_TreasureBeach_Text_AmaraPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1ABF65:: @ 81ABF65
- trainerbattle_single TRAINER_AROMA_LADY_NIKKI, Text_189E42, Text_189E72
+ThreeIsland_BondBridge_EventScript_Nikki:: @ 81ABF65
+ trainerbattle_single TRAINER_AROMA_LADY_NIKKI, ThreeIsland_BondBridge_Text_NikkiIntro, ThreeIsland_BondBridge_Text_NikkiDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ABF8C
- msgbox Text_189E9E, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_NikkiRematch
+ msgbox ThreeIsland_BondBridge_Text_NikkiPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ABF8C:: @ 81ABF8C
- trainerbattle_rematch TRAINER_AROMA_LADY_NIKKI, Text_1C3AA7, Text_189E72
- msgbox Text_189E9E, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_NikkiRematch:: @ 81ABF8C
+ trainerbattle_rematch TRAINER_AROMA_LADY_NIKKI, ThreeIsland_BondBridge_Text_NikkiRematchIntro, ThreeIsland_BondBridge_Text_NikkiDefeat
+ msgbox ThreeIsland_BondBridge_Text_NikkiPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1ABFA3:: @ 81ABFA3
- trainerbattle_single TRAINER_AROMA_LADY_VIOLET, Text_189ED4, Text_189EFA
+ThreeIsland_BondBridge_EventScript_Violet:: @ 81ABFA3
+ trainerbattle_single TRAINER_AROMA_LADY_VIOLET, ThreeIsland_BondBridge_Text_VioletIntro, ThreeIsland_BondBridge_Text_VioletDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ABFCA
- msgbox Text_189F21, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_VioletRematch
+ msgbox ThreeIsland_BondBridge_Text_VioletPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ABFCA:: @ 81ABFCA
- trainerbattle_rematch TRAINER_AROMA_LADY_VIOLET, Text_1C3ABF, Text_189EFA
- msgbox Text_189F21, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_VioletRematch:: @ 81ABFCA
+ trainerbattle_rematch TRAINER_AROMA_LADY_VIOLET, ThreeIsland_BondBridge_Text_VioletRematchIntro, ThreeIsland_BondBridge_Text_VioletDefeat
+ msgbox ThreeIsland_BondBridge_Text_VioletPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1ABFE1:: @ 81ABFE1
- trainerbattle_single TRAINER_TUBER_AMIRA, Text_189F63, Text_189F9A
+ThreeIsland_BondBridge_EventScript_Amira:: @ 81ABFE1
+ trainerbattle_single TRAINER_TUBER_AMIRA, ThreeIsland_BondBridge_Text_AmiraIntro, ThreeIsland_BondBridge_Text_AmiraDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC008
- msgbox Text_189FA8, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_AmiraRematch
+ msgbox ThreeIsland_BondBridge_Text_AmiraPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC008:: @ 81AC008
- trainerbattle_rematch TRAINER_TUBER_AMIRA, Text_1C3AF2, Text_189F9A
- msgbox Text_189FA8, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_AmiraRematch:: @ 81AC008
+ trainerbattle_rematch TRAINER_TUBER_AMIRA, ThreeIsland_BondBridge_Text_AmiraRematchIntro, ThreeIsland_BondBridge_Text_AmiraDefeat
+ msgbox ThreeIsland_BondBridge_Text_AmiraPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1AC01F:: @ 81AC01F
- trainerbattle_single TRAINER_TUBER_ALEXIS, Text_189FDB, Text_189FEE
+ThreeIsland_BondBridge_EventScript_Alexis:: @ 81AC01F
+ trainerbattle_single TRAINER_TUBER_ALEXIS, ThreeIsland_BondBridge_Text_AlexisIntro, ThreeIsland_BondBridge_Text_AlexisDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC046
- msgbox Text_18A000, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_AlexisRematch
+ msgbox ThreeIsland_BondBridge_Text_AlexisPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC046:: @ 81AC046
- trainerbattle_rematch TRAINER_TUBER_ALEXIS, Text_1C3B1D, Text_189FEE
- msgbox Text_18A000, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_AlexisRematch:: @ 81AC046
+ trainerbattle_rematch TRAINER_TUBER_ALEXIS, ThreeIsland_BondBridge_Text_AlexisRematchIntro, ThreeIsland_BondBridge_Text_AlexisDefeat
+ msgbox ThreeIsland_BondBridge_Text_AlexisPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1AC05D:: @ 81AC05D
- trainerbattle_single TRAINER_SWIMMER_FEMALE_TISHA, Text_18A01F, Text_18A053
+ThreeIsland_BondBridge_EventScript_Tisha:: @ 81AC05D
+ trainerbattle_single TRAINER_SWIMMER_FEMALE_TISHA, ThreeIsland_BondBridge_Text_TishaIntro, ThreeIsland_BondBridge_Text_TishaDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC084
- msgbox Text_18A082, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_TishaRematch
+ msgbox ThreeIsland_BondBridge_Text_TishaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC084:: @ 81AC084
- trainerbattle_rematch TRAINER_SWIMMER_FEMALE_TISHA, Text_1C3B30, Text_18A053
- msgbox Text_18A082, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_TishaRematch:: @ 81AC084
+ trainerbattle_rematch TRAINER_SWIMMER_FEMALE_TISHA, ThreeIsland_BondBridge_Text_TishaRematchIntro, ThreeIsland_BondBridge_Text_TishaDefeat
+ msgbox ThreeIsland_BondBridge_Text_TishaPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1AC09B:: @ 81AC09B
- trainerbattle_double TRAINER_TWINS_JOY_MEG, Text_18A0C4, Text_18A0F7, Text_18A138
+ThreeIsland_BondBridge_EventScript_Joy:: @ 81AC09B
+ trainerbattle_double TRAINER_TWINS_JOY_MEG, ThreeIsland_BondBridge_Text_JoyIntro, ThreeIsland_BondBridge_Text_JoyDefeat, ThreeIsland_BondBridge_Text_JoyNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC0C6
- msgbox Text_18A106, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_JoyRematch
+ msgbox ThreeIsland_BondBridge_Text_JoyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC0C6:: @ 81AC0C6
- trainerbattle_rematch_double TRAINER_TWINS_JOY_MEG, Text_1C3B6E, Text_18A0F7, Text_18A138
- msgbox Text_18A106, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_JoyRematch:: @ 81AC0C6
+ trainerbattle_rematch_double TRAINER_TWINS_JOY_MEG, ThreeIsland_BondBridge_Text_JoyRematchIntro, ThreeIsland_BondBridge_Text_JoyDefeat, ThreeIsland_BondBridge_Text_JoyNotEnoughMons
+ msgbox ThreeIsland_BondBridge_Text_JoyPostBattle, MSGBOX_AUTOCLOSE
end
-ThreeIsland_BondBridge_EventScript_1AC0E1:: @ 81AC0E1
- trainerbattle_double TRAINER_TWINS_JOY_MEG, Text_18A179, Text_18A1A3, Text_18A1CD
+ThreeIsland_BondBridge_EventScript_Meg:: @ 81AC0E1
+ trainerbattle_double TRAINER_TWINS_JOY_MEG, ThreeIsland_BondBridge_Text_MegIntro, ThreeIsland_BondBridge_Text_MegDefeat, ThreeIsland_BondBridge_Text_MegNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC10C
- msgbox Text_18A1B2, MSGBOX_AUTOCLOSE
+ goto_if_eq ThreeIsland_BondBridge_EventScript_MegRematch
+ msgbox ThreeIsland_BondBridge_Text_MegPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC10C:: @ 81AC10C
- trainerbattle_rematch_double TRAINER_TWINS_JOY_MEG, Text_1C3B99, Text_18A1A3, Text_18A1CD
- msgbox Text_18A1B2, MSGBOX_AUTOCLOSE
+ThreeIsland_BondBridge_EventScript_MegRematch:: @ 81AC10C
+ trainerbattle_rematch_double TRAINER_TWINS_JOY_MEG, ThreeIsland_BondBridge_Text_MegRematchIntro, ThreeIsland_BondBridge_Text_MegDefeat, ThreeIsland_BondBridge_Text_MegNotEnoughMons
+ msgbox ThreeIsland_BondBridge_Text_MegPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC127:: @ 81AC127
- trainerbattle_single TRAINER_PAINTER_DAISY, Text_18A3E2, Text_18A40E
+FiveIsland_ResortGorgeous_EventScript_Daisy:: @ 81AC127
+ trainerbattle_single TRAINER_PAINTER_DAISY, FiveIsland_ResortGorgeous_Text_DaisyIntro, FiveIsland_ResortGorgeous_Text_DaisyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC14E
- msgbox Text_18A430, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_DaisyRematch
+ msgbox FiveIsland_ResortGorgeous_Text_DaisyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC14E:: @ 81AC14E
- trainerbattle_rematch TRAINER_PAINTER_DAISY, Text_1C3BF6, Text_18A40E
- msgbox Text_18A430, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_DaisyRematch:: @ 81AC14E
+ trainerbattle_rematch TRAINER_PAINTER_DAISY, FiveIsland_ResortGorgeous_Text_DaisyRematchIntro, FiveIsland_ResortGorgeous_Text_DaisyDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_DaisyPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC165:: @ 81AC165
- trainerbattle_single TRAINER_PAINTER_CELINA, Text_18A461, Text_18A49E
+FiveIsland_ResortGorgeous_EventScript_Celina:: @ 81AC165
+ trainerbattle_single TRAINER_PAINTER_CELINA, FiveIsland_ResortGorgeous_Text_CelinaIntro, FiveIsland_ResortGorgeous_Text_CelinaDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC18C
- msgbox Text_18A4C6, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_CelinaRematch
+ msgbox FiveIsland_ResortGorgeous_Text_CelinaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC18C:: @ 81AC18C
- trainerbattle_rematch TRAINER_PAINTER_CELINA, Text_1C3C28, Text_18A49E
- msgbox Text_18A4C6, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_CelinaRematch:: @ 81AC18C
+ trainerbattle_rematch TRAINER_PAINTER_CELINA, FiveIsland_ResortGorgeous_Text_CelinaRematchIntro, FiveIsland_ResortGorgeous_Text_CelinaDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_CelinaPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC1A3:: @ 81AC1A3
- trainerbattle_single TRAINER_PAINTER_RAYNA, Text_18A50E, Text_18A535
+FiveIsland_ResortGorgeous_EventScript_Rayna:: @ 81AC1A3
+ trainerbattle_single TRAINER_PAINTER_RAYNA, FiveIsland_ResortGorgeous_Text_RaynaIntro, FiveIsland_ResortGorgeous_Text_RaynaDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC1CA
- msgbox Text_18A555, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_RaynaRematch
+ msgbox FiveIsland_ResortGorgeous_Text_RaynaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC1CA:: @ 81AC1CA
- trainerbattle_rematch TRAINER_PAINTER_RAYNA, Text_1C3C70, Text_18A535
- msgbox Text_18A555, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_RaynaRematch:: @ 81AC1CA
+ trainerbattle_rematch TRAINER_PAINTER_RAYNA, FiveIsland_ResortGorgeous_Text_RaynaRematchIntro, FiveIsland_ResortGorgeous_Text_RaynaDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_RaynaPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC1E1:: @ 81AC1E1
- trainerbattle_single TRAINER_LADY_JACKI, Text_18A5B9, Text_18A5EE
+FiveIsland_ResortGorgeous_EventScript_Jacki:: @ 81AC1E1
+ trainerbattle_single TRAINER_LADY_JACKI, FiveIsland_ResortGorgeous_Text_JackiIntro, FiveIsland_ResortGorgeous_Text_JackiDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC208
- msgbox Text_18A601, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_JackiRematch
+ msgbox FiveIsland_ResortGorgeous_Text_JackiPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC208:: @ 81AC208
- trainerbattle_rematch TRAINER_LADY_JACKI, Text_1C3CB0, Text_18A5EE
- msgbox Text_18A601, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_JackiRematch:: @ 81AC208
+ trainerbattle_rematch TRAINER_LADY_JACKI, FiveIsland_ResortGorgeous_Text_JackiRematchIntro, FiveIsland_ResortGorgeous_Text_JackiDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_JackiPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC21F:: @ 81AC21F
- trainerbattle_single TRAINER_LADY_GILLIAN, Text_18A645, Text_18A67F
+FiveIsland_ResortGorgeous_EventScript_Gillian:: @ 81AC21F
+ trainerbattle_single TRAINER_LADY_GILLIAN, FiveIsland_ResortGorgeous_Text_GillianIntro, FiveIsland_ResortGorgeous_Text_GillianDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC246
- msgbox Text_18A699, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_GillianRematch
+ msgbox FiveIsland_ResortGorgeous_Text_GillianPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC246:: @ 81AC246
- trainerbattle_rematch TRAINER_LADY_GILLIAN, Text_1C3CF1, Text_18A67F
- msgbox Text_18A699, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_GillianRematch:: @ 81AC246
+ trainerbattle_rematch TRAINER_LADY_GILLIAN, FiveIsland_ResortGorgeous_Text_GillianRematchIntro, FiveIsland_ResortGorgeous_Text_GillianDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_GillianPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC25D:: @ 81AC25D
- trainerbattle_single TRAINER_YOUNGSTER_DESTIN, Text_18A6DA, Text_18A6FE
+FiveIsland_ResortGorgeous_EventScript_Destin:: @ 81AC25D
+ trainerbattle_single TRAINER_YOUNGSTER_DESTIN, FiveIsland_ResortGorgeous_Text_DestinIntro, FiveIsland_ResortGorgeous_Text_DestinDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC284
- msgbox Text_18A715, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_DestinRematch
+ msgbox FiveIsland_ResortGorgeous_Text_DestinPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC284:: @ 81AC284
- trainerbattle_rematch TRAINER_YOUNGSTER_DESTIN, Text_1C3D47, Text_18A6FE
- msgbox Text_18A715, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_DestinRematch:: @ 81AC284
+ trainerbattle_rematch TRAINER_YOUNGSTER_DESTIN, FiveIsland_ResortGorgeous_Text_DestinRematchIntro, FiveIsland_ResortGorgeous_Text_DestinDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_DestinPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_ResortGorgeous_EventScript_1AC29B:: @ 81AC29B
- trainerbattle_single TRAINER_SWIMMER_MALE_TOBY, Text_18A74A, Text_18A786
+FiveIsland_ResortGorgeous_EventScript_Toby:: @ 81AC29B
+ trainerbattle_single TRAINER_SWIMMER_MALE_TOBY, FiveIsland_ResortGorgeous_Text_TobyIntro, FiveIsland_ResortGorgeous_Text_TobyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC2C2
- msgbox Text_18A7AC, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_ResortGorgeous_EventScript_TobyRematch
+ msgbox FiveIsland_ResortGorgeous_Text_TobyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC2C2:: @ 81AC2C2
- trainerbattle_rematch TRAINER_SWIMMER_MALE_TOBY, Text_1C3D73, Text_18A786
- msgbox Text_18A7AC, MSGBOX_AUTOCLOSE
+FiveIsland_ResortGorgeous_EventScript_TobyRematch:: @ 81AC2C2
+ trainerbattle_rematch TRAINER_SWIMMER_MALE_TOBY, FiveIsland_ResortGorgeous_Text_TobyRematchIntro, FiveIsland_ResortGorgeous_Text_TobyDefeat
+ msgbox FiveIsland_ResortGorgeous_Text_TobyPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_WaterLabyrinth_EventScript_1AC2D9:: @ 81AC2D9
- trainerbattle_single TRAINER_PKMN_BREEDER_ALIZE, Text_18AAD5, Text_18AB0B
+FiveIsland_WaterLabyrinth_EventScript_Alize:: @ 81AC2D9
+ trainerbattle_single TRAINER_PKMN_BREEDER_ALIZE, FiveIsland_WaterLabyrinth_Text_AlizeIntro, FiveIsland_WaterLabyrinth_Text_AlizeDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC300
- msgbox Text_18AB37, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_WaterLabyrinth_EventScript_AlizeRematch
+ msgbox FiveIsland_WaterLabyrinth_Text_AlizePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC300:: @ 81AC300
- trainerbattle_rematch TRAINER_PKMN_BREEDER_ALIZE, Text_1C3BB7, Text_18AB0B
- msgbox Text_18AB37, MSGBOX_AUTOCLOSE
+FiveIsland_WaterLabyrinth_EventScript_AlizeRematch:: @ 81AC300
+ trainerbattle_rematch TRAINER_PKMN_BREEDER_ALIZE, FiveIsland_WaterLabyrinth_Text_AlizeRematchIntro, FiveIsland_WaterLabyrinth_Text_AlizeDefeat
+ msgbox FiveIsland_WaterLabyrinth_Text_AlizePostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_MemorialPillar_EventScript_1AC317:: @ 81AC317
- trainerbattle_single TRAINER_BIRD_KEEPER_MILO, Text_18AE50, Text_18AEA8
+FiveIsland_MemorialPillar_EventScript_Milo:: @ 81AC317
+ trainerbattle_single TRAINER_BIRD_KEEPER_MILO, FiveIsland_MemorialPillar_Text_MiloIntro, FiveIsland_MemorialPillar_Text_MiloDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC33E
- msgbox Text_18AEB6, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_MiloRematch
+ msgbox FiveIsland_MemorialPillar_Text_MiloPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC33E:: @ 81AC33E
- trainerbattle_rematch TRAINER_BIRD_KEEPER_MILO, Text_1C3DA2, Text_18AEA8
- msgbox Text_18AEB6, MSGBOX_AUTOCLOSE
+FiveIsland_MemorialPillar_EventScript_MiloRematch:: @ 81AC33E
+ trainerbattle_rematch TRAINER_BIRD_KEEPER_MILO, FiveIsland_MemorialPillar_Text_MiloRematchIntro, FiveIsland_MemorialPillar_Text_MiloDefeat
+ msgbox FiveIsland_MemorialPillar_Text_MiloPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_MemorialPillar_EventScript_1AC355:: @ 81AC355
- trainerbattle_single TRAINER_BIRD_KEEPER_CHAZ, Text_18AEDC, Text_18AF39
+FiveIsland_MemorialPillar_EventScript_Chaz:: @ 81AC355
+ trainerbattle_single TRAINER_BIRD_KEEPER_CHAZ, FiveIsland_MemorialPillar_Text_ChazIntro, FiveIsland_MemorialPillar_Text_ChazDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC37C
- msgbox Text_18AF45, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_ChazRematch
+ msgbox FiveIsland_MemorialPillar_Text_ChazPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC37C:: @ 81AC37C
- trainerbattle_rematch TRAINER_BIRD_KEEPER_CHAZ, Text_1C3E0F, Text_18AF39
- msgbox Text_18AF45, MSGBOX_AUTOCLOSE
+FiveIsland_MemorialPillar_EventScript_ChazRematch:: @ 81AC37C
+ trainerbattle_rematch TRAINER_BIRD_KEEPER_CHAZ, FiveIsland_MemorialPillar_Text_ChazRematchIntro, FiveIsland_MemorialPillar_Text_ChazDefeat
+ msgbox FiveIsland_MemorialPillar_Text_ChazPostBattle, MSGBOX_AUTOCLOSE
end
-FiveIsland_MemorialPillar_EventScript_1AC393:: @ 81AC393
- trainerbattle_single TRAINER_BIRD_KEEPER_HAROLD, Text_18AF72, Text_18AFCC
+FiveIsland_MemorialPillar_EventScript_Harold:: @ 81AC393
+ trainerbattle_single TRAINER_BIRD_KEEPER_HAROLD, FiveIsland_MemorialPillar_Text_HaroldIntro, FiveIsland_MemorialPillar_Text_HaroldDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC3BA
- msgbox Text_18AFF2, MSGBOX_AUTOCLOSE
+ goto_if_eq FiveIsland_MemorialPillar_EventScript_HaroldRematch
+ msgbox FiveIsland_MemorialPillar_Text_HaroldPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC3BA:: @ 81AC3BA
- trainerbattle_rematch TRAINER_BIRD_KEEPER_HAROLD, Text_1C3E6A, Text_18AFCC
- msgbox Text_18AFF2, MSGBOX_AUTOCLOSE
+FiveIsland_MemorialPillar_EventScript_HaroldRematch:: @ 81AC3BA
+ trainerbattle_rematch TRAINER_BIRD_KEEPER_HAROLD, FiveIsland_MemorialPillar_Text_HaroldRematchIntro, FiveIsland_MemorialPillar_Text_HaroldDefeat
+ msgbox FiveIsland_MemorialPillar_Text_HaroldPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_OutcastIsland_EventScript_1AC3D1:: @ 81AC3D1
- trainerbattle_single TRAINER_FISHERMAN_TYLOR, Text_18B400, Text_18B43B
+SixIsland_OutcastIsland_EventScript_Tylor:: @ 81AC3D1
+ trainerbattle_single TRAINER_FISHERMAN_TYLOR, SixIsland_OutcastIsland_Text_TylorIntro, SixIsland_OutcastIsland_Text_TylorDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC3F8
- msgbox Text_18B451, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_OutcastIsland_EventScript_TylorRematch
+ msgbox SixIsland_OutcastIsland_Text_TylorPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC3F8:: @ 81AC3F8
- trainerbattle_rematch TRAINER_FISHERMAN_TYLOR, Text_1C3ED0, Text_18B43B
- msgbox Text_18B451, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_TylorRematch:: @ 81AC3F8
+ trainerbattle_rematch TRAINER_FISHERMAN_TYLOR, SixIsland_OutcastIsland_Text_TylorRematchIntro, SixIsland_OutcastIsland_Text_TylorDefeat
+ msgbox SixIsland_OutcastIsland_Text_TylorPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_OutcastIsland_EventScript_1AC40F:: @ 81AC40F
- trainerbattle_single TRAINER_SWIMMER_MALE_MYMO, Text_18B48F, Text_18B4C5
+SixIsland_OutcastIsland_EventScript_Mymo:: @ 81AC40F
+ trainerbattle_single TRAINER_SWIMMER_MALE_MYMO, SixIsland_OutcastIsland_Text_MymoIntro, SixIsland_OutcastIsland_Text_MymoDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC436
- msgbox Text_18B4D1, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_OutcastIsland_EventScript_MymoRematch
+ msgbox SixIsland_OutcastIsland_Text_MymoPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC436:: @ 81AC436
- trainerbattle_rematch TRAINER_SWIMMER_MALE_MYMO, Text_1C3F11, Text_18B4C5
- msgbox Text_18B4D1, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_MymoRematch:: @ 81AC436
+ trainerbattle_rematch TRAINER_SWIMMER_MALE_MYMO, SixIsland_OutcastIsland_Text_MymoRematchIntro, SixIsland_OutcastIsland_Text_MymoDefeat
+ msgbox SixIsland_OutcastIsland_Text_MymoPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_OutcastIsland_EventScript_1AC44D:: @ 81AC44D
- trainerbattle_single TRAINER_SWIMMER_FEMALE_NICOLE, Text_18B4FA, Text_18B539
+SixIsland_OutcastIsland_EventScript_Nicole:: @ 81AC44D
+ trainerbattle_single TRAINER_SWIMMER_FEMALE_NICOLE, SixIsland_OutcastIsland_Text_NicoleIntro, SixIsland_OutcastIsland_Text_NicoleDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC474
- msgbox Text_18B573, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_OutcastIsland_EventScript_NicoleRematch
+ msgbox SixIsland_OutcastIsland_Text_NicolePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC474:: @ 81AC474
- trainerbattle_rematch TRAINER_SWIMMER_FEMALE_NICOLE, Text_1C3F51, Text_18B539
- msgbox Text_18B573, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_NicoleRematch:: @ 81AC474
+ trainerbattle_rematch TRAINER_SWIMMER_FEMALE_NICOLE, SixIsland_OutcastIsland_Text_NicoleRematchIntro, SixIsland_OutcastIsland_Text_NicoleDefeat
+ msgbox SixIsland_OutcastIsland_Text_NicolePostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_OutcastIsland_EventScript_1AC48B:: @ 81AC48B
- trainerbattle_double TRAINER_SIS_AND_BRO_AVA_GEB, Text_18B5C8, Text_18B5F4, Text_18B660
+SixIsland_OutcastIsland_EventScript_Ava:: @ 81AC48B
+ trainerbattle_double TRAINER_SIS_AND_BRO_AVA_GEB, SixIsland_OutcastIsland_Text_AvaIntro, SixIsland_OutcastIsland_Text_AvaDefeat, SixIsland_OutcastIsland_Text_AvaNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC4B6
- msgbox Text_18B62E, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_OutcastIsland_EventScript_AvaRematch
+ msgbox SixIsland_OutcastIsland_Text_AvaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC4B6:: @ 81AC4B6
- trainerbattle_rematch_double TRAINER_SIS_AND_BRO_AVA_GEB, Text_1C3F7B, Text_18B5F4, Text_18B660
- msgbox Text_18B62E, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_AvaRematch:: @ 81AC4B6
+ trainerbattle_rematch_double TRAINER_SIS_AND_BRO_AVA_GEB, SixIsland_OutcastIsland_Text_AvaRematchIntro, SixIsland_OutcastIsland_Text_AvaDefeat, SixIsland_OutcastIsland_Text_AvaNotEnoughMons
+ msgbox SixIsland_OutcastIsland_Text_AvaPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_OutcastIsland_EventScript_1AC4D1:: @ 81AC4D1
- trainerbattle_double TRAINER_SIS_AND_BRO_AVA_GEB, Text_18B6C1, Text_18B6EF, Text_18B762
+SixIsland_OutcastIsland_EventScript_Geb:: @ 81AC4D1
+ trainerbattle_double TRAINER_SIS_AND_BRO_AVA_GEB, SixIsland_OutcastIsland_Text_GebIntro, SixIsland_OutcastIsland_Text_GebDefeat, SixIsland_OutcastIsland_Text_GebNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC4FC
- msgbox Text_18B720, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_OutcastIsland_EventScript_GebRematch
+ msgbox SixIsland_OutcastIsland_Text_GebPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC4FC:: @ 81AC4FC
- trainerbattle_rematch_double TRAINER_SIS_AND_BRO_AVA_GEB, Text_1C3FB3, Text_18B6EF, Text_18B762
- msgbox Text_18B720, MSGBOX_AUTOCLOSE
+SixIsland_OutcastIsland_EventScript_GebRematch:: @ 81AC4FC
+ trainerbattle_rematch_double TRAINER_SIS_AND_BRO_AVA_GEB, SixIsland_OutcastIsland_Text_GebRematchIntro, SixIsland_OutcastIsland_Text_GebDefeat, SixIsland_OutcastIsland_Text_GebNotEnoughMons
+ msgbox SixIsland_OutcastIsland_Text_GebPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_GreenPath_EventScript_1AC517:: @ 81AC517
- trainerbattle_single TRAINER_PSYCHIC_JACLYN, Text_18B7B0, Text_18B7F0
+SixIsland_GreenPath_EventScript_Jaclyn:: @ 81AC517
+ trainerbattle_single TRAINER_PSYCHIC_JACLYN, SixIsland_GreenPath_Text_JaclynIntro, SixIsland_GreenPath_Text_JaclynDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC53E
- msgbox Text_18B7FD, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_GreenPath_EventScript_JaclynRematch
+ msgbox SixIsland_GreenPath_Text_JaclynPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC53E:: @ 81AC53E
- trainerbattle_rematch TRAINER_PSYCHIC_JACLYN, Text_1C3FE9, Text_18B7F0
- msgbox Text_18B7FD, MSGBOX_AUTOCLOSE
+SixIsland_GreenPath_EventScript_JaclynRematch:: @ 81AC53E
+ trainerbattle_rematch TRAINER_PSYCHIC_JACLYN, SixIsland_GreenPath_Text_JaclynRematchIntro, SixIsland_GreenPath_Text_JaclynDefeat
+ msgbox SixIsland_GreenPath_Text_JaclynPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC555:: @ 81AC555
- trainerbattle_single TRAINER_AROMA_LADY_ROSE, Text_18B896, Text_18B8C8
+SixIsland_WaterPath_EventScript_Rose:: @ 81AC555
+ trainerbattle_single TRAINER_AROMA_LADY_ROSE, SixIsland_WaterPath_Text_RoseIntro, SixIsland_WaterPath_Text_RoseDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC57C
- msgbox Text_18B8F7, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_RoseRematch
+ msgbox SixIsland_WaterPath_Text_RosePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC57C:: @ 81AC57C
- trainerbattle_rematch TRAINER_AROMA_LADY_ROSE, Text_1C4028, Text_18B8C8
- msgbox Text_18B8F7, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_RoseRematch:: @ 81AC57C
+ trainerbattle_rematch TRAINER_AROMA_LADY_ROSE, SixIsland_WaterPath_Text_RoseRematchIntro, SixIsland_WaterPath_Text_RoseDefeat
+ msgbox SixIsland_WaterPath_Text_RosePostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC593:: @ 81AC593
- trainerbattle_single TRAINER_JUGGLER_EDWARD, Text_18B959, Text_18B988
+SixIsland_WaterPath_EventScript_Edward:: @ 81AC593
+ trainerbattle_single TRAINER_JUGGLER_EDWARD, SixIsland_WaterPath_Text_EdwardIntro, SixIsland_WaterPath_Text_EdwardDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC5BA
- msgbox Text_18B9A5, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_EdwardRematch
+ msgbox SixIsland_WaterPath_Text_EdwardPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC5BA:: @ 81AC5BA
- trainerbattle_rematch TRAINER_JUGGLER_EDWARD, Text_1C4057, Text_18B988
- msgbox Text_18B9A5, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_EdwardRematch:: @ 81AC5BA
+ trainerbattle_rematch TRAINER_JUGGLER_EDWARD, SixIsland_WaterPath_Text_EdwardRematchIntro, SixIsland_WaterPath_Text_EdwardDefeat
+ msgbox SixIsland_WaterPath_Text_EdwardPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC5D1:: @ 81AC5D1
- trainerbattle_single TRAINER_SWIMMER_MALE_SAMIR, Text_18B9EC, Text_18BA47
+SixIsland_WaterPath_EventScript_Samir:: @ 81AC5D1
+ trainerbattle_single TRAINER_SWIMMER_MALE_SAMIR, SixIsland_WaterPath_Text_SamirIntro, SixIsland_WaterPath_Text_SamirDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC5F8
- msgbox Text_18BA57, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_SamirRematch
+ msgbox SixIsland_WaterPath_Text_SamirPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC5F8:: @ 81AC5F8
- trainerbattle_rematch TRAINER_SWIMMER_MALE_SAMIR, Text_1C407F, Text_18BA47
- msgbox Text_18BA57, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_SamirRematch:: @ 81AC5F8
+ trainerbattle_rematch TRAINER_SWIMMER_MALE_SAMIR, SixIsland_WaterPath_Text_SamirRematchIntro, SixIsland_WaterPath_Text_SamirDefeat
+ msgbox SixIsland_WaterPath_Text_SamirPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC60F:: @ 81AC60F
- trainerbattle_single TRAINER_SWIMMER_FEMALE_DENISE, Text_18BA86, Text_18BAC0
+SixIsland_WaterPath_EventScript_Denise:: @ 81AC60F
+ trainerbattle_single TRAINER_SWIMMER_FEMALE_DENISE, SixIsland_WaterPath_Text_DeniseIntro, SixIsland_WaterPath_Text_DeniseDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC636
- msgbox Text_18BAE0, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_DeniseRematch
+ msgbox SixIsland_WaterPath_Text_DenisePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC636:: @ 81AC636
- trainerbattle_rematch TRAINER_SWIMMER_FEMALE_DENISE, Text_1C40D9, Text_18BAC0
- msgbox Text_18BAE0, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_DeniseRematch:: @ 81AC636
+ trainerbattle_rematch TRAINER_SWIMMER_FEMALE_DENISE, SixIsland_WaterPath_Text_DeniseRematchIntro, SixIsland_WaterPath_Text_DeniseDefeat
+ msgbox SixIsland_WaterPath_Text_DenisePostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC64D:: @ 81AC64D
- trainerbattle_double TRAINER_TWINS_MIU_MIA, Text_18BBBA, Text_18BBE2, Text_18BC24
+SixIsland_WaterPath_EventScript_Miu:: @ 81AC64D
+ trainerbattle_double TRAINER_TWINS_MIU_MIA, SixIsland_WaterPath_Text_MiuIntro, SixIsland_WaterPath_Text_MiuDefeat, SixIsland_WaterPath_Text_MiuNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC678
- msgbox Text_18BBF6, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_MiuRematch
+ msgbox SixIsland_WaterPath_Text_MiuPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC678:: @ 81AC678
- trainerbattle_rematch_double TRAINER_TWINS_MIU_MIA, Text_1C4138, Text_18BBE2, Text_18BC24
- msgbox Text_18BBF6, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_MiuRematch:: @ 81AC678
+ trainerbattle_rematch_double TRAINER_TWINS_MIU_MIA, SixIsland_WaterPath_Text_MiuRematchIntro, SixIsland_WaterPath_Text_MiuDefeat, SixIsland_WaterPath_Text_MiuNotEnoughMons
+ msgbox SixIsland_WaterPath_Text_MiuPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC693:: @ 81AC693
- trainerbattle_double TRAINER_TWINS_MIU_MIA, Text_18BC5A, Text_18BC84, Text_18BCCF
+SixIsland_WaterPath_EventScript_Mia:: @ 81AC693
+ trainerbattle_double TRAINER_TWINS_MIU_MIA, SixIsland_WaterPath_Text_MiaIntro, SixIsland_WaterPath_Text_MiaDefeat, SixIsland_WaterPath_Text_MiaNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC6BE
- msgbox Text_18BCAE, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_MiaRematch
+ msgbox SixIsland_WaterPath_Text_MiaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC6BE:: @ 81AC6BE
- trainerbattle_rematch_double TRAINER_TWINS_MIU_MIA, Text_1C4166, Text_18BC84, Text_18BCCF
- msgbox Text_18BCAE, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_MiaRematch:: @ 81AC6BE
+ trainerbattle_rematch_double TRAINER_TWINS_MIU_MIA, SixIsland_WaterPath_Text_MiaRematchIntro, SixIsland_WaterPath_Text_MiaDefeat, SixIsland_WaterPath_Text_MiaNotEnoughMons
+ msgbox SixIsland_WaterPath_Text_MiaPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_WaterPath_EventScript_1AC6D9:: @ 81AC6D9
- trainerbattle_single TRAINER_HIKER_EARL, Text_18BB2D, Text_18BB62
+SixIsland_WaterPath_EventScript_Earl:: @ 81AC6D9
+ trainerbattle_single TRAINER_HIKER_EARL, SixIsland_WaterPath_Text_EarlIntro, SixIsland_WaterPath_Text_EarlDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC700
- msgbox Text_18BB8B, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_WaterPath_EventScript_EarlRematch
+ msgbox SixIsland_WaterPath_Text_EarlPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC700:: @ 81AC700
- trainerbattle_rematch TRAINER_HIKER_EARL, Text_1C40FA, Text_18BB62
- msgbox Text_18BB8B, MSGBOX_AUTOCLOSE
+SixIsland_WaterPath_EventScript_EarlRematch:: @ 81AC700
+ trainerbattle_rematch TRAINER_HIKER_EARL, SixIsland_WaterPath_Text_EarlRematchIntro, SixIsland_WaterPath_Text_EarlDefeat
+ msgbox SixIsland_WaterPath_Text_EarlPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_RuinValley_EventScript_1AC717:: @ 81AC717
- trainerbattle_single TRAINER_RUIN_MANIAC_STANLY, Text_18BE5D, Text_18BE9B
+SixIsland_RuinValley_EventScript_Stanly:: @ 81AC717
+ trainerbattle_single TRAINER_RUIN_MANIAC_STANLY, SixIsland_RuinValley_Text_StanlyIntro, SixIsland_RuinValley_Text_StanlyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC73E
- msgbox Text_18BEA0, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_RuinValley_EventScript_StanlyRematch
+ msgbox SixIsland_RuinValley_Text_StanlyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC73E:: @ 81AC73E
- trainerbattle_rematch TRAINER_RUIN_MANIAC_STANLY, Text_1C4196, Text_18BE9B
- msgbox Text_18BEA0, MSGBOX_AUTOCLOSE
+SixIsland_RuinValley_EventScript_StanlyRematch:: @ 81AC73E
+ trainerbattle_rematch TRAINER_RUIN_MANIAC_STANLY, SixIsland_RuinValley_Text_StanlyRematchIntro, SixIsland_RuinValley_Text_StanlyDefeat
+ msgbox SixIsland_RuinValley_Text_StanlyPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_RuinValley_EventScript_1AC755:: @ 81AC755
- trainerbattle_single TRAINER_RUIN_MANIAC_FOSTER, Text_18BF05, Text_18BF33
+SixIsland_RuinValley_EventScript_Foster:: @ 81AC755
+ trainerbattle_single TRAINER_RUIN_MANIAC_FOSTER, SixIsland_RuinValley_Text_FosterIntro, SixIsland_RuinValley_Text_FosterDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC77C
- msgbox Text_18BF6C, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_RuinValley_EventScript_FosterRematch
+ msgbox SixIsland_RuinValley_Text_FosterPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC77C:: @ 81AC77C
- trainerbattle_rematch TRAINER_RUIN_MANIAC_FOSTER, Text_1C41D4, Text_18BF33
- msgbox Text_18BF6C, MSGBOX_AUTOCLOSE
+SixIsland_RuinValley_EventScript_FosterRematch:: @ 81AC77C
+ trainerbattle_rematch TRAINER_RUIN_MANIAC_FOSTER, SixIsland_RuinValley_Text_FosterRematchIntro, SixIsland_RuinValley_Text_FosterDefeat
+ msgbox SixIsland_RuinValley_Text_FosterPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_RuinValley_EventScript_1AC793:: @ 81AC793
- trainerbattle_single TRAINER_RUIN_MANIAC_LARRY, Text_18BFC5, Text_18C03B
+SixIsland_RuinValley_EventScript_Larry:: @ 81AC793
+ trainerbattle_single TRAINER_RUIN_MANIAC_LARRY, SixIsland_RuinValley_Text_LarryIntro, SixIsland_RuinValley_Text_LarryDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC7BA
- msgbox Text_18C04C, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_RuinValley_EventScript_LarryRematch
+ msgbox SixIsland_RuinValley_Text_LarryPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC7BA:: @ 81AC7BA
- trainerbattle_rematch TRAINER_RUIN_MANIAC_LARRY, Text_1C4210, Text_18C03B
- msgbox Text_18C04C, MSGBOX_AUTOCLOSE
+SixIsland_RuinValley_EventScript_LarryRematch:: @ 81AC7BA
+ trainerbattle_rematch TRAINER_RUIN_MANIAC_LARRY, SixIsland_RuinValley_Text_LarryRematchIntro, SixIsland_RuinValley_Text_LarryDefeat
+ msgbox SixIsland_RuinValley_Text_LarryPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_RuinValley_EventScript_1AC7D1:: @ 81AC7D1
- trainerbattle_single TRAINER_HIKER_DARYL, Text_18C09C, Text_18C0BB
+SixIsland_RuinValley_EventScript_Daryl:: @ 81AC7D1
+ trainerbattle_single TRAINER_HIKER_DARYL, SixIsland_RuinValley_Text_DarylIntro, SixIsland_RuinValley_Text_DarylDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC7F8
- msgbox Text_18C0EA, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_RuinValley_EventScript_DarylRematch
+ msgbox SixIsland_RuinValley_Text_DarylPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC7F8:: @ 81AC7F8
- trainerbattle_rematch TRAINER_HIKER_DARYL, Text_1C4280, Text_18C0BB
- msgbox Text_18C0EA, MSGBOX_AUTOCLOSE
+SixIsland_RuinValley_EventScript_DarylRematch:: @ 81AC7F8
+ trainerbattle_rematch TRAINER_HIKER_DARYL, SixIsland_RuinValley_Text_DarylRematchIntro, SixIsland_RuinValley_Text_DarylDefeat
+ msgbox SixIsland_RuinValley_Text_DarylPostBattle, MSGBOX_AUTOCLOSE
end
-SixIsland_RuinValley_EventScript_1AC80F:: @ 81AC80F
- trainerbattle_single TRAINER_POKEMANIAC_HECTOR, Text_18C10A, Text_18C140
+SixIsland_RuinValley_EventScript_Hector:: @ 81AC80F
+ trainerbattle_single TRAINER_POKEMANIAC_HECTOR, SixIsland_RuinValley_Text_HectorIntro, SixIsland_RuinValley_Text_HectorDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC836
- msgbox Text_18C17A, MSGBOX_AUTOCLOSE
+ goto_if_eq SixIsland_RuinValley_EventScript_HectorRematch
+ msgbox SixIsland_RuinValley_Text_HectorPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC836:: @ 81AC836
- trainerbattle_rematch TRAINER_POKEMANIAC_HECTOR, Text_1C42A0, Text_18C140
- msgbox Text_18C17A, MSGBOX_AUTOCLOSE
+SixIsland_RuinValley_EventScript_HectorRematch:: @ 81AC836
+ trainerbattle_rematch TRAINER_POKEMANIAC_HECTOR, SixIsland_RuinValley_Text_HectorRematchIntro, SixIsland_RuinValley_Text_HectorDefeat
+ msgbox SixIsland_RuinValley_Text_HectorPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TrainerTower_EventScript_1AC84D:: @ 81AC84D
- trainerbattle_single TRAINER_PSYCHIC_DARIO, Text_18C1ED, Text_18C205
+SevenIsland_TrainerTower_EventScript_Dario:: @ 81AC84D
+ trainerbattle_single TRAINER_PSYCHIC_DARIO, SevenIsland_TrainerTower_Text_DarioIntro, SevenIsland_TrainerTower_Text_DarioDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC874
- msgbox Text_18C20E, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_TrainerTower_EventScript_DarioRematch
+ msgbox SevenIsland_TrainerTower_Text_DarioPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC874:: @ 81AC874
- trainerbattle_rematch TRAINER_PSYCHIC_DARIO, Text_1C42D6, Text_18C205
- msgbox Text_18C20E, MSGBOX_AUTOCLOSE
+SevenIsland_TrainerTower_EventScript_DarioRematch:: @ 81AC874
+ trainerbattle_rematch TRAINER_PSYCHIC_DARIO, SevenIsland_TrainerTower_Text_DarioRematchIntro, SevenIsland_TrainerTower_Text_DarioDefeat
+ msgbox SevenIsland_TrainerTower_Text_DarioPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TrainerTower_EventScript_1AC88B:: @ 81AC88B
- trainerbattle_single TRAINER_PSYCHIC_RODETTE, Text_18C283, Text_18C2BC
+SevenIsland_TrainerTower_EventScript_Rodette:: @ 81AC88B
+ trainerbattle_single TRAINER_PSYCHIC_RODETTE, SevenIsland_TrainerTower_Text_RodetteIntro, SevenIsland_TrainerTower_Text_RodetteDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC8B2
- msgbox Text_18C2D5, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_TrainerTower_EventScript_RodetteRematch
+ msgbox SevenIsland_TrainerTower_Text_RodettePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC8B2:: @ 81AC8B2
- trainerbattle_rematch TRAINER_PSYCHIC_RODETTE, Text_1C42EE, Text_18C2BC
- msgbox Text_18C2D5, MSGBOX_AUTOCLOSE
+SevenIsland_TrainerTower_EventScript_RodetteRematch:: @ 81AC8B2
+ trainerbattle_rematch TRAINER_PSYCHIC_RODETTE, SevenIsland_TrainerTower_Text_RodetteRematchIntro, SevenIsland_TrainerTower_Text_RodetteDefeat
+ msgbox SevenIsland_TrainerTower_Text_RodettePostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1AC8C9:: @ 81AC8C9
- trainerbattle_single TRAINER_AROMA_LADY_MIAH, Text_18C3BC, Text_18C3E7
+SevenIsland_SevaultCanyon_Entrance_EventScript_Miah:: @ 81AC8C9
+ trainerbattle_single TRAINER_AROMA_LADY_MIAH, SevenIsland_SevaultCanyon_Entrance_Text_MiahIntro, SevenIsland_SevaultCanyon_Entrance_Text_MiahDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC8F0
- msgbox Text_18C3FF, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_MiahRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MiahPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC8F0:: @ 81AC8F0
- trainerbattle_rematch TRAINER_AROMA_LADY_MIAH, Text_1C4327, Text_18C3E7
- msgbox Text_18C3FF, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_MiahRematch:: @ 81AC8F0
+ trainerbattle_rematch TRAINER_AROMA_LADY_MIAH, SevenIsland_SevaultCanyon_Entrance_Text_MiahRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_MiahDefeat
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MiahPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1AC907:: @ 81AC907
- trainerbattle_double TRAINER_YOUNG_COUPLE_EVE_JON, Text_18C632, Text_18C662, Text_18C6AB
+SevenIsland_SevaultCanyon_Entrance_EventScript_Eve:: @ 81AC907
+ trainerbattle_double TRAINER_YOUNG_COUPLE_EVE_JON, SevenIsland_SevaultCanyon_Entrance_Text_EveIntro, SevenIsland_SevaultCanyon_Entrance_Text_EveDefeat, SevenIsland_SevaultCanyon_Entrance_Text_EveNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC932
- msgbox Text_18C683, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_EveRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_EvePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC932:: @ 81AC932
- trainerbattle_rematch_double TRAINER_YOUNG_COUPLE_EVE_JON, Text_1C4416, Text_18C662, Text_18C6AB
- msgbox Text_18C683, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_EveRematch:: @ 81AC932
+ trainerbattle_rematch_double TRAINER_YOUNG_COUPLE_EVE_JON, SevenIsland_SevaultCanyon_Entrance_Text_EveRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_EveDefeat, SevenIsland_SevaultCanyon_Entrance_Text_EveNotEnoughMons
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_EvePostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1AC94D:: @ 81AC94D
- trainerbattle_double TRAINER_YOUNG_COUPLE_EVE_JON, Text_18C700, Text_18C73B, Text_18C7BD
+SevenIsland_SevaultCanyon_Entrance_EventScript_Jon:: @ 81AC94D
+ trainerbattle_double TRAINER_YOUNG_COUPLE_EVE_JON, SevenIsland_SevaultCanyon_Entrance_Text_JonIntro, SevenIsland_SevaultCanyon_Entrance_Text_JonDefeat, SevenIsland_SevaultCanyon_Entrance_Text_JonNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC978
- msgbox Text_18C773, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_JonRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_JonPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC978:: @ 81AC978
- trainerbattle_rematch_double TRAINER_YOUNG_COUPLE_EVE_JON, Text_1C444C, Text_18C73B, Text_18C7BD
- msgbox Text_18C773, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_JonRematch:: @ 81AC978
+ trainerbattle_rematch_double TRAINER_YOUNG_COUPLE_EVE_JON, SevenIsland_SevaultCanyon_Entrance_Text_JonRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_JonDefeat, SevenIsland_SevaultCanyon_Entrance_Text_JonNotEnoughMons
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_JonPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1AC993:: @ 81AC993
- trainerbattle_single TRAINER_JUGGLER_MASON, Text_18C44B, Text_18C473
+SevenIsland_SevaultCanyon_Entrance_EventScript_Mason:: @ 81AC993
+ trainerbattle_single TRAINER_JUGGLER_MASON, SevenIsland_SevaultCanyon_Entrance_Text_MasonIntro, SevenIsland_SevaultCanyon_Entrance_Text_MasonDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC9BA
- msgbox Text_18C4BA, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_MasonRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MasonPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC9BA:: @ 81AC9BA
- trainerbattle_rematch TRAINER_JUGGLER_MASON, Text_1C4374, Text_18C473
- msgbox Text_18C4BA, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_MasonRematch:: @ 81AC9BA
+ trainerbattle_rematch TRAINER_JUGGLER_MASON, SevenIsland_SevaultCanyon_Entrance_Text_MasonRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_MasonDefeat
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MasonPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1AC9D1:: @ 81AC9D1
- trainerbattle_single TRAINER_PKMN_RANGER_NICOLAS, Text_18C500, Text_18C543
+SevenIsland_SevaultCanyon_Entrance_EventScript_Nicolas:: @ 81AC9D1
+ trainerbattle_single TRAINER_PKMN_RANGER_NICOLAS, SevenIsland_SevaultCanyon_Entrance_Text_NicolasIntro, SevenIsland_SevaultCanyon_Entrance_Text_NicolasDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1AC9F8
- msgbox Text_18C54B, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_NicolasRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_NicolasPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1AC9F8:: @ 81AC9F8
- trainerbattle_rematch TRAINER_PKMN_RANGER_NICOLAS, Text_1C43AD, Text_18C543
- msgbox Text_18C54B, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_NicolasRematch:: @ 81AC9F8
+ trainerbattle_rematch TRAINER_PKMN_RANGER_NICOLAS, SevenIsland_SevaultCanyon_Entrance_Text_NicolasRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_NicolasDefeat
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_NicolasPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_Entrance_EventScript_1ACA0F:: @ 81ACA0F
- trainerbattle_single TRAINER_PKMN_RANGER_MADELINE, Text_18C5AA, Text_18C5CD
+SevenIsland_SevaultCanyon_Entrance_EventScript_Madeline:: @ 81ACA0F
+ trainerbattle_single TRAINER_PKMN_RANGER_MADELINE, SevenIsland_SevaultCanyon_Entrance_Text_MadelineIntro, SevenIsland_SevaultCanyon_Entrance_Text_MadelineDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACA36
- msgbox Text_18C5F5, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_Entrance_EventScript_MadelineRematch
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MadelinePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACA36:: @ 81ACA36
- trainerbattle_rematch TRAINER_PKMN_RANGER_MADELINE, Text_1C43EC, Text_18C5CD
- msgbox Text_18C5F5, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_Entrance_EventScript_MadelineRematch:: @ 81ACA36
+ trainerbattle_rematch TRAINER_PKMN_RANGER_MADELINE, SevenIsland_SevaultCanyon_Entrance_Text_MadelineRematchIntro, SevenIsland_SevaultCanyon_Entrance_Text_MadelineDefeat
+ msgbox SevenIsland_SevaultCanyon_Entrance_Text_MadelinePostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACA4D:: @ 81ACA4D
- trainerbattle_single TRAINER_CRUSH_GIRL_CYNDY, Text_18C887, Text_18C8A6
+SevenIsland_SevaultCanyon_EventScript_Cyndy:: @ 81ACA4D
+ trainerbattle_single TRAINER_CRUSH_GIRL_CYNDY, SevenIsland_SevaultCanyon_Text_CyndyIntro, SevenIsland_SevaultCanyon_Text_CyndyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACA74
- msgbox Text_18C8C2, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_CyndyRematch
+ msgbox SevenIsland_SevaultCanyon_Text_CyndyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACA74:: @ 81ACA74
- trainerbattle_rematch TRAINER_CRUSH_GIRL_CYNDY, Text_1C4491, Text_18C8A6
- msgbox Text_18C8C2, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_CyndyRematch:: @ 81ACA74
+ trainerbattle_rematch TRAINER_CRUSH_GIRL_CYNDY, SevenIsland_SevaultCanyon_Text_CyndyRematchIntro, SevenIsland_SevaultCanyon_Text_CyndyDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_CyndyPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACA8B:: @ 81ACA8B
- trainerbattle_single TRAINER_TAMER_EVAN, Text_18C8FD, Text_18C980
+SevenIsland_SevaultCanyon_EventScript_Evan:: @ 81ACA8B
+ trainerbattle_single TRAINER_TAMER_EVAN, SevenIsland_SevaultCanyon_Text_EvanIntro, SevenIsland_SevaultCanyon_Text_EvanDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACAB2
- msgbox Text_18C999, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_EvanRematch
+ msgbox SevenIsland_SevaultCanyon_Text_EvanPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACAB2:: @ 81ACAB2
- trainerbattle_rematch TRAINER_TAMER_EVAN, Text_1C44CB, Text_18C980
- msgbox Text_18C999, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_EvanRematch:: @ 81ACAB2
+ trainerbattle_rematch TRAINER_TAMER_EVAN, SevenIsland_SevaultCanyon_Text_EvanRematchIntro, SevenIsland_SevaultCanyon_Text_EvanDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_EvanPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACAC9:: @ 81ACAC9
- trainerbattle_single TRAINER_PKMN_RANGER_JACKSON, Text_18CA2F, Text_18CA6F
+SevenIsland_SevaultCanyon_EventScript_Jackson:: @ 81ACAC9
+ trainerbattle_single TRAINER_PKMN_RANGER_JACKSON, SevenIsland_SevaultCanyon_Text_JacksonIntro, SevenIsland_SevaultCanyon_Text_JacksonDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACAF0
- msgbox Text_18CA9C, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_JacksonRematch
+ msgbox SevenIsland_SevaultCanyon_Text_JacksonPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACAF0:: @ 81ACAF0
- trainerbattle_rematch TRAINER_PKMN_RANGER_JACKSON, Text_1C454E, Text_18CA6F
- msgbox Text_18CA9C, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_JacksonRematch:: @ 81ACAF0
+ trainerbattle_rematch TRAINER_PKMN_RANGER_JACKSON, SevenIsland_SevaultCanyon_Text_JacksonRematchIntro, SevenIsland_SevaultCanyon_Text_JacksonDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_JacksonPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACB07:: @ 81ACB07
- trainerbattle_single TRAINER_PKMN_RANGER_KATELYN, Text_18CB16, Text_18CB3E
+SevenIsland_SevaultCanyon_EventScript_Katelyn:: @ 81ACB07
+ trainerbattle_single TRAINER_PKMN_RANGER_KATELYN, SevenIsland_SevaultCanyon_Text_KatelynIntro, SevenIsland_SevaultCanyon_Text_KatelynDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACB2E
- msgbox Text_18CB6C, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_KatelynRematch
+ msgbox SevenIsland_SevaultCanyon_Text_KatelynPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACB2E:: @ 81ACB2E
- trainerbattle_rematch TRAINER_PKMN_RANGER_KATELYN, Text_1C458E, Text_18CB3E
- msgbox Text_18CB6C, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_KatelynRematch:: @ 81ACB2E
+ trainerbattle_rematch TRAINER_PKMN_RANGER_KATELYN, SevenIsland_SevaultCanyon_Text_KatelynRematchIntro, SevenIsland_SevaultCanyon_Text_KatelynDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_KatelynPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACB45:: @ 81ACB45
- trainerbattle_single TRAINER_COOLTRAINER_LEROY, Text_18CBB4, Text_18CBE0
+SevenIsland_SevaultCanyon_EventScript_Leroy:: @ 81ACB45
+ trainerbattle_single TRAINER_COOLTRAINER_LEROY, SevenIsland_SevaultCanyon_Text_LeroyIntro, SevenIsland_SevaultCanyon_Text_LeroyDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACB6C
- msgbox Text_18CC09, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_LeroyRematch
+ msgbox SevenIsland_SevaultCanyon_Text_LeroyPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACB6C:: @ 81ACB6C
- trainerbattle_rematch TRAINER_COOLTRAINER_LEROY, Text_1C45C2, Text_18CBE0
- msgbox Text_18CC09, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_LeroyRematch:: @ 81ACB6C
+ trainerbattle_rematch TRAINER_COOLTRAINER_LEROY, SevenIsland_SevaultCanyon_Text_LeroyRematchIntro, SevenIsland_SevaultCanyon_Text_LeroyDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_LeroyPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACB83:: @ 81ACB83
- trainerbattle_single TRAINER_COOLTRAINER_MICHELLE, Text_18CC4F, Text_18CCAE
+SevenIsland_SevaultCanyon_EventScript_Michelle:: @ 81ACB83
+ trainerbattle_single TRAINER_COOLTRAINER_MICHELLE, SevenIsland_SevaultCanyon_Text_MichelleIntro, SevenIsland_SevaultCanyon_Text_MichelleDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACBAA
- msgbox Text_18CCEA, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_MichelleRematch
+ msgbox SevenIsland_SevaultCanyon_Text_MichellePostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACBAA:: @ 81ACBAA
- trainerbattle_rematch TRAINER_COOLTRAINER_MICHELLE, Text_1C45FB, Text_18CCAE
- msgbox Text_18CCEA, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_MichelleRematch:: @ 81ACBAA
+ trainerbattle_rematch TRAINER_COOLTRAINER_MICHELLE, SevenIsland_SevaultCanyon_Text_MichelleRematchIntro, SevenIsland_SevaultCanyon_Text_MichelleDefeat
+ msgbox SevenIsland_SevaultCanyon_Text_MichellePostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACBC1:: @ 81ACBC1
- trainerbattle_double TRAINER_COOL_COUPLE_LEX_NYA, Text_18CD49, Text_18CD75, Text_18CDE2
+SevenIsland_SevaultCanyon_EventScript_Lex:: @ 81ACBC1
+ trainerbattle_double TRAINER_COOL_COUPLE_LEX_NYA, SevenIsland_SevaultCanyon_Text_LexIntro, SevenIsland_SevaultCanyon_Text_LexDefeat, SevenIsland_SevaultCanyon_Text_LexNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACBEC
- msgbox Text_18CD9C, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_LexRematch
+ msgbox SevenIsland_SevaultCanyon_Text_LexPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACBEC:: @ 81ACBEC
- trainerbattle_rematch_double TRAINER_COOL_COUPLE_LEX_NYA, Text_1C4662, Text_18CD75, Text_18CDE2
- msgbox Text_18CD9C, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_LexRematch:: @ 81ACBEC
+ trainerbattle_rematch_double TRAINER_COOL_COUPLE_LEX_NYA, SevenIsland_SevaultCanyon_Text_LexRematchIntro, SevenIsland_SevaultCanyon_Text_LexDefeat, SevenIsland_SevaultCanyon_Text_LexNotEnoughMons
+ msgbox SevenIsland_SevaultCanyon_Text_LexPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_SevaultCanyon_EventScript_1ACC07:: @ 81ACC07
- trainerbattle_double TRAINER_COOL_COUPLE_LEX_NYA, Text_18CE20, Text_18CE5A, Text_18CEF4
+SevenIsland_SevaultCanyon_EventScript_Nya:: @ 81ACC07
+ trainerbattle_double TRAINER_COOL_COUPLE_LEX_NYA, SevenIsland_SevaultCanyon_Text_NyaIntro, SevenIsland_SevaultCanyon_Text_NyaDefeat, SevenIsland_SevaultCanyon_Text_NyaNotEnoughMons
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq EventScript_1ACC32
- msgbox Text_18CE78, MSGBOX_AUTOCLOSE
+ goto_if_eq SevenIsland_SevaultCanyon_EventScript_NyaRematch
+ msgbox SevenIsland_SevaultCanyon_Text_NyaPostBattle, MSGBOX_AUTOCLOSE
end
-EventScript_1ACC32:: @ 81ACC32
- trainerbattle_rematch_double TRAINER_COOL_COUPLE_LEX_NYA, Text_1C4699, Text_18CE5A, Text_18CEF4
- msgbox Text_18CE78, MSGBOX_AUTOCLOSE
+SevenIsland_SevaultCanyon_EventScript_NyaRematch:: @ 81ACC32
+ trainerbattle_rematch_double TRAINER_COOL_COUPLE_LEX_NYA, SevenIsland_SevaultCanyon_Text_NyaRematchIntro, SevenIsland_SevaultCanyon_Text_NyaDefeat, SevenIsland_SevaultCanyon_Text_NyaNotEnoughMons
+ msgbox SevenIsland_SevaultCanyon_Text_NyaPostBattle, MSGBOX_AUTOCLOSE
end
SevenIsland_TanobyRuins_EventScript_Brandon:: @ 81ACC4D
trainerbattle_single TRAINER_RUIN_MANIAC_BRANDON, SevenIsland_TanobyRuins_Text_BrandonIntro, SevenIsland_TanobyRuins_Text_BrandonDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq SevenIsland_TanobyRuins_EventScript_RematchBrandon
+ goto_if_eq SevenIsland_TanobyRuins_EventScript_BrandonRematch
msgbox SevenIsland_TanobyRuins_Text_BrandonPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TanobyRuins_EventScript_RematchBrandon:: @ 81ACC74
+SevenIsland_TanobyRuins_EventScript_BrandonRematch:: @ 81ACC74
trainerbattle_rematch TRAINER_RUIN_MANIAC_BRANDON, SevenIsland_TanobyRuins_Text_BrandonRematchIntro, SevenIsland_TanobyRuins_Text_BrandonDefeat
msgbox SevenIsland_TanobyRuins_Text_BrandonPostBattle, MSGBOX_AUTOCLOSE
end
@@ -3005,11 +3005,11 @@ SevenIsland_TanobyRuins_EventScript_Benjamin:: @ 81ACC8B
trainerbattle_single TRAINER_RUIN_MANIAC_BENJAMIN, SevenIsland_TanobyRuins_Text_BenjaminIntro, SevenIsland_TanobyRuins_Text_BenjaminDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq SevenIsland_TanobyRuins_EventScript_RematchBenjamin
+ goto_if_eq SevenIsland_TanobyRuins_EventScript_BenjaminRematch
msgbox SevenIsland_TanobyRuins_Text_BenjaminPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TanobyRuins_EventScript_RematchBenjamin:: @ 81ACCB2
+SevenIsland_TanobyRuins_EventScript_BenjaminRematch:: @ 81ACCB2
trainerbattle_rematch TRAINER_RUIN_MANIAC_BENJAMIN, SevenIsland_TanobyRuins_Text_BenjaminRematchIntro, SevenIsland_TanobyRuins_Text_BenjaminDefeat
msgbox SevenIsland_TanobyRuins_Text_BenjaminPostBattle, MSGBOX_AUTOCLOSE
end
@@ -3018,11 +3018,11 @@ SevenIsland_TanobyRuins_EventScript_Edna:: @ 81ACCC9
trainerbattle_single TRAINER_PAINTER_EDNA, SevenIsland_TanobyRuins_Text_EdnaIntro, SevenIsland_TanobyRuins_Text_EdnaDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq SevenIsland_TanobyRuins_EventScript_RematchEdna
+ goto_if_eq SevenIsland_TanobyRuins_EventScript_EdnaRematch
msgbox SevenIsland_TanobyRuins_Text_EdnaPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TanobyRuins_EventScript_RematchEdna:: @ 81ACCF0
+SevenIsland_TanobyRuins_EventScript_EdnaRematch:: @ 81ACCF0
trainerbattle_rematch TRAINER_PAINTER_EDNA, SevenIsland_TanobyRuins_Text_EdnaRematchIntro, SevenIsland_TanobyRuins_Text_EdnaDefeat
msgbox SevenIsland_TanobyRuins_Text_EdnaPostBattle, MSGBOX_AUTOCLOSE
end
@@ -3031,11 +3031,11 @@ SevenIsland_TanobyRuins_EventScript_Clifford:: @ 81ACD07
trainerbattle_single TRAINER_GENTLEMAN_CLIFFORD, SevenIsland_TanobyRuins_Text_CliffordIntro, SevenIsland_TanobyRuins_Text_CliffordDefeat
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
- goto_if_eq SevenIsland_TanobyRuins_EventScript_RematchClifford
+ goto_if_eq SevenIsland_TanobyRuins_EventScript_CliffordRematch
msgbox SevenIsland_TanobyRuins_Text_CliffordPostBattle, MSGBOX_AUTOCLOSE
end
-SevenIsland_TanobyRuins_EventScript_RematchClifford:: @ 81ACD2E
+SevenIsland_TanobyRuins_EventScript_CliffordRematch:: @ 81ACD2E
trainerbattle_rematch TRAINER_GENTLEMAN_CLIFFORD, SevenIsland_TanobyRuins_Text_CliffordRematchIntro, SevenIsland_TanobyRuins_Text_CliffordDefeat
msgbox SevenIsland_TanobyRuins_Text_CliffordPostBattle, MSGBOX_AUTOCLOSE
end
diff --git a/data/specials.inc b/data/specials.inc
index 5b9ca7d5a..7802679c6 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -38,12 +38,12 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special TryBattleLinkup
def_special TryTradeLinkup
- def_special sub_80810F4
+ def_special TryRecordMixLinkup
def_special CloseLink
def_special EnterColosseumPlayerSpot
def_special EnterTradeSeat
- def_special sub_80819B8
- def_special sub_808130C
+ def_special Special_WiredCableClubTrade
+ def_special Special_CableClub_AskSaveTheGame
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
@@ -238,12 +238,12 @@ gSpecials:: @ 815FD60
def_special Special_GetPlayerAvatarBike
def_special nullsub_75
def_special nullsub_75
- def_special Special_GetLeadMonFriendship
+ def_special GetLeadMonFriendship
def_special ScrSpecial_BattleTowerMapScript2
def_special ChooseNextBattleTowerTrainer
def_special CheckPartyBattleTowerBanlist
def_special PrintBattleTowerTrainerGreeting
- def_special PrintEReaderTrainerGreeting
+ def_special BufferEReaderTrainerGreeting
def_special StartSpecialBattle
def_special SetBattleTowerProperty
def_special BattleTowerUtil
@@ -293,7 +293,7 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special nullsub_75
- def_special Special_BufferEReaderTrainerName5
+ def_special BufferEReaderTrainerName
def_special Special_GetRandomSlotMachine
def_special GetPlayerFacingDirection
def_special nullsub_75
@@ -357,7 +357,7 @@ gSpecials:: @ 815FD60
def_special sub_80CADC4
def_special Special_SetVermilionTrashCans
def_special sub_805D1A8
- def_special Special_SampleResortGorgeousMonAndReward
+ def_special SampleResortGorgeousMonAndReward
def_special Special_CheckAddCoins
def_special GetDaycarePokemonCount
def_special Special_CloseElevatorCurrentFloorWindow
@@ -368,7 +368,7 @@ gSpecials:: @ 815FD60
def_special ShouldShowBoxWasFullMessage
def_special ChangeBoxPokemonNickname
def_special Special_UpdateTrainerCardPhotoIcons
- def_special Special_StickerLadyGetBragFlags
+ def_special StickerManGetBragFlags
def_special SetUsedPkmnCenterQuestLogEvent
def_special IsWirelessAdapterConnected
def_special TryBecomeLinkLeader
@@ -444,7 +444,7 @@ gSpecials:: @ 815FD60
def_special Special_PlayerIsNotInTrainerTowerLobby
def_special Special_BrailleCursorToggle
def_special Script_ResetUnionRoomTrade
- def_special Special_PlayerPartyContainsSpeciesWithPlayerID
+ def_special PlayerPartyContainsSpeciesWithPlayerID
def_special AnimateTeleporterHousing
def_special IsDodrioInParty
def_special AnimateTeleporterCable
diff --git a/data/text/fame_checker.inc b/data/text/fame_checker.inc
index a8226df05..8341c8858 100644
--- a/data/text/fame_checker.inc
+++ b/data/text/fame_checker.inc
@@ -1429,7 +1429,7 @@ gUnknown_81B17E9:: @ 81B17E9
.string "shades only when he is thinking up\l"
.string "new quiz questions.$"
-gUnknown_81B187F:: @ 81B187F
+PokemonJournal_Text_SpecialFeatureLorelei:: @ 81B187F
.string "POKéMON JOURNAL\p"
.string "Special Feature:\n"
.string "ELITE FOUR's LORELEI!\p"
@@ -1445,7 +1445,7 @@ PokemonJournal_Text_SpecialFeatureBruno:: @ 81B1913
.string "FOUR out of his burning ambition to\l"
.string "battle the best TRAINERS.$"
-gUnknown_81B19A8:: @ 81B19A8
+PokemonJournal_Text_SpecialFeatureAgatha:: @ 81B19A8
.string "POKéMON JOURNAL\p"
.string "Special Feature:\n"
.string "ELITE FOUR's AGATHA!\p"
@@ -1468,7 +1468,7 @@ PokemonJournal_Text_SpecialFeatureProfOak:: @ 81B1AB9
.string "PROF. OAK reportedly lives with his\n"
.string "grandchildren DAISY and {RIVAL}.$"
-gUnknown_81B1B3D:: @ 81B1B3D
+PokemonJournal_Text_SpecialFeatureDaisyOak:: @ 81B1B3D
.string "This is a POKéMON JOURNAL from\n"
.string "years ago…\p"
.string "POKéMON JOURNAL\n"
diff --git a/data/text/trainer_card.inc b/data/text/trainer_card.inc
index 3a6557cca..4a54e5b5b 100644
--- a/data/text/trainer_card.inc
+++ b/data/text/trainer_card.inc
@@ -1,31 +1,31 @@
-gUnknown_81B1D7D:: @ 81B1D7D
+CeladonCity_GameCorner_Text_TryPokemonPrinter:: @ 81B1D7D
.string "It's a POKéMON PRINTER!\p"
.string "It can put a print of your POKéMON\n"
.string "on the back of your TRAINER CARD.\p"
.string "It costs only ¥50.\n"
.string "Would you like to try it?$"
-gUnknown_81B1E07:: @ 81B1E07
+CeladonCity_GameCorner_Text_DontHaveEnoughMoney:: @ 81B1E07
.string "You don't have enough money.$"
-gUnknown_81B1E24:: @ 81B1E24
+CeladonCity_GameCorner_Text_ChoosePrintType:: @ 81B1E24
.string "Please choose the print type.$"
-gUnknown_81B1E42:: @ 81B1E42
+CeladonCity_GameCorner_Text_BigSmileForPhoto:: @ 81B1E42
.string "A big smile for the photo, please!\n"
.string "Three… Two… One…\p"
.string "Flash!$"
-gUnknown_81B1E7D:: @ 81B1E7D
+CeladonCity_GameCorner_Text_PrintIsReadyCheckTrainerCard:: @ 81B1E7D
.string "Your POKéMON print is ready!\n"
.string "Check your TRAINER CARD.$"
-gUnknown_81B1EB3:: @ 81B1EB3
+FourIsland_House2_Text_WishICouldShowOffStickers:: @ 81B1EB3
.string "Giggle…\n"
.string "I collected a ton of STICKERS.\l"
.string "I wish I could show them off…$"
-gUnknown_81B1EF8:: @ 81B1EF8
+FourIsland_House2_Text_GiveYouStickerIfYouBrag:: @ 81B1EF8
.string "Oh, excellent!\n"
.string "You've come to the right place!\p"
.string "Look, look! See? See?\n"
@@ -38,113 +38,113 @@ gUnknown_81B1EF8:: @ 81B1EF8
.string "yourself.\p"
.string "What will you brag about?$"
-gUnknown_81B1FEF:: @ 81B1FEF
+FourIsland_House2_Text_BragAboutSomethingForMe:: @ 81B1FEF
.string "Brag about something for me.\n"
.string "I'll give you a STICKER.$"
-gUnknown_81B2025:: @ 81B2025
+FourIsland_House2_Text_BragAboutWhatToday:: @ 81B2025
.string "Oh, hi!\n"
.string "Here comes the braggart.\p"
.string "What are you going to brag about\n"
.string "today?$"
-gUnknown_81B206E:: @ 81B206E
+FourIsland_House2_Text_WowHoFLowest:: @ 81B206E
.string "Oh, wow, you made it into the\n"
.string "HALL OF FAME.\p"
.string "That's pretty good, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B20CF:: @ 81B20CF
+FourIsland_House2_Text_WowHoFLow:: @ 81B20CF
.string "Oh, wow, you've entered the\n"
.string "HALL OF FAME often!\p"
.string "That's impressive, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B2133:: @ 81B2133
+FourIsland_House2_Text_WowHoFHigh:: @ 81B2133
.string "Whoa! You've made it into the\n"
.string "HALL OF FAME that often?\l"
.string "That's seriously incredible, yup!\p"
.string "You own the POKéMON LEAGUE!\n"
.string "I'll give you one of these.$"
-gUnknown_81B21C4:: @ 81B21C4
+FourIsland_House2_Text_WowHoFHighest:: @ 81B21C4
.string "No way! You've gone into the\n"
.string "HALL OF FAME that many times?\p"
.string "You're beyond incredible, yup!\n"
.string "That's it, I have to give you this.$"
-gUnknown_81B2242:: @ 81B2242
+FourIsland_House2_Text_HoFStickerApplied:: @ 81B2242
.string "The HALL OF FAME STICKER was\n"
.string "applied to the TRAINER CARD.$"
-gUnknown_81B227C:: @ 81B227C
+FourIsland_House2_Text_ComeBackWithBetterStoryHoF:: @ 81B227C
.string "Hmm…\p"
.string "Come back with a better story next\n"
.string "time, okay?$"
-gUnknown_81B22B0:: @ 81B22B0
+FourIsland_House2_Text_LivingLegendHoF:: @ 81B22B0
.string "Oh, no, no can do.\p"
.string "You're practically a living legend.\n"
.string "I have no SITCKERS left to give.$"
-gUnknown_81B2308:: @ 81B2308
+FourIsland_House2_Text_WowEggsLowest:: @ 81B2308
.string "Oh, wow, there are POKéMON EGGS?\n"
.string "I didn't know that!\p"
.string "That's pretty good, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B2372:: @ 81B2372
+FourIsland_House2_Text_WowEggsLow:: @ 81B2372
.string "You've hatched that many EGGS?\n"
.string "You really must like them!\p"
.string "That's impressive, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B23E0:: @ 81B23E0
+FourIsland_House2_Text_WowEggsHigh:: @ 81B23E0
.string "Whoa! You've hatched a whole\n"
.string "bunch of EGGS!\p"
.string "You're an EGG-hatching machine!\n"
.string "I'll give you one of these.$"
-gUnknown_81B2448:: @ 81B2448
+FourIsland_House2_Text_WowEggsHighest:: @ 81B2448
.string "Wh… You hatched that many EGGS?\p"
.string "What's behind your love of EGGS?\n"
.string "It's beyond incredible, yup!\p"
.string "You're too awesome, I tell you.\n"
.string "That's it, I have to give you this.$"
-gUnknown_81B24EA:: @ 81B24EA
+FourIsland_House2_Text_EggStickerApplied:: @ 81B24EA
.string "The EGG STICKER was applied\n"
.string "to the TRAINER CARD.$"
-gUnknown_81B251B:: @ 81B251B
+FourIsland_House2_Text_ComeBackWithBetterStoryEggs:: @ 81B251B
.string "Hmm…\p"
.string "Come back with a better story next\n"
.string "time, okay?$"
-gUnknown_81B254F:: @ 81B254F
+FourIsland_House2_Text_LivingLegendEggs:: @ 81B254F
.string "Oh, no, no can do.\p"
.string "You're practically a living legend.\n"
.string "I have no SITCKERS left to give.$"
-gUnknown_81B25A7:: @ 81B25A7
+FourIsland_House2_Text_WowLinkWinsLowest:: @ 81B25A7
.string "Oh, wow, you've had success\n"
.string "link battling?\p"
.string "You're pretty strong, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B2609:: @ 81B2609
+FourIsland_House2_Text_WowLinkWinsLow:: @ 81B2609
.string "You've beaten your friends a lot\n"
.string "link battling, huh?\p"
.string "You're impressively strong, yup!\n"
.string "I'll give you one of these.$"
-gUnknown_81B267B:: @ 81B267B
+FourIsland_House2_Text_WowLinkWinsHigh:: @ 81B267B
.string "Whoa! You've beaten your friends\n"
.string "a frightful number of times.\p"
.string "Have you lost friends over this?\n"
.string "I'll give you one of these.$"
-gUnknown_81B26F6:: @ 81B26F6
+FourIsland_House2_Text_WowLinkWinsHighest:: @ 81B26F6
.string "Wh… Wickedly whoa!\n"
.string "You've won mind-blowingly often!\p"
.string "It just knocks me out thinking\n"
@@ -152,16 +152,16 @@ gUnknown_81B26F6:: @ 81B26F6
.string "You're the stuff of nightmares!\n"
.string "That's it, I have to give you this.$"
-gUnknown_81B27A6:: @ 81B27A6
+FourIsland_House2_Text_VictoryStickerApplied:: @ 81B27A6
.string "The VICTORY STICKER was applied\n"
.string "to the TRAINER CARD.$"
-gUnknown_81B27DB:: @ 81B27DB
+FourIsland_House2_Text_ComeBackWithBetterStoryLinkWins:: @ 81B27DB
.string "Hmm…\p"
.string "Come back with a better story next\n"
.string "time, okay?$"
-gUnknown_81B280F:: @ 81B280F
+FourIsland_House2_Text_LivingLegendLinkWins:: @ 81B280F
.string "Oh, no, no can do.\p"
.string "You're practically a living legend.\n"
.string "I have no SITCKERS left to give.$"
diff --git a/data/text/trainers.inc b/data/text/trainers.inc
index 7a51a0585..ebe5965b5 100644
--- a/data/text/trainers.inc
+++ b/data/text/trainers.inc
@@ -765,227 +765,227 @@ OneIsland_KindleRoad_Text_MikRematchIntro:: @ 81C3A55
.string "afraid of nothing!\p"
.string "We'll prove it to you this time!$"
-Text_1C3AA7:: @ 81C3AA7
+ThreeIsland_BondBridge_Text_NikkiRematchIntro:: @ 81C3AA7
.string "Are we to battle again?$"
-Text_1C3ABF:: @ 81C3ABF
+ThreeIsland_BondBridge_Text_VioletRematchIntro:: @ 81C3ABF
.string "From where have you come, and\n"
.string "where are you bound?$"
-Text_1C3AF2:: @ 81C3AF2
+ThreeIsland_BondBridge_Text_AmiraRematchIntro:: @ 81C3AF2
.string "I want to swim without my float\n"
.string "ring soon.$"
-Text_1C3B1D:: @ 81C3B1D
+ThreeIsland_BondBridge_Text_AlexisRematchIntro:: @ 81C3B1D
.string "Yay, yay!\n"
.string "POKéMON!$"
-Text_1C3B30:: @ 81C3B30
+ThreeIsland_BondBridge_Text_TishaRematchIntro:: @ 81C3B30
.string "Oh, no, didn't I tell you already?\n"
.string "Please, stay away from me!$"
-Text_1C3B6E:: @ 81C3B6E
+ThreeIsland_BondBridge_Text_JoyRematchIntro:: @ 81C3B6E
.string "JOY: We've gotten stronger!\n"
.string "Lots and lots!$"
-Text_1C3B99:: @ 81C3B99
+ThreeIsland_BondBridge_Text_MegRematchIntro:: @ 81C3B99
.string "MEG: You can't beat us today!$"
-Text_1C3BB7:: @ 81C3BB7
+FiveIsland_WaterLabyrinth_Text_AlizeRematchIntro:: @ 81C3BB7
.string "Oh, hello!\p"
.string "Are you raising your POKéMON in a\n"
.string "good environment?$"
-Text_1C3BF6:: @ 81C3BF6
+FiveIsland_ResortGorgeous_Text_DaisyRematchIntro:: @ 81C3BF6
.string "With these hands, I will create\n"
.string "my victory today.$"
-Text_1C3C28:: @ 81C3C28
+FiveIsland_ResortGorgeous_Text_CelinaRematchIntro:: @ 81C3C28
.string "Must I repeat myself?\n"
.string "I'm trying to paint.\l"
.string "Please keep out of my sight!$"
-Text_1C3C70:: @ 81C3C70
+FiveIsland_ResortGorgeous_Text_RaynaRematchIntro:: @ 81C3C70
.string "I haven't made any progress…\n"
.string "I still can't get the right angle…$"
-Text_1C3CB0:: @ 81C3CB0
+FiveIsland_ResortGorgeous_Text_JackiRematchIntro:: @ 81C3CB0
.string "Oh, you will give me another\n"
.string "opportunity to match wits with you?$"
-Text_1C3CF1:: @ 81C3CF1
+FiveIsland_ResortGorgeous_Text_GillianRematchIntro:: @ 81C3CF1
.string "They're almost finished making the\n"
.string "pool for my POKéMON.\p"
.string "You must drop in for a visit.$"
-Text_1C3D47:: @ 81C3D47
+FiveIsland_ResortGorgeous_Text_DestinRematchIntro:: @ 81C3D47
.string "I'm a good runner.\n"
.string "I've gotten even faster!$"
-Text_1C3D73:: @ 81C3D73
+FiveIsland_ResortGorgeous_Text_TobyRematchIntro:: @ 81C3D73
.string "I say, friend!\n"
.string "Let us enjoy our time together!$"
-Text_1C3DA2:: @ 81C3DA2
+FiveIsland_MemorialPillar_Text_MiloRematchIntro:: @ 81C3DA2
.string "I'm the eldest of the BIRD\n"
.string "BROTHERS. Remember me?\p"
.string "That's right, I'm the one who loves\n"
.string "birds for their beaks!$"
-Text_1C3E0F:: @ 81C3E0F
+FiveIsland_MemorialPillar_Text_ChazRematchIntro:: @ 81C3E0F
.string "I'm the middle kid of the BIRD\n"
.string "BROTHERS.\p"
.string "I'm the one that loves wings.\n"
.string "Let's battle again!$"
-Text_1C3E6A:: @ 81C3E6A
+FiveIsland_MemorialPillar_Text_HaroldRematchIntro:: @ 81C3E6A
.string "I'm the youngest of the BIRD\n"
.string "BROTHERS.\p"
.string "I love birds for their down.\n"
.string "I didn't think I'd see you again!$"
-Text_1C3ED0:: @ 81C3ED0
+SixIsland_OutcastIsland_Text_TylorRematchIntro:: @ 81C3ED0
.string "I'm still having no luck at all.\n"
.string "A battle'd be a change of pace!$"
-Text_1C3F11:: @ 81C3F11
+SixIsland_OutcastIsland_Text_MymoRematchIntro:: @ 81C3F11
.string "Gasp… Gasp…\p"
.string "I swam here from SIX ISLAND's port\n"
.string "in one go again.$"
-Text_1C3F51:: @ 81C3F51
+SixIsland_OutcastIsland_Text_NicoleRematchIntro:: @ 81C3F51
.string "You always come along while I'm\n"
.string "swimming.$"
-Text_1C3F7B:: @ 81C3F7B
+SixIsland_OutcastIsland_Text_AvaRematchIntro:: @ 81C3F7B
.string "AVA: Let's have another\n"
.string "two-on-two marine battle today!$"
-Text_1C3FB3:: @ 81C3FB3
+SixIsland_OutcastIsland_Text_GebRematchIntro:: @ 81C3FB3
.string "GEB: My big sister and I are way\n"
.string "tougher than before!$"
-Text_1C3FE9:: @ 81C3FE9
+SixIsland_GreenPath_Text_JaclynRematchIntro:: @ 81C3FE9
.string "…Huh?\p"
.string "I envision my house, but TELEPORT\n"
.string "always brings me here!$"
-Text_1C4028:: @ 81C4028
+SixIsland_WaterPath_Text_RoseRematchIntro:: @ 81C4028
.string "Oh, hello.\n"
.string "A pleasant breeze is blowing again.$"
-Text_1C4057:: @ 81C4057
+SixIsland_WaterPath_Text_EdwardRematchIntro:: @ 81C4057
.string "Hehehe, I'm practicing in secret\n"
.string "again.$"
-Text_1C407F:: @ 81C407F
+SixIsland_WaterPath_Text_SamirRematchIntro:: @ 81C407F
.string "What, you're sick of seeing\n"
.string "SWIMMERS like me?\p"
.string "Aww, don't be hatin'!\n"
.string "Battle with me again.$"
-Text_1C40D9:: @ 81C40D9
+SixIsland_WaterPath_Text_DeniseRematchIntro:: @ 81C40D9
.string "Sigh…\n"
.string "My boyfriend's busy again…$"
-Text_1C40FA:: @ 81C40FA
+SixIsland_WaterPath_Text_EarlRematchIntro:: @ 81C40FA
.string "Come on, tell me, where are the\n"
.string "mountains around these parts?$"
-Text_1C4138:: @ 81C4138
+SixIsland_WaterPath_Text_MiuRematchIntro:: @ 81C4138
.string "MIU: Hello, POKéMON!\n"
.string "It's time to play again!$"
-Text_1C4166:: @ 81C4166
+SixIsland_WaterPath_Text_MiaRematchIntro:: @ 81C4166
.string "MIA: Hello, POKéMON!\n"
.string "It's time to battle again!$"
-Text_1C4196:: @ 81C4196
+SixIsland_RuinValley_Text_StanlyRematchIntro:: @ 81C4196
.string "There appear to be many secrets\n"
.string "still unsolved in this world.$"
-Text_1C41D4:: @ 81C41D4
+SixIsland_RuinValley_Text_FosterRematchIntro:: @ 81C41D4
.string "Hi, didn't we meet before?\n"
.string "What compelled you to come back?$"
-Text_1C4210:: @ 81C4210
+SixIsland_RuinValley_Text_LarryRematchIntro:: @ 81C4210
.string "It's been said that there are\n"
.string "mysterious stones on this island.\p"
.string "Have you discovered anything since\n"
.string "we last met?$"
-Text_1C4280:: @ 81C4280
+SixIsland_RuinValley_Text_DarylRematchIntro:: @ 81C4280
.string "A rematch with you, so high up!$"
-Text_1C42A0:: @ 81C42A0
+SixIsland_RuinValley_Text_HectorRematchIntro:: @ 81C42A0
.string "I'm pretty familiar with the land\n"
.string "around these parts.$"
-Text_1C42D6:: @ 81C42D6
+SevenIsland_TrainerTower_Text_DarioRematchIntro:: @ 81C42D6
.string "I sensed your approach.$"
-Text_1C42EE:: @ 81C42EE
+SevenIsland_TrainerTower_Text_RodetteRematchIntro:: @ 81C42EE
.string "Somewhere on this island, peculiar\n"
.string "POKéMON are sleeping.$"
-Text_1C4327:: @ 81C4327
+SevenIsland_SevaultCanyon_Entrance_Text_MiahRematchIntro:: @ 81C4327
.string "Kyahaha!\p"
.string "Coming back won't change a thing.\n"
.string "I'll flick you away effortlessly!$"
-Text_1C4374:: @ 81C4374
+SevenIsland_SevaultCanyon_Entrance_Text_MasonRematchIntro:: @ 81C4374
.string "Howdy! You're a member of my\n"
.string "fan club, isn't that right?$"
-Text_1C43AD:: @ 81C43AD
+SevenIsland_SevaultCanyon_Entrance_Text_NicolasRematchIntro:: @ 81C43AD
.string "This island is too spread out…\n"
.string "Patrolling the place is a drag…$"
-Text_1C43EC:: @ 81C43EC
+SevenIsland_SevaultCanyon_Entrance_Text_MadelineRematchIntro:: @ 81C43EC
.string "I don't forgive people who abuse\n"
.string "POKéMON!$"
-Text_1C4416:: @ 81C4416
+SevenIsland_SevaultCanyon_Entrance_Text_EveRematchIntro:: @ 81C4416
.string "EVE: I'll team up with JON and\n"
.string "battle together again.$"
-Text_1C444C:: @ 81C444C
+SevenIsland_SevaultCanyon_Entrance_Text_JonRematchIntro:: @ 81C444C
.string "JON: When I'm with EVE, it feels\n"
.string "like we could never lose, not ever.$"
-Text_1C4491:: @ 81C4491
+SevenIsland_SevaultCanyon_Text_CyndyRematchIntro:: @ 81C4491
.string "Let's have another battle.\n"
.string "My conditioning's in top form!$"
-Text_1C44CB:: @ 81C44CB
+SevenIsland_SevaultCanyon_Text_EvanRematchIntro:: @ 81C44CB
.string "It doesn't matter if you happen to\n"
.string "have the strongest POKéMON…\p"
.string "It doesn't mean a thing if you don't\n"
.string "know how to use them properly!$"
-Text_1C454E:: @ 81C454E
+SevenIsland_SevaultCanyon_Text_JacksonRematchIntro:: @ 81C454E
.string "I work to protect the environment.\n"
.string "In turn, nature protects me!$"
-Text_1C458E:: @ 81C458E
+SevenIsland_SevaultCanyon_Text_KatelynRematchIntro:: @ 81C458E
.string "Every time we meet, you have those\n"
.string "snazzy shoes on.$"
-Text_1C45C2:: @ 81C45C2
+SevenIsland_SevaultCanyon_Text_LeroyRematchIntro:: @ 81C45C2
.string "You must have gotten tougher.\n"
.string "Let me battle you, please!$"
-Text_1C45FB:: @ 81C45FB
+SevenIsland_SevaultCanyon_Text_MichelleRematchIntro:: @ 81C45FB
.string "I was given the best possible\n"
.string "education to become this strong.\p"
.string "I won't lose this time.\n"
.string "Absolutely not!$"
-Text_1C4662:: @ 81C4662
+SevenIsland_SevaultCanyon_Text_LexRematchIntro:: @ 81C4662
.string "LEX: My darling NYA, together\n"
.string "we will win for certain!$"
-Text_1C4699:: @ 81C4699
+SevenIsland_SevaultCanyon_Text_NyaRematchIntro:: @ 81C4699
.string "NYA: I won't drag down my mentor\n"
.string "LEX! We're going to win!$"
diff --git a/graphics/trainer_card/unk_83CC984.bin b/graphics/trainer_card/back.bin
index dd54ba1c7..dd54ba1c7 100644
--- a/graphics/trainer_card/unk_83CC984.bin
+++ b/graphics/trainer_card/back.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CC8A8.bin b/graphics/trainer_card/back_hoenn.bin
index eda105eb2..eda105eb2 100644
--- a/graphics/trainer_card/unk_83CC8A8.bin
+++ b/graphics/trainer_card/back_hoenn.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CCEC8.bin b/graphics/trainer_card/bg.bin
index c1c452262..c1c452262 100644
--- a/graphics/trainer_card/unk_83CCEC8.bin
+++ b/graphics/trainer_card/bg.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CCE30.bin b/graphics/trainer_card/bg_hoenn.bin
index b3994f663..b3994f663 100644
--- a/graphics/trainer_card/unk_83CCE30.bin
+++ b/graphics/trainer_card/bg_hoenn.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CC6F0.bin b/graphics/trainer_card/front.bin
index b83c43942..b83c43942 100644
--- a/graphics/trainer_card/unk_83CC6F0.bin
+++ b/graphics/trainer_card/front.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CC4DC.bin b/graphics/trainer_card/front_hoenn.bin
index 0f45caec6..0f45caec6 100644
--- a/graphics/trainer_card/unk_83CC4DC.bin
+++ b/graphics/trainer_card/front_hoenn.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CCAB0.bin b/graphics/trainer_card/front_hoenn_link.bin
index 46e00f670..46e00f670 100644
--- a/graphics/trainer_card/unk_83CCAB0.bin
+++ b/graphics/trainer_card/front_hoenn_link.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CCCA4.bin b/graphics/trainer_card/front_link.bin
index ef8e65b27..ef8e65b27 100644
--- a/graphics/trainer_card/unk_83CCCA4.bin
+++ b/graphics/trainer_card/front_link.bin
Binary files differ
diff --git a/graphics/trainer_card/unk_83CD300.pal b/graphics/trainer_card/gold.pal
index ebd175e97..ebd175e97 100644
--- a/graphics/trainer_card/unk_83CD300.pal
+++ b/graphics/trainer_card/gold.pal
diff --git a/include/battle_records.h b/include/battle_records.h
index 97f28a3b0..b66fbd686 100644
--- a/include/battle_records.h
+++ b/include/battle_records.h
@@ -2,5 +2,6 @@
#define GUARD_BATTLE_RECORDS_H
void ClearPlayerLinkBattleRecords(void);
+void TryRecordLinkBattleOutcome(s32 battlerId);
#endif // GUARD_BATTLE_RECORDS_H
diff --git a/include/cable_club.h b/include/cable_club.h
index c1dbab1a5..57515efc7 100644
--- a/include/cable_club.h
+++ b/include/cable_club.h
@@ -9,7 +9,7 @@
// Exported ROM declarations
void sub_8081A90(u8 taskId);
-u8 sub_8081150(void);
-void sub_8081668(void);
+u8 CreateTask_ReestablishLinkInCableClubRoom(void);
+void CB2_ReturnFromCableClubBattle(void);
#endif //GUARD_CABLE_CLUB_H
diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h
index 08713a602..d2f0a945b 100644
--- a/include/constants/event_object_movement.h
+++ b/include/constants/event_object_movement.h
@@ -153,7 +153,7 @@
#define MOVEMENT_ACTION_PLAYER_RUN_UP_SLOW 0x42
#define MOVEMENT_ACTION_PLAYER_RUN_LEFT_SLOW 0x43
#define MOVEMENT_ACTION_PLAYER_RUN_RIGHT_SLOW 0x44
-#define MOVEMENT_ACTION_UNKNOWN_STEP_45 0x45
+#define MOVEMENT_ACTION_START_ANIM_IN_DIRECTION 0x45
#define MOVEMENT_ACTION_JUMP_SPECIAL_DOWN 0x46
#define MOVEMENT_ACTION_JUMP_SPECIAL_UP 0x47
#define MOVEMENT_ACTION_JUMP_SPECIAL_LEFT 0x48
diff --git a/include/constants/facility_trainer_classes.h b/include/constants/facility_trainer_classes.h
index 10500ff35..fe94608dd 100644
--- a/include/constants/facility_trainer_classes.h
+++ b/include/constants/facility_trainer_classes.h
@@ -133,10 +133,10 @@
#define FACILITY_CLASS_CRUSH_KIN 0x81
#define FACILITY_CLASS_SIS_AND_BRO_2 0x82
#define FACILITY_CLASS_PKMN_PROF 0x83
-#define FACILITY_CLASS_PLAYER 0x84
-#define FACILITY_CLASS_PLAYER_2 0x85
-#define FACILITY_CLASS_PLAYER_3 0x86
-#define FACILITY_CLASS_PLAYER_4 0x87
+#define FACILITY_CLASS_BRENDAN 0x84
+#define FACILITY_CLASS_MAY 0x85
+#define FACILITY_CLASS_RED 0x86
+#define FACILITY_CLASS_LEAF 0x87
#define FACILITY_CLASS_TEAM_ROCKET_2 0x88
#define FACILITY_CLASS_PSYCHIC_4 0x89
#define FACILITY_CLASS_CRUSH_GIRL 0x8A
diff --git a/include/constants/field_effects.h b/include/constants/field_effects.h
index c56c97d73..5aa885b37 100644
--- a/include/constants/field_effects.h
+++ b/include/constants/field_effects.h
@@ -66,9 +66,9 @@
#define FLDEFF_HALL_OF_FAME_RECORD 62
#define FLDEFF_USE_TELEPORT 63
#define FLDEFF_SMILEY_FACE_ICON 64
-#define FLDEFF_UNK_41 65 // TODO: related to vs_seeker
+#define FLDEFF_USE_VS_SEEKER 65
#define FLDEFF_DOUBLE_EXCL_MARK_ICON 66
-#define FLDEFF_UNK_43 67 // TODO: related to deoxys
+#define FLDEFF_MOVE_DEOXYS_ROCK 67
#define FLDEFF_UNK_44 68 // TODO: related to ???
#define FLDEFF_UNK_45 69 // TODO: related to fame checker photos
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 7555f3c6b..11b09512f 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -670,7 +670,7 @@
#define FLAG_SILPH_11F_DOOR 0x28D
#define FLAG_0x28E 0x28E
#define FLAG_0x28F 0x28F
-#define FLAG_MET_STICKER_LADY 0x290
+#define FLAG_MET_STICKER_MAN 0x290
#define FLAG_PALLET_LADY_NOT_BLOCKING_SIGN 0x291
#define FLAG_GOT_VS_SEEKER 0x292
#define FLAG_GOT_TM19_FROM_ERIKA 0x293
@@ -1327,6 +1327,7 @@
#define FLAG_0x808 (SYS_FLAGS + 0x8)
#define PERMA_SYS_FLAGS_START 0x820
+
#define FLAG_BADGE01_GET (SYS_FLAGS + 0x20)
#define FLAG_BADGE02_GET (SYS_FLAGS + 0x21)
#define FLAG_BADGE03_GET (SYS_FLAGS + 0x22)
@@ -1335,6 +1336,8 @@
#define FLAG_BADGE06_GET (SYS_FLAGS + 0x25)
#define FLAG_BADGE07_GET (SYS_FLAGS + 0x26)
#define FLAG_BADGE08_GET (SYS_FLAGS + 0x27)
+#define NUM_BADGES (1 + FLAG_BADGE08_GET - FLAG_BADGE01_GET)
+
#define FLAG_SYS_POKEMON_GET (SYS_FLAGS + 0x28)
#define FLAG_SYS_POKEDEX_GET (SYS_FLAGS + 0x29)
#define FLAG_0x82A (SYS_FLAGS + 0x2A)
diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h
index 01140a160..2d6f72e43 100644
--- a/include/constants/metatile_labels.h
+++ b/include/constants/metatile_labels.h
@@ -190,4 +190,12 @@
#define METATILE_FuchsiaCity_SafariZoneTreeTopMiddle_Mowed 0x311
#define METATILE_FuchsiaCity_SafariZoneTreeTopRight_Mowed 0x312
+// gTileset_SeviiIslands45
+#define METATILE_SeviiIslands45_RocketWarehouseDoor_Locked 0x30B
+#define METATILE_SeviiIslands45_RocketWarehouseDoor_Unlocked 0x2AF
+
+// gTileset_SeviiIslands67
+#define METATILE_SeviiIslands67_DottedHoleDoor_Closed 0x357
+#define METATILE_SeviiIslands67_DottedHoleDoor_Open 0x358
+
#endif // GUARD_METATILE_LABELS_H
diff --git a/include/constants/trainer_card.h b/include/constants/trainer_card.h
new file mode 100644
index 000000000..67901eb27
--- /dev/null
+++ b/include/constants/trainer_card.h
@@ -0,0 +1,17 @@
+#ifndef GUARD_CONSTANTS_TRAINER_CARD_H
+#define GUARD_CONSTANTS_TRAINER_CARD_H
+
+#define TRAINER_CARD_PROFILE_LENGTH 4
+#define TRAINER_CARD_STICKER_TYPES 3
+
+#define CARD_TYPE_FRLG 0
+#define CARD_TYPE_RSE 1
+
+#define MON_ICON_TINT_NORMAL 0
+#define MON_ICON_TINT_BLACK 1
+#define MON_ICON_TINT_PINK 2
+#define MON_ICON_TINT_SEPIA 3
+
+#define NUM_LINK_TRAINER_CARD_CLASSES 8
+
+#endif // GUARD_CONSTANTS_TRAINER_CARD_H
diff --git a/include/data.h b/include/data.h
index f308b044c..90c8e0ace 100644
--- a/include/data.h
+++ b/include/data.h
@@ -28,7 +28,7 @@ extern const struct MonCoords gMonFrontPicCoords[];
extern const struct CompressedSpriteSheet gMonFrontPicTable[];
extern const struct MonCoords gMonBackPicCoords[];
extern const struct CompressedSpriteSheet gMonBackPicTable[];
-extern const struct CompressedSpritePalette gMonPaletteTable[];
+extern struct CompressedSpritePalette gMonPaletteTable[];
extern const struct CompressedSpritePalette gMonShinyPaletteTable[];
extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[];
extern const struct MonCoords gTrainerFrontPicCoords[];
diff --git a/include/event_object_movement.h b/include/event_object_movement.h
index baf66d737..edc5c8b11 100644
--- a/include/event_object_movement.h
+++ b/include/event_object_movement.h
@@ -41,7 +41,7 @@ void sub_808E16C(s16, s16);
void sub_808F28C(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat);
void sub_8092FF0(s16, s16, s16 *, s16 *);
u8 ObjectEventDirectionToImageAnimId(u8);
-void sub_80930E0(s16 *, s16 *, s16, s16);
+void sub_8063BC4(s16 *, s16 *, s16, s16);
void ObjectEventClearAnim(struct ObjectEvent *);
void ObjectEventClearAnimIfSpecialAnimActive(struct ObjectEvent *);
void SpawnObjectEventsInView(s16, s16);
@@ -116,6 +116,9 @@ void RfuUnionObjectToggleInvisibility(u8 objectEventId, bool32 invisible);
bool32 RfuUnionObjectIsInvisible(u8 objectEventId);
void RfuUnionObjectStartWarp(u8 objectEventId, u8 animNo);
bool32 RfuUnionObjectIsWarping(u8 objectEventId);
+u8 sub_8063F2C(u8 direction);
+u8 sub_8064194(u8 direction);
+u8 sub_80641C0(u8 direction);
void sub_805F378(s16 x, s16 y);
@@ -128,5 +131,6 @@ extern const struct OamData gObjectEventBaseOam_32x32;
extern const struct UCoords16 gUnknown_83A64C8[];
extern const u16 gUnknown_8398648[];
extern const u16 gUnknown_8398688[];
+void sub_805F724(struct ObjectEvent *, s16 x, s16 y);
#endif // GUARD_EVENT_OBJECT_MOVEMENT_H
diff --git a/include/event_scripts.h b/include/event_scripts.h
index 76e54b8eb..bd93bbb0b 100644
--- a/include/event_scripts.h
+++ b/include/event_scripts.h
@@ -1204,4 +1204,10 @@ extern const u8 EventScript_BagItemCanBeRegistered[];
// fldeff_cut
extern const u8 EventScript_FldEffCut[];
+// cable_club
+extern const u8 CableClub_Text_WhenAllPlayersReadyAConfirmBCancel[];
+extern const u8 CableClub_Text_AwaitingLinkupBCancel[];
+extern const u8 CableClub_Text_StartLinkWithXPlayersAConfirmBCancel[];
+extern const u8 CableClub_Text_PleaseWaitBCancel[];
+
#endif //GUARD_EVENT_SCRIPTS_H
diff --git a/include/field_camera.h b/include/field_camera.h
index fb9861014..fdab03255 100644
--- a/include/field_camera.h
+++ b/include/field_camera.h
@@ -15,12 +15,12 @@ struct CameraObject
s32 y;
};
-extern struct CameraObject gUnknown_03005DD0;
+extern struct CameraObject gFieldCamera;
// Exported RAM declarations
-extern u16 gUnknown_03005DEC;
-extern u16 gUnknown_03005DE8;
+extern u16 gTotalCameraPixelOffsetX;
+extern u16 gTotalCameraPixelOffsetY;
// Exported ROM declarations
@@ -29,6 +29,7 @@ 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 UpdateCameraPanning(void);
void InstallCameraPanAheadCallback(void);
void DrawDoorMetatileAt(int x, int y, const u16 *data);
diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h
index 57a2fab66..a9ddd4b5c 100644
--- a/include/field_control_avatar.h
+++ b/include/field_control_avatar.h
@@ -8,5 +8,6 @@ extern u32 gUnknown_3005078;
void RestartWildEncounterImmunitySteps(void);
void ClearPoisonStepCounter(void);
void SetCableClubWarp(void);
+void dive_warp(struct MapPosition * pos, u16 behavior);
#endif //GUARD_FIELD_CONTROL_AVATAR_H
diff --git a/include/field_effect.h b/include/field_effect.h
index 3e30fa897..3c92afb6a 100644
--- a/include/field_effect.h
+++ b/include/field_effect.h
@@ -13,16 +13,16 @@ bool8 FieldEffectActiveListContains(u8 id);
void sub_80B69DC(void);
void CreateTeleportFieldEffectTask(void);
void FieldEffectActiveListRemove(u8 id);
-void sub_8085620(void);
+void StartEscapeRopeFieldEffect(void);
void FieldEffectStop(struct Sprite *sprite, u8 id);
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
-void sub_8084454(void);
-void sub_8084784(u8 a0, u8 a1);
-void sub_8084F2C(u8 a0);
-void sub_80853CC(u8 a0);
+void FieldCB_FallWarpExit(void);
+void StartEscalatorWarp(u8 metatileBehavior, u8 priority);
+void StartLavaridgeGymB1FWarp(u8 a0);
+void StartLavaridgeGym1FWarp(u8 a0);
void sub_8083598(u8 a0);
-void sub_8083A5C(struct Sprite * sprite, u8 spriteId);
-u8 sub_8083970(u16 species, s16 x, s16 y, bool8 unused);
-void sub_80842C8(void);
+void FreeResourcesAndDestroySprite(struct Sprite * sprite, u8 spriteId);
+u8 CreateMonSprite_PicBox(u16 species, s16 x, s16 y, bool8 unused);
+void ReturnToFieldFromFlyMapSelect(void);
#endif //GUARD_FIELD_EFFECTS_H
diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h
index e1a56a26c..c3e5ae29a 100644
--- a/include/field_effect_helpers.h
+++ b/include/field_effect_helpers.h
@@ -15,6 +15,7 @@
u8 sub_8154228(void);
bool8 sub_8155DA0(struct ObjectEvent *);
void sub_80DC44C(u8, u8);
+void sub_80DC478(u8, u8);
void StartAshFieldEffect(s16, s16, u16, s16);
#endif //GUARD_FIELD_EFFECT_HELPERS_H
diff --git a/include/field_effect_scripts.h b/include/field_effect_scripts.h
new file mode 100644
index 000000000..fd3609d93
--- /dev/null
+++ b/include/field_effect_scripts.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_FIELD_EFFECT_SCRIPTS_H
+#define GUARD_FIELD_EFFECT_SCRIPTS_H
+
+extern const u8 *const gFieldEffectScriptPointers[];
+
+#endif //GUARD_FIELD_EFFECT_SCRIPTS_H
diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h
index 6683f5e2e..a1fe590fa 100644
--- a/include/field_fadetransition.h
+++ b/include/field_fadetransition.h
@@ -12,10 +12,11 @@ void DoFallWarp(void);
void sub_807E59C(void);
void sub_807E500(void);
void sub_807DF64(void);
-void sub_807DC18(void);
+void WarpFadeOutScreen(void);
void FieldCallback_ReturnToEventScript2(void);
-void sub_807DC00(void);
+void FadeInFromBlack(void);
void FadeTransition_FadeInOnReturnToStartMenu(void);
+void WarpFadeInScreen(void);
void sub_807DCE4(void);
diff --git a/include/field_message_box.h b/include/field_message_box.h
index 5777921b7..a6ef14aae 100644
--- a/include/field_message_box.h
+++ b/include/field_message_box.h
@@ -8,5 +8,6 @@ bool8 sub_8098238(const u8 *message);
bool8 ShowFieldAutoScrollMessage(const u8 *message);
void HideFieldMessageBox(void);
bool8 IsFieldMessageBoxHidden(void);
+bool8 textbox_any_visible(void);
#endif // GUARD_FIELD_MESSAGE_BOX_H
diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h
index e9553025c..5565fb64b 100644
--- a/include/field_player_avatar.h
+++ b/include/field_player_avatar.h
@@ -36,5 +36,6 @@ bool32 sub_805DC24(void);
bool8 PartyHasMonWithSurf(void);
bool8 IsPlayerSurfingNorth(void);
void player_get_pos_including_state_based_drift(s16 *x, s16 *y);
+void sub_805CBE8(void);
#endif //GUARD_FIELD_PLAYER_AVATAR_H
diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h
index ca7625782..aee7dc5a7 100644
--- a/include/field_screen_effect.h
+++ b/include/field_screen_effect.h
@@ -9,7 +9,6 @@ void sub_80B0244(void);
void sub_807E3EC(void);
void DoOutwardBarnDoorWipe(void);
void Task_BarnDoorWipe(u8 taskId);
-void sub_807DC00(void);
void sub_807F5F0(void);
#endif // GUARD_FIELD_SCREEN_EFFECT_H
diff --git a/include/field_weather.h b/include/field_weather.h
index de2543edb..7488c8c5a 100644
--- a/include/field_weather.h
+++ b/include/field_weather.h
@@ -18,5 +18,8 @@ void SetWeatherScreenFadeOut(void);
void sub_807B070(void);
u8 GetCurrentWeather(void);
void FieldWeather_StartFadingOutCreditsMap(u8, u8, u32);
+void sub_807AA8C(u8 palIdx);
+void ResetPreservedPalettesInWeather(void);
+void PreservePaletteInWeather(u8 palIdx);
#endif // GUARD_WEATHER_H
diff --git a/include/fldeff.h b/include/fldeff.h
index 56e2dfbd9..00f2d01f4 100644
--- a/include/fldeff.h
+++ b/include/fldeff.h
@@ -37,7 +37,7 @@ bool32 FldEffPoison_IsActive(void);
// strength
bool8 SetUpFieldMove_Strength(void);
-bool8 sub_80D0860(void);
+bool8 FldEff_UseStrength(void);
// teleport
bool8 SetUpFieldMove_Teleport(void);
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index 57d8d0a35..b3f5b1d42 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -4,6 +4,13 @@
#define OBJECT_EVENTS_COUNT 16
#define METATILE_COLLISION_MASK 0x0C00
+#define METATILE_ID_MASK 0x03FF
+#define METATILE_ID_UNDEFINED 0x03FF
+#define METATILE_ELEVATION_SHIFT 12
+#define METATILE_COLLISION_SHIFT 10
+#define METATILE_ELEVATION_MASK 0xF000
+
+#define METATILE_ID(tileset, name) (METATILE_##tileset##_##name)
enum
{
@@ -17,8 +24,6 @@ enum
typedef void (*TilesetCB)(void);
-#define METATILE_ID(tileset, name) (METATILE_##tileset##_##name)
-
struct Tileset
{
/*0x00*/ bool8 isCompressed;
@@ -280,7 +285,7 @@ struct PlayerAvatar /* 0x202E858 */
/*0x03*/ u8 tileTransitionState; // this is a transition running state: 00 is not moving, 01 is transition between tiles, 02 means you are on the frame in which you have centered on a tile but are about to keep moving, even if changing directions. 2 is also used for a ledge hop, since you are transitioning.
/*0x04*/ u8 spriteId;
/*0x05*/ u8 objectEventId;
- /*0x06*/ u8 unk6;
+ /*0x06*/ bool8 preventStep;
/*0x07*/ u8 gender;
u8 acroBikeState;
u8 unk9;
diff --git a/include/graphics.h b/include/graphics.h
index dcc4c44a7..1405cdcf1 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -4845,10 +4845,10 @@ extern const u32 gBuyMenuFrame_Pal[];
extern const u16 gUnknown_8D2FBB4[];
// trainer card
-extern const u16 gFireRedTrainerCard_Pal[];
-extern const u32 gFireRedTrainerCard_Gfx[];
-extern const u16 gEmeraldTrainerCard_Pal[];
-extern const u32 gEmeraldTrainerCard_Gfx[];
+extern const u16 gKantoTrainerCard_Pal[];
+extern const u32 gKantoTrainerCard_Gfx[];
+extern const u16 gHoennTrainerCard_Pal[];
+extern const u32 gHoennTrainerCard_Gfx[];
// battle_interface
extern const u32 gFile_graphics_battle_interface_ball_status_bar_sheet[];
diff --git a/include/link.h b/include/link.h
index e36ac8078..e5a40d6a5 100644
--- a/include/link.h
+++ b/include/link.h
@@ -77,6 +77,10 @@
#define LINKTYPE_BATTLE_TOWER_50 0x2266
#define LINKTYPE_BATTLE_TOWER_OPEN 0x2277
#define LINKTYPE_BATTLE_TOWER 0x2288
+#define LINKTYPE_0x3311 0x3311
+#define LINKTYPE_0x3322 0x3322
+#define LINKTYPE_0x4411 0x4411
+#define LINKTYPE_0x6601 0x6601
#define MASTER_HANDSHAKE 0x8FFF
#define SLAVE_HANDSHAKE 0xB9A0
@@ -199,6 +203,7 @@ extern u16 word_3002910[];
extern bool8 gReceivedRemoteLinkPlayers;
extern bool8 gLinkVSyncDisabled;
extern u8 gWirelessCommType;
+extern struct LinkPlayer gLocalLinkPlayer;
extern u8 gShouldAdvanceLinkState;
extern u16 gLinkPartnersHeldKeys[6];
@@ -272,12 +277,17 @@ void ClearLinkCallback_2(void);
void LinkRfu_SetRfuFuncToSend6600(void);
void IntlConvertLinkPlayerName(struct LinkPlayer * linkPlayer);
bool8 IsWirelessAdapterConnected(void);
-bool8 sub_800A474(u8 a0);
+bool8 sub_800A474(u8 blockRequestType);
void LinkVSync(void);
bool8 HandleLinkConnection(void);
void PrepareLocalLinkPlayerBlock(void);
void LinkPlayerFromBlock(u32 who);
void SetLinkErrorFromRfu(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, u8 unk_06);
u8 sub_800A8D4(void);
+void sub_800AA24(void);
+void sub_800A900(u8 a0);
+u8 sub_800A8A4(void);
+void sub_800A9A4(void);
+void SetLocalLinkPlayerId(u8 playerId);
#endif // GUARD_LINK_H
diff --git a/include/overworld.h b/include/overworld.h
index f0a168052..1775a6896 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -82,12 +82,16 @@ void sub_8084DD4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8084E2C(s8, s8, s8, s8, s8);
void sub_8084E80(s8, s8, s8, s8, s8);
void sub_8084EBC(s16, s16);
+void sub_80555E0(void);
+void copy_saved_warp3_bank_and_enter_x_to_warp1(void);
+u8 IsMapTypeOutdoors(u8 mapType);
+void sav1_reset_battle_music_maybe(void);
+bool32 sub_8056124(u16 song);
void player_avatar_init_params_reset(void);
void Overworld_SetFlashLevel(s32 a1);
u8 Overworld_GetFlashLevel(void);
-void sub_8085524(u16);
void Overworld_SetSavedMusic(u16);
void Overworld_ChangeMusicToDefault(void);
@@ -155,7 +159,7 @@ u8 GetCurrentMapType(void);
u8 get_map_light_from_warp0(void);
const struct MapHeader *warp1_get_mapheader(void);
-void sub_8055F88(void);
+void TryFadeOutOldMapMusic(void);
void CB2_ReturnToFieldCableClub(void);
void ResetGameStats(void);
@@ -177,6 +181,14 @@ void sub_805546C(u8 a0);
bool32 sub_80582E0(void);
bool32 sub_8058274(void);
u8 GetCurrentMapBattleScene(void);
+void Overworld_ResetStateAfterFly(void);
+bool8 sub_8055B38(u16 metatileBehavior);
+void sub_8055DB8(void);
+void sub_8057F5C(void);
+void sub_8057F34(void);
+u32 sub_8057EC0(void);
+void sub_8057F70(void);
+void sub_8057F48(void);
extern u16 gHeldKeyCodeToSend;
diff --git a/include/quest_log.h b/include/quest_log.h
index 25d0d5871..3241046bc 100644
--- a/include/quest_log.h
+++ b/include/quest_log.h
@@ -29,7 +29,7 @@ void sub_811539C(void);
void sub_8115748(u16);
u8 sub_8112CAC(void);
bool8 QuestLog_SchedulePlaybackCB(void (*func)(void));
-void sub_8111F38(u16, u16);
+void sub_8111F38(u16 offset, u16 idx);
void sub_8111134(void);
void DestroyHelpMessageWindow(u8 a0);
u8 CreateHelpMessageWindow(void);
@@ -50,5 +50,8 @@ void QuestLogSetFlagOrVar(bool8 isFlag, u16 idx, u16 value);
void sub_8110840(void *oldSave);
void sub_8112F18(u8 windowId);
bool8 sub_8111C2C(void);
+void sub_81128BC(u8 a0);
+void sub_811278C(u8, u8);
+void Special_UpdateTrainerFansAfterLinkBattle(void);
#endif //GUARD_QUEST_LOG_H
diff --git a/include/special_field_anim.h b/include/special_field_anim.h
index d21c932bf..37c31f97b 100644
--- a/include/special_field_anim.h
+++ b/include/special_field_anim.h
@@ -3,7 +3,7 @@
#include "global.h"
-void StartEscalator(u8 a0);
+void StartEscalator(bool8 goingUp);
void StopEscalator(void);
bool8 IsEscalatorMoving(void);
diff --git a/include/strings.h b/include/strings.h
index 8c19ea5cb..ec5965b75 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -1141,4 +1141,11 @@ extern const u8 gText_BestScore2[];
extern const u8 gText_ExcellentsInARow[];
extern const u8 gText_PkmnJumpRecords[];
+// cable_club
+extern const u8 gUnknown_841DF82[];
+extern const u8 gUnknown_841DF8B[];
+extern const u8 gUnknown_841DF92[];
+extern const u8 gUnknown_841DF99[];
+extern const u8 gUnknown_841DFA0[];
+
#endif //GUARD_STRINGS_H
diff --git a/include/trainer_card.h b/include/trainer_card.h
index ed3e803d5..09b9a253a 100644
--- a/include/trainer_card.h
+++ b/include/trainer_card.h
@@ -1,7 +1,9 @@
#ifndef GUARD_TRAINER_CARD_H
#define GUARD_TRAINER_CARD_H
-struct TrainerCard
+#include "constants/trainer_card.h"
+
+struct TrainerCardRSE
{
/*0x00*/ u8 gender;
/*0x01*/ u8 stars;
@@ -23,19 +25,24 @@ struct TrainerCard
/*0x1E*/ u16 pokeblocksWithFriends;
/*0x20*/ u16 pokemonTrades;
/*0x24*/ u32 money;
- /*0x28*/ u16 var_28[4];
+ /*0x28*/ u16 easyChatProfile[TRAINER_CARD_PROFILE_LENGTH];
/*0x30*/ u8 playerName[PLAYER_NAME_LENGTH + 1];
+};
+
+struct TrainerCard
+{
+ /*0x00*/ struct TrainerCardRSE rse;
/*0x38*/ u8 version;
- /*0x3A*/ u16 var_3A;
+ /*0x3A*/ bool16 hasAllFrontierSymbols;
/*0x3C*/ u32 berryCrushPoints;
/*0x40*/ u32 unionRoomNum;
/*0x44*/ u32 berriesPicked;
- /*0x48*/ u32 jumpsInRow;
- /*0x4C*/ bool8 var_4C;
+ /*0x48*/ u32 jumpsInRow;
+ /*0x4C*/ bool8 shouldDrawStickers;
/*0x4D*/ bool8 hasAllMons;
- /*0x4E*/ u8 var_4E;
- /*0x4F*/ u8 var_4F;
- /*0x50*/ u8 var_50[4];
+ /*0x4E*/ u8 monIconTint;
+ /*0x4F*/ u8 facilityClass;
+ /*0x50*/ u8 stickers[TRAINER_CARD_STICKER_TYPES];
/*0x54*/ u16 monSpecies[PARTY_SIZE];
};
diff --git a/include/trainer_pokemon_sprites.h b/include/trainer_pokemon_sprites.h
index 436a791e9..23f6e2cab 100644
--- a/include/trainer_pokemon_sprites.h
+++ b/include/trainer_pokemon_sprites.h
@@ -3,7 +3,7 @@
#include "global.h"
-u16 sub_810C330(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId);
+u16 CreateTrainerCardTrainerPicSprite(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId);
bool16 ResetAllPicSprites(void);
u16 sub_818D3E4(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 sub_818D7D8(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
diff --git a/include/union_room.h b/include/union_room.h
index e24bcd480..d520e8763 100644
--- a/include/union_room.h
+++ b/include/union_room.h
@@ -163,5 +163,6 @@ extern u16 gUnionRoomOfferedSpecies;
extern u8 gUnionRoomRequestedMonType;
void StartUnionRoomBattle(u16 battleFlags);
+u8 UnionRoom_CreateTask_CallCB2ReturnFromLinkTrade(void);
#endif //GUARD_UNION_ROOM_H
diff --git a/ld_script.txt b/ld_script.txt
index aed18fed9..e16e57209 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -120,10 +120,10 @@ SECTIONS {
src/field_fadetransition.o(.text);
src/field_screen_effect.o(.text);
src/battle_setup.o(.text);
- asm/cable_club.o(.text);
+ src/cable_club.o(.text);
src/trainer_see.o(.text);
src/wild_encounter.o(.text);
- asm/field_effect.o(.text);
+ src/field_effect.o(.text);
src/scanline_effect.o(.text);
src/option_menu.o(.text);
src/pokedex.o(.text);
@@ -441,10 +441,10 @@ SECTIONS {
data/field_weather.o(.rodata);
src/field_screen_effect.o(.rodata);
src/battle_setup.o(.rodata);
- data/cable_club.o(.rodata);
+ src/cable_club.o(.rodata);
src/trainer_see.o(.rodata);
src/wild_encounter.o(.rodata);
- data/field_effect.o(.rodata);
+ src/field_effect.o(.rodata);
src/option_menu.o(.rodata);
src/trainer_card.o(.rodata);
data/pokemon_storage_system.o(.rodata);
diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c
index 3d8729824..a80e79bf4 100644
--- a/src/battle_controller_link_opponent.c
+++ b/src/battle_controller_link_opponent.c
@@ -1127,11 +1127,11 @@ static void LinkOpponentHandleDrawTrainerPic(void)
}
else if (gLinkPlayers[GetBattlerMultiplayerId(gActiveBattler)].gender != MALE)
{
- trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_PLAYER_4];
+ trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_LEAF];
}
else
{
- trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_PLAYER_3];
+ trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_RED];
}
}
else
@@ -1152,11 +1152,11 @@ static void LinkOpponentHandleDrawTrainerPic(void)
}
else if (gLinkPlayers[GetMultiplayerId() ^ BIT_SIDE].gender != MALE)
{
- trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_PLAYER_4];
+ trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_LEAF];
}
else
{
- trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_PLAYER_3];
+ trainerPicId = gFacilityClassToPicIndex[FACILITY_CLASS_RED];
}
}
DecompressTrainerFrontPic(trainerPicId, gActiveBattler);
diff --git a/src/battle_records.c b/src/battle_records.c
index 07ff665d9..e2ae94f65 100644
--- a/src/battle_records.c
+++ b/src/battle_records.c
@@ -419,7 +419,7 @@ void ClearPlayerLinkBattleRecords(void)
static void IncTrainerCardWinCount(s32 battlerId)
{
- u16 *wins = &gTrainerCards[battlerId].linkBattleWins;
+ u16 *wins = &gTrainerCards[battlerId].rse.linkBattleWins;
(*wins)++;
if (*wins > 9999)
*wins = 9999;
@@ -427,7 +427,7 @@ static void IncTrainerCardWinCount(s32 battlerId)
static void IncTrainerCardLossCount(s32 battlerId)
{
- u16 *losses = &gTrainerCards[battlerId].linkBattleLosses;
+ u16 *losses = &gTrainerCards[battlerId].rse.linkBattleLosses;
(*losses)++;
if (*losses > 9999)
*losses = 9999;
@@ -453,7 +453,7 @@ void TryRecordLinkBattleOutcome(s32 battlerId)
if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(UNION_ROOM) || gSaveBlock1Ptr->location.mapNum != MAP_NUM(UNION_ROOM))
{
UpdateBattleOutcomeOnTrainerCards(battlerId);
- AddOpponentLinkBattleRecord(&gSaveBlock2Ptr->linkBattleRecords, gTrainerCards[battlerId].playerName, gTrainerCards[battlerId].trainerId, gBattleOutcome, gLinkPlayers[battlerId].language);
+ AddOpponentLinkBattleRecord(&gSaveBlock2Ptr->linkBattleRecords, gTrainerCards[battlerId].rse.playerName, gTrainerCards[battlerId].rse.trainerId, gBattleOutcome, gLinkPlayers[battlerId].language);
}
}
diff --git a/src/battle_tower.c b/src/battle_tower.c
index 82d3c4d85..ca434fad3 100644
--- a/src/battle_tower.c
+++ b/src/battle_tower.c
@@ -825,7 +825,7 @@ void CheckPartyBattleTowerBanlist(void)
}
}
-static void PrintBattleTowerTrainerMessage(const u16 *greeting)
+static void BufferBattleTowerTrainerMessage(const u16 *greeting)
{
s32 i;
if (EC_DoesEasyChatStringFitOnLine(greeting, 3, 2, 18))
@@ -847,11 +847,11 @@ static void PrintBattleTowerTrainerMessage(const u16 *greeting)
void PrintBattleTowerTrainerGreeting(void)
{
if (gSaveBlock2Ptr->battleTower.battleTowerTrainerId == BATTLE_TOWER_EREADER_TRAINER_ID)
- PrintBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.greeting);
+ BufferBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.greeting);
else if (gSaveBlock2Ptr->battleTower.battleTowerTrainerId < BATTLE_TOWER_RECORD_MIXING_TRAINER_BASE_ID)
- PrintBattleTowerTrainerMessage(gBattleTowerTrainers[gSaveBlock2Ptr->battleTower.battleTowerTrainerId].greeting);
+ BufferBattleTowerTrainerMessage(gBattleTowerTrainers[gSaveBlock2Ptr->battleTower.battleTowerTrainerId].greeting);
else
- PrintBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.records[gSaveBlock2Ptr->battleTower.battleTowerTrainerId - BATTLE_TOWER_RECORD_MIXING_TRAINER_BASE_ID].greeting);
+ BufferBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.records[gSaveBlock2Ptr->battleTower.battleTowerTrainerId - BATTLE_TOWER_RECORD_MIXING_TRAINER_BASE_ID].greeting);
}
static void CB2_FinishEReaderBattle(void)
@@ -1395,9 +1395,9 @@ void ClearEReaderTrainer(struct BattleTowerEReaderTrainer *ereaderTrainer)
((u32 *)ereaderTrainer)[i] = 0;
}
-void PrintEReaderTrainerGreeting(void)
+void BufferEReaderTrainerGreeting(void)
{
- PrintBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.greeting);
+ BufferBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.greeting);
}
static void PrintEReaderTrainerFarewellMessage(void)
@@ -1405,9 +1405,9 @@ static void PrintEReaderTrainerFarewellMessage(void)
if (gBattleOutcome == B_OUTCOME_DREW)
gStringVar4[0] = EOS;
else if (gBattleOutcome == B_OUTCOME_WON)
- PrintBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.farewellPlayerWon);
+ BufferBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.farewellPlayerWon);
else
- PrintBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.farewellPlayerLost);
+ BufferBattleTowerTrainerMessage(gSaveBlock2Ptr->battleTower.ereaderTrainer.farewellPlayerLost);
}
void Dummy_TryEnableBravoTrainerBattleTower(void)
diff --git a/src/cable_club.c b/src/cable_club.c
new file mode 100644
index 000000000..e7277ed07
--- /dev/null
+++ b/src/cable_club.c
@@ -0,0 +1,964 @@
+#include "global.h"
+#include "gflib.h"
+#include "battle.h"
+#include "battle_records.h"
+#include "cable_club.h"
+#include "event_data.h"
+#include "event_scripts.h"
+#include "field_message_box.h"
+#include "field_weather.h"
+#include "link.h"
+#include "load_save.h"
+#include "m4a.h"
+#include "mevent.h"
+#include "new_menu_helpers.h"
+#include "overworld.h"
+#include "quest_log.h"
+#include "script.h"
+#include "script_pokemon_util.h"
+#include "start_menu.h"
+#include "strings.h"
+#include "task.h"
+#include "trade.h"
+#include "trainer_card.h"
+#include "union_room.h"
+#include "constants/songs.h"
+#include "constants/cable_club.h"
+#include "constants/field_weather.h"
+
+u32 UnusedVarNeededToMatch[8];
+
+static void Task_Linkup0(u8 taskId);
+static void Task_Linkup1(u8 taskId);
+static void Task_LinkupMaster_2(u8 taskId);
+static void Task_LinkupMaster_3(u8 taskId);
+static void Task_LinkupMaster_4(u8 taskId);
+static void Task_LinkupMaster_5(u8 taskId);
+static void Task_LinkupSlave_2(u8 taskId);
+static void Task_LinkupMaster_6(u8 taskId);
+static void Task_Linkup_6a(u8 taskId);
+static void Task_Linkup_7(u8 taskId);
+static void Task_Linkup_Canceled(u8 taskId);
+static void Task_Linkup_ErroredOut(u8 taskId);
+static bool8 Task_Linkup_TimedOut(u8 taskId);
+static void Task_ReestablishLinkInCableClubRoom_0(u8 taskId);
+static void Task_ReestablishLinkInCableClubRoom_1(u8 taskId);
+static void Task_ReestablishLinkInCableClubRoom_Master(u8 taskId);
+static void Task_ReestablishLinkInCableClubRoom_2(u8 taskId);
+
+static const struct WindowTemplate gUnknown_83C6AB0 = {
+ .bg = 0,
+ .tilemapLeft = 16,
+ .tilemapTop = 11,
+ .width = 11,
+ .height = 2,
+ .paletteNum = 15,
+ .baseBlock = 0x125
+};
+
+static const u8 *const sStarsMessagePtrs[] = {
+ gUnknown_841DF8B,
+ gUnknown_841DF92,
+ gUnknown_841DF99,
+ gUnknown_841DFA0
+};
+
+static void CreateLinkupTask(u8 lower, u8 higher)
+{
+ u8 taskId;
+ if (FindTaskIdByFunc(Task_Linkup0) == 0xFF)
+ {
+ taskId = CreateTask(Task_Linkup0, 80);
+ gTasks[taskId].data[1] = lower;
+ gTasks[taskId].data[2] = higher;
+ }
+}
+
+static void PrintNewCountOnLinkPlayerCountDisplayWindow(u16 windowId, s32 num)
+{
+ ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEFT_ALIGN, 1);
+ SetStdWindowBorderStyle(windowId, FALSE);
+ StringExpandPlaceholders(gStringVar4, gUnknown_841DF82);
+ AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 0, TEXT_SPEED_FF, NULL);
+ CopyWindowToVram(windowId, 3);
+}
+
+static void DestroyLinkPlayerCountDisplayWindow(u16 windowId)
+{
+ ClearStdWindowAndFrame(windowId, FALSE);
+ CopyWindowToVram(windowId, 3);
+}
+
+static void UpdateLinkPlayerCountDisplay(u8 taskId, u8 num)
+{
+ s16 *data = gTasks[taskId].data;
+ if (num != data[3])
+ {
+ if (num < 2)
+ DestroyLinkPlayerCountDisplayWindow(data[5]);
+ else
+ PrintNewCountOnLinkPlayerCountDisplayWindow(data[5], num);
+ data[3] = num;
+ }
+}
+
+static u16 sub_8080844(u8 lower, u8 higher)
+{
+ switch (GetLinkPlayerDataExchangeStatusTimed(lower, higher))
+ {
+ case EXCHANGE_COMPLETE:
+ return 1;
+ case EXCHANGE_IN_PROGRESS:
+ return 3;
+ case EXCHANGE_STAT_4:
+ return 7;
+ case EXCHANGE_STAT_5:
+ return 9;
+ case EXCHANGE_STAT_6:
+ ConvertIntToDecimalStringN(gStringVar1, GetLinkPlayerCount_2(), STR_CONV_MODE_LEFT_ALIGN, 1);
+ return 4;
+ default:
+ return 0;
+ }
+}
+
+static bool32 sub_80808BC(u8 taskId)
+{
+ if (HasLinkErrorOccurred() == TRUE)
+ {
+ gTasks[taskId].func = Task_Linkup_ErroredOut;
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static bool32 sub_80808F0(u8 taskId)
+{
+ if (JOY_NEW(B_BUTTON) && !IsLinkConnectionEstablished())
+ {
+ gLinkType = 0;
+ gTasks[taskId].func = Task_Linkup_Canceled;
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static bool32 sub_808093C(u8 taskId)
+{
+ if (IsLinkConnectionEstablished())
+ {
+ SetSuppressLinkErrorMessage(TRUE);
+ }
+ if (JOY_NEW(B_BUTTON))
+ {
+ gLinkType = 0;
+ gTasks[taskId].func = Task_Linkup_Canceled;
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static bool32 sub_8080990(u8 taskId)
+{
+ if (GetSioMultiSI() == TRUE)
+ {
+ gTasks[taskId].func = Task_Linkup_ErroredOut;
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static void sub_80809C4(u8 taskId)
+{
+ gTasks[taskId].data[0]++;
+ if (gTasks[taskId].data[0] == 10)
+ {
+ sub_800A474(2);
+ DestroyTask(taskId);
+ }
+}
+
+static void Task_Linkup0(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (data[0] == 0)
+ {
+ OpenLinkTimed();
+ sub_800AA24();
+ ResetLinkPlayers();
+ data[5] = AddWindow(&gUnknown_83C6AB0);
+ }
+ else if (data[0] > 9)
+ {
+ gTasks[taskId].func = Task_Linkup1;
+ }
+ data[0]++;
+}
+
+static void Task_Linkup1(u8 taskId)
+{
+ u8 linkPlayerCount = GetLinkPlayerCount_2();
+ if (sub_80808F0(taskId) != TRUE && sub_808093C(taskId) != TRUE && linkPlayerCount >= 2)
+ {
+ SetSuppressLinkErrorMessage(TRUE);
+ gTasks[taskId].data[3] = 0;
+ if (IsLinkMaster() == TRUE)
+ {
+ PlaySE(SE_PIN);
+ ShowFieldAutoScrollMessage(CableClub_Text_WhenAllPlayersReadyAConfirmBCancel);
+ gTasks[taskId].func = Task_LinkupMaster_2;
+ }
+ else
+ {
+ PlaySE(SE_BOO);
+ ShowFieldAutoScrollMessage(CableClub_Text_AwaitingLinkupBCancel);
+ gTasks[taskId].func = Task_LinkupSlave_2;
+ }
+ }
+}
+
+static void Task_LinkupMaster_2(u8 taskId)
+{
+ if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !textbox_any_visible())
+ {
+ gTasks[taskId].data[3] = 0;
+ gTasks[taskId].func = Task_LinkupMaster_3;
+ }
+}
+
+static void Task_LinkupMaster_3(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ s32 linkPlayerCount = GetLinkPlayerCount_2();
+ if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE)
+ {
+ UpdateLinkPlayerCountDisplay(taskId, linkPlayerCount);
+ if (JOY_NEW(A_BUTTON) && linkPlayerCount >= data[1])
+ {
+ sub_800A900(linkPlayerCount);
+ DestroyLinkPlayerCountDisplayWindow(data[5]);
+ ConvertIntToDecimalStringN(gStringVar1, linkPlayerCount, STR_CONV_MODE_LEFT_ALIGN, 1);
+ ShowFieldAutoScrollMessage(CableClub_Text_StartLinkWithXPlayersAConfirmBCancel);
+ gTasks[taskId].func = Task_LinkupMaster_4;
+ }
+ }
+}
+
+static void Task_LinkupMaster_4(u8 taskId)
+{
+ if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !textbox_any_visible())
+ {
+ if (GetSavedPlayerCount() != GetLinkPlayerCount_2())
+ {
+ ShowFieldAutoScrollMessage(CableClub_Text_WhenAllPlayersReadyAConfirmBCancel);
+ gTasks[taskId].func = Task_LinkupMaster_2;
+ }
+ else if (JOY_HELD(B_BUTTON))
+ {
+ ShowFieldAutoScrollMessage(CableClub_Text_WhenAllPlayersReadyAConfirmBCancel);
+ gTasks[taskId].func = Task_LinkupMaster_2;
+ }
+ else if (JOY_HELD(A_BUTTON))
+ {
+ PlaySE(SE_SELECT);
+ CheckShouldAdvanceLinkState();
+ gTasks[taskId].func = Task_LinkupMaster_5;
+ }
+ }
+}
+
+static void Task_LinkupMaster_5(u8 taskId)
+{
+ u8 lower = gTasks[taskId].data[1];
+ u8 higher = gTasks[taskId].data[2];
+ u16 *res;
+ if (sub_80808BC(taskId) != TRUE && Task_Linkup_TimedOut(taskId) != TRUE)
+ {
+ if (GetLinkPlayerCount_2() != GetSavedPlayerCount())
+ {
+ gTasks[taskId].func = Task_Linkup_ErroredOut;
+ }
+ else
+ {
+ res = &gSpecialVar_Result;
+ *res = sub_8080844(lower, higher);
+ if (*res)
+ gTasks[taskId].func = Task_LinkupMaster_6;
+ }
+ }
+}
+
+static void Task_LinkupSlave_2(u8 taskId)
+{
+ u8 lower = gTasks[taskId].data[1];
+ u8 higher = gTasks[taskId].data[2];
+ u16 *res;
+ if (sub_80808F0(taskId) != TRUE && sub_80808BC(taskId) != TRUE)
+ {
+ res = &gSpecialVar_Result;
+ *res = sub_8080844(lower, higher);
+ if (*res)
+ {
+ if (*res == 3 || *res == 4)
+ {
+ Link_TryStartSend5FFF();
+ HideFieldMessageBox();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ else if (*res == 7 || *res == 9)
+ {
+ CloseLink();
+ HideFieldMessageBox();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ else
+ {
+ gFieldLinkPlayerCount = GetLinkPlayerCount_2();
+ gLocalLinkPlayerId = GetMultiplayerId();
+ sub_800A900(gFieldLinkPlayerCount);
+ TrainerCard_GenerateCardForLinkPlayer((void*)gBlockSendBuffer);
+ gTasks[taskId].func = Task_Linkup_6a;
+ }
+ }
+ }
+}
+
+static bool32 AnyConnectedPartnersPlayingRS(void)
+{
+ int i;
+ u16 version;
+
+ for (i = 0; i < GetLinkPlayerCount(); i++)
+ {
+ version = gLinkPlayers[i].version & 0xFF;
+ if (version == VERSION_RUBY || version == VERSION_SAPPHIRE)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static void Task_LinkupMaster_6(u8 taskId)
+{
+ if (sub_80808BC(taskId) != TRUE)
+ {
+ if (gSpecialVar_Result == 4)
+ {
+ if (AnyConnectedPartnersPlayingRS() == TRUE)
+ CloseLink();
+ else
+ Link_TryStartSend5FFF();
+ HideFieldMessageBox();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ else if (gSpecialVar_Result == 3)
+ {
+ Link_TryStartSend5FFF();
+ HideFieldMessageBox();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ else if (gSpecialVar_Result == 7 || gSpecialVar_Result == 9)
+ {
+ CloseLink();
+ HideFieldMessageBox();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ else
+ {
+ gFieldLinkPlayerCount = GetLinkPlayerCount_2();
+ gLocalLinkPlayerId = GetMultiplayerId();
+ sub_800A900(gFieldLinkPlayerCount);
+ TrainerCard_GenerateCardForLinkPlayer((void*)gBlockSendBuffer);
+ gTasks[taskId].func = Task_Linkup_6a;
+ sub_800A474(2);
+ }
+ }
+}
+
+static void Task_Linkup_6a(u8 taskId)
+{
+ u8 i;
+ u16 version;
+ u8 * dest;
+ if (sub_80808BC(taskId) != TRUE && GetBlockReceivedStatus() == sub_800A8A4())
+ {
+ for(i = 0; i < GetLinkPlayerCount(); i++)
+ {
+ version = gLinkPlayers[i].version & 0xFF;
+ if (version != VERSION_FIRE_RED && version != VERSION_LEAF_GREEN)
+ {
+ const struct TrainerCardRSE * src = (const struct TrainerCardRSE *)gBlockRecvBuffer[i];
+ gTrainerCards[i].rse = *src;
+ gTrainerCards[i].version = gLinkPlayers[i].version;
+ }
+ else
+ {
+ const struct TrainerCard * src = (const struct TrainerCard *)gBlockRecvBuffer[i];
+ gTrainerCards[i] = *src;
+ }
+ }
+ SetSuppressLinkErrorMessage(FALSE);
+ ResetBlockReceivedFlags();
+ HideFieldMessageBox();
+ if (gSpecialVar_Result == 1)
+ {
+ // Dumb trick required to match
+ if (gLinkType == LINKTYPE_0x4411)
+ *UnusedVarNeededToMatch += 0;
+ DestroyLinkPlayerCountDisplayWindow(gTasks[taskId].data[5]);
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ }
+ else
+ {
+ Link_TryStartSend5FFF();
+ gTasks[taskId].func = Task_Linkup_7;
+ }
+ }
+}
+
+static void Task_Linkup_7(u8 taskId)
+{
+ if (!gReceivedRemoteLinkPlayers)
+ {
+ DestroyLinkPlayerCountDisplayWindow(gTasks[taskId].data[5]);
+ EnableBothScriptContexts();
+ RemoveWindow(gTasks[taskId].data[5]);
+ DestroyTask(taskId);
+ }
+}
+
+static void Task_Linkup_Canceled(u8 taskId)
+{
+ gSpecialVar_Result = 5;
+ DestroyLinkPlayerCountDisplayWindow(gTasks[taskId].data[5]);
+ HideFieldMessageBox();
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+}
+
+static void Task_Linkup_ErroredOut(u8 taskId)
+{
+ gSpecialVar_Result = 6;
+ DestroyLinkPlayerCountDisplayWindow(gTasks[taskId].data[5]);
+ HideFieldMessageBox();
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+}
+
+static bool8 Task_Linkup_TimedOut(u8 taskId)
+{
+ gTasks[taskId].data[4]++;
+ if (gTasks[taskId].data[4] > 600)
+ {
+ gTasks[taskId].func = Task_Linkup_ErroredOut;
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void TryBattleLinkup(void)
+{
+ u8 lower, higher;
+ higher = lower = 2;
+ switch (gSpecialVar_0x8004)
+ {
+ case USING_SINGLE_BATTLE:
+ higher = lower = 2;
+ gLinkType = LINKTYPE_SINGLE_BATTLE;
+ break;
+ case USING_DOUBLE_BATTLE:
+ higher = lower = 2;
+ gLinkType = LINKTYPE_DOUBLE_BATTLE;
+ break;
+ case USING_MULTI_BATTLE:
+ higher = lower = 4;
+ gLinkType = LINKTYPE_MULTI_BATTLE;
+ break;
+ }
+ CreateLinkupTask(lower, higher);
+}
+
+void TryTradeLinkup(void)
+{
+ gLinkType = LINKTYPE_0x1133;
+ gBattleTypeFlags = 0;
+ CreateLinkupTask(2, 2);
+}
+
+void TryRecordMixLinkup(void)
+{
+ gSpecialVar_Result = 0;
+ gLinkType = LINKTYPE_0x3311;
+ gBattleTypeFlags = 0;
+ CreateLinkupTask(2, 4);
+}
+
+void sub_8081128(void)
+{
+ gLinkType = LINKTYPE_0x6601;
+ gBattleTypeFlags = 0;
+ CreateLinkupTask(4, 4);
+}
+
+u8 CreateTask_ReestablishLinkInCableClubRoom(void)
+{
+ if (FuncIsActiveTask(Task_ReestablishLinkInCableClubRoom_0))
+ return 0xFF;
+ switch (gSpecialVar_0x8004)
+ {
+ case USING_SINGLE_BATTLE:
+ gLinkType = LINKTYPE_SINGLE_BATTLE;
+ break;
+ case USING_DOUBLE_BATTLE:
+ gLinkType = LINKTYPE_DOUBLE_BATTLE;
+ break;
+ case USING_MULTI_BATTLE:
+ gLinkType = LINKTYPE_MULTI_BATTLE;
+ break;
+ case USING_TRADE_CENTER:
+ gLinkType = LINKTYPE_0x1111;
+ break;
+ case USING_RECORD_CORNER:
+ gLinkType = LINKTYPE_0x3322;
+ break;
+ }
+ return CreateTask(Task_ReestablishLinkInCableClubRoom_0, 80);
+}
+
+static void Task_ReestablishLinkInCableClubRoom_0(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (data[0] == 0)
+ {
+ OpenLink();
+ ResetLinkPlayers();
+ CreateTask(sub_8081A90, 80);
+ }
+ else if (data[0] > 9)
+ gTasks[taskId].func = Task_ReestablishLinkInCableClubRoom_1;
+ data[0]++;
+}
+
+static void Task_ReestablishLinkInCableClubRoom_1(u8 taskId)
+{
+ if (GetLinkPlayerCount_2() >= 2)
+ {
+ if (IsLinkMaster() == TRUE)
+ {
+ gTasks[taskId].func = Task_ReestablishLinkInCableClubRoom_Master;
+ }
+ else
+ {
+ gTasks[taskId].func = Task_ReestablishLinkInCableClubRoom_2;
+ }
+ }
+}
+
+static void Task_ReestablishLinkInCableClubRoom_Master(u8 taskId)
+{
+ if (GetSavedPlayerCount() == GetLinkPlayerCount_2())
+ {
+ CheckShouldAdvanceLinkState();
+ gTasks[taskId].func = Task_ReestablishLinkInCableClubRoom_2;
+ }
+}
+
+static void Task_ReestablishLinkInCableClubRoom_2(u8 taskId)
+{
+ if (gReceivedRemoteLinkPlayers == TRUE && IsLinkPlayerDataExchangeComplete() == TRUE)
+ {
+ sub_800A9A4();
+ sub_8009FE8();
+ DestroyTask(taskId);
+ }
+}
+
+void Special_CableClub_AskSaveTheGame(void)
+{
+ Field_AskSaveTheGame();
+}
+
+static void Task_StartWiredCableClubBattle(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ switch (task->data[0])
+ {
+ case 0:
+ FadeScreen(FADE_TO_BLACK, 0);
+ gLinkType = LINKTYPE_BATTLE;
+ ClearLinkCallback_2();
+ task->data[0]++;
+ break;
+ case 1:
+ if (!gPaletteFade.active)
+ task->data[0]++;
+ break;
+ case 2:
+ task->data[1]++;
+ if (task->data[1] > 20)
+ task->data[0]++;
+ break;
+ case 3:
+ Link_TryStartSend5FFF();
+ task->data[0]++;
+ break;
+ case 4:
+ if (!gReceivedRemoteLinkPlayers)
+ task->data[0]++;
+ break;
+ case 5:
+ if (gLinkPlayers[0].trainerId & 1)
+ PlayMapChosenOrBattleBGM(MUS_BATTLE32);
+ else
+ PlayMapChosenOrBattleBGM(MUS_BATTLE20);
+ switch (gSpecialVar_0x8004)
+ {
+ case USING_SINGLE_BATTLE:
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK;
+ break;
+ case USING_DOUBLE_BATTLE:
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK | BATTLE_TYPE_DOUBLE;
+ break;
+ case USING_MULTI_BATTLE:
+ ReducePlayerPartyToThree();
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK | BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI;
+ break;
+ }
+ CleanupOverworldWindowsAndTilemaps();
+ gTrainerBattleOpponent_A = TRAINER_LINK_OPPONENT;
+ SetMainCallback2(CB2_InitBattle);
+ gMain.savedCallback = CB2_ReturnFromCableClubBattle;
+ DestroyTask(taskId);
+ break;
+ }
+}
+
+static void Task_StartWirelessCableClubBattle(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ int i;
+ switch (data[0])
+ {
+ case 0:
+ FadeScreen(FADE_TO_BLACK, 0);
+ gLinkType = LINKTYPE_BATTLE;
+ ClearLinkCallback_2();
+ data[0] = 1;
+ break;
+ case 1:
+ if (!gPaletteFade.active)
+ data[0] = 2;
+ break;
+ case 2:
+ SendBlock(0, &gLocalLinkPlayer, sizeof(struct LinkPlayer));
+ data[0] = 3;
+ break;
+ case 3:
+ if (GetBlockReceivedStatus() == sub_800A8D4())
+ {
+ for (i = 0; i < GetLinkPlayerCount(); i++)
+ {
+ gLinkPlayers[i] = *(struct LinkPlayer *)gBlockRecvBuffer[i];
+ IntlConvertLinkPlayerName(&gLinkPlayers[i]);
+ ResetBlockReceivedFlag(i);
+ }
+ data[0] = 4;
+ }
+ break;
+ case 4:
+ data[1]++;
+ if (data[1] > 20)
+ data[0] = 5;
+ break;
+ case 5:
+ PrepareSendLinkCmd2FFE_or_RfuCmd6600();
+ data[0] = 6;
+ break;
+ case 6:
+ if (IsLinkTaskFinished())
+ data[0] = 7;
+ break;
+ case 7:
+ if (gLinkPlayers[0].trainerId & 1)
+ PlayMapChosenOrBattleBGM(MUS_BATTLE32);
+ else
+ PlayMapChosenOrBattleBGM(MUS_BATTLE20);
+ gLinkPlayers[0].linkType = LINKTYPE_BATTLE;
+ switch (gSpecialVar_0x8004)
+ {
+ case USING_SINGLE_BATTLE:
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK;
+ break;
+ case USING_DOUBLE_BATTLE:
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK | BATTLE_TYPE_DOUBLE;
+ break;
+ case USING_MULTI_BATTLE:
+ ReducePlayerPartyToThree();
+ gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK | BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI;
+ break;
+ }
+ CleanupOverworldWindowsAndTilemaps();
+ gTrainerBattleOpponent_A = TRAINER_LINK_OPPONENT;
+ SetMainCallback2(CB2_InitBattle);
+ gMain.savedCallback = CB2_ReturnFromCableClubBattle;
+ DestroyTask(taskId);
+ break;
+ }
+}
+
+static void sub_8081624(void)
+{
+ switch (gMain.state)
+ {
+ case 0:
+ Link_TryStartSend5FFF();
+ gMain.state++;
+ break;
+ case 1:
+ if (IsLinkTaskFinished())
+ SetMainCallback2(CB2_ReturnToField);
+ break;
+ }
+}
+
+void CB2_ReturnFromCableClubBattle(void)
+{
+ gBattleTypeFlags &= (u16)~BATTLE_TYPE_20;
+ sub_8055DB8();
+ LoadPlayerParty();
+ SavePlayerBag();
+ Special_UpdateTrainerFansAfterLinkBattle();
+ if (gSpecialVar_0x8004 != USING_MULTI_BATTLE)
+ {
+ TryRecordLinkBattleOutcome(gLocalLinkPlayerId ^ 1);
+ if (gWirelessCommType != 0)
+ {
+ switch (gBattleOutcome)
+ {
+ case B_OUTCOME_WON:
+ MEvent_RecordIdOfWonderCardSenderByEventType(0, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId);
+ break;
+ case B_OUTCOME_LOST:
+ MEvent_RecordIdOfWonderCardSenderByEventType(1, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId);
+ break;
+ }
+ }
+ }
+ if (InUnionRoom() == TRUE)
+ {
+ gMain.savedCallback = sub_8081624;
+ }
+ else
+ {
+ gMain.savedCallback = c2_8056854;
+ }
+ SetMainCallback2(CB2_SetUpSaveAfterLinkBattle);
+}
+
+void CleanupLinkRoomState(void)
+{
+ if (gSpecialVar_0x8004 == USING_SINGLE_BATTLE || gSpecialVar_0x8004 == USING_DOUBLE_BATTLE || gSpecialVar_0x8004 == USING_MULTI_BATTLE)
+ {
+ LoadPlayerParty();
+ SavePlayerBag();
+ }
+ copy_saved_warp2_bank_and_enter_x_to_warp1(127);
+}
+
+void sub_8081770(void)
+{
+ sub_8057F5C();
+}
+
+static void Task_EnterCableClubSeat(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ switch (task->data[0])
+ {
+ case 0:
+ ShowFieldMessage(CableClub_Text_PleaseWaitBCancel);
+ task->data[0] = 1;
+ break;
+ case 1:
+ if (IsFieldMessageBoxHidden())
+ {
+ sub_8057F34();
+ SetLocalLinkPlayerId(gSpecialVar_0x8005);
+ task->data[0] = 2;
+ }
+ break;
+ case 2:
+ switch (sub_8057EC0())
+ {
+ case 0:
+ break;
+ case 1:
+ HideFieldMessageBox();
+ task->data[0] = 0;
+ sub_8057F70();
+ SwitchTaskToFollowupFunc(taskId);
+ break;
+ case 2:
+ task->data[0] = 3;
+ break;
+ }
+ break;
+ case 3:
+ sub_8057F48();
+ sub_80F771C(TRUE);
+ DestroyTask(taskId);
+ EnableBothScriptContexts();
+ break;
+ }
+}
+
+static void CreateEnterCableClubSeatTaskWithFollowupFunc(TaskFunc followUpFunc)
+{
+ u8 taskId = CreateTask(Task_EnterCableClubSeat, 80);
+ SetTaskFuncWithFollowupFunc(taskId, Task_EnterCableClubSeat, followUpFunc);
+ ScriptContext1_Stop();
+}
+
+static void Task_StartWiredCableClubTrade(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ switch (task->data[0])
+ {
+ case 0:
+ ScriptContext2_Enable();
+ FadeScreen(FADE_TO_BLACK, 0);
+ ClearLinkCallback_2();
+ task->data[0]++;
+ break;
+ case 1:
+ if (!gPaletteFade.active)
+ task->data[0]++;
+ break;
+ case 2:
+ gSelectedTradeMonPositions[0] = 0;
+ gSelectedTradeMonPositions[1] = 0;
+ m4aMPlayAllStop();
+ Link_TryStartSend5FFF();
+ task->data[0]++;
+ break;
+ case 3:
+ if (!gReceivedRemoteLinkPlayers)
+ {
+ SetMainCallback2(CB2_ReturnFromLinkTrade);
+ DestroyTask(taskId);
+ }
+ break;
+ }
+}
+
+static void Task_StartWirelessCableClubTrade(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ switch (data[0])
+ {
+ case 0:
+ ScriptContext2_Enable();
+ FadeScreen(FADE_TO_BLACK, 0);
+ Rfu_set_zero();
+ data[0]++;
+ break;
+ case 1:
+ if (!gPaletteFade.active)
+ data[0]++;
+ break;
+ case 2:
+ gSelectedTradeMonPositions[0] = 0;
+ gSelectedTradeMonPositions[1] = 0;
+ m4aMPlayAllStop();
+ PrepareSendLinkCmd2FFE_or_RfuCmd6600();
+ data[0]++;
+ break;
+ case 3:
+ if (IsLinkTaskFinished())
+ {
+ UnionRoom_CreateTask_CallCB2ReturnFromLinkTrade();
+ DestroyTask(taskId);
+ }
+ break;
+ }
+}
+
+void EnterTradeSeat(void)
+{
+ if (gWirelessCommType)
+ CreateEnterCableClubSeatTaskWithFollowupFunc(Task_StartWirelessCableClubTrade);
+ else
+ CreateEnterCableClubSeatTaskWithFollowupFunc(Task_StartWiredCableClubTrade);
+}
+
+static void CreateTask_StartWiredCableClubTrade(void)
+{
+ CreateTask(Task_StartWiredCableClubTrade, 80);
+}
+
+void Special_WiredCableClubTrade(void)
+{
+ CreateTask_StartWiredCableClubTrade();
+ ScriptContext1_Stop();
+}
+
+void EnterColosseumPlayerSpot(void)
+{
+ gLinkType = LINKTYPE_BATTLE;
+ if (gWirelessCommType)
+ CreateEnterCableClubSeatTaskWithFollowupFunc(Task_StartWirelessCableClubBattle);
+ else
+ CreateEnterCableClubSeatTaskWithFollowupFunc(Task_StartWiredCableClubBattle);
+}
+
+static void Debug_CreateTaskEnterCableClubSeat(void)
+{
+ CreateTask(Task_EnterCableClubSeat, 80);
+ ScriptContext1_Stop();
+}
+
+void Script_ShowLinkTrainerCard(void)
+{
+ ShowTrainerCardInLink(gSpecialVar_0x8006, CB2_ReturnToFieldContinueScriptPlayMapMusic);
+}
+
+bool32 GetSeeingLinkPlayerCardMsg(u8 who)
+{
+ u8 stars;
+ gSpecialVar_0x8006 = who;
+ StringCopy(gStringVar1, gLinkPlayers[who].name);
+ stars = GetTrainerCardStars(who);
+ if (stars == 0)
+ return FALSE;
+ StringCopy(gStringVar2, sStarsMessagePtrs[stars - 1]);
+ return TRUE;
+}
+
+void sub_8081A90(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ task->data[0]++;
+ if (task->data[0] > 300)
+ {
+ CloseLink();
+ SetMainCallback2(CB2_LinkError);
+ DestroyTask(taskId);
+ }
+ if (gReceivedRemoteLinkPlayers)
+ DestroyTask(taskId);
+}
+
+static void sub_8081AE4(u8 taskId)
+{
+ if (!gReceivedRemoteLinkPlayers)
+ {
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ }
+}
+
+static void sub_8081B08(u8 taskId)
+{
+ Link_TryStartSend5FFF();
+ gTasks[taskId].func = sub_8081AE4;
+}
diff --git a/src/data/pokemon/trainer_class_lookups.h b/src/data/pokemon/trainer_class_lookups.h
index faf23bf31..2309f85a1 100644
--- a/src/data/pokemon/trainer_class_lookups.h
+++ b/src/data/pokemon/trainer_class_lookups.h
@@ -133,10 +133,10 @@ const u8 gFacilityClassToPicIndex[] =
[FACILITY_CLASS_CRUSH_KIN] = 130,
[FACILITY_CLASS_SIS_AND_BRO_2] = 131,
[FACILITY_CLASS_PKMN_PROF] = 132,
- [FACILITY_CLASS_PLAYER] = 133,
- [FACILITY_CLASS_PLAYER_2] = 134,
- [FACILITY_CLASS_PLAYER_3] = 135,
- [FACILITY_CLASS_PLAYER_4] = 136,
+ [FACILITY_CLASS_BRENDAN] = TRAINER_PIC_RS_BRENDAN_2,
+ [FACILITY_CLASS_MAY] = TRAINER_PIC_RS_MAY_2,
+ [FACILITY_CLASS_RED] = TRAINER_PIC_RED,
+ [FACILITY_CLASS_LEAF] = TRAINER_PIC_LEAF,
[FACILITY_CLASS_TEAM_ROCKET_2] = 137,
[FACILITY_CLASS_PSYCHIC_4] = 138,
[FACILITY_CLASS_CRUSH_GIRL] = 139,
@@ -287,10 +287,10 @@ const u8 gFacilityClassToTrainerClass[] =
[FACILITY_CLASS_CRUSH_KIN] = CLASS_CRUSH_KIN,
[FACILITY_CLASS_SIS_AND_BRO_2] = CLASS_SIS_AND_BRO_2,
[FACILITY_CLASS_PKMN_PROF] = CLASS_PKMN_PROF,
- [FACILITY_CLASS_PLAYER] = CLASS_PLAYER,
- [FACILITY_CLASS_PLAYER_2] = CLASS_PLAYER,
- [FACILITY_CLASS_PLAYER_3] = CLASS_PLAYER,
- [FACILITY_CLASS_PLAYER_4] = CLASS_PLAYER,
+ [FACILITY_CLASS_BRENDAN] = CLASS_PLAYER,
+ [FACILITY_CLASS_MAY] = CLASS_PLAYER,
+ [FACILITY_CLASS_RED] = CLASS_PLAYER,
+ [FACILITY_CLASS_LEAF] = CLASS_PLAYER,
[FACILITY_CLASS_TEAM_ROCKET_2] = CLASS_TEAM_ROCKET,
[FACILITY_CLASS_PSYCHIC_4] = CLASS_PSYCHIC_2,
[FACILITY_CLASS_CRUSH_GIRL] = CLASS_CRUSH_GIRL,
diff --git a/src/data/pokemon_graphics/palette_table.h b/src/data/pokemon_graphics/palette_table.h
index 35edcc76c..bb4f64a07 100644
--- a/src/data/pokemon_graphics/palette_table.h
+++ b/src/data/pokemon_graphics/palette_table.h
@@ -1,4 +1,5 @@
-const struct CompressedSpritePalette gMonPaletteTable[] =
+// A dirty hack because field_effect.c requires this not be const
+__attribute__((section(".rodata"))) struct CompressedSpritePalette gMonPaletteTable[] =
{
SPECIES_PAL(NONE, gMonPalette_CircledQuestionMark),
SPECIES_PAL(BULBASAUR, gMonPalette_Bulbasaur),
diff --git a/src/field_effect.c b/src/field_effect.c
new file mode 100644
index 000000000..9b2974f1f
--- /dev/null
+++ b/src/field_effect.c
@@ -0,0 +1,3907 @@
+#include "global.h"
+#include "gflib.h"
+#include "data.h"
+#include "decompress.h"
+#include "event_data.h"
+#include "event_object_movement.h"
+#include "field_camera.h"
+#include "field_control_avatar.h"
+#include "field_effect.h"
+#include "field_effect_helpers.h"
+#include "field_effect_scripts.h"
+#include "field_fadetransition.h"
+#include "field_player_avatar.h"
+#include "field_weather.h"
+#include "fieldmap.h"
+#include "help_system.h"
+#include "metatile_behavior.h"
+#include "new_menu_helpers.h"
+#include "overworld.h"
+#include "party_menu.h"
+#include "quest_log.h"
+#include "script.h"
+#include "special_field_anim.h"
+#include "task.h"
+#include "trainer_pokemon_sprites.h"
+#include "trig.h"
+#include "util.h"
+#include "constants/event_object_movement.h"
+#include "constants/metatile_behaviors.h"
+#include "constants/songs.h"
+
+#define subsprite_table(ptr) {.subsprites = ptr, .subspriteCount = (sizeof ptr) / (sizeof(struct Subsprite))}
+#define FIELD_EFFECT_COUNT 32
+
+static u8 sFieldEffectActiveList[FIELD_EFFECT_COUNT];
+
+static void FieldEffectActiveListAdd(u8 fldeff);
+static bool8 FieldEffectCmd_loadtiles(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_loadfadedpal(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_loadpal(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_callnative(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_end(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_loadgfx_callnative(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_loadtiles_callnative(const u8 **script, u32 *result);
+static bool8 FieldEffectCmd_loadfadedpal_callnative(const u8 **script, u32 *result);
+static void FieldEffectScript_LoadTiles(const u8 **script);
+static void FieldEffectScript_LoadFadedPal(const u8 **script);
+static void FieldEffectScript_LoadPal(const u8 **script);
+static void FieldEffectScript_CallNative(const u8 **script, u32 *result);
+static void FieldEffectFreeTilesIfUnused(u16 tilesTag);
+static void FieldEffectFreePaletteIfUnused(u8 paletteNum);
+static void Task_PokecenterHeal(u8 taskId);
+static void SpriteCB_PokeballGlow(struct Sprite * sprite);
+static void SpriteCB_PokecenterMonitor(struct Sprite * sprite);
+static void SpriteCB_HallOfFameMonitor(struct Sprite * sprite);
+
+static const u16 sNewGameOakObjectSpriteTiles[] = INCBIN_U16("graphics/field_effects/unk_83CA770.4bpp");
+static const u16 sNewGameOakObjectPals[] = INCBIN_U16("graphics/field_effects/unk_83CAF70.gbapal");
+static const u16 sUnknown_83CAF90[] = INCBIN_U16("graphics/field_effects/unk_83CAF90.4bpp");
+static const u16 sUnknown_83CAFB0[] = INCBIN_U16("graphics/field_effects/unk_83CAFB0.gbapal");
+static const u16 sUnknown_83CAFD0[] = INCBIN_U16("graphics/field_effects/unk_83CAFD0.4bpp");
+static const u16 sUnknown_83CB3D0[] = INCBIN_U16("graphics/field_effects/unk_83CB3D0.gbapal");
+static const u16 sUnknown_83CB3F0[] = INCBIN_U16("graphics/field_effects/unk_83CB3F0.4bpp");
+static const u16 sFieldMoveStreaksTiles[] = INCBIN_U16("graphics/field_effects/unk_83CB5F0.4bpp");
+static const u16 sFieldMoveStreaksPalette[] = INCBIN_U16("graphics/field_effects/unk_83CB7F0.gbapal");
+static const u16 sFieldMoveStreaksTilemap[] = INCBIN_U16("graphics/field_effects/unk_83CB810.bin");
+static const u16 sDarknessFieldMoveStreaksTiles[] = INCBIN_U16("graphics/field_effects/unk_83CBA90.4bpp");
+static const u16 sDarknessFieldMoveStreaksPalette[] = INCBIN_U16("graphics/field_effects/unk_83CBB10.gbapal");
+static const u16 sDarknessFieldMoveStreaksTilemap[] = INCBIN_U16("graphics/field_effects/unk_83CBB30.bin");
+static const u16 sFldEffUnk44_Tiles[] = INCBIN_U16("graphics/field_effects/unk_83CBDB0.4bpp");
+
+static bool8 (*const sFldEffScrcmdTable[])(const u8 **script, u32 *result) = {
+ FieldEffectCmd_loadtiles,
+ FieldEffectCmd_loadfadedpal,
+ FieldEffectCmd_loadpal,
+ FieldEffectCmd_callnative,
+ FieldEffectCmd_end,
+ FieldEffectCmd_loadgfx_callnative,
+ FieldEffectCmd_loadtiles_callnative,
+ FieldEffectCmd_loadfadedpal_callnative
+};
+
+static const struct OamData sNewGameOakOamAttributes = {
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .mosaic = FALSE,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .matrixNum = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0x000,
+ .priority = 0,
+ .paletteNum = 0x0,
+ .affineParam = 0
+};
+
+static const struct OamData sOamData_8x8 = {
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .mosaic = FALSE,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .matrixNum = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0x000,
+ .priority = 0,
+ .paletteNum = 0x0,
+ .affineParam = 0
+};
+
+static const struct OamData sOamData_16x16 = {
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .mosaic = FALSE,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .matrixNum = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0x000,
+ .priority = 0,
+ .paletteNum = 0x0,
+ .affineParam = 0
+};
+
+static const struct SpriteFrameImage sNewGameOakObjectSpriteFrames[] = {
+ {sNewGameOakObjectSpriteTiles, 0x800}
+};
+
+static const struct SpritePalette sNewGameOakObjectPaletteInfo = {
+ sNewGameOakObjectPals, 4102
+};
+
+static const union AnimCmd sNewGameOakAnim[] = {
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const sNewGameOakAnimTable[] = {
+ sNewGameOakAnim
+};
+
+static const struct SpriteTemplate sNewGameOakObjectTemplate = {
+ .tileTag = SPRITE_INVALID_TAG,
+ .paletteTag = 4102,
+ .oam = &sNewGameOakOamAttributes,
+ .anims = sNewGameOakAnimTable,
+ .images = sNewGameOakObjectSpriteFrames,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy
+};
+
+const struct SpritePalette gUnknown_83CBE9C = {
+ sUnknown_83CAFB0, 4103
+};
+
+const struct SpritePalette gUnknown_83CBEA4 = {
+ sUnknown_83CB3D0, 4112
+};
+
+static const struct OamData sOamData_83CBEAC = {
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .mosaic = FALSE,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .matrixNum = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0x000,
+ .priority = 0,
+ .paletteNum = 0x0,
+ .affineParam = 0
+};
+
+static const struct SpriteFrameImage sUnknown_83CBEB4[] = {
+ {sUnknown_83CAF90, 0x20}
+};
+
+static const struct SpriteFrameImage sUnknown_83CBEBC[] = {
+ {sUnknown_83CAFD0 + 0x000, 0x100},
+ {sUnknown_83CAFD0 + 0x080, 0x100},
+ {sUnknown_83CAFD0 + 0x100, 0x100},
+ {sUnknown_83CAFD0 + 0x180, 0x100}
+};
+
+static const struct SpriteFrameImage sUnknown_83CBEDC[] = {
+ {sUnknown_83CB3F0 + 0x00, 0x80},
+ {sUnknown_83CB3F0 + 0x40, 0x80},
+ {sUnknown_83CB3F0 + 0x80, 0x80},
+ {sUnknown_83CB3F0 + 0xC0, 0x80}
+};
+
+static const struct Subsprite sUnknown_83CBEFC[] =
+{
+ {
+ .x = -12,
+ .y = -8,
+ .shape = SPRITE_SHAPE(16x8),
+ .size = SPRITE_SIZE(16x8),
+ .tileOffset = 0,
+ .priority = 2
+ }, {
+ .x = 4,
+ .y = -8,
+ .shape = SPRITE_SHAPE(8x8),
+ .size = SPRITE_SIZE(8x8),
+ .tileOffset = 2,
+ .priority = 2
+ }, {
+ .x = -12,
+ .y = 0,
+ .shape = SPRITE_SHAPE(16x8),
+ .size = SPRITE_SIZE(16x8),
+ .tileOffset = 3,
+ .priority = 2
+ }, {
+ .x = 4,
+ .y = 0,
+ .shape = SPRITE_SHAPE(8x8),
+ .size = SPRITE_SIZE(8x8),
+ .tileOffset = 5,
+ .priority = 2
+ }
+};
+
+static const struct SubspriteTable sUnknown_83CBF0C = subsprite_table(sUnknown_83CBEFC);
+
+static const struct Subsprite sUnknown_83CBF14[] =
+{
+ {
+ .x = -32,
+ .y = -8,
+ .shape = SPRITE_SHAPE(32x8),
+ .size = SPRITE_SIZE(32x8),
+ .tileOffset = 0,
+ .priority = 2
+ }, {
+ .x = 0,
+ .y = -8,
+ .shape = SPRITE_SHAPE(32x8),
+ .size = SPRITE_SIZE(32x8),
+ .tileOffset = 4,
+ .priority = 2
+ }, {
+ .x = -32,
+ .y = 0,
+ .shape = SPRITE_SHAPE(32x8),
+ .size = SPRITE_SIZE(32x8),
+ .tileOffset = 8,
+ .priority = 2
+ }, {
+ .x = 0,
+ .y = 0,
+ .shape = SPRITE_SHAPE(32x8),
+ .size = SPRITE_SIZE(32x8),
+ .tileOffset = 12,
+ .priority = 2
+ }
+};
+
+static const struct SubspriteTable sUnknown_83CBF24 = subsprite_table(sUnknown_83CBF14);
+
+static const union AnimCmd sUnknown_83CBF2C[] = {
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_JUMP(0)
+};
+
+static const union AnimCmd sUnknown_83CBF34[] = {
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(3, 7),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_LOOP(3),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const sUnknown_83CBF54[] = {
+ sUnknown_83CBF2C,
+ sUnknown_83CBF34
+};
+
+static const union AnimCmd sUnknown_83CBF5C[] = {
+ ANIMCMD_FRAME(3, 8),
+ ANIMCMD_FRAME(2, 8),
+ ANIMCMD_FRAME(1, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(1, 8),
+ ANIMCMD_FRAME(2, 8),
+ ANIMCMD_LOOP(2),
+ ANIMCMD_FRAME(1, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const sUnknown_83CBF84[] = {
+ sUnknown_83CBF5C
+};
+
+static const struct SpriteTemplate sUnknown_83CBF88 = {
+ .tileTag = SPRITE_INVALID_TAG,
+ .paletteTag = 4103,
+ .oam = &sOamData_8x8,
+ .anims = sUnknown_83CBF54,
+ .images = sUnknown_83CBEB4,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCB_PokeballGlow
+};
+
+static const struct SpriteTemplate sUnknown_83CBFA0 = {
+ .tileTag = SPRITE_INVALID_TAG,
+ .paletteTag = 4103,
+ .oam = &sOamData_83CBEAC,
+ .anims = sUnknown_83CBF54,
+ .images = sUnknown_83CBEBC,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCB_PokecenterMonitor
+};
+
+static const struct SpriteTemplate sUnknown_83CBFB8 = {
+ .tileTag = SPRITE_INVALID_TAG,
+ .paletteTag = 4112,
+ .oam = &sOamData_16x16,
+ .anims = sUnknown_83CBF84,
+ .images = sUnknown_83CBEDC,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCB_HallOfFameMonitor
+};
+
+
+u32 FieldEffectStart(u8 fldeff)
+{
+ const u8 *script;
+ u32 result;
+ FieldEffectActiveListAdd(fldeff);
+ script = gFieldEffectScriptPointers[fldeff];
+ while (sFldEffScrcmdTable[*script](&script, &result))
+ ;
+ return result;
+}
+
+static bool8 FieldEffectCmd_loadtiles(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadTiles(script);
+ return TRUE;
+}
+
+static bool8 FieldEffectCmd_loadfadedpal(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadFadedPal(script);
+ return TRUE;
+}
+
+static bool8 FieldEffectCmd_loadpal(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadPal(script);
+ return TRUE;
+}
+static bool8 FieldEffectCmd_callnative(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_CallNative(script, result);
+ return TRUE;
+}
+
+static bool8 FieldEffectCmd_end(const u8 **script, u32 *result)
+{
+ return FALSE;
+}
+
+static bool8 FieldEffectCmd_loadgfx_callnative(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadTiles(script);
+ FieldEffectScript_LoadFadedPal(script);
+ FieldEffectScript_CallNative(script, result);
+ return TRUE;
+}
+
+static bool8 FieldEffectCmd_loadtiles_callnative(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadTiles(script);
+ FieldEffectScript_CallNative(script, result);
+ return TRUE;
+}
+
+static bool8 FieldEffectCmd_loadfadedpal_callnative(const u8 **script, u32 *result)
+{
+ (*script)++;
+ FieldEffectScript_LoadFadedPal(script);
+ FieldEffectScript_CallNative(script, result);
+ return TRUE;
+}
+
+static u32 FieldEffectScript_ReadWord(const u8 **script)
+{
+ return T2_READ_32(*script);
+}
+
+static void FieldEffectScript_LoadTiles(const u8 **script)
+{
+ const struct SpriteSheet * spriteSheet = (const struct SpriteSheet * )FieldEffectScript_ReadWord(script);
+ if (GetSpriteTileStartByTag(spriteSheet->tag) == 0xFFFF)
+ LoadSpriteSheet(spriteSheet);
+ *script += sizeof(u32);
+}
+
+void sub_8083598(u8 paletteIdx)
+{
+ switch (gUnknown_2036E28)
+ {
+ case 0:
+ return;
+ case 1:
+ TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
+ break;
+ case 2:
+ TintPalette_SepiaTone(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
+ break;
+ case 3:
+ sub_8111F38((paletteIdx + 16) * 16, 0x10);
+ TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
+ break;
+ default:
+ return;
+ }
+ CpuFastCopy(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], &gPlttBufferFaded[(paletteIdx + 16) * 16], 0x20);
+}
+
+static void FieldEffectScript_LoadFadedPal(const u8 **script)
+{
+ const struct SpritePalette * spritePalette = (const struct SpritePalette * )FieldEffectScript_ReadWord(script);
+ u8 idx = IndexOfSpritePaletteTag(spritePalette->tag);
+ LoadSpritePalette(spritePalette);
+ if (idx == 0xFF)
+ sub_8083598(IndexOfSpritePaletteTag(spritePalette->tag));
+ sub_807AA8C(IndexOfSpritePaletteTag(spritePalette->tag));
+ *script += sizeof(u32);
+}
+
+static void FieldEffectScript_LoadPal(const u8 **script)
+{
+ const struct SpritePalette * spritePalette = (const struct SpritePalette * )FieldEffectScript_ReadWord(script);
+ u8 idx = IndexOfSpritePaletteTag(spritePalette->tag);
+ LoadSpritePalette(spritePalette);
+ if (idx != 0xFF)
+ sub_8083598(IndexOfSpritePaletteTag(spritePalette->tag));
+ *script += sizeof(u32);
+}
+
+static void FieldEffectScript_CallNative(const u8 **script, u32 *result)
+{
+ u32 (*func)(void) = (u32 (*)(void))FieldEffectScript_ReadWord(script);
+ *result = func();
+ *script += sizeof(u32);
+}
+
+static void FieldEffectFreeGraphicsResources(struct Sprite * sprite)
+{
+ u16 tileStart = sprite->sheetTileStart;
+ u8 paletteNum = sprite->oam.paletteNum;
+ DestroySprite(sprite);
+ FieldEffectFreeTilesIfUnused(tileStart);
+ FieldEffectFreePaletteIfUnused(paletteNum);
+}
+
+void FieldEffectStop(struct Sprite * sprite, u8 fldeff)
+{
+ FieldEffectFreeGraphicsResources(sprite);
+ FieldEffectActiveListRemove(fldeff);
+}
+
+static void FieldEffectFreeTilesIfUnused(u16 tileStart)
+{
+ u8 i;
+ u16 tileTag = GetSpriteTileTagByTileStart(tileStart);
+ if (tileTag == SPRITE_INVALID_TAG)
+ return;
+ for (i = 0; i < MAX_SPRITES; i++)
+ {
+ if (gSprites[i].inUse && gSprites[i].usingSheet && tileStart == gSprites[i].sheetTileStart)
+ return;
+ }
+ FreeSpriteTilesByTag(tileTag);
+}
+
+static void FieldEffectFreePaletteIfUnused(u8 paletteNum)
+{
+ u8 i;
+ u16 paletteTag = GetSpritePaletteTagByPaletteNum(paletteNum);
+ if (paletteTag == SPRITE_INVALID_TAG)
+ return;
+ for (i = 0; i < MAX_SPRITES; i++)
+ {
+ if (gSprites[i].inUse && gSprites[i].oam.paletteNum == paletteNum)
+ return;
+ }
+ FreeSpritePaletteByTag(paletteTag);
+}
+
+void FieldEffectActiveListClear(void)
+{
+ u8 i;
+ for (i = 0; i < FIELD_EFFECT_COUNT; i++)
+ {
+ sFieldEffectActiveList[i] = 0xFF;
+ }
+}
+
+static void FieldEffectActiveListAdd(u8 fldeff)
+{
+ u8 i;
+ for (i = 0; i < FIELD_EFFECT_COUNT; i++)
+ {
+ if (sFieldEffectActiveList[i] == 0xFF)
+ {
+ sFieldEffectActiveList[i] = fldeff;
+ return;
+ }
+ }
+}
+
+void FieldEffectActiveListRemove(u8 fldeff)
+{
+ u8 i;
+ for (i = 0; i < FIELD_EFFECT_COUNT; i++)
+ {
+ if (sFieldEffectActiveList[i] == fldeff)
+ {
+ sFieldEffectActiveList[i] = 0xFF;
+ return;
+ }
+ }
+}
+
+bool8 FieldEffectActiveListContains(u8 fldeff)
+{
+ u8 i;
+ for (i = 0; i < FIELD_EFFECT_COUNT; i++)
+ {
+ if (sFieldEffectActiveList[i] == fldeff)
+ {
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer)
+{
+ struct SpriteTemplate spriteTemplate;
+ LoadCompressedSpritePaletteOverrideBuffer(&gTrainerFrontPicPaletteTable[trainerSpriteID], buffer);
+ LoadCompressedSpriteSheetOverrideBuffer(&gTrainerFrontPicTable[trainerSpriteID], buffer);
+ spriteTemplate.tileTag = gTrainerFrontPicTable[trainerSpriteID].tag;
+ spriteTemplate.paletteTag = gTrainerFrontPicPaletteTable[trainerSpriteID].tag;
+ spriteTemplate.oam = &sNewGameOakOamAttributes;
+ spriteTemplate.anims = gDummySpriteAnimTable;
+ spriteTemplate.images = NULL;
+ spriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
+ spriteTemplate.callback = SpriteCallbackDummy;
+ return CreateSprite(&spriteTemplate, x, y, subpriority);
+}
+
+static void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest)
+{
+ LZDecompressVram(gTrainerFrontPicTable[gender].data, dest);
+ LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, 0x20);
+}
+
+static u8 AddNewGameBirchObject(s16 x, s16 y, u8 subpriority)
+{
+ LoadSpritePalette(&sNewGameOakObjectPaletteInfo);
+ return CreateSprite(&sNewGameOakObjectTemplate, x, y, subpriority);
+}
+
+u8 CreateMonSprite_PicBox(u16 species, s16 x, s16 y, u8 subpriority)
+{
+ u16 spriteId = CreateMonPicSprite_HandleDeoxys(species, 0, 0x8000, TRUE, x, y, 0, gMonPaletteTable[species].tag);
+ PreservePaletteInWeather(IndexOfSpritePaletteTag(gMonPaletteTable[species].tag) + 0x10);
+ if (spriteId == 0xFFFF)
+ return MAX_SPRITES;
+ else
+ return spriteId;
+}
+
+static u8 CreateMonSprite_FieldMove(u16 species, u32 otId, u32 personality, s16 x, s16 y, u8 subpriority)
+{
+ const struct CompressedSpritePalette * spritePalette = GetMonSpritePalStructFromOtIdPersonality(species, otId, personality);
+ u16 spriteId = CreateMonPicSprite_HandleDeoxys(species, otId, personality, 1, x, y, 0, spritePalette->tag);
+ PreservePaletteInWeather(IndexOfSpritePaletteTag(spritePalette->tag) + 0x10);
+ if (spriteId == 0xFFFF)
+ return MAX_SPRITES;
+ else
+ return spriteId;
+}
+
+void FreeResourcesAndDestroySprite(struct Sprite * sprite, u8 spriteId)
+{
+ ResetPreservedPalettesInWeather();
+ if (sprite->oam.affineMode != ST_OAM_AFFINE_OFF)
+ {
+ FreeOamMatrix(sprite->oam.matrixNum);
+ }
+ FreeAndDestroyMonPicSprite(spriteId);
+}
+
+// r, g, b are between 0 and 16
+void MultiplyInvertedPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b)
+{
+ int curRed;
+ int curGreen;
+ int curBlue;
+ u16 outPal;
+
+ outPal = gPlttBufferUnfaded[i];
+ curRed = outPal & 0x1f;
+ curGreen = (outPal & (0x1f << 5)) >> 5;
+ curBlue = (outPal & (0x1f << 10)) >> 10;
+ curRed += (((0x1f - curRed) * r) >> 4);
+ curGreen += (((0x1f - curGreen) * g) >> 4);
+ curBlue += (((0x1f - curBlue) * b) >> 4);
+ outPal = curRed;
+ outPal |= curGreen << 5;
+ outPal |= curBlue << 10;
+ gPlttBufferFaded[i] = outPal;
+}
+
+// r, g, b are between 0 and 16
+static void MultiplyPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b)
+{
+ int curRed;
+ int curGreen;
+ int curBlue;
+ u16 outPal;
+
+ outPal = gPlttBufferUnfaded[i];
+ curRed = outPal & 0x1f;
+ curGreen = (outPal & (0x1f << 5)) >> 5;
+ curBlue = (outPal & (0x1f << 10)) >> 10;
+ curRed -= ((curRed * r) >> 4);
+ curGreen -= ((curGreen * g) >> 4);
+ curBlue -= ((curBlue * b) >> 4);
+ outPal = curRed;
+ outPal |= curGreen << 5;
+ outPal |= curBlue << 10;
+ gPlttBufferFaded[i] = outPal;
+}
+
+static void PokecenterHealEffect_0(struct Task * task);
+static void PokecenterHealEffect_1(struct Task * task);
+static void PokecenterHealEffect_2(struct Task * task);
+static void PokecenterHealEffect_3(struct Task * task);
+static void HallOfFameRecordEffect_0(struct Task * task);
+static void HallOfFameRecordEffect_1(struct Task * task);
+static void HallOfFameRecordEffect_2(struct Task * task);
+static void HallOfFameRecordEffect_3(struct Task * task);
+static void Task_HallOfFameRecord(u8 taskId);
+static u8 CreatePokeballGlowSprite(s16 duration, s16 x, s16 y, bool16 fanfare);
+static void SpriteCB_PokeballGlowEffect(struct Sprite * sprite);
+static void PokeballGlowEffect_0(struct Sprite * sprite);
+static void PokeballGlowEffect_1(struct Sprite * sprite);
+static void PokeballGlowEffect_2(struct Sprite * sprite);
+static void PokeballGlowEffect_3(struct Sprite * sprite);
+static void PokeballGlowEffect_4(struct Sprite * sprite);
+static void PokeballGlowEffect_5(struct Sprite * sprite);
+static void PokeballGlowEffect_6(struct Sprite * sprite);
+static void PokeballGlowEffect_7(struct Sprite * sprite);
+static u8 PokecenterHealEffectHelper(s32 x, s32 y);
+static void HallOfFameRecordEffectHelper(s32 x, s32 y);
+
+static void (*const sPokecenterHealTaskCBTable[])(struct Task * ) = {
+ PokecenterHealEffect_0,
+ PokecenterHealEffect_1,
+ PokecenterHealEffect_2,
+ PokecenterHealEffect_3
+};
+
+static void (*const sHallOfFameRecordTaskCBTable[])(struct Task * ) = {
+ HallOfFameRecordEffect_0,
+ HallOfFameRecordEffect_1,
+ HallOfFameRecordEffect_2,
+ HallOfFameRecordEffect_3
+};
+
+static void (*const sPokeballGlowSpriteCBTable[])(struct Sprite * ) = {
+ PokeballGlowEffect_0,
+ PokeballGlowEffect_1,
+ PokeballGlowEffect_2,
+ PokeballGlowEffect_3,
+ PokeballGlowEffect_4,
+ PokeballGlowEffect_5,
+ PokeballGlowEffect_6,
+ PokeballGlowEffect_7
+};
+
+bool8 FldEff_PokecenterHeal(void)
+{
+ u8 nPokemon;
+ struct Task * task;
+
+ nPokemon = CalculatePlayerPartyCount();
+ task = &gTasks[CreateTask(Task_PokecenterHeal, 0xff)];
+ task->data[1] = nPokemon;
+ task->data[2] = 0x5d;
+ task->data[3] = 0x24;
+ task->data[4] = 0x80;
+ task->data[5] = 0x18;
+ return FALSE;
+}
+
+static void Task_PokecenterHeal(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ sPokecenterHealTaskCBTable[task->data[0]](task);
+}
+
+static void PokecenterHealEffect_0(struct Task * task)
+{
+ task->data[0]++;
+ task->data[6] = CreatePokeballGlowSprite(task->data[1], task->data[2], task->data[3], TRUE);
+ task->data[7] = PokecenterHealEffectHelper(task->data[4], task->data[5]);
+}
+
+static void PokecenterHealEffect_1(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 1)
+ {
+ gSprites[task->data[7]].data[0]++;
+ task->data[0]++;
+ }
+}
+
+static void PokecenterHealEffect_2(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 4)
+ {
+ task->data[0]++;
+ }
+}
+
+static void PokecenterHealEffect_3(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 6)
+ {
+ DestroySprite(&gSprites[task->data[6]]);
+ FieldEffectActiveListRemove(FLDEFF_POKECENTER_HEAL);
+ DestroyTask(FindTaskIdByFunc(Task_PokecenterHeal));
+ }
+}
+
+bool8 FldEff_HallOfFameRecord(void)
+{
+ u8 nPokemon;
+ struct Task * task;
+
+ nPokemon = CalculatePlayerPartyCount();
+ task = &gTasks[CreateTask(Task_HallOfFameRecord, 0xff)];
+ task->data[1] = nPokemon;
+ task->data[2] = 0x75;
+ task->data[3] = 0x3C;
+ return FALSE;
+}
+
+static void Task_HallOfFameRecord(u8 taskId)
+{
+ struct Task * task;
+ task = &gTasks[taskId];
+ sHallOfFameRecordTaskCBTable[task->data[0]](task);
+}
+
+static void HallOfFameRecordEffect_0(struct Task * task)
+{
+ u8 taskId;
+ task->data[0]++;
+ task->data[6] = CreatePokeballGlowSprite(task->data[1], task->data[2], task->data[3], FALSE);
+}
+
+static void HallOfFameRecordEffect_1(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 1)
+ {
+ HallOfFameRecordEffectHelper(0x78, 0x19);
+ task->data[15]++; // was this ever initialized? is this ever used?
+ task->data[0]++;
+ }
+}
+
+static void HallOfFameRecordEffect_2(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 4)
+ {
+ task->data[0]++;
+ }
+}
+
+static void HallOfFameRecordEffect_3(struct Task * task)
+{
+ if (gSprites[task->data[6]].data[0] > 6)
+ {
+ DestroySprite(&gSprites[task->data[6]]);
+ FieldEffectActiveListRemove(FLDEFF_HALL_OF_FAME_RECORD);
+ DestroyTask(FindTaskIdByFunc(Task_HallOfFameRecord));
+ }
+}
+
+static u8 CreatePokeballGlowSprite(s16 duration, s16 x, s16 y, bool16 fanfare)
+{
+ u8 spriteId;
+ struct Sprite * sprite;
+ spriteId = CreateInvisibleSprite(SpriteCB_PokeballGlowEffect);
+ sprite = &gSprites[spriteId];
+ sprite->pos2.x = x;
+ sprite->pos2.y = y;
+ sprite->subpriority = 0xFF;
+ sprite->data[5] = fanfare;
+ sprite->data[6] = duration;
+ sprite->data[7] = spriteId;
+ return spriteId;
+}
+
+static void SpriteCB_PokeballGlowEffect(struct Sprite * sprite)
+{
+ sPokeballGlowSpriteCBTable[sprite->data[0]](sprite);
+}
+
+static const struct Coords16 sUnknown_83CC010[] = {
+ {0, 0},
+ {6, 0},
+ {0, 4},
+ {6, 4},
+ {0, 8},
+ {6, 8}
+};
+
+static const u8 sUnknown_83CC028[] = {16, 12, 8, 0};
+static const u8 sUnknown_83CC02C[] = {16, 12, 8, 0};
+static const u8 sUnknown_83CC030[] = { 0, 0, 0, 0};
+
+static void PokeballGlowEffect_0(struct Sprite * sprite)
+{
+ u8 endSpriteId;
+ if (sprite->data[1] == 0 || (--sprite->data[1]) == 0)
+ {
+ sprite->data[1] = 25;
+ endSpriteId = CreateSpriteAtEnd(&sUnknown_83CBF88, sUnknown_83CC010[sprite->data[2]].x + sprite->pos2.x, sUnknown_83CC010[sprite->data[2]].y + sprite->pos2.y, 0xFF);
+ gSprites[endSpriteId].oam.priority = 2;
+ gSprites[endSpriteId].data[0] = sprite->data[7];
+ sprite->data[2]++;
+ sprite->data[6]--;
+ PlaySE(SE_BOWA);
+ }
+ if (sprite->data[6] == 0)
+ {
+ sprite->data[1] = 32;
+ sprite->data[0]++;
+ }
+}
+
+static void PokeballGlowEffect_1(struct Sprite * sprite)
+{
+ if ((--sprite->data[1]) == 0)
+ {
+ sprite->data[0]++;
+ sprite->data[1] = 8;
+ sprite->data[2] = 0;
+ sprite->data[3] = 0;
+ if (sprite->data[5])
+ {
+ PlayFanfare(MUS_ME_ASA);
+ }
+ }
+}
+
+static void PokeballGlowEffect_2(struct Sprite * sprite)
+{
+ u8 phase;
+ if ((--sprite->data[1]) == 0)
+ {
+ sprite->data[1] = 8;
+ sprite->data[2]++;
+ sprite->data[2] &= 3;
+ if (sprite->data[2] == 0)
+ {
+ sprite->data[3]++;
+ }
+ }
+ phase = (sprite->data[2] + 3) & 3;
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ phase = (sprite->data[2] + 2) & 3;
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ phase = (sprite->data[2] + 1) & 3;
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ phase = sprite->data[2];
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ if (sprite->data[3] > 2)
+ {
+ sprite->data[0]++;
+ sprite->data[1] = 8;
+ sprite->data[2] = 0;
+ }
+}
+
+static void PokeballGlowEffect_3(struct Sprite * sprite)
+{
+ u8 phase;
+ if ((--sprite->data[1]) == 0)
+ {
+ sprite->data[1] = 8;
+ sprite->data[2]++;
+ sprite->data[2] &= 3;
+ if (sprite->data[2] == 3)
+ {
+ sprite->data[0]++;
+ sprite->data[1] = 30;
+ }
+ }
+ phase = sprite->data[2];
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+ MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sUnknown_83CC028[phase], sUnknown_83CC02C[phase], sUnknown_83CC030[phase]);
+}
+
+static void PokeballGlowEffect_4(struct Sprite * sprite)
+{
+ if ((--sprite->data[1]) == 0)
+ {
+ sprite->data[0]++;
+ }
+}
+
+static void PokeballGlowEffect_5(struct Sprite * sprite)
+{
+ sprite->data[0]++;
+}
+
+static void PokeballGlowEffect_6(struct Sprite * sprite)
+{
+ if (sprite->data[5] == 0 || IsFanfareTaskInactive())
+ {
+ sprite->data[0]++;
+ }
+}
+
+static void PokeballGlowEffect_7(struct Sprite * sprite)
+{
+}
+
+static void SpriteCB_PokeballGlow(struct Sprite * sprite)
+{
+ if (gSprites[sprite->data[0]].data[0] > 4)
+ FieldEffectFreeGraphicsResources(sprite);
+}
+
+static u8 PokecenterHealEffectHelper(s32 x, s32 y)
+{
+ u8 spriteId;
+ struct Sprite * sprite;
+ spriteId = CreateSpriteAtEnd(&sUnknown_83CBFA0, x, y, 0);
+ sprite = &gSprites[spriteId];
+ sprite->oam.priority = 2;
+ sprite->invisible = TRUE;
+ return spriteId;
+}
+
+static void SpriteCB_PokecenterMonitor(struct Sprite * sprite)
+{
+ if (sprite->data[0] != 0)
+ {
+ sprite->data[0] = 0;
+ sprite->invisible = FALSE;
+ StartSpriteAnim(sprite, 1);
+ }
+ if (sprite->animEnded)
+ FieldEffectFreeGraphicsResources(sprite);
+}
+
+static void HallOfFameRecordEffectHelper(s32 x, s32 y)
+{
+ CreateSpriteAtEnd(&sUnknown_83CBFB8, x, y, 0);
+}
+
+static void SpriteCB_HallOfFameMonitor(struct Sprite * sprite)
+{
+ if (sprite->animEnded)
+ FieldEffectFreeGraphicsResources(sprite);
+}
+
+static void FieldCallback_Fly(void);
+static void Task_FlyOut(u8 taskId);
+static void FieldCallback_FlyArrive(void);
+static void Task_FlyIn(u8 taskId);
+
+void ReturnToFieldFromFlyMapSelect(void)
+{
+ SetMainCallback2(CB2_ReturnToField);
+ gFieldCallback = FieldCallback_Fly;
+}
+
+static void FieldCallback_Fly(void)
+{
+ FadeInFromBlack();
+ CreateTask(Task_FlyOut, 0);
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gFieldCallback = NULL;
+}
+
+static void Task_FlyOut(u8 taskId)
+{
+ struct Task * task;
+ task = &gTasks[taskId];
+ if (task->data[0] == 0)
+ {
+ if (!IsWeatherNotFadingIn())
+ return;
+ gFieldEffectArguments[0] = GetCursorSelectionMonId();
+ if ((int)gFieldEffectArguments[0] >= PARTY_SIZE)
+ gFieldEffectArguments[0] = 0;
+ FieldEffectStart(FLDEFF_USE_FLY);
+ task->data[0]++;
+ }
+ if (!FieldEffectActiveListContains(FLDEFF_USE_FLY))
+ {
+ Overworld_ResetStateAfterFly();
+ WarpIntoMap();
+ SetMainCallback2(CB2_LoadMap);
+ gFieldCallback = FieldCallback_FlyArrive;
+ DestroyTask(taskId);
+ }
+}
+
+static void FieldCallback_FlyArrive(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ FadeInFromBlack();
+ CreateTask(Task_FlyIn, 0);
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
+ if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
+ {
+ ObjectEventTurn(&gObjectEvents[gPlayerAvatar.objectEventId], DIR_WEST);
+ }
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gFieldCallback = NULL;
+}
+
+static void Task_FlyIn(u8 taskId)
+{
+ struct Task * task;
+ task = &gTasks[taskId];
+ if (task->data[0] == 0)
+ {
+ if (gPaletteFade.active)
+ {
+ return;
+ }
+ FieldEffectStart(FLDEFF_FLY_IN);
+ task->data[0]++;
+ }
+ if (!FieldEffectActiveListContains(FLDEFF_FLY_IN))
+ {
+ ScriptContext2_Disable();
+ UnfreezeObjectEvents();
+ DestroyTask(taskId);
+ }
+}
+
+static void Task_FallWarpFieldEffect(u8 taskId);
+static bool8 FallWarpEffect_1(struct Task * task);
+static bool8 FallWarpEffect_2(struct Task * task);
+static bool8 FallWarpEffect_3(struct Task * task);
+static bool8 FallWarpEffect_4(struct Task * task);
+static bool8 FallWarpEffect_5(struct Task * task);
+static bool8 FallWarpEffect_6(struct Task * task);
+static bool8 FallWarpEffect_7(struct Task * task);
+
+static bool8 (*const sFallWarpEffectCBPtrs[])(struct Task * task) = {
+ FallWarpEffect_1,
+ FallWarpEffect_2,
+ FallWarpEffect_3,
+ FallWarpEffect_4,
+ FallWarpEffect_5,
+ FallWarpEffect_6,
+ FallWarpEffect_7
+};
+
+void FieldCB_FallWarpExit(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ WarpFadeInScreen();
+ sub_8111CF0();
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ CreateTask(Task_FallWarpFieldEffect, 0);
+ gFieldCallback = NULL;
+}
+
+static void Task_FallWarpFieldEffect(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ while (sFallWarpEffectCBPtrs[task->data[0]](task))
+ ;
+}
+
+static bool8 FallWarpEffect_1(struct Task * task)
+{
+ struct ObjectEvent * playerObject;
+ struct Sprite * playerSprite;
+ playerObject = &gObjectEvents[gPlayerAvatar.objectEventId];
+ playerSprite = &gSprites[gPlayerAvatar.spriteId];
+ CameraObjectReset2();
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
+ gPlayerAvatar.preventStep = TRUE;
+ ObjectEventSetHeldMovement(playerObject, GetFaceDirectionMovementAction(GetPlayerFacingDirection()));
+ task->data[4] = playerSprite->subspriteMode;
+ playerObject->fixedPriority = TRUE;
+ playerSprite->oam.priority = 1;
+ playerSprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
+ task->data[0]++;
+ return TRUE;
+}
+
+static bool8 FallWarpEffect_2(struct Task * task)
+{
+ if (IsWeatherNotFadingIn())
+ {
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 FallWarpEffect_3(struct Task * task)
+{
+ struct Sprite * sprite;
+ s16 centerToCornerVecY;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
+ sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
+ task->data[1] = 1;
+ task->data[2] = 0;
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
+ PlaySE(SE_RU_HYUU);
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 FallWarpEffect_4(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ struct Sprite * sprite;
+
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.y += task->data[1];
+ if (task->data[1] < 8)
+ {
+ task->data[2] += task->data[1];
+ if (task->data[2] & 0xf)
+ {
+ task->data[1] <<= 1;
+ }
+ }
+ if (task->data[3] == 0 && sprite->pos2.y >= -16)
+ {
+ task->data[3]++;
+ objectEvent->fixedPriority = FALSE;
+ sprite->subspriteMode = task->data[4];
+ objectEvent->triggerGroundEffectsOnMove = TRUE;
+ }
+ if (sprite->pos2.y >= 0)
+ {
+ PlaySE(SE_W070);
+ objectEvent->triggerGroundEffectsOnStop = TRUE;
+ objectEvent->landingJump = TRUE;
+ sprite->pos2.y = 0;
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 FallWarpEffect_5(struct Task * task)
+{
+ task->data[0]++;
+ task->data[1] = 4;
+ task->data[2] = 0;
+ SetCameraPanningCallback(NULL);
+ return TRUE;
+}
+
+static bool8 FallWarpEffect_6(struct Task * task)
+{
+ SetCameraPanning(0, task->data[1]);
+ task->data[1] = -task->data[1];
+ task->data[2]++;
+ if ((task->data[2] & 3) == 0)
+ {
+ task->data[1] >>= 1;
+ }
+ if (task->data[1] == 0)
+ {
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 FallWarpEffect_7(struct Task * task)
+{
+ s16 x, y;
+ gPlayerAvatar.preventStep = FALSE;
+ ScriptContext2_Disable();
+ CameraObjectReset1();
+ UnfreezeObjectEvents();
+ InstallCameraPanAheadCallback();
+ PlayerGetDestCoords(&x, &y);
+ // Seafoam Islands
+ if (sub_8055B38(MapGridGetMetatileBehaviorAt(x, y)) == TRUE)
+ {
+ VarSet(VAR_TEMP_1, 1);
+ SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_SURFING);
+ HelpSystem_SetSomeVariable2(22);
+ }
+ DestroyTask(FindTaskIdByFunc(Task_FallWarpFieldEffect));
+ return FALSE;
+}
+
+static void Task_EscalatorWarpFieldEffect(u8 taskId);
+static bool8 EscalatorWarpEffect_1(struct Task * task);
+static bool8 EscalatorWarpEffect_2(struct Task * task);
+static bool8 EscalatorWarpEffect_3(struct Task * task);
+static bool8 EscalatorWarpEffect_4(struct Task * task);
+static bool8 EscalatorWarpEffect_5(struct Task * task);
+static bool8 EscalatorWarpEffect_6(struct Task * task);
+static void Escalator_AnimatePlayerGoingDown(struct Task * task);
+static void Escalator_AnimatePlayerGoingUp(struct Task * task);
+static void Escalator_BeginFadeOutToNewMap(void);
+static void Escalator_TransitionToWarpInEffect(void);
+static void FieldCB_EscalatorWarpIn(void);
+static void Task_EscalatorWarpInFieldEffect(u8 taskId);
+static bool8 EscalatorWarpInEffect_1(struct Task * task);
+static bool8 EscalatorWarpInEffect_2(struct Task * task);
+static bool8 EscalatorWarpInEffect_3(struct Task * task);
+static bool8 EscalatorWarpInEffect_4(struct Task * task);
+static bool8 EscalatorWarpInEffect_5(struct Task * task);
+static bool8 EscalatorWarpInEffect_6(struct Task * task);
+static bool8 EscalatorWarpInEffect_7(struct Task * task);
+
+static bool8 (*const sEscalatorWarpFieldEffectFuncs[])(struct Task * task) = {
+ EscalatorWarpEffect_1,
+ EscalatorWarpEffect_2,
+ EscalatorWarpEffect_3,
+ EscalatorWarpEffect_4,
+ EscalatorWarpEffect_5,
+ EscalatorWarpEffect_6
+};
+
+void StartEscalatorWarp(u8 metatileBehavior, u8 priority)
+{
+ u8 taskId = CreateTask(Task_EscalatorWarpFieldEffect, priority);
+ gTasks[taskId].data[1] = 0;
+ if (metatileBehavior == MB_UP_ESCALATOR)
+ gTasks[taskId].data[1] = 1;
+}
+
+static void Task_EscalatorWarpFieldEffect(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ while (sEscalatorWarpFieldEffectFuncs[task->data[0]](task))
+ ;
+}
+
+static bool8 EscalatorWarpEffect_1(struct Task * task)
+{
+ FreezeObjectEvents();
+ CameraObjectReset2();
+ StartEscalator(task->data[1]);
+ sub_81128BC(1);
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 EscalatorWarpEffect_2(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (!ObjectEventIsMovementOverridden(objectEvent) || ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(GetPlayerFacingDirection()));
+ task->data[0]++;
+ task->data[2] = 0;
+ task->data[3] = 0;
+ if ((u8)task->data[1] == 0)
+ {
+ task->data[0] = 4;
+ }
+ PlaySE(SE_ESUKA);
+ }
+ return FALSE;
+}
+
+static bool8 EscalatorWarpEffect_3(struct Task * task)
+{
+ Escalator_AnimatePlayerGoingDown(task);
+ if (task->data[2] > 3)
+ {
+ Escalator_BeginFadeOutToNewMap();
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 EscalatorWarpEffect_4(struct Task * task)
+{
+ Escalator_AnimatePlayerGoingDown(task);
+ Escalator_TransitionToWarpInEffect();
+ return FALSE;
+}
+
+static bool8 EscalatorWarpEffect_5(struct Task * task)
+{
+ Escalator_AnimatePlayerGoingUp(task);
+ if (task->data[2] > 3)
+ {
+ Escalator_BeginFadeOutToNewMap();
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 EscalatorWarpEffect_6(struct Task * task)
+{
+ Escalator_AnimatePlayerGoingUp(task);
+ Escalator_TransitionToWarpInEffect();
+ return FALSE;
+}
+
+
+static void Escalator_AnimatePlayerGoingDown(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x84, task->data[2]);
+ sprite->pos2.y = Sin(0x94, task->data[2]);
+ task->data[3]++;
+ if (task->data[3] & 1)
+ {
+ task->data[2]++;
+ }
+}
+
+static void Escalator_AnimatePlayerGoingUp(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x7c, task->data[2]);
+ sprite->pos2.y = Sin(0x76, task->data[2]);
+ task->data[3]++;
+ if (task->data[3] & 1)
+ {
+ task->data[2]++;
+ }
+}
+
+static void Escalator_BeginFadeOutToNewMap(void)
+{
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
+}
+
+static void Escalator_TransitionToWarpInEffect(void)
+{
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
+ {
+ StopEscalator();
+ WarpIntoMap();
+ gFieldCallback = FieldCB_EscalatorWarpIn;
+ SetMainCallback2(CB2_LoadMap);
+ DestroyTask(FindTaskIdByFunc(Task_EscalatorWarpFieldEffect));
+ }
+}
+
+static bool8 (*const sEscalatorWarpInFieldEffectFuncs[])(struct Task * task) = {
+ EscalatorWarpInEffect_1,
+ EscalatorWarpInEffect_2,
+ EscalatorWarpInEffect_3,
+ EscalatorWarpInEffect_4,
+ EscalatorWarpInEffect_5,
+ EscalatorWarpInEffect_6,
+ EscalatorWarpInEffect_7
+};
+
+static void FieldCB_EscalatorWarpIn(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ WarpFadeInScreen();
+ sub_8111CF0();
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ CreateTask(Task_EscalatorWarpInFieldEffect, 0);
+ gFieldCallback = NULL;
+}
+
+static void Task_EscalatorWarpInFieldEffect(u8 taskId)
+{
+ struct Task * task = &gTasks[taskId];
+ while (sEscalatorWarpInFieldEffectFuncs[task->data[0]](task))
+ ;
+}
+
+static bool8 EscalatorWarpInEffect_1(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ s16 x;
+ s16 y;
+ u8 behavior;
+ CameraObjectReset2();
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(DIR_EAST));
+ PlayerGetDestCoords(&x, &y);
+ behavior = MapGridGetMetatileBehaviorAt(x, y);
+ task->data[0]++;
+ task->data[1] = 16;
+ if (behavior == MB_DOWN_ESCALATOR)
+ {
+ behavior = 1;
+ task->data[0] = 3;
+ } else
+ {
+ behavior = 0;
+ }
+ StartEscalator(behavior);
+ return TRUE;
+}
+
+static bool8 EscalatorWarpInEffect_2(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x84, task->data[1]);
+ sprite->pos2.y = Sin(0x94, task->data[1]);
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 EscalatorWarpInEffect_3(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x84, task->data[1]);
+ sprite->pos2.y = Sin(0x94, task->data[1]);
+ task->data[2]++;
+ if (task->data[2] & 1)
+ {
+ task->data[1]--;
+ }
+ if (task->data[1] == 0)
+ {
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ task->data[0] = 5;
+ }
+ return FALSE;
+}
+
+
+static bool8 EscalatorWarpInEffect_4(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x7c, task->data[1]);
+ sprite->pos2.y = Sin(0x76, task->data[1]);
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 EscalatorWarpInEffect_5(struct Task * task)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.x = Cos(0x7c, task->data[1]);
+ sprite->pos2.y = Sin(0x76, task->data[1]);
+ task->data[2]++;
+ if (task->data[2] & 1)
+ {
+ task->data[1]--;
+ }
+ if (task->data[1] == 0)
+ {
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 EscalatorWarpInEffect_6(struct Task * task)
+{
+ if (IsEscalatorMoving())
+ {
+ return FALSE;
+ }
+ StopEscalator();
+ task->data[0]++;
+ return TRUE;
+}
+
+static bool8 EscalatorWarpInEffect_7(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ CameraObjectReset1();
+ ScriptContext2_Disable();
+ UnfreezeObjectEvents();
+ ObjectEventSetHeldMovement(objectEvent, GetWalkNormalMovementAction(DIR_EAST));
+ DestroyTask(FindTaskIdByFunc(Task_EscalatorWarpInFieldEffect));
+ sub_81128BC(2);
+ }
+ return FALSE;
+}
+
+static void Task_UseWaterfall(u8 taskId);
+
+static bool8 waterfall_0_setup(struct Task * task, struct ObjectEvent * playerObj);
+static bool8 waterfall_1_do_anim_probably(struct Task * task, struct ObjectEvent * playerObj);
+static bool8 waterfall_2_wait_anim_finish_probably(struct Task * task, struct ObjectEvent * playerObj);
+static bool8 waterfall_3_move_player_probably(struct Task * task, struct ObjectEvent * playerObj);
+static bool8 waterfall_4_wait_player_move_probably(struct Task * task, struct ObjectEvent * playerObj);
+
+static bool8 (*const sUseWaterfallFieldEffectFuncs[])(struct Task * task, struct ObjectEvent * playerObj) = {
+ waterfall_0_setup,
+ waterfall_1_do_anim_probably,
+ waterfall_2_wait_anim_finish_probably,
+ waterfall_3_move_player_probably,
+ waterfall_4_wait_player_move_probably
+};
+
+u32 FldEff_UseWaterfall(void)
+{
+ u8 taskId = CreateTask(Task_UseWaterfall, 0xFF);
+ gTasks[taskId].data[1] = gFieldEffectArguments[0];
+ Task_UseWaterfall(taskId);
+ return 0;
+}
+
+static void Task_UseWaterfall(u8 taskId)
+{
+ while (sUseWaterfallFieldEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId]))
+ ;
+}
+
+static bool8 waterfall_0_setup(struct Task * task, struct ObjectEvent * playerObj)
+{
+ ScriptContext2_Enable();
+ gPlayerAvatar.preventStep = TRUE;
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 waterfall_1_do_anim_probably(struct Task * task, struct ObjectEvent * playerObj)
+{
+ ScriptContext2_Enable();
+ if (!ObjectEventIsMovementOverridden(playerObj))
+ {
+ ObjectEventClearHeldMovementIfFinished(playerObj);
+ gFieldEffectArguments[0] = task->data[1];
+ FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 waterfall_2_wait_anim_finish_probably(struct Task * task, struct ObjectEvent * playerObj)
+{
+ if (FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
+ return FALSE;
+ task->data[0]++;
+ return TRUE;
+}
+
+static bool8 waterfall_3_move_player_probably(struct Task * task, struct ObjectEvent * playerObj)
+{
+ ObjectEventSetHeldMovement(playerObj, sub_8063F2C(DIR_NORTH));
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 waterfall_4_wait_player_move_probably(struct Task * task, struct ObjectEvent * playerObj)
+{
+ if (!ObjectEventClearHeldMovementIfFinished(playerObj))
+ return FALSE;
+ if (MetatileBehavior_IsWaterfall(playerObj->mapobj_unk_1E))
+ {
+ task->data[0] = 3;
+ return TRUE;
+ }
+ ScriptContext2_Disable();
+ gPlayerAvatar.preventStep = FALSE;
+ DestroyTask(FindTaskIdByFunc(Task_UseWaterfall));
+ FieldEffectActiveListRemove(FLDEFF_USE_WATERFALL);
+ return FALSE;
+}
+
+static void Task_Dive(u8 taskId);
+static bool8 dive_1_lock(struct Task * task);
+static bool8 dive_2_unknown(struct Task * task);
+static bool8 dive_3_unknown(struct Task * task);
+
+static bool8 (*const sDiveFieldEffectFuncPtrs[])(struct Task * task) = {
+ dive_1_lock,
+ dive_2_unknown,
+ dive_3_unknown
+};
+
+u32 FldEff_UseDive(void)
+{
+ u8 taskId = CreateTask(Task_Dive, 0xFF);
+ gTasks[taskId].data[15] = gFieldEffectArguments[0];
+ gTasks[taskId].data[14] = gFieldEffectArguments[1];
+ Task_Dive(taskId);
+ return 0;
+}
+
+static void Task_Dive(u8 taskId)
+{
+ while (sDiveFieldEffectFuncPtrs[gTasks[taskId].data[0]](&gTasks[taskId]))
+ ;
+}
+
+static bool8 dive_1_lock(struct Task * task)
+{
+ gPlayerAvatar.preventStep = TRUE;
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 dive_2_unknown(struct Task * task)
+{
+ ScriptContext2_Enable();
+ gFieldEffectArguments[0] = task->data[15];
+ FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 dive_3_unknown(struct Task * task)
+{
+ struct MapPosition pos;
+ PlayerGetDestCoords(&pos.x, &pos.y);
+ if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
+ {
+ dive_warp(&pos, gObjectEvents[gPlayerAvatar.objectEventId].mapobj_unk_1E);
+ DestroyTask(FindTaskIdByFunc(Task_Dive));
+ FieldEffectActiveListRemove(FLDEFF_USE_DIVE);
+ }
+ return FALSE;
+}
+
+static void Task_LavaridgeGymB1FWarp(u8 taskId);
+static bool8 LavaridgeGymB1FWarpEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpEffect_5(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpEffect_6(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static void FieldCB_LavaridgeGymB1FWarpExit(void);
+static void Task_LavaridgeGymB1FWarpExit(u8 taskId);
+static bool8 LavaridgeGymB1FWarpExitEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpExitEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpExitEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGymB1FWarpExitEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+
+static bool8 (*const sLavaridgeGymB1FWarpEffectFuncs[])(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite) = {
+ LavaridgeGymB1FWarpEffect_1,
+ LavaridgeGymB1FWarpEffect_2,
+ LavaridgeGymB1FWarpEffect_3,
+ LavaridgeGymB1FWarpEffect_4,
+ LavaridgeGymB1FWarpEffect_5,
+ LavaridgeGymB1FWarpEffect_6
+};
+
+void StartLavaridgeGymB1FWarp(u8 priority)
+{
+ CreateTask(Task_LavaridgeGymB1FWarp, priority);
+}
+
+static void Task_LavaridgeGymB1FWarp(u8 taskId)
+{
+ while (sLavaridgeGymB1FWarpEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId]));
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ FreezeObjectEvents();
+ CameraObjectReset2();
+ SetCameraPanningCallback(NULL);
+ gPlayerAvatar.preventStep = TRUE;
+ objectEvent->fixedPriority = TRUE;
+ task->data[1] = 1;
+ task->data[0]++;
+ return TRUE;
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ SetCameraPanning(0, task->data[1]);
+ task->data[1] = -task->data[1];
+ task->data[2]++;
+ if (task->data[2] > 7)
+ {
+ task->data[2] = 0;
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ sprite->pos2.y = 0;
+ task->data[3] = 1;
+ gFieldEffectArguments[0] = objectEvent->currentCoords.x;
+ gFieldEffectArguments[1] = objectEvent->currentCoords.y;
+ gFieldEffectArguments[2] = sprite->subpriority - 1;
+ gFieldEffectArguments[3] = sprite->oam.priority;
+ FieldEffectStart(FLDEFF_LAVARIDGE_GYM_WARP);
+ PlaySE(SE_W153);
+ task->data[0]++;
+ return TRUE;
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ s16 centerToCornerVecY;
+ SetCameraPanning(0, task->data[1]);
+ if (task->data[1] = -task->data[1], ++task->data[2] <= 17)
+ {
+ if (!(task->data[2] & 1) && (task->data[1] <= 3))
+ {
+ task->data[1] <<= 1;
+ }
+ } else if (!(task->data[2] & 4) && (task->data[1] > 0))
+ {
+ task->data[1] >>= 1;
+ }
+ if (task->data[2] > 6)
+ {
+ centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
+ if (sprite->pos2.y > -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY))
+ {
+ sprite->pos2.y -= task->data[3];
+ if (task->data[3] <= 7)
+ {
+ task->data[3]++;
+ }
+ } else
+ {
+ task->data[4] = 1;
+ }
+ }
+ if (task->data[5] == 0 && sprite->pos2.y < -0x10)
+ {
+ task->data[5]++;
+ objectEvent->fixedPriority = TRUE;
+ sprite->oam.priority = 1;
+ sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
+ }
+ if (task->data[1] == 0 && task->data[4] != 0)
+ {
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_5(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpEffect_6(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
+ {
+ WarpIntoMap();
+ gFieldCallback = FieldCB_LavaridgeGymB1FWarpExit;
+ SetMainCallback2(CB2_LoadMap);
+ DestroyTask(FindTaskIdByFunc(Task_LavaridgeGymB1FWarp));
+ }
+ return FALSE;
+}
+
+static bool8 (*const sLavaridgeGymB1FWarpExitEffectFuncs[])(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite) = {
+ LavaridgeGymB1FWarpExitEffect_1,
+ LavaridgeGymB1FWarpExitEffect_2,
+ LavaridgeGymB1FWarpExitEffect_3,
+ LavaridgeGymB1FWarpExitEffect_4
+};
+
+static void FieldCB_LavaridgeGymB1FWarpExit(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ WarpFadeInScreen();
+ sub_8111CF0();
+ ScriptContext2_Enable();
+ gFieldCallback = NULL;
+ CreateTask(Task_LavaridgeGymB1FWarpExit, 0);
+}
+
+static void Task_LavaridgeGymB1FWarpExit(u8 taskId)
+{
+ while (sLavaridgeGymB1FWarpExitEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId]));
+}
+
+static bool8 LavaridgeGymB1FWarpExitEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ CameraObjectReset2();
+ FreezeObjectEvents();
+ gPlayerAvatar.preventStep = TRUE;
+ objectEvent->invisible = TRUE;
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpExitEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (IsWeatherNotFadingIn())
+ {
+ gFieldEffectArguments[0] = objectEvent->currentCoords.x;
+ gFieldEffectArguments[1] = objectEvent->currentCoords.y;
+ gFieldEffectArguments[2] = sprite->subpriority - 1;
+ gFieldEffectArguments[3] = sprite->oam.priority;
+ task->data[1] = FieldEffectStart(FLDEFF_POP_OUT_OF_ASH);
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpExitEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ sprite = &gSprites[task->data[1]];
+ if (sprite->animCmdIndex > 1)
+ {
+ task->data[0]++;
+ objectEvent->invisible = FALSE;
+ CameraObjectReset1();
+ PlaySE(SE_W091);
+ ObjectEventSetHeldMovement(objectEvent, sub_8064194(DIR_EAST));
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGymB1FWarpExitEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ gPlayerAvatar.preventStep = FALSE;
+ ScriptContext2_Disable();
+ UnfreezeObjectEvents();
+ DestroyTask(FindTaskIdByFunc(Task_LavaridgeGymB1FWarpExit));
+ }
+ return FALSE;
+}
+
+static void Task_LavaridgeGym1FWarp(u8 taskId);
+static bool8 LavaridgeGym1FWarpEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGym1FWarpEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGym1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGym1FWarpEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+static bool8 LavaridgeGym1FWarpEffect_5(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite);
+
+static bool8 (*const sLavaridgeGym1FWarpEffectFuncs[])(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite) = {
+ LavaridgeGym1FWarpEffect_1,
+ LavaridgeGym1FWarpEffect_2,
+ LavaridgeGym1FWarpEffect_3,
+ LavaridgeGym1FWarpEffect_4,
+ LavaridgeGym1FWarpEffect_5
+};
+
+// For the ash puff effect when warping off the B1F ash tiles
+u8 FldEff_LavaridgeGymWarp(void)
+{
+ u8 spriteId;
+ sub_8063BC4((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
+ spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[33], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
+ gSprites[spriteId].oam.priority = gFieldEffectArguments[3];
+ gSprites[spriteId].coordOffsetEnabled = TRUE;
+ return spriteId;
+}
+
+void SpriteCB_LavaridgeGymWarp(struct Sprite * sprite)
+{
+ if (sprite->animEnded)
+ {
+ FieldEffectStop(sprite, FLDEFF_LAVARIDGE_GYM_WARP);
+ }
+}
+
+void StartLavaridgeGym1FWarp(u8 priority)
+{
+ CreateTask(Task_LavaridgeGym1FWarp, priority);
+}
+
+static void Task_LavaridgeGym1FWarp(u8 taskId)
+{
+ while(sLavaridgeGym1FWarpEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId]));
+}
+
+static bool8 LavaridgeGym1FWarpEffect_1(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ FreezeObjectEvents();
+ CameraObjectReset2();
+ gPlayerAvatar.preventStep = TRUE;
+ objectEvent->fixedPriority = TRUE;
+ task->data[0]++;
+ return FALSE;
+}
+
+static bool8 LavaridgeGym1FWarpEffect_2(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ if (task->data[1] > 3)
+ {
+ gFieldEffectArguments[0] = objectEvent->currentCoords.x;
+ gFieldEffectArguments[1] = objectEvent->currentCoords.y;
+ gFieldEffectArguments[2] = sprite->subpriority - 1;
+ gFieldEffectArguments[3] = sprite->oam.priority;
+ task->data[1] = FieldEffectStart(FLDEFF_POP_OUT_OF_ASH);
+ task->data[0]++;
+ } else
+ {
+ task->data[1]++;
+ ObjectEventSetHeldMovement(objectEvent, GetStepInPlaceDelay4AnimId(objectEvent->facingDirection));
+ PlaySE(SE_FU_ZUZUZU);
+ }
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGym1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (gSprites[task->data[1]].animCmdIndex == 2)
+ {
+ objectEvent->invisible = TRUE;
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGym1FWarpEffect_4(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (!FieldEffectActiveListContains(FLDEFF_POP_OUT_OF_ASH))
+ {
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
+ task->data[0]++;
+ }
+ return FALSE;
+}
+
+static bool8 LavaridgeGym1FWarpEffect_5(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
+{
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
+ {
+ WarpIntoMap();
+ gFieldCallback = FieldCB_FallWarpExit;
+ SetMainCallback2(CB2_LoadMap);
+ DestroyTask(FindTaskIdByFunc(Task_LavaridgeGym1FWarp));
+ }
+ return FALSE;
+}
+
+u8 FldEff_PopOutOfAsh(void)
+{
+ u8 spriteId;
+ sub_8063BC4((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
+ spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[32], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
+ gSprites[spriteId].oam.priority = gFieldEffectArguments[3];
+ gSprites[spriteId].coordOffsetEnabled = TRUE;
+ return spriteId;
+}
+
+void SpriteCB_PopOutOfAsh(struct Sprite * sprite)
+{
+ if (sprite->animEnded)
+ {
+ FieldEffectStop(sprite, FLDEFF_POP_OUT_OF_ASH);
+ }
+}
+
+static void Task_DoEscapeRopeFieldEffect(u8 taskId);
+static void EscapeRopeFieldEffect_Step0(struct Task * task);
+static void EscapeRopeFieldEffect_Step1(struct Task * task);
+static u8 sub_808576C(struct ObjectEvent * playerObj, s16 *a1p, s16 *a2p);
+static bool32 sub_80857F0(struct ObjectEvent * playerObj, s16 *a1p, s16 *a2p);
+static void FieldCallback_EscapeRopeExit(void);
+static void Task_DoEscapeRopeExitFieldEffect(u8 taskId);
+static void EscapeRopeExitFieldEffect_Step0(struct Task * task);
+static void EscapeRopeExitFieldEffect_Step1(struct Task * task);
+
+static void (*const gEscapeRopeFieldEffectFuncs[])(struct Task * task) = {
+ EscapeRopeFieldEffect_Step0,
+ EscapeRopeFieldEffect_Step1
+};
+
+void StartEscapeRopeFieldEffect(void)
+{
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ CreateTask(Task_DoEscapeRopeFieldEffect, 80);
+}
+
+static void Task_DoEscapeRopeFieldEffect(u8 taskId)
+{
+ gEscapeRopeFieldEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void EscapeRopeFieldEffect_Step0(struct Task * task)
+{
+ task->data[0]++;
+ task->data[13] = 64;
+ task->data[14] = GetPlayerFacingDirection();
+ task->data[15] = 0;
+}
+
+static void EscapeRopeFieldEffect_Step1(struct Task * task)
+{
+ struct ObjectEvent * playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
+ s16 *data = task->data;
+ sub_808576C(playerObj, &task->data[1], &task->data[2]);
+ if (data[3] < 60)
+ {
+ data[3]++;
+ if (data[3] == 20)
+ {
+ PlaySE(SE_TK_WARPIN);
+ }
+ }
+ else if (data[4] == 0 && !sub_80857F0(playerObj, &task->data[5], &task->data[6]))
+ {
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
+ data[4] = 1;
+ }
+ if (data[4] == 1 && !gPaletteFade.active && BGMusicStopped() == TRUE)
+ {
+ ObjectEventSetDirection(playerObj, task->data[15]);
+ sub_80555E0();
+ WarpIntoMap();
+ gFieldCallback = FieldCallback_EscapeRopeExit;
+ SetMainCallback2(CB2_LoadMap);
+ DestroyTask(FindTaskIdByFunc(Task_DoEscapeRopeFieldEffect));
+ }
+}
+
+static const u8 sUnknown_83CC0E8[] = {
+ [DIR_NONE] = DIR_SOUTH,
+ [DIR_SOUTH] = DIR_WEST,
+ [DIR_WEST] = DIR_NORTH,
+ [DIR_NORTH] = DIR_EAST,
+ [DIR_EAST] = DIR_SOUTH,
+};
+
+static u8 sub_808576C(struct ObjectEvent * playerObj, s16 *delay_p, s16 *stage_p)
+{
+ if (!ObjectEventIsMovementOverridden(playerObj) || ObjectEventClearHeldMovementIfFinished(playerObj))
+ {
+ if (*delay_p != 0 && --(*delay_p) != 0)
+ return playerObj->facingDirection;
+ ObjectEventSetHeldMovement(playerObj, GetFaceDirectionMovementAction(sUnknown_83CC0E8[playerObj->facingDirection]));
+ if (*stage_p < 12)
+ (*stage_p)++;
+ *delay_p = 12 >> (*stage_p); // 12 >> 4 = 0
+ return sUnknown_83CC0E8[playerObj->facingDirection];
+ }
+ return playerObj->facingDirection;
+}
+
+static bool32 sub_80857F0(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p)
+{
+ struct Sprite * sprite = &gSprites[playerObj->spriteId];
+ switch (*state_p)
+ {
+ case 0:
+ CameraObjectReset2();
+ (*state_p)++;
+ // fallthrough
+ case 1:
+ sprite->pos2.y -= 8;
+ (*y_p) -= 8;
+ if (*y_p <= -16)
+ {
+ playerObj->fixedPriority = TRUE;
+ sprite->oam.priority = 1;
+ sprite->subpriority = 0;
+ sprite->subspriteMode = SUBSPRITES_OFF;
+ (*state_p)++;
+ }
+ break;
+ case 2:
+ sprite->pos2.y -= 8;
+ (*y_p) -= 8;
+ if (*y_p <= -88)
+ {
+ (*state_p)++;
+ return FALSE;
+ }
+ break;
+ case 3:
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void (*const sEscapeRopeExitEffectFuncs[])(struct Task * task) = {
+ EscapeRopeExitFieldEffect_Step0,
+ EscapeRopeExitFieldEffect_Step1
+};
+
+static bool32 sub_80858A4(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p, s16 *priority_p, s16 *subpriority_p, s16 *subspriteMode_p)
+{
+ struct Sprite * sprite = &gSprites[playerObj->spriteId];
+ switch (*state_p)
+ {
+ case 0:
+ CameraObjectReset2();
+ *y_p = -88;
+ sprite->pos2.y -= 88;
+ *priority_p = sprite->oam.priority;
+ *subpriority_p = sprite->subpriority;
+ *subspriteMode_p = sprite->subspriteMode;
+ playerObj->fixedPriority = TRUE;
+ sprite->oam.priority = 1;
+ sprite->subpriority = 0;
+ sprite->subspriteMode = SUBSPRITES_OFF;
+ (*state_p)++;
+ // fallthrough
+ case 1:
+ sprite->pos2.y += 4;
+ (*y_p) += 4;
+ if (*y_p >= -16)
+ {
+ sprite->oam.priority = *priority_p;
+ sprite->subpriority = *subpriority_p;
+ sprite->subspriteMode = *subspriteMode_p;
+ (*state_p)++;
+ }
+ break;
+ case 2:
+ sprite->pos2.y += 4;
+ (*y_p) += 4;
+ if (*y_p >= 0)
+ {
+ PlaySE(SE_TK_KASYA);
+ CameraObjectReset1();
+ (*state_p)++;
+ return FALSE;
+ }
+ break;
+ case 3:
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void FieldCallback_EscapeRopeExit(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ WarpFadeInScreen();
+ sub_8111CF0();
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gFieldCallback = NULL;
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
+ CreateTask(Task_DoEscapeRopeExitFieldEffect, 0);
+}
+
+static void Task_DoEscapeRopeExitFieldEffect(u8 taskId)
+{
+ sEscapeRopeExitEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void EscapeRopeExitFieldEffect_Step0(struct Task * task)
+{
+ if (IsWeatherNotFadingIn())
+ {
+ PlaySE(SE_TK_WARPOUT);
+ task->data[15] = GetPlayerFacingDirection();
+ task->data[0]++;
+ }
+}
+
+static void EscapeRopeExitFieldEffect_Step1(struct Task * task)
+{
+ s16 *data = task->data;
+ struct ObjectEvent * playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
+ bool32 finished = sub_80858A4(playerObj, &data[1], &data[2], &data[3], &data[4], &data[5]);
+ playerObj->invisible = FALSE;
+ if (data[6] < 8)
+ data[6]++;
+ else if (data[7] == 0)
+ {
+ data[6]++;
+ data[8] = sub_808576C(playerObj, &data[9], &data[10]);
+ if (data[6] >= 50 && data[8] == data[15])
+ data[7] = 1;
+ }
+ if (!finished && data[8] == data[15] && ObjectEventCheckHeldMovementStatus(playerObj) == TRUE)
+ {
+ playerObj->invisible = FALSE;
+ playerObj->fixedPriority = FALSE;
+ ScriptContext2_Disable();
+ UnfreezeObjectEvents();
+ DestroyTask(FindTaskIdByFunc(Task_DoEscapeRopeExitFieldEffect));
+ }
+}
+
+static void Task_DoTeleportFieldEffect(u8 taskId);
+static void TeleportFieldEffectTask1(struct Task * task);
+static void TeleportFieldEffectTask2(struct Task * task);
+static void TeleportFieldEffectTask3(struct Task * task);
+static void TeleportFieldEffectTask4(struct Task * task);
+static void FieldCallback_TeleportIn(void);
+static void Task_DoTeleportInFieldEffect(u8 taskId);
+static void TeleportInFieldEffectTask1(struct Task * task);
+static void TeleportInFieldEffectTask2(struct Task * task);
+static void TeleportInFieldEffectTask3(struct Task * task);
+
+static void (*const sTeleportEffectFuncs[])(struct Task * ) = {
+ TeleportFieldEffectTask1,
+ TeleportFieldEffectTask2,
+ TeleportFieldEffectTask3,
+ TeleportFieldEffectTask4
+};
+
+void CreateTeleportFieldEffectTask(void)
+{
+ CreateTask(Task_DoTeleportFieldEffect, 0);
+}
+
+static void Task_DoTeleportFieldEffect(u8 taskId)
+{
+ sTeleportEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void TeleportFieldEffectTask1(struct Task * task)
+{
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ CameraObjectReset2();
+ task->data[15] = GetPlayerFacingDirection();
+ task->data[0]++;
+}
+
+static void TeleportFieldEffectTask2(struct Task * task)
+{
+ u8 spinDirections[5] = {
+ [DIR_NONE] = DIR_SOUTH,
+ [DIR_SOUTH] = DIR_WEST,
+ [DIR_WEST] = DIR_NORTH,
+ [DIR_NORTH] = DIR_EAST,
+ [DIR_EAST] = DIR_SOUTH
+ };
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (task->data[1] == 0 || (--task->data[1]) == 0)
+ {
+ ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
+ task->data[1] = 8;
+ task->data[2]++;
+ }
+ if (task->data[2] > 7 && task->data[15] == objectEvent->facingDirection)
+ {
+ task->data[0]++;
+ task->data[1] = 4;
+ task->data[2] = 8;
+ task->data[3] = 1;
+ PlaySE(SE_TK_WARPIN);
+ }
+}
+
+static void TeleportFieldEffectTask3(struct Task * task)
+{
+ u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId];
+ if ((--task->data[1]) <= 0)
+ {
+ task->data[1] = 4;
+ ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
+ }
+ sprite->pos1.y -= task->data[3];
+ task->data[4] += task->data[3];
+ if ((--task->data[2]) <= 0 && (task->data[2] = 4, task->data[3] < 8))
+ {
+ task->data[3] <<= 1;
+ }
+ if (task->data[4] > 8 && (sprite->oam.priority = 1, sprite->subspriteMode != SUBSPRITES_OFF))
+ {
+ sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
+ }
+ if (task->data[4] >= 0xa8)
+ {
+ task->data[0]++;
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
+ }
+}
+
+static void TeleportFieldEffectTask4(struct Task * task)
+{
+ if (!gPaletteFade.active)
+ {
+ if (BGMusicStopped() == TRUE)
+ {
+ copy_saved_warp3_bank_and_enter_x_to_warp1();
+ WarpIntoMap();
+ SetMainCallback2(CB2_LoadMap);
+ gFieldCallback = FieldCallback_TeleportIn;
+ DestroyTask(FindTaskIdByFunc(Task_DoTeleportFieldEffect));
+ }
+ }
+}
+
+static void (*const sTeleportInEffectFuncs[])(struct Task * ) = {
+ TeleportInFieldEffectTask1,
+ TeleportInFieldEffectTask2,
+ TeleportInFieldEffectTask3
+};
+
+static void FieldCallback_TeleportIn(void)
+{
+ Overworld_PlaySpecialMapMusic();
+ WarpFadeInScreen();
+ sub_8111CF0();
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gFieldCallback = NULL;
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
+ CameraObjectReset2();
+ CreateTask(Task_DoTeleportInFieldEffect, 0);
+}
+
+static void Task_DoTeleportInFieldEffect(u8 taskId)
+{
+ sTeleportInEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void TeleportInFieldEffectTask1(struct Task * task)
+{
+ struct Sprite * sprite;
+ s16 centerToCornerVecY;
+ if (IsWeatherNotFadingIn())
+ {
+ sprite = &gSprites[gPlayerAvatar.spriteId];
+ centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
+ sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
+ gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
+ task->data[0]++;
+ task->data[1] = 8;
+ task->data[2] = 1;
+ task->data[14] = sprite->subspriteMode;
+ task->data[15] = GetPlayerFacingDirection();
+ PlaySE(SE_TK_WARPIN);
+ }
+}
+
+static void TeleportInFieldEffectTask2(struct Task * task)
+{
+ u8 spinDirections[5] = {1, 3, 4, 2, 1};
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId];
+ if ((sprite->pos2.y += task->data[1]) >= -8)
+ {
+ if (task->data[13] == 0)
+ {
+ task->data[13]++;
+ objectEvent->triggerGroundEffectsOnMove = TRUE;
+ sprite->subspriteMode = task->data[14];
+ }
+ } else
+ {
+ sprite->oam.priority = 1;
+ if (sprite->subspriteMode != SUBSPRITES_OFF)
+ {
+ sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
+ }
+ }
+ if (sprite->pos2.y >= -0x30 && task->data[1] > 1 && !(sprite->pos2.y & 1))
+ {
+ task->data[1]--;
+ }
+ if ((--task->data[2]) == 0)
+ {
+ task->data[2] = 4;
+ ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
+ }
+ if (sprite->pos2.y >= 0)
+ {
+ sprite->pos2.y = 0;
+ task->data[0]++;
+ task->data[1] = 1;
+ task->data[2] = 0;
+ }
+}
+
+static void TeleportInFieldEffectTask3(struct Task * task)
+{
+ u8 spinDirections[5] = {1, 3, 4, 2, 1};
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if ((--task->data[1]) == 0)
+ {
+ ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
+ task->data[1] = 8;
+ if ((++task->data[2]) > 4 && task->data[14] == objectEvent->facingDirection)
+ {
+ ScriptContext2_Disable();
+ CameraObjectReset1();
+ UnfreezeObjectEvents();
+ DestroyTask(FindTaskIdByFunc(Task_DoTeleportInFieldEffect));
+ }
+ }
+}
+
+static void Task_ShowMon_Outdoors(u8 taskId);
+static void ShowMonEffect_Outdoors_1(struct Task * task);
+static void ShowMonEffect_Outdoors_2(struct Task * task);
+static void ShowMonEffect_Outdoors_3(struct Task * task);
+static void ShowMonEffect_Outdoors_4(struct Task * task);
+static void ShowMonEffect_Outdoors_5(struct Task * task);
+static void ShowMonEffect_Outdoors_6(struct Task * task);
+static void ShowMonEffect_Outdoors_7(struct Task * task);
+static void VBlankCB_ShowMonEffect_Outdoors(void);
+static void LoadFieldMoveStreaksTilemapToVram(u16 screenbase);
+static void Task_ShowMon_Indoors(u8 taskId);
+static void ShowMonEffect_Indoors_1(struct Task * task);
+static void ShowMonEffect_Indoors_2(struct Task * task);
+static void ShowMonEffect_Indoors_3(struct Task * task);
+static void ShowMonEffect_Indoors_4(struct Task * task);
+static void ShowMonEffect_Indoors_5(struct Task * task);
+static void ShowMonEffect_Indoors_6(struct Task * task);
+static void ShowMonEffect_Indoors_7(struct Task * task);
+static void VBlankCB_ShowMonEffect_Indoors(void);
+static void sub_8086728(struct Task * task);
+static bool8 sub_8086738(struct Task * task);
+static bool8 sub_80867F0(struct Task * task);
+static u8 sub_8086860(u32 species, u32 otId, u32 personality);
+static void sub_80868C0(struct Sprite * sprite);
+static void sub_8086904(struct Sprite * sprite);
+static void sub_8086920(struct Sprite * sprite);
+
+static void (*const sShowMonOutdoorsEffectFuncs[])(struct Task * task) = {
+ ShowMonEffect_Outdoors_1,
+ ShowMonEffect_Outdoors_2,
+ ShowMonEffect_Outdoors_3,
+ ShowMonEffect_Outdoors_4,
+ ShowMonEffect_Outdoors_5,
+ ShowMonEffect_Outdoors_6,
+ ShowMonEffect_Outdoors_7
+};
+
+u32 FldEff_FieldMoveShowMon(void)
+{
+ u8 taskId;
+ if (IsMapTypeOutdoors(GetCurrentMapType()) == TRUE)
+ taskId = CreateTask(Task_ShowMon_Outdoors, 0xFF);
+ else
+ taskId = CreateTask(Task_ShowMon_Indoors, 0xFF);
+ gTasks[taskId].data[15] = sub_8086860(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
+ return 0;
+}
+
+u32 FldEff_FieldMoveShowMonInit(void)
+{
+ u32 r6 = gFieldEffectArguments[0] & 0x80000000;
+ u8 partyIdx = gFieldEffectArguments[0];
+ gFieldEffectArguments[0] = GetMonData(&gPlayerParty[partyIdx], MON_DATA_SPECIES);
+ gFieldEffectArguments[1] = GetMonData(&gPlayerParty[partyIdx], MON_DATA_OT_ID);
+ gFieldEffectArguments[2] = GetMonData(&gPlayerParty[partyIdx], MON_DATA_PERSONALITY);
+ gFieldEffectArguments[0] |= r6;
+ FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON);
+ FieldEffectActiveListRemove(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
+ return 0;
+}
+
+static void Task_ShowMon_Outdoors(u8 taskId)
+{
+ sShowMonOutdoorsEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void ShowMonEffect_Outdoors_1(struct Task * task)
+{
+ task->data[11] = GetGpuReg(REG_OFFSET_WININ);
+ task->data[12] = GetGpuReg(REG_OFFSET_WINOUT);
+ StoreWordInTwoHalfwords((u16*)&task->data[13], (u32)gMain.vblankCallback);
+ task->data[1] = WIN_RANGE(0xF0, 0xF1);
+ task->data[2] = WIN_RANGE(0x50, 0x51);
+ task->data[3] = WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR;
+ task->data[4] = WINOUT_WIN01_BG1 | WINOUT_WIN01_BG2 | WINOUT_WIN01_BG3 | WINOUT_WIN01_OBJ | WINOUT_WIN01_CLR;
+ SetGpuReg(REG_OFFSET_WIN0H, task->data[1]);
+ SetGpuReg(REG_OFFSET_WIN0V, task->data[2]);
+ SetGpuReg(REG_OFFSET_WININ, task->data[3]);
+ SetGpuReg(REG_OFFSET_WINOUT, task->data[4]);
+ SetVBlankCallback(VBlankCB_ShowMonEffect_Outdoors);
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Outdoors_2(struct Task * task)
+{
+ u16 charbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 2) << 14);
+ u16 screenbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11);
+ CpuCopy16(sFieldMoveStreaksTiles, (void *)(VRAM + charbase), 0x200);
+ CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
+ LoadPalette(sFieldMoveStreaksPalette, 0xf0, 0x20);
+ LoadFieldMoveStreaksTilemapToVram(screenbase);
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Outdoors_3(struct Task * task)
+{
+ s16 win0h_lo;
+ s16 win0v_lo;
+ s16 win0v_hi;
+ task->data[5] -= 16;
+ win0h_lo = ((u16)task->data[1] >> 8);
+ win0v_lo = ((u16)task->data[2] >> 8);
+ win0v_hi = ((u16)task->data[2] & 0xff);
+ win0h_lo -= 16;
+ win0v_lo -= 2;
+ win0v_hi += 2;
+ if (win0h_lo < 0)
+ {
+ win0h_lo = 0;
+ }
+ if (win0v_lo < 0x28)
+ {
+ win0v_lo = 0x28;
+ }
+ if (win0v_hi > 0x78)
+ {
+ win0v_hi = 0x78;
+ }
+ task->data[1] = WIN_RANGE(win0h_lo, task->data[1] & 0xff);
+ task->data[2] = WIN_RANGE(win0v_lo, win0v_hi);
+ if (win0h_lo == 0 && win0v_lo == 0x28 && win0v_hi == 0x78)
+ {
+ gSprites[task->data[15]].callback = sub_80868C0;
+ task->data[0]++;
+ }
+}
+
+static void ShowMonEffect_Outdoors_4(struct Task * task)
+{
+ task->data[5] -= 16;
+ if (gSprites[task->data[15]].data[7])
+ {
+ task->data[0]++;
+ }
+}
+
+static void ShowMonEffect_Outdoors_5(struct Task * task)
+{
+ s16 win0v_lo;
+ s16 win0v_hi;
+ task->data[5] -= 16;
+ win0v_lo = (task->data[2] >> 8);
+ win0v_hi = (task->data[2] & 0xff);
+ win0v_lo += 6;
+ win0v_hi -= 6;
+ if (win0v_lo > 0x50)
+ {
+ win0v_lo = 0x50;
+ }
+ if (win0v_hi < 0x51)
+ {
+ win0v_hi = 0x51;
+ }
+ task->data[2] = WIN_RANGE(win0v_lo, win0v_hi);
+ if (win0v_lo == 0x50 && win0v_hi == 0x51)
+ {
+ task->data[0]++;
+ }
+}
+
+static void ShowMonEffect_Outdoors_6(struct Task * task)
+{
+ u16 bg0cnt = (GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11;
+ CpuFill32(0, (void *)VRAM + bg0cnt, 0x800);
+ task->data[1] = WIN_RANGE(0x00, 0xf1);
+ task->data[2] = WIN_RANGE(0x00, 0xa1);
+ task->data[3] = task->data[11];
+ task->data[4] = task->data[12];
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Outdoors_7(struct Task * task)
+{
+ IntrCallback callback;
+ LoadWordFromTwoHalfwords((u16 *)&task->data[13], (uintptr_t *)&callback);
+ SetVBlankCallback(callback);
+ ChangeBgX(0, 0, 0);
+ ChangeBgY(0, 0, 0);
+ Menu_LoadStdPal();
+ FreeResourcesAndDestroySprite(&gSprites[task->data[15]], task->data[15]);
+ FieldEffectActiveListRemove(FLDEFF_FIELD_MOVE_SHOW_MON);
+ DestroyTask(FindTaskIdByFunc(Task_ShowMon_Outdoors));
+}
+
+static void VBlankCB_ShowMonEffect_Outdoors(void)
+{
+ IntrCallback callback;
+ struct Task * task = &gTasks[FindTaskIdByFunc(Task_ShowMon_Outdoors)];
+ LoadWordFromTwoHalfwords((u16 *)&task->data[13], (uintptr_t *)&callback);
+ callback();
+ SetGpuReg(REG_OFFSET_WIN0H, task->data[1]);
+ SetGpuReg(REG_OFFSET_WIN0V, task->data[2]);
+ SetGpuReg(REG_OFFSET_WININ, task->data[3]);
+ SetGpuReg(REG_OFFSET_WINOUT, task->data[4]);
+ SetGpuReg(REG_OFFSET_BG0HOFS, task->data[5]);
+ SetGpuReg(REG_OFFSET_BG0VOFS, task->data[6]);
+}
+
+static void LoadFieldMoveStreaksTilemapToVram(u16 screenbase)
+{
+ u16 i;
+ u16 *dest;
+ dest = (u16 *)(VRAM + (10 * 32) + screenbase);
+ for (i = 0; i < (10 * 32); i++, dest++)
+ {
+ *dest = sFieldMoveStreaksTilemap[i] | METATILE_ELEVATION_MASK;
+ }
+}
+
+static void (*const sShowMonIndoorsEffectFuncs[])(struct Task * ) = {
+ ShowMonEffect_Indoors_1,
+ ShowMonEffect_Indoors_2,
+ ShowMonEffect_Indoors_3,
+ ShowMonEffect_Indoors_4,
+ ShowMonEffect_Indoors_5,
+ ShowMonEffect_Indoors_6,
+ ShowMonEffect_Indoors_7
+};
+
+static void Task_ShowMon_Indoors(u8 taskId)
+{
+ sShowMonIndoorsEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void ShowMonEffect_Indoors_1(struct Task * task)
+{
+ SetGpuReg(REG_OFFSET_BG0HOFS, task->data[1]);
+ SetGpuReg(REG_OFFSET_BG0VOFS, task->data[2]);
+ StoreWordInTwoHalfwords((u16 *)&task->data[13], (u32)gMain.vblankCallback);
+ SetVBlankCallback(VBlankCB_ShowMonEffect_Indoors);
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Indoors_2(struct Task * task)
+{
+ u16 charbase;
+ u16 screenbase;
+ charbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 2) << 14);
+ screenbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11);
+ task->data[12] = screenbase;
+ CpuCopy16(sDarknessFieldMoveStreaksTiles, (void *)(VRAM + charbase), 0x80);
+ CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
+ LoadPalette(sDarknessFieldMoveStreaksPalette, 0xf0, 0x20);
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Indoors_3(struct Task * task)
+{
+ if (sub_8086738(task))
+ {
+ task->data[5] = GetGpuReg(REG_OFFSET_WININ);
+ SetGpuReg(REG_OFFSET_WININ, (task->data[5] & 0xFF) | WININ_WIN1_BG0 | WININ_WIN1_OBJ);
+ SetGpuReg(REG_OFFSET_WIN1H, WIN_RANGE(0x00, 0xf0));
+ SetGpuReg(REG_OFFSET_WIN1V, WIN_RANGE(0x28, 0x78));
+ gSprites[task->data[15]].callback = sub_80868C0;
+ task->data[0]++;
+ }
+ sub_8086728(task);
+}
+
+static void ShowMonEffect_Indoors_4(struct Task * task)
+{
+ sub_8086728(task);
+ if (gSprites[task->data[15]].data[7])
+ {
+ task->data[0]++;
+ }
+}
+
+static void ShowMonEffect_Indoors_5(struct Task * task)
+{
+ sub_8086728(task);
+ task->data[3] = task->data[1] & 7;
+ task->data[4] = 0;
+ SetGpuReg(REG_OFFSET_WIN1H, WIN_RANGE(0xff, 0xff));
+ SetGpuReg(REG_OFFSET_WIN1V, WIN_RANGE(0xff, 0xff));
+ SetGpuReg(REG_OFFSET_WININ, task->data[5]);
+ task->data[0]++;
+}
+
+static void ShowMonEffect_Indoors_6(struct Task * task)
+{
+ sub_8086728(task);
+ if (sub_80867F0(task))
+ {
+ task->data[0]++;
+ }
+}
+
+static void ShowMonEffect_Indoors_7(struct Task * task)
+{
+ IntrCallback intrCallback;
+ u16 charbase;
+ charbase = (GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11;
+ CpuFill32(0, (void *)VRAM + charbase, 0x800);
+ LoadWordFromTwoHalfwords((u16 *)&task->data[13], (uintptr_t *)&intrCallback);
+ SetVBlankCallback(intrCallback);
+ ChangeBgX(0, 0, 0);
+ ChangeBgY(0, 0, 0);
+ Menu_LoadStdPal();
+ FreeResourcesAndDestroySprite(&gSprites[task->data[15]], task->data[15]);
+ FieldEffectActiveListRemove(FLDEFF_FIELD_MOVE_SHOW_MON);
+ DestroyTask(FindTaskIdByFunc(Task_ShowMon_Indoors));
+}
+
+static void VBlankCB_ShowMonEffect_Indoors(void)
+{
+ IntrCallback intrCallback;
+ struct Task * task;
+ task = &gTasks[FindTaskIdByFunc(Task_ShowMon_Indoors)];
+ LoadWordFromTwoHalfwords((u16 *)&task->data[13], (uintptr_t *)&intrCallback);
+ intrCallback();
+ SetGpuReg(REG_OFFSET_BG0HOFS, task->data[1]);
+ SetGpuReg(REG_OFFSET_BG0VOFS, task->data[2]);
+}
+
+static void sub_8086728(struct Task * task)
+{
+ task->data[1] -= 16;
+ task->data[3] += 16;
+}
+
+static bool8 sub_8086738(struct Task * task)
+{
+ u16 i;
+ u16 srcOffs;
+ u16 dstOffs;
+ u16 *dest;
+ if (task->data[4] >= 32)
+ {
+ return TRUE;
+ }
+ dstOffs = (task->data[3] >> 3) & 0x1f;
+ if (dstOffs >= task->data[4])
+ {
+ dstOffs = (32 - dstOffs) & 0x1f;
+ srcOffs = (32 - task->data[4]) & 0x1f;
+ dest = (u16 *)(VRAM + 0x140 + (u16)task->data[12]);
+ for (i = 0; i < 10; i++)
+ {
+ dest[dstOffs + i * 32] = sDarknessFieldMoveStreaksTilemap[srcOffs + i * 32];
+ dest[dstOffs + i * 32] |= 0xf000;
+
+ dest[((dstOffs + 1) & 0x1f) + i * 32] = sDarknessFieldMoveStreaksTilemap[((srcOffs + 1) & 0x1f) + i * 32] | 0xf000;
+ dest[((dstOffs + 1) & 0x1f) + i * 32] |= 0xf000;
+ }
+ task->data[4] += 2;
+ }
+ return FALSE;
+}
+
+static bool8 sub_80867F0(struct Task * task)
+{
+ u16 i;
+ u16 dstOffs;
+ u16 *dest;
+ if (task->data[4] >= 32)
+ {
+ return TRUE;
+ }
+ dstOffs = task->data[3] >> 3;
+ if (dstOffs >= task->data[4])
+ {
+ dstOffs = (task->data[1] >> 3) & 0x1f;
+ dest = (u16 *)(VRAM + 0x140 + (u16)task->data[12]);
+ for (i = 0; i < 10; i++)
+ {
+ dest[dstOffs + i * 32] = 0xf000;
+ dest[((dstOffs + 1) & 0x1f) + i * 32] = 0xf000;
+ }
+ task->data[4] += 2;
+ }
+ return FALSE;
+}
+
+static u8 sub_8086860(u32 species, u32 otId, u32 personality)
+{
+ bool16 playCry;
+ u8 monSprite;
+ struct Sprite * sprite;
+ playCry = (species & 0x80000000) >> 16;
+ species &= 0x7fffffff;
+ monSprite = CreateMonSprite_FieldMove(species, otId, personality, 0x140, 0x50, 0);
+ sprite = &gSprites[monSprite];
+ sprite->callback = SpriteCallbackDummy;
+ sprite->oam.priority = 0;
+ sprite->data[0] = species;
+ sprite->data[6] = playCry;
+ return monSprite;
+}
+
+static void sub_80868C0(struct Sprite * sprite)
+{
+ if ((sprite->pos1.x -= 20) <= 0x78)
+ {
+ sprite->pos1.x = 0x78;
+ sprite->data[1] = 30;
+ sprite->callback = sub_8086904;
+ if (sprite->data[6])
+ {
+ PlayCry2(sprite->data[0], 0, 0x7d, 0xa);
+ }
+ else
+ {
+ PlayCry1(sprite->data[0], 0);
+ }
+ }
+}
+
+static void sub_8086904(struct Sprite * sprite)
+{
+ if ((--sprite->data[1]) == 0)
+ {
+ sprite->callback = sub_8086920;
+ }
+}
+
+static void sub_8086920(struct Sprite * sprite)
+{
+ if (sprite->pos1.x < -0x40)
+ {
+ sprite->data[7] = 1;
+ }
+ else
+ {
+ sprite->pos1.x -= 20;
+ }
+}
+
+static void Task_FldEffUseSurf(u8 taskId);
+static void UseSurfEffect_1(struct Task * task);
+static void UseSurfEffect_2(struct Task * task);
+static void UseSurfEffect_3(struct Task * task);
+static void UseSurfEffect_4(struct Task * task);
+static void UseSurfEffect_5(struct Task * task);
+
+static void (*const sUseSurfEffectFuncs[])(struct Task * ) = {
+ UseSurfEffect_1,
+ UseSurfEffect_2,
+ UseSurfEffect_3,
+ UseSurfEffect_4,
+ UseSurfEffect_5,
+};
+
+u8 FldEff_UseSurf(void)
+{
+ u8 taskId = CreateTask(Task_FldEffUseSurf, 0xff);
+ gTasks[taskId].data[15] = gFieldEffectArguments[0];
+ sav1_reset_battle_music_maybe();
+ if (sub_8056124(MUS_NAMINORI))
+ Overworld_ChangeMusicTo(MUS_NAMINORI);
+ return FALSE;
+}
+
+static void Task_FldEffUseSurf(u8 taskId)
+{
+ sUseSurfEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void UseSurfEffect_1(struct Task * task)
+{
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gPlayerAvatar.preventStep = TRUE;
+ SetPlayerAvatarStateMask(8);
+ PlayerGetDestCoords(&task->data[1], &task->data[2]);
+ MoveCoords(gObjectEvents[gPlayerAvatar.objectEventId].placeholder18, &task->data[1], &task->data[2]);
+ task->data[0]++;
+}
+
+static void UseSurfEffect_2(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (!ObjectEventIsMovementOverridden(objectEvent) || ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ sub_805CB70();
+ ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
+ task->data[0]++;
+ }
+}
+
+static void UseSurfEffect_3(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventCheckHeldMovementStatus(objectEvent))
+ {
+ gFieldEffectArguments[0] = task->data[15] | 0x80000000;
+ FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
+ task->data[0]++;
+ }
+}
+
+static void UseSurfEffect_4(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
+ {
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
+ ObjectEventClearHeldMovementIfFinished(objectEvent);
+ ObjectEventSetHeldMovement(objectEvent, sub_80641C0(objectEvent->placeholder18));
+ gFieldEffectArguments[0] = task->data[1];
+ gFieldEffectArguments[1] = task->data[2];
+ gFieldEffectArguments[2] = gPlayerAvatar.objectEventId;
+ objectEvent->mapobj_unk_1A = FieldEffectStart(FLDEFF_SURF_BLOB);
+ task->data[0]++;
+ }
+}
+
+static void UseSurfEffect_5(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ gPlayerAvatar.preventStep = FALSE;
+ gPlayerAvatar.flags &= 0xdf;
+ ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->placeholder18));
+ sub_80DC44C(objectEvent->mapobj_unk_1A, 1);
+ UnfreezeObjectEvents();
+ ScriptContext2_Disable();
+ FieldEffectActiveListRemove(FLDEFF_USE_SURF);
+ DestroyTask(FindTaskIdByFunc(Task_FldEffUseSurf));
+ HelpSystem_SetSomeVariable2(22);
+ }
+}
+
+static void Task_FldEffUseVsSeeker(u8 taskId);
+static void UseVsSeekerEffect_1(struct Task * task);
+static void UseVsSeekerEffect_2(struct Task * task);
+static void UseVsSeekerEffect_3(struct Task * task);
+static void UseVsSeekerEffect_4(struct Task * task);
+
+static void (*const sUseVsSeekerEffectFuncs[])(struct Task * task) = {
+ UseVsSeekerEffect_1,
+ UseVsSeekerEffect_2,
+ UseVsSeekerEffect_3,
+ UseVsSeekerEffect_4
+};
+
+u32 FldEff_UseVsSeeker(void)
+{
+ if (gQuestLogState == QL_STATE_1)
+ sub_811278C(8, 89);
+ CreateTask(Task_FldEffUseVsSeeker, 0xFF);
+ return 0;
+}
+
+static void Task_FldEffUseVsSeeker(u8 taskId)
+{
+ sUseVsSeekerEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void UseVsSeekerEffect_1(struct Task * task)
+{
+ ScriptContext2_Enable();
+ FreezeObjectEvents();
+ gPlayerAvatar.preventStep = TRUE;
+ task->data[0]++;
+}
+
+static void UseVsSeekerEffect_2(struct Task * task)
+{
+ struct ObjectEvent * playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (!ObjectEventIsMovementOverridden(playerObj) || ObjectEventClearHeldMovementIfFinished(playerObj))
+ {
+ sub_805CBE8();
+ ObjectEventSetHeldMovement(playerObj, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
+ task->data[0]++;
+ }
+}
+
+static void UseVsSeekerEffect_3(struct Task * task)
+{
+ struct ObjectEvent * playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventClearHeldMovementIfFinished(playerObj))
+ {
+ if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_ACRO_BIKE | PLAYER_AVATAR_FLAG_MACH_BIKE))
+ ObjectEventSetGraphicsId(playerObj, GetPlayerAvatarGraphicsIdByStateId(1));
+ else if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
+ ObjectEventSetGraphicsId(playerObj, GetPlayerAvatarGraphicsIdByStateId(2));
+ else
+ ObjectEventSetGraphicsId(playerObj, GetPlayerAvatarGraphicsIdByStateId(0));
+ ObjectEventForceSetSpecialAnim(playerObj, GetFaceDirectionMovementAction(playerObj->facingDirection));
+ task->data[0]++;
+ }
+}
+
+static void UseVsSeekerEffect_4(struct Task * task)
+{
+ struct ObjectEvent * playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventClearHeldMovementIfFinished(playerObj))
+ {
+ gPlayerAvatar.preventStep = FALSE;
+ FieldEffectActiveListRemove(FLDEFF_USE_VS_SEEKER);
+ DestroyTask(FindTaskIdByFunc(Task_FldEffUseVsSeeker));
+ }
+}
+
+static void sub_8086D94(struct Sprite * sprite);
+
+u8 FldEff_NpcFlyOut(void)
+{
+ u8 spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[26], 0x78, 0, 1);
+ struct Sprite * sprite = &gSprites[spriteId];
+
+ sprite->oam.paletteNum = 0;
+ sprite->oam.priority = 1;
+ sprite->callback = sub_8086D94;
+ sprite->data[1] = gFieldEffectArguments[0];
+ PlaySE(SE_W019);
+ return spriteId;
+}
+
+static void sub_8086D94(struct Sprite * sprite)
+{
+ struct Sprite * npcSprite;
+
+ sprite->pos2.x = Cos(sprite->data[2], 0x8c);
+ sprite->pos2.y = Sin(sprite->data[2], 0x48);
+ sprite->data[2] = (sprite->data[2] + 4) & 0xff;
+ if (sprite->data[0])
+ {
+ npcSprite = &gSprites[sprite->data[1]];
+ npcSprite->coordOffsetEnabled = FALSE;
+ npcSprite->pos1.x = sprite->pos1.x + sprite->pos2.x;
+ npcSprite->pos1.y = sprite->pos1.y + sprite->pos2.y - 8;
+ npcSprite->pos2.x = 0;
+ npcSprite->pos2.y = 0;
+ }
+ if (sprite->data[2] >= 0x80)
+ {
+ FieldEffectStop(sprite, FLDEFF_NPCFLY_OUT);
+ }
+}
+
+static void Task_UseFly(u8 taskId);
+static void UseFlyEffect_1(struct Task * task);
+static void UseFlyEffect_2(struct Task * task);
+static void UseFlyEffect_3(struct Task * task);
+static void UseFlyEffect_4(struct Task * task);
+static void UseFlyEffect_5(struct Task * task);
+static void UseFlyEffect_6(struct Task * task);
+static void UseFlyEffect_7(struct Task * task);
+static void UseFlyEffect_8(struct Task * task);
+static void UseFlyEffect_9(struct Task * task);
+static u8 sub_8087168(void);
+static bool8 sub_80871AC(u8 flyBlobSpriteId);
+static void sub_80871C8(u8 flyBlobSpriteId);
+static void sub_8087204(u8 flyBlobSpriteId, u8 playerSpriteId);
+static void sub_8087220(struct Sprite * sprite);
+static void sub_80872F0(struct Sprite * sprite);
+static void sub_80877FC(struct Sprite * sprite, u8 affineAnimId);
+static void sub_8087828(struct Sprite * sprite);
+
+static void (*const sUseFlyEffectFuncs[])(struct Task * ) = {
+ UseFlyEffect_1,
+ UseFlyEffect_2,
+ UseFlyEffect_3,
+ UseFlyEffect_4,
+ UseFlyEffect_5,
+ UseFlyEffect_6,
+ UseFlyEffect_7,
+ UseFlyEffect_8,
+ UseFlyEffect_9
+};
+
+u8 FldEff_UseFly(void)
+{
+ u8 taskId = CreateTask(Task_UseFly, 0xfe);
+ gTasks[taskId].data[1] = gFieldEffectArguments[0];
+ return 0;
+}
+
+static void Task_UseFly(u8 taskId)
+{
+ sUseFlyEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void UseFlyEffect_1(struct Task * task)
+{
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (!ObjectEventIsMovementOverridden(objectEvent) || ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ task->data[15] = gPlayerAvatar.flags;
+ gPlayerAvatar.preventStep = TRUE;
+ SetPlayerAvatarStateMask(1);
+ sub_805CB70();
+ ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
+ task->data[0]++;
+ }
+}
+
+static void UseFlyEffect_2(struct Task * task)
+{
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ task->data[0]++;
+ gFieldEffectArguments[0] = task->data[1];
+ FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
+ }
+}
+
+static void UseFlyEffect_3(struct Task * task)
+{
+ if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
+ {
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (task->data[15] & 0x08)
+ {
+ sub_80DC44C(objectEvent->mapobj_unk_1A, 2);
+ sub_80DC478(objectEvent->mapobj_unk_1A, 0);
+ }
+ task->data[1] = sub_8087168();
+ task->data[0]++;
+ }
+}
+
+static void UseFlyEffect_4(struct Task * task)
+{
+ if (sub_80871AC(task->data[1]))
+ {
+ task->data[0]++;
+ task->data[2] = 16;
+ SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_ON_FOOT);
+ ObjectEventSetHeldMovement(&gObjectEvents[gPlayerAvatar.objectEventId], MOVEMENT_ACTION_FACE_LEFT);
+ }
+}
+
+static void UseFlyEffect_5(struct Task * task)
+{
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if ((task->data[2] == 0 || (--task->data[2]) == 0) && ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ task->data[0]++;
+ PlaySE(SE_W019);
+ sub_80871C8(task->data[1]);
+ }
+}
+
+static void UseFlyEffect_6(struct Task * task)
+{
+ if ((++task->data[2]) >= 8)
+ {
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
+ StartSpriteAnim(&gSprites[objectEvent->spriteId], 0x16);
+ objectEvent->inanimate = TRUE;
+ ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_JUMP_IN_PLACE_LEFT);
+ task->data[0]++;
+ task->data[2] = 0;
+ }
+}
+
+static void UseFlyEffect_7(struct Task * task)
+{
+ if ((++task->data[2]) >= 10)
+ {
+ struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ ObjectEventClearAnimIfSpecialAnimActive(objectEvent);
+ objectEvent->inanimate = FALSE;
+ objectEvent->hasShadow = FALSE;
+ sub_8087204(task->data[1], objectEvent->spriteId);
+ StartSpriteAnim(&gSprites[task->data[1]], gSaveBlock2Ptr->playerGender * 2 + 1);
+ sub_80877FC(&gSprites[task->data[1]], 0);
+ gSprites[task->data[1]].callback = sub_8087828;
+ CameraObjectReset2();
+ task->data[0]++;
+ }
+}
+
+static void UseFlyEffect_8(struct Task * task)
+{
+ if (sub_80871AC(task->data[1]))
+ {
+ WarpFadeOutScreen();
+ task->data[0]++;
+ }
+}
+
+static void UseFlyEffect_9(struct Task * task)
+{
+ if (!gPaletteFade.active)
+ {
+ FieldEffectActiveListRemove(FLDEFF_USE_FLY);
+ DestroyTask(FindTaskIdByFunc(Task_UseFly));
+ }
+}
+
+static u8 sub_8087168(void)
+{
+ u8 spriteId;
+ struct Sprite * sprite;
+ spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[26], 0xff, 0xb4, 0x1);
+ sprite = &gSprites[spriteId];
+ sprite->oam.paletteNum = 0;
+ sprite->oam.priority = 1;
+ sprite->callback = sub_8087220;
+ return spriteId;
+}
+
+static u8 sub_80871AC(u8 spriteId)
+{
+ return gSprites[spriteId].data[7];
+}
+
+static void sub_80871C8(u8 spriteId)
+{
+ struct Sprite * sprite;
+ sprite = &gSprites[spriteId];
+ sprite->callback = sub_80872F0;
+ sprite->pos1.x = 0x78;
+ sprite->pos1.y = 0x00;
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ memset(&sprite->data[0], 0, 8 * sizeof(u16) /* zero all data cells */);
+ sprite->data[6] = 0x40;
+}
+
+static void sub_8087204(u8 a0, u8 a1)
+{
+ gSprites[a0].data[6] = a1;
+}
+
+static const union AffineAnimCmd sUnknown_83CC19C[] = {
+ AFFINEANIMCMD_FRAME( 8, 8, 226, 0),
+ AFFINEANIMCMD_FRAME(28, 28, 0, 30),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sUnknown_83CC1B4[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 64, 0),
+ AFFINEANIMCMD_FRAME(-10, -10, 0, 22),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd *const sUnknown_83CC1CC[] = {
+ sUnknown_83CC19C,
+ sUnknown_83CC1B4
+};
+
+static void sub_8087220(struct Sprite * sprite)
+{
+ if (sprite->data[7] == 0)
+ {
+ if (sprite->data[0] == 0)
+ {
+ sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE;
+ sprite->affineAnims = sUnknown_83CC1CC;
+ InitSpriteAffineAnim(sprite);
+ StartSpriteAffineAnim(sprite, 0);
+ if (gSaveBlock2Ptr->playerGender == MALE)
+ sprite->pos1.x = 0x80;
+ else
+ sprite->pos1.x = 0x76;
+ sprite->pos1.y = -0x30;
+ sprite->data[0]++;
+ sprite->data[1] = 0x40;
+ sprite->data[2] = 0x100;
+ }
+ sprite->data[1] += (sprite->data[2] >> 8);
+ sprite->pos2.x = Cos(sprite->data[1], 0x78);
+ sprite->pos2.y = Sin(sprite->data[1], 0x78);
+ if (sprite->data[2] < 0x800)
+ {
+ sprite->data[2] += 0x60;
+ }
+ if (sprite->data[1] > 0x81)
+ {
+ sprite->data[7]++;
+ sprite->oam.affineMode = ST_OAM_AFFINE_OFF;
+ FreeOamMatrix(sprite->oam.matrixNum);
+ CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, ST_OAM_AFFINE_OFF);
+ }
+ }
+}
+
+static void sub_80872F0(struct Sprite * sprite)
+{
+ sprite->pos2.x = Cos(sprite->data[2], 0x8c);
+ sprite->pos2.y = Sin(sprite->data[2], 0x48);
+ sprite->data[2] = (sprite->data[2] + 4) & 0xff;
+ if (sprite->data[6] != MAX_SPRITES)
+ {
+ struct Sprite * sprite1 = &gSprites[sprite->data[6]];
+ sprite1->coordOffsetEnabled = FALSE;
+ sprite1->pos1.x = sprite->pos1.x + sprite->pos2.x;
+ sprite1->pos1.y = sprite->pos1.y + sprite->pos2.y - 8;
+ sprite1->pos2.x = 0;
+ sprite1->pos2.y = 0;
+ }
+ if (sprite->data[2] >= 0x80)
+ {
+ sprite->data[7] = 1;
+ }
+}
+
+static void sub_8087364(struct Sprite * sprite)
+{
+ if (sprite->data[7] == 0)
+ {
+ if (sprite->data[0] == 0)
+ {
+ sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE;
+ sprite->affineAnims = sUnknown_83CC1CC;
+ InitSpriteAffineAnim(sprite);
+ StartSpriteAffineAnim(sprite, 1);
+ if (gSaveBlock2Ptr->playerGender == MALE)
+ sprite->pos1.x = 0x70;
+ else
+ sprite->pos1.x = 0x64;
+ sprite->pos1.y = -0x20;
+ sprite->data[0]++;
+ sprite->data[1] = 0xf0;
+ sprite->data[2] = 0x800;
+ sprite->data[4] = 0x80;
+ }
+ sprite->data[1] += sprite->data[2] >> 8;
+ sprite->data[3] += sprite->data[2] >> 8;
+ sprite->data[1] &= 0xff;
+ sprite->pos2.x = Cos(sprite->data[1], 0x20);
+ sprite->pos2.y = Sin(sprite->data[1], 0x78);
+ if (sprite->data[2] > 0x100)
+ {
+ sprite->data[2] -= sprite->data[4];
+ }
+ if (sprite->data[4] < 0x100)
+ {
+ sprite->data[4] += 24;
+ }
+ if (sprite->data[2] < 0x100)
+ {
+ sprite->data[2] = 0x100;
+ }
+ if (sprite->data[3] >= 60)
+ {
+ sprite->data[7]++;
+ sprite->oam.affineMode = ST_OAM_AFFINE_OFF;
+ FreeOamMatrix(sprite->oam.matrixNum);
+ sprite->invisible = TRUE;
+ }
+ }
+}
+
+static void sub_8087458(u8 spriteId)
+{
+ sub_80871C8(spriteId);
+ gSprites[spriteId].callback = sub_8087364;
+}
+
+static void Task_FldEffFlyIn(u8 taskId);
+static void FlyInEffect_1(struct Task * task);
+static void FlyInEffect_2(struct Task * task);
+static void FlyInEffect_3(struct Task * task);
+static void FlyInEffect_4(struct Task * task);
+static void FlyInEffect_5(struct Task * task);
+static void FlyInEffect_6(struct Task * task);
+static void FlyInEffect_7(struct Task * task);
+static void sub_80878C0(struct Sprite * sprite);
+
+static void (*const sFlyInEffectFuncs[])(struct Task * task) = {
+ FlyInEffect_1,
+ FlyInEffect_2,
+ FlyInEffect_3,
+ FlyInEffect_4,
+ FlyInEffect_5,
+ FlyInEffect_6,
+ FlyInEffect_7
+};
+
+u32 FldEff_FlyIn(void)
+{
+ CreateTask(Task_FldEffFlyIn, 0xfe);
+ return 0;
+}
+
+static void Task_FldEffFlyIn(u8 taskId)
+{
+ sFlyInEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
+}
+
+static void FlyInEffect_1(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ if (!ObjectEventIsMovementOverridden(objectEvent) || ObjectEventClearHeldMovementIfFinished(objectEvent))
+ {
+ task->data[0]++;
+ task->data[2] = 33;
+ task->data[15] = gPlayerAvatar.flags;
+ gPlayerAvatar.preventStep = TRUE;
+ SetPlayerAvatarStateMask(0x01);
+ if (task->data[15] & 0x08)
+ {
+ sub_80DC44C(objectEvent->mapobj_unk_1A, 0);
+ }
+ ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
+ CameraObjectReset2();
+ ObjectEventTurn(objectEvent, DIR_WEST);
+ StartSpriteAnim(&gSprites[objectEvent->spriteId], 0x16);
+ objectEvent->invisible = FALSE;
+ task->data[1] = sub_8087168();
+ sub_80871C8(task->data[1]);
+ sub_8087204(task->data[1], objectEvent->spriteId);
+ StartSpriteAnim(&gSprites[task->data[1]], gSaveBlock2Ptr->playerGender * 2 + 2);
+ sub_80877FC(&gSprites[task->data[1]], 1);
+ gSprites[task->data[1]].callback = sub_8087828;
+ }
+}
+
+static void FlyInEffect_2(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ struct Sprite * sprite;
+ sub_80878C0(&gSprites[task->data[1]]);
+ if (task->data[2] == 0 || (--task->data[2]) == 0)
+ {
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ sprite = &gSprites[objectEvent->spriteId];
+ sub_8087204(task->data[1], 0x40);
+ sprite->pos1.x += sprite->pos2.x;
+ sprite->pos1.y += sprite->pos2.y;
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ task->data[0]++;
+ task->data[2] = 0;
+ }
+}
+
+static void FlyInEffect_3(struct Task * task)
+{
+ s16 gUnknown_83CC1F0[18] = {
+ -2,
+ -4,
+ -5,
+ -6,
+ -7,
+ -8,
+ -8,
+ -8,
+ -7,
+ -7,
+ -6,
+ -5,
+ -3,
+ -2,
+ 0,
+ 2,
+ 4,
+ 8
+ };
+ struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId];
+ sprite->pos2.y = gUnknown_83CC1F0[task->data[2]];
+ if ((++task->data[2]) >= 18)
+ {
+ task->data[0]++;
+ }
+}
+
+static void FlyInEffect_4(struct Task * task)
+{
+ struct ObjectEvent * objectEvent;
+ struct Sprite * sprite;
+ if (sub_80871AC(task->data[1]))
+ {
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ sprite = &gSprites[objectEvent->spriteId];
+ objectEvent->inanimate = FALSE;
+ sub_805F724(objectEvent, objectEvent->currentCoords.x, objectEvent->currentCoords.y);
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ sprite->coordOffsetEnabled = TRUE;
+ sub_805CB70();
+ ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
+ task->data[0]++;
+ }
+}
+
+static void FlyInEffect_5(struct Task * task)
+{
+ if (ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gPlayerAvatar.objectEventId]))
+ {
+ task->data[0]++;
+ sub_8087458(task->data[1]);
+ }
+}
+
+static void FlyInEffect_6(struct Task * task)
+{
+ if (sub_80871AC(task->data[1]))
+ {
+ DestroySprite(&gSprites[task->data[1]]);
+ task->data[0]++;
+ task->data[1] = 0x10;
+ }
+}
+
+static void FlyInEffect_7(struct Task * task)
+{
+ u8 state;
+ struct ObjectEvent * objectEvent;
+ if ((--task->data[1]) == 0)
+ {
+ objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
+ state = 0;
+ if (task->data[15] & 0x08)
+ {
+ state = 2;
+ sub_80DC44C(objectEvent->mapobj_unk_1A, 1);
+ }
+ ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(state));
+ ObjectEventTurn(objectEvent, DIR_SOUTH);
+ gPlayerAvatar.flags = task->data[15];
+ gPlayerAvatar.preventStep = FALSE;
+ FieldEffectActiveListRemove(FLDEFF_FLY_IN);
+ DestroyTask(FindTaskIdByFunc(Task_FldEffFlyIn));
+ }
+}
+
+static const union AffineAnimCmd sUnknown_83CC214[] = {
+ AFFINEANIMCMD_FRAME(24, 24, 0, 1),
+ AFFINEANIMCMD_JUMP(0)
+};
+
+static const union AffineAnimCmd sUnknown_83CC224[] = {
+ AFFINEANIMCMD_FRAME(512, 512, 0, 1),
+ AFFINEANIMCMD_FRAME(-16, -16, 0, 1),
+ AFFINEANIMCMD_JUMP(1)
+};
+
+static const union AffineAnimCmd *const sUnknown_83CC23C[] = {
+ sUnknown_83CC214,
+ sUnknown_83CC224
+};
+
+static void sub_80877FC(struct Sprite * sprite, u8 affineAnimId)
+{
+ sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE;
+ sprite->affineAnims = sUnknown_83CC23C;
+ InitSpriteAffineAnim(sprite);
+ StartSpriteAffineAnim(sprite, affineAnimId);
+}
+
+static void sub_8087828(struct Sprite * sprite)
+{
+ struct Sprite * sprite2;
+ sprite->pos2.x = Cos(sprite->data[2], 0xB4);
+ sprite->pos2.y = Sin(sprite->data[2], 0x48);
+ sprite->data[2] += 2;
+ sprite->data[2] &= 0xFF;
+ if (sprite->data[6] != MAX_SPRITES)
+ {
+ sprite2 = &gSprites[sprite->data[6]];
+ sprite2->coordOffsetEnabled = FALSE;
+ sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x;
+ sprite2->pos1.y = sprite->pos1.y + sprite->pos2.y - 8;
+ sprite2->pos2.x = 0;
+ sprite2->pos2.y = 0;
+ }
+ if (sprite->data[2] >= 0x80)
+ {
+ sprite->data[7] = 1;
+ sprite->oam.affineMode = ST_OAM_AFFINE_OFF;
+ FreeOamMatrix(sprite->oam.matrixNum);
+ CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, ST_OAM_AFFINE_OFF);
+ }
+}
+
+static void sub_80878C0(struct Sprite * sprite)
+{
+ if (sprite->oam.affineMode != ST_OAM_AFFINE_OFF)
+ {
+ if (gOamMatrices[sprite->oam.matrixNum].a == 0x100 || gOamMatrices[sprite->oam.matrixNum].d == 0x100)
+ {
+ sprite->oam.affineMode = ST_OAM_AFFINE_OFF;
+ FreeOamMatrix(sprite->oam.matrixNum);
+ CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, ST_OAM_AFFINE_OFF);
+ StartSpriteAnim(sprite, 0);
+ sprite->callback = sub_80872F0;
+ }
+ }
+}
+
+static void Task_MoveDeoxysRock_Step(u8 taskId);
+
+u32 FldEff_MoveDeoxysRock(void)
+{
+ u8 taskId;
+ u8 objectEventIdBuffer;
+ s32 x;
+ s32 y;
+ struct ObjectEvent * objectEvent;
+ if (!TryGetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2], &objectEventIdBuffer))
+ {
+ objectEvent = &gObjectEvents[objectEventIdBuffer];
+ x = objectEvent->currentCoords.x - 7;
+ y = objectEvent->currentCoords.y - 7;
+ x = (gFieldEffectArguments[3] - x) * 16;
+ y = (gFieldEffectArguments[4] - y) * 16;
+ npc_coords_shift(objectEvent, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7);
+ taskId = CreateTask(Task_MoveDeoxysRock_Step, 0x50);
+ gTasks[taskId].data[1] = objectEvent->spriteId;
+ gTasks[taskId].data[2] = gSprites[objectEvent->spriteId].pos1.x + x;
+ gTasks[taskId].data[3] = gSprites[objectEvent->spriteId].pos1.y + y;
+ gTasks[taskId].data[8] = gFieldEffectArguments[5];
+ gTasks[taskId].data[9] = objectEventIdBuffer;
+ }
+ return FALSE;
+}
+
+static void Task_MoveDeoxysRock_Step(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ struct Sprite * sprite = &gSprites[data[1]];
+ struct ObjectEvent * objectEvent;
+ switch (data[0])
+ {
+ case 0:
+ data[4] = sprite->pos1.x << 4;
+ data[5] = sprite->pos1.y << 4;
+ data[6] = ((data[2] << 4) - data[4]) / data[8];
+ data[7] = ((data[3] << 4) - data[5]) / data[8];
+ data[0]++;
+ // fallthrough
+ case 1:
+ if (data[8] != 0)
+ {
+ data[8]--;
+ data[4] += data[6];
+ data[5] += data[7];
+ sprite->pos1.x = data[4] >> 4;
+ sprite->pos1.y = data[5] >> 4;
+ }
+ else
+ {
+ objectEvent = &gObjectEvents[data[9]];
+ sprite->pos1.x = data[2];
+ sprite->pos1.y = data[3];
+ npc_coords_shift_still(objectEvent);
+ objectEvent->triggerGroundEffectsOnStop = TRUE;
+ FieldEffectActiveListRemove(FLDEFF_MOVE_DEOXYS_ROCK);
+ DestroyTask(taskId);
+ }
+ break;
+ }
+}
+
+static void Task_FldEffUnk44(u8 taskId);
+static void Unk44Effect_0(s16 *data, u8 taskId);
+static void Unk44Effect_1(s16 *data, u8 taskId);
+static void Unk44Effect_2(s16 *data, u8 taskId);
+static void sub_8087CFC(struct Sprite * sprite);
+static void SpriteCB_FldEffUnk44(struct Sprite * sprite);
+
+static void (*const sUnk44EffectFuncs[])(s16 *data, u8 taskId) = {
+ Unk44Effect_0,
+ Unk44Effect_1,
+ Unk44Effect_2
+};
+
+static const struct SpriteFrameImage sImages_FldEffUnk44[] = {
+ {sFldEffUnk44_Tiles + 0x00, 0x20},
+ {sFldEffUnk44_Tiles + 0x10, 0x20},
+ {sFldEffUnk44_Tiles + 0x20, 0x20},
+ {sFldEffUnk44_Tiles + 0x30, 0x20}
+};
+
+static const union AnimCmd sAnimCmd_FldEffUnk44_0[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd sAnimCmd_FldEffUnk44_1[] = {
+ ANIMCMD_FRAME(1, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd sAnimCmd_FldEffUnk44_2[] = {
+ ANIMCMD_FRAME(2, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd sAnimCmd_FldEffUnk44_3[] = {
+ ANIMCMD_FRAME(3, 0),
+ ANIMCMD_END
+};
+
+static const union AnimCmd *const sAnimCmdTable_FldEffUnk44[] = {
+ sAnimCmd_FldEffUnk44_0,
+ sAnimCmd_FldEffUnk44_1,
+ sAnimCmd_FldEffUnk44_2,
+ sAnimCmd_FldEffUnk44_3
+};
+
+static const struct SpriteTemplate sUnknown_83CC2A0 = {
+ .tileTag = SPRITE_INVALID_TAG,
+ .paletteTag = 4371,
+ .oam = &sOamData_8x8,
+ .anims = sAnimCmdTable_FldEffUnk44,
+ .images = sImages_FldEffUnk44,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCB_FldEffUnk44
+};
+
+u32 FldEff_Unk44(void)
+{
+ u8 taskId;
+ u8 objectEventIdBuffer;
+ if (!TryGetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2], &objectEventIdBuffer))
+ {
+ taskId = CreateTask(Task_FldEffUnk44, 0x50);
+ gTasks[taskId].data[2] = objectEventIdBuffer;
+ gTasks[taskId].data[6] = gFieldEffectArguments[0];
+ gTasks[taskId].data[7] = gFieldEffectArguments[1];
+ gTasks[taskId].data[8] = gFieldEffectArguments[2];
+ }
+ else
+ {
+ FieldEffectActiveListRemove(FLDEFF_UNK_44);
+ }
+ return FALSE;
+}
+
+static void sub_8087B14(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ if (data[7] != 0)
+ {
+ if (++data[6] > 20)
+ {
+ data[6] = 0;
+ if (data[5] != 0)
+ data[5]--;
+ }
+ }
+ else
+ {
+ data[5] = 4;
+ }
+
+ if (++data[0] > 1)
+ {
+ data[0] = 0;
+ if (++data[1] & 1)
+ {
+ SetCameraPanning(0, -data[5]);
+ }
+ else
+ {
+ SetCameraPanning(0, data[5]);
+ }
+ }
+ UpdateCameraPanning();
+ if (data[5] == 0)
+ DestroyTask(taskId);
+}
+
+static void sub_8087BA8(u8 taskId)
+{
+ gTasks[taskId].data[7] = 1;
+}
+
+static void Task_FldEffUnk44(u8 taskId)
+{
+ s16 *data = gTasks[taskId].data;
+ InstallCameraPanAheadCallback();
+ SetCameraPanningCallback(NULL);
+ sUnk44EffectFuncs[data[1]](data, taskId);
+}
+
+static void Unk44Effect_0(s16 *data, u8 taskId)
+{
+ u8 newTaskId = CreateTask(sub_8087B14, 90);
+ PlaySE(SE_T_KAMI2);
+ data[5] = newTaskId;
+ data[1]++;
+}
+
+static void Unk44Effect_1(s16 *data, u8 taskId)
+{
+ if (++data[3] > 0x78)
+ {
+ struct Sprite * sprite = &gSprites[gObjectEvents[data[2]].spriteId];
+ gObjectEvents[data[2]].invisible = TRUE;
+ BlendPalettes(0x0000FFFF, 0x10, RGB_WHITE);
+ BeginNormalPaletteFade(0x0000FFFF, 0, 0x10, 0, RGB_WHITE);
+ sub_8087CFC(sprite);
+ PlaySE(SE_T_KAMI);
+ sub_8087BA8(data[5]);
+ data[3] = 0;
+ data[1]++;
+ }
+}
+
+static void Unk44Effect_2(s16 *data, u8 taskId)
+{
+ if (!gPaletteFade.active && !FuncIsActiveTask(sub_8087B14))
+ {
+ InstallCameraPanAheadCallback();
+ RemoveObjectEventByLocalIdAndMap(data[6], data[7], data[8]);
+ FieldEffectActiveListRemove(FLDEFF_UNK_44);
+ DestroyTask(taskId);
+ }
+}
+
+static void sub_8087CFC(struct Sprite* sprite)
+{
+ int i;
+ int xPos = (s16)gTotalCameraPixelOffsetX + sprite->pos1.x + sprite->pos2.x;
+ int yPos = (s16)gTotalCameraPixelOffsetY + sprite->pos1.y + sprite->pos2.y - 4;
+
+ for (i = 0; i < 4; i++)
+ {
+ u8 spriteId = CreateSprite(&sUnknown_83CC2A0, xPos, yPos, 0);
+ if (spriteId != MAX_SPRITES)
+ {
+ StartSpriteAnim(&gSprites[spriteId], i);
+ gSprites[spriteId].data[0] = i;
+ gSprites[spriteId].oam.paletteNum = sprite->oam.paletteNum;
+ }
+ }
+}
+
+static void SpriteCB_FldEffUnk44(struct Sprite* sprite)
+{
+ switch (sprite->data[0])
+ {
+ case 0:
+ sprite->pos1.x -= 16;
+ sprite->pos1.y -= 12;
+ break;
+ case 1:
+ sprite->pos1.x += 16;
+ sprite->pos1.y -= 12;
+ break;
+ case 2:
+ sprite->pos1.x -= 16;
+ sprite->pos1.y += 12;
+ break;
+ case 3:
+ sprite->pos1.x += 16;
+ sprite->pos1.y += 12;
+ break;
+ }
+ if (sprite->pos1.x < -4 || sprite->pos1.x > 0xF4 || sprite->pos1.y < -4 || sprite->pos1.y > 0xA4)
+ DestroySprite(sprite);
+}
+
+static void Task_FldEffUnk45(u8 taskId)
+{
+ if (!gPaletteFade.active)
+ {
+ FieldEffectActiveListRemove(FLDEFF_UNK_45);
+ DestroyTask(taskId);
+ }
+}
+
+// Bug: Return value should be u32, not void
+void FldEff_Unk45(void)
+{
+ BlendPalettes(0xFFFFFFFF, 0x10, RGB_WHITE);
+ BeginNormalPaletteFade(0xFFFFFFFF, -1, 0x0F, 0x00, RGB_WHITE);
+ CreateTask(Task_FldEffUnk45, 90);
+}
diff --git a/src/field_fadetransition.c b/src/field_fadetransition.c
index 16f691a2d..4ff105056 100644
--- a/src/field_fadetransition.c
+++ b/src/field_fadetransition.c
@@ -50,7 +50,7 @@ void palette_bg_faded_fill_black(void)
CpuFastFill16(RGB_BLACK, gPlttBufferFaded, 0x400);
}
-void pal_fill_for_maplights(void)
+void WarpFadeInScreen(void)
{
switch (sub_80C9DCC(get_map_light_from_warp0(), GetCurrentMapType()))
{
@@ -84,14 +84,14 @@ static void sub_807DBAC(void)
}
}
-void sub_807DC00(void)
+void FadeInFromBlack(void)
{
palette_bg_faded_fill_black();
FadeScreen(0, 0);
palette_bg_faded_fill_black();
}
-void sub_807DC18(void)
+void WarpFadeOutScreen(void)
{
const struct MapHeader *header = warp1_get_mapheader();
if (header->regionMapSectionId != gMapHeader.regionMapSectionId && sub_80F8110(header->regionMapSectionId, FALSE))
@@ -138,7 +138,7 @@ void sub_807DCE4(void)
{
ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic();
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(task0A_nop_for_a_while, 10);
}
@@ -155,14 +155,14 @@ void FieldCallback_ReturnToEventScript2(void)
{
ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic();
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(task0A_asap_script_env_2_enable_and_set_ctx_running, 10);
}
void sub_807DD44(void)
{
ScriptContext2_Enable();
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(task0A_asap_script_env_2_enable_and_set_ctx_running, 10);
}
@@ -172,13 +172,13 @@ static void task_mpl_807DD60(u8 taskId)
switch (task->data[0])
{
case 0:
- task->data[1] = sub_8081150();
+ task->data[1] = CreateTask_ReestablishLinkInCableClubRoom();
task->data[0]++;
break;
case 1:
if (gTasks[task->data[1]].isActive != TRUE)
{
- pal_fill_for_maplights();
+ WarpFadeInScreen();
task->data[0]++;
}
break;
@@ -192,7 +192,7 @@ static void task_mpl_807DD60(u8 taskId)
}
}
-void sub_807DDD0(void)
+void FieldCB_ReturnToFieldWiredLink(void)
{
ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic();
@@ -212,7 +212,7 @@ static void sub_807DDF0(u8 taskId)
case 1:
if (IsLinkTaskFinished())
{
- pal_fill_for_maplights();
+ WarpFadeInScreen();
task->data[0]++;
}
break;
@@ -278,9 +278,9 @@ static void sub_807DE78(bool8 a0)
static void sub_807DF4C(bool8 a0)
{
if (!a0)
- pal_fill_for_maplights();
+ WarpFadeInScreen();
else
- sub_807DC00();
+ FadeInFromBlack();
}
void sub_807DF64(void)
@@ -302,7 +302,7 @@ void sub_807DF7C(void)
static void sub_807DF94(void)
{
Overworld_PlaySpecialMapMusic();
- pal_fill_for_maplights();
+ WarpFadeInScreen();
sub_8111CF0();
PlaySE(SE_TK_WARPOUT);
CreateTask(sub_807E31C, 10);
@@ -485,7 +485,7 @@ static void Task_WaitFadeAndCreateStartMenuTask(u8 taskId)
void FadeTransition_FadeInOnReturnToStartMenu(void)
{
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(Task_WaitFadeAndCreateStartMenuTask, 80);
ScriptContext2_Enable();
}
@@ -510,7 +510,7 @@ void sub_807E3EC(void)
{
ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic();
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(task_mpl_807E3C8, 10);
}
@@ -530,8 +530,8 @@ bool32 sub_807E418(void)
void DoWarp(void)
{
ScriptContext2_Enable();
- sub_8055F88();
- sub_807DC18();
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
PlayRainStoppingSoundEffect();
PlaySE(SE_KAIDAN);
gFieldCallback = sub_807DF64;
@@ -541,8 +541,8 @@ void DoWarp(void)
void DoDiveWarp(void)
{
ScriptContext2_Enable();
- sub_8055F88();
- sub_807DC18();
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
PlayRainStoppingSoundEffect();
gFieldCallback = sub_807DF64;
CreateTask(sub_807E718, 10);
@@ -580,31 +580,31 @@ void sub_807E524(void)
void DoFallWarp(void)
{
DoDiveWarp();
- gFieldCallback = sub_8084454;
+ gFieldCallback = FieldCB_FallWarpExit;
}
void sub_807E560(u8 a0)
{
ScriptContext2_Enable();
- sub_8084784(a0, 10);
+ StartEscalatorWarp(a0, 10);
}
void sub_807E57C(void)
{
ScriptContext2_Enable();
- sub_8084F2C(10);
+ StartLavaridgeGymB1FWarp(10);
}
void sub_807E58C(void)
{
ScriptContext2_Enable();
- sub_80853CC(10);
+ StartLavaridgeGym1FWarp(10);
}
void sub_807E59C(void)
{
ScriptContext2_Enable();
- sub_8055F88();
+ TryFadeOutOldMapMusic();
CreateTask(sub_807E784, 10);
gFieldCallback = sub_807DF94;
}
@@ -612,7 +612,7 @@ void sub_807E59C(void)
void sub_807E5C4(void)
{
ScriptContext2_Enable();
- sub_807DC18();
+ WarpFadeOutScreen();
CreateTask(sub_807E718, 10);
gFieldCallback = nullsub_60;
}
@@ -641,8 +641,8 @@ static void sub_807E5EC(u8 taskId)
void DoCableClubWarp(void)
{
ScriptContext2_Enable();
- sub_8055F88();
- sub_807DC18();
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
PlaySE(SE_KAIDAN);
CreateTask(sub_807E5EC, 10);
}
@@ -655,7 +655,7 @@ static void sub_807E678(u8 taskId)
case 0:
ClearLinkCallback_2();
FadeScreen(1, 0);
- sub_8055F88();
+ TryFadeOutOldMapMusic();
PlaySE(SE_KAIDAN);
data[0]++;
break;
@@ -719,7 +719,7 @@ static void sub_807E784(u8 taskId)
case 1:
if (!sub_805DAD0())
{
- sub_807DC18();
+ WarpFadeOutScreen();
task->data[0]++;
}
break;
@@ -773,14 +773,14 @@ static void sub_807E80C(u8 taskId)
}
break;
case 4:
- sub_8055F88();
- sub_807DC18();
+ TryFadeOutOldMapMusic();
+ WarpFadeOutScreen();
PlayRainStoppingSoundEffect();
task->data[0] = 0;
task->func = sub_807E718;
break;
case 5:
- sub_8055F88();
+ TryFadeOutOldMapMusic();
PlayRainStoppingSoundEffect();
task->data[0] = 0;
task->func = sub_807E718;
@@ -808,7 +808,7 @@ static void sub_807E980(u8 taskId)
data[15]--;
else
{
- sub_8055F88();
+ TryFadeOutOldMapMusic();
PlayRainStoppingSoundEffect();
playerSpr->oam.priority = 1;
sub_807EB64(data[1], &data[2], &data[3]);
@@ -822,7 +822,7 @@ static void sub_807E980(u8 taskId)
data[15]++;
if (data[15] >= 12)
{
- sub_807DC18();
+ WarpFadeOutScreen();
data[0]++;
}
break;
@@ -906,7 +906,7 @@ static void sub_807EC34(u8 taskId)
break;
case 0:
Overworld_PlaySpecialMapMusic();
- pal_fill_for_maplights();
+ WarpFadeInScreen();
ScriptContext2_Enable();
sub_807ECBC(&data[1], &data[2], &data[3], &data[4], &data[5]);
data[0]++;
diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c
index 3c9f2fc46..85739ad24 100644
--- a/src/field_screen_effect.c
+++ b/src/field_screen_effect.c
@@ -430,7 +430,7 @@ static void sub_807F45C(u8 taskId)
CopyWindowToVram(windowId, 1);
RemoveWindow(windowId);
palette_bg_faded_fill_black();
- sub_807DC00();
+ FadeInFromBlack();
++gTasks[taskId].data[0];
break;
case 3:
diff --git a/src/field_specials.c b/src/field_specials.c
index 6554f6116..5ac165156 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -165,7 +165,7 @@ void Special_SetHiddenItemFlag(void)
FlagSet(gSpecialVar_0x8004);
}
-u8 Special_GetLeadMonFriendship(void)
+u8 GetLeadMonFriendship(void)
{
struct Pokemon * pokemon = &gPlayerParty[GetLeadMonIndex()];
if (GetMonData(pokemon, MON_DATA_FRIENDSHIP) == 255)
@@ -326,7 +326,7 @@ void RemoveCameraObject(void)
RemoveObjectEventByLocalIdAndMap(127, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
}
-void Special_BufferEReaderTrainerName5(void)
+void BufferEReaderTrainerName(void)
{
CopyEReaderTrainerName5(gStringVar1);
}
@@ -672,10 +672,10 @@ void IncrementResortGorgeousStepCounter(void)
}
}
-void Special_SampleResortGorgeousMonAndReward(void)
+void SampleResortGorgeousMonAndReward(void)
{
- u16 var4036 = VarGet(VAR_RESORT_GORGEOUS_REQUESTED_MON);
- if (var4036 == SPECIES_NONE || var4036 == 0xFFFF)
+ u16 requestedSpecies = VarGet(VAR_RESORT_GORGEOUS_REQUESTED_MON);
+ if (requestedSpecies == SPECIES_NONE || requestedSpecies == 0xFFFF)
{
VarSet(VAR_RESORT_GORGEOUS_REQUESTED_MON, SampleResortGorgeousMon());
VarSet(VAR_RESORT_GORGEOUS_REWARD, SampleResortGorgeousReward());
@@ -1695,7 +1695,7 @@ void Special_UpdateTrainerCardPhotoIcons(void)
VarSet(VAR_TRAINER_CARD_MON_ICON_TINT_IDX, gSpecialVar_0x8004);
}
-u16 Special_StickerLadyGetBragFlags(void)
+u16 StickerManGetBragFlags(void)
{
u16 result = 0;
u32 numEggs;
@@ -2389,13 +2389,13 @@ static void MoveDeoxysObject(u8 num)
gFieldEffectArguments[5] = 60;
else
gFieldEffectArguments[5] = 5;
- FieldEffectStart(FLDEFF_UNK_43);
+ FieldEffectStart(FLDEFF_MOVE_DEOXYS_ROCK);
Overworld_SetMapObjTemplateCoords(1, sDeoxysCoords[num][0], sDeoxysCoords[num][1]);
}
static void Task_WaitDeoxysFieldEffect(u8 taskId)
{
- if (!FieldEffectActiveListContains(FLDEFF_UNK_43))
+ if (!FieldEffectActiveListContains(FLDEFF_MOVE_DEOXYS_ROCK))
{
EnableBothScriptContexts();
DestroyTask(taskId);
@@ -2458,14 +2458,15 @@ void Special_BrailleCursorToggle(void)
}
}
-bool8 Special_PlayerPartyContainsSpeciesWithPlayerID(void)
+bool8 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))
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) == gSpecialVar_0x8004
+ && GetPlayerTrainerId() == GetMonData(&gPlayerParty[i], MON_DATA_OT_ID, NULL))
return TRUE;
}
return FALSE;
diff --git a/src/fldeff_rocksmash.c b/src/fldeff_rocksmash.c
index 397741806..dc372ce18 100644
--- a/src/fldeff_rocksmash.c
+++ b/src/fldeff_rocksmash.c
@@ -48,7 +48,7 @@ static void Task_FieldEffectShowMon_Init(u8 taskId)
u8 mapObjId;
ScriptContext2_Enable();
- gPlayerAvatar.unk6 = TRUE;
+ gPlayerAvatar.preventStep = TRUE;
mapObjId = gPlayerAvatar.objectEventId;
if (!ObjectEventIsMovementOverridden(&gObjectEvents[mapObjId])
|| ObjectEventClearHeldMovementIfFinished(&gObjectEvents[mapObjId]))
@@ -62,7 +62,7 @@ static void Task_FieldEffectShowMon_Init(u8 taskId)
else
{
sub_805CB70();
- ObjectEventSetHeldMovement(&gObjectEvents[mapObjId], MOVEMENT_ACTION_UNKNOWN_STEP_45);
+ ObjectEventSetHeldMovement(&gObjectEvents[mapObjId], MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
gTasks[taskId].func = Task_FieldEffectShowMon_WaitPlayerAnim;
}
}
@@ -100,7 +100,7 @@ static void Task_FieldEffectShowMon_WaitFldeff(u8 taskId)
static void Task_FieldEffectShowMon_Cleanup(u8 taskId)
{
FLDEFF_CALL_FUNC_IN_DATA();
- gPlayerAvatar.unk6 = FALSE;
+ gPlayerAvatar.preventStep = FALSE;
DestroyTask(taskId);
}
diff --git a/src/fldeff_strength.c b/src/fldeff_strength.c
index 712d9f1c6..c6b92b28c 100644
--- a/src/fldeff_strength.c
+++ b/src/fldeff_strength.c
@@ -8,8 +8,8 @@
#include "event_scripts.h"
#include "constants/event_objects.h"
-static void FldEff_UseStrength(void);
-static void sub_80D08A8(void);
+static void FieldCB_UseStrength(void);
+static void ShowMonCB_UseStrength(void);
bool8 SetUpFieldMove_Strength(void)
{
@@ -21,25 +21,25 @@ bool8 SetUpFieldMove_Strength(void)
{
gSpecialVar_Result = GetCursorSelectionMonId();
gFieldCallback2 = FieldCallback_PrepareFadeInFromMenu;
- gPostMenuFieldCallback = FldEff_UseStrength;
+ gPostMenuFieldCallback = FieldCB_UseStrength;
return TRUE;
}
}
-static void FldEff_UseStrength(void)
+static void FieldCB_UseStrength(void)
{
gFieldEffectArguments[0] = GetCursorSelectionMonId();
ScriptContext1_SetupScript(EventScript_FldEffStrength);
}
-bool8 sub_80D0860(void)
+bool8 FldEff_UseStrength(void)
{
u8 taskId = CreateFieldEffectShowMon();
- FLDEFF_SET_FUNC_TO_DATA(sub_80D08A8);
+ FLDEFF_SET_FUNC_TO_DATA(ShowMonCB_UseStrength);
GetMonNickname(&gPlayerParty[gFieldEffectArguments[0]], gStringVar1);
return FALSE;
}
-static void sub_80D08A8(void)
+static void ShowMonCB_UseStrength(void)
{
FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH);
EnableBothScriptContexts();
diff --git a/src/graphics.c b/src/graphics.c
index 47d699fdd..eaa49247c 100644
--- a/src/graphics.c
+++ b/src/graphics.c
@@ -1210,10 +1210,10 @@ const u32 gUnknown_8E990F8[] = INCBIN_U32("graphics/interface/naming_screen_8E99
const u8 gUnknown_8E99118[] = INCBIN_U8("graphics/tm_case/unk_8E99118.4bpp");
-const u16 gFireRedTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star.gbapal");
-const u32 gFireRedTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card.4bpp.lz");
-const u16 gEmeraldTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star_em.gbapal");
-const u32 gEmeraldTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card_em.4bpp.lz");
+const u16 gKantoTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star.gbapal");
+const u32 gKantoTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card.4bpp.lz");
+const u16 gHoennTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star_em.gbapal");
+const u32 gHoennTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card_em.4bpp.lz");
const u16 gUnknown_8E99D8C[] = INCBIN_U16("graphics/link_rfu/unk_8E99DAC.gbapal");
const u32 gUnknown_8E99DAC[] = INCBIN_U32("graphics/link_rfu/unk_8E99DAC.4bpp.lz");
diff --git a/src/item_use.c b/src/item_use.c
index f5e880f98..ec8155eb1 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -170,7 +170,7 @@ static void sub_80A103C(u8 taskId)
static void sub_80A1084(void)
{
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(sub_80A109C, 8);
}
@@ -223,7 +223,7 @@ static bool8 sub_80A1194(void)
{
FreezeObjectEvents();
ScriptContext2_Enable();
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(sub_80A11C0, 10);
gUnknown_2031DE0 = 0;
return TRUE;
@@ -646,7 +646,7 @@ static void sub_80A1C08(u8 taskId)
void sub_80A1C44(u8 taskId)
{
ResetInitialPlayerAvatarState();
- sub_8085620();
+ StartEscapeRopeFieldEffect();
DestroyTask(taskId);
}
diff --git a/src/link.c b/src/link.c
index 26e223153..cb46a50ff 100644
--- a/src/link.c
+++ b/src/link.c
@@ -796,7 +796,7 @@ u8 GetLinkPlayerDataExchangeStatusTimed(int lower, int upper)
if (lower > cmpVal || cmpVal > upper)
{
sPlayerDataExchangeStatus = EXCHANGE_STAT_6;
- return 6;
+ return EXCHANGE_STAT_6;
}
else
{
@@ -1006,15 +1006,15 @@ bool8 SendBlock(u8 unused, const void *src, u16 size)
return InitBlockSend(src, size);
}
-bool8 sub_800A474(u8 a0)
+bool8 sub_800A474(u8 blockRequestType)
{
if (gWirelessCommType == 1)
{
- return sub_80FA0F8(a0);
+ return sub_80FA0F8(blockRequestType);
}
if (gLinkCallback == NULL)
{
- gBlockRequestType = a0;
+ gBlockRequestType = blockRequestType;
BuildSendCmd(LINKCMD_0xCCCC);
return TRUE;
}
diff --git a/src/main.c b/src/main.c
index a67c71746..77f668e6f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -20,6 +20,7 @@
#include "battle_controllers.h"
#include "scanline_effect.h"
#include "save_failed_screen.h"
+#include "quest_log.h"
extern u32 intr_main[];
@@ -77,9 +78,6 @@ static IntrFunc * const sTimerIntrFunc = gIntrTable + 0x7;
EWRAM_DATA u8 gDecompressionBuffer[0x4000] = {0};
EWRAM_DATA u16 gTrainerId = 0;
-extern bool8 gWirelessCommType;
-extern bool8 gUnknown_3005E88;
-
static void UpdateLinkAndCallCallbacks(void);
static void InitMainCallbacks(void);
static void CallCallbacks(void);
@@ -178,7 +176,7 @@ static void InitMainCallbacks(void)
gSaveBlock2Ptr = &gSaveBlock2;
gSaveBlock1Ptr = &gSaveBlock1;
gSaveBlock2.encryptionKey = 0;
- gUnknown_3005E88 = FALSE;
+ gUnknown_3005E88 = 0;
}
static void CallCallbacks(void)
diff --git a/src/map_preview_screen.c b/src/map_preview_screen.c
index bb748ae91..b5c68acf9 100644
--- a/src/map_preview_screen.c
+++ b/src/map_preview_screen.c
@@ -490,7 +490,7 @@ static void sub_80F83D0(u8 taskId)
case 1:
if (!IsDma3ManagerBusyWithBgCopy())
{
- sub_807DC00();
+ FadeInFromBlack();
data[0]++;
}
break;
diff --git a/src/party_menu.c b/src/party_menu.c
index 6f2feaaad..626ce70f8 100644
--- a/src/party_menu.c
+++ b/src/party_menu.c
@@ -1,5 +1,5 @@
#include "global.h"
-#include "malloc.h"
+#include "gflib.h"
#include "battle.h"
#include "battle_anim.h"
#include "battle_controllers.h"
@@ -7,7 +7,6 @@
#include "battle_interface.h"
#include "battle_tower.h"
#include "berry_pouch.h"
-#include "bg.h"
#include "data.h"
#include "decompress.h"
#include "easy_chat.h"
@@ -15,11 +14,10 @@
#include "evolution_scene.h"
#include "field_effect.h"
#include "field_player_avatar.h"
-#include "field_screen_effect.h"
+#include "field_fadetransition.h"
#include "field_weather.h"
#include "fieldmap.h"
#include "fldeff.h"
-#include "gpu_regs.h"
#include "graphics.h"
#include "help_system.h"
#include "item.h"
@@ -36,7 +34,6 @@
#include "new_menu_helpers.h"
#include "metatile_behavior.h"
#include "overworld.h"
-#include "palette.h"
#include "party_menu.h"
#include "player_pc.h"
#include "pokedex.h"
@@ -50,19 +47,15 @@
#include "reshow_battle_screen.h"
#include "scanline_effect.h"
#include "script.h"
-#include "sound.h"
-#include "sprite.h"
#include "start_menu.h"
#include "string_util.h"
#include "strings.h"
#include "task.h"
#include "teachy_tv.h"
-#include "text.h"
#include "text_window.h"
#include "tm_case.h"
#include "trade.h"
#include "union_room.h"
-#include "window.h"
#include "constants/battle.h"
#include "constants/easy_chat.h"
#include "constants/field_effects.h"
@@ -4044,7 +4037,7 @@ static void Task_HandleFieldMoveExitAreaYesNoInput(u8 taskId)
bool8 FieldCallback_PrepareFadeInFromMenu(void)
{
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(Task_FieldMoveWaitForFade, 8);
return TRUE;
}
@@ -6361,7 +6354,7 @@ void ChoosePartyMonByMenuType(u8 menuType)
static bool8 CB2_FadeFromPartyMenu(void)
{
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(Task_PartyMenuWaitForFade, 10);
return TRUE;
}
diff --git a/src/player_pc.c b/src/player_pc.c
index 928676844..8943e0796 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -347,7 +347,7 @@ static void CB2_ReturnFromDepositMenu(void)
DrawDialogueFrame(0, TRUE);
taskId = CreateTask(Task_ReturnToItemStorageSubmenu, 0);
Task_CreateItemStorageSubmenu(taskId, 1);
- sub_807DC00();
+ FadeInFromBlack();
}
static void Task_PlayerPcWithdrawItem(u8 taskId)
@@ -376,7 +376,7 @@ static void CB2_ReturnFromWithdrawMenu(void)
DrawDialogueFrame(0, TRUE);
taskId = CreateTask(Task_ReturnToItemStorageSubmenu, 0);
Task_CreateItemStorageSubmenu(taskId, 0);
- sub_807DC00();
+ FadeInFromBlack();
}
static void Task_WithdrawItem_WaitFadeAndGoToItemStorage(u8 taskId)
@@ -590,7 +590,7 @@ static void CB2_ReturnToMailbox(void)
Task_DrawMailboxPcMenu(taskId);
else
DestroyTask(taskId);
- sub_807DC00();
+ FadeInFromBlack();
}
static void CB2_SetCbToReturnToMailbox(void)
@@ -705,7 +705,7 @@ static void CB2_ReturnToMailboxPc_UpdateScrollVariables(void)
Task_DrawMailboxPcMenu(taskId);
else
DestroyTask(taskId);
- sub_807DC00();
+ FadeInFromBlack();
}
void Mailbox_ReturnToMailListAfterDeposit(void)
diff --git a/src/quest_log.c b/src/quest_log.c
index 6e70ceea8..c9a930032 100644
--- a/src/quest_log.c
+++ b/src/quest_log.c
@@ -2761,7 +2761,7 @@ static bool8 TrySetTrainerBattleQuestLogEvent(u16 eventId, const u16 *eventData)
return FALSE;
sub_81138F8();
- if (gUnknown_3005E88 || FlagGet(FLAG_SYS_GAME_CLEAR) || sub_81137E4(eventId, eventData) != TRUE)
+ if (gUnknown_3005E88 != 0 || FlagGet(FLAG_SYS_GAME_CLEAR) || sub_81137E4(eventId, eventData) != TRUE)
{
gUnknown_203B024.unk_00 = eventId;
memcpy(gUnknown_203B024.unk_04, eventData, 8);
diff --git a/src/quest_log_player.c b/src/quest_log_player.c
index b6167a7bf..ccf0565fb 100644
--- a/src/quest_log_player.c
+++ b/src/quest_log_player.c
@@ -80,7 +80,7 @@ static void sub_8150530(void)
{
u8 taskId;
ScriptContext2_Enable();
- gPlayerAvatar.unk6 = 1;
+ gPlayerAvatar.preventStep = TRUE;
taskId = CreateTask(sub_81505C4, 0xFF);
gTasks[taskId].data[0] = 0;
}
@@ -156,13 +156,13 @@ static void sub_8150708(void)
static void sub_815077C(void)
{
- FieldEffectStart(FLDEFF_UNK_41);
+ FieldEffectStart(FLDEFF_USE_VS_SEEKER);
CreateTask(sub_8150794, 0x00);
}
static void sub_8150794(u8 taskId)
{
- if (!FieldEffectActiveListContains(0x41))
+ if (!FieldEffectActiveListContains(FLDEFF_USE_VS_SEEKER))
{
UnfreezeObjectEvents();
ScriptContext2_Disable();
diff --git a/src/region_map.c b/src/region_map.c
index 4335b7d96..0c2d511bf 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -4395,5 +4395,5 @@ static void sub_80C527C(u16 mapsec)
{
warp1_set_2(sMapsecToSpawn[idx][0], sMapsecToSpawn[idx][1], -1);
}
- sub_80842C8();
+ ReturnToFieldFromFlyMapSelect();
}
diff --git a/src/script_menu.c b/src/script_menu.c
index 72ff1dc9e..12e89832c 100644
--- a/src/script_menu.c
+++ b/src/script_menu.c
@@ -1022,7 +1022,7 @@ static void Task_ScriptShowMonPic(u8 taskId)
case 1:
break;
case 2:
- sub_8083A5C(&gSprites[task->data[2]], task->data[2]);
+ FreeResourcesAndDestroySprite(&gSprites[task->data[2]], task->data[2]);
task->data[0]++;
break;
case 3:
@@ -1040,7 +1040,7 @@ bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y)
return TRUE;
if (FindTaskIdByFunc(Task_ScriptShowMonPic) != 0xFF)
return FALSE;
- spriteId = sub_8083970(species, 8 * x + 40, 8 * y + 40, FALSE);
+ spriteId = CreateMonSprite_PicBox(species, 8 * x + 40, 8 * y + 40, FALSE);
taskId = CreateTask(Task_ScriptShowMonPic, 80);
gTasks[taskId].data[5] = CreateWindowFromRect(x, y, 8, 8);
gTasks[taskId].data[0] = 0;
@@ -1082,7 +1082,7 @@ void sub_809D424(void)
case 0:
case 1:
case 2:
- sub_8083A5C(&gSprites[task->data[2]], task->data[2]);
+ FreeResourcesAndDestroySprite(&gSprites[task->data[2]], task->data[2]);
DestroyScriptMenuWindow(task->data[5]);
DestroyTask(taskId);
break;
@@ -1183,7 +1183,7 @@ void QLPlaybackCB_DestroyScriptMenuMonPicSprites(void)
{
data = gTasks[taskId].data;
if (data[0] < 2)
- sub_8083A5C(&gSprites[data[2]], data[2]);
+ FreeResourcesAndDestroySprite(&gSprites[data[2]], data[2]);
}
taskId = FindTaskIdByFunc(Task_WaitMuseumFossilPic);
if (taskId != 0xFF)
diff --git a/src/seagallop.c b/src/seagallop.c
index aa0c48da1..3257819aa 100644
--- a/src/seagallop.c
+++ b/src/seagallop.c
@@ -295,7 +295,7 @@ static void Task_Seagallop_1(u8 taskId)
if (++task->data[1] == 140)
{
Overworld_FadeOutMapMusic();
- sub_807DC18();
+ WarpFadeOutScreen();
task->func = Task_Seagallop_2;
}
}
diff --git a/src/shop.c b/src/shop.c
index efbbbd979..5a9ee6b95 100644
--- a/src/shop.c
+++ b/src/shop.c
@@ -336,7 +336,7 @@ static void Task_GoToBuyOrSellMenu(u8 taskId)
static void MapPostLoadHook_ReturnToShopMenu(void)
{
- sub_807DC00();
+ FadeInFromBlack();
CreateTask(Task_ReturnToShopMenu, 8);
}
diff --git a/src/trainer_card.c b/src/trainer_card.c
index d60738ee6..600035613 100644
--- a/src/trainer_card.c
+++ b/src/trainer_card.c
@@ -29,15 +29,7 @@
#include "constants/game_stat.h"
#include "constants/vars.h"
#include "constants/species.h"
-
-#define BADGE_COUNT 8
-
-// Trainer Card Types
-enum
-{
- CARD_TYPE_FRLG,
- CARD_TYPE_EMERALD,
-};
+#include "constants/facility_trainer_classes.h"
// Trainer Card Strings
enum
@@ -59,46 +51,43 @@ enum
struct TrainerCardData
{
- /*0x0000*/ u8 taskState;
- /*0x0001*/ u8 printState;
- /*0x0002*/ u8 gfxLoadState;
- /*0x0003*/ u8 bgPalLoadState;
- /*0x0004*/ u8 var_4;
- /*0x0005*/ bool8 isLink;
- /*0x0006*/ u8 var_6;
- /*0x0007*/ u8 var_7;
- /*0x0008*/ u8 var_8;
- /*0x0009*/ bool8 allowDMACopy;
- /*0x000A*/ bool8 hasPokedex;
- /*0x000B*/ bool8 hasHofResult;
- /*0x000C*/ bool8 hasLinkResults;
- /*0x000D*/ bool8 hasBattleTowerWins;
- /*0x000E*/ u8 var_E;
- /*0x000F*/ u8 var_F;
- /*0x0010*/ bool8 hasTrades;
- /*0x0011*/ bool8 hasBadge[BADGE_COUNT];
- /*0x0019*/ u8 var_19[4][13];
- /*0x004D*/ u8 strings[TRAINER_CARD_STRING_COUNT][70];
- /*0x0395*/ u8 var_395;
- /*0x0396*/ u16 monIconPals[0x30];
- /*0x03F6*/ u8 var_3DB[0x60];
- /*0x0456*/ s8 var_456;
- /*0x0457*/ u8 cardType;
- /*0x0458*/ void (*callback2)(void);
- /*0x045C*/ struct TrainerCard trainerCard;
- /*0x04BC*/ u16 var_4BC;
- /*0x04BE*/ u8 var_4BE[0x4AE];
- /*0x096C*/ u16 var_96C[0x258];
- /*0x0E1C*/ u16 var_E1C;
- /*0x0E1E*/ u8 unk_E1E[0x4AE];
- /*0x12CC*/ u16 cardTiles[0x200];
- /*0x16CC*/ u16 bgTiles[0x100];
- /*0x18CC*/ u16 var_18CC[0x1180];
- /*0x3BCC*/ u16 bgTilemap0[0x1000];
- /*0x5BCC*/ u16 bgTilemap2[0x1000];
- /*0x7BCC*/ u16 var_7BCC;
- /*0x7BCE*/ bool8 var_7BCE;
- /*0x7BCF*/ u8 language;
+ u8 mainState;
+ u8 printState;
+ u8 gfxLoadState;
+ u8 bgPalLoadState;
+ u8 flipDrawState;
+ bool8 isLink;
+ u8 timeColonBlinkTimer;
+ bool8 timeColonInvisible;
+ bool8 onBack;
+ bool8 allowDMACopy;
+ bool8 hasPokedex;
+ bool8 hasHofResult;
+ bool8 hasLinkResults;
+ bool8 hasBattleTowerWins;
+ bool8 var_E;
+ bool8 var_F;
+ bool8 hasTrades;
+ bool8 hasBadge[NUM_BADGES];
+ u8 easyChatProfile[TRAINER_CARD_PROFILE_LENGTH][13];
+ u8 strings[TRAINER_CARD_STRING_COUNT][70];
+ u8 var_395;
+ u16 monIconPals[16 * PARTY_SIZE];
+ s8 flipBlendY;
+ u8 cardType;
+ void (*callback2)(void);
+ struct TrainerCard trainerCard;
+ u16 frontTilemap[600];
+ u16 backTilemap[600];
+ u16 bgTilemap[600];
+ u8 badgeTiles[0x80 * NUM_BADGES];
+ u16 stickerTiles[0x100];
+ u16 cardTiles[0x1180];
+ u16 cardTilemapBuffer[0x1000];
+ u16 bgTilemapBuffer[0x1000];
+ u16 var_7BCC;
+ bool8 timeColonNeedDraw;
+ u8 language;
}; /* size = 0x7BD0 */
// RAM
@@ -124,84 +113,84 @@ static void TrainerCardNull(void);
static void sub_8089C5C(void);
static void sub_8089C80(void);
static void sub_8089CA4(void);
-static void ResetTrainerCard(void);
+static void InitBgsAndWindows(void);
static void SetTrainerCardCB2(void);
-static void sub_8089DA4(void);
-static bool8 PrintAllOnCardPage1(void);
-static bool8 PrintStringsOnCardPage2(void);
-static void sub_8089ECC(void);
-static void PrintNameOnCard(void);
+static void SetUpTrainerCardTask(void);
+static bool8 PrintAllOnCardFront(void);
+static bool8 PrintAllOnCardBack(void);
+static void BufferTextForCardBack(void);
+static void PrintNameOnCardFront(void);
static void PrintIdOnCard(void);
static void PrintMoneyOnCard(void);
static u16 GetCaughtMonsCount(void);
static void PrintPokedexOnCard(void);
static void PrintTimeOnCard(void);
static void PrintProfilePhraseOnCard(void);
-static void PrintNameOnCard2(void);
-static void sub_808A4FC(void);
-static void PrintHofTimeOnCard(void);
-static void PrintHofDebutStringOnCard(void);
-static void PrintLinkResultsNumsOnCard(void);
-static void PrintWinsLossesStringOnCard(void);
-static void PrintTradesNumOnCard(void);
+static void BufferNameForCardBack(void);
+static void PrintNameOnCardBack(void);
+static void BufferHofDebutTime(void);
+static void PrintHofDebutTimeOnCard(void);
+static void BufferLinkBattleResults(void);
+static void PrintLinkBattleResultsOnCard(void);
+static void BufferNumTrades(void);
static void PrintTradesStringOnCard(void);
-static void PrintBerryCrushNumOnCard(void);
+static void BufferBerryCrushPoints(void);
static void PrintBerryCrushStringOnCard(void);
-static void PrintUnionNumOnCard(void);
+static void BufferUnionRoomStats(void);
static void PrintUnionStringOnCard(void);
-static void TrainerCard_PrintPokemonIconsOnCard(void);
-static void sub_808AB10(void);
-static void sub_808ABE0(void);
-static void TrainerCardLoadStickerPals(void);
-static void PutTrainerCardWindow(u8 windowId);
+static void PrintPokemonIconsOnCard(void);
+static void LoadMonIconGfx(void);
+static void PrintStickersOnCard(void);
+static void LoadStickerGfx(void);
+static void DrawTrainerCardWindow(u8 windowId);
static bool8 SetTrainerCardBgsAndPals(void);
-static void LoadTrainerCardTilemap2(const u16* ptr);
-static void LoadTrainerCardTilemap0(const u16* ptr);
-static void TrainerCard_PrintStarsAndBadgesOnCard(void);
-static void sub_808B090(void);
-static void sub_808B180(void);
-static void sub_808B1D4(void);
-static bool8 sub_808B1FC(void);
-static void sub_808B21C(u8 taskId);
-static bool8 sub_808B254(struct Task* task);
-static bool8 sub_808B294(struct Task* task);
-static bool8 sub_808B3C4(struct Task* task);
-static bool8 sub_808B4D8(struct Task* task);
-static bool8 sub_808B540(struct Task* task);
-static bool8 sub_808B66C(struct Task *task);
-static void sub_808B774(void);
+static void DrawCardScreenBackground(const u16* ptr);
+static void DrawCardFrontOrBack(const u16* ptr);
+static void DrawStarsAndBadgesOnCard(void);
+static void DrawCardBackStats(void);
+static void BlinkTimeColon(void);
+static void FlipTrainerCard(void);
+static bool8 IsCardFlipTaskActive(void);
+static void Task_DoCardFlipTask(u8 taskId);
+static bool8 Task_BeginCardFlip(struct Task* task);
+static bool8 Task_AnimateCardFlipDown(struct Task* task);
+static bool8 Task_DrawFlippedCardSide(struct Task* task);
+static bool8 Task_SetCardFlipped(struct Task* task);
+static bool8 Task_AnimateCardFlipUp(struct Task* task);
+static bool8 Task_EndCardFlip(struct Task *task);
+static void InitTrainerCardData(void);
static u8 GetCardType(void);
-static void sub_808B838(void);
+static void CreateTrainerCardTrainerPic(void);
// Data
-static const u32 sTrainerCardStickers[] = INCBIN_U32("graphics/trainer_card/stickers.4bpp.lz");
-static const u32 sUnknown_83CC4DC[] = INCBIN_U32("graphics/trainer_card/unk_83CC4DC.bin");
-static const u32 sUnknown_83CC6F0[] = INCBIN_U32("graphics/trainer_card/unk_83CC6F0.bin");
-static const u32 sUnknown_83CC8A8[] = INCBIN_U32("graphics/trainer_card/unk_83CC8A8.bin");
-static const u32 sUnknown_83CC984[] = INCBIN_U32("graphics/trainer_card/unk_83CC984.bin");
-static const u32 sUnknown_83CCAB0[] = INCBIN_U32("graphics/trainer_card/unk_83CCAB0.bin");
-static const u32 sUnknown_83CCCA4[] = INCBIN_U32("graphics/trainer_card/unk_83CCCA4.bin");
-static const u32 sUnknown_83CCE30[] = INCBIN_U32("graphics/trainer_card/unk_83CCE30.bin");
-static const u32 sUnknown_83CCEC8[] = INCBIN_U32("graphics/trainer_card/unk_83CCEC8.bin");
-static const u16 sEmeraldTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_1stars_pals.gbapal");
-static const u16 sFireRedTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_1stars_pals.gbapal");
-static const u16 sEmeraldTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_2stars_pals.gbapal");
-static const u16 sFireRedTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_2stars_pals.gbapal");
-static const u16 sEmeraldTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_3stars_pals.gbapal");
-static const u16 sFireRedTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_3stars_pals.gbapal");
-static const u16 sEmeraldTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_4stars_pals.gbapal");
-static const u16 sFireRedTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_4stars_pals.gbapal");
-static const u16 sEmeraldTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/em_female_bg.gbapal");
-static const u16 sFireRedTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/fr_female_bg.gbapal");
-static const u16 sEmeraldTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/em_badges.gbapal");
-static const u16 sFireRedTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/fr_badges.gbapal");
-static const u16 sUnknown_83CD300[] = INCBIN_U16("graphics/trainer_card/unk_83CD300.gbapal");
+static const u32 sTrainerCardStickers_Gfx[] = INCBIN_U32("graphics/trainer_card/stickers.4bpp.lz");
+static const u32 sHoennTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_hoenn.bin");
+static const u32 sKantoTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/front.bin");
+static const u32 sHoennTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/back_hoenn.bin");
+static const u32 sKantoTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/back.bin");
+static const u32 sHoennTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_hoenn_link.bin");
+static const u32 sKantoTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_link.bin");
+static const u32 sHoennTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/bg_hoenn.bin");
+static const u32 sKantoTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/bg.bin");
+static const u16 sHoennTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_1stars_pals.gbapal");
+static const u16 sKantoTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_1stars_pals.gbapal");
+static const u16 sHoennTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_2stars_pals.gbapal");
+static const u16 sKantoTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_2stars_pals.gbapal");
+static const u16 sHoennTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_3stars_pals.gbapal");
+static const u16 sKantoTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_3stars_pals.gbapal");
+static const u16 sHoennTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_4stars_pals.gbapal");
+static const u16 sKantoTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_4stars_pals.gbapal");
+static const u16 sHoennTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/em_female_bg.gbapal");
+static const u16 sKantoTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/fr_female_bg.gbapal");
+static const u16 sHoennTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/em_badges.gbapal");
+static const u16 sKantoTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/fr_badges.gbapal");
+static const u16 sTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/gold.gbapal");
static const u16 sTrainerCardStickerPal1[] = INCBIN_U16("graphics/trainer_card/sticker1.gbapal");
static const u16 sTrainerCardStickerPal2[] = INCBIN_U16("graphics/trainer_card/sticker2.gbapal");
static const u16 sTrainerCardStickerPal3[] = INCBIN_U16("graphics/trainer_card/sticker3.gbapal");
static const u16 sTrainerCardStickerPal4[] = INCBIN_U16("graphics/trainer_card/sticker4.gbapal");
-static const u32 sEmeraldTrainerCardBadges_Tile[] = INCBIN_U32("graphics/trainer_card/em_badges.4bpp.lz");
-static const u32 sFireRedTrainerCardBadges_Tile[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz");
+static const u32 sHoennTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/em_badges.4bpp.lz");
+static const u32 sKantoTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz");
static const struct BgTemplate sTrainerCardBgTemplates[4] =
{
@@ -275,150 +264,190 @@ static const struct WindowTemplate sTrainerCardWindowTemplates[4] =
DUMMY_WIN_TEMPLATE
};
-static const u16 *const sEmeraldTrainerCardStarPals[] =
+static const u16 *const sHoennTrainerCardStarPals[] =
{
- gEmeraldTrainerCard_Pal,
- sEmeraldTrainerCard1Stars_Pals,
- sEmeraldTrainerCard2Stars_Pals,
- sEmeraldTrainerCard3Stars_Pals,
- sEmeraldTrainerCard4Stars_Pals
+ gHoennTrainerCard_Pal,
+ sHoennTrainerCard1Stars_Pals,
+ sHoennTrainerCard2Stars_Pals,
+ sHoennTrainerCard3Stars_Pals,
+ sHoennTrainerCard4Stars_Pals
};
-static const u16 *const sFireRedTrainerCardStarPals[] =
+static const u16 *const sKantoTrainerCardStarPals[] =
{
- gFireRedTrainerCard_Pal,
- sFireRedTrainerCard1Stars_Pals,
- sFireRedTrainerCard2Stars_Pals,
- sFireRedTrainerCard3Stars_Pals,
- sFireRedTrainerCard4Stars_Pals
+ gKantoTrainerCard_Pal,
+ sKantoTrainerCard1Stars_Pals,
+ sKantoTrainerCard2Stars_Pals,
+ sKantoTrainerCard3Stars_Pals,
+ sKantoTrainerCard4Stars_Pals
};
-static const u8 sFireRedTrainerCardPage1TextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY};
-static const u8 sTrainerCardPage2TextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED};
-static const u8 sEmeraldTrainerCardPage1TextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT};
+static const u8 sTrainerCardTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GREY, TEXT_COLOR_LIGHT_GREY};
+static const u8 sTrainerCardStatColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_RED, TEXT_COLOR_LIGHT_RED};
+static const u8 sTimeColonInvisibleTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_TRANSPARENT};
static const u8 sTrainerCardFontIds[] = {0, 2, 0};
-static const u8 sTrainerCardPicPositions[][2][2] =
+static const u8 sTrainerPicOffsets[2][GENDER_COUNT][2] =
{
- {{13, 4}, {13, 4}},
- {{1, 0}, {1, 0}}
+ // Kanto
+ {
+ [MALE] = {13, 4},
+ [FEMALE] = {13, 4}
+ },
+ // Hoenn
+ {
+ [MALE] = {1, 0},
+ [FEMALE] = {1, 0}
+ }
};
-static const u8 sLinkTrainerCardFrontPics[][2] =
+static const u8 sTrainerPicFacilityClasses[][2] =
{
- {TRAINER_PIC_RS_MAY_2, TRAINER_PIC_RED},
- {TRAINER_PIC_PROFESSOR_OAK, TRAINER_PIC_RS_BRENDAN_2},
+ [CARD_TYPE_FRLG] =
+ {
+ [MALE] = FACILITY_CLASS_RED,
+ [FEMALE] = FACILITY_CLASS_LEAF
+ },
+ [CARD_TYPE_RSE] =
+ {
+ [MALE] = FACILITY_CLASS_BRENDAN,
+ [FEMALE] = FACILITY_CLASS_MAY
+ },
};
-static const u8 sLinkTrainerCardFacilityClasses[][8] =
+static const u8 sLinkTrainerPicFacilityClasses[GENDER_COUNT][NUM_LINK_TRAINER_CARD_CLASSES] =
{
- {0x74, 0x6F, 0x5C, 0x58, 0x6A, 0x59, 0x6D, 0x6C},
- {0x75, 0x7D, 0x5D, 0x5A, 0x16, 0x30, 0x41, 0x68}
+ [MALE] =
+ {
+ FACILITY_CLASS_COOLTRAINER_3,
+ FACILITY_CLASS_BLACK_BELT_2,
+ FACILITY_CLASS_CAMPER_2,
+ FACILITY_CLASS_YOUNGSTER_2,
+ FACILITY_CLASS_PSYCHIC_3,
+ FACILITY_CLASS_BUG_CATCHER_2,
+ FACILITY_CLASS_TAMER,
+ FACILITY_CLASS_JUGGLER
+ },
+ [FEMALE] =
+ {
+ FACILITY_CLASS_COOLTRAINER_4,
+ FACILITY_CLASS_CHANNELER,
+ FACILITY_CLASS_PICNICKER_2,
+ FACILITY_CLASS_LASS_2,
+ FACILITY_CLASS_PSYCHIC_2,
+ FACILITY_CLASS_BATTLE_GIRL,
+ FACILITY_CLASS_PKMN_BREEDER_2,
+ FACILITY_CLASS_BEAUTY_2
+ }
};
-static bool8 (*const sTrainerCardTasks[])(struct Task *) =
+static bool8 (*const sTrainerCardFlipTasks[])(struct Task *) =
{
- sub_808B254,
- sub_808B294,
- sub_808B3C4,
- sub_808B4D8,
- sub_808B540,
- sub_808B66C
+ Task_BeginCardFlip,
+ Task_AnimateCardFlipDown,
+ Task_DrawFlippedCardSide,
+ Task_SetCardFlipped,
+ Task_AnimateCardFlipUp,
+ Task_EndCardFlip
};
-static const u8 sTrainerCardPlayerNameXPositions[] = {0x14, 0x10};
-static const u8 sTrainerCardPlayerNameYPositions[] = {0x1D, 0x21};
+static const u8 sTrainerCardFrontNameXPositions[] = {0x14, 0x10};
+static const u8 sTrainerCardFrontNameYPositions[] = {0x1D, 0x21};
static const u8 sTrainerCardIdXPositions[] = {0x8E, 0x80};
static const u8 sTrainerCardIdYPositions[] = {0xA, 0x9};
-static const u8 *const sTrainerCardTextColors[] = {sFireRedTrainerCardPage1TextColors, sEmeraldTrainerCardPage1TextColors};
+static const u8 *const sTimeColonTextColors[] = {sTrainerCardTextColors, sTimeColonInvisibleTextColors};
static const u8 sTrainerCardTimeHoursXPositions[] = {0x65, 0x55};
static const u8 sTrainerCardTimeHoursYPositions[] = {0x77, 0x67};
static const u8 sTrainerCardTimeMinutesXPositions[] = {0x7C, 0x6C};
static const u8 sTrainerCardTimeMinutesYPositions[] = {0x58, 0x59};
static const u8 sTrainerCardProfilePhraseXPositions[] = {0x73, 0x69};
static const u8 sTrainerCardProfilePhraseYPositions[] = {0x82, 0x78};
-static const u8 sUnknown_83CD93C[] = {0x8A, 0xD8};
-static const u8 sUnknown_83CD93E[] = {0xB, 0xA};
+static const u8 sTrainerCardBackNameXPositions[] = {0x8A, 0xD8};
+static const u8 sTrainerCardBackNameYPositions[] = {0xB, 0xA};
static const u8 sTrainerCardHofDebutXPositions[] = {0xA, 0x10, 0x0, 0x0};
static const u8 *const sLinkTrainerCardRecordStrings[] = {gText_LinkBattles, gText_LinkCableBattles};
-static const u8 sUnknown_83CD94C[] = {5, 6, 7, 8, 9, 10};
-static const u8 sUnknown_83CD952[] = {0, 4, 8, 12, 16, 20};
-static const u8 sUnknown_83CD958[] = {11, 12, 13, 14};
-static const u8 sUnknown_83CD95C[] = {7, 6, 0, 0};
+static const u8 sPokemonIconPalSlots[] = {5, 6, 7, 8, 9, 10};
+static const u8 sPokemonIconXOffsets[] = {0, 4, 8, 12, 16, 20};
+static const u8 sStickerPalSlots[] = {11, 12, 13, 14};
+static const u8 sStarYOffsets[] = {7, 6, 0, 0};
static const struct TrainerCard sLinkPlayerTrainerCardTemplate1 =
{
- .gender = MALE,
- .stars = 4,
- .hasPokedex = TRUE,
- .caughtAllHoenn = TRUE,
- .hasAllPaintings = TRUE,
- .hofDebutHours = 999,
- .hofDebutMinutes = 59,
- .hofDebutSeconds = 59,
- .caughtMonsCount = 200,
- .trainerId = 0x6072,
- .playTimeHours = 999,
- .playTimeMinutes = 59,
- .linkBattleWins = 5535,
- .linkBattleLosses = 5535,
- .battleTowerWins = 5535,
- .battleTowerStraightWins = 5535,
- .contestsWithFriends = 55555,
- .pokeblocksWithFriends = 44444,
- .pokemonTrades = 33333,
- .money = 999999,
- .var_28 = {0, 0, 0, 0},
- .playerName = _("あかみ どりお"),
+ .rse = {
+ .gender = MALE,
+ .stars = 4,
+ .hasPokedex = TRUE,
+ .caughtAllHoenn = TRUE,
+ .hasAllPaintings = TRUE,
+ .hofDebutHours = 999,
+ .hofDebutMinutes = 59,
+ .hofDebutSeconds = 59,
+ .caughtMonsCount = 200,
+ .trainerId = 0x6072,
+ .playTimeHours = 999,
+ .playTimeMinutes = 59,
+ .linkBattleWins = 5535,
+ .linkBattleLosses = 5535,
+ .battleTowerWins = 5535,
+ .battleTowerStraightWins = 5535,
+ .contestsWithFriends = 55555,
+ .pokeblocksWithFriends = 44444,
+ .pokemonTrades = 33333,
+ .money = 999999,
+ .easyChatProfile = {0, 0, 0, 0},
+ .playerName = _("あかみ どりお")
+ },
.version = VERSION_FIRE_RED,
- .var_3A = 0,
+ .hasAllFrontierSymbols = FALSE,
.berryCrushPoints = 5555,
.unionRoomNum = 8500,
.berriesPicked = 5456,
.jumpsInRow = 6300,
- .var_4C = TRUE,
+ .shouldDrawStickers = TRUE,
.hasAllMons = TRUE,
- .var_4E = 2,
- .var_4F = 0,
- .var_50 = {1, 2, 3, 0},
+ .monIconTint = MON_ICON_TINT_PINK,
+ .facilityClass = 0,
+ .stickers = {1, 2, 3},
.monSpecies = {SPECIES_CHARIZARD, SPECIES_DIGLETT, SPECIES_NIDORINA, SPECIES_FEAROW, SPECIES_PARAS, SPECIES_SLOWBRO}
};
static const struct TrainerCard sLinkPlayerTrainerCardTemplate2 =
{
- .gender = FEMALE,
- .stars = 2,
- .hasPokedex = TRUE,
- .caughtAllHoenn = TRUE,
- .hasAllPaintings = TRUE,
- .hofDebutHours = 999,
- .hofDebutMinutes = 59,
- .hofDebutSeconds = 59,
- .caughtMonsCount = 200,
- .trainerId = 0x6072,
- .playTimeHours = 999,
- .playTimeMinutes = 59,
- .linkBattleWins = 5535,
- .linkBattleLosses = 5535,
- .battleTowerWins = 65535,
- .battleTowerStraightWins = 65535,
- .contestsWithFriends = 55555,
- .pokeblocksWithFriends = 44444,
- .pokemonTrades = 33333,
- .money = 999999,
- .var_28 = {0, 0, 0, 0},
- .playerName = _("るびさふぁこ!"),
+ .rse = {
+ .gender = FEMALE,
+ .stars = 2,
+ .hasPokedex = TRUE,
+ .caughtAllHoenn = TRUE,
+ .hasAllPaintings = TRUE,
+ .hofDebutHours = 999,
+ .hofDebutMinutes = 59,
+ .hofDebutSeconds = 59,
+ .caughtMonsCount = 200,
+ .trainerId = 0x6072,
+ .playTimeHours = 999,
+ .playTimeMinutes = 59,
+ .linkBattleWins = 5535,
+ .linkBattleLosses = 5535,
+ .battleTowerWins = 65535,
+ .battleTowerStraightWins = 65535,
+ .contestsWithFriends = 55555,
+ .pokeblocksWithFriends = 44444,
+ .pokemonTrades = 33333,
+ .money = 999999,
+ .easyChatProfile = {0, 0, 0, 0},
+ .playerName = _("るびさふぁこ!")
+ },
.version = 0,
- .var_3A = 0,
+ .hasAllFrontierSymbols = FALSE,
.berryCrushPoints = 555,
.unionRoomNum = 500,
.berriesPicked = 456,
.jumpsInRow = 300,
- .var_4C = TRUE,
+ .shouldDrawStickers = TRUE,
.hasAllMons = TRUE,
- .var_4E = 2,
- .var_4F = 0,
- .var_50 = {1, 2, 3, 0},
+ .monIconTint = MON_ICON_TINT_PINK,
+ .facilityClass = 0,
+ .stickers = {1, 2, 3},
.monSpecies = {SPECIES_CHARIZARD, SPECIES_DIGLETT, SPECIES_NIDORINA, SPECIES_FEAROW, SPECIES_PARAS, SPECIES_SLOWBRO}
};
@@ -428,7 +457,7 @@ static void VBlankCB_TrainerCard(void)
LoadOam();
ProcessSpriteCopyRequests();
TransferPlttBuffer();
- sub_808B180();
+ BlinkTimeColon();
if (sTrainerCardDataPtr->allowDMACopy)
DmaCopy16(3, &gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 0x140);
}
@@ -461,43 +490,54 @@ static void CloseTrainerCard(u8 taskId)
DestroyTask(taskId);
}
+// States for Task_TrainerCard. Skips the initial states, which are done once in order
+#define STATE_HANDLE_INPUT_FRONT 10
+#define STATE_HANDLE_INPUT_BACK 11
+#define STATE_WAIT_FLIP_TO_BACK 12
+#define STATE_WAIT_FLIP_TO_FRONT 13
+#define STATE_CLOSE_CARD 14
+#define STATE_WAIT_LINK_PARTNER 15
+#define STATE_CLOSE_CARD_LINK 16
+
static void Task_TrainerCard(u8 taskId)
{
- switch (sTrainerCardDataPtr->taskState)
+ switch (sTrainerCardDataPtr->mainState)
{
+ // Draw card initially
case 0:
if (!IsDma3ManagerBusyWithBgCopy())
{
FillWindowPixelBuffer(1, PIXEL_FILL(0));
- sTrainerCardDataPtr->taskState++;
+ sTrainerCardDataPtr->mainState++;
}
break;
case 1:
- if (PrintAllOnCardPage1())
- sTrainerCardDataPtr->taskState++;
+ if (PrintAllOnCardFront())
+ sTrainerCardDataPtr->mainState++;
break;
case 2:
- PutTrainerCardWindow(1);
- sTrainerCardDataPtr->taskState++;
+ DrawTrainerCardWindow(1);
+ sTrainerCardDataPtr->mainState++;
break;
case 3:
FillWindowPixelBuffer(2, PIXEL_FILL(0));
- sub_808B838();
- PutTrainerCardWindow(2);
- sTrainerCardDataPtr->taskState++;
+ CreateTrainerCardTrainerPic();
+ DrawTrainerCardWindow(2);
+ sTrainerCardDataPtr->mainState++;
break;
case 4:
- LoadTrainerCardTilemap2(&sTrainerCardDataPtr->var_E1C);
- sTrainerCardDataPtr->taskState++;
+ DrawCardScreenBackground(sTrainerCardDataPtr->bgTilemap);
+ sTrainerCardDataPtr->mainState++;
break;
case 5:
- LoadTrainerCardTilemap0(&sTrainerCardDataPtr->var_4BC);
- sTrainerCardDataPtr->taskState++;
+ DrawCardFrontOrBack(sTrainerCardDataPtr->frontTilemap);
+ sTrainerCardDataPtr->mainState++;
break;
case 6:
- TrainerCard_PrintStarsAndBadgesOnCard();
- sTrainerCardDataPtr->taskState++;
+ DrawStarsAndBadgesOnCard();
+ sTrainerCardDataPtr->mainState++;
break;
+ // Fade in
case 7:
if (gWirelessCommType == 1 && gReceivedRemoteLinkPlayers == TRUE)
{
@@ -506,71 +546,72 @@ static void Task_TrainerCard(u8 taskId)
}
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
SetVBlankCallback(VBlankCB_TrainerCard);
- sTrainerCardDataPtr->taskState++;
+ sTrainerCardDataPtr->mainState++;
break;
case 8:
if (!UpdatePaletteFade() && !IsDma3ManagerBusyWithBgCopy())
{
PlaySE(SE_CARD3);
- sTrainerCardDataPtr->taskState = 10;
+ sTrainerCardDataPtr->mainState = STATE_HANDLE_INPUT_FRONT;
}
break;
case 9:
if (!IsSEPlaying())
- sTrainerCardDataPtr->taskState++;
+ sTrainerCardDataPtr->mainState++;
break;
- case 10:
- if (!gReceivedRemoteLinkPlayers && sTrainerCardDataPtr->var_7BCE)
+ case STATE_HANDLE_INPUT_FRONT:
+ // Blink the : in play time
+ if (!gReceivedRemoteLinkPlayers && sTrainerCardDataPtr->timeColonNeedDraw)
{
PrintTimeOnCard();
- PutTrainerCardWindow(1);
- sTrainerCardDataPtr->var_7BCE = FALSE;
+ DrawTrainerCardWindow(1);
+ sTrainerCardDataPtr->timeColonNeedDraw = FALSE;
}
if (JOY_NEW(A_BUTTON))
{
HelpSystem_SetSomeVariable2(11);
- sub_808B1D4();
+ FlipTrainerCard();
PlaySE(SE_CARD1);
- sTrainerCardDataPtr->taskState = 12;
+ sTrainerCardDataPtr->mainState = STATE_WAIT_FLIP_TO_BACK;
}
else if (JOY_NEW(B_BUTTON))
{
if (gReceivedRemoteLinkPlayers && sTrainerCardDataPtr->isLink && InUnionRoom() == TRUE)
{
- sTrainerCardDataPtr->taskState = 15;
+ sTrainerCardDataPtr->mainState = STATE_WAIT_LINK_PARTNER;
}
else
{
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
- sTrainerCardDataPtr->taskState = 14;
+ sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD;
}
}
break;
- case 12:
- if (sub_808B1FC() && sub_8058244() != TRUE)
+ case STATE_WAIT_FLIP_TO_BACK:
+ if (IsCardFlipTaskActive() && sub_8058244() != TRUE)
{
PlaySE(SE_CARD3);
- sTrainerCardDataPtr->taskState = 11;
+ sTrainerCardDataPtr->mainState = STATE_HANDLE_INPUT_BACK;
}
break;
- case 11:
+ case STATE_HANDLE_INPUT_BACK:
if (JOY_NEW(B_BUTTON))
{
if (gReceivedRemoteLinkPlayers && sTrainerCardDataPtr->isLink && InUnionRoom() == TRUE)
{
- sTrainerCardDataPtr->taskState = 15;
+ sTrainerCardDataPtr->mainState = STATE_WAIT_LINK_PARTNER;
}
else if (gReceivedRemoteLinkPlayers)
{
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
- sTrainerCardDataPtr->taskState = 14;
+ sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD;
}
else
{
HelpSystem_SetSomeVariable2(10);
- sub_808B1D4();
- sTrainerCardDataPtr->taskState = 13;
+ FlipTrainerCard();
+ sTrainerCardDataPtr->mainState = STATE_WAIT_FLIP_TO_FRONT;
PlaySE(SE_CARD1);
}
}
@@ -578,37 +619,37 @@ static void Task_TrainerCard(u8 taskId)
{
if (gReceivedRemoteLinkPlayers && sTrainerCardDataPtr->isLink && InUnionRoom() == TRUE)
{
- sTrainerCardDataPtr->taskState = 15;
+ sTrainerCardDataPtr->mainState = STATE_WAIT_LINK_PARTNER;
}
else
{
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
- sTrainerCardDataPtr->taskState = 14;
+ sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD;
}
}
break;
- case 15:
+ case STATE_WAIT_LINK_PARTNER:
Link_TryStartSend5FFF();
DrawDialogueFrame(0, 1);
AddTextPrinterParameterized(0, 2, gText_WaitingTrainerFinishReading, 0, 1, TEXT_SPEED_FF, 0);
CopyWindowToVram(0, 3);
- sTrainerCardDataPtr->taskState = 16;
+ sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD_LINK;
break;
- case 16:
+ case STATE_CLOSE_CARD_LINK:
if (!gReceivedRemoteLinkPlayers)
{
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
- sTrainerCardDataPtr->taskState = 14;
+ sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD;
}
break;
- case 14:
+ case STATE_CLOSE_CARD:
if (!UpdatePaletteFade())
CloseTrainerCard(taskId);
break;
- case 13:
- if (sub_808B1FC() && sub_8058244() != TRUE)
+ case STATE_WAIT_FLIP_TO_FRONT:
+ if (IsCardFlipTaskActive() && sub_8058244() != TRUE)
{
- sTrainerCardDataPtr->taskState = 10;
+ sTrainerCardDataPtr->mainState = STATE_HANDLE_INPUT_FRONT;
PlaySE(SE_CARD3);
}
break;
@@ -620,45 +661,46 @@ static bool8 LoadCardGfx(void)
switch (sTrainerCardDataPtr->gfxLoadState)
{
case 0:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LZ77UnCompWram(sUnknown_83CCE30, &sTrainerCardDataPtr->var_E1C);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LZ77UnCompWram(sHoennTrainerCardBg_Tilemap, sTrainerCardDataPtr->bgTilemap);
else
- LZ77UnCompWram(sUnknown_83CCEC8, &sTrainerCardDataPtr->var_E1C);
+ LZ77UnCompWram(sKantoTrainerCardBg_Tilemap, sTrainerCardDataPtr->bgTilemap);
break;
case 1:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LZ77UnCompWram(sUnknown_83CC8A8, &sTrainerCardDataPtr->var_96C);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LZ77UnCompWram(sHoennTrainerCardBack_Tilemap, sTrainerCardDataPtr->backTilemap);
else
- LZ77UnCompWram(sUnknown_83CC984, &sTrainerCardDataPtr->var_96C);
+ LZ77UnCompWram(sKantoTrainerCardBack_Tilemap, sTrainerCardDataPtr->backTilemap);
break;
case 2:
if (!sTrainerCardDataPtr->isLink)
{
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LZ77UnCompWram(sUnknown_83CC4DC, &sTrainerCardDataPtr->var_4BC);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LZ77UnCompWram(sHoennTrainerCardFront_Tilemap, sTrainerCardDataPtr->frontTilemap);
else
- LZ77UnCompWram(sUnknown_83CC6F0, &sTrainerCardDataPtr->var_4BC);
+ LZ77UnCompWram(sKantoTrainerCardFront_Tilemap, sTrainerCardDataPtr->frontTilemap);
}
else
{
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LZ77UnCompWram(sUnknown_83CCAB0, &sTrainerCardDataPtr->var_4BC);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LZ77UnCompWram(sHoennTrainerCardFrontLink_Tilemap, sTrainerCardDataPtr->frontTilemap);
else
- LZ77UnCompWram(sUnknown_83CCCA4, &sTrainerCardDataPtr->var_4BC);
+ LZ77UnCompWram(sKantoTrainerCardFrontLink_Tilemap, sTrainerCardDataPtr->frontTilemap);
}
break;
case 3:
- LZ77UnCompWram(sFireRedTrainerCardBadges_Tile, &sTrainerCardDataPtr->cardTiles);
+ // ? Doesnt check for RSE, sHoennTrainerCardBadges_Gfx goes unused
+ LZ77UnCompWram(sKantoTrainerCardBadges_Gfx, sTrainerCardDataPtr->badgeTiles);
break;
case 4:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LZ77UnCompWram(gEmeraldTrainerCard_Gfx, &sTrainerCardDataPtr->var_18CC);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LZ77UnCompWram(gHoennTrainerCard_Gfx, &sTrainerCardDataPtr->cardTiles);
else
- LZ77UnCompWram(gFireRedTrainerCard_Gfx, &sTrainerCardDataPtr->var_18CC);
+ LZ77UnCompWram(gKantoTrainerCard_Gfx, &sTrainerCardDataPtr->cardTiles);
break;
case 5:
if (sTrainerCardDataPtr->cardType == CARD_TYPE_FRLG)
- LZ77UnCompWram(sTrainerCardStickers, &sTrainerCardDataPtr->bgTiles);
+ LZ77UnCompWram(sTrainerCardStickers_Gfx, sTrainerCardDataPtr->stickerTiles);
break;
default:
sTrainerCardDataPtr->gfxLoadState = 0;
@@ -674,7 +716,7 @@ static void CB2_InitTrainerCard(void)
{
case 0:
ResetGpuRegs();
- sub_8089DA4();
+ SetUpTrainerCardTask();
gMain.state++;
break;
case 1:
@@ -694,7 +736,7 @@ static void CB2_InitTrainerCard(void)
gMain.state++;
break;
case 5:
- ResetTrainerCard();
+ InitBgsAndWindows();
gMain.state++;
break;
case 6:
@@ -702,7 +744,7 @@ static void CB2_InitTrainerCard(void)
gMain.state++;
break;
case 7:
- sub_808AB10();
+ LoadMonIconGfx();
gMain.state++;
break;
case 8:
@@ -710,7 +752,7 @@ static void CB2_InitTrainerCard(void)
gMain.state++;
break;
case 9:
- TrainerCardLoadStickerPals();
+ LoadStickerGfx();
gMain.state++;
break;
case 10:
@@ -718,7 +760,7 @@ static void CB2_InitTrainerCard(void)
gMain.state++;
break;
case 11:
- sub_8089ECC();
+ BufferTextForCardBack();
gMain.state++;
break;
case 12:
@@ -744,16 +786,16 @@ static u8 GetTrainerStarCount(struct TrainerCard *trainerCard)
{
u8 stars = 0;
- if (trainerCard->hofDebutHours != 0 || trainerCard->hofDebutMinutes != 0 || trainerCard->hofDebutSeconds != 0)
+ if (trainerCard->rse.hofDebutHours != 0 || trainerCard->rse.hofDebutMinutes != 0 || trainerCard->rse.hofDebutSeconds != 0)
stars++;
- if (trainerCard->caughtAllHoenn)
+ if (trainerCard->rse.caughtAllHoenn)
stars++;
- if (trainerCard->battleTowerStraightWins > 49)
+ if (trainerCard->rse.battleTowerStraightWins > 49)
stars++;
- if (trainerCard->hasAllPaintings)
+ if (trainerCard->rse.hasAllPaintings)
stars++;
return stars;
@@ -764,63 +806,63 @@ static void SetPlayerCardData(struct TrainerCard *trainerCard, u8 cardType)
u32 playTime;
u8 i;
- trainerCard->gender = gSaveBlock2Ptr->playerGender;
- trainerCard->playTimeHours = gSaveBlock2Ptr->playTimeHours;
- trainerCard->playTimeMinutes = gSaveBlock2Ptr->playTimeMinutes;
+ trainerCard->rse.gender = gSaveBlock2Ptr->playerGender;
+ trainerCard->rse.playTimeHours = gSaveBlock2Ptr->playTimeHours;
+ trainerCard->rse.playTimeMinutes = gSaveBlock2Ptr->playTimeMinutes;
playTime = GetGameStat(GAME_STAT_FIRST_HOF_PLAY_TIME);
if (!GetGameStat(GAME_STAT_ENTERED_HOF))
playTime = 0;
- trainerCard->hofDebutHours = playTime >> 16;
- trainerCard->hofDebutMinutes = (playTime >> 8) & 0xFF;
- trainerCard->hofDebutSeconds = playTime & 0xFF;
+ trainerCard->rse.hofDebutHours = playTime >> 16;
+ trainerCard->rse.hofDebutMinutes = (playTime >> 8) & 0xFF;
+ trainerCard->rse.hofDebutSeconds = playTime & 0xFF;
if ((playTime >> 16) > 999)
{
- trainerCard->hofDebutHours = 999;
- trainerCard->hofDebutMinutes = 59;
- trainerCard->hofDebutSeconds = 59;
+ trainerCard->rse.hofDebutHours = 999;
+ trainerCard->rse.hofDebutMinutes = 59;
+ trainerCard->rse.hofDebutSeconds = 59;
}
- trainerCard->hasPokedex = FlagGet(FLAG_SYS_POKEDEX_GET);
- trainerCard->caughtAllHoenn = HasAllHoennMons();
- trainerCard->caughtMonsCount = GetCaughtMonsCount();
+ trainerCard->rse.hasPokedex = FlagGet(FLAG_SYS_POKEDEX_GET);
+ trainerCard->rse.caughtAllHoenn = HasAllHoennMons();
+ trainerCard->rse.caughtMonsCount = GetCaughtMonsCount();
- trainerCard->trainerId = (gSaveBlock2Ptr->playerTrainerId[1] << 8) | gSaveBlock2Ptr->playerTrainerId[0];
+ trainerCard->rse.trainerId = (gSaveBlock2Ptr->playerTrainerId[1] << 8) | gSaveBlock2Ptr->playerTrainerId[0];
- trainerCard->linkBattleWins = GetCappedGameStat(GAME_STAT_LINK_BATTLE_WINS, 9999);
- trainerCard->linkBattleLosses = GetCappedGameStat(GAME_STAT_LINK_BATTLE_LOSSES, 9999);
- trainerCard->pokemonTrades = GetCappedGameStat(GAME_STAT_POKEMON_TRADES, 0xFFFF);
+ trainerCard->rse.linkBattleWins = GetCappedGameStat(GAME_STAT_LINK_BATTLE_WINS, 9999);
+ trainerCard->rse.linkBattleLosses = GetCappedGameStat(GAME_STAT_LINK_BATTLE_LOSSES, 9999);
+ trainerCard->rse.pokemonTrades = GetCappedGameStat(GAME_STAT_POKEMON_TRADES, 0xFFFF);
- trainerCard->battleTowerWins = 0;
- trainerCard->battleTowerStraightWins = 0;
- trainerCard->contestsWithFriends = 0;
- trainerCard->pokeblocksWithFriends = 0;
+ trainerCard->rse.battleTowerWins = 0;
+ trainerCard->rse.battleTowerStraightWins = 0;
+ trainerCard->rse.contestsWithFriends = 0;
+ trainerCard->rse.pokeblocksWithFriends = 0;
- trainerCard->hasAllPaintings = FALSE;
+ trainerCard->rse.hasAllPaintings = FALSE;
- trainerCard->money = GetMoney(&gSaveBlock1Ptr->money);
+ trainerCard->rse.money = GetMoney(&gSaveBlock1Ptr->money);
- for (i = 0; i < 4; i++)
- trainerCard->var_28[i] = gSaveBlock1Ptr->easyChatProfile[i];
+ for (i = 0; i < TRAINER_CARD_PROFILE_LENGTH; i++)
+ trainerCard->rse.easyChatProfile[i] = gSaveBlock1Ptr->easyChatProfile[i];
- StringCopy(trainerCard->playerName, gSaveBlock2Ptr->playerName);
+ StringCopy(trainerCard->rse.playerName, gSaveBlock2Ptr->playerName);
if (cardType == CARD_TYPE_FRLG)
{
- trainerCard->stars = GetTrainerStarCount(trainerCard);
+ trainerCard->rse.stars = GetTrainerStarCount(trainerCard);
}
- else if (cardType == CARD_TYPE_EMERALD)
+ else if (cardType == CARD_TYPE_RSE)
{
- trainerCard->stars = 0;
- if (trainerCard->hofDebutHours != 0 || (trainerCard->hofDebutMinutes != 0 || trainerCard->hofDebutSeconds != 0))
- trainerCard->stars = cardType;
+ trainerCard->rse.stars = 0;
+ if (trainerCard->rse.hofDebutHours != 0 || (trainerCard->rse.hofDebutMinutes != 0 || trainerCard->rse.hofDebutSeconds != 0))
+ trainerCard->rse.stars = cardType;
if (HasAllKantoMons())
- trainerCard->stars++;
+ trainerCard->rse.stars++;
if (HasAllMons())
- trainerCard->stars++;
+ trainerCard->rse.stars++;
}
}
@@ -829,43 +871,43 @@ void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard)
u8 id = 0;
trainerCard->version = GAME_VERSION;
- SetPlayerCardData(trainerCard, CARD_TYPE_EMERALD);
+ SetPlayerCardData(trainerCard, CARD_TYPE_RSE);
if (GetCardType() != CARD_TYPE_FRLG)
return;
- trainerCard->stars = id;
- if (trainerCard->hofDebutHours != 0 || trainerCard->hofDebutMinutes != 0 || trainerCard->hofDebutSeconds != 0)
- trainerCard->stars = 1;
+ trainerCard->rse.stars = id;
+ if (trainerCard->rse.hofDebutHours != 0 || trainerCard->rse.hofDebutMinutes != 0 || trainerCard->rse.hofDebutSeconds != 0)
+ trainerCard->rse.stars = 1;
- trainerCard->caughtAllHoenn = HasAllKantoMons();
+ trainerCard->rse.caughtAllHoenn = HasAllKantoMons();
trainerCard->hasAllMons = HasAllMons();
trainerCard->berriesPicked = gSaveBlock2Ptr->berryPick.berriesPicked;
trainerCard->jumpsInRow = gSaveBlock2Ptr->pokeJump.jumpsInRow;
trainerCard->berryCrushPoints = GetCappedGameStat(GAME_STAT_BERRY_CRUSH_POINTS, 0xFFFF);
trainerCard->unionRoomNum = GetCappedGameStat(GAME_STAT_NUM_UNION_ROOM_BATTLES, 0xFFFF);
- trainerCard->var_4C = TRUE;
+ trainerCard->shouldDrawStickers = TRUE;
- if (trainerCard->caughtAllHoenn)
- trainerCard->stars++;
+ if (trainerCard->rse.caughtAllHoenn)
+ trainerCard->rse.stars++;
if (trainerCard->hasAllMons)
- trainerCard->stars++;
+ trainerCard->rse.stars++;
if (trainerCard->berriesPicked >= 200 && trainerCard->jumpsInRow >= 200)
- trainerCard->stars++;
+ trainerCard->rse.stars++;
- id = ((u16)trainerCard->trainerId) % 8;
- if (trainerCard->gender == FEMALE)
- trainerCard->var_4F = sLinkTrainerCardFacilityClasses[1][id];
+ id = ((u16)trainerCard->rse.trainerId) % NUM_LINK_TRAINER_CARD_CLASSES;
+ if (trainerCard->rse.gender == FEMALE)
+ trainerCard->facilityClass = sLinkTrainerPicFacilityClasses[FEMALE][id];
else
- trainerCard->var_4F = sLinkTrainerCardFacilityClasses[0][id];
+ trainerCard->facilityClass = sLinkTrainerPicFacilityClasses[MALE][id];
- trainerCard->var_50[0] = VarGet(VAR_HOF_BRAG_STATE);
- trainerCard->var_50[1] = VarGet(VAR_EGG_BRAG_STATE);
- trainerCard->var_50[2] = VarGet(VAR_LINK_WIN_BRAG_STATE);
+ trainerCard->stickers[0] = VarGet(VAR_HOF_BRAG_STATE);
+ trainerCard->stickers[1] = VarGet(VAR_EGG_BRAG_STATE);
+ trainerCard->stickers[2] = VarGet(VAR_LINK_WIN_BRAG_STATE);
- trainerCard->var_4E = VarGet(VAR_TRAINER_CARD_MON_ICON_TINT_IDX);
+ trainerCard->monIconTint = VarGet(VAR_TRAINER_CARD_MON_ICON_TINT_IDX);
trainerCard->monSpecies[0] = MailSpeciesToIconSpecies(VarGet(VAR_TRAINER_CARD_MON_ICON_1));
trainerCard->monSpecies[1] = MailSpeciesToIconSpecies(VarGet(VAR_TRAINER_CARD_MON_ICON_2));
@@ -888,19 +930,19 @@ static void SetDataFromTrainerCard(void)
sTrainerCardDataPtr->var_F = FALSE;
sTrainerCardDataPtr->hasTrades = FALSE;
- memset(&sTrainerCardDataPtr->hasBadge, FALSE, BADGE_COUNT);
- if (sTrainerCardDataPtr->trainerCard.hasPokedex)
+ memset(sTrainerCardDataPtr->hasBadge, FALSE, sizeof(sTrainerCardDataPtr->hasBadge));
+ if (sTrainerCardDataPtr->trainerCard.rse.hasPokedex)
sTrainerCardDataPtr->hasPokedex++;
- if (sTrainerCardDataPtr->trainerCard.hofDebutHours != 0
- || sTrainerCardDataPtr->trainerCard.hofDebutMinutes != 0
- || sTrainerCardDataPtr->trainerCard.hofDebutSeconds != 0)
+ if (sTrainerCardDataPtr->trainerCard.rse.hofDebutHours != 0
+ || sTrainerCardDataPtr->trainerCard.rse.hofDebutMinutes != 0
+ || sTrainerCardDataPtr->trainerCard.rse.hofDebutSeconds != 0)
sTrainerCardDataPtr->hasHofResult++;
- if (sTrainerCardDataPtr->trainerCard.linkBattleWins != 0 || sTrainerCardDataPtr->trainerCard.linkBattleLosses != 0)
+ if (sTrainerCardDataPtr->trainerCard.rse.linkBattleWins != 0 || sTrainerCardDataPtr->trainerCard.rse.linkBattleLosses != 0)
sTrainerCardDataPtr->hasLinkResults++;
- if (sTrainerCardDataPtr->trainerCard.pokemonTrades != 0)
+ if (sTrainerCardDataPtr->trainerCard.rse.pokemonTrades != 0)
sTrainerCardDataPtr->hasTrades++;
for (i = 0, badgeFlag = FLAG_BADGE01_GET; badgeFlag <= FLAG_BADGE08_GET; badgeFlag++, i++)
@@ -929,6 +971,7 @@ static void HandleGpuRegs(void)
EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_HBLANK);
}
+// Part of animating card flip
static void sub_8089BD8(u16 arg0)
{
s8 quotient = (arg0 + 40) / 10;
@@ -936,8 +979,8 @@ static void sub_8089BD8(u16 arg0)
if (quotient <= 4)
quotient = 0;
- sTrainerCardDataPtr->var_456 = quotient;
- SetGpuReg(REG_OFFSET_BLDY, sTrainerCardDataPtr->var_456);
+ sTrainerCardDataPtr->flipBlendY = quotient;
+ SetGpuReg(REG_OFFSET_BLDY, sTrainerCardDataPtr->flipBlendY);
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(sTrainerCardDataPtr->var_7BCC, 160 - sTrainerCardDataPtr->var_7BCC));
}
@@ -978,7 +1021,7 @@ static void sub_8089CA4(void)
SetGpuReg(REG_OFFSET_BG3VOFS, DISPCNT_MODE_0);
}
-static void ResetTrainerCard(void)
+static void InitBgsAndWindows(void)
{
ResetSpriteData();
ResetPaletteFade();
@@ -1002,21 +1045,21 @@ static void SetTrainerCardCB2(void)
HelpSystem_SetSomeVariable2(10);
}
-static void sub_8089DA4(void)
+static void SetUpTrainerCardTask(void)
{
ResetTasks();
ScanlineEffect_Stop();
CreateTask(Task_TrainerCard, 0);
- sub_808B774();
+ InitTrainerCardData();
SetDataFromTrainerCard();
}
-static bool8 PrintAllOnCardPage1(void)
+static bool8 PrintAllOnCardFront(void)
{
switch (sTrainerCardDataPtr->printState)
{
case 0:
- PrintNameOnCard();
+ PrintNameOnCardFront();
break;
case 1:
PrintIdOnCard();
@@ -1041,18 +1084,18 @@ static bool8 PrintAllOnCardPage1(void)
return FALSE;
}
-static bool8 PrintStringsOnCardPage2(void)
+static bool8 PrintAllOnCardBack(void)
{
switch (sTrainerCardDataPtr->printState)
{
case 0:
- sub_808A4FC();
+ PrintNameOnCardBack();
break;
case 1:
- PrintHofDebutStringOnCard();
+ PrintHofDebutTimeOnCard();
break;
case 2:
- PrintWinsLossesStringOnCard();
+ PrintLinkBattleResultsOnCard();
break;
case 3:
PrintTradesStringOnCard();
@@ -1064,10 +1107,10 @@ static bool8 PrintStringsOnCardPage2(void)
PrintUnionStringOnCard();
break;
case 6:
- TrainerCard_PrintPokemonIconsOnCard();
+ PrintPokemonIconsOnCard();
break;
case 7:
- sub_808ABE0();
+ PrintStickersOnCard();
break;
default:
sTrainerCardDataPtr->printState = 0;
@@ -1077,27 +1120,27 @@ static bool8 PrintStringsOnCardPage2(void)
return FALSE;
}
-static void sub_8089ECC(void)
+static void BufferTextForCardBack(void)
{
- PrintNameOnCard2();
- PrintHofTimeOnCard();
- PrintLinkResultsNumsOnCard();
- PrintTradesNumOnCard();
- PrintBerryCrushNumOnCard();
- PrintUnionNumOnCard();
+ BufferNameForCardBack();
+ BufferHofDebutTime();
+ BufferLinkBattleResults();
+ BufferNumTrades();
+ BufferBerryCrushPoints();
+ BufferUnionRoomStats();
}
-static void PrintNameOnCard(void)
+static void PrintNameOnCardFront(void)
{
u8 buffer[2][32];
u8* txtPtr;
txtPtr = StringCopy(buffer[0], gText_TrainerCardName);
txtPtr = buffer[1];
- StringCopy(txtPtr, sTrainerCardDataPtr->trainerCard.playerName);
+ StringCopy(txtPtr, sTrainerCardDataPtr->trainerCard.rse.playerName);
ConvertInternationalString(txtPtr, sTrainerCardDataPtr->language);
StringAppend(buffer[0], txtPtr);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardPlayerNameXPositions[sTrainerCardDataPtr->cardType], sTrainerCardPlayerNameYPositions[sTrainerCardDataPtr->cardType], sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer[0]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardFrontNameXPositions[sTrainerCardDataPtr->cardType], sTrainerCardFrontNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer[0]);
}
static void PrintIdOnCard(void)
@@ -1106,8 +1149,8 @@ static void PrintIdOnCard(void)
u8* txtPtr;
txtPtr = StringCopy(buffer, gText_TrainerCardIDNo);
- ConvertIntToDecimalStringN(txtPtr, sTrainerCardDataPtr->trainerCard.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardIdXPositions[sTrainerCardDataPtr->cardType], sTrainerCardIdYPositions[sTrainerCardDataPtr->cardType], sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
+ ConvertIntToDecimalStringN(txtPtr, sTrainerCardDataPtr->trainerCard.rse.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardIdXPositions[sTrainerCardDataPtr->cardType], sTrainerCardIdYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
}
static void PrintMoneyOnCard(void)
@@ -1117,18 +1160,18 @@ static void PrintMoneyOnCard(void)
u8 x;
txtPtr = StringCopy(buffer, gText_TrainerCardYen);
- ConvertIntToDecimalStringN(txtPtr, sTrainerCardDataPtr->trainerCard.money, STR_CONV_MODE_LEFT_ALIGN, 6);
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ ConvertIntToDecimalStringN(txtPtr, sTrainerCardDataPtr->trainerCard.rse.money, STR_CONV_MODE_LEFT_ALIGN, 6);
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
x = -122 - 6 * StringLength(buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 56, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 56, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 56, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 56, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
}
else
{
x = 118 - 6 * StringLength(buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 57, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 57, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 57, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 57, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
}
}
@@ -1147,20 +1190,20 @@ static void PrintPokedexOnCard(void)
if (FlagGet(FLAG_SYS_POKEDEX_GET))
{
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.caughtMonsCount, 0, 3);
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.caughtMonsCount, 0, 3);
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
x = -120 - 6 * StringLength(buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 72, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 72, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 72, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 72, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
}
else
{
x = 120 - 6 * StringLength(buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 73, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 73, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 73, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 73, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
}
}
}
@@ -1175,8 +1218,8 @@ static void PrintTimeOnCard(void)
minutes = gSaveBlock2Ptr->playTimeMinutes;
if (sTrainerCardDataPtr->isLink)
{
- hours = sTrainerCardDataPtr->trainerCard.playTimeHours;
- minutes = sTrainerCardDataPtr->trainerCard.playTimeMinutes;
+ hours = sTrainerCardDataPtr->trainerCard.rse.playTimeHours;
+ minutes = sTrainerCardDataPtr->trainerCard.rse.playTimeMinutes;
}
if (hours > 999)
@@ -1186,19 +1229,19 @@ static void PrintTimeOnCard(void)
minutes = 59;
FillWindowPixelRect(1, PIXEL_FILL(0), sTrainerCardTimeHoursXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], 50, 12);
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 88, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 88, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
else
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 89, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 89, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
ConvertIntToDecimalStringN(buffer, hours, STR_CONV_MODE_RIGHT_ALIGN, 3);
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeHoursXPositions[sTrainerCardDataPtr->cardType],
- sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
+ sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeHoursYPositions[sTrainerCardDataPtr->cardType],
- sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors[sTrainerCardDataPtr->var_7], TEXT_SPEED_FF, gText_Colon2);
+ sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTimeColonTextColors[sTrainerCardDataPtr->timeColonInvisible], TEXT_SPEED_FF, gText_Colon2);
ConvertIntToDecimalStringN(buffer, minutes, STR_CONV_MODE_LEADING_ZEROS, 2);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeMinutesXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, buffer);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeMinutesXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
}
static void PrintProfilePhraseOnCard(void)
@@ -1206,75 +1249,75 @@ static void PrintProfilePhraseOnCard(void)
if (sTrainerCardDataPtr->isLink)
{
AddTextPrinterParameterized3(1, 2, 10, sTrainerCardProfilePhraseXPositions[sTrainerCardDataPtr->cardType],
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->var_19[0]);
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[0]);
- AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->var_19[0], 0) + 16, sTrainerCardProfilePhraseXPositions[sTrainerCardDataPtr->cardType],
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->var_19[1]);
+ AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->easyChatProfile[0], 0) + 16, sTrainerCardProfilePhraseXPositions[sTrainerCardDataPtr->cardType],
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[1]);
AddTextPrinterParameterized3(1, 2, 10, sTrainerCardProfilePhraseYPositions[sTrainerCardDataPtr->cardType],
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->var_19[2]);
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[2]);
- AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->var_19[2], 0) + 16, sTrainerCardProfilePhraseYPositions[sTrainerCardDataPtr->cardType],
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->var_19[3]);
+ AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->easyChatProfile[2], 0) + 16, sTrainerCardProfilePhraseYPositions[sTrainerCardDataPtr->cardType],
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[3]);
}
}
-static void PrintNameOnCard2(void)
+static void BufferNameForCardBack(void)
{
- StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], sTrainerCardDataPtr->trainerCard.playerName);
+ StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], sTrainerCardDataPtr->trainerCard.rse.playerName);
ConvertInternationalString(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], sTrainerCardDataPtr->language);
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
{
StringAppend(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], gText_Var1sTrainerCard);
}
}
-static void sub_808A4FC(void)
+static void PrintNameOnCardBack(void)
{
u8 x;
if (sTrainerCardDataPtr->cardType == CARD_TYPE_FRLG)
{
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sUnknown_83CD93C[sTrainerCardDataPtr->cardType],
- sUnknown_83CD93E[sTrainerCardDataPtr->cardType], sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardBackNameXPositions[sTrainerCardDataPtr->cardType],
+ sTrainerCardBackNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
}
else
{
- x = sUnknown_83CD93C[sTrainerCardDataPtr->cardType] - GetStringWidth(sTrainerCardFontIds[1], sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], GetFontAttribute(sTrainerCardFontIds[1], FONTATTR_LETTER_SPACING));
+ x = sTrainerCardBackNameXPositions[sTrainerCardDataPtr->cardType] - GetStringWidth(sTrainerCardFontIds[1], sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], GetFontAttribute(sTrainerCardFontIds[1], FONTATTR_LETTER_SPACING));
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, sUnknown_83CD93E[sTrainerCardDataPtr->cardType],
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, sTrainerCardBackNameYPositions[sTrainerCardDataPtr->cardType],
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
}
}
-static void PrintHofTimeOnCard(void)
+static void BufferHofDebutTime(void)
{
u8 buffer[10];
u8* txtPtr;
if (sTrainerCardDataPtr->hasHofResult)
{
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.hofDebutHours, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.hofDebutHours, STR_CONV_MODE_RIGHT_ALIGN, 3);
txtPtr = StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME], buffer);
StringAppendN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME], gText_Colon2, 2);
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.hofDebutMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.hofDebutMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
StringAppendN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME], buffer, 3);
StringAppendN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME], gText_Colon2, 2);
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.hofDebutSeconds, STR_CONV_MODE_LEADING_ZEROS, 2);
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.hofDebutSeconds, STR_CONV_MODE_LEADING_ZEROS, 2);
StringAppendN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME], buffer, 3);
}
}
-static void PrintHofDebutStringOnCard(void)
+static void PrintHofDebutTimeOnCard(void)
{
if (sTrainerCardDataPtr->hasHofResult)
{
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 35, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, gText_HallOfFameDebut);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 164, 35, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 35, sTrainerCardTextColors, TEXT_SPEED_FF, gText_HallOfFameDebut);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 164, 35, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME]);
}
}
-static void PrintLinkResultsNumsOnCard(void)
+static void BufferLinkBattleResults(void)
{
u8 buffer[30];
@@ -1282,31 +1325,31 @@ static void PrintLinkResultsNumsOnCard(void)
{
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_RECORD], sLinkTrainerCardRecordStrings[sTrainerCardDataPtr->cardType]);
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_WIN_LOSS], gText_WinLossRatio);
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.linkBattleWins, STR_CONV_MODE_RIGHT_ALIGN, 4);
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.linkBattleWins, STR_CONV_MODE_RIGHT_ALIGN, 4);
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_WINS], buffer);
- ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.linkBattleLosses, STR_CONV_MODE_RIGHT_ALIGN, 4);
+ ConvertIntToDecimalStringN(buffer, sTrainerCardDataPtr->trainerCard.rse.linkBattleLosses, STR_CONV_MODE_RIGHT_ALIGN, 4);
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_LOSSES], buffer);
}
}
-static void PrintWinsLossesStringOnCard(void)
+static void PrintLinkBattleResultsOnCard(void)
{
if (sTrainerCardDataPtr->hasLinkResults)
{
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 51,
- sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_RECORD]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 130, 51, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_WIN_LOSS]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 144, 51, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_WINS]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 192, 51, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_LOSSES]);
+ sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_RECORD]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 130, 51, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_WIN_LOSS]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 144, 51, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_WINS]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 192, 51, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_LOSSES]);
}
}
-static void PrintTradesNumOnCard(void)
+static void BufferNumTrades(void)
{
if (sTrainerCardDataPtr->hasTrades)
{
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADES], gText_PokemonTrades);
- ConvertIntToDecimalStringN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT], sTrainerCardDataPtr->trainerCard.pokemonTrades, STR_CONV_MODE_RIGHT_ALIGN, 5);
+ ConvertIntToDecimalStringN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT], sTrainerCardDataPtr->trainerCard.rse.pokemonTrades, STR_CONV_MODE_RIGHT_ALIGN, 5);
}
}
@@ -1314,14 +1357,14 @@ static void PrintTradesStringOnCard(void)
{
if (sTrainerCardDataPtr->hasTrades)
{
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 67, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADES]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 67, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 67, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADES]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 67, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT]);
}
}
-static void PrintBerryCrushNumOnCard(void)
+static void BufferBerryCrushPoints(void)
{
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH], gText_BerryCrushes);
ConvertIntToDecimalStringN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH_COUNT], sTrainerCardDataPtr->trainerCard.berryCrushPoints, STR_CONV_MODE_RIGHT_ALIGN, 5);
@@ -1330,16 +1373,16 @@ static void PrintBerryCrushNumOnCard(void)
static void PrintBerryCrushStringOnCard(void)
{
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD && sTrainerCardDataPtr->trainerCard.berryCrushPoints)
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.berryCrushPoints)
{
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 99, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 99, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH_COUNT]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 99, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 99, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH_COUNT]);
}
}
-static void PrintUnionNumOnCard(void)
+static void BufferUnionRoomStats(void)
{
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
StringCopy(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM], gText_UnionRoomTradesBattles);
ConvertIntToDecimalStringN(sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM_NUM], sTrainerCardDataPtr->trainerCard.unionRoomNum, STR_CONV_MODE_RIGHT_ALIGN, 5);
@@ -1348,88 +1391,88 @@ static void PrintUnionNumOnCard(void)
static void PrintUnionStringOnCard(void)
{
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD && sTrainerCardDataPtr->trainerCard.unionRoomNum)
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.unionRoomNum)
{
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 83, sFireRedTrainerCardPage1TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM]);
- AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 83, sTrainerCardPage2TextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM_NUM]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 83, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM]);
+ AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 83, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM_NUM]);
}
}
-static void TrainerCard_PrintPokemonIconsOnCard(void)
+static void PrintPokemonIconsOnCard(void)
{
u8 i;
- u8 buffer[6];
- u8 buffer2[6];
+ u8 paletteSlots[PARTY_SIZE];
+ u8 xOffsets[PARTY_SIZE];
- memcpy(buffer, sUnknown_83CD94C, sizeof(sUnknown_83CD94C));
- memcpy(buffer2, sUnknown_83CD952, sizeof(sUnknown_83CD952));
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ memcpy(paletteSlots, sPokemonIconPalSlots, sizeof(sPokemonIconPalSlots));
+ memcpy(xOffsets, sPokemonIconXOffsets, sizeof(sPokemonIconXOffsets));
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
- for (i = 0; i < 6; i++)
+ for (i = 0; i < PARTY_SIZE; i++)
{
if (sTrainerCardDataPtr->trainerCard.monSpecies[i])
{
u8 monSpecies = GetMonIconPaletteIndexFromSpecies(sTrainerCardDataPtr->trainerCard.monSpecies[i]);
- WriteSequenceToBgTilemapBuffer(3, 16 * i + 224, buffer2[i] + 3, 15, 4, 4, buffer[monSpecies], 1);
+ WriteSequenceToBgTilemapBuffer(3, 16 * i + 224, xOffsets[i] + 3, 15, 4, 4, paletteSlots[monSpecies], 1);
}
}
}
}
-static void sub_808AB10(void)
+static void LoadMonIconGfx(void)
{
u8 i;
- CpuSet(gMonIconPalettes, sTrainerCardDataPtr->monIconPals, 32 * 3);
- switch (sTrainerCardDataPtr->trainerCard.var_4E)
+ CpuSet(gMonIconPalettes, sTrainerCardDataPtr->monIconPals, NELEMS(sTrainerCardDataPtr->monIconPals));
+ switch (sTrainerCardDataPtr->trainerCard.monIconTint)
{
- case 0:
+ case MON_ICON_TINT_NORMAL:
break;
- case 1:
+ case MON_ICON_TINT_BLACK:
TintPalette_CustomTone(sTrainerCardDataPtr->monIconPals, 96, 0, 0, 0);
break;
- case 2:
+ case MON_ICON_TINT_PINK:
TintPalette_CustomTone(sTrainerCardDataPtr->monIconPals, 96, 500, 330, 310);
break;
- case 3:
+ case MON_ICON_TINT_SEPIA:
TintPalette_SepiaTone(sTrainerCardDataPtr->monIconPals, 96);
break;
}
LoadPalette(sTrainerCardDataPtr->monIconPals, 80, 192);
- for (i = 0; i < 6; i++)
+ for (i = 0; i < PARTY_SIZE; i++)
{
LoadBgTiles(3, GetMonIconTiles(sTrainerCardDataPtr->trainerCard.monSpecies[i], 0), 512, 16 * i + 32);
}
}
-static void sub_808ABE0(void)
+static void PrintStickersOnCard(void)
{
u8 i;
- u8 buffer[4];
+ u8 palSlots[4];
- memcpy(buffer, sUnknown_83CD958, sizeof(sUnknown_83CD958));
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_FRLG && sTrainerCardDataPtr->trainerCard.var_4C == 1)
+ memcpy(palSlots, sStickerPalSlots, sizeof(sStickerPalSlots));
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_FRLG && sTrainerCardDataPtr->trainerCard.shouldDrawStickers == TRUE)
{
- for (i = 0; i < 3; i++)
+ for (i = 0; i < TRAINER_CARD_STICKER_TYPES; i++)
{
- u8 var_50 = sTrainerCardDataPtr->trainerCard.var_50[i];
- if (sTrainerCardDataPtr->trainerCard.var_50[i])
- WriteSequenceToBgTilemapBuffer(3, i * 4 + 320, i * 3 + 2, 2, 2, 2, buffer[var_50 - 1], 1);
+ u8 sticker = sTrainerCardDataPtr->trainerCard.stickers[i];
+ if (sTrainerCardDataPtr->trainerCard.stickers[i])
+ WriteSequenceToBgTilemapBuffer(3, i * 4 + 320, i * 3 + 2, 2, 2, 2, palSlots[sticker - 1], 1);
}
}
}
-static void TrainerCardLoadStickerPals(void)
+static void LoadStickerGfx(void)
{
LoadPalette(sTrainerCardStickerPal1, 176, 32);
LoadPalette(sTrainerCardStickerPal2, 192, 32);
LoadPalette(sTrainerCardStickerPal3, 208, 32);
LoadPalette(sTrainerCardStickerPal4, 224, 32);
- LoadBgTiles(3, sTrainerCardDataPtr->bgTiles, 1024, 128);
+ LoadBgTiles(3, sTrainerCardDataPtr->stickerTiles, 1024, 128);
}
-static void PutTrainerCardWindow(u8 windowId)
+static void DrawTrainerCardWindow(u8 windowId)
{
PutWindowTilemap(windowId);
CopyWindowToVram(windowId, 3);
@@ -1440,35 +1483,35 @@ static bool8 SetTrainerCardBgsAndPals(void)
switch (sTrainerCardDataPtr->bgPalLoadState)
{
case 0:
- LoadBgTiles(3, sTrainerCardDataPtr->cardTiles, 1024, 0);
+ LoadBgTiles(3, sTrainerCardDataPtr->badgeTiles, ARRAY_COUNT(sTrainerCardDataPtr->badgeTiles), 0);
break;
case 1:
- LoadBgTiles(0, sTrainerCardDataPtr->var_18CC, 6144, 0);
+ LoadBgTiles(0, sTrainerCardDataPtr->cardTiles, 0x1800, 0);
break;
case 2:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LoadPalette(sEmeraldTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.stars], 0, 96);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LoadPalette(sHoennTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.rse.stars], 0, 96);
else
- LoadPalette(sFireRedTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.stars], 0, 96);
+ LoadPalette(sKantoTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.rse.stars], 0, 96);
break;
case 3:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD)
- LoadPalette(sEmeraldTrainerCardBadges_Pal, 48, 32);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE)
+ LoadPalette(sHoennTrainerCardBadges_Pal, 48, 32);
else
- LoadPalette(sFireRedTrainerCardBadges_Pal, 48, 32);
+ LoadPalette(sKantoTrainerCardBadges_Pal, 48, 32);
break;
case 4:
- if (sTrainerCardDataPtr->cardType == CARD_TYPE_EMERALD && sTrainerCardDataPtr->trainerCard.gender != MALE)
- LoadPalette(sEmeraldTrainerCardFemaleBackground_Pal, 16, 32);
- else if (sTrainerCardDataPtr->trainerCard.gender != MALE)
- LoadPalette(sFireRedTrainerCardFemaleBackground_Pal, 16, 32);
+ if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.rse.gender != MALE)
+ LoadPalette(sHoennTrainerCardFemaleBackground_Pal, 16, 32);
+ else if (sTrainerCardDataPtr->trainerCard.rse.gender != MALE)
+ LoadPalette(sKantoTrainerCardFemaleBackground_Pal, 16, 32);
break;
case 5:
- LoadPalette(sUnknown_83CD300, 64, 32);
+ LoadPalette(sTrainerCardGold_Pal, 64, 32);
break;
case 6:
- SetBgTilemapBuffer(0, sTrainerCardDataPtr->bgTilemap0);
- SetBgTilemapBuffer(2, sTrainerCardDataPtr->bgTilemap2);
+ SetBgTilemapBuffer(0, sTrainerCardDataPtr->cardTilemapBuffer);
+ SetBgTilemapBuffer(2, sTrainerCardDataPtr->bgTilemapBuffer);
break;
default:
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32);
@@ -1481,10 +1524,10 @@ static bool8 SetTrainerCardBgsAndPals(void)
return FALSE;
}
-static void LoadTrainerCardTilemap2(const u16* ptr)
+static void DrawCardScreenBackground(const u16* ptr)
{
s16 i, j;
- u16 *dst = sTrainerCardDataPtr->bgTilemap2;
+ u16 *dst = sTrainerCardDataPtr->bgTilemapBuffer;
for (i = 0; i < 20; i++)
{
@@ -1500,10 +1543,10 @@ static void LoadTrainerCardTilemap2(const u16* ptr)
CopyBgTilemapBufferToVram(2);
}
-static void LoadTrainerCardTilemap0(const u16* ptr)
+static void DrawCardFrontOrBack(const u16* ptr)
{
s16 i, j;
- u16 *dst = sTrainerCardDataPtr->bgTilemap0;
+ u16 *dst = sTrainerCardDataPtr->cardTilemapBuffer;
for (i = 0; i < 20; i++)
{
@@ -1519,17 +1562,17 @@ static void LoadTrainerCardTilemap0(const u16* ptr)
CopyBgTilemapBufferToVram(0);
}
-static void TrainerCard_PrintStarsAndBadgesOnCard(void)
+static void DrawStarsAndBadgesOnCard(void)
{
s16 i, x;
u16 tileNum = 192;
u8 palNum = 3;
- FillBgTilemapBufferRect(3, 143, 15, sUnknown_83CD95C[sTrainerCardDataPtr->cardType], sTrainerCardDataPtr->trainerCard.stars, 1, 4);
+ FillBgTilemapBufferRect(3, 143, 15, sStarYOffsets[sTrainerCardDataPtr->cardType], sTrainerCardDataPtr->trainerCard.rse.stars, 1, 4);
if (!sTrainerCardDataPtr->isLink)
{
x = 4;
- for (i = 0; i < BADGE_COUNT; i++, tileNum += 2, x += 3)
+ for (i = 0; i < NUM_BADGES; i++, tileNum += 2, x += 3)
{
if (sTrainerCardDataPtr->hasBadge[i])
{
@@ -1544,9 +1587,9 @@ static void TrainerCard_PrintStarsAndBadgesOnCard(void)
CopyBgTilemapBufferToVram(3);
}
-static void sub_808B090(void)
+static void DrawCardBackStats(void)
{
- if (sTrainerCardDataPtr->cardType != CARD_TYPE_EMERALD)
+ if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
{
if (sTrainerCardDataPtr->hasTrades)
{
@@ -1578,43 +1621,45 @@ static void sub_808B090(void)
CopyBgTilemapBufferToVram(3);
}
-static void sub_808B180(void)
+static void BlinkTimeColon(void)
{
- if (++sTrainerCardDataPtr->var_6 > 60)
+ if (++sTrainerCardDataPtr->timeColonBlinkTimer > 60)
{
- sTrainerCardDataPtr->var_6 = 0;
- sTrainerCardDataPtr->var_7 ^= 1;
- sTrainerCardDataPtr->var_7BCE = TRUE;
+ sTrainerCardDataPtr->timeColonBlinkTimer = 0;
+ sTrainerCardDataPtr->timeColonInvisible ^= 1;
+ sTrainerCardDataPtr->timeColonNeedDraw = TRUE;
}
}
u8 GetTrainerCardStars(u8 cardId)
{
- return gTrainerCards[cardId].stars;
+ return gTrainerCards[cardId].rse.stars;
}
-static void sub_808B1D4(void)
+#define tFlipState data[0]
+
+static void FlipTrainerCard(void)
{
- u8 taskId = CreateTask(sub_808B21C, 0);
- sub_808B21C(taskId);
+ u8 taskId = CreateTask(Task_DoCardFlipTask, 0);
+ Task_DoCardFlipTask(taskId);
SetHBlankCallback(HBlankCB_TrainerCard);
}
-static bool8 sub_808B1FC(void)
+static bool8 IsCardFlipTaskActive(void)
{
- if (FindTaskIdByFunc(sub_808B21C) == 0xFF)
+ if (FindTaskIdByFunc(Task_DoCardFlipTask) == 0xFF)
return TRUE;
else
return FALSE;
}
-static void sub_808B21C(u8 taskId)
+static void Task_DoCardFlipTask(u8 taskId)
{
- while(sTrainerCardTasks[gTasks[taskId].data[0]](&gTasks[taskId]))
+ while(sTrainerCardFlipTasks[gTasks[taskId].tFlipState](&gTasks[taskId]))
;
}
-static bool8 sub_808B254(struct Task* task)
+static bool8 Task_BeginCardFlip(struct Task* task)
{
u32 i;
@@ -1623,15 +1668,12 @@ static bool8 sub_808B254(struct Task* task)
ScanlineEffect_Stop();
ScanlineEffect_Clear();
for (i = 0; i < 160; i++)
- {
gScanlineEffectRegBuffers[1][i] = 0;
- }
-
- task->data[0]++;
+ task->tFlipState++;
return FALSE;
}
-static bool8 sub_808B294(struct Task* task)
+static bool8 Task_AnimateCardFlipDown(struct Task* task)
{
u32 r4, r5, r10, r7, r6, var_24, r9, var;
s16 i;
@@ -1677,12 +1719,12 @@ static bool8 sub_808B294(struct Task* task)
sTrainerCardDataPtr->allowDMACopy = TRUE;
if (task->data[1] >= 77)
- task->data[0]++;
+ task->tFlipState++;
return FALSE;
}
-static bool8 sub_808B3C4(struct Task* task)
+static bool8 Task_DrawFlippedCardSide(struct Task* task)
{
sTrainerCardDataPtr->allowDMACopy = FALSE;
if (sub_8058244() == TRUE)
@@ -1690,72 +1732,74 @@ static bool8 sub_808B3C4(struct Task* task)
do
{
- switch (sTrainerCardDataPtr->var_4)
+ switch (sTrainerCardDataPtr->flipDrawState)
{
case 0:
FillWindowPixelBuffer(1, PIXEL_FILL(0));
FillBgTilemapBufferRect_Palette0(3, 0, 0, 0, 32, 32);
break;
case 1:
- if (!sTrainerCardDataPtr->var_8)
+ if (!sTrainerCardDataPtr->onBack)
{
- if (!PrintStringsOnCardPage2())
+ if (!PrintAllOnCardBack())
return FALSE;
}
else
{
- if (!PrintAllOnCardPage1())
+ if (!PrintAllOnCardFront())
return FALSE;
}
break;
case 2:
- if (!sTrainerCardDataPtr->var_8)
- LoadTrainerCardTilemap0(sTrainerCardDataPtr->var_96C);
+ if (!sTrainerCardDataPtr->onBack)
+ DrawCardFrontOrBack(sTrainerCardDataPtr->backTilemap);
else
- PutTrainerCardWindow(1);
+ DrawTrainerCardWindow(1);
break;
case 3:
- if (!sTrainerCardDataPtr->var_8)
- sub_808B090();
+ if (!sTrainerCardDataPtr->onBack)
+ DrawCardBackStats();
else
FillWindowPixelBuffer(2, PIXEL_FILL(0));
break;
case 4:
- if (sTrainerCardDataPtr->var_8)
- sub_808B838();
+ if (sTrainerCardDataPtr->onBack)
+ CreateTrainerCardTrainerPic();
break;
default:
- task->data[0]++;
+ task->tFlipState++;
sTrainerCardDataPtr->allowDMACopy = TRUE;
- sTrainerCardDataPtr->var_4 = 0;
+ sTrainerCardDataPtr->flipDrawState = 0;
return FALSE;
}
- sTrainerCardDataPtr->var_4++;
+ sTrainerCardDataPtr->flipDrawState++;
} while (gReceivedRemoteLinkPlayers == 0);
return FALSE;
}
-static bool8 sub_808B4D8(struct Task* task)
+static bool8 Task_SetCardFlipped(struct Task* task)
{
sTrainerCardDataPtr->allowDMACopy = FALSE;
- if (sTrainerCardDataPtr->var_8)
+
+ // If on back of card, draw front of card because its being flipped
+ if (sTrainerCardDataPtr->onBack)
{
- PutTrainerCardWindow(2);
- LoadTrainerCardTilemap2(&sTrainerCardDataPtr->var_E1C);
- LoadTrainerCardTilemap0(&sTrainerCardDataPtr->var_4BC);
- TrainerCard_PrintStarsAndBadgesOnCard();
+ DrawTrainerCardWindow(2);
+ DrawCardScreenBackground(sTrainerCardDataPtr->bgTilemap);
+ DrawCardFrontOrBack(sTrainerCardDataPtr->frontTilemap);
+ DrawStarsAndBadgesOnCard();
}
- PutTrainerCardWindow(1);
- sTrainerCardDataPtr->var_8 ^= 1;
- task->data[0]++;
+ DrawTrainerCardWindow(1);
+ sTrainerCardDataPtr->onBack ^= 1;
+ task->tFlipState++;
sTrainerCardDataPtr->allowDMACopy = TRUE;
PlaySE(SE_CARD2);
return FALSE;
}
-static bool8 sub_808B540(struct Task* task)
+static bool8 Task_AnimateCardFlipUp(struct Task* task)
{
u32 r4, r5, r10, r7, r6, var_24, r9, var;
s16 i;
@@ -1801,17 +1845,17 @@ static bool8 sub_808B540(struct Task* task)
sTrainerCardDataPtr->allowDMACopy = TRUE;
if (task->data[1] <= 0)
- task->data[0]++;
+ task->tFlipState++;
return FALSE;
}
-static bool8 sub_808B66C(struct Task *task)
+static bool8 Task_EndCardFlip(struct Task *task)
{
ShowBg(1);
ShowBg(3);
SetHBlankCallback(NULL);
- DestroyTask(FindTaskIdByFunc(sub_808B21C));
+ DestroyTask(FindTaskIdByFunc(Task_DoCardFlipTask));
return FALSE;
}
@@ -1839,24 +1883,22 @@ void ShowTrainerCardInLink(u8 cardId, void (*callback)(void))
SetMainCallback2(CB2_InitTrainerCard);
}
-static void sub_808B774(void)
+static void InitTrainerCardData(void)
{
u8 i;
- sTrainerCardDataPtr->taskState = 0;
- sTrainerCardDataPtr->var_6 = gSaveBlock2Ptr->playTimeVBlanks;
- sTrainerCardDataPtr->var_7 = 0;
- sTrainerCardDataPtr->var_8 = 0;
- sTrainerCardDataPtr->var_456 = 0;
- if (GetCardType() == CARD_TYPE_EMERALD)
- sTrainerCardDataPtr->cardType = CARD_TYPE_EMERALD;
+ sTrainerCardDataPtr->mainState = 0;
+ sTrainerCardDataPtr->timeColonBlinkTimer = gSaveBlock2Ptr->playTimeVBlanks;
+ sTrainerCardDataPtr->timeColonInvisible = FALSE;
+ sTrainerCardDataPtr->onBack = FALSE;
+ sTrainerCardDataPtr->flipBlendY = 0;
+ if (GetCardType() == CARD_TYPE_RSE)
+ sTrainerCardDataPtr->cardType = CARD_TYPE_RSE;
else
sTrainerCardDataPtr->cardType = CARD_TYPE_FRLG;
- for (i = 0; i < 4; i++)
- {
- CopyEasyChatWord(sTrainerCardDataPtr->var_19[i], sTrainerCardDataPtr->trainerCard.var_28[i]);
- }
+ for (i = 0; i < TRAINER_CARD_PROFILE_LENGTH; i++)
+ CopyEasyChatWord(sTrainerCardDataPtr->easyChatProfile[i], sTrainerCardDataPtr->trainerCard.rse.easyChatProfile[i]);
}
static u8 GetCardType(void)
@@ -1866,39 +1908,39 @@ static u8 GetCardType(void)
if (gGameVersion == VERSION_FIRE_RED || gGameVersion == VERSION_LEAF_GREEN)
return CARD_TYPE_FRLG;
else
- return CARD_TYPE_EMERALD;
+ return CARD_TYPE_RSE;
}
else
{
if (sTrainerCardDataPtr->trainerCard.version == VERSION_FIRE_RED || sTrainerCardDataPtr->trainerCard.version == VERSION_LEAF_GREEN)
return CARD_TYPE_FRLG;
else
- return CARD_TYPE_EMERALD;
+ return CARD_TYPE_RSE;
}
}
-static void sub_808B838(void)
+static void CreateTrainerCardTrainerPic(void)
{
- u8 val = sLinkTrainerCardFrontPics[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender];
+ u8 facilityClass = sTrainerPicFacilityClasses[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender];
if (InUnionRoom() == TRUE && gReceivedRemoteLinkPlayers == 1)
{
- val = sTrainerCardDataPtr->trainerCard.var_4F;
- sub_810C330(FacilityClassToPicIndex(val), TRUE, sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][0],
- sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][1], 8, 2);
+ facilityClass = sTrainerCardDataPtr->trainerCard.facilityClass;
+ CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(facilityClass), TRUE, sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][0],
+ sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][1], 8, 2);
}
else
{
if (sTrainerCardDataPtr->cardType != CARD_TYPE_FRLG)
{
- sub_810C330(FacilityClassToPicIndex(val), TRUE, sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][0],
- sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][1], 8, 2);
+ CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(facilityClass), TRUE, sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][0],
+ sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][1], 8, 2);
}
else
{
- sub_810C330(PlayerGenderToFrontTrainerPicId_Debug(sTrainerCardDataPtr->trainerCard.gender, TRUE), TRUE,
- sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][0],
- sTrainerCardPicPositions[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.gender][1],
+ CreateTrainerCardTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(sTrainerCardDataPtr->trainerCard.rse.gender, TRUE), TRUE,
+ sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][0],
+ sTrainerPicOffsets[sTrainerCardDataPtr->cardType][sTrainerCardDataPtr->trainerCard.rse.gender][1],
8, 2);
}
}
diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c
index 9f706c6d5..8567d791b 100644
--- a/src/trainer_pokemon_sprites.c
+++ b/src/trainer_pokemon_sprites.c
@@ -300,7 +300,7 @@ u16 sub_810C2FC(u16 species, bool8 isFrontPic, u8 paletteSlot, u8 windowId)
return sub_810C050(species, 0, 0, isFrontPic, paletteSlot, windowId, TRUE);
}
-u16 sub_810C330(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId)
+u16 CreateTrainerCardTrainerPicSprite(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId)
{
return sub_810C0C0(species, 0, 0, isFrontPic, destX, destY, paletteSlot, windowId, TRUE);
}
diff --git a/src/union_room.c b/src/union_room.c
index f3aeeebc5..7bace05ef 100644
--- a/src/union_room.c
+++ b/src/union_room.c
@@ -46,6 +46,7 @@
#include "constants/cable_club.h"
#include "constants/field_weather.h"
#include "constants/species.h"
+#include "constants/trainer_card.h"
#include "constants/union_room.h"
static EWRAM_DATA u8 sUnionRoomPlayerName[12] = {};
@@ -1735,7 +1736,7 @@ static void Task_CallCB2ReturnFromLinkTrade(u8 taskId)
DestroyTask(taskId);
}
-u8 UnionRoom_CreateTask_CallBC2ReturnFromLinkTrade(void)
+u8 UnionRoom_CreateTask_CallCB2ReturnFromLinkTrade(void)
{
u8 taskId = CreateTask(Task_CallCB2ReturnFromLinkTrade, 0);
@@ -1848,7 +1849,7 @@ void StartUnionRoomBattle(u16 battleFlags)
gLinkPlayers[0].linkType = LINKTYPE_BATTLE;
gLinkPlayers[GetMultiplayerId()].id = GetMultiplayerId();
gLinkPlayers[GetMultiplayerId() ^ 1].id = GetMultiplayerId() ^ 1;
- gMain.savedCallback = sub_8081668;
+ gMain.savedCallback = CB2_ReturnFromCableClubBattle;
gBattleTypeFlags = battleFlags;
PlayBattleBGM();
}
@@ -4692,23 +4693,23 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct UnkStruct_URoom * uro
StringCopy(uroom->trainerCardStrbufs[0], gTrainerClassNames[sub_80447F0()]);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, uroom->trainerCardStrbufs[0]);
- DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->playerName);
+ DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->rse.playerName);
- StringCopy(uroom->field_174, gUnknown_84594B0[trainerCard->stars]);
+ StringCopy(uroom->field_174, gUnknown_84594B0[trainerCard->rse.stars]);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, uroom->field_174);
- ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[2], trainerCard->caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3);
+ ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[2], trainerCard->rse.caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, uroom->trainerCardStrbufs[2]);
- ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[3], trainerCard->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3);
- ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[4], trainerCard->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
+ ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[3], trainerCard->rse.playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3);
+ ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[4], trainerCard->rse.playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(4, uroom->trainerCardStrbufs[3]);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(5, uroom->trainerCardStrbufs[4]);
DynamicPlaceholderTextUtil_ExpandPlaceholders(uroom->field_1A4, gUnknown_84594C4);
StringCopy(gStringVar4, uroom->field_1A4);
- n = trainerCard->linkBattleWins;
+ n = trainerCard->rse.linkBattleWins;
if (n > 9999)
{
n = 9999;
@@ -4716,7 +4717,7 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct UnkStruct_URoom * uro
ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[0], n, STR_CONV_MODE_LEFT_ALIGN, 4);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, uroom->trainerCardStrbufs[0]);
- n = trainerCard->linkBattleLosses;
+ n = trainerCard->rse.linkBattleLosses;
if (n > 9999)
{
n = 9999;
@@ -4724,12 +4725,12 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct UnkStruct_URoom * uro
ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[1], n, STR_CONV_MODE_LEFT_ALIGN, 4);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, uroom->trainerCardStrbufs[1]);
- ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[2], trainerCard->pokemonTrades, STR_CONV_MODE_LEFT_ALIGN, 5);
+ ConvertIntToDecimalStringN(uroom->trainerCardStrbufs[2], trainerCard->rse.pokemonTrades, STR_CONV_MODE_LEFT_ALIGN, 5);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, uroom->trainerCardStrbufs[2]);
- for (i = 0; i < 4; i++)
+ for (i = 0; i < TRAINER_CARD_PROFILE_LENGTH; i++)
{
- CopyEasyChatWord(uroom->trainerCardStrbufs[i + 3], trainerCard->var_28[i]);
+ CopyEasyChatWord(uroom->trainerCardStrbufs[i + 3], trainerCard->rse.easyChatProfile[i]);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(i + 4, uroom->trainerCardStrbufs[i + 3]);
}
@@ -4743,7 +4744,7 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct UnkStruct_URoom * uro
}
else if (parent_child == MODE_CHILD)
{
- DynamicPlaceholderTextUtil_ExpandPlaceholders(uroom->field_1A4, gUnknown_8459580[trainerCard->gender]);
+ DynamicPlaceholderTextUtil_ExpandPlaceholders(uroom->field_1A4, gUnknown_8459580[trainerCard->rse.gender]);
StringAppend(gStringVar4, uroom->field_1A4);
}
}
diff --git a/src/vs_seeker.c b/src/vs_seeker.c
index 135a11575..f60e22f96 100644
--- a/src/vs_seeker.c
+++ b/src/vs_seeker.c
@@ -748,7 +748,7 @@ void Task_VsSeeker_0(u8 taskId)
else if (respval == 2)
{
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, 0, gSpecialVar_ItemId, 0xffff);
- FieldEffectStart(FLDEFF_UNK_41); // TODO: name this enum
+ FieldEffectStart(FLDEFF_USE_VS_SEEKER);
gTasks[taskId].func = Task_VsSeeker_1;
gTasks[taskId].data[0] = 15;
}
@@ -774,7 +774,7 @@ static void Task_VsSeeker_2(u8 taskId)
data[2]++;
}
- if (!FieldEffectActiveListContains(FLDEFF_UNK_41))
+ if (!FieldEffectActiveListContains(FLDEFF_USE_VS_SEEKER))
{
data[1] = 0;
data[2] = 0;
diff --git a/sym_bss.txt b/sym_bss.txt
index ec3d7d947..b877b6532 100644
--- a/sym_bss.txt
+++ b/sym_bss.txt
@@ -60,10 +60,8 @@ gUnknown_3000EA0: @ 3000EA0
.include "src/tileset_anims.o"
.align 2
.include "src/sound.o"
-
.align 2
-gUnknown_3000FC8: @ 3000FC8
- .space 0x20
+ .include "src/field_effect.o"
gUnknown_3000FE8: @ 3000FE8
.space 0x184
diff --git a/sym_common.txt b/sym_common.txt
index e729f5515..37fa1cf7c 100644
--- a/sym_common.txt
+++ b/sym_common.txt
@@ -51,10 +51,10 @@ gFieldLinkPlayerCount: @ 3005030
gUnknown_3005050: @ 3005050
.space 0x18
-gUnknown_3005068: @ 3005068
+gTotalCameraPixelOffsetY: @ 3005068
.space 0x4
-gUnknown_300506C: @ 300506C
+gTotalCameraPixelOffsetX: @ 300506C
.space 0x4
.align 2
@@ -73,9 +73,8 @@ gUnknown_3005078: @ 3005078
.include "sound.o"
.align 2
.include "task.o"
-
- @ what is this?
- .space 0x20
+ .align 2
+ .include "cable_club.o"
.align 2
.include "image_processing_effects.o"
.align 2