summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rwxr-xr-xasm/berry_crush.s5515
-rw-r--r--asm/macros/event.inc16
-rw-r--r--data/event_scripts.s21
-rw-r--r--data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleArenaLobby/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleDomeLobby/scripts.inc9
-rw-r--r--data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc10
-rw-r--r--data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc6
-rw-r--r--data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattlePikeLobby/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc2
-rw-r--r--data/maps/BattleFrontier_BattleTowerLobby/scripts.inc13
-rw-r--r--data/maps/BattleFrontier_Lounge7/scripts.inc2
-rw-r--r--data/maps/CaveOfOrigin_B1F/scripts.inc4
-rw-r--r--data/maps/EverGrandeCity_HallOfFame/scripts.inc4
-rw-r--r--data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc145
-rw-r--r--data/maps/FallarborTown_BattleTentCorridor/scripts.inc36
-rw-r--r--data/maps/FallarborTown_BattleTentLobby/map.json12
-rw-r--r--data/maps/FallarborTown_BattleTentLobby/scripts.inc249
-rw-r--r--data/maps/FarawayIsland_Interior/scripts.inc4
-rw-r--r--data/maps/LilycoveCity_ContestLobby/scripts.inc16
-rw-r--r--data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc10
-rw-r--r--data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc4
-rw-r--r--data/maps/MagmaHideout_4F/scripts.inc4
-rw-r--r--data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc12
-rw-r--r--data/maps/MtChimney/scripts.inc4
-rw-r--r--data/maps/MtPyre_Summit/scripts.inc4
-rw-r--r--data/maps/Route101/scripts.inc2
-rw-r--r--data/maps/Route113_GlassWorkshop/scripts.inc4
-rw-r--r--data/maps/Route119_WeatherInstitute_2F/scripts.inc4
-rw-r--r--data/maps/Route120/scripts.inc4
-rw-r--r--data/maps/SkyPillar_Outside/scripts.inc4
-rw-r--r--data/maps/SkyPillar_Top/scripts.inc8
-rw-r--r--data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc54
-rw-r--r--data/maps/SlateportCity_BattleTentCorridor/scripts.inc151
-rw-r--r--data/maps/SlateportCity_BattleTentLobby/map.json12
-rw-r--r--data/maps/SlateportCity_BattleTentLobby/scripts.inc228
-rw-r--r--data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc8
-rw-r--r--data/maps/SootopolisCity/scripts.inc8
-rw-r--r--data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc2
-rw-r--r--data/maps/TrainerHill_Entrance/scripts.inc2
-rw-r--r--data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc106
-rw-r--r--data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc37
-rw-r--r--data/maps/VerdanturfTown_BattleTentLobby/map.json14
-rw-r--r--data/maps/VerdanturfTown_BattleTentLobby/scripts.inc262
-rw-r--r--data/scripts/abnormal_weather.inc4
-rw-r--r--data/scripts/apprentice.inc2
-rw-r--r--data/scripts/berry_blender.inc8
-rw-r--r--data/scripts/berry_tree.inc2
-rw-r--r--data/scripts/cable_club.inc18
-rw-r--r--data/scripts/day_care.inc2
-rw-r--r--data/scripts/field_poison.inc4
-rw-r--r--data/scripts/lilycove_lady.inc8
-rw-r--r--data/scripts/pc_transfer.inc2
-rw-r--r--data/scripts/players_house.inc4
-rw-r--r--data/scripts/safari_zone.inc2
-rw-r--r--data/scripts/secret_base.inc4
-rw-r--r--data/text/battle_tent.inc149
-rw-r--r--include/constants/field_weather.h24
-rw-r--r--include/field_weather.h27
-rw-r--r--include/strings.h21
-rw-r--r--ld_script.txt1
-rw-r--r--src/battle_pyramid_bag.c2
-rwxr-xr-xsrc/berry_crush.c2658
-rw-r--r--src/cable_club.c8
-rw-r--r--src/decoration.c10
-rw-r--r--src/easy_chat.c2
-rw-r--r--src/egg_hatch.c2
-rwxr-xr-xsrc/item_use.c2
-rw-r--r--src/player_pc.c6
-rw-r--r--src/pokemon_storage_system.c2
-rw-r--r--src/pokenav.c2
-rw-r--r--src/scrcmd.c7
-rw-r--r--src/secret_base.c2
-rwxr-xr-xsrc/shop.c4
-rw-r--r--src/start_menu.c2
-rw-r--r--src/union_room.c2
82 files changed, 3466 insertions, 6556 deletions
diff --git a/.gitignore b/.gitignore
index 15cc865df..93385ea51 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,3 +31,4 @@ build/
porymap.project.cfg
.vscode/
*.a
+.fuse_hidden*
diff --git a/asm/berry_crush.s b/asm/berry_crush.s
deleted file mode 100755
index cd70df741..000000000
--- a/asm/berry_crush.s
+++ /dev/null
@@ -1,5515 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8021A28
-sub_8021A28: @ 8021A28
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x2C
- str r0, [sp, 0xC]
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x10]
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x14]
- lsls r3, 24
- movs r0, 0
- str r0, [sp, 0x18]
- movs r1, 0
- str r1, [sp, 0x1C]
- ldr r2, [sp, 0xC]
- adds r2, 0x68
- str r2, [sp, 0x20]
- movs r4, 0xF0
- lsls r4, 24
- adds r3, r4
- lsrs r3, 24
- ldr r0, [sp, 0x10]
- cmp r0, 0x2
- bne _08021A68
- adds r0, r3, 0
- subs r0, 0x2A
- lsls r0, 24
- lsrs r3, r0, 24
-_08021A68:
- ldr r2, [sp, 0xC]
- ldrb r1, [r2, 0x9]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 1
- subs r6, r3, r0
- cmp r6, 0
- ble _08021A84
- lsrs r0, r6, 31
- adds r0, r6, r0
- asrs r0, 1
- adds r6, r0, 0
- adds r6, 0x10
- b _08021A86
-_08021A84:
- movs r6, 0x10
-_08021A86:
- movs r5, 0
- ldr r3, [sp, 0xC]
- ldrb r3, [r3, 0x9]
- cmp r5, r3
- bcc _08021A92
- b _08021D14
-_08021A92:
- ldr r4, [sp, 0x10]
- lsls r4, 2
- str r4, [sp, 0x24]
-_08021A98:
- bl DynamicPlaceholderTextUtil_Reset
- ldr r0, [sp, 0x10]
- cmp r0, 0x1
- beq _08021B48
- cmp r0, 0x1
- bgt _08021AC0
- cmp r0, 0
- beq _08021ADE
- ldr r4, [sp, 0x14]
- subs r4, 0x4
- lsls r1, r6, 24
- mov r10, r1
- ldr r2, [sp, 0x1C]
- adds r2, 0xA2
- mov r9, r2
- ldr r3, [sp, 0x18]
- lsls r3, 5
- mov r8, r3
- b _08021C5A
-_08021AC0:
- ldr r4, [sp, 0x10]
- cmp r4, 0x2
- bne _08021AC8
- b _08021C1C
-_08021AC8:
- ldr r4, [sp, 0x14]
- subs r4, 0x4
- lsls r0, r6, 24
- mov r10, r0
- ldr r1, [sp, 0x1C]
- adds r1, 0xA2
- mov r9, r1
- ldr r2, [sp, 0x18]
- lsls r2, 5
- mov r8, r2
- b _08021C5A
-_08021ADE:
- ldr r0, [sp, 0x20]
- adds r0, 0x20
- adds r0, r5
- ldrb r0, [r0]
- str r0, [sp, 0x18]
- lsls r3, r5, 1
- ldr r2, [sp, 0x20]
- adds r2, 0xC
- cmp r5, 0
- beq _08021B04
- adds r0, r2, r3
- subs r1, r5, 0x1
- lsls r1, 1
- adds r1, r2, r1
- ldrh r0, [r0]
- ldrh r1, [r1]
- cmp r0, r1
- beq _08021B04
- str r5, [sp, 0x1C]
-_08021B04:
- ldr r4, [sp, 0x24]
- ldr r1, [sp, 0x10]
- adds r0, r4, r1
- lsls r0, 1
- adds r0, r3, r0
- adds r0, r2, r0
- ldrh r1, [r0]
- ldr r0, =gStringVar4
- movs r2, 0x1
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- ldr r0, =gUnknown_082F43B4
- adds r0, r4, r0
- ldr r1, [r0]
- ldr r0, =gStringVar4
- bl StringAppend
- ldr r4, [sp, 0x14]
- subs r4, 0x4
- lsls r2, r6, 24
- mov r10, r2
- ldr r3, [sp, 0x1C]
- adds r3, 0xA2
- mov r9, r3
- ldr r0, [sp, 0x18]
- lsls r0, 5
- mov r8, r0
- b _08021C5A
- .pool
-_08021B48:
- ldr r1, [sp, 0x20]
- adds r0, r1, r5
- adds r0, 0x28
- ldrb r0, [r0]
- str r0, [sp, 0x18]
- lsls r3, r5, 1
- adds r2, r1, 0
- adds r2, 0xC
- cmp r5, 0
- beq _08021B72
- adds r0, r3, 0
- adds r0, 0xA
- adds r0, r2, r0
- adds r1, r3, 0
- adds r1, 0x8
- adds r1, r2, r1
- ldrh r0, [r0]
- ldrh r1, [r1]
- cmp r0, r1
- beq _08021B72
- str r5, [sp, 0x1C]
-_08021B72:
- ldr r0, [sp, 0x24]
- ldr r1, [sp, 0x10]
- adds r4, r0, r1
- lsls r4, 1
- adds r4, r3, r4
- adds r4, r2, r4
- ldrh r1, [r4]
- lsrs r1, 4
- ldr r0, =gStringVar1
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- movs r7, 0
- ldrb r0, [r4]
- movs r3, 0xF
- ands r3, r0
- movs r2, 0
- ldr r4, [sp, 0x10]
- lsls r4, 2
- str r4, [sp, 0x28]
- ldr r4, [sp, 0x14]
- subs r4, 0x4
- lsls r0, r6, 24
- mov r10, r0
- ldr r1, [sp, 0x1C]
- adds r1, 0xA2
- mov r9, r1
- ldr r0, [sp, 0x18]
- lsls r0, 5
- mov r8, r0
- adds r6, 0xE
- adds r5, 0x1
- ldr r1, =gUnknown_082F334C
- mov r12, r1
-_08021BB8:
- movs r0, 0x3
- subs r1, r0, r2
- adds r0, r3, 0
- asrs r0, r1
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08021BD0
- lsls r0, r2, 2
- add r0, r12
- ldr r0, [r0]
- adds r7, r0
-_08021BD0:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _08021BB8
- adds r0, r7, 0
- ldr r1, =0x000f4240
- bl __udivsi3
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, =gStringVar2
- adds r1, r3, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r0, =gUnknown_082F43B4
- ldr r2, [sp, 0x28]
- adds r0, r2, r0
- ldr r1, [r0]
- ldr r0, =gStringVar4
- bl StringExpandPlaceholders
- b _08021C5E
- .pool
-_08021C1C:
- str r5, [sp, 0x18]
- str r5, [sp, 0x1C]
- lsls r7, r5, 5
- ldr r3, [sp, 0xC]
- adds r0, r3, r7
- adds r0, 0xA4
- ldrb r2, [r0]
- cmp r2, 0x2B
- bls _08021C30
- movs r2, 0
-_08021C30:
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- ldr r0, =gBerries
- adds r1, r0
- ldr r0, =gStringVar1
- bl StringCopy
- ldr r0, =gUnknown_082F43B4
- ldr r1, [r0, 0x8]
- ldr r0, =gStringVar4
- bl StringExpandPlaceholders
- ldr r4, [sp, 0x14]
- subs r4, 0x4
- lsls r0, r6, 24
- mov r10, r0
- movs r1, 0xA2
- adds r1, r5
- mov r9, r1
- mov r8, r7
-_08021C5A:
- adds r6, 0xE
- adds r5, 0x1
-_08021C5E:
- movs r0, 0x2
- ldr r1, =gStringVar4
- adds r2, r4, 0
- bl GetStringRightAlignXOffset
- adds r2, r0, 0
- ldr r3, [sp, 0xC]
- movs r4, 0xDD
- lsls r4, 1
- adds r0, r3, r4
- ldrb r0, [r0]
- lsls r2, 24
- lsrs r2, 24
- mov r1, r10
- lsrs r3, r1, 24
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r1, =gStringVar4
- str r1, [sp, 0x8]
- movs r1, 0x2
- bl AddTextPrinterParameterized3
- ldr r3, [sp, 0x18]
- ldr r2, [sp, 0xC]
- ldrb r2, [r2, 0x8]
- cmp r3, r2
- bne _08021CC0
- ldr r0, =gStringVar3
- ldr r1, =gText_1DotBlueF700
- bl StringCopy
- b _08021CC8
- .pool
-_08021CC0:
- ldr r0, =gStringVar3
- ldr r1, =gText_1DotF700
- bl StringCopy
-_08021CC8:
- ldr r4, =gStringVar3
- mov r3, r9
- strb r3, [r4]
- mov r1, r8
- adds r1, 0x98
- ldr r0, [sp, 0xC]
- adds r1, r0, r1
- movs r0, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- ldr r0, =gStringVar4
- adds r1, r4, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- ldr r1, [sp, 0xC]
- movs r2, 0xDD
- lsls r2, 1
- adds r0, r1, r2
- ldrb r0, [r0]
- mov r4, r10
- lsrs r3, r4, 24
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r2, =gStringVar4
- str r2, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0x4
- bl AddTextPrinterParameterized3
- lsls r0, r5, 24
- lsrs r5, r0, 24
- ldr r3, [sp, 0xC]
- ldrb r3, [r3, 0x9]
- cmp r5, r3
- bcs _08021D14
- b _08021A98
-_08021D14:
- add sp, 0x2C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8021A28
-
- thumb_func_start sub_8021D34
-sub_8021D34: @ 8021D34
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- mov r8, r0
- movs r0, 0
- mov r10, r0
- movs r6, 0
- movs r1, 0
- str r1, [sp, 0xC]
- mov r2, r8
- adds r2, 0x68
- str r2, [sp, 0x10]
- movs r4, 0xDD
- lsls r4, 1
- add r4, r8
- mov r9, r4
- ldrb r0, [r4]
- movs r1, 0x4
- bl GetWindowAttribute
- lsls r0, 27
- movs r1, 0xD6
- lsls r1, 24
- adds r0, r1
- lsrs r7, r0, 24
- movs r0, 0x9C
- lsls r0, 1
- add r0, r8
- ldr r2, [sp, 0x10]
- ldrh r1, [r2, 0x4]
- bl sub_8021944
- ldrb r0, [r4]
- ldr r4, =sBerryCrushTextColors1
- str r4, [sp]
- str r6, [sp, 0x4]
- ldr r1, =gText_TimeColon
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- ldr r4, =gText_SpaceSec
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- movs r1, 0xB0
- subs r0, r1, r0
- lsls r0, 24
- lsrs r6, r0, 24
- mov r2, r9
- ldrb r0, [r2]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- mov r2, r10
- str r2, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- movs r0, 0x9F
- lsls r0, 1
- add r0, r8
- movs r4, 0
- ldrsh r1, [r0, r4]
- ldr r0, =gStringVar1
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r0, =gStringVar2
- movs r1, 0xA0
- lsls r1, 1
- add r1, r8
- movs r2, 0
- ldrsh r1, [r1, r2]
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r5, =gStringVar4
- ldr r1, =gText_XDotY2
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0x2
- adds r1, r5, 0
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- subs r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
- mov r4, r9
- ldrb r0, [r4]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- mov r2, r10
- str r2, [sp, 0x4]
- str r5, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- ldr r4, =gText_SpaceMin
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- subs r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
- mov r1, r9
- ldrb r0, [r1]
- ldr r2, =sBerryCrushTextColors1
- str r2, [sp]
- mov r1, r10
- str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- movs r0, 0x9E
- lsls r0, 1
- add r0, r8
- movs r2, 0
- ldrsh r1, [r0, r2]
- ldr r0, =gStringVar1
- movs r2, 0x2
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- ldr r1, =gText_StrVar1
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0x2
- adds r1, r5, 0
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- subs r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
- mov r4, r9
- ldrb r0, [r4]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- mov r2, r10
- str r2, [sp, 0x4]
- str r5, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- adds r0, r7, 0
- adds r0, 0xE
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r0, [r4]
- ldr r4, =sBerryCrushTextColors1
- str r4, [sp]
- mov r1, r10
- str r1, [sp, 0x4]
- ldr r1, =gText_PressingSpeed
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- ldr r4, =gText_TimesPerSec
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- movs r2, 0xB0
- subs r0, r2, r0
- lsls r0, 24
- str r0, [sp, 0x18]
- lsrs r6, r0, 24
- mov r1, r9
- ldrb r0, [r1]
- ldr r2, =sBerryCrushTextColors1
- str r2, [sp]
- mov r1, r10
- str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- mov r4, r8
- ldrb r2, [r4, 0x16]
- ldrh r0, [r4, 0x16]
- mov r12, r0
- movs r1, 0x7
- mov r9, r1
- movs r5, 0x1
- ldr r3, =gUnknown_082F334C
-_08021EEC:
- mov r4, r9
- mov r0, r10
- subs r1, r4, r0
- adds r0, r2, 0
- asrs r0, r1
- ands r0, r5
- cmp r0, 0
- beq _08021F0A
- mov r1, r10
- lsls r0, r1, 2
- adds r0, r3
- ldr r0, [r0]
- ldr r4, [sp, 0xC]
- adds r4, r0
- str r4, [sp, 0xC]
-_08021F0A:
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- cmp r0, 0x7
- bls _08021EEC
- ldr r0, =gStringVar1
- mov r2, r12
- lsrs r1, r2, 8
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar2
- ldr r1, =0x000f4240
- ldr r0, [sp, 0xC]
- bl __udivsi3
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gText_XDotY3
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r2, 0x1
- negs r2, r2
- movs r0, 0x2
- adds r1, r4, 0
- bl GetStringWidth
- subs r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
- mov r0, r8
- adds r0, 0x25
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08021FC4
- movs r0, 0xDD
- lsls r0, 1
- add r0, r8
- ldrb r0, [r0]
- ldr r1, =sBerryCrushTextColors4
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- b _08021FDE
- .pool
-_08021FC4:
- movs r0, 0xDD
- lsls r0, 1
- add r0, r8
- ldrb r0, [r0]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- str r2, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
-_08021FDE:
- adds r0, r7, 0
- adds r0, 0xE
- lsls r0, 24
- lsrs r7, r0, 24
- movs r4, 0xDD
- lsls r4, 1
- add r8, r4
- mov r1, r8
- ldrb r0, [r1]
- ldr r2, =sBerryCrushTextColors1
- mov r9, r2
- str r2, [sp]
- movs r5, 0
- str r5, [sp, 0x4]
- ldr r1, =gText_Silkiness
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- ldr r0, =gStringVar1
- ldr r4, [sp, 0x10]
- ldrh r1, [r4, 0x8]
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gText_Var1Percent
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r2, 0x1
- negs r2, r2
- movs r0, 0x2
- adds r1, r4, 0
- bl GetStringWidth
- movs r1, 0xB0
- subs r1, r0
- lsls r1, 24
- lsrs r6, r1, 24
- mov r1, r8
- ldrb r0, [r1]
- mov r2, r9
- str r2, [sp]
- str r5, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x2
- adds r2, r6, 0
- adds r3, r7, 0
- bl AddTextPrinterParameterized3
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8021D34
-
- thumb_func_start sub_8022070
-sub_8022070: @ 8022070
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r6, r1, 0
- adds r0, r6, 0
- adds r0, 0x80
- ldrb r0, [r0]
- cmp r0, 0x5
- bls _08022084
- b _08022218
-_08022084:
- lsls r0, 2
- ldr r1, =_08022094
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08022094:
- .4byte _080220AC
- .4byte _080220F8
- .4byte _0802210C
- .4byte _08022130
- .4byte _080221F8
- .4byte _08022200
-_080220AC:
- ldrb r0, [r4, 0x9]
- subs r0, 0x2
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r6, 0
- bl sub_8022554
- ldrh r0, [r4, 0x12]
- lsls r0, 3
- ldr r2, =gUnknown_082F32CC
- mov r1, sp
- adds r0, r2
- ldm r0!, {r2,r3}
- stm r1!, {r2,r3}
- ldrh r0, [r4, 0x12]
- cmp r0, 0xD
- bne _080220DC
- ldr r0, =gUnknown_082F3344
- adds r0, 0x4
- b _080220DE
- .pool
-_080220DC:
- ldr r0, =gUnknown_082F3344
-_080220DE:
- adds r0, r5, r0
- ldrb r1, [r0]
- mov r0, sp
- strb r1, [r0, 0x4]
- mov r0, sp
- bl AddWindow
- adds r1, r6, 0
- adds r1, 0x82
- strb r0, [r1]
- b _08022218
- .pool
-_080220F8:
- adds r4, r6, 0
- adds r4, 0x82
- ldrb r0, [r4]
- bl PutWindowTilemap
- ldrb r0, [r4]
- movs r1, 0
- bl FillWindowPixelBuffer
- b _08022218
-_0802210C:
- adds r5, r6, 0
- adds r5, 0x82
- ldrb r0, [r5]
- ldr r4, =0x0000021d
- adds r1, r4, 0
- movs r2, 0xD0
- bl LoadUserWindowBorderGfx_
- ldrb r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- b _08022218
- .pool
-_08022130:
- ldrb r0, [r4, 0x9]
- subs r0, 0x2
- lsls r0, 24
- lsrs r5, r0, 24
- ldrh r0, [r4, 0x12]
- cmp r0, 0xC
- beq _08022184
- cmp r0, 0xC
- bgt _08022148
- cmp r0, 0xB
- beq _0802214E
- b _08022218
-_08022148:
- cmp r0, 0xD
- beq _080221C8
- b _08022218
-_0802214E:
- adds r0, r6, 0
- adds r0, 0x82
- ldrb r0, [r0]
- ldr r3, =gText_PressesRankings
- movs r1, 0x14
- movs r2, 0x3
- bl sub_80219C8
- ldr r0, =gUnknown_082F3344
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r3, 27
- lsrs r3, 24
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0xA0
- bl sub_8021A28
- adds r1, r6, 0
- adds r1, 0x80
- movs r0, 0x5
- b _08022220
- .pool
-_08022184:
- adds r0, r6, 0
- adds r0, 0x82
- ldrb r0, [r0]
- ldr r2, =gUnknown_082F43B4
- adds r1, r4, 0
- adds r1, 0x8F
- ldrb r1, [r1]
- adds r1, 0x3
- lsls r1, 2
- adds r1, r2
- ldr r3, [r1]
- movs r1, 0x14
- movs r2, 0x4
- bl sub_80219C8
- ldr r0, =gUnknown_082F3344
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r3, 27
- lsrs r3, 24
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0xA0
- bl sub_8021A28
- adds r1, r6, 0
- adds r1, 0x80
- movs r0, 0x5
- b _08022220
- .pool
-_080221C8:
- adds r0, r6, 0
- adds r0, 0x82
- ldrb r0, [r0]
- ldr r3, =gText_CrushingResults
- movs r1, 0x16
- movs r2, 0x3
- bl sub_80219C8
- ldr r0, =gUnknown_082F3344
- adds r0, 0x4
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r3, 27
- lsrs r3, 24
- adds r0, r4, 0
- movs r1, 0x2
- movs r2, 0xB0
- bl sub_8021A28
- b _08022218
- .pool
-_080221F8:
- adds r0, r4, 0
- bl sub_8021D34
- b _08022218
-_08022200:
- adds r0, r6, 0
- adds r0, 0x82
- ldrb r0, [r0]
- movs r1, 0x3
- bl CopyWindowToVram
- adds r1, r6, 0
- adds r1, 0x80
- movs r0, 0
- strb r0, [r1]
- movs r0, 0x1
- b _08022224
-_08022218:
- adds r1, r6, 0
- adds r1, 0x80
- ldrb r0, [r1]
- adds r0, 0x1
-_08022220:
- strb r0, [r1]
- movs r0, 0
-_08022224:
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8022070
-
- thumb_func_start sub_802222C
-sub_802222C: @ 802222C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0xDD
- lsls r0, 1
- adds r5, r4, r0
- ldrb r0, [r5]
- movs r1, 0x1
- bl ClearStdWindowAndFrameToTransparent
- ldrb r0, [r5]
- bl RemoveWindow
- adds r0, r4, 0
- bl sub_8022600
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_802222C
-
- thumb_func_start sub_8022250
-sub_8022250: @ 8022250
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- mov r9, r0
- movs r1, 0
- str r1, [sp, 0xC]
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r6, r0, r1
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0x1
- beq _080222D0
- cmp r0, 0x1
- bgt _08022288
- cmp r0, 0
- beq _08022296
- b _080224BA
- .pool
-_08022288:
- cmp r0, 0x2
- bne _0802228E
- b _08022480
-_0802228E:
- cmp r0, 0x3
- bne _08022294
- b _08022494
-_08022294:
- b _080224BA
-_08022296:
- ldr r0, =gUnknown_082F32EC
- bl AddWindow
- strh r0, [r6, 0x2]
- lsls r0, 24
- lsrs r0, 24
- bl PutWindowTilemap
- ldrb r0, [r6, 0x2]
- movs r1, 0
- bl FillWindowPixelBuffer
- ldrb r0, [r6, 0x2]
- ldr r4, =0x0000021d
- adds r1, r4, 0
- movs r2, 0xD0
- bl LoadUserWindowBorderGfx_
- ldrb r0, [r6, 0x2]
- movs r1, 0
- adds r2, r4, 0
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- b _080224BA
- .pool
-_080222D0:
- ldr r0, =gText_BerryCrush2
- mov r10, r0
- movs r1, 0x1
- negs r1, r1
- mov r8, r1
- movs r0, 0x1
- mov r1, r10
- mov r2, r8
- bl GetStringWidth
- lsrs r0, 1
- movs r4, 0x60
- subs r0, r4, r0
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r0, [r6, 0x2]
- ldr r5, =sBerryCrushTextColorTable
- str r5, [sp]
- mov r1, r9
- str r1, [sp, 0x4]
- mov r1, r10
- str r1, [sp, 0x8]
- movs r1, 0x1
- adds r2, r7, 0
- movs r3, 0x1
- bl AddTextPrinterParameterized3
- ldr r0, =gText_PressingSpeedRankings
- mov r10, r0
- movs r0, 0x1
- mov r1, r10
- mov r2, r8
- bl GetStringWidth
- lsrs r0, 1
- subs r4, r0
- lsls r4, 24
- lsrs r7, r4, 24
- ldrb r0, [r6, 0x2]
- str r5, [sp]
- mov r1, r9
- str r1, [sp, 0x4]
- mov r1, r10
- str r1, [sp, 0x8]
- movs r1, 0x1
- adds r2, r7, 0
- movs r3, 0x11
- bl AddTextPrinterParameterized3
- movs r0, 0x29
- mov r10, r0
-_08022336:
- mov r1, r9
- adds r1, 0x2
- ldr r0, =gStringVar1
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- ldr r0, =gStringVar4
- ldr r1, =gText_Var1Players
- bl StringExpandPlaceholders
- ldrb r0, [r6, 0x2]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r1, =gStringVar4
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r2, 0
- mov r3, r10
- bl AddTextPrinterParameterized3
- movs r0, 0x1
- ldr r1, =gText_TimesPerSec
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- movs r1, 0xC0
- subs r1, r0
- lsls r1, 24
- lsrs r7, r1, 24
- ldrb r0, [r6, 0x2]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r1, =gText_TimesPerSec
- str r1, [sp, 0x8]
- movs r1, 0x1
- adds r2, r7, 0
- mov r3, r10
- bl AddTextPrinterParameterized3
- movs r2, 0
- mov r0, r9
- lsls r4, r0, 1
- mov r1, r10
- adds r1, 0x10
- str r1, [sp, 0x10]
- movs r0, 0x1
- add r9, r0
- adds r0, r4, r6
- ldrb r3, [r0, 0x4]
- movs r1, 0x7
- mov r12, r1
- movs r0, 0x1
- mov r8, r0
- ldr r5, =gUnknown_082F334C
-_080223AE:
- mov r0, r12
- subs r1, r0, r2
- adds r0, r3, 0
- asrs r0, r1
- mov r1, r8
- ands r0, r1
- cmp r0, 0
- beq _080223CA
- lsls r0, r2, 2
- adds r0, r5
- ldr r0, [r0]
- ldr r1, [sp, 0xC]
- adds r1, r0
- str r1, [sp, 0xC]
-_080223CA:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x7
- bls _080223AE
- adds r0, r4, r6
- ldrh r1, [r0, 0x4]
- lsrs r1, 8
- ldr r0, =gStringVar1
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r0, [sp, 0xC]
- ldr r1, =0x000f4240
- bl __udivsi3
- adds r1, r0, 0
- ldr r0, =gStringVar2
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r0, =gStringVar4
- ldr r1, =gText_XDotY3
- bl StringExpandPlaceholders
- movs r0, 0x1
- ldr r1, =gStringVar4
- movs r2, 0x1
- negs r2, r2
- bl GetStringWidth
- subs r0, r7, r0
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r0, [r6, 0x2]
- ldr r1, =sBerryCrushTextColors1
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r1, =gStringVar4
- str r1, [sp, 0x8]
- movs r1, 0x1
- adds r2, r7, 0
- mov r3, r10
- bl AddTextPrinterParameterized3
- ldr r1, [sp, 0x10]
- lsls r0, r1, 24
- lsrs r0, 24
- mov r10, r0
- movs r0, 0
- str r0, [sp, 0xC]
- mov r1, r9
- lsls r0, r1, 24
- lsrs r0, 24
- mov r9, r0
- cmp r0, 0x3
- bhi _08022444
- b _08022336
-_08022444:
- ldrb r0, [r6, 0x2]
- movs r1, 0x3
- bl CopyWindowToVram
- b _080224BA
- .pool
-_08022480:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _080224BA
- b _080224C0
- .pool
-_08022494:
- ldrb r0, [r6, 0x2]
- movs r1, 0x1
- bl ClearStdWindowAndFrameToTransparent
- ldrb r0, [r6, 0x2]
- bl ClearWindowTilemap
- ldrb r0, [r6, 0x2]
- bl RemoveWindow
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- bl ScriptContext2_Disable
- mov r0, r9
- b _080224BE
-_080224BA:
- ldrh r0, [r6]
- adds r0, 0x1
-_080224BE:
- strh r0, [r6]
-_080224C0:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8022250
-
- thumb_func_start ShowBerryCrushRankings
-ShowBerryCrushRankings: @ 80224D0
- push {lr}
- bl ScriptContext2_Enable
- ldr r0, =sub_8022250
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- movs r3, 0xF6
- lsls r3, 1
- adds r0, r2, r3
- ldrh r0, [r0]
- strh r0, [r1, 0xC]
- adds r3, 0x2
- adds r0, r2, r3
- ldrh r0, [r0]
- strh r0, [r1, 0xE]
- adds r3, 0x2
- adds r0, r2, r3
- ldrh r0, [r0]
- strh r0, [r1, 0x10]
- adds r3, 0x2
- adds r0, r2, r3
- ldrh r0, [r0]
- strh r0, [r1, 0x12]
- pop {r0}
- bx r0
- .pool
- thumb_func_end ShowBerryCrushRankings
-
- thumb_func_start sub_8022524
-sub_8022524: @ 8022524
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r1, 16
- bl sub_8021944
- movs r0, 0x4
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl sub_8035044
- movs r0, 0x6
- ldrsh r1, [r4, r0]
- movs r0, 0x1
- bl sub_8035044
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- movs r0, 0x2
- bl sub_8035044
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8022524
-
- thumb_func_start sub_8022554
-sub_8022554: @ 8022554
- push {lr}
- ldr r2, [r0, 0x78]
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r3, 0x4
- orrs r1, r3
- strb r1, [r2]
- ldr r1, [r0, 0x7C]
- adds r1, 0x3E
- ldrb r0, [r1]
- orrs r0, r3
- strb r0, [r1]
- movs r0, 0x2
- movs r1, 0x1
- bl sub_803547C
- movs r0, 0x1
- movs r1, 0x1
- bl sub_803547C
- movs r0, 0
- movs r1, 0x1
- bl sub_803547C
- pop {r0}
- bx r0
- thumb_func_end sub_8022554
-
- thumb_func_start sub_8022588
-sub_8022588: @ 8022588
- push {r4-r7,lr}
- adds r5, r0, 0
- movs r6, 0
- ldrb r0, [r5, 0x9]
- cmp r6, r0
- bcs _080225E8
- ldr r7, =gUnknown_082F417C
-_08022596:
- lsls r0, r6, 2
- movs r1, 0xA2
- lsls r1, 1
- adds r2, r5, r1
- adds r2, r0
- ldrb r1, [r5, 0x9]
- subs r1, 0x2
- lsls r0, r1, 2
- adds r0, r1
- adds r0, r6, r0
- adds r0, r7
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, =gUnknown_082F4190
- adds r0, r1
- str r0, [r2]
- ldrb r0, [r0]
- lsls r0, 3
- ldr r1, =gUnknown_082F32F4
- adds r0, r1
- bl AddWindow
- ldr r1, =0x000001bb
- adds r4, r5, r1
- adds r4, r6
- strb r0, [r4]
- ldrb r0, [r4]
- bl PutWindowTilemap
- ldrb r0, [r4]
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldrb r0, [r5, 0x9]
- cmp r6, r0
- bcc _08022596
-_080225E8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022588
-
- thumb_func_start sub_8022600
-sub_8022600: @ 8022600
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x14
- adds r6, r0, 0
- movs r7, 0
- ldrb r0, [r6, 0x9]
- cmp r7, r0
- bcs _080226B6
- movs r1, 0
- mov r8, r1
-_08022616:
- ldr r1, =0x000001bb
- adds r0, r6, r1
- adds r5, r0, r7
- ldrb r0, [r5]
- bl PutWindowTilemap
- ldrb r0, [r6, 0x8]
- cmp r7, r0
- bne _08022668
- lsls r4, r7, 5
- adds r4, 0x98
- adds r4, r6, r4
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0
- bl GetStringWidth
- lsrs r0, 1
- movs r2, 0x24
- subs r2, r0
- lsls r2, 24
- lsrs r2, 24
- ldrb r0, [r5]
- mov r1, r8
- str r1, [sp]
- str r1, [sp, 0x4]
- ldr r1, =sBerryCrushTextColors2
- str r1, [sp, 0x8]
- mov r1, r8
- str r1, [sp, 0xC]
- str r4, [sp, 0x10]
- movs r1, 0x2
- movs r3, 0x1
- bl AddTextPrinterParameterized4
- b _0802269C
- .pool
-_08022668:
- lsls r4, r7, 5
- adds r4, 0x98
- adds r4, r6, r4
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0
- bl GetStringWidth
- lsrs r0, 1
- movs r2, 0x24
- subs r2, r0
- lsls r2, 24
- lsrs r2, 24
- ldrb r0, [r5]
- mov r1, r8
- str r1, [sp]
- str r1, [sp, 0x4]
- ldr r1, =sBerryCrushTextColors3
- str r1, [sp, 0x8]
- mov r1, r8
- str r1, [sp, 0xC]
- str r4, [sp, 0x10]
- movs r1, 0x2
- movs r3, 0x1
- bl AddTextPrinterParameterized4
-_0802269C:
- ldr r1, =0x000001bb
- adds r0, r6, r1
- adds r0, r7
- ldrb r0, [r0]
- movs r1, 0x3
- bl CopyWindowToVram
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r0, [r6, 0x9]
- cmp r7, r0
- bcc _08022616
-_080226B6:
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022600
-
- thumb_func_start sub_80226D0
-sub_80226D0: @ 80226D0
- push {r4-r6,lr}
- sub sp, 0x8
- adds r6, r0, 0
- movs r5, 0
- ldr r0, =gUnknown_08DE3FD4
- ldr r4, =gDecompressionBuffer
- adds r1, r4, 0
- bl LZ77UnCompWram
- b _0802271A
- .pool
-_080226EC:
- lsls r1, r5, 2
- movs r2, 0xA2
- lsls r2, 1
- adds r0, r6, r2
- adds r0, r1
- ldr r3, [r0]
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4, r1
- ldrb r2, [r3, 0x1]
- ldrb r3, [r3, 0x2]
- movs r0, 0xA
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x3
- bl CopyToBgTilemapBufferRect
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_0802271A:
- ldrb r0, [r6, 0x9]
- cmp r5, r0
- bcc _080226EC
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80226D0
-
- thumb_func_start sub_8022730
-sub_8022730: @ 8022730
- push {r4-r7,lr}
- adds r6, r0, 0
- movs r5, 0
- ldr r0, =0x0000ff98
- strh r0, [r6, 0x2A]
- strh r5, [r6, 0x2C]
- ldr r1, =gSpriteCoordOffsetX
- strh r5, [r1]
- ldr r1, =gSpriteCoordOffsetY
- strh r0, [r1]
- ldr r4, =gUnknown_082F41F4
-_08022746:
- lsls r0, r5, 3
- adds r0, r4
- bl LoadCompressedSpriteSheet
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _08022746
- ldr r0, =gUnknown_082F421C
- bl LoadSpritePalettes
- ldr r0, =gUnknown_082F430C
- movs r1, 0x78
- movs r2, 0x58
- movs r3, 0x5
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- movs r0, 0xAC
- lsls r0, 1
- adds r3, r6, r0
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- str r0, [r3]
- ldrb r1, [r0, 0x5]
- movs r2, 0xC
- orrs r1, r2
- strb r1, [r0, 0x5]
- ldr r1, [r3]
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- adds r1, 0x2C
- ldrb r0, [r1]
- movs r2, 0x40
- orrs r0, r2
- strb r0, [r1]
- movs r5, 0
- ldrb r1, [r6, 0x9]
- cmp r5, r1
- bcs _08022822
- movs r7, 0x4
-_080227AA:
- lsls r4, r5, 2
- movs r3, 0xA2
- lsls r3, 1
- adds r0, r6, r3
- adds r0, r4
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- adds r1, 0x78
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r0, 0x6]
- adds r2, 0x20
- lsls r2, 16
- asrs r2, 16
- ldr r0, =gUnknown_082F4324
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- movs r0, 0xAE
- lsls r0, 1
- adds r3, r6, r0
- adds r3, r4
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- ldr r0, =gSprites
- adds r1, r0
- str r1, [r3]
- ldrb r0, [r1, 0x5]
- movs r4, 0xD
- negs r4, r4
- adds r2, r4, 0
- ands r0, r2
- orrs r0, r7
- strb r0, [r1, 0x5]
- ldr r1, [r3]
- adds r1, 0x3E
- ldrb r0, [r1]
- orrs r0, r7
- strb r0, [r1]
- ldr r2, [r3]
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r3]
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r0, [r6, 0x9]
- cmp r5, r0
- bcc _080227AA
-_08022822:
- movs r5, 0
- ldr r4, =gUnknown_082F41CC+6
- adds r7, r4, 0x1
-_08022828:
- lsls r2, r5, 1
- adds r0, r2, r4
- movs r1, 0
- ldrsb r1, [r0, r1]
- adds r1, 0x78
- adds r2, r7
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- adds r2, 0x88
- ldr r0, =gUnknown_082F433C
- movs r3, 0x6
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r5, 2
- movs r1, 0xC2
- lsls r1, 1
- adds r3, r6, r1
- adds r3, r0
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- str r0, [r3]
- ldrb r1, [r0, 0x5]
- movs r2, 0xC
- orrs r1, r2
- strb r1, [r0, 0x5]
- ldr r2, [r3]
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r3]
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- ldr r0, [r3]
- strh r5, [r0, 0x2E]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0xA
- bls _08022828
- movs r5, 0
-_0802288E:
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 19
- movs r3, 0xB0
- lsls r3, 16
- adds r1, r3
- asrs r1, 16
- ldr r0, =gUnknown_082F4354
- movs r2, 0x8
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r5, 2
- movs r4, 0xD8
- lsls r4, 1
- adds r3, r6, r4
- adds r3, r0
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- str r0, [r3]
- ldrb r1, [r0, 0x5]
- movs r4, 0xD
- negs r4, r4
- adds r2, r4, 0
- ands r1, r2
- strb r1, [r0, 0x5]
- ldr r2, [r3]
- adds r2, 0x3E
- ldrb r0, [r2]
- adds r4, 0x8
- adds r1, r4, 0
- ands r0, r1
- strb r0, [r2]
- ldr r2, [r3]
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r3, 0x41
- negs r3, r3
- adds r1, r3, 0
- ands r0, r1
- strb r0, [r2]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x1
- bls _0802288E
- ldr r4, =gUnknown_082F4384
- movs r0, 0
- movs r1, 0
- adds r2, r4, 0
- bl sub_8034D14
- adds r2, r4, 0
- adds r2, 0x10
- movs r0, 0x1
- movs r1, 0
- bl sub_8034D14
- adds r4, 0x20
- movs r0, 0x2
- movs r1, 0
- adds r2, r4, 0
- bl sub_8034D14
- ldrh r0, [r6, 0x12]
- cmp r0, 0x1
- bne _08022928
- movs r4, 0x9C
- lsls r4, 1
- adds r0, r6, r4
- bl sub_8022554
-_08022928:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022730
-
- thumb_func_start sub_8022960
-sub_8022960: @ 8022960
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- movs r0, 0x4
- bl FreeSpriteTilesByTag
- movs r0, 0x3
- bl FreeSpriteTilesByTag
- movs r0, 0x2
- bl FreeSpriteTilesByTag
- movs r0, 0x1
- bl FreeSpriteTilesByTag
- movs r0, 0x4
- bl FreeSpritePaletteByTag
- movs r0, 0x2
- bl FreeSpritePaletteByTag
- movs r0, 0x1
- bl FreeSpritePaletteByTag
- movs r0, 0xD8
- lsls r0, 1
- adds r6, r5, r0
-_08022996:
- lsls r0, r4, 2
- adds r0, r6, r0
- ldr r0, [r0]
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bls _08022996
- movs r0, 0x2
- bl sub_80353DC
- movs r0, 0x1
- bl sub_80353DC
- movs r0, 0
- bl sub_80353DC
- movs r4, 0
- movs r1, 0xC2
- lsls r1, 1
- adds r6, r5, r1
-_080229C4:
- lsls r0, r4, 2
- adds r0, r6, r0
- ldr r0, [r0]
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xA
- bls _080229C4
- movs r4, 0
- ldrb r2, [r5, 0x9]
- cmp r4, r2
- bcs _080229FC
-_080229E0:
- lsls r1, r4, 2
- movs r2, 0xAE
- lsls r2, 1
- adds r0, r5, r2
- adds r0, r1
- ldr r0, [r0]
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r5, 0x9]
- cmp r4, r0
- bcc _080229E0
-_080229FC:
- movs r1, 0xAC
- lsls r1, 1
- adds r0, r5, r1
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08022A18
- adds r0, r2, 0
- bl DestroySprite
-_08022A18:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8022960
-
- thumb_func_start sub_8022A20
-sub_8022A20: @ 8022A20
- push {lr}
- adds r3, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08022A46
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- subs r2, 0x12
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
-_08022A46:
- pop {r0}
- bx r0
- thumb_func_end sub_8022A20
-
- thumb_func_start sub_8022A4C
-sub_8022A4C: @ 8022A4C
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r1, 0
- ldr r5, =SpriteCallbackDummy
- adds r2, r3, 0
- adds r2, 0x2E
- movs r4, 0
-_08022A5A:
- lsls r0, r1, 1
- adds r0, r2, r0
- strh r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x7
- bls _08022A5A
- movs r0, 0
- strh r0, [r3, 0x24]
- strh r0, [r3, 0x26]
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- subs r2, 0x12
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- str r5, [r3, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022A4C
-
- thumb_func_start sub_8022A94
-sub_8022A94: @ 8022A94
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r5, 0
- adds r4, 0x2E
- ldrh r0, [r4, 0x4]
- ldrh r1, [r4, 0x2]
- adds r0, r1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 24
- ldrh r2, [r5, 0x26]
- adds r0, r2
- strh r0, [r5, 0x26]
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- movs r6, 0x80
- lsls r6, 8
- ands r0, r6
- cmp r0, 0
- beq _08022AFA
- ldrh r0, [r4, 0x6]
- ldrh r2, [r5, 0x2E]
- adds r0, r2
- strh r0, [r5, 0x2E]
- ldrh r0, [r4, 0xA]
- ldrh r1, [r4, 0x8]
- adds r0, r1
- strh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 23
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r5, 0x24]
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- ands r0, r6
- cmp r0, 0
- beq _08022AFA
- ldrh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 23
- cmp r0, 0x7E
- ble _08022AFA
- movs r0, 0
- strh r0, [r5, 0x24]
- ldrh r1, [r4, 0xE]
- ldr r0, =0x00007fff
- ands r0, r1
- strh r0, [r4, 0xE]
-_08022AFA:
- ldrh r0, [r4]
- lsls r0, 16
- asrs r0, 23
- strh r0, [r5, 0x20]
- movs r2, 0x22
- ldrsh r1, [r5, r2]
- movs r2, 0x26
- ldrsh r0, [r5, r2]
- adds r1, r0
- ldrh r2, [r4, 0xE]
- ldr r0, =0x00007fff
- ands r0, r2
- cmp r1, r0
- ble _08022B1A
- ldr r0, =sub_8022A4C
- str r0, [r5, 0x1C]
-_08022B1A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022A94
-
- thumb_func_start sub_8022B28
-sub_8022B28: @ 8022B28
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r7, r6, 0
- adds r7, 0x2E
- movs r0, 0
- mov r8, r0
- movs r2, 0xA0
- lsls r2, 2
- strh r2, [r7, 0x2]
- movs r0, 0x20
- strh r0, [r7, 0x4]
- movs r1, 0xA8
- strh r1, [r7, 0xE]
- movs r0, 0x24
- ldrsh r4, [r6, r0]
- lsls r4, 23
- lsrs r4, 16
- ldrh r0, [r6, 0x22]
- subs r1, r0
- lsls r1, 23
- asrs r1, 16
- adds r2, 0x20
- asrs r2, 1
- movs r0, 0x7
- bl sub_81515D4
- adds r5, r0, 0
- ldrh r0, [r6, 0x20]
- lsls r0, 7
- strh r0, [r6, 0x2E]
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- movs r0, 0x7
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_81515D4
- strh r0, [r7, 0x6]
- movs r0, 0x7
- adds r1, r5, 0
- movs r2, 0x55
- bl sub_8151550
- adds r2, r0, 0
- mov r1, r8
- strh r1, [r7, 0x8]
- movs r1, 0xFE
- lsls r1, 6
- lsls r2, 16
- asrs r2, 16
- movs r0, 0x7
- bl sub_81515D4
- strh r0, [r7, 0xA]
- movs r2, 0x24
- ldrsh r0, [r6, r2]
- cmp r0, 0
- bge _08022BA6
- adds r0, 0x3
-_08022BA6:
- asrs r0, 2
- strh r0, [r7, 0xC]
- ldrh r0, [r7, 0xE]
- ldr r2, =0xffff8000
- adds r1, r2, 0
- orrs r0, r1
- strh r0, [r7, 0xE]
- mov r0, r8
- strh r0, [r6, 0x26]
- strh r0, [r6, 0x24]
- ldr r0, =sub_8022A94
- str r0, [r6, 0x1C]
- adds r2, r6, 0
- adds r2, 0x2C
- ldrb r1, [r2]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- adds r2, 0x12
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022B28
-
- thumb_func_start sub_8022BEC
-sub_8022BEC: @ 8022BEC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r2, 0
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- mov r8, r4
- bl sub_8020C00
- adds r6, r0, 0
- cmp r5, 0x19
- bls _08022C0A
- movs r5, 0
-_08022C0A:
- cmp r4, 0
- beq _08022C14
- cmp r4, 0x1
- beq _08022C40
- b _08022C4A
-_08022C14:
- cmp r5, 0
- beq _08022C28
- ldr r0, =gUnknown_082F43CC
- lsls r1, r5, 2
- adds r1, r0
- ldr r2, [r1]
- adds r0, r6, 0
- adds r1, r7, 0
- bl _call_via_r2
-_08022C28:
- ldrb r0, [r6, 0xE]
- cmp r0, 0x19
- bls _08022C32
- mov r0, r8
- strb r0, [r6, 0xE]
-_08022C32:
- ldr r0, =gUnknown_082F43CC
- ldrb r1, [r6, 0xE]
- lsls r1, 2
- b _08022C44
- .pool
-_08022C40:
- ldr r0, =gUnknown_082F43CC
- lsls r1, r5, 2
-_08022C44:
- adds r1, r0
- ldr r0, [r1]
- str r0, [r6, 0x4]
-_08022C4A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8022BEC
-
- thumb_func_start sub_8022C58
-sub_8022C58: @ 8022C58
- push {r4-r6,lr}
- sub sp, 0x4
- adds r6, r0, 0
- ldrb r2, [r1]
- ldrb r3, [r1, 0x1]
- lsls r3, 8
- orrs r2, r3
- ldrb r3, [r1, 0x2]
- lsls r3, 16
- orrs r2, r3
- ldrb r3, [r1, 0x3]
- lsls r3, 24
- adds r0, r2, 0
- orrs r0, r3
- ldrb r2, [r1, 0x9]
- strb r2, [r1]
- ldrb r4, [r1, 0x8]
- lsls r4, 8
- ldrb r2, [r1, 0x7]
- orrs r4, r2
- ldr r5, =gPaletteFade
- ldrb r3, [r5, 0x8]
- movs r2, 0x7F
- ands r2, r3
- strb r2, [r5, 0x8]
- movs r5, 0x4
- ldrsb r5, [r1, r5]
- ldrb r2, [r1, 0x5]
- ldrb r3, [r1, 0x6]
- str r4, [sp]
- adds r1, r5, 0
- bl BeginNormalPaletteFade
- bl UpdatePaletteFade
- movs r0, 0x2
- strb r0, [r6, 0xE]
- movs r0, 0
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8022C58
-
- thumb_func_start sub_8022CB0
-sub_8022CB0: @ 8022CB0
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0x1
- beq _08022CE4
- cmp r0, 0x1
- bgt _08022CC6
- cmp r0, 0
- beq _08022CD0
- b _08022D06
-_08022CC6:
- cmp r0, 0x2
- beq _08022CEA
- cmp r0, 0x3
- beq _08022CF6
- b _08022D06
-_08022CD0:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08022D0C
- ldrb r0, [r5]
- cmp r0, 0
- bne _08022D06
- movs r0, 0x3
- b _08022D0A
-_08022CE4:
- bl sub_8010434
- b _08022D06
-_08022CEA:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _08022D06
- b _08022D0C
-_08022CF6:
- ldrb r0, [r4, 0xF]
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0
- strb r0, [r4, 0xC]
- b _08022D0E
-_08022D06:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
-_08022D0A:
- strb r0, [r4, 0xC]
-_08022D0C:
- movs r0, 0
-_08022D0E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8022CB0
-
- thumb_func_start sub_8022D14
-sub_8022D14: @ 8022D14
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- adds r7, r0, 0
- adds r5, r1, 0
- ldrb r4, [r5, 0x3]
- lsls r4, 8
- ldrb r0, [r5, 0x2]
- orrs r4, r0
- ldrb r6, [r7, 0xC]
- cmp r6, 0x1
- beq _08022DC0
- cmp r6, 0x1
- bgt _08022D38
- cmp r6, 0
- beq _08022D42
- b _08022E08
-_08022D38:
- cmp r6, 0x2
- beq _08022DD8
- cmp r6, 0x3
- beq _08022DE8
- b _08022E08
-_08022D42:
- movs r0, 0
- movs r1, 0
- bl DrawDialogueFrame
- ldrb r1, [r5, 0x1]
- movs r0, 0x2
- mov r8, r0
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _08022D90
- ldr r4, =gStringVar4
- ldr r1, =gUnknown_082F32A4
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldrb r3, [r7, 0xB]
- str r6, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- adds r2, r4, 0
- bl AddTextPrinterParameterized2
- b _08022DB2
- .pool
-_08022D90:
- ldr r1, =gUnknown_082F32A4
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r2, [r0]
- ldrb r3, [r7, 0xB]
- str r4, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- bl AddTextPrinterParameterized2
-_08022DB2:
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- b _08022E08
- .pool
-_08022DC0:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- bne _08022E0E
- cmp r4, 0
- bne _08022E08
- ldrb r0, [r7, 0xC]
- adds r0, 0x1
- strb r0, [r7, 0xC]
- b _08022E08
-_08022DD8:
- ldr r0, =gMain
- ldrh r0, [r0, 0x2E]
- ands r4, r0
- cmp r4, 0
- bne _08022E08
- b _08022E0E
- .pool
-_08022DE8:
- ldrb r1, [r5, 0x1]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08022DFA
- movs r0, 0
- movs r1, 0x1
- bl ClearDialogWindowAndFrame
-_08022DFA:
- ldrb r0, [r7, 0xE]
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- ldrb r0, [r5, 0x4]
- b _08022E0C
-_08022E08:
- ldrb r0, [r7, 0xC]
- adds r0, 0x1
-_08022E0C:
- strb r0, [r7, 0xC]
-_08022E0E:
- movs r0, 0
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8022D14
-
- thumb_func_start sub_8022E1C
-sub_8022E1C: @ 8022E1C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_802104C
- cmp r0, 0
- beq _08022E34
- ldrb r0, [r4, 0xE]
- adds r2, r4, 0
- adds r2, 0x36
- movs r1, 0
- bl sub_8022BEC
-_08022E34:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8022E1C
-
- thumb_func_start sub_8022E3C
-sub_8022E3C: @ 8022E3C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_802130C
- cmp r0, 0
- beq _08022E54
- ldrb r0, [r4, 0xE]
- adds r2, r4, 0
- adds r2, 0x36
- movs r1, 0
- bl sub_8022BEC
-_08022E54:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8022E3C
-
- thumb_func_start sub_8022E5C
-sub_8022E5C: @ 8022E5C
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0
- beq _08022E6C
- cmp r0, 0x1
- beq _08022E72
- b _08022E9C
-_08022E6C:
- bl sub_8010434
- b _08022E9C
-_08022E72:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08022EA2
- ldr r0, =0x000001e5
- bl PlayNewMapMusic
- movs r0, 0x7
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0x3
- strh r0, [r4, 0x12]
- strb r1, [r4, 0xC]
- b _08022EA2
- .pool
-_08022E9C:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
- strb r0, [r4, 0xC]
-_08022EA2:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8022E5C
-
- thumb_func_start sub_8022EAC
-sub_8022EAC: @ 8022EAC
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0
- beq _08022EC2
- cmp r0, 0x1
- beq _08022EE8
- adds r0, 0x1
- b _08022EF8
-_08022EC2:
- adds r0, r4, 0
- bl sub_8024578
- movs r0, 0x1
- str r0, [sp]
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0x1
- movs r3, 0
- bl sub_8024644
- movs r0, 0x7
- strb r0, [r4, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _08022EFA
-_08022EE8:
- movs r0, 0x8
- strb r0, [r4, 0xE]
- movs r0, 0x5
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0x2
-_08022EF8:
- strb r0, [r4, 0xC]
-_08022EFA:
- movs r0, 0
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8022EAC
-
- thumb_func_start sub_8022F04
-sub_8022F04: @ 8022F04
- push {lr}
- movs r1, 0
- str r1, [r0, 0x4]
- ldr r0, =sub_8020E1C
- bl SetMainCallback2
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8022F04
-
- thumb_func_start sub_8022F1C
-sub_8022F1C: @ 8022F1C
- push {r4-r7,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r2, r1, 0
- ldrb r0, [r5, 0xC]
- cmp r0, 0x5
- bls _08022F2C
- b _08023060
-_08022F2C:
- lsls r0, 2
- ldr r1, =_08022F3C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08022F3C:
- .4byte _08022F54
- .4byte _08022F74
- .4byte _08022F7A
- .4byte _08022FAA
- .4byte _08022FBA
- .4byte _08023044
-_08022F54:
- movs r0, 0x1
- str r0, [sp]
- adds r0, r2, 0
- movs r1, 0x1
- movs r2, 0
- movs r3, 0
- bl sub_8024644
- movs r0, 0x9
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _08023066
-_08022F74:
- bl sub_8010434
- b _08023060
-_08022F7A:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023066
- adds r4, r5, 0
- adds r4, 0x42
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0xC
- bl memset
- ldrb r0, [r5, 0x8]
- lsls r0, 5
- adds r0, r5, r0
- adds r0, 0xA4
- ldrh r0, [r0]
- strh r0, [r4]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x2
- bl SendBlock
- b _08023060
-_08022FAA:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023066
- movs r0, 0
- strh r0, [r5, 0x10]
- b _08023060
-_08022FBA:
- bl GetBlockReceivedStatus
- ldr r2, =gUnknown_082F4448
- ldrb r4, [r5, 0x9]
- subs r1, r4, 0x2
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _08023066
- movs r3, 0
- cmp r3, r4
- bcs _0802301E
- ldr r7, =gBlockRecvBuffer
- movs r6, 0
- ldr r4, =gUnknown_0858AB24
-_08022FDC:
- lsls r0, r3, 5
- adds r0, r5, r0
- lsls r1, r3, 8
- adds r1, r7
- ldrh r1, [r1]
- adds r2, r0, 0
- adds r2, 0xA4
- strh r1, [r2]
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0xB0
- bls _08022FF6
- strh r6, [r2]
-_08022FF6:
- ldrh r1, [r2]
- lsls r1, 2
- adds r1, r4
- ldrh r0, [r5, 0x18]
- ldrb r1, [r1]
- adds r0, r1
- strh r0, [r5, 0x18]
- ldrh r0, [r2]
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x2]
- ldr r0, [r5, 0x1C]
- adds r0, r1
- str r0, [r5, 0x1C]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldrb r0, [r5, 0x9]
- cmp r3, r0
- bcc _08022FDC
-_0802301E:
- movs r0, 0
- strh r0, [r5, 0x10]
- bl ResetBlockReceivedFlags
- movs r1, 0x18
- ldrsh r0, [r5, r1]
- lsls r0, 8
- movs r1, 0x80
- lsls r1, 6
- bl sub_81515FC
- str r0, [r5, 0x20]
- b _08023060
- .pool
-_08023044:
- movs r0, 0
- movs r1, 0x1
- bl ClearDialogWindowAndFrame
- movs r0, 0xA
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0x4
- strh r0, [r5, 0x12]
- strb r1, [r5, 0xC]
- b _08023066
-_08023060:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_08023066:
- movs r0, 0
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8022F1C
-
- thumb_func_start sub_8023070
-sub_8023070: @ 8023070
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0x6
- bls _0802307C
- b _080231A8
-_0802307C:
- lsls r0, 2
- ldr r1, =_0802308C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0802308C:
- .4byte _080230A8
- .4byte _080230BA
- .4byte _080230E8
- .4byte _08023120
- .4byte _08023150
- .4byte _08023172
- .4byte _08023184
-_080230A8:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r4, r0
- adds r0, r4, 0
- bl sub_80214A8
- bl sub_8010434
- b _080231A8
-_080230BA:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080231AE
- movs r2, 0x9C
- lsls r2, 1
- adds r1, r4, r2
- movs r0, 0
- strb r0, [r1]
- ldr r3, =0x00000139
- adds r1, r4, r3
- strb r0, [r1]
- adds r2, 0x2
- adds r1, r4, r2
- strb r0, [r1]
- adds r3, 0x2
- adds r1, r4, r3
- strb r0, [r1]
- b _080231A8
- .pool
-_080230E8:
- movs r0, 0x9C
- lsls r0, 1
- adds r3, r4, r0
- ldrb r0, [r3]
- lsls r0, 2
- movs r2, 0xB8
- lsls r2, 1
- adds r1, r4, r2
- adds r0, r1, r0
- ldr r2, [r0]
- ldr r0, =sub_8021608
- str r0, [r2, 0x1C]
- ldrb r0, [r3]
- lsls r0, 2
- adds r1, r0
- ldr r1, [r1]
- adds r1, 0x2C
- ldrb r2, [r1]
- movs r0, 0x7F
- ands r0, r2
- strb r0, [r1]
- movs r0, 0x3D
- bl PlaySE
- b _080231A8
- .pool
-_08023120:
- movs r3, 0x9C
- lsls r3, 1
- adds r2, r4, r3
- ldrb r0, [r2]
- lsls r0, 2
- adds r3, 0x38
- adds r1, r4, r3
- adds r3, r1, r0
- ldr r0, [r3]
- ldr r1, [r0, 0x1C]
- ldr r0, =sub_8021608
- cmp r1, r0
- beq _080231AE
- movs r0, 0
- str r0, [r3]
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- bl sub_8010434
- b _080231A8
- .pool
-_08023150:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080231AE
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r4, r0
- ldrb r0, [r1]
- ldrb r2, [r4, 0x9]
- cmp r0, r2
- bcs _0802316C
- movs r0, 0x2
- b _080231AC
-_0802316C:
- movs r0, 0
- strb r0, [r1]
- b _080231A8
-_08023172:
- movs r3, 0x9C
- lsls r3, 1
- adds r1, r4, r3
- adds r0, r4, 0
- bl sub_80216A8
- bl sub_8010434
- b _080231A8
-_08023184:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080231AE
- movs r0, 0x2B
- bl PlaySE
- movs r0, 0xB
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0x5
- strh r0, [r4, 0x12]
- strb r1, [r4, 0xC]
- b _080231AE
-_080231A8:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
-_080231AC:
- strb r0, [r4, 0xC]
-_080231AE:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8023070
-
- thumb_func_start sub_80231B8
-sub_80231B8: @ 80231B8
- push {r4-r7,lr}
- adds r4, r0, 0
- ldrb r1, [r4, 0xC]
- cmp r1, 0x1
- beq _0802321C
- cmp r1, 0x1
- bgt _080231CC
- cmp r1, 0
- beq _080231D6
- b _080232DC
-_080231CC:
- cmp r1, 0x2
- beq _0802329C
- cmp r1, 0x3
- beq _080232BE
- b _080232DC
-_080231D6:
- ldrh r0, [r4, 0x2A]
- adds r0, 0x4
- strh r0, [r4, 0x2A]
- lsls r0, 16
- cmp r0, 0
- bge _080231E4
- b _080232E2
-_080231E4:
- strh r1, [r4, 0x2A]
- ldr r0, =0x00000139
- adds r3, r4, r0
- movs r0, 0x4
- strb r0, [r3]
- movs r2, 0x9C
- lsls r2, 1
- adds r1, r4, r2
- movs r0, 0
- strb r0, [r1]
- ldr r2, =gUnknown_082F326C
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- adds r0, r2
- ldrb r0, [r0]
- movs r2, 0x9D
- lsls r2, 1
- adds r1, r4, r2
- strb r0, [r1]
- movs r0, 0xD6
- bl PlaySE
- b _080232DC
- .pool
-_0802321C:
- ldr r7, =gUnknown_082F326C
- movs r0, 0x9C
- lsls r0, 1
- adds r6, r4, r0
- ldr r1, =0x00000139
- adds r5, r4, r1
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- ldrb r2, [r6]
- adds r0, r2
- adds r0, r7
- movs r1, 0
- ldrsb r1, [r0, r1]
- strh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x12
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1A
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1E
- bl SetGpuReg
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- movs r1, 0x9D
- lsls r1, 1
- adds r2, r4, r1
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r2]
- cmp r0, r1
- bcc _080232E2
- ldrb r0, [r5]
- cmp r0, 0
- beq _080232DC
- subs r0, 0x1
- strb r0, [r5]
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0
- strb r0, [r6]
- b _080232E2
- .pool
-_0802329C:
- movs r0, 0
- strh r0, [r4, 0x2C]
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- bl sub_8010434
- b _080232DC
-_080232BE:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080232E2
- movs r0, 0xC
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0x6
- strh r0, [r4, 0x12]
- strb r1, [r4, 0xC]
- b _080232E2
-_080232DC:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
- strb r0, [r4, 0xC]
-_080232E2:
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80231B8
-
- thumb_func_start sub_80232EC
-sub_80232EC: @ 80232EC
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0x1
- beq _0802330C
- cmp r0, 0x1
- bgt _08023302
- cmp r0, 0
- beq _08023332
- b _0802338C
-_08023302:
- cmp r0, 0x2
- beq _0802332A
- cmp r0, 0x3
- beq _08023338
- b _0802338C
-_0802330C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023392
- movs r1, 0x80
- lsls r1, 5
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x78
- movs r3, 0x50
- bl sub_802EB24
- b _0802338C
-_0802332A:
- bl sub_802EB84
- cmp r0, 0
- bne _08023392
-_08023332:
- bl sub_8010434
- b _0802338C
-_08023338:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023392
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r4, r0
- movs r0, 0
- strb r0, [r1]
- ldr r2, =0x00000139
- adds r1, r4, r2
- strb r0, [r1]
- adds r2, 0x1
- adds r1, r4, r2
- strb r0, [r1]
- adds r2, 0x1
- adds r1, r4, r2
- strb r0, [r1]
- strh r0, [r4, 0x10]
- ldrb r0, [r4, 0x8]
- cmp r0, 0
- bne _08023378
- movs r0, 0xD
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _08023382
- .pool
-_08023378:
- movs r0, 0xE
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
-_08023382:
- movs r1, 0
- movs r0, 0x7
- strh r0, [r4, 0x12]
- strb r1, [r4, 0xC]
- b _08023392
-_0802338C:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
- strb r0, [r4, 0xC]
-_08023392:
- movs r0, 0
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80232EC
-
- thumb_func_start sub_802339C
-sub_802339C: @ 802339C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r4, r0, 0
- movs r0, 0
- mov r8, r0
- movs r2, 0
- adds r7, r2, 0
- ldrb r1, [r4, 0x9]
- cmp r7, r1
- bcs _080234AA
- movs r2, 0x5E
- adds r2, r4
- mov r9, r2
- ldr r3, =gUnknown_082F325C
- mov r10, r3
-_080233C0:
- lsls r0, r7, 4
- ldr r1, =gRecvCmds
- adds r2, r0, r1
- ldrh r1, [r2]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- movs r3, 0xBC
- lsls r3, 6
- cmp r0, r3
- bne _0802349E
- ldrh r0, [r2, 0x2]
- cmp r0, 0x2
- bne _0802349E
- ldrb r1, [r2, 0x4]
- movs r0, 0x4
- ands r0, r1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08023496
- mov r0, r9
- ldrb r2, [r0]
- lsrs r1, r2, 3
- mov r3, r10
- adds r0, r7, r3
- ldrb r0, [r0]
- orrs r1, r0
- lsls r1, 3
- movs r0, 0x7
- ands r0, r2
- orrs r0, r1
- mov r1, r9
- strb r0, [r1]
- lsls r2, r7, 5
- adds r3, r4, r2
- mov r12, r3
- mov r1, r12
- adds r1, 0xB5
- movs r0, 0x1
- strb r0, [r1]
- subs r1, 0x7
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- subs r1, 0x8
- ldrh r0, [r4, 0x28]
- ldrh r1, [r1]
- subs r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- mov r5, r12
- adds r5, 0xAA
- ldrh r1, [r5]
- subs r0, r1, 0x1
- adds r6, r2, 0
- cmp r3, r0
- blt _08023468
- adds r0, r1, 0x1
- cmp r3, r0
- bgt _08023468
- mov r1, r12
- adds r1, 0xA8
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- strh r3, [r5]
- mov r0, r12
- adds r0, 0xAC
- ldrh r1, [r1]
- ldrh r2, [r0]
- cmp r1, r2
- bls _08023476
- strh r1, [r0]
- b _08023476
- .pool
-_08023468:
- adds r0, r4, r6
- adds r2, r0, 0
- adds r2, 0xA8
- movs r1, 0
- strh r1, [r2]
- adds r0, 0xAA
- strh r3, [r0]
-_08023476:
- adds r1, r4, r6
- ldrh r0, [r4, 0x28]
- adds r3, r1, 0
- adds r3, 0xA6
- movs r2, 0
- strh r0, [r3]
- adds r1, 0xB4
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bls _0802349E
- strb r2, [r1]
- b _0802349E
-_08023496:
- lsls r0, r7, 5
- adds r0, r4, r0
- adds r0, 0xB5
- strb r1, [r0]
-_0802349E:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r3, [r4, 0x9]
- cmp r7, r3
- bcc _080233C0
-_080234AA:
- mov r0, r8
- cmp r0, 0x1
- bls _080234E0
- movs r7, 0
- ldrb r1, [r4, 0x9]
- cmp r7, r1
- bcs _080234E0
- movs r3, 0x2
-_080234BA:
- lsls r0, r7, 5
- adds r1, r4, r0
- adds r2, r1, 0
- adds r2, 0xB5
- ldrb r0, [r2]
- cmp r0, 0
- beq _080234D4
- orrs r0, r3
- strb r0, [r2]
- adds r1, 0xB0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_080234D4:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r2, [r4, 0x9]
- cmp r7, r2
- bcc _080234BA
-_080234E0:
- mov r3, r8
- cmp r3, 0
- beq _08023548
- ldrh r0, [r4, 0x2E]
- add r0, r8
- strh r0, [r4, 0x2E]
- ldr r1, =gUnknown_082F3264
- mov r0, r8
- subs r0, 0x1
- adds r0, r1
- ldrb r0, [r0]
- add r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrh r0, [r4, 0x34]
- add r0, r8
- strh r0, [r4, 0x34]
- ldrh r0, [r4, 0x1A]
- add r0, r8
- strh r0, [r4, 0x1A]
- movs r1, 0x18
- ldrsh r0, [r4, r1]
- movs r3, 0x1A
- ldrsh r2, [r4, r3]
- subs r0, r2
- cmp r0, 0
- ble _08023534
- lsls r2, 8
- ldr r1, [r4, 0x20]
- adds r0, r2, 0
- bl sub_81515FC
- adds r2, r0, 0
- asrs r2, 8
- adds r0, r4, 0
- adds r0, 0x24
- strb r2, [r0]
- b _08023548
- .pool
-_08023534:
- adds r1, r4, 0
- adds r1, 0x24
- movs r0, 0x20
- strb r0, [r1]
- adds r2, r4, 0
- adds r2, 0x5E
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
-_08023548:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_802339C
-
- thumb_func_start sub_8023558
-sub_8023558: @ 8023558
- push {r4-r6,lr}
- adds r3, r0, 0
- movs r6, 0
- movs r1, 0
- adds r4, r1, 0
- ldrb r0, [r3, 0x9]
- cmp r4, r0
- bcs _080235B0
- adds r5, r3, 0
- adds r5, 0x64
-_0802356C:
- lsls r0, r4, 5
- adds r1, r3, r0
- adds r0, r1, 0
- adds r0, 0xB5
- ldrb r2, [r0]
- cmp r2, 0
- beq _080235A4
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r1, 0
- adds r0, 0xB4
- ldrb r0, [r0]
- adds r1, r0, 0x1
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- beq _08023594
- movs r0, 0x4
- orrs r1, r0
-_08023594:
- lsls r0, r4, 1
- adds r0, r4
- lsls r1, r0
- lsls r0, r1, 16
- lsrs r1, r0, 16
- ldrh r0, [r5]
- orrs r1, r0
- strh r1, [r5]
-_080235A4:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r1, [r3, 0x9]
- cmp r4, r1
- bcc _0802356C
-_080235B0:
- adds r0, r3, 0
- adds r0, 0x24
- ldrb r1, [r0]
- adds r0, 0x3C
- strh r1, [r0]
- cmp r6, 0
- bne _080235D4
- ldr r2, =0x0000013b
- adds r0, r3, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080236A0
- movs r4, 0x9C
- lsls r4, 1
- adds r1, r3, r4
- b _08023612
- .pool
-_080235D4:
- ldr r5, =0x0000013b
- adds r2, r3, r5
- ldrb r0, [r2]
- cmp r0, 0
- beq _0802361A
- ldr r0, =0x00000139
- adds r1, r3, r0
- ldrb r2, [r1]
- cmp r6, r2
- beq _0802360C
- subs r0, r6, 0x1
- strb r0, [r1]
- ldr r1, =gUnknown_082F3290
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- movs r4, 0x9D
- lsls r4, 1
- adds r1, r3, r4
- strb r0, [r1]
- b _08023640
- .pool
-_0802360C:
- movs r5, 0x9C
- lsls r5, 1
- adds r1, r3, r5
-_08023612:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08023640
-_0802361A:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r3, r0
- movs r0, 0
- strb r0, [r1]
- subs r0, r6, 0x1
- ldr r4, =0x00000139
- adds r1, r3, r4
- strb r0, [r1]
- ldr r1, =gUnknown_082F3290
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- movs r5, 0x9D
- lsls r5, 1
- adds r1, r3, r5
- strb r0, [r1]
- movs r0, 0x1
- strb r0, [r2]
-_08023640:
- ldr r0, =0x0000013b
- adds r4, r3, r0
- ldrb r0, [r4]
- cmp r0, 0
- beq _080236A0
- movs r2, 0x9C
- lsls r2, 1
- adds r1, r3, r2
- movs r5, 0x9D
- lsls r5, 1
- adds r2, r3, r5
- ldrb r0, [r1]
- ldrb r5, [r2]
- cmp r0, r5
- bcc _0802367C
- movs r0, 0
- strb r0, [r1]
- ldr r5, =0x00000139
- adds r1, r3, r5
- strb r0, [r1]
- strb r0, [r2]
- strb r0, [r4]
- movs r1, 0
- b _08023690
- .pool
-_0802367C:
- ldr r2, =gUnknown_082F3290
- ldrb r1, [r1]
- ldr r4, =0x00000139
- adds r0, r3, r4
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, 0x1
- adds r1, r0
- adds r1, r2
- ldrb r1, [r1]
-_08023690:
- adds r0, r3, 0
- adds r0, 0x5F
- strb r1, [r0]
- b _080236A8
- .pool
-_080236A0:
- adds r1, r3, 0
- adds r1, 0x5F
- movs r0, 0
- strb r0, [r1]
-_080236A8:
- ldrh r1, [r3, 0x26]
- adds r0, r3, 0
- adds r0, 0x62
- strh r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8023558
-
- thumb_func_start sub_80236B8
-sub_80236B8: @ 80236B8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- ldr r3, =gMain
- ldrh r1, [r3, 0x2E]
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _080236DA
- adds r2, r5, 0
- adds r2, 0x5E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_080236DA:
- ldrh r1, [r3, 0x2C]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _080236FA
- ldrb r0, [r5, 0x8]
- lsls r0, 5
- adds r0, r5, r0
- adds r1, r0, 0
- adds r1, 0xB2
- ldrh r0, [r1]
- ldrh r2, [r5, 0x28]
- cmp r0, r2
- bcs _080236FA
- adds r0, 0x1
- strh r0, [r1]
-_080236FA:
- ldrb r0, [r5, 0x8]
- adds r7, r5, 0
- adds r7, 0x5E
- cmp r0, 0
- beq _08023710
- ldrb r1, [r7]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _08023710
- b _0802384C
-_08023710:
- adds r4, r5, 0
- adds r4, 0x5C
- movs r0, 0x2
- strh r0, [r4]
- ldrh r0, [r5, 0x28]
- movs r1, 0x1E
- bl __umodsi3
- lsls r0, 16
- mov r8, r4
- adds r6, r5, 0
- adds r6, 0x25
- cmp r0, 0
- bne _08023768
- movs r0, 0x2E
- ldrsh r2, [r5, r0]
- ldr r1, =gUnknown_082F4444
- ldrb r0, [r5, 0x9]
- subs r0, 0x2
- adds r0, r1
- ldrb r0, [r0]
- cmp r2, r0
- ble _08023754
- ldrh r0, [r5, 0x30]
- adds r0, 0x1
- strh r0, [r5, 0x30]
- ldrb r0, [r6]
- movs r1, 0x10
- orrs r0, r1
- b _0802375C
- .pool
-_08023754:
- ldrb r1, [r6]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
-_0802375C:
- strb r0, [r6]
- movs r0, 0
- strh r0, [r5, 0x2E]
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
-_08023768:
- ldrh r0, [r5, 0x28]
- movs r1, 0xF
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _080237DE
- movs r0, 0x34
- ldrsh r2, [r5, r0]
- ldr r3, =gUnknown_082F4434
- ldrb r0, [r5, 0x9]
- subs r0, 0x2
- lsls r1, r0, 2
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r2, r0
- bge _08023798
- ldrb r1, [r6]
- movs r0, 0x1F
- ands r0, r1
- strb r0, [r6]
- b _080237D8
- .pool
-_08023798:
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r2, r0
- bge _080237AC
- ldrb r0, [r6]
- movs r1, 0x1F
- ands r1, r0
- movs r0, 0x20
- b _080237D4
-_080237AC:
- adds r0, r3, 0x2
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r2, r0
- bge _080237BC
- movs r0, 0x2
- strh r0, [r5, 0x34]
- b _080237D8
-_080237BC:
- adds r0, r3, 0x3
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r2, r0
- bge _080237CC
- movs r0, 0x3
- strh r0, [r5, 0x34]
- b _080237D8
-_080237CC:
- ldrb r0, [r6]
- movs r1, 0x1F
- ands r1, r0
- movs r0, 0x80
-_080237D4:
- orrs r1, r0
- strb r1, [r6]
-_080237D8:
- movs r0, 0
- strh r0, [r5, 0x34]
- b _0802380A
-_080237DE:
- ldrh r0, [r5, 0x10]
- adds r0, 0x1
- strh r0, [r5, 0x10]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3C
- bls _0802380A
- cmp r0, 0x46
- bls _080237FA
- bl sub_8011AC8
- movs r0, 0
- strh r0, [r5, 0x10]
- b _0802380A
-_080237FA:
- ldrb r0, [r7]
- movs r4, 0xF8
- ands r4, r0
- cmp r4, 0
- bne _0802380A
- bl sub_8011AC8
- strh r4, [r5, 0x10]
-_0802380A:
- ldrh r1, [r5, 0x28]
- ldr r0, =0x00008c9f
- cmp r1, r0
- bls _0802381A
- ldrb r0, [r7]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r7]
-_0802381A:
- ldrb r1, [r6]
- lsls r1, 27
- lsrs r1, 31
- lsls r1, 1
- ldrb r2, [r7]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r7]
- ldrb r0, [r6]
- lsrs r0, 5
- adds r2, r5, 0
- adds r2, 0x66
- strh r0, [r2]
- adds r4, r5, 0
- adds r4, 0x42
- adds r0, r4, 0
- mov r1, r8
- movs r2, 0xC
- bl memcpy
- adds r0, r4, 0
- bl sub_800FE50
-_0802384C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80236B8
-
- thumb_func_start sub_802385C
-sub_802385C: @ 802385C
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r4, 0
- ldr r3, =gRecvCmds
- ldrb r0, [r5, 0x9]
- cmp r4, r0
- bcs _08023880
- movs r1, 0
-_0802386C:
- lsls r0, r4, 5
- adds r0, r5, r0
- adds r0, 0xB5
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r5, 0x9]
- cmp r4, r0
- bcc _0802386C
-_08023880:
- adds r2, r3, 0
- ldrh r0, [r2]
- movs r1, 0xFF
- lsls r1, 8
- ands r1, r0
- movs r0, 0xBC
- lsls r0, 6
- cmp r1, r0
- bne _08023898
- ldrh r0, [r2, 0x2]
- cmp r0, 0x2
- beq _080238AC
-_08023898:
- adds r2, r5, 0
- adds r2, 0x25
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- b _080238EA
- .pool
-_080238AC:
- adds r4, r5, 0
- adds r4, 0x4E
- adds r0, r4, 0
- adds r1, r3, 0
- movs r2, 0xE
- bl memcpy
- ldrh r0, [r4, 0x6]
- strh r0, [r5, 0x2A]
- movs r0, 0x5
- ldrsb r0, [r4, r0]
- strh r0, [r5, 0x2C]
- ldrh r0, [r4, 0x8]
- strh r0, [r5, 0x28]
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- adds r0, r5, 0
- bl sub_80216E0
- ldrb r1, [r4, 0x4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080238EA
- adds r0, r5, 0
- adds r0, 0x25
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
-_080238EA:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_802385C
-
- thumb_func_start sub_80238F0
-sub_80238F0: @ 80238F0
- push {r4,lr}
- adds r4, r0, 0
- adds r0, 0x5C
- movs r1, 0
- movs r2, 0xC
- bl memset
- adds r0, r4, 0
- adds r0, 0x4E
- movs r1, 0
- movs r2, 0xE
- bl memset
- adds r0, r4, 0
- bl sub_802385C
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x12
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1A
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1E
- bl SetGpuReg
- adds r0, r4, 0
- adds r0, 0x25
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08023978
- ldrh r1, [r4, 0x28]
- ldr r0, =0x00008c9f
- cmp r1, r0
- bls _08023964
- adds r0, 0x1
- strh r0, [r4, 0x28]
- movs r0, 0x10
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _0802396E
- .pool
-_08023964:
- movs r0, 0xF
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
-_0802396E:
- movs r1, 0
- movs r0, 0
- strh r0, [r4, 0x10]
- strb r1, [r4, 0xC]
- b _08023992
-_08023978:
- ldrh r0, [r4, 0x26]
- adds r0, 0x1
- strh r0, [r4, 0x26]
- adds r0, r4, 0
- bl sub_802339C
- adds r0, r4, 0
- bl sub_8023558
- adds r0, r4, 0
- bl sub_80236B8
- movs r0, 0
-_08023992:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80238F0
-
- thumb_func_start sub_8023998
-sub_8023998: @ 8023998
- push {r4,lr}
- adds r4, r0, 0
- adds r0, 0x5C
- movs r1, 0
- movs r2, 0xC
- bl memset
- adds r0, r4, 0
- adds r0, 0x4E
- movs r1, 0
- movs r2, 0xE
- bl memset
- adds r0, r4, 0
- bl sub_802385C
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x12
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1A
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1E
- bl SetGpuReg
- adds r0, r4, 0
- adds r0, 0x25
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08023A20
- ldrh r1, [r4, 0x28]
- ldr r0, =0x00008c9f
- cmp r1, r0
- bls _08023A0C
- adds r0, 0x1
- strh r0, [r4, 0x28]
- movs r0, 0x10
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _08023A16
- .pool
-_08023A0C:
- movs r0, 0xF
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
-_08023A16:
- movs r1, 0
- movs r0, 0
- strh r0, [r4, 0x10]
- strb r1, [r4, 0xC]
- b _08023A28
-_08023A20:
- adds r0, r4, 0
- bl sub_80236B8
- movs r0, 0
-_08023A28:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8023998
-
- thumb_func_start sub_8023A30
-sub_8023A30: @ 8023A30
- push {r4-r7,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0x5
- bls _08023A3C
- b _08023BB2
-_08023A3C:
- lsls r0, 2
- ldr r1, =_08023A4C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08023A4C:
- .4byte _08023A64
- .4byte _08023A8C
- .4byte _08023ADC
- .4byte _08023B5C
- .4byte _08023B7A
- .4byte _08023B94
-_08023A64:
- movs r0, 0x8
- strh r0, [r4, 0x12]
- movs r0, 0xD6
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- ldr r2, =0x000003ff
- movs r1, 0x8
- bl BlendPalettes
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r4, r0
- movs r0, 0x2
- strb r0, [r1]
- b _08023BB2
- .pool
-_08023A8C:
- movs r1, 0x9C
- lsls r1, 1
- adds r5, r4, r1
- ldrb r0, [r5]
- subs r0, 0x1
- strb r0, [r5]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08023AA2
- b _08023BB8
-_08023AA2:
- movs r0, 0x1
- negs r0, r0
- ldr r2, =0x000003ff
- movs r1, 0
- bl BlendPalettes
- ldr r2, =0x00000139
- adds r1, r4, r2
- movs r0, 0x4
- strb r0, [r1]
- movs r0, 0
- strb r0, [r5]
- ldr r2, =gUnknown_082F326C
- ldrb r1, [r1]
- lsls r0, r1, 3
- subs r0, r1
- adds r0, r2
- ldrb r0, [r0]
- movs r2, 0x9D
- lsls r2, 1
- adds r1, r4, r2
- strb r0, [r1]
- b _08023BB2
- .pool
-_08023ADC:
- ldr r7, =gUnknown_082F326C
- movs r0, 0x9C
- lsls r0, 1
- adds r6, r4, r0
- ldr r1, =0x00000139
- adds r5, r4, r1
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- ldrb r2, [r6]
- adds r0, r2
- adds r0, r7
- movs r1, 0
- ldrsb r1, [r0, r1]
- strh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x12
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1A
- bl SetGpuReg
- ldrh r1, [r4, 0x2C]
- negs r1, r1
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1E
- bl SetGpuReg
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- movs r1, 0x9D
- lsls r1, 1
- adds r2, r4, r1
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r2]
- cmp r0, r1
- bcc _08023BB8
- ldrb r0, [r5]
- cmp r0, 0
- beq _08023BB2
- subs r0, 0x1
- strb r0, [r5]
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0
- strb r0, [r6]
- b _08023BB8
- .pool
-_08023B5C:
- movs r0, 0
- strh r0, [r4, 0x2C]
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- b _08023BB2
-_08023B7A:
- movs r2, 0x9C
- lsls r2, 1
- adds r1, r4, r2
- adds r0, r4, 0
- bl sub_80218D4
- cmp r0, 0
- beq _08023BB8
- bl sub_8010434
- movs r0, 0
- strh r0, [r4, 0x10]
- b _08023BB2
-_08023B94:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023BB8
- movs r0, 0x11
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0
- strh r0, [r4, 0x10]
- strb r1, [r4, 0xC]
- b _08023BBA
-_08023BB2:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
- strb r0, [r4, 0xC]
-_08023BB8:
- movs r0, 0
-_08023BBA:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8023A30
-
- thumb_func_start sub_8023BC0
-sub_8023BC0: @ 8023BC0
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r6, r1, 0
- ldrb r0, [r5, 0xC]
- cmp r0, 0x1
- beq _08023C04
- cmp r0, 0x1
- bgt _08023BD8
- cmp r0, 0
- beq _08023BE2
- b _08023C9C
-_08023BD8:
- cmp r0, 0x2
- beq _08023C2A
- cmp r0, 0x3
- beq _08023C5C
- b _08023C9C
-_08023BE2:
- movs r0, 0x9
- strh r0, [r5, 0x12]
- movs r0, 0x20
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x8
- movs r2, 0x1F
- bl BlendPalettes
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- movs r0, 0x4
- strb r0, [r1]
- b _08023C9C
-_08023C04:
- movs r0, 0x9C
- lsls r0, 1
- adds r4, r5, r0
- ldrb r0, [r4]
- subs r0, 0x1
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _08023CA2
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- movs r2, 0x1F
- bl BlendPalettes
- movs r0, 0
- strb r0, [r4]
- b _08023C9C
-_08023C2A:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- adds r0, r5, 0
- bl sub_80218D4
- cmp r0, 0
- beq _08023CA2
- bl sub_8010434
- movs r0, 0
- strh r0, [r5, 0x10]
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- b _08023C9C
-_08023C5C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08023CA2
- ldr r0, =gStringVar1
- ldr r1, [r5, 0x1C]
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- movs r4, 0
- str r4, [sp]
- adds r0, r6, 0
- movs r1, 0x7
- movs r2, 0x1
- movs r3, 0
- bl sub_8024644
- movs r0, 0x13
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0
- strh r4, [r5, 0x10]
- b _08023CA0
- .pool
-_08023C9C:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
-_08023CA0:
- strb r0, [r5, 0xC]
-_08023CA2:
- movs r0, 0
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8023BC0
-
- thumb_func_start sub_8023CAC
-sub_8023CAC: @ 8023CAC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- adds r7, r0, 0
- ldrb r0, [r7, 0xC]
- cmp r0, 0x7
- bls _08023CC2
- b _0802402E
-_08023CC2:
- lsls r0, 2
- ldr r1, =_08023CD0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08023CD0:
- .4byte _08023CF0
- .4byte _08023D2A
- .4byte _08023D38
- .4byte _08023DA0
- .4byte _08023F20
- .4byte _08023FD0
- .4byte _08023FDC
- .4byte _08024010
-_08023CF0:
- adds r4, r7, 0
- adds r4, 0x42
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x4
- bl memset
- ldrb r0, [r7, 0x8]
- lsls r0, 5
- adds r0, r7, r0
- adds r2, r0, 0
- adds r2, 0xB2
- ldrh r1, [r7, 0x28]
- ldrh r0, [r2]
- cmp r0, r1
- bls _08023D12
- strh r1, [r2]
-_08023D12:
- ldrb r0, [r7, 0x8]
- lsls r0, 5
- adds r0, r7, r0
- adds r0, 0xB2
- ldrh r0, [r0]
- strh r0, [r4]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x2
- bl SendBlock
- b _0802402E
-_08023D2A:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _08023D36
- b _08024034
-_08023D36:
- b _08024004
-_08023D38:
- bl GetBlockReceivedStatus
- ldr r2, =gUnknown_082F4448
- ldrb r3, [r7, 0x9]
- subs r1, r3, 0x2
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- beq _08023D50
- b _08024034
-_08023D50:
- movs r0, 0
- mov r8, r0
- adds r4, r7, 0
- adds r4, 0x42
- cmp r8, r3
- bcs _08023D7E
- ldr r2, =gBlockRecvBuffer
-_08023D5E:
- mov r3, r8
- lsls r1, r3, 5
- adds r1, r7, r1
- lsls r0, r3, 8
- adds r0, r2
- ldrh r0, [r0]
- adds r1, 0xB2
- strh r0, [r1]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrb r6, [r7, 0x9]
- cmp r8, r6
- bcc _08023D5E
-_08023D7E:
- movs r0, 0
- strh r0, [r7, 0x10]
- strh r0, [r4]
- bl ResetBlockReceivedFlags
- ldrb r0, [r7, 0x8]
- cmp r0, 0
- bne _08023D9C
- movs r0, 0x3
- b _08024032
- .pool
-_08023D9C:
- movs r0, 0x6
- b _08024032
-_08023DA0:
- adds r0, r7, 0
- adds r0, 0x68
- movs r1, 0
- movs r2, 0x30
- bl memset
- ldrh r1, [r7, 0x28]
- adds r0, r7, 0
- adds r0, 0x6C
- strh r1, [r0]
- movs r0, 0x18
- ldrsh r4, [r7, r0]
- ldrh r0, [r7, 0x28]
- movs r1, 0x3C
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl __divsi3
- adds r1, r7, 0
- adds r1, 0x6E
- strh r0, [r1]
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- lsls r0, 8
- movs r4, 0xC8
- lsls r4, 6
- adds r1, r4, 0
- bl sub_8151574
- adds r2, r0, 0
- movs r3, 0x32
- ldrsh r1, [r7, r3]
- lsls r1, 8
- bl sub_81515FC
- adds r2, r0, r4
- asrs r2, 8
- movs r1, 0x7F
- adds r0, r2, 0
- ands r0, r1
- adds r1, r7, 0
- adds r1, 0x70
- strh r0, [r1]
- lsls r2, 8
- movs r1, 0xC8
- lsls r1, 7
- adds r0, r2, 0
- bl sub_81515FC
- adds r2, r0, 0
- ldrb r1, [r7, 0x9]
- ldr r0, [r7, 0x1C]
- muls r0, r1
- lsls r4, r0, 8
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_8151574
- adds r4, r0, 0
- asrs r0, r4, 8
- str r0, [r7, 0x68]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r1, r7, 0
- adds r1, 0x8F
- strb r0, [r1]
- movs r6, 0
- mov r8, r6
- mov r9, r1
- ldrb r0, [r7, 0x9]
- cmp r8, r0
- bcc _08023E44
- b _0802402E
-_08023E44:
- adds r0, r7, 0
- adds r0, 0x88
- add r0, r8
- mov r1, r8
- strb r1, [r0]
- adds r0, r7, 0
- adds r0, 0x90
- add r0, r8
- strb r1, [r0]
- mov r3, r8
- lsls r2, r3, 1
- adds r1, r7, 0
- adds r1, 0x74
- adds r1, r2
- lsls r0, r3, 5
- adds r3, r7, r0
- adds r5, r3, 0
- adds r5, 0xAE
- ldrh r0, [r5]
- strh r0, [r1]
- adds r1, r7, 0
- adds r1, 0x72
- ldrh r6, [r1]
- adds r0, r6
- strh r0, [r1]
- mov r1, r9
- ldrb r0, [r1]
- adds r6, r2, 0
- cmp r0, 0x1
- beq _08023EAE
- cmp r0, 0x1
- bgt _08023E8A
- cmp r0, 0
- beq _08023E90
- b _08023F04
-_08023E8A:
- cmp r0, 0x2
- beq _08023ECC
- b _08023F04
-_08023E90:
- ldrh r0, [r5]
- cmp r0, 0
- beq _08023ED2
- adds r0, r3, 0
- adds r0, 0xAC
- ldrh r2, [r0]
- lsls r2, 8
- adds r0, r2, 0
- movs r1, 0xC8
- lsls r1, 7
- bl sub_8151574
- adds r2, r0, 0
- ldrh r4, [r5]
- b _08023EFA
-_08023EAE:
- ldrh r0, [r5]
- cmp r0, 0
- beq _08023ED2
- adds r0, r3, 0
- adds r0, 0xB0
- ldrh r2, [r0]
- lsls r2, 8
- adds r0, r2, 0
- movs r1, 0xC8
- lsls r1, 7
- bl sub_8151574
- adds r2, r0, 0
- ldrh r4, [r5]
- b _08023EFA
-_08023ECC:
- ldrh r0, [r5]
- cmp r0, 0
- bne _08023ED6
-_08023ED2:
- movs r4, 0
- b _08023F04
-_08023ED6:
- adds r1, r3, 0
- adds r1, 0xB2
- ldrh r0, [r1]
- ldrh r2, [r7, 0x28]
- cmp r0, r2
- bcc _08023EE8
- movs r4, 0xC8
- lsls r4, 7
- b _08023F04
-_08023EE8:
- ldrh r2, [r1]
- lsls r2, 8
- adds r0, r2, 0
- movs r1, 0xC8
- lsls r1, 7
- bl sub_8151574
- adds r2, r0, 0
- ldrh r4, [r7, 0x28]
-_08023EFA:
- lsls r4, 8
- adds r1, r4, 0
- bl sub_81515FC
- adds r4, r0, 0
-_08023F04:
- asrs r4, 4
- adds r0, r7, 0
- adds r0, 0x7E
- adds r0, r6
- strh r4, [r0]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrb r3, [r7, 0x9]
- cmp r8, r3
- bcc _08023E44
- b _0802402E
-_08023F20:
- movs r6, 0
- mov r8, r6
- ldrb r0, [r7, 0x9]
- subs r0, 0x1
- adds r1, r7, 0
- adds r1, 0x68
- str r1, [sp, 0xC]
- cmp r8, r0
- bge _08023FC4
-_08023F32:
- ldrb r0, [r7, 0x9]
- subs r0, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- mov r2, r8
- adds r2, 0x1
- str r2, [sp, 0x8]
- cmp r4, r8
- bls _08023FB4
- adds r3, r7, 0
- adds r3, 0x74
- str r3, [sp]
- adds r6, r7, 0
- adds r6, 0x88
- str r6, [sp, 0x4]
- movs r0, 0x90
- adds r0, r7
- mov r10, r0
- movs r1, 0x7E
- adds r1, r7
- mov r9, r1
-_08023F5C:
- subs r2, r4, 0x1
- mov r12, r2
- lsls r6, r2, 1
- ldr r0, [sp]
- adds r3, r0, r6
- lsls r5, r4, 1
- adds r1, r0, r5
- ldrh r2, [r3]
- ldrh r0, [r1]
- cmp r2, r0
- bcs _08023F86
- ldrh r0, [r1]
- strh r2, [r1]
- strh r0, [r3]
- ldr r1, [sp, 0x4]
- adds r2, r1, r4
- ldrb r3, [r2]
- add r1, r12
- ldrb r0, [r1]
- strb r0, [r2]
- strb r3, [r1]
-_08023F86:
- mov r2, r9
- adds r3, r2, r6
- adds r1, r2, r5
- ldrh r2, [r3]
- ldrh r6, [r1]
- cmp r2, r6
- bcs _08023FAA
- ldrh r0, [r1]
- strh r2, [r1]
- strh r0, [r3]
- mov r0, r10
- adds r2, r0, r4
- ldrb r3, [r2]
- mov r1, r10
- add r1, r12
- ldrb r0, [r1]
- strb r0, [r2]
- strb r3, [r1]
-_08023FAA:
- mov r1, r12
- lsls r0, r1, 24
- lsrs r4, r0, 24
- cmp r4, r8
- bhi _08023F5C
-_08023FB4:
- ldr r2, [sp, 0x8]
- lsls r0, r2, 24
- lsrs r0, 24
- mov r8, r0
- ldrb r0, [r7, 0x9]
- subs r0, 0x1
- cmp r8, r0
- blt _08023F32
-_08023FC4:
- movs r0, 0
- ldr r1, [sp, 0xC]
- movs r2, 0x30
- bl SendBlock
- b _0802402E
-_08023FD0:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08024034
- b _08024004
-_08023FDC:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08024034
- adds r4, r7, 0
- adds r4, 0x68
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x30
- bl memset
- ldr r1, =gBlockRecvBuffer
- adds r0, r4, 0
- movs r2, 0x30
- bl memcpy
- bl ResetBlockReceivedFlags
-_08024004:
- movs r0, 0
- strh r0, [r7, 0x10]
- b _0802402E
- .pool
-_08024010:
- bl sub_8020E58
- movs r0, 0x12
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0
- movs r1, 0xB
- strh r1, [r7, 0x12]
- strb r0, [r7, 0xC]
- adds r1, r7, 0
- adds r1, 0x24
- strb r0, [r1]
- b _08024034
-_0802402E:
- ldrb r0, [r7, 0xC]
- adds r0, 0x1
-_08024032:
- strb r0, [r7, 0xC]
-_08024034:
- movs r0, 0
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8023CAC
-
- thumb_func_start sub_8024048
-sub_8024048: @ 8024048
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r6, r1, 0
- ldrb r0, [r5, 0xC]
- cmp r0, 0x4
- bhi _08024124
- lsls r0, 2
- ldr r1, =_08024064
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08024064:
- .4byte _08024078
- .4byte _0802408A
- .4byte _0802409C
- .4byte _080240CC
- .4byte _080240DC
-_08024078:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- adds r0, r5, 0
- bl sub_8022070
- cmp r0, 0
- bne _08024124
- b _0802412A
-_0802408A:
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- movs r0, 0x1E
- strb r0, [r1]
- b _08024124
-_0802409C:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _080240AE
- subs r0, 0x1
- strb r0, [r1]
- b _0802412A
-_080240AE:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0802412A
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_802222C
- b _08024124
- .pool
-_080240CC:
- ldrh r0, [r5, 0x12]
- cmp r0, 0xC
- bhi _08024124
- adds r0, 0x1
- movs r1, 0
- strh r0, [r5, 0x12]
- strb r1, [r5, 0xC]
- b _0802412A
-_080240DC:
- ldr r0, =gStringVar1
- ldr r1, [r5, 0x1C]
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar2
- bl GetBerryPowder
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- movs r4, 0
- str r4, [sp]
- adds r0, r6, 0
- movs r1, 0x2
- movs r2, 0x3
- movs r3, 0
- bl sub_8024644
- movs r0, 0x13
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- strb r4, [r5, 0xC]
- b _0802412A
- .pool
-_08024124:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_0802412A:
- movs r0, 0
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8024048
-
- thumb_func_start sub_8024134
-sub_8024134: @ 8024134
- push {r4,r5,lr}
- sub sp, 0x10
- adds r5, r0, 0
- adds r4, r1, 0
- ldrb r0, [r5, 0xC]
- cmp r0, 0x4
- bhi _08024218
- lsls r0, 2
- ldr r1, =_08024150
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08024150:
- .4byte _08024164
- .4byte _080241A0
- .4byte _080241A6
- .4byte _080241F0
- .4byte _08024204
-_08024164:
- ldrh r1, [r5, 0x28]
- ldr r0, =0x00008c9f
- cmp r1, r0
- bls _08024176
- movs r1, 0x9C
- lsls r1, 1
- adds r0, r5, r1
- bl sub_8022554
-_08024176:
- movs r0, 0x1
- str r0, [sp]
- adds r0, r4, 0
- movs r1, 0x8
- movs r2, 0
- movs r3, 0
- bl sub_8024644
- movs r4, 0
- movs r0, 0x13
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- strb r4, [r5, 0xC]
- b _0802421E
- .pool
-_080241A0:
- bl sub_8010434
- b _08024218
-_080241A6:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0802421E
- movs r0, 0
- movs r1, 0
- bl DrawDialogueFrame
- ldr r2, =gText_SavingDontTurnOffPower
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParameterized2
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, =sub_8153688
- movs r1, 0
- bl CreateTask
- b _08024218
- .pool
-_080241F0:
- ldr r0, =sub_8153688
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08024218
- b _0802421E
- .pool
-_08024204:
- movs r0, 0x14
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r1, 0
- movs r0, 0xF
- strh r0, [r5, 0x12]
- strb r1, [r5, 0xC]
- b _0802421E
-_08024218:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_0802421E:
- movs r0, 0
- add sp, 0x10
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8024134
-
- thumb_func_start sub_8024228
-sub_8024228: @ 8024228
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r6, r1, 0
- ldrb r0, [r5, 0xC]
- cmp r0, 0x1
- beq _0802426A
- cmp r0, 0x1
- bgt _08024240
- cmp r0, 0
- beq _08024246
- b _080242D0
-_08024240:
- cmp r0, 0x2
- beq _08024270
- b _080242D0
-_08024246:
- movs r0, 0x1
- str r0, [sp]
- adds r0, r6, 0
- movs r1, 0x4
- movs r2, 0
- movs r3, 0
- bl sub_8024644
- movs r0, 0x14
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0
- strb r0, [r5, 0xC]
- b _080242D8
-_0802426A:
- bl DisplayYesNoMenuDefaultYes
- b _080242D0
-_08024270:
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r4, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _080242D6
- adds r0, r5, 0
- adds r0, 0x42
- movs r1, 0
- movs r2, 0xC
- bl memset
- cmp r4, 0
- bne _080242A2
- bl HasAtLeastOneBerry
- lsls r0, 24
- cmp r0, 0
- beq _0802429E
- strh r4, [r5, 0x14]
- b _080242A6
-_0802429E:
- movs r0, 0x3
- b _080242A4
-_080242A2:
- movs r0, 0x1
-_080242A4:
- strh r0, [r5, 0x14]
-_080242A6:
- movs r0, 0
- movs r1, 0x1
- bl ClearDialogWindowAndFrame
- movs r4, 0
- str r4, [sp]
- adds r0, r6, 0
- movs r1, 0x8
- movs r2, 0
- movs r3, 0
- bl sub_8024644
- movs r0, 0x15
- strb r0, [r5, 0xE]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- strb r4, [r5, 0xC]
- b _080242D6
-_080242D0:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_080242D6:
- movs r0, 0
-_080242D8:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8024228
-
- thumb_func_start sub_80242E0
-sub_80242E0: @ 80242E0
- push {r4-r7,lr}
- adds r4, r0, 0
- movs r5, 0
- ldrb r0, [r4, 0xC]
- cmp r0, 0x1
- beq _08024306
- cmp r0, 0x1
- bgt _080242F6
- cmp r0, 0
- beq _08024300
- b _080243AC
-_080242F6:
- cmp r0, 0x2
- beq _08024328
- cmp r0, 0x3
- beq _08024336
- b _080243AC
-_08024300:
- bl sub_8010434
- b _080243AC
-_08024306:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080243B2
- ldrh r0, [r4, 0x14]
- adds r1, r4, 0
- adds r1, 0x42
- strh r0, [r1]
- adds r0, r4, 0
- adds r0, 0x4E
- strh r5, [r0]
- movs r0, 0
- movs r2, 0x2
- bl SendBlock
- b _080243AC
-_08024328:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080243B2
- strh r5, [r4, 0x10]
- b _080243AC
-_08024336:
- bl GetBlockReceivedStatus
- ldr r2, =gUnknown_082F4448
- ldrb r3, [r4, 0x9]
- subs r1, r3, 0x2
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _080243B2
- adds r7, r4, 0
- adds r7, 0x42
- adds r6, r4, 0
- adds r6, 0x4E
- cmp r5, r3
- bcs _08024374
- adds r1, r6, 0
- ldr r2, =gBlockRecvBuffer
-_0802435C:
- lsls r0, r5, 8
- adds r0, r2
- ldrh r0, [r0]
- ldrh r3, [r1]
- adds r0, r3
- strh r0, [r1]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r0, [r4, 0x9]
- cmp r5, r0
- bcc _0802435C
-_08024374:
- ldrh r0, [r6]
- cmp r0, 0
- beq _08024390
- movs r0, 0x17
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- b _0802439A
- .pool
-_08024390:
- movs r0, 0x16
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
-_0802439A:
- bl ResetBlockReceivedFlags
- movs r1, 0
- movs r0, 0
- strh r0, [r7]
- strh r0, [r6]
- strh r0, [r4, 0x10]
- strb r1, [r4, 0xC]
- b _080243B4
-_080243AC:
- ldrb r0, [r4, 0xC]
- adds r0, 0x1
- strb r0, [r4, 0xC]
-_080243B2:
- movs r0, 0
-_080243B4:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80242E0
-
- thumb_func_start sub_80243BC
-sub_80243BC: @ 80243BC
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- ldrb r4, [r5, 0xC]
- cmp r4, 0x1
- beq _080243EA
- cmp r4, 0x1
- bgt _080243D2
- cmp r4, 0
- beq _080243DC
- b _08024434
-_080243D2:
- cmp r4, 0x2
- beq _080243F6
- cmp r4, 0x3
- beq _0802441A
- b _08024434
-_080243DC:
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- movs r1, 0x1
- movs r2, 0
- movs r3, 0x10
- b _08024410
-_080243EA:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- beq _08024434
- b _0802443A
-_080243F6:
- movs r0, 0
- movs r1, 0x1
- bl ClearDialogWindowAndFrame
- adds r0, r5, 0
- bl sub_8021488
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
-_08024410:
- bl BeginNormalPaletteFade
- bl UpdatePaletteFade
- b _08024434
-_0802441A:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _0802443A
- movs r0, 0x7
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- movs r0, 0
- strh r4, [r5, 0x12]
- b _08024438
-_08024434:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
-_08024438:
- strb r0, [r5, 0xC]
-_0802443A:
- movs r0, 0
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80243BC
-
- thumb_func_start sub_8024444
-sub_8024444: @ 8024444
- push {r4,r5,lr}
- sub sp, 0x10
- adds r5, r0, 0
- ldrb r4, [r5, 0xC]
- cmp r4, 0x1
- beq _080244BC
- cmp r4, 0x1
- bgt _0802445A
- cmp r4, 0
- beq _08024460
- b _080244F6
-_0802445A:
- cmp r4, 0x2
- beq _080244D4
- b _080244F6
-_08024460:
- movs r0, 0
- movs r1, 0
- bl DrawDialogueFrame
- ldrh r1, [r5, 0x14]
- cmp r1, 0x3
- bne _08024490
- ldr r0, =gUnknown_082F32A4
- ldr r2, [r0, 0x14]
- ldrb r3, [r5, 0xB]
- str r4, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- str r1, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- bl AddTextPrinterParameterized2
- b _080244AC
- .pool
-_08024490:
- ldr r0, =gUnknown_082F32A4
- ldr r2, [r0, 0x18]
- ldrb r3, [r5, 0xB]
- str r4, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- bl AddTextPrinterParameterized2
-_080244AC:
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- b _080244F6
- .pool
-_080244BC:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- bne _080244FC
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- movs r0, 0x78
- strb r0, [r1]
- b _080244F6
-_080244D4:
- movs r0, 0x9C
- lsls r0, 1
- adds r1, r5, r0
- ldrb r0, [r1]
- adds r4, r0, 0
- cmp r4, 0
- beq _080244E8
- subs r0, 0x1
- strb r0, [r1]
- b _080244FC
-_080244E8:
- movs r0, 0x18
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- strb r4, [r5, 0xC]
- b _080244FC
-_080244F6:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_080244FC:
- movs r0, 0
- add sp, 0x10
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8024444
-
- thumb_func_start sub_8024508
-sub_8024508: @ 8024508
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrb r4, [r5, 0xC]
- cmp r4, 0x1
- beq _08024528
- cmp r4, 0x1
- bgt _0802451C
- cmp r4, 0
- beq _08024522
- b _08024558
-_0802451C:
- cmp r4, 0x2
- beq _08024538
- b _08024558
-_08024522:
- bl sub_8010434
- b _08024558
-_08024528:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0802455E
- bl sub_800AC34
- b _08024558
-_08024538:
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _0802455E
- movs r0, 0x19
- strb r0, [r5, 0xE]
- movs r0, 0x5
- movs r1, 0x1
- movs r2, 0
- bl sub_8022BEC
- strb r4, [r5, 0xC]
- b _0802455E
- .pool
-_08024558:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
-_0802455E:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8024508
-
- thumb_func_start sub_8024568
-sub_8024568: @ 8024568
- push {lr}
- movs r0, 0
- bl sub_8020C0C
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8024568
-
- thumb_func_start sub_8024578
-sub_8024578: @ 8024578
- push {r4-r6,lr}
- adds r4, r0, 0
- movs r5, 0
- movs r0, 0x33
- bl IncrementGameStat
- strb r5, [r4, 0xD]
- movs r1, 0
- strh r5, [r4, 0x10]
- movs r0, 0x2
- strh r0, [r4, 0x12]
- strh r5, [r4, 0x14]
- str r5, [r4, 0x1C]
- strh r5, [r4, 0x18]
- strh r5, [r4, 0x1A]
- str r5, [r4, 0x20]
- adds r0, r4, 0
- adds r0, 0x24
- strb r1, [r0]
- adds r1, r4, 0
- adds r1, 0x25
- movs r0, 0
- strb r0, [r1]
- strh r5, [r4, 0x26]
- strh r5, [r4, 0x28]
- strh r5, [r4, 0x2E]
- ldr r0, =0x0000ffff
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x30]
- strh r5, [r4, 0x34]
- movs r6, 0
- movs r3, 0
-_080245B8:
- lsls r0, r5, 5
- adds r2, r4, r0
- adds r1, r2, 0
- adds r1, 0xA4
- ldr r0, =0x0000ffff
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0xA6
- strh r3, [r0]
- adds r0, 0x2
- strh r3, [r0]
- adds r1, 0x6
- movs r0, 0x1
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0xAC
- strh r3, [r0]
- adds r0, 0x2
- strh r3, [r0]
- adds r0, 0x2
- strh r3, [r0]
- adds r0, 0x2
- strh r3, [r0]
- adds r0, 0x2
- strb r6, [r0]
- adds r0, 0x1
- strb r6, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _080245B8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8024578
-
- thumb_func_start sub_8024604
-sub_8024604: @ 8024604
- push {r4-r6,lr}
- sub sp, 0x8
- str r2, [sp, 0x4]
- ldr r5, [sp, 0x18]
- ldr r6, [sp, 0x1C]
- ldr r4, [sp, 0x20]
- mov r2, sp
- strh r4, [r2]
- add r4, sp, 0x4
- ldrb r2, [r4]
- strb r2, [r0]
- ldrb r2, [r4, 0x1]
- strb r2, [r0, 0x1]
- ldrb r2, [r4, 0x2]
- strb r2, [r0, 0x2]
- ldrb r2, [r4, 0x3]
- strb r2, [r0, 0x3]
- strb r3, [r0, 0x4]
- strb r5, [r0, 0x5]
- strb r6, [r0, 0x6]
- mov r2, sp
- ldrb r2, [r2]
- strb r2, [r0, 0x7]
- mov r2, sp
- ldrb r2, [r2, 0x1]
- strb r2, [r0, 0x8]
- strb r1, [r0, 0x9]
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8024604
-
- thumb_func_start sub_8024644
-sub_8024644: @ 8024644
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, [sp, 0x10]
- mov r4, sp
- strh r3, [r4]
- strb r1, [r0]
- strb r2, [r0, 0x1]
- mov r1, sp
- ldrb r1, [r1]
- strb r1, [r0, 0x2]
- mov r1, sp
- ldrb r1, [r1, 0x1]
- strb r1, [r0, 0x3]
- strb r5, [r0, 0x4]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8024644
-
- .align 2, 0 @ don't pad with nop
diff --git a/asm/macros/event.inc b/asm/macros/event.inc
index 2260dc4a3..562796c4b 100644
--- a/asm/macros/event.inc
+++ b/asm/macros/event.inc
@@ -1101,16 +1101,16 @@
.2byte \index
.endm
- @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white.
- .macro fadescreen effect:req
+ @ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK)
+ .macro fadescreen mode:req
.byte 0x97
- .byte \effect
+ .byte \mode
.endm
- @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white. Other modes may exist.
- .macro fadescreenspeed effect:req, speed:req
+ @ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK)
+ .macro fadescreenspeed mode:req, speed:req
.byte 0x98
- .byte \effect
+ .byte \mode
.byte \speed
.endm
@@ -1517,9 +1517,9 @@
.4byte \pointer
.endm
- .macro fadescreenswapbuffers byte:req
+ .macro fadescreenswapbuffers mode:req
.byte 0xdc
- .byte \byte
+ .byte \mode
.endm
.macro buffertrainerclassname out:req, class:req
diff --git a/data/event_scripts.s b/data/event_scripts.s
index 9b14bf6bc..2b9d15848 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -24,6 +24,7 @@
#include "constants/field_poison.h"
#include "constants/field_specials.h"
#include "constants/field_tasks.h"
+#include "constants/field_weather.h"
#include "constants/flags.h"
#include "constants/frontier_util.h"
#include "constants/game_stat.h"
@@ -720,9 +721,9 @@ Common_EventScript_ShowPokemonCenterSign:: @ 8271E73
end
Common_ShowEasyChatScreen:: @ 8271E7C
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ShowEasyChatScreen
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
return
Common_EventScript_ReadyPetalburgGymForBattle:: @ 8271E84
@@ -773,17 +774,17 @@ Common_EventScript_PlayGymBadgeFanfare:: @ 827207E
return
Common_EventScript_OutOfCenterPartyHeal:: @ 8272083
- fadescreen 1
+ fadescreen FADE_TO_BLACK
playfanfare MUS_ME_ASA
waitfanfare
special HealPlayerParty
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
return
EventScript_RegionMap:: @ 827208F
lockall
msgbox Common_Text_LookCloserAtMap, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special FieldShowRegionMap
waitstate
releaseall
@@ -868,7 +869,7 @@ Common_EventScript_FerryDepartIsland:: @ 8272250
.include "data/scripts/kecleon.inc"
Common_EventScript_NameReceivedPartyMon:: @ 82723DD
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChangePokemonNickname
waitstate
return
@@ -1045,16 +1046,16 @@ Common_EventScript_DirectCornerAttendant:: @ 8273767
end
Common_EventScript_RemoveStaticPokemon:: @ 827376D
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
removeobject VAR_LAST_TALKED
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
release
end
Common_EventScript_LegendaryFlewAway:: @ 8273776
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
removeobject VAR_LAST_TALKED
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
bufferspeciesname 0, VAR_0x8004
msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT
release
diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
index 479e1acd9..45ad72257 100644
--- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
@@ -240,7 +240,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_PauseChallenge:: @ 825789A
arena_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
index dcf50b963..472a4a2a2 100644
--- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
@@ -133,7 +133,7 @@ BattleFrontier_BattleArenaLobby_EventScript_TryEnterChallenge:: @ 8255E47
goto_if_eq BattleFrontier_BattleArenaLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleArenaLobby_Text_SelectThreeMons, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
index 34f99e5cf..7b5fcd9b4 100644
--- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
@@ -166,7 +166,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249ABF:: @ 8249ABF
goto_if_eq BattleFrontier_BattleDomeLobby_EventScript_249C15
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleDomeLobby_Text_24A26E, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
@@ -367,7 +367,7 @@ BattleFrontier_BattleDomeLobby_EventScript_249D84:: @ 8249D84
call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DDB
compare VAR_RESULT, 3
call_if_eq BattleFrontier_BattleDomeLobby_EventScript_249DE4
- fadescreen 1
+ fadescreen FADE_TO_BLACK
dome_showresultstree
waitstate
end
@@ -540,11 +540,12 @@ BattleFrontier_BattleDomeLobby_Text_24A51D: @ 824A51D
.string "Here is your prize for your Battle\n"
.string "Tournament victory.$"
-VerdanturfTown_BattleTentLobby_Text_24A554: @ 824A554
+BattleFrontier_BattleDomeLobby_Text_ReceivedPrize: @ 824A554
.string "{PLAYER} received the prize\n"
.string "{STR_VAR_1}.$"
-VerdanturfTown_BattleTentLobby_Text_24A56E: @ 824A56E
+@ Unused
+BattleFrontier_BattleDomeLobby_Text_BagFullMakeRoom: @ 824A56E
.string "Oh, your BAG appears to be full.\p"
.string "Please make room in your BAG, then come\n"
.string "see me.$"
diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
index b8614fa3f..ca44f7b78 100644
--- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
@@ -91,20 +91,20 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3BB:: @ 824B3BB
dome_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3DD:: @ 824B3DD
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_24B9B5, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
dome_showopponentinfo
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
BattleFrontier_BattleDomePreBattleRoom_EventScript_24B3F5:: @ 824B3F5
call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B40A
- fadescreen 1
+ fadescreen FADE_TO_BLACK
dome_showtourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
@@ -138,7 +138,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B46D:: @ 824B46D
message BattleFrontier_BattleDomePreBattleRoom_Text_24B70C
waitmessage
waitbuttonpress
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, 2 @ 2 of the 3 party mons are selected for battle
@@ -227,7 +227,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_24B5C7:: @ 824B5C7
waitfanfare
special HealPlayerParty
call BattleFrontier_BattleDomePreBattleRoom_EventScript_24B600
- fadescreen 1
+ fadescreen FADE_TO_BLACK
dome_showstatictourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_24B24F
diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
index 701ea9a86..dd5440299 100644
--- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
@@ -39,7 +39,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom:: @ 8259AF9
call BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentType
call BattleFrontier_BattleFactoryPreBattleRoom_EventScript_CommentOnOpponentStyle
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
factory_setswapped
factory_rentmons
waitstate
@@ -163,7 +163,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapMon:: @ 8259D98
case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SwapMons:: @ 8259DF2
- fadescreen 1
+ fadescreen FADE_TO_BLACK
factory_swapmons
waitstate
compare VAR_RESULT, 1
@@ -208,7 +208,7 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_PauseChallenge:: @ 8259E47
factory_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
index b79af5202..c7d4893ff 100644
--- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
@@ -168,7 +168,7 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_PauseChallenge:: @ 824FB3F
palace_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
index b0e701cf4..d7acb52aa 100644
--- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
@@ -155,7 +155,7 @@ BattleFrontier_BattlePalaceLobby_EventScript_TryEnterChallenge:: @ 824D9E6
goto_if_eq BattleFrontier_BattlePalaceLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattlePalaceLobby_Text_NowSelectThreeMons, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
index 5079b9e31..d2cf3fe32 100644
--- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
@@ -118,7 +118,7 @@ BattleFrontier_BattlePikeLobby_EventScript_TryEnterChallenge:: @ 825B8BB
goto_if_eq BattleFrontier_BattlePikeLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattlePikeLobby_Text_PleaseChooseThreeMons, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
index 294123f40..a9da7a092 100644
--- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
@@ -125,7 +125,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_PauseChallenge:: @ 825C9FD
pike_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
index f98cddd87..c23f62d78 100644
--- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
@@ -131,7 +131,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_TryEnterChallenge:: @ 8250904
goto_if_eq BattleFrontier_BattlePyramidLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattlePyramidLobby_Text_SelectThreeMons, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
index c778627de..48e1496e1 100644
--- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
@@ -146,7 +146,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_241E22:: @ 8241E22
tower_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc
index 5bb0831af..df0145990 100644
--- a/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerBattleRoom2/scripts.inc
@@ -219,7 +219,7 @@ BattleFrontier_BattleTowerBattleRoom2_EventScript_2492DB:: @ 82492DB
tower_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
index d9fe11bc5..ef9c60a66 100644
--- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
@@ -216,7 +216,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23E984:: @ 823E984
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleTowerLobby_Text_2407A6, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
@@ -283,7 +283,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EAED:: @ 823EAED
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleTowerLobby_Text_240A50, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_DOUBLES_PARTY_SIZE
@@ -351,7 +351,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EC59:: @ 823EC59
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleTowerLobby_Text_240DDB, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE
@@ -418,7 +418,7 @@ BattleFrontier_BattleTowerLobby_EventScript_23EDC2:: @ 823EDC2
goto_if_eq BattleFrontier_BattleTowerLobby_EventScript_23F02B
frontier_set FRONTIER_DATA_LVL_MODE, VAR_RESULT
msgbox BattleFrontier_BattleTowerLobby_Text_24115E, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, FRONTIER_MULTI_PARTY_SIZE
@@ -1003,11 +1003,12 @@ BattleFrontier_BattleTowerLobby_Text_23F641: @ 823F641
.string "you have earned this fabulous prize!\p"
.string "$"
-SlateportCity_BattleTentLobby_Text_23F68C: @ 823F68C
+BattleFrontier_BattleTowerLobby_Text_ReceivedPrize: @ 823F68C
.string "{PLAYER} received the prize\n"
.string "{STR_VAR_1}.$"
-SlateportCity_BattleTentLobby_Text_23F6A6: @ 823F6A6
+@ Unused
+BattleFrontier_BattleTowerLobby_Text_BagFullMakeRoom: @ 823F6A6
.string "Oh, your BAG appears to be full.\p"
.string "Please make room in your BAG, then come\n"
.string "see me.$"
diff --git a/data/maps/BattleFrontier_Lounge7/scripts.inc b/data/maps/BattleFrontier_Lounge7/scripts.inc
index 97e41cd96..3dd8fc98c 100644
--- a/data/maps/BattleFrontier_Lounge7/scripts.inc
+++ b/data/maps/BattleFrontier_Lounge7/scripts.inc
@@ -264,7 +264,7 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection:: @ 826564F
BattleFrontier_Lounge7_EventScript_TeachTutorMove:: @ 8265696
msgbox BattleFrontier_Lounge7_Text_TeachMoveToWhichMon, MSGBOX_DEFAULT
special GetBattleFrontierTutorMoveIndex
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special CloseBattlePointsWindow
special CloseBattleFrontierTutorWindow
special ChooseMonForMoveTutor
diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc
index 378819f43..552f3b095 100644
--- a/data/maps/CaveOfOrigin_B1F/scripts.inc
+++ b/data/maps/CaveOfOrigin_B1F/scripts.inc
@@ -50,12 +50,12 @@ CaveOfOrigin_B1F_EventScript_AtSkyPillar:: @ 823584D
msgbox CaveOfOrigin_B1F_Text_WellHeadToSkyPillar, MSGBOX_DEFAULT
closemessage
playse SE_KAIDAN
- fadescreenspeed 1, 4
+ fadescreenspeed FADE_TO_BLACK, 4
setflag FLAG_WALLACE_GOES_TO_SKY_PILLAR
setvar VAR_SOOTOPOLIS_CITY_STATE, 3
removeobject 1
clearflag FLAG_HIDE_SKY_PILLAR_WALLACE
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
release
end
diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc
index e7acaa868..b377271ad 100644
--- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc
+++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc
@@ -52,7 +52,7 @@ EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame:: @ 8229850
EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9
setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F
- fadescreenspeed 1, 24
+ fadescreenspeed FADE_TO_BLACK, 24
special GameClear
waitstate
releaseall
@@ -60,7 +60,7 @@ EverGrandeCity_HallOfFame_EventScript_GameClearMale:: @ 82298E9
EverGrandeCity_HallOfFame_EventScript_GameClearFemale:: @ 82298F5
setrespawn HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F
- fadescreenspeed 1, 24
+ fadescreenspeed FADE_TO_BLACK, 24
special GameClear
waitstate
releaseall
diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
index f7410a31c..439b37f8c 100644
--- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
@@ -1,50 +1,53 @@
FallarborTown_BattleTentBattleRoom_MapScripts:: @ 8200899
map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_BattleTentBattleRoom_OnTransition
- map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_MapScript2_2008DD
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_MapScript2_200BB0
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_OnWarp
.byte 0
+ @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
+ @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1
+ @ The opponent is represented by object event 3, which has the gfx id VAR_OBJ_GFX_ID_0
+
FallarborTown_BattleTentBattleRoom_OnTransition: @ 82008A9
- call FallarborTown_BattleTentBattleRoom_EventScript_2008AF
+ call FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
-FallarborTown_BattleTentBattleRoom_EventScript_2008AF:: @ 82008AF
+FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 82008AF
checkplayergender
compare VAR_RESULT, MALE
- goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2008C7
+ goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale
compare VAR_RESULT, FEMALE
- goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2008D2
+ goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale
return
-FallarborTown_BattleTentBattleRoom_EventScript_2008C7:: @ 82008C7
+FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 82008C7
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
return
-FallarborTown_BattleTentBattleRoom_EventScript_2008D2:: @ 82008D2
+FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 82008D2
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
return
-FallarborTown_BattleTentBattleRoom_MapScript2_2008DD: @ 82008DD
- map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_2008E7
+FallarborTown_BattleTentBattleRoom_OnFrame: @ 82008DD
+ map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom
.2byte 0
-FallarborTown_BattleTentBattleRoom_EventScript_2008E7:: @ 82008E7
+FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82008E7
lockall
showobjectat 1, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
- applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B8D
+ applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 0
- goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_200B73
-
-FallarborTown_BattleTentBattleRoom_EventScript_20090F:: @ 820090F
+ goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge
+FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820090F
tower_setopponent
addobject 3
- applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_200B96
+ applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_W187
waitse
waitmovement 0
@@ -54,40 +57,38 @@ FallarborTown_BattleTentBattleRoom_EventScript_20090F:: @ 820090F
waitmessage
call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle
switch VAR_RESULT
- case 1, FallarborTown_BattleTentBattleRoom_EventScript_20099C
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3
+ case 1, FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_W173
waitse
waitmovement 0
fallarbortent_getopponentname
msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT
-
-FallarborTown_BattleTentBattleRoom_EventScript_20097E:: @ 820097E
+FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 820097E
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
special LoadPlayerParty
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
-FallarborTown_BattleTentBattleRoom_EventScript_20099C:: @ 820099C
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA3
+FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 820099C
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_BAN
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer, MSGBOX_DEFAULT
closemessage
-
-FallarborTown_BattleTentBattleRoom_EventScript_2009B3:: @ 82009B3
+FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: @ 82009B3
frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
- case 3, FallarborTown_BattleTentBattleRoom_EventScript_200AF3
- applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_200B9E
+ case 3, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon
+ applymovement 3, FallarborTown_BattleTentBattleRoom_Movement_OpponentExit
waitmovement 0
removeobject 3
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA6
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B94
+ applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored, MSGBOX_DEFAULT
special LoadPlayerParty
@@ -96,99 +97,102 @@ FallarborTown_BattleTentBattleRoom_EventScript_2009B3:: @ 82009B3
playfanfare MUS_ME_ASA
waitfanfare
special HealPlayerParty
-
-FallarborTown_BattleTentBattleRoom_EventScript_200A2A:: @ 8200A2A
+FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 1
- call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_200B43
+ call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent
compare VAR_RESULT, 2
- call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_200B4A
+ call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent
multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1
switch VAR_RESULT
- case 0, FallarborTown_BattleTentBattleRoom_EventScript_200AD8
- case 1, FallarborTown_BattleTentBattleRoom_EventScript_200A78
- case 2, FallarborTown_BattleTentBattleRoom_EventScript_200AA6
+ case 0, FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge
+ case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge
+ case 2, FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge
-FallarborTown_BattleTentBattleRoom_EventScript_200A78:: @ 8200A78
+FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 8200A78
msgbox BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown, MSGBOX_YESNO
switch VAR_RESULT
- case NO, FallarborTown_BattleTentBattleRoom_EventScript_200A2A
- case YES, FallarborTown_BattleTentBattleRoom_EventScript_200B51
- case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_200A2A
+ case NO, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
+ case YES, FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge
+ case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
-FallarborTown_BattleTentBattleRoom_EventScript_200AA6:: @ 8200AA6
+FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6
message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, 0
switch VAR_RESULT
- case 1, FallarborTown_BattleTentBattleRoom_EventScript_200A2A
- case 0, FallarborTown_BattleTentBattleRoom_EventScript_20097E
- case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_200A2A
+ case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
+ case 0, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost
+ case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
-FallarborTown_BattleTentBattleRoom_EventScript_200AD8:: @ 8200AD8
+FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 8200AD8
closemessage
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BAB
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
- applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B92
+ applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle
waitmovement 0
- goto FallarborTown_BattleTentBattleRoom_EventScript_20090F
+ goto FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter
waitstate
-FallarborTown_BattleTentBattleRoom_EventScript_200AF3:: @ 8200AF3
+FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8200AF3
delay 60
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
special LoadPlayerParty
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
+
+@ Unreachable code block? The flow into the next block also doesnt make sense
arena_get ARENA_DATA_WIN_STREAK
compare VAR_RESULT, MAX_STREAK
- goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_2009B3
+ goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum
addvar VAR_RESULT, 1
arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT
-FallarborTown_BattleTentBattleRoom_EventScript_200B43:: @ 8200B43
+@ See above
+
+FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8200B43
message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent
waitmessage
return
-FallarborTown_BattleTentBattleRoom_EventScript_200B4A:: @ 8200B4A
+FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8200B4A
message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent
waitmessage
return
-FallarborTown_BattleTentBattleRoom_EventScript_200B51:: @ 8200B51
+FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 8200B51
message BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait
waitmessage
fallarbortent_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
-FallarborTown_BattleTentBattleRoom_EventScript_200B73:: @ 8200B73
- applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_200BA6
+FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: @ 8200B73
+ applymovement 2, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_200B94
+ applymovement 1, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
- goto FallarborTown_BattleTentBattleRoom_EventScript_200A2A
+ goto FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
end
-FallarborTown_BattleTentBattleRoom_Movement_200B8D: @ 8200B8D
+FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8200B8D
walk_up
walk_up
walk_up
walk_in_place_fastest_right
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200B92: @ 8200B92
+FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: @ 8200B92
walk_in_place_fastest_right
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200B94: @ 8200B94
+FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: @ 8200B94
walk_in_place_fastest_left
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200B96: @ 8200B96
+FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 8200B96
walk_down
walk_down
walk_down
@@ -196,41 +200,42 @@ FallarborTown_BattleTentBattleRoom_Movement_200B96: @ 8200B96
walk_in_place_fastest_left
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200B9C: @ 8200B9C
+@ Unused
+FallarborTown_BattleTentBattleRoom_Movement_OpponentStepForward: @ 8200B9C
walk_left
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200B9E: @ 8200B9E
+FallarborTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8200B9E
walk_up
walk_up
walk_up
walk_up
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200BA3: @ 8200BA3
+FallarborTown_BattleTentBattleRoom_Movement_AttendantJump: @ 8200BA3
disable_jump_landing_ground_effect
jump_in_place_down
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200BA6: @ 8200BA6
+FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: @ 8200BA6
walk_down
walk_down
walk_down
walk_in_place_fastest_right
step_end
-FallarborTown_BattleTentBattleRoom_Movement_200BAB: @ 8200BAB
+FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: @ 8200BAB
walk_up
walk_up
walk_up
walk_in_place_fastest_down
step_end
-FallarborTown_BattleTentBattleRoom_MapScript2_200BB0: @ 8200BB0
- map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_200BBA
+FallarborTown_BattleTentBattleRoom_OnWarp: @ 8200BB0
+ map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects
.2byte 0
-FallarborTown_BattleTentBattleRoom_EventScript_200BBA:: @ 8200BBA
+FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 8200BBA
hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
hideobjectat 1, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
removeobject 3
diff --git a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
index 82c9c97a1..53f5a2b42 100644
--- a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
@@ -1,21 +1,21 @@
FallarborTown_BattleTentCorridor_MapScripts:: @ 82006A7
- map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_MapScript2_2006AD
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_OnFrame
.byte 0
-FallarborTown_BattleTentCorridor_MapScript2_2006AD: @ 82006AD
- map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentCorridor_EventScript_2006B7
+FallarborTown_BattleTentCorridor_OnFrame: @ 82006AD
+ map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentCorridor_EventScript_EnterCorridor
.2byte 0
-FallarborTown_BattleTentCorridor_EventScript_2006B7:: @ 82006B7
+FallarborTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 82006B7
lockall
setvar VAR_TEMP_0, 1
- applymovement 1, FallarborTown_BattleTentCorridor_Movement_2006FB
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_2006FB
+ applymovement 1, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement 1, FallarborTown_BattleTentCorridor_Movement_200701
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_200700
+ applymovement 1, FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor
+ applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor
waitmovement 0
closedoor 2, 1
waitdooranim
@@ -25,40 +25,44 @@ FallarborTown_BattleTentCorridor_EventScript_2006B7:: @ 82006B7
releaseall
end
-FallarborTown_BattleTentCorridor_Movement_2006FB: @ 82006FB
+FallarborTown_BattleTentCorridor_Movement_WalkToDoor: @ 82006FB
walk_up
walk_up
walk_up
walk_up
step_end
-FallarborTown_BattleTentCorridor_Movement_200700: @ 8200700
+FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 8200700
walk_up
-
-FallarborTown_BattleTentCorridor_Movement_200701: @ 8200701
+FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 8200701
walk_up
set_invisible
step_end
-FallarborTown_BattleTentCorridor_Text_200704: @ 8200704
+@ Leftover text from when this was a Contest Hall in R/S
+@ Unused
+FallarborTown_ContestHall_Text_DoAllRightInPreliminary: @ 8200704
.string "We do all right in the preliminary round,\n"
.string "but we can never win the appeals…\p"
.string "Maybe it means I have to watch what\n"
.string "other contestants are doing…$"
-FallarborTown_BattleTentCorridor_Text_200791: @ 8200791
+@ Unused
+FallarborTown_ContestHall_Text_MonAllTheseRibbons: @ 8200791
.string "See!\n"
.string "My POKéMON won all these RIBBONS!\p"
.string "Have your POKéMON earned any RIBBONS?\n"
.string "You can check them on your POKéNAV.$"
-FallarborTown_BattleTentCorridor_Text_200802: @ 8200802
+@ Unused
+FallarborTown_ContestHall_Text_CantWinEverywhere: @ 8200802
.string "I can't beat GYM LEADERS…\p"
.string "I can't win any CONTESTS…\p"
.string "I've been here, there, and everywhere,\n"
.string "and it's all for naught…$"
-FallarborTown_BattleTentCorridor_Text_200876: @ 8200876
+@ Unused
+FallarborTown_ContestHall_Text_SuperRankStage: @ 8200876
.string "POKéMON CONTESTS\n"
.string "SUPER RANK STAGE!$"
diff --git a/data/maps/FallarborTown_BattleTentLobby/map.json b/data/maps/FallarborTown_BattleTentLobby/map.json
index 2339a3732..d0a1855f8 100644
--- a/data/maps/FallarborTown_BattleTentLobby/map.json
+++ b/data/maps/FallarborTown_BattleTentLobby/map.json
@@ -24,7 +24,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "FallarborTown_BattleTentLobby_EventScript_200001",
+ "script": "FallarborTown_BattleTentLobby_EventScript_Attendant",
"flag": "0"
},
{
@@ -37,7 +37,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "FallarborTown_BattleTentLobby_EventScript_20020D",
+ "script": "FallarborTown_BattleTentLobby_EventScript_Hiker",
"flag": "0"
},
{
@@ -50,7 +50,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "FallarborTown_BattleTentLobby_EventScript_200216",
+ "script": "FallarborTown_BattleTentLobby_EventScript_LittleBoy",
"flag": "0"
},
{
@@ -63,7 +63,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "FallarborTown_BattleTentLobby_EventScript_20021F",
+ "script": "FallarborTown_BattleTentLobby_EventScript_Lass",
"flag": "0"
},
{
@@ -76,7 +76,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "FallarborTown_BattleTentLobby_EventScript_200228",
+ "script": "FallarborTown_BattleTentLobby_EventScript_Scott",
"flag": "FLAG_HIDE_FALLARBOR_TOWN_BATTLE_TENT_SCOTT"
}
],
@@ -104,7 +104,7 @@
"y": 5,
"elevation": 0,
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
- "script": "FallarborTown_BattleTentLobby_EventScript_20024F"
+ "script": "FallarborTown_BattleTentLobby_EventScript_RulesBoard"
}
]
}
diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
index 8021b2622..cfcffa9ca 100644
--- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
@@ -1,32 +1,32 @@
FallarborTown_BattleTentLobby_MapScripts:: @ 81FFE66
- map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentLobby_MapScript2_1FFE85
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentLobby_MapScript2_1FFE71
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentLobby_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentLobby_OnWarp
.byte 0
-FallarborTown_BattleTentLobby_MapScript2_1FFE71: @ 81FFE71
- map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentLobby_EventScript_1FFE7B
+FallarborTown_BattleTentLobby_OnWarp: @ 81FFE71
+ map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth
.2byte 0
-FallarborTown_BattleTentLobby_EventScript_1FFE7B:: @ 81FFE7B
+FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 81FFE7B
setvar VAR_TEMP_1, 1
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
-FallarborTown_BattleTentLobby_MapScript2_1FFE85: @ 81FFE85
- map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_1FFEAF
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_1FFEB8
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_1FFFCD
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_1FFEED
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_1FFF93
+FallarborTown_BattleTentLobby_OnFrame: @ 81FFE85
+ map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, FallarborTown_BattleTentLobby_EventScript_ResumeChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, FallarborTown_BattleTentLobby_EventScript_WonChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, FallarborTown_BattleTentLobby_EventScript_LostChallenge
.2byte 0
-FallarborTown_BattleTentLobby_EventScript_1FFEAF:: @ 81FFEAF
+FallarborTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 81FFEAF
frontier_getstatus
end
-FallarborTown_BattleTentLobby_EventScript_1FFEB8:: @ 81FFEB8
+FallarborTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 81FFEB8
lockall
- msgbox FallarborTown_BattleTentLobby_Text_2C4DED, MSGBOX_DEFAULT
+ msgbox FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255
@@ -34,10 +34,10 @@ FallarborTown_BattleTentLobby_EventScript_1FFEB8:: @ 81FFEB8
releaseall
end
-FallarborTown_BattleTentLobby_EventScript_1FFEED:: @ 81FFEED
+FallarborTown_BattleTentLobby_EventScript_WonChallenge:: @ 81FFEED
lockall
- msgbox FallarborTown_BattleTentLobby_Text_2C4EC3, MSGBOX_DEFAULT
- message FallarborTown_BattleTentLobby_Text_2C4EFF
+ msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT
+ message FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame
waitmessage
fallarbortent_setrandomprize
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
@@ -45,103 +45,102 @@ FallarborTown_BattleTentLobby_EventScript_1FFEED:: @ 81FFEED
playse SE_SAVE
waitse
-FallarborTown_BattleTentLobby_EventScript_1FFF27:: @ 81FFF27
- msgbox FallarborTown_BattleTentLobby_Text_2C4F22, MSGBOX_DEFAULT
+FallarborTown_BattleTentLobby_EventScript_GivePrize:: @ 81FFF27
+ msgbox FallarborTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT
fallarbortent_giveprize
switch VAR_RESULT
- case 0, FallarborTown_BattleTentLobby_EventScript_1FFF73
+ case FALSE, FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- message FallarborTown_BattleTentLobby_Text_2C4F69
+ message FallarborTown_BattleTentLobby_Text_ReceivedPrize
waitmessage
playfanfare MUS_FANFA4
waitfanfare
- msgbox FallarborTown_BattleTentLobby_Text_2C501F, MSGBOX_DEFAULT
+ msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-FallarborTown_BattleTentLobby_EventScript_1FFF73:: @ 81FFF73
- msgbox FallarborTown_BattleTentLobby_Text_2C4F83, MSGBOX_DEFAULT
+FallarborTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 81FFF73
+ msgbox FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize, MSGBOX_DEFAULT
waitmessage
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-FallarborTown_BattleTentLobby_EventScript_1FFF84:: @ 81FFF84
+FallarborTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 81FFF84
lockall
- msgbox FallarborTown_BattleTentLobby_Text_2C4EC3, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_1FFF27
+ msgbox FallarborTown_BattleTentLobby_Text_BeatThreeTrainers, MSGBOX_DEFAULT
+ goto FallarborTown_BattleTentLobby_EventScript_GivePrize
end
-FallarborTown_BattleTentLobby_EventScript_1FFF93:: @ 81FFF93
+FallarborTown_BattleTentLobby_EventScript_LostChallenge:: @ 81FFF93
lockall
- message FallarborTown_BattleTentLobby_Text_2C4FD7
+ message FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving
waitmessage
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
fallarbortent_save 0
playse SE_SAVE
waitse
- msgbox FallarborTown_BattleTentLobby_Text_2C501F, MSGBOX_DEFAULT
+ msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2, MSGBOX_DEFAULT
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-FallarborTown_BattleTentLobby_EventScript_1FFFCD:: @ 81FFFCD
+FallarborTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 81FFFCD
lockall
- message FallarborTown_BattleTentLobby_Text_2C504C
+ message FallarborTown_BattleTentLobby_Text_LookingForwardToArrival
waitmessage
fallarbortent_save CHALLENGE_STATUS_SAVING
playse SE_SAVE
waitse
frontier_set FRONTIER_DATA_PAUSED, FALSE
setvar VAR_TEMP_0, 255
- goto FallarborTown_BattleTentLobby_EventScript_20013C
+ goto FallarborTown_BattleTentLobby_EventScript_EnterChallenge
-FallarborTown_BattleTentLobby_EventScript_200001:: @ 8200001
+FallarborTown_BattleTentLobby_EventScript_Attendant:: @ 8200001
lock
faceplayer
fallarbortent_getprize
- compare VAR_RESULT, 0
- goto_if_ne FallarborTown_BattleTentLobby_EventScript_1FFF84
+ compare VAR_RESULT, ITEM_NONE
+ goto_if_ne FallarborTown_BattleTentLobby_EventScript_PrizeWaiting
special SavePlayerParty
- msgbox FallarborTown_BattleTentLobby_Text_2C47EB, MSGBOX_DEFAULT
-
-FallarborTown_BattleTentLobby_EventScript_200021:: @ 8200021
- message FallarborTown_BattleTentLobby_Text_2C4843
+ msgbox FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT
+FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8200021
+ message FallarborTown_BattleTentLobby_Text_TakeChallenge
waitmessage
multichoice 17, 6, MULTI_CHALLENGEINFO, 0
switch VAR_RESULT
- case 0, FallarborTown_BattleTentLobby_EventScript_20005D
- case 1, FallarborTown_BattleTentLobby_EventScript_200169
- case 2, FallarborTown_BattleTentLobby_EventScript_2001C5
- case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_2001C5
+ case 0, FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge
+ case 1, FallarborTown_BattleTentLobby_EventScript_ExplainChallenge
+ case 2, FallarborTown_BattleTentLobby_EventScript_CancelChallenge
+ case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_CancelChallenge
-FallarborTown_BattleTentLobby_EventScript_20005D:: @ 820005D
+FallarborTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 820005D
setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_ARENA
setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES
setvar VAR_RESULT, 2
frontier_checkineligible
compare VAR_0x8004, TRUE
- goto_if_eq FallarborTown_BattleTentLobby_EventScript_200176
+ goto_if_eq FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT
- msgbox FallarborTown_BattleTentLobby_Text_2C4BC8, MSGBOX_DEFAULT
- fadescreen 1
+ msgbox FallarborTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT
+ fadescreen FADE_TO_BLACK
setvar VAR_0x8004, 2
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
special ChoosePartyForBattleFrontier
waitstate
compare VAR_RESULT, 0
- goto_if_eq FallarborTown_BattleTentLobby_EventScript_2001C2
- msgbox FallarborTown_BattleTentLobby_Text_2C4B35, MSGBOX_YESNO
+ goto_if_eq FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
+ msgbox FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO
switch VAR_RESULT
- case NO, FallarborTown_BattleTentLobby_EventScript_2001C2
- case YES, FallarborTown_BattleTentLobby_EventScript_2000E2
- case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_2001C2
+ case NO, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
+ case YES, FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge
+ case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
-FallarborTown_BattleTentLobby_EventScript_2000E2:: @ 82000E2
+FallarborTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 82000E2
setvar VAR_TEMP_0, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
fallarbortent_init
@@ -153,170 +152,166 @@ FallarborTown_BattleTentLobby_EventScript_2000E2:: @ 82000E2
call Common_EventScript_SaveGame
setvar VAR_TEMP_0, 255
compare VAR_RESULT, 0
- goto_if_eq FallarborTown_BattleTentLobby_EventScript_2001AB
-
-FallarborTown_BattleTentLobby_EventScript_20013C:: @ 820013C
+ goto_if_eq FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed
+FallarborTown_BattleTentLobby_EventScript_EnterChallenge:: @ 820013C
special SavePlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
- msgbox FallarborTown_BattleTentLobby_Text_2C4DC3, MSGBOX_DEFAULT
+ msgbox FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent, MSGBOX_DEFAULT
closemessage
- call FallarborTown_BattleTentLobby_EventScript_2001CF
+ call FallarborTown_BattleTentLobby_EventScript_WalkToDoor
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7
setvar VAR_TEMP_0, 0
waitstate
end
-FallarborTown_BattleTentLobby_EventScript_200169:: @ 8200169
- msgbox FallarborTown_BattleTentLobby_Text_2C48AC, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_200021
+FallarborTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 8200169
+ msgbox FallarborTown_BattleTentLobby_Text_ExplainFallarborTent, MSGBOX_DEFAULT
+ goto FallarborTown_BattleTentLobby_EventScript_AskEnterChallenge
-FallarborTown_BattleTentLobby_EventScript_200176:: @ 8200176
+FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 8200176
switch VAR_RESULT
- case FRONTIER_LVL_50, FallarborTown_BattleTentLobby_EventScript_200191
- case FRONTIER_LVL_OPEN, FallarborTown_BattleTentLobby_EventScript_20019E
+ case FRONTIER_LVL_50, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50
+ case FRONTIER_LVL_OPEN, FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen
+FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8200191
+ msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT
+ goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge
-FallarborTown_BattleTentLobby_EventScript_200191:: @ 8200191
- msgbox FallarborTown_BattleTentLobby_Text_2C4BFA, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_2001CD
+FallarborTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 820019E
+ msgbox FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT
+ goto FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge
-FallarborTown_BattleTentLobby_EventScript_20019E:: @ 820019E
- msgbox FallarborTown_BattleTentLobby_Text_2C4CC0, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_2001CD
-
-FallarborTown_BattleTentLobby_EventScript_2001AB:: @ 82001AB
+FallarborTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 82001AB
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- goto FallarborTown_BattleTentLobby_EventScript_2001C5
+ goto FallarborTown_BattleTentLobby_EventScript_CancelChallenge
-FallarborTown_BattleTentLobby_EventScript_2001C2:: @ 82001C2
+FallarborTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 82001C2
special LoadPlayerParty
-
-FallarborTown_BattleTentLobby_EventScript_2001C5:: @ 82001C5
- msgbox FallarborTown_BattleTentLobby_Text_2C487F, MSGBOX_DEFAULT
-
-FallarborTown_BattleTentLobby_EventScript_2001CD:: @ 82001CD
+FallarborTown_BattleTentLobby_EventScript_CancelChallenge:: @ 82001C5
+ msgbox FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge, MSGBOX_DEFAULT
+FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 82001CD
release
end
-FallarborTown_BattleTentLobby_EventScript_2001CF:: @ 82001CF
- applymovement 1, FallarborTown_BattleTentLobby_Movement_2001FE
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_200205
+FallarborTown_BattleTentLobby_EventScript_WalkToDoor:: @ 82001CF
+ applymovement 1, FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor
+ applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement 1, FallarborTown_BattleTentLobby_Movement_200202
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_200209
+ applymovement 1, FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
return
-FallarborTown_BattleTentLobby_Movement_2001FE: @ 82001FE
+FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82001FE
walk_up
walk_up
walk_up
step_end
-FallarborTown_BattleTentLobby_Movement_200202: @ 8200202
+FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8200202
walk_up
set_invisible
step_end
-FallarborTown_BattleTentLobby_Movement_200205: @ 8200205
+FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor: @ 8200205
walk_up
walk_up
walk_up
step_end
-FallarborTown_BattleTentLobby_Movement_200209: @ 8200209
+FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8200209
walk_up
walk_up
set_invisible
step_end
-FallarborTown_BattleTentLobby_EventScript_20020D:: @ 820020D
- msgbox FallarborTown_BattleTentLobby_Text_20045A, MSGBOX_NPC
+FallarborTown_BattleTentLobby_EventScript_Hiker:: @ 820020D
+ msgbox FallarborTown_BattleTentLobby_Text_CameToCampOut, MSGBOX_NPC
end
-FallarborTown_BattleTentLobby_EventScript_200216:: @ 8200216
- msgbox FallarborTown_BattleTentLobby_Text_200304, MSGBOX_NPC
+FallarborTown_BattleTentLobby_EventScript_LittleBoy:: @ 8200216
+ msgbox FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid, MSGBOX_NPC
end
-FallarborTown_BattleTentLobby_EventScript_20021F:: @ 820021F
- msgbox FallarborTown_BattleTentLobby_Text_200382, MSGBOX_NPC
+FallarborTown_BattleTentLobby_EventScript_Lass:: @ 820021F
+ msgbox FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite, MSGBOX_NPC
end
-FallarborTown_BattleTentLobby_EventScript_200228:: @ 8200228
+FallarborTown_BattleTentLobby_EventScript_Scott:: @ 8200228
lock
faceplayer
- goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_200245
- msgbox FallarborTown_BattleTentLobby_Text_200501, MSGBOX_DEFAULT
+ goto_if_set FLAG_MET_SCOTT_IN_FALLARBOR, FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo
+ msgbox FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone, MSGBOX_DEFAULT
addvar VAR_SCOTT_STATE, 1
setflag FLAG_MET_SCOTT_IN_FALLARBOR
release
end
-FallarborTown_BattleTentLobby_EventScript_200245:: @ 8200245
- msgbox FallarborTown_BattleTentLobby_Text_200653, MSGBOX_DEFAULT
+FallarborTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8200245
+ msgbox FallarborTown_BattleTentLobby_Text_ScottMakeChallenge, MSGBOX_DEFAULT
release
end
-FallarborTown_BattleTentLobby_EventScript_20024F:: @ 820024F
+FallarborTown_BattleTentLobby_EventScript_RulesBoard:: @ 820024F
lockall
msgbox BattleFrontier_BattleArenaLobby_Text_RulesAreListed, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_20025E:: @ 820025E
+FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 820025E
message BattleFrontier_BattleArenaLobby_Text_ReadWhichHeading
waitmessage
multichoice 17, 0, MULTI_FALLARBOR_TENT_RULES, 0
switch VAR_RESULT
- case 0, FallarborTown_BattleTentLobby_EventScript_2002BC
- case 1, FallarborTown_BattleTentLobby_EventScript_2002CA
- case 2, FallarborTown_BattleTentLobby_EventScript_2002D8
- case 3, FallarborTown_BattleTentLobby_EventScript_2002E6
- case 4, FallarborTown_BattleTentLobby_EventScript_2002F4
- case 5, FallarborTown_BattleTentLobby_EventScript_200302
- case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_200302
+ case 0, FallarborTown_BattleTentLobby_EventScript_RulesLevel
+ case 1, FallarborTown_BattleTentLobby_EventScript_RulesBattle
+ case 2, FallarborTown_BattleTentLobby_EventScript_RulesMind
+ case 3, FallarborTown_BattleTentLobby_EventScript_RulesSkill
+ case 4, FallarborTown_BattleTentLobby_EventScript_RulesBody
+ case 5, FallarborTown_BattleTentLobby_EventScript_ExitRules
+ case MULTI_B_PRESSED, FallarborTown_BattleTentLobby_EventScript_ExitRules
end
-FallarborTown_BattleTentLobby_EventScript_2002BC:: @ 82002BC
- msgbox FallarborTown_BattleTentLobby_Text_2C67CD, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+FallarborTown_BattleTentLobby_EventScript_RulesLevel:: @ 82002BC
+ msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_2002CA:: @ 82002CA
+FallarborTown_BattleTentLobby_EventScript_RulesBattle:: @ 82002CA
msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBattleRules, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_2002D8:: @ 82002D8
+FallarborTown_BattleTentLobby_EventScript_RulesMind:: @ 82002D8
msgbox BattleFrontier_BattleArenaLobby_Text_ExplainMindRules, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_2002E6:: @ 82002E6
+FallarborTown_BattleTentLobby_EventScript_RulesSkill:: @ 82002E6
msgbox BattleFrontier_BattleArenaLobby_Text_ExplainSkillRules, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_2002F4:: @ 82002F4
+FallarborTown_BattleTentLobby_EventScript_RulesBody:: @ 82002F4
msgbox BattleFrontier_BattleArenaLobby_Text_ExplainBodyRules, MSGBOX_DEFAULT
- goto FallarborTown_BattleTentLobby_EventScript_20025E
+ goto FallarborTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-FallarborTown_BattleTentLobby_EventScript_200302:: @ 8200302
+FallarborTown_BattleTentLobby_EventScript_ExitRules:: @ 8200302
releaseall
end
-FallarborTown_BattleTentLobby_Text_200304: @ 8200304
+FallarborTown_BattleTentLobby_Text_MakeThinkImJustKid: @ 8200304
.string "Fufufufufu.\p"
.string "I'm going to make everyone think\n"
.string "I'm just a kid and let them play down.\p"
.string "Then, I'll shock them and grab\n"
.string "the title!$"
-FallarborTown_BattleTentLobby_Text_200382: @ 8200382
+FallarborTown_BattleTentLobby_Text_FallarborTentMyFavorite: @ 8200382
.string "You know how BATTLE TENTS offer\n"
.string "different events in different towns?\p"
.string "My favorite is definitely the BATTLE\n"
@@ -325,7 +320,7 @@ FallarborTown_BattleTentLobby_Text_200382: @ 8200382
.string "try to win with all their faith in\l"
.string "their POKéMON.$"
-FallarborTown_BattleTentLobby_Text_20045A: @ 820045A
+FallarborTown_BattleTentLobby_Text_CameToCampOut: @ 820045A
.string "I heard something about some tent,\n"
.string "so I came to camp out.\p"
.string "I didn't know that tents these days\n"
@@ -333,7 +328,7 @@ FallarborTown_BattleTentLobby_Text_20045A: @ 820045A
.string "Since I'm here, I may as well try\n"
.string "my hand at battling!$"
-FallarborTown_BattleTentLobby_Text_200501: @ 8200501
+FallarborTown_BattleTentLobby_Text_ScottLookingForSomeone: @ 8200501
.string "SCOTT: Hi, {PLAYER}{KUN}!\n"
.string "So you came out to this BATTLE TENT!\p"
.string "The people in these parts tend to be\n"
@@ -348,7 +343,7 @@ FallarborTown_BattleTentLobby_Text_200501: @ 8200501
.string "Whoops! Never mind!\n"
.string "Keep working at it!$"
-FallarborTown_BattleTentLobby_Text_200653: @ 8200653
+FallarborTown_BattleTentLobby_Text_ScottMakeChallenge: @ 8200653
.string "SCOTT: Instead of wasting your\n"
.string "time with the likes of me, why not\l"
.string "make a challenge?$"
diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc
index 20121d500..2cdb626bd 100644
--- a/data/maps/FarawayIsland_Interior/scripts.inc
+++ b/data/maps/FarawayIsland_Interior/scripts.inc
@@ -190,10 +190,10 @@ FarawayIsland_Interior_EventScript_MewHideLeft:: @ 8267ED0
FarawayIsland_Interior_EventScript_HideMewWhenGrassCut:: @ 8267EDB
lockall
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
setflag FLAG_HIDE_MEW
removeobject 1
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
msgbox FarawayIsland_Interior_Text_TheFeelingOfBeingWatchedFaded, MSGBOX_DEFAULT
closemessage
releaseall
diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc
index 9aa9e6790..d6214588f 100644
--- a/data/maps/LilycoveCity_ContestLobby/scripts.inc
+++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc
@@ -42,7 +42,7 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 0
lockall
msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO
@@ -216,7 +216,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 0
msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO
compare VAR_RESULT, YES
@@ -504,42 +504,42 @@ LilycoveCity_ContestLobby_EventScript_NinjaBoy:: @ 821A735
LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 1
releaseall
end
LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 2
releaseall
end
LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 3
releaseall
end
LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 4
releaseall
end
LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 5
releaseall
end
LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 6
releaseall
end
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
index 6d0c12c9c..68e7d61f3 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
@@ -182,35 +182,35 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: @ 821999C
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 9
releaseall
end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 10
releaseall
end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 11
releaseall
end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 12
releaseall
end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
- fadescreen 1
+ fadescreen FADE_TO_BLACK
showcontestwinner 13
releaseall
end
diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
index 7d9e0f239..2592ccd9c 100644
--- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
+++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
@@ -25,9 +25,9 @@ LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget:: @ 821EA3B
compare VAR_RESULT, 1
goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_MonOnlyKnowsOneMove
msgbox LilycoveCity_MoveDeletersHouse_Text_WhichMoveShouldBeForgotten, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special MoveDeleterChooseMoveToForget
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
compare VAR_0x8005, MAX_MON_MOVES
goto_if_eq LilycoveCity_MoveDeletersHouse_EventScript_ChooseMonAndMoveToForget
special BufferMoveDeleterNicknameAndMove
diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc
index 5a5e9ebf9..51fd5714a 100644
--- a/data/maps/MagmaHideout_4F/scripts.inc
+++ b/data/maps/MagmaHideout_4F/scripts.inc
@@ -62,14 +62,14 @@ MagmaHideout_4F_EventScript_Maxie:: @ 823A560
setvar VAR_SLATEPORT_CITY_STATE, 1
setflag FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT
setvar VAR_SLATEPORT_HARBOR_STATE, 1
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 6
removeobject 2
removeobject 3
removeobject 4
removeobject 5
setflag FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
releaseall
end
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
index 32471ab9e..3131aeed4 100644
--- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
@@ -248,7 +248,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle:: @ 822400C
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFastestDown
waitmovement 0
special SavePlayerParty
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
compare VAR_RESULT, 0
@@ -267,7 +267,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle:: @ 8224032
special LoadPlayerParty
switch VAR_RESULT
case 1, MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special SetCB2WhiteOut
waitstate
@@ -287,7 +287,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071
closemessage
setvar VAR_MOSSDEEP_CITY_STATE, 3
fadedefaultbgm
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_MOSSDEEP_SPACE_CENTER_STATE, 3
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA
@@ -304,10 +304,10 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071
setobjectxy 1, 6, 2
turnobject 1, DIR_NORTH
call MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
msgbox MossdeepCity_SpaceCenter_2F_Text_StevenThankYouComeSeeMeAtHome, MSGBOX_DEFAULT
closemessage
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setflag FLAG_DEFEATED_MAGMA_SPACE_CENTER
setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN
removeobject 4
@@ -319,7 +319,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha:: @ 8224071
setobjectxyperm 3, 5, 6
setobjectmovementtype 3, MOVEMENT_TYPE_WANDER_AROUND
addobject 3
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
end
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer:: @ 8224131
diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc
index cafadf17c..359b8376f 100644
--- a/data/maps/MtChimney/scripts.inc
+++ b/data/maps/MtChimney/scripts.inc
@@ -47,13 +47,13 @@ MtChimney_EventScript_Maxie:: @ 822EE0B
msgbox MtChimney_Text_MaxieYouHaventSeenLastOfMagma, MSGBOX_DEFAULT
closemessage
delay 30
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 2
removeobject 29
removeobject 3
removeobject 22
setflag FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
setobjectxyperm 1, 10, 12
addobject 1
compare VAR_FACING, DIR_EAST
diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc
index 18ebc4ff7..8bba1984b 100644
--- a/data/maps/MtPyre_Summit/scripts.inc
+++ b/data/maps/MtPyre_Summit/scripts.inc
@@ -45,7 +45,7 @@ MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C
call_if_eq MtPyre_Summit_EventScript_ArchieFacePlayer2
msgbox MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo, MSGBOX_DEFAULT
closemessage
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 2
removeobject 4
removeobject 5
@@ -54,7 +54,7 @@ MtPyre_Summit_EventScript_TeamAquaExits:: @ 823203C
setflag FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE
setflag FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA
fadedefaultbgm
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
delay 20
setvar VAR_MT_PYRE_STATE, 1
compare VAR_0x8008, 0
diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc
index 3e84dfa85..e1805b73d 100644
--- a/data/maps/Route101/scripts.inc
+++ b/data/maps/Route101/scripts.inc
@@ -220,7 +220,7 @@ Route101_EventScript_BirchsBag:: @ 81EBE16
faceplayer
setflag FLAG_SYS_POKEMON_GET
setflag FLAG_RESCUED_BIRCH
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 4
setobjectxy OBJ_EVENT_ID_PLAYER, 6, 13
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestLeft
diff --git a/data/maps/Route113_GlassWorkshop/scripts.inc b/data/maps/Route113_GlassWorkshop/scripts.inc
index 30d453abd..57c5f9f57 100644
--- a/data/maps/Route113_GlassWorkshop/scripts.inc
+++ b/data/maps/Route113_GlassWorkshop/scripts.inc
@@ -206,10 +206,10 @@ Route113_GlassWorkshop_EventScript_ChooseDifferentItem:: @ 826F003
Route113_GlassWorkshop_EventScript_MakeGlassItem:: @ 826F00F
msgbox Route113_GlassWorkshop_Text_IllMakeItemForYou, MSGBOX_DEFAULT
closemessage
- fadescreen 1
+ fadescreen FADE_TO_BLACK
playse SE_SELECT
delay 30
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
msgbox Route113_GlassWorkshop_Text_IveFinishedGlassItem, MSGBOX_DEFAULT
compare VAR_0x8009, 0
call_if_eq Route113_GlassWorkshop_EventScript_GiveGlassFlute
diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
index 03ec9b6f0..58e8ba758 100644
--- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc
+++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
@@ -64,7 +64,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8
setvar VAR_WEATHER_INSTITUTE_STATE, 1
clearflag FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS
fadedefaultbgm
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setflag FLAG_HIDE_ROUTE_119_TEAM_AQUA
setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M
removeobject 1
@@ -74,7 +74,7 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated:: @ 826FFC8
removeobject 7
applymovement OBJ_EVENT_ID_PLAYER, Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition
waitmovement 0
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
applymovement 5, Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer
waitmovement 0
copyobjectxytoperm 5
diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc
index c5c00892a..4b7799510 100644
--- a/data/maps/Route120/scripts.inc
+++ b/data/maps/Route120/scripts.inc
@@ -225,10 +225,10 @@ Route120_EventScript_StevenBattleKecleon:: @ 81F568B
end
Route120_EventScript_RemoveBridgeKecleonPostBattle:: @ 81F571C
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
removeobject 30 @ Invisible Bridge Kecleon
removeobject 36 @ Visible Bridge Kecleon
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
goto Route120_EventScript_StevenGiveDeconScope
end
diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc
index 4adac68a7..545a8126c 100644
--- a/data/maps/SkyPillar_Outside/scripts.inc
+++ b/data/maps/SkyPillar_Outside/scripts.inc
@@ -80,12 +80,12 @@ SkyPillar_Outside_EventScript_WallaceScene:: @ 8239304
msgbox SkyPillar_Outside_Text_GotToGoBackForSootopolis, MSGBOX_DEFAULT
closemessage
playse SE_KAIDAN
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
clearflag FLAG_HIDE_MAP_NAME_POPUP
setvar VAR_SOOTOPOLIS_CITY_STATE, 4
removeobject 1
clearflag FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
releaseall
end
diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc
index ecca9e5f6..422ec2d1a 100644
--- a/data/maps/SkyPillar_Top/scripts.inc
+++ b/data/maps/SkyPillar_Top/scripts.inc
@@ -76,16 +76,16 @@ SkyPillar_Top_EventScript_RanFromRayquaza:: @ 8239771
end
SkyPillar_Top_EventScript_DefeatedRayquaza2:: @ 823977C
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
removeobject VAR_LAST_TALKED
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
releaseall
end
SkyPillar_Top_EventScript_RanFromRayquaza2:: @ 8239785
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
removeobject VAR_LAST_TALKED
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
bufferspeciesname 0, VAR_0x8004
msgbox gText_LegendaryFlewAway, MSGBOX_DEFAULT
releaseall
diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
index e7f846f48..f67c6f081 100644
--- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
@@ -1,51 +1,54 @@
SlateportCity_BattleTentBattleRoom_MapScripts:: @ 8209960
map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_BattleTentBattleRoom_OnTransition
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentBattleRoom_MapScript2_20999A
- map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_MapScript2_2099B4
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentBattleRoom_OnWarp
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_OnFrame
.byte 0
+ @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
+ @ The player is represented instead by object event 3, which has the gfx id VAR_OBJ_GFX_ID_1
+
SlateportCity_BattleTentBattleRoom_OnTransition: @ 8209970
- call SlateportCity_BattleTentBattleRoom_EventScript_209976
+ call SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
-SlateportCity_BattleTentBattleRoom_EventScript_209976:: @ 8209976
+SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8209976
checkplayergender
compare VAR_RESULT, MALE
- goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_20998E
+ goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale
compare VAR_RESULT, FEMALE
- goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_209994
+ goto_if_eq SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale
return
-SlateportCity_BattleTentBattleRoom_EventScript_20998E:: @ 820998E
+SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 820998E
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
return
-SlateportCity_BattleTentBattleRoom_EventScript_209994:: @ 8209994
+SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8209994
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
return
-SlateportCity_BattleTentBattleRoom_MapScript2_20999A: @ 820999A
- map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentBattleRoom_EventScript_2099A4
+SlateportCity_BattleTentBattleRoom_OnWarp: @ 820999A
+ map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects
.2byte 0
-SlateportCity_BattleTentBattleRoom_EventScript_2099A4:: @ 82099A4
+SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 82099A4
setvar VAR_TEMP_1, 1
hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
hideobjectat 2, MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM
end
-SlateportCity_BattleTentBattleRoom_MapScript2_2099B4: @ 82099B4
- map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentBattleRoom_EventScript_2099BE
+SlateportCity_BattleTentBattleRoom_OnFrame: @ 82099B4
+ map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom
.2byte 0
-SlateportCity_BattleTentBattleRoom_EventScript_2099BE:: @ 82099BE
- applymovement 3, SlateportCity_BattleTentBattleRoom_Movement_209A99
+SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82099BE
+ applymovement 3, SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
factory_setopponentgfx
setobjectxyperm 2, 5, 1
removeobject 2
addobject 2
- applymovement 2, SlateportCity_BattleTentBattleRoom_Movement_209A9E
+ applymovement 2, SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
battletent_getopponentintro
lockall
@@ -58,41 +61,40 @@ SlateportCity_BattleTentBattleRoom_EventScript_2099BE:: @ 82099BE
special DoSpecialTrainerBattle
waitstate
switch VAR_RESULT
- case 1, SlateportCity_BattleTentBattleRoom_EventScript_209A39
-
-SlateportCity_BattleTentCorridor_EventScript_209A1B:: @ 8209A1B
+ case 1, SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent
+SlateportCity_BattleTent_EventScript_WarpToLobbyLost:: @ 8209A1B
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
special LoadPlayerParty
warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
+@ forced stop
-SlateportCity_BattleTentBattleRoom_EventScript_209A39:: @ 8209A39
+SlateportCity_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 8209A39
frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
- case 3, SlateportCity_BattleTentBattleRoom_EventScript_209A7B
-@ case 3, SlateportCity_BattleTentCorridor_EventScript_209A7B
+ case 3, SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon
setvar VAR_0x8006, 1
warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 3
waitstate
+@ forced stop
-SlateportCity_BattleTentBattleRoom_EventScript_209A7B:: @ 8209A7B
-SlateportCity_BattleTentCorridor_EventScript_209A7B:: @ 8209A7B
+SlateportCity_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8209A7B
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
special LoadPlayerParty
warp MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
@ forced stop
-SlateportCity_BattleTentBattleRoom_Movement_209A99: @ 8209A99
+SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter: @ 8209A99
walk_up
walk_up
walk_up
walk_in_place_fastest_right
step_end
-SlateportCity_BattleTentBattleRoom_Movement_209A9E: @ 8209A9E
+SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter: @ 8209A9E
walk_down
walk_down
walk_down
diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
index 475f117e5..817e3eaba 100644
--- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
@@ -1,51 +1,52 @@
SlateportCity_BattleTentCorridor_MapScripts:: @ 8208E26
- map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentCorridor_MapScript2_208E5B
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentCorridor_MapScript2_208E31
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentCorridor_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentCorridor_OnWarp
.byte 0
-SlateportCity_BattleTentCorridor_MapScript2_208E31: @ 8208E31
- map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentCorridor_EventScript_208E3B
+ @ This is Slateport Tent's version of the Battle Factory Pre-Battle Room
+
+SlateportCity_BattleTentCorridor_OnWarp: @ 8208E31
+ map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentCorridor_EventScript_SetUpObjects
.2byte 0
-SlateportCity_BattleTentCorridor_EventScript_208E3B:: @ 8208E3B
+SlateportCity_BattleTentCorridor_EventScript_SetUpObjects:: @ 8208E3B
setvar VAR_TEMP_1, 1
compare VAR_0x8006, 1
- goto_if_ne SlateportCity_BattleTentCorridor_EventScript_208E56
+ goto_if_ne SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth
setobjectxy 1, 2, 2
turnobject 1, DIR_SOUTH
-
-SlateportCity_BattleTentCorridor_EventScript_208E56:: @ 8208E56
+SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth:: @ 8208E56
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
-SlateportCity_BattleTentCorridor_MapScript2_208E5B: @ 8208E5B
- map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentCorridor_EventScript_208E65
+SlateportCity_BattleTentCorridor_OnFrame: @ 8208E5B
+ map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentCorridor_EventScript_EnterCorridor
.2byte 0
-SlateportCity_BattleTentCorridor_EventScript_208E65:: @ 8208E65
+SlateportCity_BattleTentCorridor_EventScript_EnterCorridor:: @ 8208E65
compare VAR_0x8006, 1
- goto_if_eq SlateportCity_BattleTentCorridor_EventScript_208EEE
+ goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle
setvar VAR_TEMP_0, 1
- applymovement 1, SlateportCity_BattleTentCorridor_Movement_209062
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_209059
+ applymovement 1, SlateportCity_BattleTentCorridor_Movement_AttendantEnter
+ applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerEnter
waitmovement 0
compare VAR_0x8006, 2
- goto_if_eq SlateportCity_BattleTentCorridor_EventScript_209044
+ goto_if_eq SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge
slateporttent_generaterentalmons
slateporttent_generateopponentmons
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_HoldMonsChooseFromSelection, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
slateporttent_rentmons
waitstate
-SlateportCity_BattleTentCorridor_EventScript_208EB4:: @ 8208EB4
+SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom:: @ 8208EB4
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT
closemessage
applymovement 1, Common_Movement_WalkInPlaceFastestUp
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement 1, SlateportCity_BattleTentCorridor_Movement_209068
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_20905E
+ applymovement 1, SlateportCity_BattleTentCorridor_Movement_AttendantExit
+ applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerExit
waitmovement 0
closedoor 2, 1
waitdooranim
@@ -53,97 +54,97 @@ SlateportCity_BattleTentCorridor_EventScript_208EB4:: @ 8208EB4
waitstate
end
-SlateportCity_BattleTentCorridor_EventScript_208EEE:: @ 8208EEE
+SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle:: @ 8208EEE
factory_setopponentmons
factory_resethelditems
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LetUsRestoreMons, MSGBOX_DEFAULT
playfanfare MUS_ME_ASA
waitfanfare
special HealPlayerParty
-SlateportCity_BattleTentCorridor_EventScript_208F0D:: @ 8208F0D
+SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent:: @ 8208F0D
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 1
- call_if_eq SlateportCity_BattleTentCorridor_EventScript_209014
+ call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent
compare VAR_RESULT, 2
- call_if_eq SlateportCity_BattleTentCorridor_EventScript_20901B
+ call_if_eq SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent
multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1
switch VAR_RESULT
- case 0, SlateportCity_BattleTentCorridor_EventScript_208FBB
- case 1, SlateportCity_BattleTentCorridor_EventScript_208F5B
- case 2, SlateportCity_BattleTentCorridor_EventScript_208F89
+ case 0, SlateportCity_BattleTentCorridor_EventScript_AskSwapMon
+ case 1, SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge
+ case 2, SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge
-SlateportCity_BattleTentCorridor_EventScript_208F5B:: @ 8208F5B
+SlateportCity_BattleTentCorridor_EventScript_AskPauseChallenge:: @ 8208F5B
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO
switch VAR_RESULT
- case NO, SlateportCity_BattleTentCorridor_EventScript_208F0D
- case YES, SlateportCity_BattleTentCorridor_EventScript_209022
- case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208F0D
+ case NO, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent
+ case YES, SlateportCity_BattleTentCorridor_EventScript_PauseChallenge
+ case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent
-SlateportCity_BattleTentCorridor_EventScript_208F89:: @ 8208F89
+SlateportCity_BattleTentCorridor_EventScript_AskRetireChallenge:: @ 8208F89
message BattleFrontier_BattleFactoryPreBattleRoom_Text_RetireFromChallenge
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, 0
switch VAR_RESULT
- case 1, SlateportCity_BattleTentCorridor_EventScript_208F0D
- case 0, SlateportCity_BattleTentCorridor_EventScript_209A1B
- case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208F0D
+ case 1, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent
+ case 0, SlateportCity_BattleTent_EventScript_WarpToLobbyLost
+ case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent
-SlateportCity_BattleTentCorridor_EventScript_208FBB:: @ 8208FBB
+SlateportCity_BattleTentCorridor_EventScript_AskSwapMon:: @ 8208FBB
slateporttent_generateopponentmons
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_LikeToSwapMon, MSGBOX_YESNO
switch VAR_RESULT
- case NO, SlateportCity_BattleTentCorridor_EventScript_208EB4
- case YES, SlateportCity_BattleTentCorridor_EventScript_208FF1
- case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_208EB4
+ case NO, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom
+ case YES, SlateportCity_BattleTentCorridor_EventScript_SwapMons
+ case MULTI_B_PRESSED, SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom
-SlateportCity_BattleTentCorridor_EventScript_208FF1:: @ 8208FF1
- fadescreen 1
+SlateportCity_BattleTentCorridor_EventScript_SwapMons:: @ 8208FF1
+ fadescreen FADE_TO_BLACK
slateporttent_swapmons
waitstate
compare VAR_RESULT, 1
- goto_if_eq SlateportCity_BattleTentCorridor_EventScript_208EB4
+ goto_if_eq SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_YourSwapIsComplete, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentCorridor_EventScript_208EB4
+ goto SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom
-SlateportCity_BattleTentCorridor_EventScript_209014:: @ 8209014
+SlateportCity_BattleTentCorridor_EventScript_ReadyFor2ndOpponent:: @ 8209014
message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor2ndOpponent
waitmessage
return
-SlateportCity_BattleTentCorridor_EventScript_20901B:: @ 820901B
+SlateportCity_BattleTentCorridor_EventScript_ReadyFor3rdOpponent:: @ 820901B
message BattleFrontier_BattleFactoryPreBattleRoom_Text_ReadyFor3rdOpponent
waitmessage
return
-SlateportCity_BattleTentCorridor_EventScript_209022:: @ 8209022
+SlateportCity_BattleTentCorridor_EventScript_PauseChallenge:: @ 8209022
message BattleFrontier_BattleFactoryPreBattleRoom_Text_SavingDataPleaseWait
waitmessage
slateporttent_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
-SlateportCity_BattleTentCorridor_EventScript_209044:: @ 8209044
+SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge:: @ 8209044
special SavePlayerParty
factory_setparties 0
- goto SlateportCity_BattleTentCorridor_EventScript_208F0D
+ goto SlateportCity_BattleTentCorridor_EventScript_AskReadyForOpponent
-SlateportCity_BattleTentCorridor_Movement_209059: @ 8209059
+SlateportCity_BattleTentCorridor_Movement_PlayerEnter: @ 8209059
walk_up
walk_up
walk_up
walk_up
step_end
-SlateportCity_BattleTentCorridor_Movement_20905E: @ 820905E
+SlateportCity_BattleTentCorridor_Movement_PlayerExit: @ 820905E
walk_up
walk_up
set_invisible
step_end
-SlateportCity_BattleTentCorridor_Movement_209062: @ 8209062
+SlateportCity_BattleTentCorridor_Movement_AttendantEnter: @ 8209062
walk_up
walk_up
walk_up
@@ -151,12 +152,14 @@ SlateportCity_BattleTentCorridor_Movement_209062: @ 8209062
walk_in_place_fastest_down
step_end
-SlateportCity_BattleTentCorridor_Movement_209068: @ 8209068
+SlateportCity_BattleTentCorridor_Movement_AttendantExit: @ 8209068
walk_up
set_invisible
step_end
-SlateportCity_BattleTentCorridor_Text_20906B: @ 820906B
+@ Leftover text from when this was a Contest Hall in R/S
+@ Unused
+SlateportCity_ContestHall_Text_AdviceForContests: @ 820906B
.string "Want a tasty little bit of advice\n"
.string "for CONTESTS?\p"
.string "Using a certain move after another\n"
@@ -167,12 +170,14 @@ SlateportCity_BattleTentCorridor_Text_20906B: @ 820906B
.string "Of course, your opponents might try\n"
.string "disrupting your POKéMON's showing.$"
-SlateportCity_BattleTentCorridor_Text_20917A: @ 820917A
+@ Unused
+SlateportCity_ContestHall_Text_MyPapaIsContestJudge: @ 820917A
.string "My papa, he's a CONTEST JUDGE.\p"
.string "I wonder what I should be when I\n"
.string "grow up, a JUDGE or a GYM LEADER?$"
-SlateportCity_BattleTentCorridor_Text_2091DC: @ 82091DC
+@ Unused
+SlateportCity_ContestHall_Text_ImLikeMajorlyCheesed: @ 82091DC
.string "Hey, man, I'm like majorly cheesed,\n"
.string "you know. Like, you know, I just\l"
.string "wanted to know why my POKéMON\l"
@@ -184,7 +189,8 @@ SlateportCity_BattleTentCorridor_Text_2091DC: @ 82091DC
.string "Hey, like, you! Zip it, you know?\n"
.string "Just, you know, take this!$"
-SlateportCity_BattleTentCorridor_Text_209322: @ 8209322
+@ Unused
+SlateportCity_ContestHall_Text_ExplainTorment: @ 8209322
.string "That's, like, TM41, you know?\n"
.string "Hey, it's TORMENT, you hearing me?\p"
.string "Like, it won't let the other guy\n"
@@ -192,7 +198,8 @@ SlateportCity_BattleTentCorridor_Text_209322: @ 8209322
.string "Hey, now, you listen here, like,\n"
.string "I'm not laying a torment on you!$"
-SlateportCity_BattleTentCorridor_Text_2093ED: @ 82093ED
+@ Unused
+SlateportCity_ContestHall_Text_MCStepUpTakePartInContest: @ 82093ED
.string "MC: Oh, my, my!\n"
.string "Now isn't that a dandy of a POKéMON?\p"
.string "Please! Do step right up and take\n"
@@ -200,7 +207,8 @@ SlateportCity_BattleTentCorridor_Text_2093ED: @ 82093ED
.string "You'll do well! I'm sure of it!\n"
.string "My eyes have never failed me!$"
-SlateportCity_BattleTentCorridor_Text_2094A1: @ 82094A1
+@ Unused
+SlateportCity_ContestHall_Text_JudgeWouldntDoToMissContest: @ 82094A1
.string "JUDGE: Well, hello there!\n"
.string "I see that you're a TRAINER!\p"
.string "Then, it just wouldn't do for you\n"
@@ -208,17 +216,20 @@ SlateportCity_BattleTentCorridor_Text_2094A1: @ 82094A1
.string "Get a CONTEST PASS in VERDANTURF\n"
.string "CITY and enter anytime!$"
-SlateportCity_BattleTentCorridor_Text_20954E: @ 820954E
+@ Unused
+SlateportCity_ContestHall_Text_ItsAppealTime: @ 820954E
.string "It's appeal time!\n"
.string "What should I lead with?$"
-SlateportCity_BattleTentCorridor_Text_209579: @ 8209579
+@ Unused
+SlateportCity_ContestHall_Text_DidntPayAttentionToAppeal: @ 8209579
.string "They didn't pay much attention to\n"
.string "my POKéMON's appeal…\p"
.string "Humph, that JUDGE, he doesn't know\n"
.string "a good thing when he sees it.$"
-SlateportCity_BattleTentCorridor_Text_2095F1: @ 82095F1
+@ Unused
+SlateportCity_ContestHall_Text_RewardWithSageAdvice: @ 82095F1
.string "Oh, hi! You must be a serious fan to get\n"
.string "this close to the action.\p"
.string "I'll reward your enthusiasm with\n"
@@ -230,35 +241,41 @@ SlateportCity_BattleTentCorridor_Text_2095F1: @ 82095F1
.string "Well, you'd think something good has\n"
.string "to happen!$"
-SlateportCity_BattleTentCorridor_Text_209718: @ 8209718
+@ Unused
+SlateportCity_ContestHall_Text_MoreFreakedOutThanMon: @ 8209718
.string "I can't do this! I'm more freaked out\n"
.string "than my POKéMON.\p"
.string "I'm shivering and my heart is racing!$"
-SlateportCity_BattleTentCorridor_Text_209775: @ 8209775
+@ Unused
+SlateportCity_ContestHall_Text_BattleAndContestAlike: @ 8209775
.string "A battle and a CONTEST aren't the\n"
.string "same, but they are alike, too.\p"
.string "You need to work hard and believe\n"
.string "in the POKéMON you've raised.$"
-SlateportCity_BattleTentCorridor_Text_2097F6: @ 82097F6
+@ Unused
+SlateportCity_ContestHall_Text_MonLooksOnTopOfGame: @ 82097F6
.string "That POKéMON looks like it's on top\n"
.string "of its game, huh?\p"
.string "A POKéMON that does good in the\n"
.string "secondary judging seems to be more\l"
.string "relaxed when it's doing appeals.$"
-SlateportCity_BattleTentCorridor_Text_209890: @ 8209890
+@ Unused
+SlateportCity_ContestHall_Text_MyMonBetterThanThatLot: @ 8209890
.string "Will you look at that sorry sight?\p"
.string "Heh, my POKéMON's absolutely better\n"
.string "than that lot!$"
-SlateportCity_BattleTentCorridor_Text_2098E6: @ 82098E6
+@ Unused
+SlateportCity_ContestHall_Text_GetUrgeToMoveWithMon: @ 82098E6
.string "Don't you get the urge to move with\n"
.string "POKéMON if they're putting on an\l"
.string "energetic appeal?$"
-SlateportCity_BattleTentCorridor_Text_20993D: @ 820993D
+@ Unused
+SlateportCity_ContestHall_Text_HyperRankStage: @ 820993D
.string "POKéMON CONTESTS\n"
.string "HYPER RANK STAGE!$"
diff --git a/data/maps/SlateportCity_BattleTentLobby/map.json b/data/maps/SlateportCity_BattleTentLobby/map.json
index 6fa2b3648..5a1c7cdb7 100644
--- a/data/maps/SlateportCity_BattleTentLobby/map.json
+++ b/data/maps/SlateportCity_BattleTentLobby/map.json
@@ -24,7 +24,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "SlateportCity_BattleTentLobby_EventScript_2088AA",
+ "script": "SlateportCity_BattleTentLobby_EventScript_Attendant",
"flag": "0"
},
{
@@ -37,7 +37,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "SlateportCity_BattleTentLobby_EventScript_208A3D",
+ "script": "SlateportCity_BattleTentLobby_EventScript_TormentGiver",
"flag": "0"
},
{
@@ -50,7 +50,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "SlateportCity_BattleTentLobby_EventScript_208A7E",
+ "script": "SlateportCity_BattleTentLobby_EventScript_Man",
"flag": "0"
},
{
@@ -63,7 +63,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "SlateportCity_BattleTentLobby_EventScript_208A87",
+ "script": "SlateportCity_BattleTentLobby_EventScript_Girl",
"flag": "0"
},
{
@@ -76,7 +76,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "SlateportCity_BattleTentLobby_EventScript_208A90",
+ "script": "SlateportCity_BattleTentLobby_EventScript_Woman",
"flag": "0"
}
],
@@ -104,7 +104,7 @@
"y": 5,
"elevation": 0,
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
- "script": "SlateportCity_BattleTentLobby_EventScript_208A99"
+ "script": "SlateportCity_BattleTentLobby_EventScript_RulesBoard"
}
]
}
diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
index 8e0fa1108..651c28a38 100644
--- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
@@ -1,32 +1,32 @@
SlateportCity_BattleTentLobby_MapScripts:: @ 8208730
- map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentLobby_MapScript2_20874F
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentLobby_MapScript2_20873B
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentLobby_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentLobby_OnWarp
.byte 0
-SlateportCity_BattleTentLobby_MapScript2_20873B: @ 820873B
- map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentLobby_EventScript_208745
+SlateportCity_BattleTentLobby_OnWarp: @ 820873B
+ map_script_2 VAR_TEMP_1, 0, SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth
.2byte 0
-SlateportCity_BattleTentLobby_EventScript_208745:: @ 8208745
+SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 8208745
setvar VAR_TEMP_1, 1
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
-SlateportCity_BattleTentLobby_MapScript2_20874F: @ 820874F
- map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_208779
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_208782
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_208871
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_2087B7
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_208837
+SlateportCity_BattleTentLobby_OnFrame: @ 820874F
+ map_script_2 VAR_TEMP_0, 0, SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, SlateportCity_BattleTentLobby_EventScript_ResumeChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, SlateportCity_BattleTentLobby_EventScript_WonChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, SlateportCity_BattleTentLobby_EventScript_LostChallenge
.2byte 0
-SlateportCity_BattleTentLobby_EventScript_208779:: @ 8208779
+SlateportCity_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8208779
frontier_getstatus
end
-SlateportCity_BattleTentLobby_EventScript_208782:: @ 8208782
+SlateportCity_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8208782
lockall
- msgbox SlateportCity_BattleTentLobby_Text_2C5DFA, MSGBOX_DEFAULT
+ msgbox SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
setvar VAR_TEMP_0, 255
@@ -34,50 +34,50 @@ SlateportCity_BattleTentLobby_EventScript_208782:: @ 8208782
releaseall
end
-SlateportCity_BattleTentLobby_EventScript_2087B7:: @ 82087B7
+SlateportCity_BattleTentLobby_EventScript_WonChallenge:: @ 82087B7
lockall
- message SlateportCity_BattleTentLobby_Text_2C5C6F
+ message SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons
waitmessage
slateporttent_setrandomprize
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
slateporttent_save 0
playse SE_SAVE
waitse
-SlateportCity_BattleTentLobby_EventScript_2087E9:: @ 82087E9
- msgbox SlateportCity_BattleTentLobby_Text_2C5D14, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_GivePrize:: @ 82087E9
+ msgbox SlateportCity_BattleTentLobby_Text_AwardYouThisPrize, MSGBOX_DEFAULT
slateporttent_giveprize
switch VAR_RESULT
- case 0, SlateportCity_BattleTentLobby_EventScript_20882A
+ case FALSE, SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- message SlateportCity_BattleTentLobby_Text_23F68C
+ message BattleFrontier_BattleTowerLobby_Text_ReceivedPrize @ Odd that it uses Tower's instead of Factory's or its own
waitmessage
playfanfare MUS_FANFA4
waitfanfare
- goto SlateportCity_BattleTentLobby_EventScript_208861
+ goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize
-SlateportCity_BattleTentLobby_EventScript_20882A:: @ 820882A
- msgbox SlateportCity_BattleTentLobby_Text_2C5D52, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208861
+SlateportCity_BattleTentLobby_EventScript_NoRoomForPrize:: @ 820882A
+ msgbox SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_EndGivePrize
-SlateportCity_BattleTentLobby_EventScript_208837:: @ 8208837
+SlateportCity_BattleTentLobby_EventScript_LostChallenge:: @ 8208837
lockall
- message SlateportCity_BattleTentLobby_Text_2C5BA2
+ message SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults
waitmessage
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
slateporttent_save 0
playse SE_SAVE
waitse
-SlateportCity_BattleTentLobby_EventScript_208861:: @ 8208861
- msgbox SlateportCity_BattleTentLobby_Text_2C5AA5, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_EndGivePrize:: @ 8208861
+ msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-SlateportCity_BattleTentLobby_EventScript_208871:: @ 8208871
+SlateportCity_BattleTentLobby_EventScript_ResumeChallenge:: @ 8208871
lockall
- message SlateportCity_BattleTentLobby_Text_2C5DA7
+ message SlateportCity_BattleTentLobby_Text_BeenWaitingForYou
waitmessage
slateporttent_save CHALLENGE_STATUS_SAVING
playse SE_SAVE
@@ -85,37 +85,37 @@ SlateportCity_BattleTentLobby_EventScript_208871:: @ 8208871
frontier_set FRONTIER_DATA_PAUSED, FALSE
setvar VAR_TEMP_0, 255
setvar VAR_0x8006, 2
- goto SlateportCity_BattleTentLobby_EventScript_2089AC
+ goto SlateportCity_BattleTentLobby_EventScript_EnterChallenge
-SlateportCity_BattleTentLobby_EventScript_2088AA:: @ 82088AA
+SlateportCity_BattleTentLobby_EventScript_Attendant:: @ 82088AA
lock
faceplayer
slateporttent_getprize
- compare VAR_RESULT, 0
- goto_if_ne SlateportCity_BattleTentLobby_EventScript_2087E9
+ compare VAR_RESULT, ITEM_NONE
+ goto_if_ne SlateportCity_BattleTentLobby_EventScript_GivePrize
special SavePlayerParty
- msgbox SlateportCity_BattleTentLobby_Text_2C5810, MSGBOX_DEFAULT
-SlateportCity_BattleTentLobby_EventScript_2088CA:: @ 82088CA
- message SlateportCity_BattleTentLobby_Text_2C586A
+ msgbox SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge:: @ 82088CA
+ message SlateportCity_BattleTentLobby_Text_TakeChallenge
waitmessage
multichoice 17, 6, MULTI_CHALLENGEINFO, 0
switch VAR_RESULT
- case 0, SlateportCity_BattleTentLobby_EventScript_208906
- case 1, SlateportCity_BattleTentLobby_EventScript_208A07
- case 2, SlateportCity_BattleTentLobby_EventScript_208A2E
- case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208A2E
+ case 0, SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge
+ case 1, SlateportCity_BattleTentLobby_EventScript_ExplainChallenge
+ case 2, SlateportCity_BattleTentLobby_EventScript_CancelChallenge
+ case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_CancelChallenge
-SlateportCity_BattleTentLobby_EventScript_208906:: @ 8208906
+SlateportCity_BattleTentLobby_EventScript_TryEnterChallenge:: @ 8208906
setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_FACTORY
setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT
- msgbox SlateportCity_BattleTentLobby_Text_2C5B06, MSGBOX_YESNO
+ msgbox SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO
switch VAR_RESULT
- case NO, SlateportCity_BattleTentLobby_EventScript_208A2B
- case YES, SlateportCity_BattleTentLobby_EventScript_208950
- case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208A2B
+ case NO, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge
+ case YES, SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge
+ case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge
-SlateportCity_BattleTentLobby_EventScript_208950:: @ 8208950
+SlateportCity_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8208950
setvar VAR_TEMP_0, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
slateporttent_init
@@ -126,156 +126,156 @@ SlateportCity_BattleTentLobby_EventScript_208950:: @ 8208950
call Common_EventScript_SaveGame
setvar VAR_TEMP_0, 255
compare VAR_RESULT, 0
- goto_if_eq SlateportCity_BattleTentLobby_EventScript_208A14
+ goto_if_eq SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed
setvar VAR_0x8006, 0
-SlateportCity_BattleTentLobby_EventScript_2089AC:: @ 82089AC
- msgbox SlateportCity_BattleTentLobby_Text_2C5B8C, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_EnterChallenge:: @ 82089AC
+ msgbox SlateportCity_BattleTentLobby_Text_StepThisWay, MSGBOX_DEFAULT
closemessage
- call SlateportCity_BattleTentLobby_EventScript_2089C9
+ call SlateportCity_BattleTentLobby_EventScript_WalkToDoor
warp MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR, 255, 2, 7
setvar VAR_TEMP_0, 0
waitstate
end
-SlateportCity_BattleTentLobby_EventScript_2089C9:: @ 82089C9
- applymovement 1, SlateportCity_BattleTentLobby_Movement_2089F8
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_2089FF
+SlateportCity_BattleTentLobby_EventScript_WalkToDoor:: @ 82089C9
+ applymovement 1, SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor
+ applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement 1, SlateportCity_BattleTentLobby_Movement_2089FC
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_208A03
+ applymovement 1, SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
return
-SlateportCity_BattleTentLobby_Movement_2089F8: @ 82089F8
+SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor: @ 82089F8
walk_up
walk_up
walk_up
step_end
-SlateportCity_BattleTentLobby_Movement_2089FC: @ 82089FC
+SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor: @ 82089FC
walk_up
set_invisible
step_end
-SlateportCity_BattleTentLobby_Movement_2089FF: @ 82089FF
+SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor: @ 82089FF
walk_up
walk_up
walk_up
step_end
-SlateportCity_BattleTentLobby_Movement_208A03: @ 8208A03
+SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor: @ 8208A03
walk_up
walk_up
set_invisible
step_end
-SlateportCity_BattleTentLobby_EventScript_208A07:: @ 8208A07
- msgbox SlateportCity_BattleTentLobby_Text_2C589C, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_2088CA
+SlateportCity_BattleTentLobby_EventScript_ExplainChallenge:: @ 8208A07
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainSlateportTent, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_AskEnterChallenge
-SlateportCity_BattleTentLobby_EventScript_208A14:: @ 8208A14
+SlateportCity_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8208A14
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- goto SlateportCity_BattleTentLobby_EventScript_208A2E
+ goto SlateportCity_BattleTentLobby_EventScript_CancelChallenge
-SlateportCity_BattleTentLobby_EventScript_208A2B:: @ 8208A2B
+SlateportCity_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8208A2B
special LoadPlayerParty
-
-SlateportCity_BattleTentLobby_EventScript_208A2E:: @ 8208A2E
- msgbox SlateportCity_BattleTentLobby_Text_2C5AA5, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_CancelChallenge:: @ 8208A2E
+ msgbox SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit, MSGBOX_DEFAULT
release
end
-SlateportCity_BattleTentLobby_Movement_208A38:: @ 8208A38
+@ Unused
+SlateportCity_BattleTentLobby_Movement_UnusedEnterDoor:: @ 8208A38
walk_up
walk_up
walk_up
set_invisible
step_end
-SlateportCity_BattleTentLobby_EventScript_208A3D:: @ 8208A3D
+SlateportCity_BattleTentLobby_EventScript_TormentGiver:: @ 8208A3D
lock
faceplayer
- goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_208A74
- msgbox SlateportCity_BattleTentLobby_Text_208B4E, MSGBOX_DEFAULT
+ goto_if_set FLAG_RECEIVED_TM41, SlateportCity_BattleTentLobby_EventScript_ReceivedTorment
+ msgbox SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe, MSGBOX_DEFAULT
giveitem_std ITEM_TM41
- compare VAR_RESULT, 0
+ compare VAR_RESULT, FALSE
goto_if_eq Common_EventScript_ShowBagIsFull
setflag FLAG_RECEIVED_TM41
- msgbox SlateportCity_BattleTentLobby_Text_208C5C, MSGBOX_DEFAULT
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT
release
end
-SlateportCity_BattleTentLobby_EventScript_208A74:: @ 8208A74
- msgbox SlateportCity_BattleTentLobby_Text_208C5C, MSGBOX_DEFAULT
+SlateportCity_BattleTentLobby_EventScript_ReceivedTorment:: @ 8208A74
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainTorment, MSGBOX_DEFAULT
release
end
-SlateportCity_BattleTentLobby_EventScript_208A7E:: @ 8208A7E
- msgbox SlateportCity_BattleTentLobby_Text_208D27, MSGBOX_NPC
+SlateportCity_BattleTentLobby_EventScript_Man:: @ 8208A7E
+ msgbox SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons, MSGBOX_NPC
end
-SlateportCity_BattleTentLobby_EventScript_208A87:: @ 8208A87
- msgbox SlateportCity_BattleTentLobby_Text_208DA6, MSGBOX_NPC
+SlateportCity_BattleTentLobby_EventScript_Girl:: @ 8208A87
+ msgbox SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons, MSGBOX_NPC
end
-SlateportCity_BattleTentLobby_EventScript_208A90:: @ 8208A90
- msgbox SlateportCity_BattleTentLobby_Text_208DF1, MSGBOX_NPC
+SlateportCity_BattleTentLobby_EventScript_Woman:: @ 8208A90
+ msgbox SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection, MSGBOX_NPC
end
-SlateportCity_BattleTentLobby_EventScript_208A99:: @ 8208A99
+SlateportCity_BattleTentLobby_EventScript_RulesBoard:: @ 8208A99
lockall
msgbox BattleFrontier_BattleFactoryLobby_Text_RulesAreListed, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208AA8:: @ 8208AA8
+SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8208AA8
message BattleFrontier_BattleFactoryLobby_Text_ReadWhichHeading
waitmessage
multichoice 17, 0, MULTI_SLATEPORT_TENT_RULES, 0
switch VAR_RESULT
- case 0, SlateportCity_BattleTentLobby_EventScript_208B06
- case 1, SlateportCity_BattleTentLobby_EventScript_208B14
- case 2, SlateportCity_BattleTentLobby_EventScript_208B22
- case 3, SlateportCity_BattleTentLobby_EventScript_208B30
- case 4, SlateportCity_BattleTentLobby_EventScript_208B3E
- case 5, SlateportCity_BattleTentLobby_EventScript_208B4C
- case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_208B4C
+ case 0, SlateportCity_BattleTentLobby_EventScript_RulesBasics
+ case 1, SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner
+ case 2, SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber
+ case 3, SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes
+ case 4, SlateportCity_BattleTentLobby_EventScript_RulesMons
+ case 5, SlateportCity_BattleTentLobby_EventScript_ExitRules
+ case MULTI_B_PRESSED, SlateportCity_BattleTentLobby_EventScript_ExitRules
end
-SlateportCity_BattleTentLobby_EventScript_208B06:: @ 8208B06
- msgbox SlateportCity_BattleTentLobby_Text_2C5F08, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+SlateportCity_BattleTentLobby_EventScript_RulesBasics:: @ 8208B06
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainBasicRules, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208B14:: @ 8208B14
- msgbox SlateportCity_BattleTentLobby_Text_2C5F9D, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+SlateportCity_BattleTentLobby_EventScript_RulesSwapPartner:: @ 8208B14
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208B22:: @ 8208B22
- msgbox SlateportCity_BattleTentLobby_Text_2C6020, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+SlateportCity_BattleTentLobby_EventScript_RulesSwapNumber:: @ 8208B22
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208B30:: @ 8208B30
- msgbox SlateportCity_BattleTentLobby_Text_2C60C0, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+SlateportCity_BattleTentLobby_EventScript_RulesSwapNotes:: @ 8208B30
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainSwapNotes, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208B3E:: @ 8208B3E
- msgbox SlateportCity_BattleTentLobby_Text_2C61FE, MSGBOX_DEFAULT
- goto SlateportCity_BattleTentLobby_EventScript_208AA8
+SlateportCity_BattleTentLobby_EventScript_RulesMons:: @ 8208B3E
+ msgbox SlateportCity_BattleTentLobby_Text_ExplainMonRules, MSGBOX_DEFAULT
+ goto SlateportCity_BattleTentLobby_EventScript_ReadRulesBoard
end
-SlateportCity_BattleTentLobby_EventScript_208B4C:: @ 8208B4C
+SlateportCity_BattleTentLobby_EventScript_ExitRules:: @ 8208B4C
releaseall
end
-SlateportCity_BattleTentLobby_Text_208B4E: @ 8208B4E
+SlateportCity_BattleTentLobby_Text_CouldntFindMonForMe: @ 8208B4E
.string "So, like, I couldn't find myself any\n"
.string "POKéMON that were, like, for me.\p"
.string "So, I figured, like, hey, I should file\n"
@@ -285,7 +285,7 @@ SlateportCity_BattleTentLobby_Text_208B4E: @ 8208B4E
.string "Hey, like, you! Zip it, you know?\n"
.string "Just, you know, take this!$"
-SlateportCity_BattleTentLobby_Text_208C5C: @ 8208C5C
+SlateportCity_BattleTentLobby_Text_ExplainTorment: @ 8208C5C
.string "That's, like, TM41, you know?\n"
.string "Hey, it's TORMENT, you hearing me?\p"
.string "Like, it won't let the other guy\n"
@@ -293,18 +293,18 @@ SlateportCity_BattleTentLobby_Text_208C5C: @ 8208C5C
.string "Hey, now, you listen here, like,\n"
.string "I'm not laying a torment on you!$"
-SlateportCity_BattleTentLobby_Text_208D27: @ 8208D27
+SlateportCity_BattleTentLobby_Text_IllTryUsingBugMons: @ 8208D27
.string "I don't really like BUG POKéMON,\n"
.string "but maybe I'll try using some for\l"
.string "a change of pace.\p"
.string "Who knows, I might even get to like\n"
.string "them!$"
-SlateportCity_BattleTentLobby_Text_208DA6: @ 8208DA6
+SlateportCity_BattleTentLobby_Text_BattleEvenWithoutToughMons: @ 8208DA6
.string "You can battle all you want here even\n"
.string "if you don't have any tough POKéMON.$"
-SlateportCity_BattleTentLobby_Text_208DF1: @ 8208DF1
+SlateportCity_BattleTentLobby_Text_NiceIfMoreSelection: @ 8208DF1
.string "Wouldn't it be nice if they had more of\n"
.string "a selection?$"
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
index cc0a79e63..16478c5a0 100644
--- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
@@ -61,11 +61,11 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00
closemessage
savebgm MUS_DUMMY
fadedefaultbgm
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 2
removeobject 3
removeobject 4
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
delay 30
setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestRight
@@ -75,7 +75,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00
call Common_EventScript_PlayerHandedOverTheItem
msgbox SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo, MSGBOX_DEFAULT
closemessage
- fadescreen 1
+ fadescreen FADE_TO_BLACK
playfanfare MUS_ME_ASA
waitfanfare
special HealPlayerParty
@@ -87,7 +87,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern:: @ 820BB00
clearflag FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE
setflag FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE
setvar VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 1
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
release
end
diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc
index a1e830913..8831f62a8 100644
--- a/data/maps/SootopolisCity/scripts.inc
+++ b/data/maps/SootopolisCity/scripts.inc
@@ -214,7 +214,7 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter:: @ 81E5946
waitmovement 0
special RemoveCameraObject
delay 60
- fadescreenspeed 1, 8
+ fadescreenspeed FADE_TO_BLACK, 8
setweather WEATHER_ABNORMAL
doweather
setvar VAR_0x8004, 0
@@ -314,7 +314,7 @@ SootopolisCity_EventScript_LegendariesSceneFromDive:: @ 81E5A82
waitmovement 0
special RemoveCameraObject
delay 60
- fadescreenspeed 1, 8
+ fadescreenspeed FADE_TO_BLACK, 8
setweather WEATHER_ABNORMAL
doweather
setvar VAR_0x8004, 0
@@ -505,7 +505,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: @ 81E5C1E
waitmovement 0
special RemoveCameraObject
delay 60
- fadescreenspeed 1, 8
+ fadescreenspeed FADE_TO_BLACK, 8
call SootopolisCity_EventScript_SetRoughWater
removeobject 9
removeobject 10
@@ -558,7 +558,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: @ 81E5CCE
waitmovement 0
special RemoveCameraObject
delay 60
- fadescreenspeed 1, 8
+ fadescreenspeed FADE_TO_BLACK, 8
call SootopolisCity_EventScript_SetRoughWater
removeobject 9
removeobject 10
diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
index 6b0e42148..96a28f2dd 100644
--- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
+++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
@@ -126,7 +126,7 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_DeclineBattle:: @ 8227AE2
SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty:: @ 8227AEF
msgbox SootopolisCity_MysteryEventsHouse_1F_Text_KeepItTo3On3, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
return
diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc
index 15aecc9d9..e1311b6d1 100644
--- a/data/maps/TrainerHill_Entrance/scripts.inc
+++ b/data/maps/TrainerHill_Entrance/scripts.inc
@@ -219,7 +219,7 @@ TrainerHill_Entrance_Movement_PlayerExitElevator: @ 8268385
TrainerHill_Entrance_EventScript_Records:: @ 8268388
lockall
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ShowTrainerHillRecords
waitstate
releaseall
diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
index 38f2f9c40..0e79fe8df 100644
--- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
@@ -1,68 +1,70 @@
VerdanturfTown_BattleTentBattleRoom_MapScripts:: @ 82022FA
map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_BattleTentBattleRoom_OnTransition
- map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentBattleRoom_MapScript2_20233E
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentBattleRoom_MapScript2_202541
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentBattleRoom_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentBattleRoom_OnWarp
.byte 0
+ @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
+ @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1
+ @ The opponent is represented by object event 2, which has the gfx id VAR_OBJ_GFX_ID_0
+
VerdanturfTown_BattleTentBattleRoom_OnTransition: @ 820230A
- call VerdanturfTown_BattleTentBattleRoom_EventScript_202310
+ call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
-VerdanturfTown_BattleTentBattleRoom_EventScript_202310:: @ 8202310
+VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 8202310
checkplayergender
compare VAR_RESULT, MALE
- goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202328
+ goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale
compare VAR_RESULT, FEMALE
- goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202333
+ goto_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale
return
-VerdanturfTown_BattleTentBattleRoom_EventScript_202328:: @ 8202328
+VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 8202328
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
return
-VerdanturfTown_BattleTentBattleRoom_EventScript_202333:: @ 8202333
+VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 8202333
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
return
-VerdanturfTown_BattleTentBattleRoom_MapScript2_20233E: @ 820233E
- map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_202348
+VerdanturfTown_BattleTentBattleRoom_OnFrame: @ 820233E
+ map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom
.2byte 0
-VerdanturfTown_BattleTentBattleRoom_EventScript_202348:: @ 8202348
+VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 8202348
showobjectat 1, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
- applymovement 1, VerdanturfTown_BattleTentBattleRoom_Movement_202575
+ applymovement 1, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 0
- goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
-
-VerdanturfTown_BattleTentBattleRoom_EventScript_20236F:: @ 820236F
+ goto_if_ne VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
+VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820236F
tower_setopponent
addobject 2
- applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_20257B
+ applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
battletent_getopponentintro
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
call BattleFrontier_BattlePalaceBattleRoom_EventScript_DoPalaceBattle
switch VAR_RESULT
- case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8
-
-VerdanturfTown_BattleTentBattleRoom_EventScript_2023AA:: @ 82023AA
+ case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent
+VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 82023AA
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
special LoadPlayerParty
warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
-VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8:: @ 82023C8
+VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 82023C8
frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
- case 3, VerdanturfTown_BattleTentBattleRoom_EventScript_202501
- applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_202581
+ case 3, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon
+ applymovement 2, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit
waitmovement 0
removeobject 2
applymovement 3, Common_Movement_WalkInPlaceFastestDown
@@ -76,84 +78,84 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_2023C8:: @ 82023C8
waitfanfare
special HealPlayerParty
-VerdanturfTown_BattleTentBattleRoom_EventScript_20243C:: @ 820243C
+VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 820243C
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 1
- call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_202565
+ call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent
compare VAR_RESULT, 2
- call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_20256C
+ call_if_eq VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent
multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1
switch VAR_RESULT
- case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_2024EA
- case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_20248A
- case 2, VerdanturfTown_BattleTentBattleRoom_EventScript_2024B8
+ case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge
+ case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge
+ case 2, VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge
-VerdanturfTown_BattleTentBattleRoom_EventScript_20248A:: @ 820248A
+VerdanturfTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 820248A
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO
switch VAR_RESULT
- case NO, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
- case YES, VerdanturfTown_BattleTentBattleRoom_EventScript_20251F
- case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
+ case NO, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
+ case YES, VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge
+ case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
-VerdanturfTown_BattleTentBattleRoom_EventScript_2024B8:: @ 82024B8
+VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 82024B8
message BattleFrontier_BattlePalaceBattleRoom_Text_WishToQuitChallenge
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, 0
switch VAR_RESULT
- case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
- case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_2023AA
- case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_20243C
+ case 1, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
+ case 0, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost
+ case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
-VerdanturfTown_BattleTentBattleRoom_EventScript_2024EA:: @ 82024EA
+VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 82024EA
applymovement 3, Common_Movement_WalkInPlaceFastestRight
applymovement 1, Common_Movement_WalkInPlaceFastestRight
waitmovement 0
closemessage
- goto VerdanturfTown_BattleTentBattleRoom_EventScript_20236F
+ goto VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter
-VerdanturfTown_BattleTentBattleRoom_EventScript_202501:: @ 8202501
+VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8202501
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
special LoadPlayerParty
warp MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
-VerdanturfTown_BattleTentBattleRoom_EventScript_20251F:: @ 820251F
+VerdanturfTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 820251F
message BattleFrontier_BattlePalaceBattleRoom_Text_SavingData
waitmessage
verdanturftent_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
- fadescreen 1
+ fadescreen FADE_TO_BLACK
frontier_reset
end
-VerdanturfTown_BattleTentBattleRoom_MapScript2_202541: @ 8202541
- map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_20254B
+VerdanturfTown_BattleTentBattleRoom_OnWarp: @ 8202541
+ map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects
.2byte 0
-VerdanturfTown_BattleTentBattleRoom_EventScript_20254B:: @ 820254B
+VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 820254B
hideobjectat 1, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
- call VerdanturfTown_BattleTentBattleRoom_EventScript_202310
+ call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
setvar VAR_TEMP_1, 1
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_202573
+ applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible
removeobject 2
end
-VerdanturfTown_BattleTentBattleRoom_EventScript_202565:: @ 8202565
+VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8202565
message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor2ndOpponent
waitmessage
return
-VerdanturfTown_BattleTentBattleRoom_EventScript_20256C:: @ 820256C
+VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 820256C
message BattleFrontier_BattlePalaceBattleRoom_Text_PreparedFor3rdOpponent
waitmessage
return
-VerdanturfTown_BattleTentBattleRoom_Movement_202573: @ 8202573
+VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible: @ 8202573
set_invisible
step_end
-VerdanturfTown_BattleTentBattleRoom_Movement_202575: @ 8202575
+VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8202575
set_visible
walk_up
walk_up
@@ -161,7 +163,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_202575: @ 8202575
face_right
step_end
-VerdanturfTown_BattleTentBattleRoom_Movement_20257B: @ 820257B
+VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 820257B
walk_down
walk_down
walk_down
@@ -169,7 +171,7 @@ VerdanturfTown_BattleTentBattleRoom_Movement_20257B: @ 820257B
face_left
step_end
-VerdanturfTown_BattleTentBattleRoom_Movement_202581: @ 8202581
+VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8202581
walk_up
walk_up
walk_up
diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
index 719c99d1d..b1dedf1a1 100644
--- a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
@@ -1,21 +1,21 @@
VerdanturfTown_BattleTentCorridor_MapScripts:: @ 820208A
- map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_MapScript2_202090
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_OnFrame
.byte 0
-VerdanturfTown_BattleTentCorridor_MapScript2_202090: @ 8202090
- map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentCorridor_EventScript_20209A
+VerdanturfTown_BattleTentCorridor_OnFrame: @ 8202090
+ map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor
.2byte 0
-VerdanturfTown_BattleTentCorridor_EventScript_20209A:: @ 820209A
+VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor:: @ 820209A
lockall
setvar VAR_TEMP_0, 1
- applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_2020DE
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_2020DE
+ applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_2020E4
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_2020E3
+ applymovement 1, VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor
+ applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor
waitmovement 0
closedoor 2, 1
waitdooranim
@@ -25,22 +25,24 @@ VerdanturfTown_BattleTentCorridor_EventScript_20209A:: @ 820209A
releaseall
end
-VerdanturfTown_BattleTentCorridor_Movement_2020DE: @ 82020DE
+VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor: @ 82020DE
walk_up
walk_up
walk_up
walk_up
step_end
-VerdanturfTown_BattleTentCorridor_Movement_2020E3: @ 82020E3
+VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor: @ 82020E3
walk_up
-
-VerdanturfTown_BattleTentCorridor_Movement_2020E4: @ 82020E4
+VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor: @ 82020E4
walk_up
set_invisible
step_end
-VerdanturfTown_BattleTentCorridor_Text_2020E7: @ 82020E7
+
+@ Leftover text from when this was a Contest Hall in R/S
+@ Unused
+VerdanturfTown_ContestHall_Text_WhichContestYouEntering: @ 82020E7
.string "Which CONTEST are you entering?\n"
.string "Want a piece of advice?\p"
.string "In any CONTEST, for example, a CUTE\n"
@@ -49,21 +51,24 @@ VerdanturfTown_BattleTentCorridor_Text_2020E7: @ 82020E7
.string "You need to work out ways for raising\n"
.string "POKéMON better.$"
-VerdanturfTown_BattleTentCorridor_Text_2021C4: @ 82021C4
+@ Unused
+VerdanturfTown_ContestHall_Text_RaisedMonToBeCute: @ 82021C4
.string "I raised my POKéMON to be cute.\p"
.string "I found out you can put POKéMON in\n"
.string "a CONTEST for cuteness!\p"
.string "I'm so glad I raised my POKéMON with\n"
.string "loving care…$"
-VerdanturfTown_BattleTentCorridor_Text_202251: @ 8202251
+@ Unused
+VerdanturfTown_ContestHall_Text_MyMonRules: @ 8202251
.string "My POKéMON rules!\p"
.string "It's cool, tough yet beautiful, cute,\n"
.string "and smart. It's complete!\p"
.string "I may as well go for wins in every\n"
.string "single CONTEST.$"
-VerdanturfTown_BattleTentCorridor_Text_2022D6: @ 82022D6
+@ Unused
+VerdanturfTown_ContestHall_Text_NormalRankStage: @ 82022D6
.string "POKéMON CONTESTS\n"
.string "NORMAL RANK STAGE!$"
diff --git a/data/maps/VerdanturfTown_BattleTentLobby/map.json b/data/maps/VerdanturfTown_BattleTentLobby/map.json
index ec3dd904d..f04eac473 100644
--- a/data/maps/VerdanturfTown_BattleTentLobby/map.json
+++ b/data/maps/VerdanturfTown_BattleTentLobby/map.json
@@ -24,7 +24,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201873",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_Attendant",
"flag": "0"
},
{
@@ -37,7 +37,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201A7B",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_AttractGiver",
"flag": "0"
},
{
@@ -50,7 +50,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201ABC",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_Boy1",
"flag": "0"
},
{
@@ -63,7 +63,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201AC5",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_Boy2",
"flag": "0"
},
{
@@ -76,7 +76,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201AD0",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_Scott",
"flag": "FLAG_HIDE_VERDANTURF_TOWN_SCOTT"
},
{
@@ -89,7 +89,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201AF7",
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_LittleBoy",
"flag": "0"
}
],
@@ -117,7 +117,7 @@
"y": 5,
"elevation": 0,
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
- "script": "VerdanturfTown_BattleTentLobby_EventScript_201B02"
+ "script": "VerdanturfTown_BattleTentLobby_EventScript_RulesBoard"
}
]
}
diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
index 72f78c0f3..25ed0770f 100644
--- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
@@ -1,30 +1,30 @@
VerdanturfTown_BattleTentLobby_MapScripts:: @ 82016D0
- map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentLobby_MapScript2_2016EF
- map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentLobby_MapScript2_2016DB
+ map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentLobby_OnFrame
+ map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentLobby_OnWarp
.byte 0
-VerdanturfTown_BattleTentLobby_MapScript2_2016DB: @ 82016DB
- map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentLobby_EventScript_2016E5
+VerdanturfTown_BattleTentLobby_OnWarp: @ 82016DB
+ map_script_2 VAR_TEMP_1, 0, VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth
.2byte 0
-VerdanturfTown_BattleTentLobby_EventScript_2016E5:: @ 82016E5
+VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth:: @ 82016E5
setvar VAR_TEMP_1, 1
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
-VerdanturfTown_BattleTentLobby_MapScript2_2016EF: @ 82016EF
- map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_201719
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_201722
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_201837
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_201757
- map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_2017FD
+VerdanturfTown_BattleTentLobby_OnFrame: @ 82016EF
+ map_script_2 VAR_TEMP_0, 0, VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_SAVING, VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_PAUSED, VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_WON, VerdanturfTown_BattleTentLobby_EventScript_WonChallenge
+ map_script_2 VAR_TEMP_0, CHALLENGE_STATUS_LOST, VerdanturfTown_BattleTentLobby_EventScript_LostChallenge
.2byte 0
-VerdanturfTown_BattleTentLobby_EventScript_201719:: @ 8201719
+VerdanturfTown_BattleTentLobby_EventScript_GetChallengeStatus:: @ 8201719
frontier_getstatus
end
-VerdanturfTown_BattleTentLobby_EventScript_201722:: @ 8201722
+VerdanturfTown_BattleTentLobby_EventScript_QuitWithoutSaving:: @ 8201722
lockall
msgbox BattleFrontier_BattlePalaceLobby_Text_FailedToSaveBeforeEndingChallenge, MSGBOX_DEFAULT
closemessage
@@ -34,10 +34,10 @@ VerdanturfTown_BattleTentLobby_EventScript_201722:: @ 8201722
releaseall
end
-VerdanturfTown_BattleTentLobby_EventScript_201757:: @ 8201757
+VerdanturfTown_BattleTentLobby_EventScript_WonChallenge:: @ 8201757
lockall
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5731, MSGBOX_DEFAULT
- message VerdanturfTown_BattleTentLobby_Text_2C5791
+ msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT
+ message VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded
waitmessage
verdanturftent_setrandomprize
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
@@ -45,23 +45,23 @@ VerdanturfTown_BattleTentLobby_EventScript_201757:: @ 8201757
playse SE_SAVE
waitse
-VerdanturfTown_BattleTentLobby_EventScript_201791:: @ 8201791
- msgbox VerdanturfTown_BattleTentLobby_Text_2C57CD, MSGBOX_DEFAULT
+VerdanturfTown_BattleTentLobby_EventScript_GivePrize:: @ 8201791
+ msgbox VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize, MSGBOX_DEFAULT
verdanturftent_giveprize
switch VAR_RESULT
- case 0, VerdanturfTown_BattleTentLobby_EventScript_2017DD
+ case FALSE, VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- message VerdanturfTown_BattleTentLobby_Text_24A554
+ message BattleFrontier_BattleDomeLobby_Text_ReceivedPrize @ Odd that it used Dome's copy instead of Palace's
waitmessage
playfanfare MUS_FANFA4
waitfanfare
- msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-VerdanturfTown_BattleTentLobby_EventScript_2017DD:: @ 82017DD
+VerdanturfTown_BattleTentLobby_EventScript_NoRoomForPrize:: @ 82017DD
msgbox BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize, MSGBOX_DEFAULT
waitmessage
closemessage
@@ -69,27 +69,27 @@ VerdanturfTown_BattleTentLobby_EventScript_2017DD:: @ 82017DD
releaseall
end
-VerdanturfTown_BattleTentLobby_EventScript_2017EE:: @ 82017EE
+VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting:: @ 82017EE
lockall
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5731, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201791
+ msgbox VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_GivePrize
end
-VerdanturfTown_BattleTentLobby_EventScript_2017FD:: @ 82017FD
+VerdanturfTown_BattleTentLobby_EventScript_LostChallenge:: @ 82017FD
lockall
- message VerdanturfTown_BattleTentLobby_Text_2C56B8
+ message VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded
waitmessage
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_50
verdanturftent_save 0
playse SE_SAVE
waitse
- msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT
closemessage
setvar VAR_TEMP_0, 255
releaseall
end
-VerdanturfTown_BattleTentLobby_EventScript_201837:: @ 8201837
+VerdanturfTown_BattleTentLobby_EventScript_ResumeChallenge:: @ 8201837
lockall
msgbox BattleFrontier_BattlePalaceLobby_Text_WeHaveBeenWaiting, MSGBOX_DEFAULT
message BattleFrontier_BattlePalaceLobby_Text_MustSaveBeforeChallenge
@@ -99,50 +99,49 @@ VerdanturfTown_BattleTentLobby_EventScript_201837:: @ 8201837
waitse
frontier_set FRONTIER_DATA_PAUSED, FALSE
setvar VAR_TEMP_0, 255
- goto VerdanturfTown_BattleTentLobby_EventScript_2019AE
+ goto VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge
-VerdanturfTown_BattleTentLobby_EventScript_201873:: @ 8201873
+VerdanturfTown_BattleTentLobby_EventScript_Attendant:: @ 8201873
lock
faceplayer
verdanturftent_getprize
- compare VAR_RESULT, 0
- goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_2017EE
+ compare VAR_RESULT, ITEM_NONE
+ goto_if_ne VerdanturfTown_BattleTentLobby_EventScript_PrizeWaiting
special SavePlayerParty
- msgbox VerdanturfTown_BattleTentLobby_Text_2C50C3, MSGBOX_DEFAULT
-
-VerdanturfTown_BattleTentLobby_EventScript_201893:: @ 8201893
- message VerdanturfTown_BattleTentLobby_Text_2C5129
+ msgbox VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent, MSGBOX_DEFAULT
+VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge:: @ 8201893
+ message VerdanturfTown_BattleTentLobby_Text_TakeChallenge
waitmessage
multichoice 17, 6, MULTI_CHALLENGEINFO, 0
switch VAR_RESULT
- case 0, VerdanturfTown_BattleTentLobby_EventScript_2018CF
- case 1, VerdanturfTown_BattleTentLobby_EventScript_2019DB
- case 2, VerdanturfTown_BattleTentLobby_EventScript_201A37
- case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201A37
+ case 0, VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge
+ case 1, VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge
+ case 2, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge
+ case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge
-VerdanturfTown_BattleTentLobby_EventScript_2018CF:: @ 82018CF
+VerdanturfTown_BattleTentLobby_EventScript_TryEnterChallenge:: @ 82018CF
setvar VAR_FRONTIER_FACILITY, FRONTIER_FACILITY_PALACE
setvar VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES
setvar VAR_RESULT, 2
frontier_checkineligible
compare VAR_0x8004, TRUE
- goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_2019E8
+ goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons
frontier_set FRONTIER_DATA_LVL_MODE, FRONTIER_LVL_TENT
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5633, MSGBOX_DEFAULT
- fadescreen 1
+ msgbox VerdanturfTown_BattleTentLobby_Text_SelectThreeMons, MSGBOX_DEFAULT
+ fadescreen FADE_TO_BLACK
setvar VAR_0x8004, 1
setvar VAR_0x8005, FRONTIER_PARTY_SIZE
special ChoosePartyForBattleFrontier
waitstate
compare VAR_RESULT, 0
- goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_201A34
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5662, MSGBOX_YESNO
+ goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
+ msgbox VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge, MSGBOX_YESNO
switch VAR_RESULT
- case NO, VerdanturfTown_BattleTentLobby_EventScript_201A34
- case YES, VerdanturfTown_BattleTentLobby_EventScript_201954
- case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201A34
+ case NO, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
+ case YES, VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge
+ case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge
-VerdanturfTown_BattleTentLobby_EventScript_201954:: @ 8201954
+VerdanturfTown_BattleTentLobby_EventScript_SaveBeforeChallenge:: @ 8201954
setvar VAR_TEMP_0, 0
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
verdanturftent_init
@@ -154,185 +153,184 @@ VerdanturfTown_BattleTentLobby_EventScript_201954:: @ 8201954
call Common_EventScript_SaveGame
setvar VAR_TEMP_0, 255
compare VAR_RESULT, 0
- goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_201A1D
-
-VerdanturfTown_BattleTentLobby_EventScript_2019AE:: @ 82019AE
+ goto_if_eq VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed
+VerdanturfTown_BattleTentLobby_EventScript_EnterChallenge:: @ 82019AE
special SavePlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
- msgbox VerdanturfTown_BattleTentLobby_Text_2C56A2, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_NowFollowMe, MSGBOX_DEFAULT
closemessage
- call VerdanturfTown_BattleTentLobby_EventScript_201A41
+ call VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor
warp MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR, 255, 2, 7
setvar VAR_TEMP_0, 0
waitstate
end
-VerdanturfTown_BattleTentLobby_EventScript_2019DB:: @ 82019DB
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5163, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201893
+VerdanturfTown_BattleTentLobby_EventScript_ExplainChallenge:: @ 82019DB
+ msgbox VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_AskEnterChallenge
-VerdanturfTown_BattleTentLobby_EventScript_2019E8:: @ 82019E8
+VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMons:: @ 82019E8
switch VAR_RESULT
- case FRONTIER_LVL_50, VerdanturfTown_BattleTentLobby_EventScript_201A03
- case FRONTIER_LVL_OPEN, VerdanturfTown_BattleTentLobby_EventScript_201A10
+ case FRONTIER_LVL_50, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50
+ case FRONTIER_LVL_OPEN, VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen
-VerdanturfTown_BattleTentLobby_EventScript_201A03:: @ 8201A03
- msgbox VerdanturfTown_BattleTentLobby_Text_2C543D, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201A3F
+VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLv50:: @ 8201A03
+ msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge
-VerdanturfTown_BattleTentLobby_EventScript_201A10:: @ 8201A10
- msgbox VerdanturfTown_BattleTentLobby_Text_2C5538, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201A3F
+VerdanturfTown_BattleTentLobby_EventScript_NotEnoughValidMonsLvOpen:: @ 8201A10
+ msgbox VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge
-VerdanturfTown_BattleTentLobby_EventScript_201A1D:: @ 8201A1D
+VerdanturfTown_BattleTentLobby_EventScript_CancelChallengeSaveFailed:: @ 8201A1D
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
- goto VerdanturfTown_BattleTentLobby_EventScript_201A37
+ goto VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge
-VerdanturfTown_BattleTentLobby_EventScript_201A34:: @ 8201A34
+VerdanturfTown_BattleTentLobby_EventScript_LoadPartyCancelChallenge:: @ 8201A34
special LoadPlayerParty
-VerdanturfTown_BattleTentLobby_EventScript_201A37:: @ 8201A37
- msgbox VerdanturfTown_BattleTentLobby_Text_2C539A, MSGBOX_DEFAULT
-VerdanturfTown_BattleTentLobby_EventScript_201A3F:: @ 8201A3F
+VerdanturfTown_BattleTentLobby_EventScript_CancelChallenge:: @ 8201A37
+ msgbox VerdanturfTown_BattleTentLobby_Text_ReturnFortified, MSGBOX_DEFAULT
+VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge:: @ 8201A3F
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201A41:: @ 8201A41
- applymovement 1, VerdanturfTown_BattleTentLobby_Movement_201A70
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_201A70
+VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor:: @ 8201A41
+ applymovement 1, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
+ applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement 1, VerdanturfTown_BattleTentLobby_Movement_201A74
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_201A77
+ applymovement 1, VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
return
-VerdanturfTown_BattleTentLobby_Movement_201A70: @ 8201A70
+VerdanturfTown_BattleTentLobby_Movement_WalkToDoor: @ 8201A70
walk_up
walk_up
walk_up
step_end
-VerdanturfTown_BattleTentLobby_Movement_201A74: @ 8201A74
+VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor: @ 8201A74
walk_up
set_invisible
step_end
-VerdanturfTown_BattleTentLobby_Movement_201A77: @ 8201A77
+VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor: @ 8201A77
walk_up
walk_up
set_invisible
step_end
-VerdanturfTown_BattleTentLobby_EventScript_201A7B:: @ 8201A7B
+VerdanturfTown_BattleTentLobby_EventScript_AttractGiver:: @ 8201A7B
lock
faceplayer
- goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_201AB2
- msgbox VerdanturfTown_BattleTentLobby_Text_201D9E, MSGBOX_DEFAULT
+ goto_if_set FLAG_RECEIVED_TM45, VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract
+ msgbox VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep, MSGBOX_DEFAULT
giveitem_std ITEM_TM45
compare VAR_RESULT, 0
goto_if_eq Common_EventScript_ShowBagIsFull
setflag FLAG_RECEIVED_TM45
- msgbox VerdanturfTown_BattleTentLobby_Text_201E43, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201AB2:: @ 8201AB2
- msgbox VerdanturfTown_BattleTentLobby_Text_201E43, MSGBOX_DEFAULT
+VerdanturfTown_BattleTentLobby_EventScript_ReceivedAttract:: @ 8201AB2
+ msgbox VerdanturfTown_BattleTentLobby_Text_AttractionMutual, MSGBOX_DEFAULT
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201ABC:: @ 8201ABC
- msgbox VerdanturfTown_BattleTentLobby_Text_201EB1, MSGBOX_NPC
+VerdanturfTown_BattleTentLobby_EventScript_Boy1:: @ 8201ABC
+ msgbox VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves, MSGBOX_NPC
end
-VerdanturfTown_BattleTentLobby_EventScript_201AC5:: @ 8201AC5
+VerdanturfTown_BattleTentLobby_EventScript_Boy2:: @ 8201AC5
lock
- msgbox VerdanturfTown_BattleTentLobby_Text_201BD4, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves, MSGBOX_DEFAULT
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201AD0:: @ 8201AD0
+VerdanturfTown_BattleTentLobby_EventScript_Scott:: @ 8201AD0
lock
faceplayer
- goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_201AED
- msgbox VerdanturfTown_BattleTentLobby_Text_201F3F, MSGBOX_DEFAULT
+ goto_if_set FLAG_MET_SCOTT_IN_VERDANTURF, VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo
+ msgbox VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers, MSGBOX_DEFAULT
addvar VAR_SCOTT_STATE, 1
setflag FLAG_MET_SCOTT_IN_VERDANTURF
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201AED:: @ 8201AED
- msgbox VerdanturfTown_BattleTentLobby_Text_202025, MSGBOX_DEFAULT
+VerdanturfTown_BattleTentLobby_EventScript_ScottAlreadySpokenTo:: @ 8201AED
+ msgbox VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly, MSGBOX_DEFAULT
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201AF7:: @ 8201AF7
+VerdanturfTown_BattleTentLobby_EventScript_LittleBoy:: @ 8201AF7
lock
- msgbox VerdanturfTown_BattleTentLobby_Text_201D11, MSGBOX_DEFAULT
+ msgbox VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry, MSGBOX_DEFAULT
release
end
-VerdanturfTown_BattleTentLobby_EventScript_201B02:: @ 8201B02
+VerdanturfTown_BattleTentLobby_EventScript_RulesBoard:: @ 8201B02
lockall
- msgbox VerdanturfTown_BattleTentLobby_Text_2C6878, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ msgbox VerdanturfTown_BattleTentLobby_Text_RulesAreListed, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201B11:: @ 8201B11
+VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard:: @ 8201B11
message BattleFrontier_BattlePalaceLobby_Text_ReadWhichHeading
waitmessage
setvar VAR_0x8004, SCROLL_MULTI_BATTLE_TENT_RULES
special ShowScrollableMultichoice
waitstate
switch VAR_RESULT
- case 0, VerdanturfTown_BattleTentLobby_EventScript_201B7E
- case 1, VerdanturfTown_BattleTentLobby_EventScript_201B8C
- case 2, VerdanturfTown_BattleTentLobby_EventScript_201B9A
- case 3, VerdanturfTown_BattleTentLobby_EventScript_201BA8
- case 4, VerdanturfTown_BattleTentLobby_EventScript_201BB6
- case 5, VerdanturfTown_BattleTentLobby_EventScript_201BC4
- case 6, VerdanturfTown_BattleTentLobby_EventScript_201BD2
- case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_201BD2
+ case 0, VerdanturfTown_BattleTentLobby_EventScript_RulesLevel
+ case 1, VerdanturfTown_BattleTentLobby_EventScript_RulesBasics
+ case 2, VerdanturfTown_BattleTentLobby_EventScript_RulesNature
+ case 3, VerdanturfTown_BattleTentLobby_EventScript_RulesMoves
+ case 4, VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered
+ case 5, VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger
+ case 6, VerdanturfTown_BattleTentLobby_EventScript_ExitRules
+ case MULTI_B_PRESSED, VerdanturfTown_BattleTentLobby_EventScript_ExitRules
end
-VerdanturfTown_BattleTentLobby_EventScript_201B7E:: @ 8201B7E
- msgbox VerdanturfTown_BattleTentLobby_Text_2C67CD, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+VerdanturfTown_BattleTentLobby_EventScript_RulesLevel:: @ 8201B7E
+ msgbox BattleTentLobby_Text_ExplainLevelRules, MSGBOX_DEFAULT
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201B8C:: @ 8201B8C
+VerdanturfTown_BattleTentLobby_EventScript_RulesBasics:: @ 8201B8C
msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesBasics, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201B9A:: @ 8201B9A
+VerdanturfTown_BattleTentLobby_EventScript_RulesNature:: @ 8201B9A
msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesNature, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201BA8:: @ 8201BA8
+VerdanturfTown_BattleTentLobby_EventScript_RulesMoves:: @ 8201BA8
msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesMoves, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201BB6:: @ 8201BB6
+VerdanturfTown_BattleTentLobby_EventScript_RulesUnderpowered:: @ 8201BB6
msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesUnderpowered, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201BC4:: @ 8201BC4
+VerdanturfTown_BattleTentLobby_EventScript_RulesWhenInDanger:: @ 8201BC4
msgbox BattleFrontier_BattlePalaceLobby_Text_ExplainRulesWhenInDanger, MSGBOX_DEFAULT
- goto VerdanturfTown_BattleTentLobby_EventScript_201B11
+ goto VerdanturfTown_BattleTentLobby_EventScript_ReadRulesBoard
end
-VerdanturfTown_BattleTentLobby_EventScript_201BD2:: @ 8201BD2
+VerdanturfTown_BattleTentLobby_EventScript_ExitRules:: @ 8201BD2
releaseall
end
-VerdanturfTown_BattleTentLobby_Text_201BD4: @ 8201BD4
+VerdanturfTown_BattleTentLobby_Text_MonsReluctantToUseDislikedMoves: @ 8201BD4
.string "If it doesn't like a certain move,\n"
.string "a POKéMON will be reluctant to use it.\p"
.string "It doesn't matter how strong it is,\n"
@@ -344,14 +342,14 @@ VerdanturfTown_BattleTentLobby_Text_201BD4: @ 8201BD4
.string "potential, it's probably failing at\l"
.string "using a disliked move against its will.$"
-VerdanturfTown_BattleTentLobby_Text_201D11: @ 8201D11
+VerdanturfTown_BattleTentLobby_Text_GentleMonsScaryIfAngry: @ 8201D11
.string "My big sister is gentle usually.\n"
.string "But when she gets angry,\l"
.string "she's really, really scary!\p"
.string "I bet a gentle POKéMON will be scary\n"
.string "if it gets angry!$"
-VerdanturfTown_BattleTentLobby_Text_201D9E: @ 8201D9E
+VerdanturfTown_BattleTentLobby_Text_AttractionRunsDeep: @ 8201D9E
.string "My feelings toward my POKéMON…\n"
.string "The attraction runs deep…\p"
.string "Oh, hi, you didn't see that, did you?\n"
@@ -359,20 +357,20 @@ VerdanturfTown_BattleTentLobby_Text_201D9E: @ 8201D9E
.string "How would you like this TM for\n"
.string "your POKéMON?$"
-VerdanturfTown_BattleTentLobby_Text_201E43: @ 8201E43
+VerdanturfTown_BattleTentLobby_Text_AttractionMutual: @ 8201E43
.string "My feelings toward my POKéMON…\n"
.string "I'm sure the attraction is mutual!\p"
.string "They battle exactly the way I want\n"
.string "them to!$"
-VerdanturfTown_BattleTentLobby_Text_201EB1: @ 8201EB1
+VerdanturfTown_BattleTentLobby_Text_TaughtWhatKindsOfMoves: @ 8201EB1
.string "What kind of moves have you taught\n"
.string "your POKéMON?\p"
.string "I think you would give yourself\n"
.string "an advantage if they knew how to\l"
.string "heal or protect themselves.$"
-VerdanturfTown_BattleTentLobby_Text_201F3F: @ 8201F3F
+VerdanturfTown_BattleTentLobby_Text_ScottCanMeetToughTrainers: @ 8201F3F
.string "SCOTT: Hey there, {PLAYER}{KUN}!\n"
.string "I thought I might see you here.\p"
.string "A BATTLE TENT's a place where\n"
@@ -382,7 +380,7 @@ VerdanturfTown_BattleTentLobby_Text_201F3F: @ 8201F3F
.string "{PLAYER}{KUN}, I expect you to do\n"
.string "the best you can!$"
-VerdanturfTown_BattleTentLobby_Text_202025: @ 8202025
+VerdanturfTown_BattleTentLobby_Text_ScottVisitRegularly: @ 8202025
.string "SCOTT: I visit here regularly in hopes\n"
.string "of seeing tough TRAINERS in action\l"
.string "in whatever the situation.$"
diff --git a/data/scripts/abnormal_weather.inc b/data/scripts/abnormal_weather.inc
index 9a900f315..88da0405f 100644
--- a/data/scripts/abnormal_weather.inc
+++ b/data/scripts/abnormal_weather.inc
@@ -179,7 +179,7 @@ AbnormalWeather_EventScript_EndEventAndCleanup_1:: @ 8273D1F
AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31
closemessage
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
setweather WEATHER_SUNNY
doweather
call AbnormalWeather_EventScript_CleanupMapTiles
@@ -187,7 +187,7 @@ AbnormalWeather_EventScript_EndEventAndCleanup_2:: @ 8273D31
setvar VAR_ABNORMAL_WEATHER_LOCATION, ABNORMAL_WEATHER_NONE
setvar VAR_SHOULD_END_ABNORMAL_WEATHER, 0
clearflag FLAG_HIDE_MAP_NAME_POPUP
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
releaseall
end
diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc
index 53b43a1f9..b3ae904a0 100644
--- a/data/scripts/apprentice.inc
+++ b/data/scripts/apprentice.inc
@@ -96,7 +96,7 @@ Apprentice_EventScript_UseWhatHeldItem: @ 82B6ACF
apprentice_msg TRUE, APPRENTICE_MSG_WHAT_HELD_ITEM
apprentice_freequestion
Apprentice_EventScript_ChooseHoldItem: @ 82B6B09
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_RESULT, 0
apprentice_openbag
compare VAR_RESULT, FALSE
diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc
index eecd08273..1af0b996c 100644
--- a/data/scripts/berry_blender.inc
+++ b/data/scripts/berry_blender.inc
@@ -302,7 +302,7 @@ BerryBlender_EventScript_TryUseBerryBlender1: @ 8293CEE
@ VAR_0x8009 here is the Blender number. 1 is top right, 2 is bottom right, 3 is bottom left
BerryBlender_EventScript_DoBerryBlending: @ 8293D2C
copyvar VAR_0x8004, VAR_0x8009
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special DoBerryBlending
waitstate
releaseall
@@ -629,7 +629,7 @@ BerryBlender_EventScript_FourPlayerLink: @ 8294139
BerryBlender_EventScript_DoLinkBerryBlending: @ 8294147
setvar VAR_0x8004, 0
- fadescreen 1
+ fadescreen FADE_TO_BLACK
removeobject 240
removeobject 239
removeobject 238
@@ -678,7 +678,7 @@ BerryBlender_EventScript_LinkError: @ 829419D
end
BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA
- fadescreen 1
+ fadescreen FADE_TO_BLACK
specialvar VAR_RESULT, GetLinkPartnerNames
copyvar VAR_0x8008, VAR_RESULT
copyvar VAR_0x8004, VAR_0x8008
@@ -687,7 +687,7 @@ BerryBlender_EventScript_SpawnLinkPartners: @ 82941AA
end
BerryBlender_EventScript_LinkPlayersArrived: @ 82941C4
- fadescreen 0
+ fadescreen FADE_FROM_BLACK
switch VAR_0x8008
case 2, BerryBlender_EventScript_TwoPlayerLink
case 3, BerryBlender_EventScript_ThreePlayerLink
diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc
index 354aa045e..13d242468 100644
--- a/data/scripts/berry_tree.inc
+++ b/data/scripts/berry_tree.inc
@@ -39,7 +39,7 @@ BerryTree_EventScript_WantToPlant:: @ 8274374
end
BerryTree_EventScript_ChooseBerryToPlant:: @ 8274393
- fadescreen 1
+ fadescreen FADE_TO_BLACK
closemessage
special Bag_ChooseBerry
waitstate
diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc
index e4e0f0ffd..c5bdca46d 100644
--- a/data/scripts/cable_club.inc
+++ b/data/scripts/cable_club.inc
@@ -723,7 +723,7 @@ EventScript_BattleColosseum2P_PlayerSpot1:: @ 827737E
end
EventScript_BattleColosseum4P_PlayerSpot0:: @ 8277388
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
compare VAR_RESULT, 0
@@ -734,7 +734,7 @@ EventScript_BattleColosseum4P_PlayerSpot0:: @ 8277388
end
EventScript_BattleColosseum4P_PlayerSpot1:: @ 82773A3
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
compare VAR_RESULT, 0
@@ -745,7 +745,7 @@ EventScript_BattleColosseum4P_PlayerSpot1:: @ 82773A3
end
EventScript_BattleColosseum4P_PlayerSpot2:: @ 82773BE
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
compare VAR_RESULT, 0
@@ -756,7 +756,7 @@ EventScript_BattleColosseum4P_PlayerSpot2:: @ 82773BE
end
EventScript_BattleColosseum4P_PlayerSpot3:: @ 82773D9
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseHalfPartyForBattle
waitstate
compare VAR_RESULT, 0
@@ -838,14 +838,14 @@ RecordCorner_EventScript_ReceivedGiftItem:: @ 8277471
CableClub_EventScript_ReadTrainerCard:: @ 827747E
msgbox CableClub_Text_GotToLookAtTrainerCard, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special Script_ShowLinkTrainerCard
waitstate
end
CableClub_EventScript_ReadTrainerCardColored:: @ 827748D
msgbox CableClub_Text_GotToLookAtColoredTrainerCard, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special Script_ShowLinkTrainerCard
waitstate
end
@@ -1309,7 +1309,7 @@ EventScript_WirelessBoxResults:: @ 8277B8A
specialvar VAR_RESULT, IsWirelessAdapterConnected
compare VAR_RESULT, FALSE
goto_if_eq CableClub_EventScript_AdapterNotConnected
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special sub_801A42C
waitstate
msgbox CableClub_Text_ParticipantsStepUpToCounter, MSGBOX_DEFAULT
@@ -1408,7 +1408,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayPokemonJump:: @ 8277CE9
compare VAR_RESULT, FALSE
goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon
msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_0x8005, 0
special ChooseMonForWirelessMinigame
waitstate
@@ -1427,7 +1427,7 @@ MossdeepCity_GameCorner_1F_EventScript_PlayDodrioBerryPicking:: @ 8277D35
compare VAR_RESULT, FALSE
goto_if_eq MossdeepCity_GameCorner_1F_EventScript_DontHaveRequiredMon
msgbox MossdeepCity_GameCorner_1F_Text_EnterWhichPokemon, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_0x8005, 1
special ChooseMonForWirelessMinigame
waitstate
diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc
index 968464f9d..6506897ee 100644
--- a/data/scripts/day_care.inc
+++ b/data/scripts/day_care.inc
@@ -102,7 +102,7 @@ Route117_PokemonDayCare_EventScript_GiveMonToRaise:: @ 8291D56
compare VAR_RESULT, 2
goto_if_eq Route117_PokemonDayCare_EventScript_OnlyTwoAliveMons
msgbox Route117_PokemonDayCare_Text_WhichMonShouldWeRaise, MSGBOX_DEFAULT
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChooseSendDaycareMon
waitstate
compare VAR_0x8004, 255
diff --git a/data/scripts/field_poison.inc b/data/scripts/field_poison.inc
index ccdebd5cd..3ce36b384 100644
--- a/data/scripts/field_poison.inc
+++ b/data/scripts/field_poison.inc
@@ -15,7 +15,7 @@ EventScript_FieldWhiteOut:: @ 82736D9
waitbuttonpress
special Script_FadeOutMapMusic
waitstate
- fadescreen 1
+ fadescreen FADE_TO_BLACK
call_if_set FLAG_WHITEOUT_TO_LAVARIDGE, EventScript_SetRespawnLavaridgePkmnCenter
special SetCB2WhiteOut
waitstate
@@ -42,7 +42,7 @@ EventScript_FrontierFieldWhiteOut:: @ 82736F8
goto_if_eq TrainerHill_1F_EventScript_Lost
special Script_FadeOutMapMusic
waitstate
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special SetCB2WhiteOut
waitstate
end
diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc
index f553ea0ad..c2ff593cf 100644
--- a/data/scripts/lilycove_lady.inc
+++ b/data/scripts/lilycove_lady.inc
@@ -73,7 +73,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_AcceptFavor:: @ 82A845E
end
LilycoveCity_PokemonCenter_1F_EventScript_ChooseFavorItem:: @ 82A846C
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_RESULT, 0
special Script_FavorLadyOpenBagMenu
waitstate
@@ -326,7 +326,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_DeclineMakeQuiz:: @ 82A8778
LilycoveCity_PokemonCenter_1F_EventScript_MakeQuiz:: @ 82A8785
msgbox LilycoveCity_PokemonCenter_1F_Text_PickYourPrize, MSGBOX_DEFAULT
LilycoveCity_PokemonCenter_1F_EventScript_PickPrize:: @ 82A878D
- fadescreen 1
+ fadescreen FADE_TO_BLACK
setvar VAR_RESULT, 0
special Script_QuizLadyOpenBagMenu
waitstate
@@ -350,7 +350,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_WriteQuiz:: @ 82A87CE
special ClearQuizLadyPlayerAnswer
setvar VAR_0x8004, EASY_CHAT_TYPE_QUIZ_QUESTION
LilycoveCity_PokemonCenter_1F_EventScript_WriteQuizQuestion:: @ 82A87E1
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special QuizLadySetCustomQuestion
waitstate
compare VAR_RESULT, 0
@@ -418,7 +418,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_DeclineGivePokeblock:: @ 82A88B0
end
LilycoveCity_PokemonCenter_1F_EventScript_ChoosePokeblock:: @ 82A88BA
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special OpenPokeblockCaseForContestLady
waitstate
compare VAR_RESULT, 0xFFFF
diff --git a/data/scripts/pc_transfer.inc b/data/scripts/pc_transfer.inc
index cc583022d..ec58b26f1 100644
--- a/data/scripts/pc_transfer.inc
+++ b/data/scripts/pc_transfer.inc
@@ -6,7 +6,7 @@ Common_EventScript_GetGiftMonPartySlot:: @ 827378B
return
Common_EventScript_NameReceivedBoxMon:: @ 8273797
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special ChangeBoxPokemonNickname
waitstate
lock
diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc
index 9e9b23c04..6adcf061b 100644
--- a/data/scripts/players_house.inc
+++ b/data/scripts/players_house.inc
@@ -101,14 +101,14 @@ PlayersHouse_2F_EventScript_MomComesUpstairsFemale:: @ 829280F
PlayersHouse_2F_EventScript_CheckWallClock:: @ 829283F
incrementgamestat GAME_STAT_CHECKED_CLOCK
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special Special_ViewWallClock
waitstate
releaseall
end
PlayersHouse_2F_EventScript_SetWallClock:: @ 8292849
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special StartWallClock
waitstate
return
diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc
index 72d1d3c92..6a811d935 100644
--- a/data/scripts/safari_zone.inc
+++ b/data/scripts/safari_zone.inc
@@ -52,7 +52,7 @@ EventScript_PokeBlockFeeder:: @ 82A4BAC
end
SafariZone_EventScript_ChoosePokeblock:: @ 82A4BD0
- fadescreen 1
+ fadescreen FADE_TO_BLACK
special OpenPokeblockCaseOnFeeder
waitstate
compare VAR_RESULT, 0xFFFF
diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc
index e92c419dc..523eef39b 100644
--- a/data/scripts/secret_base.inc
+++ b/data/scripts/secret_base.inc
@@ -214,10 +214,10 @@ SecretBase_EventScript_AlreadyHasSecretBase:: @ 8275BE8
msgbox SecretBase_Text_AllDecorationsWillBeReturned, MSGBOX_YESNO
compare VAR_RESULT, NO
goto_if_eq SecretBase_EventScript_CancelOnEntrance
- fadescreenswapbuffers 1
+ fadescreenswapbuffers FADE_TO_BLACK
special MoveOutOfSecretBaseFromOutside
closemessage
- fadescreenswapbuffers 0
+ fadescreenswapbuffers FADE_FROM_BLACK
msgbox SecretBase_Text_MovingCompletedUseSecretPower, MSGBOX_YESNO
compare VAR_RESULT, NO
goto_if_eq SecretBase_EventScript_CancelOnEntrance
diff --git a/data/text/battle_tent.inc b/data/text/battle_tent.inc
index 48ea8f4d5..98aa689ce 100644
--- a/data/text/battle_tent.inc
+++ b/data/text/battle_tent.inc
@@ -1,17 +1,17 @@
-FallarborTown_BattleTentLobby_Text_2C47EB: @ 82C47EB
+FallarborTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C47EB
.string "I welcome you to the BATTLE TENT\n"
.string "FALLARBOR SITE!\p"
.string "I am your guide to the Set KO Tourney!$"
-FallarborTown_BattleTentLobby_Text_2C4843: @ 82C4843
+FallarborTown_BattleTentLobby_Text_TakeChallenge: @ 82C4843
.string "Now, do you wish to take the challenge\n"
.string "of a Set KO Tourney?$"
-FallarborTown_BattleTentLobby_Text_2C487F: @ 82C487F
+FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge: @ 82C487F
.string "We await your challenge on\n"
.string "another occasion!$"
-FallarborTown_BattleTentLobby_Text_2C48AC: @ 82C48AC
+FallarborTown_BattleTentLobby_Text_ExplainFallarborTent: @ 82C48AC
.string "In the FALLARBOR BATTLE TENT,\n"
.string "we undertake the Set KO Tourney.\p"
.string "All participants enter with a team of\n"
@@ -32,20 +32,21 @@ FallarborTown_BattleTentLobby_Text_2C48AC: @ 82C48AC
.string "three TRAINERS in succession,\l"
.string "we will present you with a fine prize.$"
-FallarborTown_BattleTentLobby_Text_2C4B35: @ 82C4B35
+FallarborTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C4B35
.string "Before showing you to the BATTLE\n"
.string "TENT, I must save. Is that okay?$"
-FallarborTown_BattleTentLobby_Text_2C4B77: @ 82C4B77
+@ Unused
+FallarborTown_BattleTentLobby_Text_WhichLevelMode: @ 82C4B77
.string "We offer two levels of challenge,\n"
.string "Level 50 and Open Level.\l"
.string "Which is your choice?$"
-FallarborTown_BattleTentLobby_Text_2C4BC8: @ 82C4BC8
+FallarborTown_BattleTentLobby_Text_SelectThreeMons: @ 82C4BC8
.string "Very well, now select your\n"
.string "three POKéMON, please.$"
-FallarborTown_BattleTentLobby_Text_2C4BFA: @ 82C4BFA
+FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C4BFA
.string "My dear challenger!\p"
.string "You do not have the three POKéMON\n"
.string "required for entry.\p"
@@ -55,7 +56,7 @@ FallarborTown_BattleTentLobby_Text_2C4BFA: @ 82C4BFA
.string "When you have made your preparations,\n"
.string "please do return.$"
-FallarborTown_BattleTentLobby_Text_2C4CC0: @ 82C4CC0
+FallarborTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C4CC0
.string "My dear challenger!\p"
.string "You do not have the three POKéMON\n"
.string "required for entry.\p"
@@ -67,11 +68,11 @@ FallarborTown_BattleTentLobby_Text_2C4CC0: @ 82C4CC0
.string "When you have made your preparations,\n"
.string "please do return.$"
-FallarborTown_BattleTentLobby_Text_2C4DC3: @ 82C4DC3
+FallarborTown_BattleTentLobby_Text_GuideYouToBattleTent: @ 82C4DC3
.string "I shall now guide you to\n"
.string "the BATTLE TENT.$"
-FallarborTown_BattleTentLobby_Text_2C4DED: @ 82C4DED
+FallarborTown_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C4DED
.string "My dear challenger!\p"
.string "You did not save the game before\n"
.string "shutting down, did you?\p"
@@ -81,52 +82,52 @@ FallarborTown_BattleTentLobby_Text_2C4DED: @ 82C4DED
.string "You may, of course, start with a fresh\n"
.string "challenge.$"
-FallarborTown_BattleTentLobby_Text_2C4EC3: @ 82C4EC3
+FallarborTown_BattleTentLobby_Text_BeatThreeTrainers: @ 82C4EC3
.string "How splendid! You have beaten\n"
.string "three TRAINERS in succession!$"
-FallarborTown_BattleTentLobby_Text_2C4EFF: @ 82C4EFF
+FallarborTown_BattleTentLobby_Text_WaitWhileSaveGame: @ 82C4EFF
.string "Please wait while I save the game.$"
-FallarborTown_BattleTentLobby_Text_2C4F22: @ 82C4F22
+FallarborTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C4F22
.string "In commemoration of your 3-win streak,\n"
.string "we present you with this prize.$"
-FallarborTown_BattleTentLobby_Text_2C4F69: @ 82C4F69
+FallarborTown_BattleTentLobby_Text_ReceivedPrize: @ 82C4F69
.string "{PLAYER} received the prize\n"
.string "{STR_VAR_1}.$"
-FallarborTown_BattleTentLobby_Text_2C4F83: @ 82C4F83
+FallarborTown_BattleTentLobby_Text_BagFullReturnForPrize: @ 82C4F83
.string "Oh?\n"
.string "Your BAG seems to be full.\p"
.string "I urge you to clear space and\n"
.string "return for your prize.$"
-FallarborTown_BattleTentLobby_Text_2C4FD7: @ 82C4FD7
+FallarborTown_BattleTentLobby_Text_ThankYouWaitWhileSaving: @ 82C4FD7
.string "Thank you so much for participating!\p"
.string "Please wait while I save the game.$"
-FallarborTown_BattleTentLobby_Text_2C501F: @ 82C501F
+FallarborTown_BattleTentLobby_Text_AwaitAnotherChallenge2: @ 82C501F
.string "We await your challenge on\n"
.string "another occasion!$"
-FallarborTown_BattleTentLobby_Text_2C504C: @ 82C504C
+FallarborTown_BattleTentLobby_Text_LookingForwardToArrival: @ 82C504C
.string "We have been looking forward to\n"
.string "your arrival.\p"
.string "Before I show you to the BATTLE TENT,\n"
.string "I must save the game. Please wait.$"
-VerdanturfTown_BattleTentLobby_Text_2C50C3: @ 82C50C3
+VerdanturfTown_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C50C3
.string "I welcome you to the BATTLE TENT\n"
.string "VERDANTURF SITE!\p"
.string "Here, the TRAINER's trust toward\n"
.string "POKéMON is tested.$"
-VerdanturfTown_BattleTentLobby_Text_2C5129: @ 82C5129
+VerdanturfTown_BattleTentLobby_Text_TakeChallenge: @ 82C5129
.string "Do you wish to take the VERDANTURF\n"
.string "BATTLE TENT challenge?$"
-VerdanturfTown_BattleTentLobby_Text_2C5163: @ 82C5163
+VerdanturfTown_BattleTentLobby_Text_ExplainVerdanturfTent: @ 82C5163
.string "In the VERDANTURF BATTLE TENT,\n"
.string "there is one crucial rule that must\l"
.string "be obeyed.\p"
@@ -146,16 +147,17 @@ VerdanturfTown_BattleTentLobby_Text_2C5163: @ 82C5163
.string "If you don't save before interrupting,\n"
.string "you will be disqualified.$"
-VerdanturfTown_BattleTentLobby_Text_2C539A: @ 82C539A
+VerdanturfTown_BattleTentLobby_Text_ReturnFortified: @ 82C539A
.string "When you have fortified your heart\n"
.string "and POKéMON, you must return.$"
-VerdanturfTown_BattleTentLobby_Text_2C53DB: @ 82C53DB
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_WhichLevelMode: @ 82C53DB
.string "There are two levels of difficulty,\n"
.string "Level 50 and Open Level.\l"
.string "Which is your choice of a challenge?$"
-VerdanturfTown_BattleTentLobby_Text_2C543D: @ 82C543D
+VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLv50: @ 82C543D
.string "Sigh…\p"
.string "You do not have the three POKéMON\n"
.string "required for the challenge.\p"
@@ -167,7 +169,7 @@ VerdanturfTown_BattleTentLobby_Text_2C543D: @ 82C543D
.string "Come back when you have made\n"
.string "your preparations.$"
-VerdanturfTown_BattleTentLobby_Text_2C5538: @ 82C5538
+VerdanturfTown_BattleTentLobby_Text_NotEnoughValidMonsLvOpen: @ 82C5538
.string "Sigh…\p"
.string "You do not have the three POKéMON\n"
.string "required for the challenge.\p"
@@ -179,48 +181,48 @@ VerdanturfTown_BattleTentLobby_Text_2C5538: @ 82C5538
.string "Come back when you have made\n"
.string "your preparations.$"
-VerdanturfTown_BattleTentLobby_Text_2C5633: @ 82C5633
+VerdanturfTown_BattleTentLobby_Text_SelectThreeMons: @ 82C5633
.string "Good. Now, you must select your\n"
.string "three POKéMON.$"
-VerdanturfTown_BattleTentLobby_Text_2C5662: @ 82C5662
+VerdanturfTown_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5662
.string "I must save before I show you to\n"
.string "the BATTLE TENT. Is that okay?$"
-VerdanturfTown_BattleTentLobby_Text_2C56A2: @ 82C56A2
+VerdanturfTown_BattleTentLobby_Text_NowFollowMe: @ 82C56A2
.string "Good.\n"
.string "Now, follow me.$"
-VerdanturfTown_BattleTentLobby_Text_2C56B8: @ 82C56B8
+VerdanturfTown_BattleTentLobby_Text_ResultsWillBeRecorded: @ 82C56B8
.string "I feel privileged for having seen\n"
.string "your POKéMON's exploits.\p"
.string "The results will be recorded.\n"
.string "I must ask you to briefly wait.$"
-VerdanturfTown_BattleTentLobby_Text_2C5731: @ 82C5731
+VerdanturfTown_BattleTentLobby_Text_AchievedThreeWinStreak: @ 82C5731
.string "To achieve a 3-win streak…\p"
.string "The bonds that bind your heart with\n"
.string "your POKéMON seem firm and true.$"
-VerdanturfTown_BattleTentLobby_Text_2C5791: @ 82C5791
+VerdanturfTown_BattleTentLobby_Text_FeatWillBeRecorded: @ 82C5791
.string "Your feat will be recorded.\n"
.string "I must ask you to briefly wait.$"
-VerdanturfTown_BattleTentLobby_Text_2C57CD: @ 82C57CD
+VerdanturfTown_BattleTentLobby_Text_PresentYouWithPrize: @ 82C57CD
.string "For the feat of your 3-win streak,\n"
.string "we present you with this prize.$"
-SlateportCity_BattleTentLobby_Text_2C5810: @ 82C5810
+SlateportCity_BattleTentLobby_Text_WelcomeToBattleTent: @ 82C5810
.string "Welcome to the BATTLE TENT\n"
.string "SLATEPORT SITE!\p"
.string "I am your guide to the Battle Swap\n"
.string "Tournament.$"
-SlateportCity_BattleTentLobby_Text_2C586A: @ 82C586A
+SlateportCity_BattleTentLobby_Text_TakeChallenge: @ 82C586A
.string "Would you like to take the Battle\n"
.string "Swap challenge?$"
-SlateportCity_BattleTentLobby_Text_2C589C: @ 82C589C
+SlateportCity_BattleTentLobby_Text_ExplainSlateportTent: @ 82C589C
.string "Here at the SLATEPORT BATTLE TENT,\n"
.string "we hold Battle Swap events\l"
.string "using rental POKéMON.\p"
@@ -238,36 +240,39 @@ SlateportCity_BattleTentLobby_Text_2C589C: @ 82C589C
.string "If you don't save before interrupting,\n"
.string "you will be disqualified.$"
-SlateportCity_BattleTentLobby_Text_2C5AA5: @ 82C5AA5
+SlateportCity_BattleTentLobby_Text_LookForwardToNextVisit: @ 82C5AA5
.string "We look forward to your next visit.$"
-SlateportCity_BattleTentLobby_Text_2C5AC9: @ 82C5AC9
+@ Unused
+SlateportCity_BattleTentLobby_Text_WhichLevelMode: @ 82C5AC9
.string "Which level do you wish to challenge?\n"
.string "Level 50 or Level 100?$"
-SlateportCity_BattleTentLobby_Text_2C5B06: @ 82C5B06
+SlateportCity_BattleTentLobby_Text_SaveBeforeChallenge: @ 82C5B06
.string "Before you begin your challenge,\n"
.string "I need to save data. Is that okay?$"
-SlateportCity_BattleTentLobby_Text_2C5B4A: @ 82C5B4A
+@ Unused
+SlateportCity_BattleTentLobby_Text_HoldMonsForSafekeeping: @ 82C5B4A
.string "Okay, I will hold your POKéMON for\n"
.string "safekeeping while you compete.$"
-SlateportCity_BattleTentLobby_Text_2C5B8C: @ 82C5B8C
+SlateportCity_BattleTentLobby_Text_StepThisWay: @ 82C5B8C
.string "Please step this way.$"
-SlateportCity_BattleTentLobby_Text_2C5BA2: @ 82C5BA2
+SlateportCity_BattleTentLobby_Text_ReturnRentalMonsSaveResults: @ 82C5BA2
.string "Thank you for participating!\p"
.string "I will return your POKéMON in exchange\n"
.string "for our rental POKéMON.\p"
.string "I must also save your event results.\n"
.string "Please wait.$"
-SlateportCity_BattleTentLobby_Text_2C5C30: @ 82C5C30
+@ Unused
+SlateportCity_BattleTentLobby_Text_ReturnMonsExchangeRentals: @ 82C5C30
.string "I will return your POKéMON in exchange\n"
.string "for our rental POKéMON.$"
-SlateportCity_BattleTentLobby_Text_2C5C6F: @ 82C5C6F
+SlateportCity_BattleTentLobby_Text_WonThreeMatchesReturnMons: @ 82C5C6F
.string "Congratulations!\n"
.string "You've won three straight matches!\p"
.string "I will return your POKéMON in exchange\n"
@@ -275,61 +280,65 @@ SlateportCity_BattleTentLobby_Text_2C5C6F: @ 82C5C6F
.string "I must also save your event results.\n"
.string "Please wait.$"
-SlateportCity_BattleTentLobby_Text_2C5D14: @ 82C5D14
+SlateportCity_BattleTentLobby_Text_AwardYouThisPrize: @ 82C5D14
.string "In recognition of your 3-win streak,\n"
.string "we award you this prize.$"
-SlateportCity_BattleTentLobby_Text_2C5D52: @ 82C5D52
+SlateportCity_BattleTentLobby_Text_NoRoomInBagMakeRoom: @ 82C5D52
.string "Oh?\n"
.string "You seem to have no room for this.\p"
.string "Please make room in your BAG and\n"
.string "let me know.$"
-SlateportCity_BattleTentLobby_Text_2C5DA7: @ 82C5DA7
+SlateportCity_BattleTentLobby_Text_BeenWaitingForYou: @ 82C5DA7
.string "We've been waiting for you!\p"
.string "Before we resume your challenge,\n"
.string "I must save the game.$"
-SlateportCity_BattleTentLobby_Text_2C5DFA: @ 82C5DFA
+SlateportCity_BattleTentLobby_Text_DidntSaveBeforeQuitting: @ 82C5DFA
.string "I'm sorry to say this, but you didn't\n"
.string "save before you quit playing last time.\p"
.string "As a result, you have been disqualified\n"
.string "from your challenge.$"
-SlateportCity_BattleTentLobby_Text_2C5E85: @ 82C5E85
+@ Unused
+SlateportCity_BattleTentLobby_Text_ReturnPersonalMons: @ 82C5E85
.string "We'll return your personal POKéMON.$"
-SlateportCity_BattleTentLobby_Text_2C5EA9: @ 82C5EA9
+@ Unused
+SlateportCity_BattleTentLobby_Text_ReceivedPrize: @ 82C5EA9
.string "{PLAYER} received the prize\n"
.string "{STR_VAR_1}.$"
-SlateportCity_BattleTentLobby_Text_2C5EC3: @ 82C5EC3
+@ Unused
+SlateportCity_BattleTentLobby_Text_RulesAreListed: @ 82C5EC3
.string "The Battle Swap rules are listed.$"
-SlateportCity_BattleTentLobby_Text_2C5EE5: @ 82C5EE5
+@ Unused
+SlateportCity_BattleTentLobby_Text_ReadWhichHeading: @ 82C5EE5
.string "Which heading do you want to read?$"
-SlateportCity_BattleTentLobby_Text_2C5F08: @ 82C5F08
+SlateportCity_BattleTentLobby_Text_ExplainBasicRules: @ 82C5F08
.string "In a Battle Swap event, you may use\n"
.string "only three POKéMON.\p"
.string "Whether you are renting or swapping,\n"
.string "your team may not have two or more\l"
.string "of the same POKéMON.$"
-SlateportCity_BattleTentLobby_Text_2C5F9D: @ 82C5F9D
+SlateportCity_BattleTentLobby_Text_ExplainSwapPartnerRules: @ 82C5F9D
.string "You may swap POKéMON only with\n"
.string "the TRAINER you have just defeated.\p"
.string "You may swap for only those POKéMON\n"
.string "used by the beaten TRAINER.$"
-SlateportCity_BattleTentLobby_Text_2C6020: @ 82C6020
+SlateportCity_BattleTentLobby_Text_ExplainSwapNumberRules: @ 82C6020
.string "After every battle you win, you may\n"
.string "swap for one of your defeated\l"
.string "opponent's POKéMON.\p"
.string "You will not be able to swap POKéMON\n"
.string "with the third TRAINER in the event.$"
-SlateportCity_BattleTentLobby_Text_2C60C0: @ 82C60C0
+SlateportCity_BattleTentLobby_Text_ExplainSwapNotes: @ 82C60C0
.string "There are two key points to be aware\n"
.string "of when swapping POKéMON.\p"
.string "First, when swapping, you can't check\n"
@@ -341,20 +350,23 @@ SlateportCity_BattleTentLobby_Text_2C60C0: @ 82C60C0
.string "This sequence remains unchanged\n"
.string "even when swaps are made.$"
-SlateportCity_BattleTentLobby_Text_2C61FE: @ 82C61FE
+SlateportCity_BattleTentLobby_Text_ExplainMonRules: @ 82C61FE
.string "The POKéMON of the SLATEPORT\n"
.string "BATTLE TENT are all rentals.\p"
.string "All rental POKéMON are kept at\n"
.string "Level 30.$"
-VerdanturfTown_BattleTentLobby_Text_2C6261: @ 82C6261
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_RulesAreListed2: @ 82C6261
.string "The VERDANTURF BATTLE TENT\n"
.string "rules are listed.$"
-VerdanturfTown_BattleTentLobby_Text_2C628E: @ 82C628E
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ReadWhichHeading: @ 82C628E
.string "Which heading do you want to read?$"
-VerdanturfTown_BattleTentLobby_Text_2C62B1: @ 82C62B1
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ExplainBasicRules: @ 82C62B1
.string "Here at the VERDANTURF BATTLE TENT,\n"
.string "POKéMON are required to think and\l"
.string "battle by themselves.\p"
@@ -362,7 +374,8 @@ VerdanturfTown_BattleTentLobby_Text_2C62B1: @ 82C62B1
.string "with people behave differently\l"
.string "depending on their nature.$"
-VerdanturfTown_BattleTentLobby_Text_2C636D: @ 82C636D
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ExplainNatureRules: @ 82C636D
.string "Depending on its nature, a POKéMON\n"
.string "may prefer to attack no matter what.\p"
.string "Another POKéMON may prefer to protect\n"
@@ -375,7 +388,8 @@ VerdanturfTown_BattleTentLobby_Text_2C636D: @ 82C636D
.string "It may also dislike certain moves that\n"
.string "it has trouble using.$"
-VerdanturfTown_BattleTentLobby_Text_2C64BA: @ 82C64BA
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ExplainMoveRules: @ 82C64BA
.string "There are offensive moves that inflict\n"
.string "direct damage on the foe.\p"
.string "There are defensive moves that are\n"
@@ -388,7 +402,8 @@ VerdanturfTown_BattleTentLobby_Text_2C64BA: @ 82C64BA
.string "POKéMON will consider using moves in\n"
.string "these three categories.$"
-VerdanturfTown_BattleTentLobby_Text_2C6612: @ 82C6612
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ExplainUnderpoweredRules: @ 82C6612
.string "When not under command by its TRAINER,\n"
.string "a POKéMON may be unable to effectively\l"
.string "use certain moves.\p"
@@ -398,21 +413,21 @@ VerdanturfTown_BattleTentLobby_Text_2C6612: @ 82C6612
.string "do not match its nature, it will often\l"
.string "be unable to live up to its potential.$"
-VerdanturfTown_BattleTentLobby_Text_2C671E: @ 82C671E
+@ Unused
+VerdanturfTown_BattleTentLobby_Text_ExplainWhenInDangerRules: @ 82C671E
.string "Depending on its nature, a POKéMON may\n"
.string "start using moves that don't match its\l"
.string "nature when it is in trouble.\p"
.string "If a POKéMON begins behaving oddly\n"
.string "in a pinch, watch it carefully.$"
-FallarborTown_BattleTentLobby_Text_2C67CD: @ 82C67CD
-VerdanturfTown_BattleTentLobby_Text_2C67CD: @ 82C67CD
+BattleTentLobby_Text_ExplainLevelRules: @ 82C67CD
.string "At this BATTLE TENT, the levels of\n"
.string "your opponents will be adjusted to\l"
.string "match the levels of your POKéMON.\p"
.string "However, no TRAINER you face will\n"
.string "have any POKéMON below Level 30.$"
-VerdanturfTown_BattleTentLobby_Text_2C6878: @ 82C6878
+VerdanturfTown_BattleTentLobby_Text_RulesAreListed: @ 82C6878
.string "The VERDANTURF BATTLE TENT\n"
.string "rules are listed.$"
diff --git a/include/constants/field_weather.h b/include/constants/field_weather.h
new file mode 100644
index 000000000..e84dbc48c
--- /dev/null
+++ b/include/constants/field_weather.h
@@ -0,0 +1,24 @@
+#ifndef GUARD_CONSTANTS_FIELD_WEATHER_H
+#define GUARD_CONSTANTS_FIELD_WEATHER_H
+
+#define MAX_RAIN_SPRITES 24
+#define NUM_CLOUD_SPRITES 3
+#define NUM_FOG_HORIZONTAL_SPRITES 20
+#define NUM_ASH_SPRITES 20
+#define NUM_FOG_DIAGONAL_SPRITES 20
+#define NUM_SANDSTORM_SPRITES 20
+#define NUM_SWIRL_SANDSTORM_SPRITES 5
+
+// Controls how the weather should be changing the screen palettes.
+#define WEATHER_PAL_STATE_CHANGING_WEATHER 0
+#define WEATHER_PAL_STATE_SCREEN_FADING_IN 1
+#define WEATHER_PAL_STATE_SCREEN_FADING_OUT 2
+#define WEATHER_PAL_STATE_IDLE 3
+
+// Modes for FadeScreen
+#define FADE_FROM_BLACK 0
+#define FADE_TO_BLACK 1
+#define FADE_FROM_WHITE 2
+#define FADE_TO_WHITE 3
+
+#endif // GUARD_CONSTANTS_FIELD_WEATHER_H
diff --git a/include/field_weather.h b/include/field_weather.h
index e587da233..1af320151 100644
--- a/include/field_weather.h
+++ b/include/field_weather.h
@@ -2,32 +2,7 @@
#define GUARD_WEATHER_H
#include "sprite.h"
-
-#define MAX_RAIN_SPRITES 24
-#define NUM_CLOUD_SPRITES 3
-#define NUM_FOG_HORIZONTAL_SPRITES 20
-#define NUM_ASH_SPRITES 20
-#define NUM_FOG_DIAGONAL_SPRITES 20
-#define NUM_SANDSTORM_SPRITES 20
-#define NUM_SWIRL_SANDSTORM_SPRITES 5
-
-// Controls how the weather should be changing the screen palettes.
-enum
-{
- WEATHER_PAL_STATE_CHANGING_WEATHER,
- WEATHER_PAL_STATE_SCREEN_FADING_IN,
- WEATHER_PAL_STATE_SCREEN_FADING_OUT,
- WEATHER_PAL_STATE_IDLE,
-};
-
-// For the FadeScreen function.
-enum
-{
- FADE_FROM_BLACK,
- FADE_TO_BLACK,
- FADE_FROM_WHITE,
- FADE_TO_WHITE,
-};
+#include "constants/field_weather.h"
struct Weather
{
diff --git a/include/strings.h b/include/strings.h
index d97d435f6..f8d77c73e 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -2864,6 +2864,27 @@ extern const u8 gText_JumpsInARow[];
extern const u8 gText_BestScore2[];
extern const u8 gText_ExcellentsInARow[];
+// Berry crush
+extern const u8 gText_Var1Berry[];
+extern const u8 gText_XDotY[];
+extern const u8 gText_1DotBlueF700[];
+extern const u8 gText_1DotF700[];
+extern const u8 gText_TimeColon[];
+extern const u8 gText_SpaceSec[];
+extern const u8 gText_XDotY2[];
+extern const u8 gText_SpaceMin[];
+extern const u8 gText_StrVar1[];
+extern const u8 gText_PressingSpeed[];
+extern const u8 gText_TimesPerSec[];
+extern const u8 gText_XDotY3[];
+extern const u8 gText_Silkiness[];
+extern const u8 gText_Var1Percent[];
+extern const u8 gText_PressesRankings[];
+extern const u8 gText_CrushingResults[];
+extern const u8 gText_BerryCrush2[];
+extern const u8 gText_PressingSpeedRankings[];
+extern const u8 gText_Var1Players[];
+
// Lilycove Lady
extern const u8 gText_ContestLady_Handsome[];
extern const u8 gText_ContestLady_Vinny[];
diff --git a/ld_script.txt b/ld_script.txt
index d8c50c40c..7df0fc62e 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -72,7 +72,6 @@ SECTIONS {
src/mevent_news.o(.text);
src/union_room_chat.o(.text);
src/berry_crush.o(.text);
- asm/berry_crush.o(.text);
src/berry_powder.o(.text);
src/dodrio_berry_picking.o(.text);
src/pokemon_jump.o(.text);
diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c
index 5a9fd5687..bdd1b1462 100644
--- a/src/battle_pyramid_bag.c
+++ b/src/battle_pyramid_bag.c
@@ -357,7 +357,7 @@ static void sub_81C4F10(void)
void ChooseItemsToTossFromPyramidBag(void)
{
ScriptContext2_Enable();
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
CreateTask(Task_ChooseItemsToTossFromPyramidBag, 10);
}
diff --git a/src/berry_crush.c b/src/berry_crush.c
index 5303da11a..f0987c953 100755
--- a/src/berry_crush.c
+++ b/src/berry_crush.c
@@ -1,26 +1,36 @@
#include "global.h"
-#include "malloc.h"
+#include "berry.h"
#include "berry_powder.h"
#include "bg.h"
+#include "decompress.h"
+#include "dynamic_placeholder_text_util.h"
#include "event_data.h"
#include "gpu_regs.h"
#include "graphics.h"
+#include "international_string_util.h"
#include "item_icon.h"
#include "item_menu.h"
#include "link.h"
#include "link_rfu.h"
#include "main.h"
+#include "malloc.h"
#include "math_util.h"
#include "menu.h"
#include "overworld.h"
#include "palette.h"
+#include "pokemon_jump.h"
+#include "random.h"
#include "rom_8034C54.h"
+#include "save.h"
#include "scanline_effect.h"
+#include "script.h"
#include "sound.h"
#include "sprite.h"
#include "string_util.h"
+#include "strings.h"
#include "task.h"
#include "text.h"
+#include "text_window.h"
#include "trig.h"
#include "window.h"
#include "constants/items.h"
@@ -30,96 +40,146 @@
struct BerryCrushGame_Player
{
u16 unk0;
- u8 filler2[0x12];
- u8 unk14[0xC];
+ u16 unk2;
+ union
+ {
+ u8 as_2d_bytes[2][8];
+ u16 as_hwords[8];
+ } unk4;
+ u8 unk14[12];
};
-struct BerryCrushGame_PlayersSeparate
+struct __attribute__((packed, aligned(2))) BerryCrushGame_4E
{
- struct BerryCrushGame_Player player;
- struct BerryCrushGame_Player others[4];
+ u16 unk0;
+ u16 filler2;
+ u8 unk4_0:1;
+ u8 unk4_1:1;
+ s8 unk5;
+ u16 unk6;
+ u16 unk8;
+ u16 unkA;
+ u16 unkC;
};
-typedef union BerryCrushGame_Players
+struct __attribute__((packed)) BerryCrushGame_40
{
- struct BerryCrushGame_Player players[5];
- struct BerryCrushGame_PlayersSeparate separate;
-} BerryCrushGame_Players;
+ u8 unk0[2];
+ u16 unk2[6];
+ struct BerryCrushGame_4E unkE;
+};
-struct BerryCrushGame_138_C
+struct BerryCrushGame_5C
{
- u8 filler0[0x8];
- s16 unk8;
- u16 unkA;
+ u16 unk00;
+ u8 unk02_0:1;
+ u8 unk02_1:1;
+ u8 unk02_2:1;
+ u8 unk02_3:5;
+ u8 unk03;
+ u16 unk04;
+ u16 unk06;
+ u16 unk08;
+ u16 unk0A;
};
-struct BerryCrushGame_138
+union BerryCrushGame_68
{
- u8 filler0[0x4];
- u16 unk4;
- u16 unk6;
- u16 unk8;
- struct BerryCrushGame_138_C *unkC[5];
- u8 filler1C[0x4];
- struct Sprite *unk24[5];
- struct Sprite *unk38[5];
- struct Sprite *unk4C[5];
- struct Sprite *unk60[5];
- struct Sprite *unk74[5];
+ struct BerryCrushGame_68_x
+ {
+ struct BerryCrushGame_68_x_SubStruct
+ {
+ s32 unk00;
+ u16 unk04;
+ s16 unk06;
+ u16 unk08;
+ u16 unk0A;
+ u16 unk0C[2][5];
+ u8 filler20[16];
+ } unk00;
+ u8 unk30[12];
+ struct BerryCrushGame_Player others[4];
+ u8 fillerBC[20];
+ } as_four_players;
+ struct BerryCrushGame_68_y
+ {
+ u8 filler00[28];
+ struct BerryCrushGame_Player unk1C[5];
+ u8 fillerBC[20];
+ } as_five_players;
};
-struct BerryCrushGame_4E
+struct BerryCrushGame_138_C
{
- u8 filler0[0x4];
- u8 unk4;
- u8 filler5[0x5];
+ u8 unk0;
+ u8 unk1;
+ u8 unk2;
+ u16 unk4;
+ u16 unk6;
+ s16 unk8;
u16 unkA;
- u16 unkC;
};
-struct __attribute__((packed)) BerryCrushGame_40
+struct BerryCrushGame_138
{
- u8 filler0[0xE];
- struct BerryCrushGame_4E unkE;
+ u8 unk0;
+ u8 unk1;
+ u8 unk2;
+ u8 unk3;
+ s16 unk4;
+ s16 unk6;
+ s16 unk8;
+ const struct BerryCrushGame_138_C *unkC[5];
+ struct Sprite *unk20;
+ struct Sprite *unk24[5];
+ struct Sprite *unk38[5];
+ struct Sprite *unk4C[11];
+ struct Sprite *unk78[2];
+ u8 unk80;
+ u8 filler81;
+ u8 unk82;
+ u8 unk83[5];
};
struct BerryCrushGame
{
MainCallback unk0;
- void (* unk4)(struct BerryCrushGame *, u8 *);
+ u32 (* unk4)(struct BerryCrushGame *, u8 *);
u8 unk8;
u8 unk9;
u8 unkA;
u8 unkB;
u8 unkC;
- u8 fillerD[0x1];
+ u8 unkD;
u8 unkE;
u8 unkF;
- u8 filler10[0x2];
+ u16 unk10;
u16 unk12;
- u8 filler14[0x2];
+ u16 unk14;
u16 unk16;
- u8 filler18[0x4];
+ s16 unk18;
+ s16 unk1A;
int unk1C;
- u8 filler20[0x5];
+ s32 unk20;
+ u8 unk24;
u8 unk25_0:1;
u8 unk25_1:1;
u8 unk25_2:1;
- u8 filler26[0x2];
+ u8 unk25_3:1;
+ u8 unk25_4:1;
+ u8 unk25_5:3;
+ u16 unk26;
u16 unk28;
- u16 unk2A;
+ s16 unk2A;
s16 unk2C;
- u8 filler2E[0x8];
+ s16 unk2E;
+ s16 unk30;
+ s16 unk32;
+ s16 unk34;
u8 unk36[0xA];
struct BerryCrushGame_40 unk40;
- u8 filler60[0x8];
- int unk68;
- u16 unk6C;
- u8 filler6E[0x4];
- u16 unk72;
- u8 filler74[0x10];
- BerryCrushGame_Players unk84;
- u8 filler124[0x14];
+ struct BerryCrushGame_5C unk5C;
+ union BerryCrushGame_68 unk68;
struct BerryCrushGame_138 unk138;
u8 unk1C0[0x1000];
u8 unk11C0[0x1000];
@@ -132,7 +192,7 @@ static void sub_8020F88(void);
static void sub_8020FA0(u8);
void sub_8020FC4(struct BerryCrushGame *);
void sub_8022BEC(u16, u8, u8 *);
-void sub_8024604(u8 *, u8, s8, u8, u8, u8, u8);
+void sub_8024604(u8 *, u32, s32, u32, u32, u32, u32);
static int sub_8021450(struct BerryCrushGame *);
void sub_8022588(struct BerryCrushGame *);
void sub_8022600(struct BerryCrushGame *);
@@ -141,6 +201,9 @@ void sub_8022730(struct BerryCrushGame *);
void sub_8022960(struct BerryCrushGame *);
void sub_8022524(struct BerryCrushGame_138 *, u16);
void sub_8022B28(struct Sprite *);
+void sub_8022554(struct BerryCrushGame_138 *r0);
+void sub_8024578(struct BerryCrushGame *);
+void sub_8024644(u8 *, u32, u32, u32, u32);
static EWRAM_DATA struct BerryCrushGame *gUnknown_02022C90 = NULL;
@@ -154,13 +217,41 @@ extern const s8 gUnknown_082F41CC[][2];
extern const s8 gUnknown_082F41D2[][2];
extern const u32 gUnknown_082F334C[];
extern const u8 sBerryCrushTextColors1[][3];
+extern const u8 *gUnknown_082F43B4[];
+extern const u8 sBerryCrushTextColors4[];
+extern const struct WindowTemplate gUnknown_082F32CC[];
+extern const u8 gUnknown_082F3344[][4];
+extern const struct WindowTemplate gUnknown_082F32EC;
+extern const u8 sBerryCrushTextColorTable[][3];
+extern const struct WindowTemplate gUnknown_082F32F4[];
+extern const u8 gUnknown_082F417C[][5];
+extern const struct BerryCrushGame_138_C gUnknown_082F4190[];
+extern const u8 sBerryCrushTextColors2[][3];
+extern const u8 sBerryCrushTextColors3[][3];
+extern const u32 gUnknown_08DE3FD4[];
+extern const struct CompressedSpriteSheet gUnknown_082F41F4[];
+extern const struct SpritePalette gUnknown_082F421C;
+extern const struct SpriteTemplate gUnknown_082F430C;
+extern const struct SpriteTemplate gUnknown_082F4324;
+extern const struct SpriteTemplate gUnknown_082F433C;
+extern const struct SpriteTemplate gUnknown_082F4354;
+extern const struct UnkStruct3 gUnknown_082F4384[];
+extern u32 (*const gUnknown_082F43CC[])(struct BerryCrushGame *, u8 *);
+extern const u8 *const gUnknown_082F32A4[];
+extern const u8 gUnknown_082F4448[];
+extern const s8 gUnknown_082F326C[][7];
+extern const u8 gUnknown_082F325C[];
+extern const u8 gUnknown_082F3264[];
+extern const u8 gUnknown_082F3290[][4];
+extern const u8 gUnknown_082F4434[][4];
+extern const u8 gUnknown_082F4444[];
struct BerryCrushGame *sub_8020C00(void)
{
return gUnknown_02022C90;
}
-int sub_8020C0C(MainCallback callback)
+u32 sub_8020C0C(MainCallback callback)
{
if (!gUnknown_02022C90)
return 2;
@@ -173,7 +264,7 @@ int sub_8020C0C(MainCallback callback)
SetMainCallback2(callback);
if (callback == CB2_ReturnToField)
{
- gTextFlags.autoScroll = 1;
+ gTextFlags.autoScroll = TRUE;
PlayNewMapMusic(MUS_POKECEN);
SetMainCallback1(CB1_Overworld);
}
@@ -237,7 +328,7 @@ static void sub_8020D8C(void)
else
RemoveBagItem(gSpecialVar_ItemId, 1);
- gUnknown_02022C90->unk84.separate.others[gUnknown_02022C90->unk8].unk0 = gSpecialVar_ItemId - FIRST_BERRY_INDEX;
+ gUnknown_02022C90->unk68.as_four_players.others[gUnknown_02022C90->unk8].unk0 = gSpecialVar_ItemId - FIRST_BERRY_INDEX;
gUnknown_02022C90->unkE = 1;
gUnknown_02022C90->unkF = 9;
sub_8024604(gUnknown_02022C90->unk36, 0, -1, 0, 16, 0, 0);
@@ -266,10 +357,10 @@ void sub_8020E58(void)
{
u32 var0, var1;
- var0 = gUnknown_02022C90->unk6C;
+ var0 = gUnknown_02022C90->unk68.as_four_players.unk00.unk04;
var0 <<= 8;
var0 = sub_81515FC(var0, 60 << 8);
- var1 = gUnknown_02022C90->unk72;
+ var1 = gUnknown_02022C90->unk68.as_four_players.unk00.unk0A;
var1 <<= 8;
var1 = sub_81515FC(var1, var0) & 0xFFFF;
gUnknown_02022C90->unk16 = var1;
@@ -305,7 +396,7 @@ void sub_8020E58(void)
break;
}
- gUnknown_02022C90->unk1C = gUnknown_02022C90->unk68;
+ gUnknown_02022C90->unk1C = gUnknown_02022C90->unk68.as_four_players.unk00.unk00;
if (GiveBerryPowder(gUnknown_02022C90->unk1C))
return;
@@ -335,18 +426,22 @@ static void sub_8020FA0(u8 taskId)
sub_8021450(gUnknown_02022C90);
}
-#ifdef NONMATCHING
+#define PLAYER_UNK14(game, i) \
+ ((u8 *)(game) \
+ + offsetof(struct BerryCrushGame, unk68) \
+ + offsetof(struct BerryCrushGame_68_x, unk30) \
+ + sizeof(struct BerryCrushGame_Player) * (i))
+
void sub_8020FC4(struct BerryCrushGame *arg0)
{
u8 i;
for (i = 0; i < arg0->unk9; i++)
- StringCopy(arg0->unk84.players[i].unk14, gLinkPlayers[i].name);
-
+ StringCopy(PLAYER_UNK14(arg0, i), gLinkPlayers[i].name);
for (; i < 5; i++)
{
- memset(arg0->unk84.players[i].unk14, 1, PLAYER_NAME_LENGTH);
- arg0->unk84.players[i].unk14[PLAYER_NAME_LENGTH] = EOS;
+ memset(PLAYER_UNK14(arg0, i), 1, PLAYER_NAME_LENGTH);
+ arg0->unk68.as_five_players.unk1C[i].unk14[PLAYER_NAME_LENGTH] = EOS;
}
switch (gSaveBlock2Ptr->optionsTextSpeed)
@@ -362,85 +457,6 @@ void sub_8020FC4(struct BerryCrushGame *arg0)
break;
}
}
-#else
-NAKED
-void sub_8020FC4(struct BerryCrushGame *arg0)
-{
- asm_unified("\n\
- push {r4-r6,lr}\n\
- adds r6, r0, 0\n\
- movs r5, 0\n\
- b _08020FE6\n\
-LOOP_1:\n\
- lsls r0, r5, 5\n\
- adds r0, 0x98\n\
- adds r0, r6, r0\n\
- lsls r1, r5, 3\n\
- subs r1, r5\n\
- lsls r1, 2\n\
- ldr r2, =gLinkPlayers + 8\n\
- adds r1, r2\n\
- bl StringCopy\n\
- adds r0, r5, 0x1\n\
- lsls r0, 24\n\
- lsrs r5, r0, 24\n\
-_08020FE6:\n\
- ldrb r0, [r6, 0x9]\n\
- cmp r5, r0\n\
- bcc LOOP_1\n\
- cmp r5, 0x4\n\
- bhi _08021012\n\
-_08020FF0:\n\
- lsls r4, r5, 5\n\
- adds r0, r4, 0\n\
- adds r0, 0x98\n\
- adds r0, r6, r0\n\
- movs r1, 0x1\n\
- movs r2, 0x7\n\
- bl memset\n\
- adds r4, r6, r4\n\
- adds r4, 0x9F\n\
- movs r0, 0xFF\n\
- strb r0, [r4]\n\
- adds r0, r5, 0x1\n\
- lsls r0, 24\n\
- lsrs r5, r0, 24\n\
- cmp r5, 0x4\n\
- bls _08020FF0\n\
-_08021012:\n\
- ldr r0, =gSaveBlock2Ptr\n\
- ldr r0, [r0]\n\
- ldrb r0, [r0, 0x14]\n\
- lsls r0, 29\n\
- lsrs r0, 29\n\
- cmp r0, 0x1\n\
- beq _0802103E\n\
- cmp r0, 0x1\n\
- bgt _08021034\n\
- cmp r0, 0\n\
- beq _0802103A\n\
- b _08021046\n\
- .pool\n\
-_08021034:\n\
- cmp r0, 0x2\n\
- beq _08021042\n\
- b _08021046\n\
-_0802103A:\n\
- movs r0, 0x8\n\
- b _08021044\n\
-_0802103E:\n\
- movs r0, 0x4\n\
- b _08021044\n\
-_08021042:\n\
- movs r0, 0x1\n\
-_08021044:\n\
- strb r0, [r6, 0xB]\n\
-_08021046:\n\
- pop {r4-r6}\n\
- pop {r0}\n\
- bx r0");
-}
-#endif // NONMATCHING
int sub_802104C(void)
{
@@ -503,7 +519,7 @@ int sub_802104C(void)
sub_8197200();
sub_8022588(var0);
sub_8022600(var0);
- gPaletteFade.bufferTransferDisabled = 1;
+ gPaletteFade.bufferTransferDisabled = TRUE;
break;
case 7:
LoadPalette(gUnknown_08DE3398, 0, 0x180);
@@ -524,7 +540,7 @@ int sub_802104C(void)
ChangeBgY(1, 0, 0);
break;
case 9:
- gPaletteFade.bufferTransferDisabled = 0;
+ gPaletteFade.bufferTransferDisabled = FALSE;
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
ShowBg(0);
ShowBg(1);
@@ -636,10 +652,10 @@ void sub_80214A8(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1)
&gUnknown_082F436C,
gUnknown_082F41E8[i],
gUnknown_082F41E8[i],
- arg0->unk84.separate.others[i].unk0 + 133);
+ arg0->unk68.as_four_players.others[i].unk0 + 133);
arg1->unk38[i] = &gSprites[spriteId];
arg1->unk38[i]->oam.priority = 3;
- arg1->unk38[i]->affineAnimPaused = 1;
+ arg1->unk38[i]->affineAnimPaused = TRUE;
arg1->unk38[i]->pos1.x = arg1->unkC[i]->unk8 + 120;
arg1->unk38[i]->pos1.y = -16;
data = arg1->unk38[i]->data;
@@ -695,7 +711,7 @@ void sub_8021608(struct Sprite *sprite)
}
}
-void sub_80216A8(struct BerryCrushGame *arg0)
+void sub_80216A8(struct BerryCrushGame *arg0, __attribute__((unused)) struct BerryCrushGame_138 *arg1)
{
u8 i;
for (i = 0; i < arg0->unk9; i++)
@@ -726,8 +742,8 @@ void sub_80216E0(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1)
else
StartSpriteAnim(arg1->unk24[i], 0);
- arg1->unk24[i]->invisible = 0;
- arg1->unk24[i]->animPaused = 0;
+ arg1->unk24[i]->invisible = FALSE;
+ arg1->unk24[i]->animPaused = FALSE;
arg1->unk24[i]->pos2.x = gUnknown_082F41CC[(var % 4) - 1][0];
arg1->unk24[i]->pos2.y = gUnknown_082F41CC[(var % 4) - 1][1];
}
@@ -750,7 +766,7 @@ void sub_80216E0(struct BerryCrushGame *arg0, struct BerryCrushGame_138 *arg1)
arg1->unk4C[i]->pos1.y = gUnknown_082F41D2[i][1] + 136 - (var * 4);
arg1->unk4C[i]->pos2.x = gUnknown_082F41D2[i][0] + (gUnknown_082F41D2[i][0] / (var2 * 4));
arg1->unk4C[i]->pos2.y = gUnknown_082F41D2[i][1];
- if (var4E->unk4 & 0x2)
+ if (var4E->unk4_1)
StartSpriteAnim(arg1->unk4C[i], 1);
else
StartSpriteAnim(arg1->unk4C[i], 0);
@@ -823,3 +839,2345 @@ void sub_80219C8(u8 windowId, u8 left, u8 colorId, const u8 *string)
left = (left * 4) - (GetStringWidth(2, string, -1) / 2u);
AddTextPrinterParameterized3(windowId, 2, left, 0, sBerryCrushTextColors1[colorId], 0, string);
}
+
+#ifdef NONMATCHING
+void sub_8021A28(struct BerryCrushGame *sp0C, u8 sp10, u8 sp14, u8 r3)
+{
+ s32 r6;
+ u8 i, j;
+ u8 sp18 = 0;
+ u8 sp1C = 0;
+ union BerryCrushGame_68 *sp20 = &sp0C->unk68;
+ u32 xOffset;
+ u32 r8, r9, r4, r7, r3_;
+ u8 r10, r2;
+
+ r3 -= 16;
+ if (sp10 == 2)
+ r3 -= 42;
+ r6 = r3 - 14 * sp0C->unk9;
+ if (r6 > 0)
+ r6 = r6 / 2 + 16;
+ else
+ r6 = 16;
+ i = 0;
+ while (i < sp0C->unk9)
+ {
+ DynamicPlaceholderTextUtil_Reset();
+ switch (sp10)
+ {
+ default: // how can you write this twice??????
+ r4 = sp14 - 4;
+ r10 = r6;
+ r9 = sp1C + 0xA2;
+ r8 = sp18;
+ r6 += 14;
+ ++i;
+ break;
+ case 0:
+ sp18 = sp20->as_five_players.unk1C[0].unk4.as_2d_bytes[0][i];
+ if (i != 0 && sp20->as_four_players.unk00.unk0C[0][i] != sp20->as_four_players.unk00.unk0C[0][i - 1])
+ sp1C = i;
+ ConvertIntToDecimalStringN(
+ gStringVar4,
+ sp20->as_four_players.unk00.unk0C[sp10][i],
+ STR_CONV_MODE_RIGHT_ALIGN,
+ 4
+ );
+ StringAppend(gStringVar4, gUnknown_082F43B4[sp10]);
+ r4 = sp14 - 4;
+ r10 = r6;
+ r9 = sp1C + 0xA2;
+ r8 = sp18;
+ r6 += 14;
+ ++i;
+ break;
+ case 1:
+ sp18 = sp20->as_five_players.unk1C[0].unk4.as_2d_bytes[1][i];
+ if (i != 0 && sp20->as_four_players.unk00.unk0C[1][i] != sp20->as_four_players.unk00.unk0C[1][i - 1])
+ sp1C = i;
+ ConvertIntToDecimalStringN(
+ gStringVar1,
+ sp20->as_four_players.unk00.unk0C[sp10][i] >> 4,
+ STR_CONV_MODE_RIGHT_ALIGN,
+ 3
+ );
+ j = 0;
+ r3_ = 15 & (u8)sp20->as_four_players.unk00.unk0C[sp10][i];
+ r4 = sp14 - 4;
+ r10 = r6;
+ r9 = sp1C + 0xA2;
+ r8 = sp18;
+ r6 += 14;
+ ++i;
+ for (; j < 4; ++j)
+ if (((r3_ >> (3 - j)) & 1) != 0) // why does it load constant 1 into r10?
+ r7 += gUnknown_082F334C[j];
+ ConvertIntToDecimalStringN(
+ gStringVar2,
+ (u8)(r7 / 1000000),
+ STR_CONV_MODE_LEADING_ZEROS,
+ 2
+ );
+ StringExpandPlaceholders(gStringVar4, gText_XDotY);
+ break;
+ case 2:
+ sp18 = i;
+ sp1C = i;
+ r2 = sp0C->unk68.as_four_players.others[i].unk0;
+ if (r2 > 43)
+ r2 = 0;
+ StringCopy(gStringVar1,gBerries[r2].name);
+ StringExpandPlaceholders(gStringVar4, gText_Var1Berry);
+ r4 = sp14 - 4;
+ r10 = r6;
+ r9 = sp1C + 0xA2;
+ r8 = i;
+ r6 += 14;
+ ++i;
+ break;
+ }
+ xOffset = GetStringRightAlignXOffset(2, gStringVar4, r4);
+ AddTextPrinterParameterized3(
+ sp0C->unk138.unk82,
+ 2,
+ xOffset,
+ r10,
+ sBerryCrushTextColors1[0],
+ 0,
+ gStringVar4
+ );
+ if (sp18 == sp0C->unk8)
+ StringCopy(gStringVar3, gText_1DotBlueF700);
+ else
+ StringCopy(gStringVar3, gText_1DotF700);
+ gStringVar3[0] = r9;
+ DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, PLAYER_UNK14(sp0C, r8));
+ DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3);
+ AddTextPrinterParameterized3(
+ sp0C->unk138.unk82,
+ 2,
+ 4,
+ r10,
+ sBerryCrushTextColors1[0],
+ 0,
+ gStringVar4
+ );
+ }
+}
+#else
+NAKED
+void sub_8021A28(struct BerryCrushGame *sp0C, u8 sp10, u8 sp14, u8 r3)
+{
+ asm_unified("\n\
+ push {r4-r7,lr}\n\
+ mov r7, r10\n\
+ mov r6, r9\n\
+ mov r5, r8\n\
+ push {r5-r7}\n\
+ sub sp, 0x2C\n\
+ str r0, [sp, 0xC]\n\
+ lsls r1, 24\n\
+ lsrs r1, 24\n\
+ str r1, [sp, 0x10]\n\
+ lsls r2, 24\n\
+ lsrs r2, 24\n\
+ str r2, [sp, 0x14]\n\
+ lsls r3, 24\n\
+ movs r0, 0\n\
+ str r0, [sp, 0x18]\n\
+ movs r1, 0\n\
+ str r1, [sp, 0x1C]\n\
+ ldr r2, [sp, 0xC]\n\
+ adds r2, 0x68\n\
+ str r2, [sp, 0x20]\n\
+ movs r4, 0xF0\n\
+ lsls r4, 24\n\
+ adds r3, r4\n\
+ lsrs r3, 24\n\
+ ldr r0, [sp, 0x10]\n\
+ cmp r0, 0x2\n\
+ bne _08021A68\n\
+ adds r0, r3, 0\n\
+ subs r0, 0x2A\n\
+ lsls r0, 24\n\
+ lsrs r3, r0, 24\n\
+ _08021A68:\n\
+ ldr r2, [sp, 0xC]\n\
+ ldrb r1, [r2, 0x9]\n\
+ lsls r0, r1, 3\n\
+ subs r0, r1\n\
+ lsls r0, 1\n\
+ subs r6, r3, r0\n\
+ cmp r6, 0\n\
+ ble _08021A84\n\
+ lsrs r0, r6, 31\n\
+ adds r0, r6, r0\n\
+ asrs r0, 1\n\
+ adds r6, r0, 0\n\
+ adds r6, 0x10\n\
+ b _08021A86\n\
+ _08021A84:\n\
+ movs r6, 0x10\n\
+ _08021A86:\n\
+ movs r5, 0\n\
+ ldr r3, [sp, 0xC]\n\
+ ldrb r3, [r3, 0x9]\n\
+ cmp r5, r3\n\
+ bcc _08021A92\n\
+ b _08021D14\n\
+ _08021A92:\n\
+ ldr r4, [sp, 0x10]\n\
+ lsls r4, 2\n\
+ str r4, [sp, 0x24]\n\
+ _08021A98:\n\
+ bl DynamicPlaceholderTextUtil_Reset\n\
+ ldr r0, [sp, 0x10]\n\
+ cmp r0, 0x1\n\
+ beq _08021B48\n\
+ cmp r0, 0x1\n\
+ bgt _08021AC0\n\
+ cmp r0, 0\n\
+ beq _08021ADE\n\
+ ldr r4, [sp, 0x14]\n\
+ subs r4, 0x4\n\
+ lsls r1, r6, 24\n\
+ mov r10, r1\n\
+ ldr r2, [sp, 0x1C]\n\
+ adds r2, 0xA2\n\
+ mov r9, r2\n\
+ ldr r3, [sp, 0x18]\n\
+ lsls r3, 5\n\
+ mov r8, r3\n\
+ b _08021C5A\n\
+ _08021AC0:\n\
+ ldr r4, [sp, 0x10]\n\
+ cmp r4, 0x2\n\
+ bne _08021AC8\n\
+ b _08021C1C\n\
+ _08021AC8:\n\
+ ldr r4, [sp, 0x14]\n\
+ subs r4, 0x4\n\
+ lsls r0, r6, 24\n\
+ mov r10, r0\n\
+ ldr r1, [sp, 0x1C]\n\
+ adds r1, 0xA2\n\
+ mov r9, r1\n\
+ ldr r2, [sp, 0x18]\n\
+ lsls r2, 5\n\
+ mov r8, r2\n\
+ b _08021C5A\n\
+ _08021ADE:\n\
+ ldr r0, [sp, 0x20]\n\
+ adds r0, 0x20\n\
+ adds r0, r5\n\
+ ldrb r0, [r0]\n\
+ str r0, [sp, 0x18]\n\
+ lsls r3, r5, 1\n\
+ ldr r2, [sp, 0x20]\n\
+ adds r2, 0xC\n\
+ cmp r5, 0\n\
+ beq _08021B04\n\
+ adds r0, r2, r3\n\
+ subs r1, r5, 0x1\n\
+ lsls r1, 1\n\
+ adds r1, r2, r1\n\
+ ldrh r0, [r0]\n\
+ ldrh r1, [r1]\n\
+ cmp r0, r1\n\
+ beq _08021B04\n\
+ str r5, [sp, 0x1C]\n\
+ _08021B04:\n\
+ ldr r4, [sp, 0x24]\n\
+ ldr r1, [sp, 0x10]\n\
+ adds r0, r4, r1\n\
+ lsls r0, 1\n\
+ adds r0, r3, r0\n\
+ adds r0, r2, r0\n\
+ ldrh r1, [r0]\n\
+ ldr r0, =gStringVar4\n\
+ movs r2, 0x1\n\
+ movs r3, 0x4\n\
+ bl ConvertIntToDecimalStringN\n\
+ ldr r0, =gUnknown_082F43B4\n\
+ adds r0, r4, r0\n\
+ ldr r1, [r0]\n\
+ ldr r0, =gStringVar4\n\
+ bl StringAppend\n\
+ ldr r4, [sp, 0x14]\n\
+ subs r4, 0x4\n\
+ lsls r2, r6, 24\n\
+ mov r10, r2\n\
+ ldr r3, [sp, 0x1C]\n\
+ adds r3, 0xA2\n\
+ mov r9, r3\n\
+ ldr r0, [sp, 0x18]\n\
+ lsls r0, 5\n\
+ mov r8, r0\n\
+ b _08021C5A\n\
+ .pool\n\
+ _08021B48:\n\
+ ldr r1, [sp, 0x20]\n\
+ adds r0, r1, r5\n\
+ adds r0, 0x28\n\
+ ldrb r0, [r0]\n\
+ str r0, [sp, 0x18]\n\
+ lsls r3, r5, 1\n\
+ adds r2, r1, 0\n\
+ adds r2, 0xC\n\
+ cmp r5, 0\n\
+ beq _08021B72\n\
+ adds r0, r3, 0\n\
+ adds r0, 0xA\n\
+ adds r0, r2, r0\n\
+ adds r1, r3, 0\n\
+ adds r1, 0x8\n\
+ adds r1, r2, r1\n\
+ ldrh r0, [r0]\n\
+ ldrh r1, [r1]\n\
+ cmp r0, r1\n\
+ beq _08021B72\n\
+ str r5, [sp, 0x1C]\n\
+ _08021B72:\n\
+ ldr r0, [sp, 0x24]\n\
+ ldr r1, [sp, 0x10]\n\
+ adds r4, r0, r1\n\
+ lsls r4, 1\n\
+ adds r4, r3, r4\n\
+ adds r4, r2, r4\n\
+ ldrh r1, [r4]\n\
+ lsrs r1, 4\n\
+ ldr r0, =gStringVar1\n\
+ movs r2, 0x1\n\
+ movs r3, 0x3\n\
+ bl ConvertIntToDecimalStringN\n\
+ movs r7, 0\n\
+ ldrb r0, [r4]\n\
+ movs r3, 0xF\n\
+ ands r3, r0\n\
+ movs r2, 0\n\
+ ldr r4, [sp, 0x10]\n\
+ lsls r4, 2\n\
+ str r4, [sp, 0x28]\n\
+ ldr r4, [sp, 0x14]\n\
+ subs r4, 0x4\n\
+ lsls r0, r6, 24\n\
+ mov r10, r0\n\
+ ldr r1, [sp, 0x1C]\n\
+ adds r1, 0xA2\n\
+ mov r9, r1\n\
+ ldr r0, [sp, 0x18]\n\
+ lsls r0, 5\n\
+ mov r8, r0\n\
+ adds r6, 0xE\n\
+ adds r5, 0x1\n\
+ ldr r1, =gUnknown_082F334C\n\
+ mov r12, r1\n\
+ _08021BB8:\n\
+ movs r0, 0x3\n\
+ subs r1, r0, r2\n\
+ adds r0, r3, 0\n\
+ asrs r0, r1\n\
+ movs r1, 0x1\n\
+ ands r0, r1\n\
+ cmp r0, 0\n\
+ beq _08021BD0\n\
+ lsls r0, r2, 2\n\
+ add r0, r12\n\
+ ldr r0, [r0]\n\
+ adds r7, r0\n\
+ _08021BD0:\n\
+ adds r0, r2, 0x1\n\
+ lsls r0, 24\n\
+ lsrs r2, r0, 24\n\
+ cmp r2, 0x3\n\
+ bls _08021BB8\n\
+ adds r0, r7, 0\n\
+ ldr r1, =0x000f4240\n\
+ bl __udivsi3\n\
+ lsls r0, 24\n\
+ lsrs r3, r0, 24\n\
+ ldr r0, =gStringVar2\n\
+ adds r1, r3, 0\n\
+ movs r2, 0x2\n\
+ movs r3, 0x2\n\
+ bl ConvertIntToDecimalStringN\n\
+ ldr r0, =gUnknown_082F43B4\n\
+ ldr r2, [sp, 0x28]\n\
+ adds r0, r2, r0\n\
+ ldr r1, [r0]\n\
+ ldr r0, =gStringVar4\n\
+ bl StringExpandPlaceholders\n\
+ b _08021C5E\n\
+ .pool\n\
+ _08021C1C:\n\
+ str r5, [sp, 0x18]\n\
+ str r5, [sp, 0x1C]\n\
+ lsls r7, r5, 5\n\
+ ldr r3, [sp, 0xC]\n\
+ adds r0, r3, r7\n\
+ adds r0, 0xA4\n\
+ ldrb r2, [r0]\n\
+ cmp r2, 0x2B\n\
+ bls _08021C30\n\
+ movs r2, 0\n\
+ _08021C30:\n\
+ lsls r1, r2, 3\n\
+ subs r1, r2\n\
+ lsls r1, 2\n\
+ ldr r0, =gBerries\n\
+ adds r1, r0\n\
+ ldr r0, =gStringVar1\n\
+ bl StringCopy\n\
+ ldr r0, =gUnknown_082F43B4\n\
+ ldr r1, [r0, 0x8]\n\
+ ldr r0, =gStringVar4\n\
+ bl StringExpandPlaceholders\n\
+ ldr r4, [sp, 0x14]\n\
+ subs r4, 0x4\n\
+ lsls r0, r6, 24\n\
+ mov r10, r0\n\
+ movs r1, 0xA2\n\
+ adds r1, r5\n\
+ mov r9, r1\n\
+ mov r8, r7\n\
+ _08021C5A:\n\
+ adds r6, 0xE\n\
+ adds r5, 0x1\n\
+ _08021C5E:\n\
+ movs r0, 0x2\n\
+ ldr r1, =gStringVar4\n\
+ adds r2, r4, 0\n\
+ bl GetStringRightAlignXOffset\n\
+ adds r2, r0, 0\n\
+ ldr r3, [sp, 0xC]\n\
+ movs r4, 0xDD\n\
+ lsls r4, 1\n\
+ adds r0, r3, r4\n\
+ ldrb r0, [r0]\n\
+ lsls r2, 24\n\
+ lsrs r2, 24\n\
+ mov r1, r10\n\
+ lsrs r3, r1, 24\n\
+ ldr r1, =sBerryCrushTextColors1\n\
+ str r1, [sp]\n\
+ movs r4, 0\n\
+ str r4, [sp, 0x4]\n\
+ ldr r1, =gStringVar4\n\
+ str r1, [sp, 0x8]\n\
+ movs r1, 0x2\n\
+ bl AddTextPrinterParameterized3\n\
+ ldr r3, [sp, 0x18]\n\
+ ldr r2, [sp, 0xC]\n\
+ ldrb r2, [r2, 0x8]\n\
+ cmp r3, r2\n\
+ bne _08021CC0\n\
+ ldr r0, =gStringVar3\n\
+ ldr r1, =gText_1DotBlueF700\n\
+ bl StringCopy\n\
+ b _08021CC8\n\
+ .pool\n\
+ _08021CC0:\n\
+ ldr r0, =gStringVar3\n\
+ ldr r1, =gText_1DotF700\n\
+ bl StringCopy\n\
+ _08021CC8:\n\
+ ldr r4, =gStringVar3\n\
+ mov r3, r9\n\
+ strb r3, [r4]\n\
+ mov r1, r8\n\
+ adds r1, 0x98\n\
+ ldr r0, [sp, 0xC]\n\
+ adds r1, r0, r1\n\
+ movs r0, 0\n\
+ bl DynamicPlaceholderTextUtil_SetPlaceholderPtr\n\
+ ldr r0, =gStringVar4\n\
+ adds r1, r4, 0\n\
+ bl DynamicPlaceholderTextUtil_ExpandPlaceholders\n\
+ ldr r1, [sp, 0xC]\n\
+ movs r2, 0xDD\n\
+ lsls r2, 1\n\
+ adds r0, r1, r2\n\
+ ldrb r0, [r0]\n\
+ mov r4, r10\n\
+ lsrs r3, r4, 24\n\
+ ldr r1, =sBerryCrushTextColors1\n\
+ str r1, [sp]\n\
+ movs r1, 0\n\
+ str r1, [sp, 0x4]\n\
+ ldr r2, =gStringVar4\n\
+ str r2, [sp, 0x8]\n\
+ movs r1, 0x2\n\
+ movs r2, 0x4\n\
+ bl AddTextPrinterParameterized3\n\
+ lsls r0, r5, 24\n\
+ lsrs r5, r0, 24\n\
+ ldr r3, [sp, 0xC]\n\
+ ldrb r3, [r3, 0x9]\n\
+ cmp r5, r3\n\
+ bcs _08021D14\n\
+ b _08021A98\n\
+ _08021D14:\n\
+ add sp, 0x2C\n\
+ pop {r3-r5}\n\
+ mov r8, r3\n\
+ mov r9, r4\n\
+ mov r10, r5\n\
+ pop {r4-r7}\n\
+ pop {r0}\n\
+ bx r0\n\
+ .pool");
+}
+#endif
+
+void sub_8021D34(struct BerryCrushGame *r8)
+{
+ u8 r10 = 0;
+ u8 r6 = 0;
+ u32 sp0C = 0;
+ union BerryCrushGame_68 *sp10 = &r8->unk68;
+ u8 r7 = GetWindowAttribute(r8->unk138.unk82, WINDOW_HEIGHT) * 8 - 42;
+
+ sub_8021944(&r8->unk138, sp10->as_four_players.unk00.unk04);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_TimeColon);
+ r6 = 176 - (u8)GetStringWidth(2, gText_SpaceSec, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_SpaceSec);
+ ConvertIntToDecimalStringN(gStringVar1, r8->unk138.unk6, STR_CONV_MODE_LEADING_ZEROS, 2);
+ ConvertIntToDecimalStringN(gStringVar2, r8->unk138.unk8, STR_CONV_MODE_LEADING_ZEROS, 2);
+ StringExpandPlaceholders(gStringVar4, gText_XDotY2);
+ r6 -= GetStringWidth(2, gStringVar4, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4);
+ r6 -= GetStringWidth(2, gText_SpaceMin, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_SpaceMin);
+ ConvertIntToDecimalStringN(gStringVar1, r8->unk138.unk4, STR_CONV_MODE_LEADING_ZEROS, 1);
+ StringExpandPlaceholders(gStringVar4, gText_StrVar1);
+ r6 -= GetStringWidth(2, gStringVar4, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4);
+ r7 += 14;
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColors1[0], 0, gText_PressingSpeed);
+ r6 = 176 - (u8)GetStringWidth(2, gText_TimesPerSec, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gText_TimesPerSec);
+ for (; r10 < 8; ++r10)
+ if (((u8)r8->unk16 >> (7 - r10)) & 1)
+ sp0C += *(r10 + gUnknown_082F334C); // It's accessed in a different way here for unknown reason
+ ConvertIntToDecimalStringN(gStringVar1, r8->unk16 >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(gStringVar2, sp0C / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2);
+ StringExpandPlaceholders(gStringVar4, gText_XDotY3);
+ r6 -= GetStringWidth(2, gStringVar4, -1);
+ if (r8->unk25_1)
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors4, 0, gStringVar4);
+ else
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4);
+ r7 += 14;
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, 0, r7, sBerryCrushTextColors1[0], 0, gText_Silkiness);
+ ConvertIntToDecimalStringN(gStringVar1, sp10->as_four_players.unk00.unk08, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ StringExpandPlaceholders(gStringVar4, gText_Var1Percent);
+ r6 = 176 - (u8)GetStringWidth(2, gStringVar4, -1);
+ AddTextPrinterParameterized3(r8->unk138.unk82, 2, r6, r7, sBerryCrushTextColors1[0], 0, gStringVar4);
+}
+
+bool32 sub_8022070(struct BerryCrushGame *r4, struct BerryCrushGame_138 *r6)
+{
+ u8 r5;
+ struct WindowTemplate template;
+
+ switch (r6->unk80)
+ {
+ case 0:
+ r5 = r4->unk9 - 2;
+ sub_8022554(r6);
+ memcpy(&template, &gUnknown_082F32CC[r4->unk12], sizeof(struct WindowTemplate));
+ if (r4->unk12 == 13)
+ template.height = gUnknown_082F3344[1][r5];
+ else
+ template.height = gUnknown_082F3344[0][r5];
+ r6->unk82 = AddWindow(&template);
+ break;
+ case 1:
+ PutWindowTilemap(r6->unk82);
+ FillWindowPixelBuffer(r6->unk82, PIXEL_FILL(0));
+ break;
+ case 2:
+ LoadUserWindowBorderGfx_(r6->unk82, 541, 208);
+ DrawStdFrameWithCustomTileAndPalette(r6->unk82, 0, 541, 13);
+ break;
+ case 3:
+ r5 = r4->unk9 - 2;
+ switch (r4->unk12)
+ {
+ case 11:
+ sub_80219C8(r6->unk82, 20, 3, gText_PressesRankings);
+ sub_8021A28(r4, 0, 0xA0, 8 * gUnknown_082F3344[0][r5]);
+ r6->unk80 = 5;
+ return FALSE;
+ case 12:
+ sub_80219C8(r6->unk82, 20, 4, gUnknown_082F43B4[r4->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7] + 3]);
+ sub_8021A28(r4, 1, 0xA0, 8 * gUnknown_082F3344[0][r5]);
+ r6->unk80 = 5;
+ return FALSE;
+ case 13:
+ sub_80219C8(r6->unk82, 22, 3, gText_CrushingResults);
+ sub_8021A28(r4, 2, 0xB0, 8 * gUnknown_082F3344[1][r5]);
+ break;
+ }
+ break;
+ case 4:
+ sub_8021D34(r4);
+ break;
+ case 5:
+ CopyWindowToVram(r6->unk82, 3);
+ r6->unk80 = 0;
+ return TRUE;
+ }
+ ++r6->unk80;
+ return FALSE;
+}
+
+void sub_802222C(struct BerryCrushGame *r4)
+{
+ ClearStdWindowAndFrameToTransparent(r4->unk138.unk82, 1);
+ RemoveWindow(r4->unk138.unk82);
+ sub_8022600(r4);
+}
+
+void sub_8022250(u8 r4)
+{
+ u8 r9 = 0, r2, r7, r10;
+ u32 sp0C = 0;
+ s16 *r6 = gTasks[r4].data;
+ const u8 *r10_; // turn r5/sl register swap into r8/sl
+
+ switch (r6[0])
+ {
+ case 0:
+ r6[1] = AddWindow(&gUnknown_082F32EC);
+ PutWindowTilemap((u8)r6[1]);
+ FillWindowPixelBuffer((u8)r6[1], PIXEL_FILL(0));
+ LoadUserWindowBorderGfx_((u8)r6[1], 541, 208);
+ DrawStdFrameWithCustomTileAndPalette((u8)r6[1], 0, 541, 13);
+ break;
+ case 1:
+ r10_ = gText_BerryCrush2;
+ ++r10_; --r10_; // swap sb/sl
+ #ifndef NONMATCHING
+ asm("":::"r8"); // turn r8/sl register swap into sb/sl
+ #endif
+ r7 = 96 - GetStringWidth(1, r10_, -1) / 2u;
+ AddTextPrinterParameterized3(
+ (u8)r6[1],
+ 1,
+ r7,
+ 1,
+ sBerryCrushTextColorTable[0],
+ 0,
+ r10_
+ );
+ r10_ = gText_PressingSpeedRankings;
+ r7 = 96 - GetStringWidth(1, r10_, -1) / 2u;
+ AddTextPrinterParameterized3(
+ (u8)r6[1],
+ 1,
+ r7,
+ 17,
+ sBerryCrushTextColorTable[0],
+ 0,
+ r10_
+ );
+ r10 = 41;
+ for (; r9 < 4; ++r9)
+ {
+ ConvertIntToDecimalStringN(gStringVar1, r9 + 2, STR_CONV_MODE_LEFT_ALIGN, 1);
+ StringExpandPlaceholders(gStringVar4, gText_Var1Players);
+ AddTextPrinterParameterized3(
+ (u8)r6[1],
+ 1,
+ 0,
+ r10,
+ sBerryCrushTextColors1[0],
+ 0,
+ gStringVar4
+ );
+ r7 = 192 - (u8)GetStringWidth(1, gText_TimesPerSec, -1);
+ AddTextPrinterParameterized3(
+ (u8)r6[1],
+ 1,
+ r7,
+ r10,
+ sBerryCrushTextColors1[0],
+ 0,
+ gText_TimesPerSec
+ );
+ for (r2 = 0; r2 < 8; ++r2)
+ if (((u8)r6[r9 + 2] >> (7 - r2)) & 1)
+ sp0C += gUnknown_082F334C[r2];
+ ConvertIntToDecimalStringN(gStringVar1, (u16)r6[r9 + 2] >> 8, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(gStringVar2, sp0C / 1000000, STR_CONV_MODE_LEADING_ZEROS, 2);
+ StringExpandPlaceholders(gStringVar4, gText_XDotY3);
+ r7 -= GetStringWidth(1, gStringVar4, -1);
+ AddTextPrinterParameterized3(
+ (u8)r6[1],
+ 1,
+ r7,
+ r10,
+ sBerryCrushTextColors1[0],
+ 0,
+ gStringVar4
+ );
+ r10 += 16;
+ sp0C = 0;
+ }
+ CopyWindowToVram((u8)r6[1], 3);
+ break;
+ case 2:
+ if (gMain.newKeys & (A_BUTTON | B_BUTTON))
+ break;
+ else
+ return;
+ case 3:
+ ClearStdWindowAndFrameToTransparent((u8)r6[1], 1);
+ ClearWindowTilemap((u8)r6[1]);
+ RemoveWindow((u8)r6[1]);
+ DestroyTask(r4);
+ EnableBothScriptContexts();
+ ScriptContext2_Disable();
+ r6[0] = 0;
+ return;
+ }
+ ++r6[0];
+}
+
+void ShowBerryCrushRankings(void)
+{
+ u8 taskId;
+
+ ScriptContext2_Enable();
+ taskId = CreateTask(sub_8022250, 0);
+ gTasks[taskId].data[2] = gSaveBlock2Ptr->berryCrush.berryCrushResults[0];
+ gTasks[taskId].data[3] = gSaveBlock2Ptr->berryCrush.berryCrushResults[1];
+ gTasks[taskId].data[4] = gSaveBlock2Ptr->berryCrush.berryCrushResults[2];
+ gTasks[taskId].data[5] = gSaveBlock2Ptr->berryCrush.berryCrushResults[3];
+}
+
+void sub_8022524(struct BerryCrushGame_138 *r4, u16 r1)
+{
+ sub_8021944(r4, r1);
+ sub_8035044(0, r4->unk4);
+ sub_8035044(1, r4->unk6);
+ sub_8035044(2, r4->unk8);
+}
+
+void sub_8022554(struct BerryCrushGame_138 *r0)
+{
+ r0->unk78[0]->invisible = TRUE;
+ r0->unk78[1]->invisible = TRUE;
+ sub_803547C(2, 1);
+ sub_803547C(1, 1);
+ sub_803547C(0, 1);
+}
+
+void sub_8022588(struct BerryCrushGame *r5)
+{
+ u8 r6;
+
+ for (r6 = 0; r6 < r5->unk9; ++r6)
+ {
+ r5->unk138.unkC[r6] = &gUnknown_082F4190[gUnknown_082F417C[r5->unk9 - 2][r6]];
+ r5->unk138.unk83[r6] = AddWindow(&gUnknown_082F32F4[r5->unk138.unkC[r6]->unk0]);
+ PutWindowTilemap(r5->unk138.unk83[r6]);
+ FillWindowPixelBuffer(r5->unk138.unk83[r6], 0);
+ }
+}
+
+void sub_8022600(struct BerryCrushGame *r6)
+{
+ u8 r7, r2;
+ u8 *r4;
+
+ for (r7 = 0; r7 < r6->unk9; ++r7)
+ {
+ PutWindowTilemap(r6->unk138.unk83[r7]);
+ if (r7 == r6->unk8)
+ {
+ AddTextPrinterParameterized4(
+ r6->unk138.unk83[r7],
+ 2,
+ 36 - GetStringWidth(2, PLAYER_UNK14(r6, r7), 0) / 2u,
+ 1,
+ 0,
+ 0,
+ sBerryCrushTextColors2[0],
+ 0,
+ PLAYER_UNK14(r6, r7)
+ );
+ }
+ else
+ {
+ AddTextPrinterParameterized4(
+ r6->unk138.unk83[r7],
+ 2,
+ 36 - GetStringWidth(2, PLAYER_UNK14(r6, r7), 0) / 2u,
+ 1,
+ 0,
+ 0,
+ sBerryCrushTextColors3[0],
+ 0,
+ PLAYER_UNK14(r6, r7)
+ );
+ }
+ CopyWindowToVram(r6->unk138.unk83[r7], 3);
+ }
+ CopyBgTilemapBufferToVram(0);
+}
+
+void sub_80226D0(struct BerryCrushGame *r6)
+{
+ u8 r5 = 0;
+ const u32 *r0 = gUnknown_08DE3FD4;
+#ifndef NONMATCHING // r4, r5, r6 register roulette
+ register u8 *r4 asm("r4") = gDecompressionBuffer;
+ register u32 r0_ asm("r0");
+#else
+ u8 *r4 = gDecompressionBuffer;
+ u32 r0_;
+#endif
+
+ LZ77UnCompWram(r0, r4);
+ for (; r5 < r6->unk9; ++r5)
+ {
+ r0_ = r6->unk138.unkC[r5]->unk0;
+ CopyToBgTilemapBufferRect(
+ 3,
+ &r4[r0_ * 40],
+ r6->unk138.unkC[r5]->unk1,
+ r6->unk138.unkC[r5]->unk2,
+ 10,
+ 2
+ );
+ }
+ CopyBgTilemapBufferToVram(3);
+}
+
+void sub_8022730(struct BerryCrushGame *r6)
+{
+ u8 r5 = 0;
+ u8 r2;
+
+ r6->unk2A = -104;
+ r6->unk2C = 0;
+ gSpriteCoordOffsetX = 0;
+ gSpriteCoordOffsetY = -104;
+ for (; r5 < 4; ++r5)
+ LoadCompressedSpriteSheet(&gUnknown_082F41F4[r5]);
+ LoadSpritePalettes(&gUnknown_082F421C);
+ r2 = CreateSprite(&gUnknown_082F430C, 120, 88, 5);
+ r6->unk138.unk20 = &gSprites[r2];
+ r6->unk138.unk20->oam.priority = 3;
+ r6->unk138.unk20->coordOffsetEnabled = TRUE;
+ r6->unk138.unk20->animPaused = TRUE;
+ for (r5 = 0; r5 < r6->unk9; ++r5)
+ {
+ r2 = CreateSprite(
+ &gUnknown_082F4324,
+ r6->unk138.unkC[r5]->unk4 + 120,
+ r6->unk138.unkC[r5]->unk6 + 32,
+ 0
+ );
+ r6->unk138.unk24[r5] = &gSprites[r2];
+ r6->unk138.unk24[r5]->oam.priority = 1;
+ r6->unk138.unk24[r5]->invisible = TRUE;
+ r6->unk138.unk24[r5]->coordOffsetEnabled = TRUE;
+ r6->unk138.unk24[r5]->animPaused = TRUE;
+ }
+ for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.unk4C); ++r5)
+ {
+ r2 = CreateSprite(
+ &gUnknown_082F433C,
+ gUnknown_082F41D2[r5][0] + 120,
+ gUnknown_082F41D2[r5][1] + 136,
+ 6
+ );
+ r6->unk138.unk4C[r5] = &gSprites[r2];
+ r6->unk138.unk4C[r5]->oam.priority = 3;
+ r6->unk138.unk4C[r5]->invisible = TRUE;
+ r6->unk138.unk4C[r5]->animPaused = TRUE;
+ r6->unk138.unk4C[r5]->data[0] = r5;
+ }
+ for (r5 = 0; r5 < ARRAY_COUNT(r6->unk138.unk78); ++r5)
+ {
+ r2 = CreateSprite(
+ &gUnknown_082F4354,
+ 24 * r5 + 176,
+ 8,
+ 0
+ );
+ r6->unk138.unk78[r5] = &gSprites[r2];
+ r6->unk138.unk78[r5]->oam.priority = 0;
+ r6->unk138.unk78[r5]->invisible = FALSE;
+ r6->unk138.unk78[r5]->animPaused = FALSE;
+ }
+ sub_8034D14(0, 0, &gUnknown_082F4384[0]);
+ sub_8034D14(1, 0, &gUnknown_082F4384[1]);
+ sub_8034D14(2, 0, &gUnknown_082F4384[2]);
+ if (r6->unk12 == 1)
+ sub_8022554(&r6->unk138);
+}
+
+void sub_8022960(struct BerryCrushGame *r5)
+{
+ u8 r4 = 0;
+
+ FreeSpriteTilesByTag(4);
+ FreeSpriteTilesByTag(3);
+ FreeSpriteTilesByTag(2);
+ FreeSpriteTilesByTag(1);
+ FreeSpritePaletteByTag(4);
+ FreeSpritePaletteByTag(2);
+ FreeSpritePaletteByTag(1);
+ for (; r4 < ARRAY_COUNT(r5->unk138.unk78); ++r4)
+ DestroySprite(r5->unk138.unk78[r4]);
+ sub_80353DC(2);
+ sub_80353DC(1);
+ sub_80353DC(0);
+ for (r4 = 0; r4 < ARRAY_COUNT(r5->unk138.unk4C); ++r4)
+ DestroySprite(r5->unk138.unk4C[r4]);
+ for (r4 = 0; r4 < r5->unk9; ++r4)
+ DestroySprite(r5->unk138.unk24[r4]);
+ if (r5->unk138.unk20->inUse)
+ DestroySprite(r5->unk138.unk20);
+}
+
+void sub_8022A20(struct Sprite *sprite)
+{
+ if (sprite->animEnded)
+ {
+ sprite->invisible = TRUE;
+ sprite->animPaused = TRUE;
+ }
+}
+
+void sub_8022A4C(struct Sprite *sprite)
+{
+ u8 r1 = 0;
+ SpriteCallback r5 = SpriteCallbackDummy;
+
+ for (; r1 < ARRAY_COUNT(sprite->data); ++r1)
+ sprite->data[r1] = 0;
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+ sprite->invisible = TRUE;
+ sprite->animPaused = TRUE;
+ sprite->callback = r5;
+}
+
+void sub_8022A94(struct Sprite *sprite)
+{
+ s16 *r4 = sprite->data;
+
+ r4[1] += r4[2];
+ sprite->pos2.y += r4[1] >> 8;
+ if (r4[7] & 0x8000)
+ {
+ sprite->data[0] += r4[3];
+ r4[4] += r4[5];
+ sprite->pos2.x = Sin(r4[4] >> 7, r4[6]);
+ if (r4[7] & 0x8000 && r4[4] >> 7 > 126)
+ {
+ sprite->pos2.x = 0;
+ r4[7] &= 0x7FFF;
+ }
+ }
+ sprite->pos1.x = r4[0] >> 7;
+ if (sprite->pos1.y + sprite->pos2.y > (r4[7] & 0x7FFF))
+ sprite->callback = sub_8022A4C;
+}
+
+void sub_8022B28(struct Sprite *sprite)
+{
+ s16 *r7 = sprite->data;
+ s16 r4, r5;
+ s32 r2;
+ u32 r8 = 0;
+
+ r2 = 640;
+ r7[1] = r2;
+ r7[2] = 32;
+ r7[7] = 168;
+ r4 = sprite->pos2.x * 128;
+ r5 = sub_81515D4(7, (168 - sprite->pos1.y) << 7, (r2 + 32) >> 1);
+ sprite->data[0] = sprite->pos1.x << 7;
+ r7[3] = sub_81515D4(7, r4, r5);
+ r2 = sub_8151550(7, r5, 85);
+ r7[4] = r8;
+ r7[5] = sub_81515D4(7, 0x3F80, r2);
+ r7[6] = sprite->pos2.x / 4;
+ r7[7] |= 0x8000;
+ sprite->pos2.y = r8;
+ sprite->pos2.x = r8;
+ sprite->callback = sub_8022A94;
+ sprite->animPaused = FALSE;
+ sprite->invisible = FALSE;
+}
+
+void sub_8022BEC(u16 r5, u8 r4, u8 *r7)
+{
+ struct BerryCrushGame *r6 = sub_8020C00();
+
+ if (r5 > 25)
+ r5 = 0;
+ switch (r4)
+ {
+ case 0:
+ if (r5 != 0)
+ gUnknown_082F43CC[r5](r6, r7);
+ if (r6->unkE > 25)
+ r6->unkE = r4;
+ r6->unk4 = gUnknown_082F43CC[r6->unkE];
+ break;
+ case 1:
+ r6->unk4 = gUnknown_082F43CC[r5];
+ break;
+ }
+}
+
+u32 sub_8022C58(struct BerryCrushGame *r6, u8 *r1)
+{
+ u16 r4;
+ u32 r0;
+#ifndef NONMATCHING // fake match, nobody can write such code
+ register u32 r2 asm("r2");
+ register u32 r3 asm("r3");
+
+ r2 = r1[0];
+ r3 = r1[1];
+ r3 <<= 8;
+ r2 |= r3;
+ r3 = r1[2];
+ r3 <<= 16;
+ r2 |= r3;
+ r3 = r1[3];
+ r3 <<= 24;
+ r0 = r2;
+ r0 |= r3;
+#else
+ u32 r2;
+
+ r0 = T1_READ_32(r1);
+#endif
+ r2 = r1[9];
+ r1[0] = r2;
+ r4 = r1[8] << 8;
+ r2 = r1[7];
+ r4 |= r2;
+ gPaletteFade.bufferTransferDisabled = FALSE;
+ BeginNormalPaletteFade(r0, r1[4], r1[5], r1[6], r4);
+ UpdatePaletteFade();
+ r6->unkE = 2;
+ return 0;
+}
+
+u32 sub_8022CB0(struct BerryCrushGame *r4, u8 *r5)
+{
+ switch (r4->unkC)
+ {
+ case 0:
+ if (UpdatePaletteFade())
+ return 0;
+ if(r5[0] != 0)
+ ++r4->unkC;
+ else
+ r4->unkC = 3;
+ return 0;
+ case 1:
+ sub_8010434();
+ ++r4->unkC;
+ return 0;
+ case 2:
+ if (IsLinkTaskFinished())
+ {
+ ++r4->unkC;
+ return 0;
+ }
+ return 0;
+ case 3:
+ sub_8022BEC(r4->unkF, 1, NULL);
+ r4->unkC = 0;
+ return 0;
+ default:
+ ++r4->unkC;
+ return 0;
+ }
+}
+
+u32 sub_8022D14(struct BerryCrushGame *r7, u8 *r5)
+{
+ u16 r4 = r5[3];
+
+ r4 <<= 8;
+ r4 |= r5[2];
+ switch (r7->unkC)
+ {
+ case 0:
+ DrawDialogueFrame(0, 0);
+ if (r5[1] & 2)
+ {
+ StringExpandPlaceholders(gStringVar4, gUnknown_082F32A4[r5[0]]);
+ AddTextPrinterParameterized2(0, 1, gStringVar4, r7->unkB, 0, 2, 1, 3);
+ }
+ else
+ {
+ AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[r5[0]], r7->unkB, 0, 2, 1, 3);
+ }
+ CopyWindowToVram(0, 3);
+ break;
+ case 1:
+ if (!IsTextPrinterActive(0))
+ {
+ if (r4 == 0)
+ ++r7->unkC;
+ break;
+ }
+ return 0;
+ case 2:
+ if (!(r4 & gMain.newKeys))
+ return 0;
+ break;
+ case 3:
+ if (r5[1] & 1)
+ ClearDialogWindowAndFrame(0, 1);
+ sub_8022BEC(r7->unkE, 1, NULL);
+ r7->unkC = r5[4];
+ return 0;
+ }
+ ++r7->unkC;
+ return 0;
+}
+
+u32 sub_8022E1C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ if (sub_802104C() != 0)
+ sub_8022BEC(r4->unkE, 0, r4->unk36);
+ return 0;
+}
+
+u32 sub_8022E3C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ if (sub_802130C() != 0)
+ sub_8022BEC(r4->unkE, 0, r4->unk36);
+ return 0;
+}
+
+u32 sub_8022E5C(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ switch (r4->unkC)
+ {
+ case 0:
+ sub_8010434();
+ break;
+ case 1:
+ if (IsLinkTaskFinished())
+ {
+ PlayNewMapMusic(MUS_RG_SLOT);
+ sub_8022BEC(7, 1, NULL);
+ r4->unk12 = 3;
+ r4->unkC = 0;
+ }
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+u32 sub_8022EAC(struct BerryCrushGame *r4, u8 *r5)
+{
+ switch (r4->unkC)
+ {
+ default:
+ ++r4->unkC;
+ break;
+ case 0:
+ sub_8024578(r4);
+ sub_8024644(r5, 0, 1, 0, 1);
+ r4->unkE = 7;
+ sub_8022BEC(3, 1, NULL);
+ break;
+ case 1:
+ r4->unkE = 8;
+ sub_8022BEC(5, 1, NULL);
+ r4->unkC = 2;
+ break;
+ }
+ return 0;
+}
+
+u32 sub_8022F04(struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1)
+{
+ r0->unk4 = NULL;
+ SetMainCallback2(sub_8020E1C);
+ return 0;
+}
+
+u32 sub_8022F1C(struct BerryCrushGame *r5, u8 *r2)
+{
+ u8 r3;
+
+ switch (r5->unkC)
+ {
+ case 0:
+ sub_8024644(r2, 1, 0, 0, 1);
+ r5->unkE = 9;
+ sub_8022BEC(3, 1, NULL);
+ return 0;
+ case 1:
+ sub_8010434();
+ break;
+ case 2:
+ if (!IsLinkTaskFinished())
+ return 0;
+ memset(r5->unk40.unk2, 0, sizeof(r5->unk40.unk2));
+ r5->unk40.unk2[0] = r5->unk68.as_four_players.others[r5->unk8].unk0;
+ SendBlock(0, r5->unk40.unk2, 2);
+ break;
+ case 3:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r5->unk10 = 0;
+ break;
+ case 4:
+ if (GetBlockReceivedStatus() != gUnknown_082F4448[r5->unk9 - 2])
+ return 0;
+ for (r3 = 0; r3 < r5->unk9; ++r3)
+ {
+ r5->unk68.as_four_players.others[r3].unk0 = gBlockRecvBuffer[r3][0];
+ if (r5->unk68.as_four_players.others[r3].unk0 > 0xB0)
+ r5->unk68.as_four_players.others[r3].unk0 = 0;
+ r5->unk18 += gUnknown_0858AB24[r5->unk68.as_four_players.others[r3].unk0].unk0;
+ r5->unk1C += gUnknown_0858AB24[r5->unk68.as_four_players.others[r3].unk0].unk1;
+ }
+ r5->unk10 = 0;
+ ResetBlockReceivedFlags();
+ r5->unk20 = sub_81515FC(r5->unk18 << 8, 0x2000);
+ break;
+ case 5:
+ ClearDialogWindowAndFrame(0, 1);
+ sub_8022BEC(10, 1, NULL);
+ r5->unk12 = 4;
+ r5->unkC = 0;
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8023070(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ switch (r4->unkC)
+ {
+ case 0:
+ sub_80214A8(r4, &r4->unk138);
+ sub_8010434();
+ break;
+ case 1:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r4->unk138.unk0 = 0;
+ r4->unk138.unk1 = 0;
+ r4->unk138.unk2 = 0;
+ r4->unk138.unk3 = 0;
+ break;
+ case 2:
+ r4->unk138.unk38[r4->unk138.unk0]->callback = sub_8021608;
+ r4->unk138.unk38[r4->unk138.unk0]->affineAnimPaused = FALSE;
+ PlaySE(SE_NAGERU);
+ break;
+ case 3:
+ if (r4->unk138.unk38[r4->unk138.unk0]->callback == sub_8021608)
+ return 0;
+ r4->unk138.unk38[r4->unk138.unk0] = NULL;
+ ++r4->unk138.unk0;
+ sub_8010434();
+ break;
+ case 4:
+ if (!IsLinkTaskFinished())
+ return 0;
+ if (r4->unk138.unk0 < r4->unk9)
+ {
+ r4->unkC = 2;
+ return 0;
+ }
+ r4->unk138.unk0 = 0;
+ break;
+ case 5:
+ sub_80216A8(r4, &r4->unk138);
+ sub_8010434();
+ break;
+ case 6:
+ if (!IsLinkTaskFinished())
+ return 0;
+ PlaySE(SE_RU_HYUU);
+ sub_8022BEC(11, 1, NULL);
+ r4->unk12 = 5;
+ r4->unkC = 0;
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+u32 sub_80231B8(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ switch (r4->unkC)
+ {
+ case 0:
+ r4->unk2A += 4;
+ if (r4->unk2A < 0)
+ return 0;
+ r4->unk2A = 0;
+ r4->unk138.unk1 = 4;
+ r4->unk138.unk0 = 0;
+ r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0];
+ PlaySE(SE_W070);
+ break;
+ case 1:
+ r4->unk2C = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.unk0];
+ SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C);
+ ++r4->unk138.unk0;
+ if (r4->unk138.unk0 < r4->unk138.unk2)
+ return 0;
+ if (r4->unk138.unk1 == 0)
+ break;
+ --r4->unk138.unk1;
+ r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0];
+ r4->unk138.unk0 = 0;
+ return 0;
+ case 2:
+ r4->unk2C = 0;
+ SetGpuReg(REG_OFFSET_BG0VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG2VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG3VOFS, 0);
+ sub_8010434();
+ break;
+ case 3:
+ if (!IsLinkTaskFinished())
+ return 0;
+ sub_8022BEC(12, 1, NULL);
+ r4->unk12 = 6;
+ r4->unkC = 0;
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+u32 sub_80232EC(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ switch (r4-> unkC)
+ {
+ case 1:
+ if (!IsLinkTaskFinished())
+ return 0;
+ sub_802EB24(0x1000, 0x1000, 120, 80, 0);
+ break;
+ case 2:
+ if (sub_802EB84())
+ return 0;
+ // fallthrough
+ case 0:
+ sub_8010434();
+ break;
+ case 3:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r4->unk138.unk0 = 0;
+ r4->unk138.unk1 = 0;
+ r4->unk138.unk2 = 0;
+ r4->unk138.unk3 = 0;
+ r4->unk10 = 0;
+ if (r4->unk8 == 0)
+ sub_8022BEC(13, 1, NULL);
+ else
+ sub_8022BEC(14, 1, NULL);
+ r4->unk12 = 7;
+ r4->unkC = 0;
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+void sub_802339C(struct BerryCrushGame *r4)
+{
+ u8 r8 = 0;
+ u16 r3;
+ u16 *r2;
+ u8 r7 = 0;
+ s32 r2_ = 0;
+ s32 r0;
+
+ for (r7 = 0; r7 < r4->unk9; ++r7)
+ {
+ r2 = gRecvCmds[r7];
+ if ((r2[0] & 0xFF00) == 0x2F00
+ && r2[1] == 2)
+ {
+ if ((u8)r2[2] & 4)
+ {
+ r4->unk5C.unk02_3 |= gUnknown_082F325C[r7];
+ r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] = 1;
+ ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[3];
+ ++r8;
+ r3 = r4->unk28 - r4->unk68.as_four_players.others[r7].unk2;
+ if (r3 >= r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] - 1
+ && r3 <= r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] + 1)
+ {
+ ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[0];
+ r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] = r3;
+ if (r4->unk68.as_four_players.others[r7].unk4.as_hwords[0] > r4->unk68.as_four_players.others[r7].unk4.as_hwords[2])
+ r4->unk68.as_four_players.others[r7].unk4.as_hwords[2] = r4->unk68.as_four_players.others[r7].unk4.as_hwords[0];
+ }
+ else
+ {
+ r4->unk68.as_four_players.others[r7].unk4.as_hwords[0] = 0;
+ r4->unk68.as_four_players.others[r7].unk4.as_hwords[1] = r3;
+ }
+ r4->unk68.as_four_players.others[r7].unk2 = r4->unk28;
+ if (++r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][4] > 2)
+ r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][4] = 0;
+ }
+ else
+ {
+ r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] = 0;
+ }
+ }
+ }
+ if (r8 > 1)
+ {
+ for (r7 = 0; r7 < r4->unk9; ++r7)
+ {
+ if (r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] != 0)
+ {
+ r4->unk68.as_four_players.others[r7].unk4.as_2d_bytes[1][5] |= 2;
+ ++r4->unk68.as_four_players.others[r7].unk4.as_hwords[4];
+ }
+ }
+ }
+ if (r8 != 0)
+ {
+ r4->unk2E += r8;
+ r8 += gUnknown_082F3264[r8 - 1];
+ r4->unk34 += r8;
+ r4->unk1A += r8;
+ r0 = r4->unk18;
+ r2_ = r4->unk1A;
+ if (r0 - r2_ > 0)
+ {
+ r2_ <<= 8;
+ r2_ = sub_81515FC(r2_, r4->unk20);
+ r2_ >>= 8;
+ r4->unk24 = r2_;
+ }
+ else
+ {
+ r4->unk24 = 32;
+ r4->unk5C.unk02_0 = 1;
+ }
+ }
+}
+
+void sub_8023558(struct BerryCrushGame *r3)
+{
+ u8 r6 = 0;
+ u16 r1 = 0;
+ u8 r4 = 0;
+
+ for (r4 = 0; r4 < r3->unk9; ++r4)
+ {
+ if (r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] != 0)
+ {
+ ++r6;
+ r1 = r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][4] + 1;
+ if (r3->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] & 2)
+ r1 |= 4;
+ r1 <<= 3 * r4;
+ r3->unk5C.unk08 |= r1;
+ }
+ }
+ r3->unk5C.unk04 = r3->unk24;
+ if (r6 == 0)
+ {
+ if (r3->unk138.unk3 != 0)
+ ++r3->unk138.unk0;
+ else
+ goto SET_UNK5F_0;
+ }
+ else
+ {
+ if (r3->unk138.unk3 != 0)
+ {
+ if (r6 != r3->unk138.unk1)
+ {
+ r3->unk138.unk1 = r6 - 1;
+ r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0];
+ }
+ else
+ {
+ ++r3->unk138.unk0;
+ }
+ }
+ else
+ {
+ r3->unk138.unk0 = 0;
+ r3->unk138.unk1 = r6 - 1;
+ r3->unk138.unk2 = gUnknown_082F3290[r6 - 1][0];
+ r3->unk138.unk3 = 1;
+ }
+ }
+ if (r3->unk138.unk3 != 0)
+ {
+ if (r3->unk138.unk0 >= r3->unk138.unk2)
+ {
+ r3->unk138.unk0 = 0;
+ r3->unk138.unk1 = 0;
+ r3->unk138.unk2 = 0;
+ r3->unk138.unk3 = 0;
+ r1 = 0;
+ }
+ else
+ {
+ r1 = gUnknown_082F3290[r3->unk138.unk1][r3->unk138.unk0 + 1];
+ }
+ r3->unk5C.unk03 = r1;
+ }
+ else
+ {
+ SET_UNK5F_0:
+ r3->unk5C.unk03 = 0;
+ }
+ r3->unk5C.unk06 = r3->unk26;
+}
+
+void sub_80236B8(struct BerryCrushGame *r5)
+{
+ if (gMain.newKeys & A_BUTTON)
+ r5->unk5C.unk02_2 = 1;
+ if (gMain.heldKeys & A_BUTTON)
+ {
+ if (r5->unk68.as_four_players.others[r5->unk8].unk4.as_hwords[5] < r5->unk28)
+ ++r5->unk68.as_four_players.others[r5->unk8].unk4.as_hwords[5];
+ }
+ if (r5->unk8 != 0 && r5->unk5C.unk02_2 == 0)
+ return;
+ r5->unk5C.unk00 = 2;
+ if (r5->unk28 % 30 == 0)
+ {
+ if (r5->unk2E > gUnknown_082F4444[r5->unk9 - 2])
+ {
+ ++r5->unk30;
+ r5->unk25_4 = 1;
+ }
+ else
+ {
+ r5->unk25_4 = 0;
+ }
+ r5->unk2E = 0;
+ ++r5->unk32;
+ }
+ if (r5->unk28 % 15 == 0)
+ {
+ if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][0])
+ r5->unk25_5 = 0;
+ else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][1])
+ r5->unk25_5 = 1;
+ else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][2])
+ r5->unk34 = 2; // typo since r5->unk34 will be reset?
+ else if (r5->unk34 < gUnknown_082F4434[r5->unk9 - 2][3])
+ r5->unk34 = 3; // typo since r5->unk34 will be reset?
+ else
+ r5->unk25_5 = 4;
+ r5->unk34 = 0;
+ }
+ else
+ {
+ ++r5->unk10;
+ if (r5->unk10 > 60)
+ {
+ if (r5->unk10 > 70)
+ {
+ sub_8011AC8();
+ r5->unk10 = 0;
+ }
+ else if (r5->unk5C.unk02_3 == 0)
+ {
+ sub_8011AC8();
+ r5->unk10 = 0;
+ }
+ }
+
+ }
+ if (r5->unk28 >= 36000)
+ r5->unk5C.unk02_0 = 1;
+ r5->unk5C.unk02_1 = r5->unk25_4;
+ r5->unk5C.unk0A = r5->unk25_5;
+ memcpy(r5->unk40.unk2, &r5->unk5C, sizeof(r5->unk40.unk2));
+ sub_800FE50(r5->unk40.unk2);
+}
+
+void sub_802385C(struct BerryCrushGame *r5)
+{
+ struct BerryCrushGame_4E *r4_;
+#ifndef NONMATCHING
+ register u32 r4 asm("r4");
+ register u32 r0 asm("r0");
+
+ for (r4 = 0; r4 < r5->unk9; r4 = (u8)r0)
+ {
+ r5->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] = 0;
+ r0 = r4 + 1;
+ }
+#else
+ u8 r4;
+
+ for (r4 = 0; r4 < r5->unk9; ++r4)
+ r5->unk68.as_four_players.others[r4].unk4.as_2d_bytes[1][5] = 0;
+#endif
+ if ((gRecvCmds[0][0] & 0xFF00) != 0x2F00
+ || gRecvCmds[0][1] != 2)
+ {
+ r5->unk25_2 = 0;
+ }
+ else
+ {
+ r4_ = &r5->unk40.unkE;
+ memcpy(r4_, gRecvCmds, sizeof(struct BerryCrushGame_4E));
+ r5->unk2A = r4_->unk6;
+ r5->unk2C = r4_->unk5;
+ r5->unk28 = r4_->unk8;
+ sub_80216E0(r5, &r5->unk138);
+ if (r4_->unk4_0)
+ r5->unk25_3 = 1;
+ }
+}
+
+u32 sub_80238F0(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ memset(&r4->unk5C, 0, sizeof(r4->unk5C));
+ memset(&r4->unk40.unkE, 0, sizeof(r4->unk40.unkE));
+ sub_802385C(r4);
+ SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C);
+ if (r4->unk25_3)
+ {
+ if (r4->unk28 >= 36000)
+ {
+ r4->unk28 = 36000;
+ sub_8022BEC(16, 1, NULL);
+ }
+ else
+ {
+ sub_8022BEC(15, 1, NULL);
+ }
+ r4->unk10 = 0;
+ r4->unkC = 0;
+ return 0;
+ }
+ else
+ {
+ ++r4->unk26;
+ sub_802339C(r4);
+ sub_8023558(r4);
+ sub_80236B8(r4);
+ return 0;
+ }
+}
+
+u32 sub_8023998(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ memset(&r4->unk5C, 0, sizeof(r4->unk5C));
+ memset(&r4->unk40.unkE, 0, sizeof(r4->unk40.unkE));
+ sub_802385C(r4);
+ SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C);
+ if (r4->unk25_3)
+ {
+ if (r4->unk28 >= 36000)
+ {
+ r4->unk28 = 36000;
+ sub_8022BEC(16, 1, NULL);
+ }
+ else
+ {
+ sub_8022BEC(15, 1, NULL);
+ }
+ r4->unk10 = 0;
+ r4->unkC = 0;
+ return 0;
+ }
+ else
+ {
+ sub_80236B8(r4);
+ return 0;
+ }
+}
+
+u32 sub_8023A30(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ switch (r4->unkC)
+ {
+ case 0:
+ r4->unk12 = 8;
+ PlaySE(SE_W070);
+ BlendPalettes(0xFFFFFFFF, 8, RGB(31, 31, 0));
+ r4->unk138.unk0 = 2;
+ break;
+ case 1:
+ if (--r4->unk138.unk0 != 255)
+ return 0;
+ BlendPalettes(0xFFFFFFFF, 0, RGB(31, 31, 0));
+ r4->unk138.unk1 = 4;
+ r4->unk138.unk0 = 0;
+ r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0];
+ break;
+ case 2:
+ r4->unk2C = gUnknown_082F326C[r4->unk138.unk1][r4->unk138.unk0];
+ SetGpuReg(REG_OFFSET_BG0VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG2VOFS, -r4->unk2C);
+ SetGpuReg(REG_OFFSET_BG3VOFS, -r4->unk2C);
+ if (++r4->unk138.unk0 < r4->unk138.unk2)
+ return 0;
+ if (r4->unk138.unk1 != 0)
+ {
+ --r4->unk138.unk1;
+ r4->unk138.unk2 = gUnknown_082F326C[r4->unk138.unk1][0];
+ r4->unk138.unk0 = 0;
+ return 0;
+ }
+ break;
+ case 3:
+ r4->unk2C = 0;
+ SetGpuReg(REG_OFFSET_BG0VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG2VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG3VOFS, 0);
+ break;
+ case 4:
+ if (!sub_80218D4(r4, &r4->unk138))
+ return 0;
+ sub_8010434();
+ r4->unk10 = 0;
+ break;
+ case 5:
+ if (!IsLinkTaskFinished())
+ return 0;
+ sub_8022BEC(17, 1, NULL);
+ r4->unk10 = 0;
+ r4->unkC = 0;
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+u32 sub_8023BC0(struct BerryCrushGame *r5, u8 *r6)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ r5->unk12 = 9;
+ PlaySE(SE_HAZURE);
+ BlendPalettes(0xFFFFFFFF, 8, RGB(31, 0, 0));
+ r5->unk138.unk0 = 4;
+ break;
+ case 1:
+ if (--r5->unk138.unk0 != 255)
+ return 0;
+ BlendPalettes(0xFFFFFFFF, 0, RGB(31, 0, 0));
+ r5->unk138.unk0 = 0;
+ break;
+ case 2:
+ if (!sub_80218D4(r5, &r5->unk138))
+ return 0;
+ sub_8010434();
+ r5->unk10 = 0;
+ SetGpuReg(REG_OFFSET_BG0VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG2VOFS, 0);
+ SetGpuReg(REG_OFFSET_BG3VOFS, 0);
+ break;
+ case 3:
+ if (!IsLinkTaskFinished())
+ return 0;
+ ConvertIntToDecimalStringN(gStringVar1, r5->unk1C, STR_CONV_MODE_LEFT_ALIGN, 6);
+ sub_8024644(r6, 7, 1, 0, 0);
+ r5->unkE = 19;
+ sub_8022BEC(3, 1, NULL);
+ r5->unk10 = 0;
+ r5->unkC = 0;
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8023CAC(struct BerryCrushGame *r7, __attribute__((unused)) u8 *r1)
+{
+ u8 r8, r4_;
+ s32 r2;
+ s32 r4;
+ u8 r6; // ???
+
+ switch (r7->unkC)
+ {
+ case 0:
+ memset(r7->unk40.unk2, 0, 2 * sizeof(u16));
+ if (r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5] > r7->unk28)
+ r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5] = r7->unk28;
+ r7->unk40.unk2[0] = r7->unk68.as_four_players.others[r7->unk8].unk4.as_hwords[5];
+ SendBlock(0, r7->unk40.unk2, 2);
+ break;
+ case 1:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r7->unk10 = 0;
+ break;
+ case 2:
+ if (GetBlockReceivedStatus() != gUnknown_082F4448[r7->unk9 - 2])
+ return 0;
+ for (r8 = 0; r8 < r7->unk9; ++r8)
+ r7->unk68.as_four_players.others[r8].unk4.as_hwords[5] = gBlockRecvBuffer[r8][0];
+ r7->unk10 = 0;
+ r7->unk40.unk2[0] = 0;
+ ResetBlockReceivedFlags();
+ if (r7->unk8 == 0)
+ r7->unkC = 3;
+ else
+ r7->unkC = 6;
+ return 0;
+ case 3:
+ memset(
+ &r7->unk68,
+ 0,
+ sizeof(struct BerryCrushGame_68_x_SubStruct)
+ );
+ r7->unk68.as_four_players.unk00.unk04 = r7->unk28;
+ r7->unk68.as_four_players.unk00.unk06 = r7->unk18 / (r7->unk28 / 60);
+ r2 = sub_8151574(r7->unk30 << 8, 0x3200);
+ r2 = sub_81515FC(r2, r7->unk32 << 8) + 0x3200;
+ r2 >>= 8;
+ r7->unk68.as_four_players.unk00.unk08 = r2 & 0x7F;
+ r2 <<= 8;
+ r2 = sub_81515FC(r2, 0x6400);
+ r4 = (r7->unk1C * r7->unk9) << 8;
+ r4 = sub_8151574(r4, r2);
+ r7->unk68.as_four_players.unk00.unk00 = r4 >> 8;
+ r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7] = Random() % 3;
+ for (r6 = 0, r8 = 0; r8 < r7->unk9; ++r8)
+ {
+ r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][r8] = r8;
+ r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[1][r8] = r8;
+ r7->unk68.as_four_players.unk00.unk0C[0][r8] = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3];
+ r7->unk68.as_four_players.unk00.unk0A += r7->unk68.as_four_players.unk00.unk0C[0][r8];
+ switch (r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0][7])
+ {
+ case 0:
+ if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] != 0)
+ {
+ r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[2];
+ r2 <<= 8;
+ r2 = sub_8151574(r2, 0x6400);
+ r4 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3];
+ r4 <<= 8;
+ r4 = sub_81515FC(r2, r4);
+ }
+ else
+ {
+ r4 = 0;
+ }
+ break;
+ case 1:
+ if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] != 0)
+ {
+ r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[4];
+ r2 <<= 8;
+ r2 = sub_8151574(r2, 0x6400);
+ r4 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[3];
+ r4 <<= 8;
+ r4 = sub_81515FC(r2, r4);
+ }
+ else
+ {
+ r4 = 0;
+ }
+ break;
+ case 2:
+ if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[3] == 0)
+ {
+ r4 = 0;
+ }
+ else if (r7->unk68.as_four_players.others[r8].unk4.as_hwords[5] >= r7->unk28)
+ {
+ r4 = 0x6400;
+ }
+ else
+ {
+ r2 = r7->unk68.as_four_players.others[r8].unk4.as_hwords[5];
+ r2 <<= 8;
+ r2 = sub_8151574(r2, 0x6400);
+ r4 = r7->unk28;
+ r4 <<= 8;
+ r4 = sub_81515FC(r2, r4);
+ }
+ break;
+ }
+ r4 >>= 4;
+ r7->unk68.as_four_players.unk00.unk0C[1][r8] = r4;
+ }
+ break;
+ case 4:
+ for (r6 = 0, r8 = 0; r8 < r7->unk9 - 1; ++r8)
+ {
+ for (r4_ = r7->unk9 - 1; r4_ > r8; --r4_)
+ {
+ u16 r0;
+ u8 r3;
+ u16 *sp00 = r7->unk68.as_four_players.unk00.unk0C[0];
+ u8 *sp04 = r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[0];
+ u8 *r10 = r7->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[1];
+ u16 *r9 = r7->unk68.as_four_players.unk00.unk0C[1];
+ s32 r12 = r4_ - 1;
+ u16 *p1 = sp00 + r12; // these have to be here
+ u16 *p2 = sp00 + r4_; // to swap operands. macro?
+
+ if (*p1 < *p2)
+ {
+ r0 = sp00[r4_];
+ sp00[r4_] = sp00[r12];
+ sp00[r12] = r0;
+ r3 = sp04[r4_];
+ sp04[r4_] = sp04[r12];
+ sp04[r12] = r3;
+ }
+ p1 = r9 + r12;
+ p2 = r9 + r4_;
+ if (*p1 < *p2)
+ {
+ r0 = r9[r4_];
+ r9[r4_] = r9[r12];
+ r9[r12] = r0;
+ r3 = r10[r4_];
+ r10[r4_] = r10[r12];
+ r10[r12] = r3;
+ }
+ }
+ }
+ SendBlock(
+ 0,
+ &r7->unk68,
+ sizeof(struct BerryCrushGame_68_x_SubStruct)
+ );
+ break;
+ case 5:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r7->unk10 = 0;
+ break;
+ case 6:
+ if (GetBlockReceivedStatus() != 1)
+ return 0;
+ memset(
+ &r7->unk68,
+ 0,
+ sizeof(struct BerryCrushGame_68_x_SubStruct)
+ );
+ memcpy(
+ &r7->unk68,
+ gBlockRecvBuffer,
+ sizeof(struct BerryCrushGame_68_x_SubStruct)
+ );
+ ResetBlockReceivedFlags();
+ r7->unk10 = 0;
+ break;
+ case 7:
+ sub_8020E58();
+ sub_8022BEC(18, 1, NULL);
+ r7->unk12 = 11;
+ r7->unkC = 0;
+ r7->unk24 = 0;
+ return 0;
+ }
+ ++r7->unkC;
+ return 0;
+}
+
+u32 sub_8024048(struct BerryCrushGame *r5, u8 *r6)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ if (!sub_8022070(r5, &r5->unk138))
+ return 0;
+ break;
+ case 1:
+ CopyBgTilemapBufferToVram(0);
+ r5->unk138.unk0 = 30;
+ break;
+ case 2:
+ if (r5->unk138.unk0 != 0)
+ {
+ --r5->unk138.unk0;
+ return 0;
+ }
+ if (!(gMain.newKeys & A_BUTTON))
+ return 0;
+ PlaySE(SE_SELECT);
+ sub_802222C(r5);
+ break;
+ case 3:
+ if (r5->unk12 <= 12)
+ {
+ ++r5->unk12;
+ r5->unkC = 0;
+ return 0;
+ }
+ break;
+ case 4:
+ ConvertIntToDecimalStringN(gStringVar1, r5->unk1C, STR_CONV_MODE_LEFT_ALIGN, 6);
+ ConvertIntToDecimalStringN(gStringVar2, GetBerryPowder(), STR_CONV_MODE_LEFT_ALIGN, 6);
+ sub_8024644(r6, 2, 3, 0, 0);
+ r5->unkE = 19;
+ sub_8022BEC(3, 1, NULL);
+ r5->unkC = 0;
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8024134(struct BerryCrushGame *r5, u8 *r4)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ if (r5->unk28 >= 36000)
+ sub_8022554(&r5->unk138);
+ sub_8024644(r4, 8, 0, 0, 1);
+ r5->unkE = 19;
+ sub_8022BEC(3, 1, NULL);
+ r5->unkC = 0;
+ return 0;
+ case 1:
+ sub_8010434();
+ break;
+ case 2:
+ if (!IsLinkTaskFinished())
+ return 0;
+ DrawDialogueFrame(0, 0);
+ AddTextPrinterParameterized2(0, 1, gText_SavingDontTurnOffPower, 0, 0, 2, 1, 3);
+ CopyWindowToVram(0, 3);
+ CreateTask(sub_8153688, 0);
+ break;
+ case 3:
+ if (FuncIsActiveTask(sub_8153688))
+ return 0;
+ break;
+ case 4:
+ sub_8022BEC(20, 1, NULL);
+ r5->unk12 = 15;
+ r5->unkC = 0;
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8024228(struct BerryCrushGame *r5, u8 *r6)
+{
+ s32 r4;
+#ifndef NONMATCHING
+ register s32 r0 asm("r0");
+#else
+ s32 r0;
+#endif
+
+ switch (r5->unkC)
+ {
+ case 0:
+ sub_8024644(r6, 4, 0, 0, 1);
+ r5->unkE = 20;
+ sub_8022BEC(3, 1, NULL);
+ r0 = 0;
+ r5->unkC = r0; // dunno what it's doing because it's already in case 0
+ return 0;
+ case 1:
+ DisplayYesNoMenuDefaultYes();
+ break;
+ case 2:
+ if ((r4 = Menu_ProcessInputNoWrapClearOnChoose()) != -2)
+ {
+ memset(r5->unk40.unk2, 0, sizeof(r5->unk40.unk2));
+ if (r4 == 0)
+ {
+ if (HasAtLeastOneBerry())
+ r5->unk14 = 0;
+ else
+ r5->unk14 = 3;
+ }
+ else
+ {
+ r5->unk14 = 1;
+ }
+ ClearDialogWindowAndFrame(0, 1);
+ sub_8024644(r6, 8, 0, 0, 0);
+ r5->unkE = 21;
+ sub_8022BEC(3, 1, NULL);
+ r5->unkC = 0;
+ }
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_80242E0(struct BerryCrushGame *r4, __attribute__((unused)) u8 *r1)
+{
+ u8 r5 = 0;
+
+ switch (r4->unkC)
+ {
+ case 0:
+ sub_8010434();
+ break;
+ case 1:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r4->unk40.unk2[0] = r4->unk14;
+ r4->unk40.unkE.unk0 = 0;
+ SendBlock(0, r4->unk40.unk2, sizeof(u16));
+ break;
+ case 2:
+ if (!IsLinkTaskFinished())
+ return 0;
+ r4->unk10 = 0;
+ break;
+ case 3:
+ if (GetBlockReceivedStatus() != gUnknown_082F4448[r4->unk9 - 2])
+ return 0;
+ for (; r5 < r4->unk9; ++r5)
+ r4->unk40.unkE.unk0 += gBlockRecvBuffer[r5][0];
+ if (r4->unk40.unkE.unk0 != 0)
+ sub_8022BEC(23, 1, NULL);
+ else
+ sub_8022BEC(22, 1, NULL);
+ ResetBlockReceivedFlags();
+ r4->unk40.unk2[0] = 0;
+ r4->unk40.unkE.unk0 = 0;
+ r4->unk10 = 0;
+ r4->unkC = 0;
+ return 0;
+ }
+ ++r4->unkC;
+ return 0;
+}
+
+u32 sub_80243BC(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ BeginNormalPaletteFade(0xFFFFFFFF, 1, 0, 0x10, RGB_BLACK);
+ UpdatePaletteFade();
+ break;
+ case 1:
+ if (UpdatePaletteFade())
+ return 0;
+ break;
+ case 2:
+ ClearDialogWindowAndFrame(0, 1);
+ sub_8021488(r5);
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
+ UpdatePaletteFade();
+ break;
+ case 3:
+ if (UpdatePaletteFade())
+ return 0;
+ sub_8022BEC(7, 1, NULL);
+ r5->unk12 = 3;
+ r5->unkC = 0;
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8024444(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ DrawDialogueFrame(0, 0);
+ if (r5->unk14 == 3)
+ AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[5], r5->unkB, 0, 2, 1, 3);
+ else
+ AddTextPrinterParameterized2(0, 1, gUnknown_082F32A4[6], r5->unkB, 0, 2, 1, 3);
+ CopyWindowToVram(0, 3);
+ break;
+ case 1:
+ if (IsTextPrinterActive(0))
+ return 0;
+ r5->unk138.unk0 = 120;
+ break;
+ case 2:
+ if (r5->unk138.unk0 != 0)
+ --r5->unk138.unk0;
+ else
+ {
+ sub_8022BEC(24, 1, NULL);
+ r5->unkC = 0;
+ }
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8024508(struct BerryCrushGame *r5, __attribute__((unused)) u8 *r1)
+{
+ switch (r5->unkC)
+ {
+ case 0:
+ sub_8010434();
+ break;
+ case 1:
+ if (!IsLinkTaskFinished())
+ return 0;
+ sub_800AC34();
+ break;
+ case 2:
+ if (gReceivedRemoteLinkPlayers != 0)
+ return 0;
+ r5->unkE = 25;
+ sub_8022BEC(5, 1, NULL);
+ r5->unkC = 2; // ???
+ return 0;
+ }
+ ++r5->unkC;
+ return 0;
+}
+
+u32 sub_8024568(__attribute__((unused)) struct BerryCrushGame *r0, __attribute__((unused)) u8 *r1)
+{
+ sub_8020C0C(NULL);
+ return 0;
+}
+
+void sub_8024578(struct BerryCrushGame *r4)
+{
+ u8 r5 = 0;
+
+ IncrementGameStat(GAME_STAT_51);
+ r4->unkD = 0;
+ r4->unk10 = 0;
+ r4->unk12 = 2;
+ r4->unk14 = 0;
+ r4->unk1C = 0;
+ r4->unk18 = 0;
+ r4->unk1A = 0;
+ r4->unk20 = 0;
+ r4->unk24 = 0;
+ r4->unk25_0 = 0;
+ r4->unk25_1 = 0;
+ r4->unk25_2 = 0;
+ r4->unk25_3 = 0;
+ r4->unk25_4 = 0;
+ r4->unk25_5 = 0;
+ r4->unk26 = 0;
+ r4->unk28 = 0;
+ r4->unk2E = 0;
+ r4->unk32 = -1;
+ r4->unk30 = 0;
+ r4->unk34 = 0;
+ for (; r5 < 5; ++r5) // why is it 5 instead of 4? fillerBC isn't sufficient for one player
+ {
+ r4->unk68.as_four_players.others[r5].unk0 = -1;
+ r4->unk68.as_four_players.others[r5].unk2 = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[0] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[1] = 1;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[2] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[3] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[4] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_hwords[5] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_2d_bytes[1][4] = 0;
+ r4->unk68.as_four_players.others[r5].unk4.as_2d_bytes[1][5] = 0;
+ }
+}
+
+#ifdef NONMATCHING
+void sub_8024604(u8 *r0, u32 r1, s32 r2, u32 r3, u32 r5, u32 r6, u32 r4)
+{
+ u8 sp[8];
+ u8 *p;
+
+ 1[(u32 *)sp] = r2;
+ 0[(u16 *)sp] = r4;
+ p = &sp[4];
+ r0[0] = p[0];
+ r0[1] = p[1];
+ r0[2] = p[2];
+ r0[3] = p[3];
+ r0[4] = r3;
+ r0[5] = r5;
+ r0[6] = r6;
+ r0[7] = sp[0];
+ r0[8] = sp[1];
+ r0[9] = r1;
+}
+#else
+NAKED
+void sub_8024604(u8 *r0, u32 r1, s32 r2, u32 r3, u32 r5, u32 r6, u32 r4)
+{
+ asm_unified("\n\
+ push {r4-r6,lr}\n\
+ sub sp, 0x8\n\
+ str r2, [sp, 0x4]\n\
+ ldr r5, [sp, 0x18]\n\
+ ldr r6, [sp, 0x1C]\n\
+ ldr r4, [sp, 0x20]\n\
+ mov r2, sp\n\
+ strh r4, [r2]\n\
+ add r4, sp, 0x4\n\
+ ldrb r2, [r4]\n\
+ strb r2, [r0]\n\
+ ldrb r2, [r4, 0x1]\n\
+ strb r2, [r0, 0x1]\n\
+ ldrb r2, [r4, 0x2]\n\
+ strb r2, [r0, 0x2]\n\
+ ldrb r2, [r4, 0x3]\n\
+ strb r2, [r0, 0x3]\n\
+ strb r3, [r0, 0x4]\n\
+ strb r5, [r0, 0x5]\n\
+ strb r6, [r0, 0x6]\n\
+ mov r2, sp\n\
+ ldrb r2, [r2]\n\
+ strb r2, [r0, 0x7]\n\
+ mov r2, sp\n\
+ ldrb r2, [r2, 0x1]\n\
+ strb r2, [r0, 0x8]\n\
+ strb r1, [r0, 0x9]\n\
+ add sp, 0x8\n\
+ pop {r4-r6}\n\
+ pop {r0}\n\
+ bx r0");
+}
+#endif
+
+void sub_8024644(u8 *r0, u32 r1, u32 r2, u32 r3, u32 r5)
+{
+ u8 sp[4];
+
+ 0[(u16 *)sp] = r3;
+ r0[0] = r1;
+ r0[1] = r2;
+ r0[2] = sp[0];
+ r0[3] = sp[1];
+ r0[4] = r5;
+}
diff --git a/src/cable_club.c b/src/cable_club.c
index b1675030b..ab72ee3f2 100644
--- a/src/cable_club.c
+++ b/src/cable_club.c
@@ -816,7 +816,7 @@ static void sub_80B32B4(u8 taskId)
switch (task->data[0])
{
case 0:
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gLinkType = LINKTYPE_BATTLE;
ClearLinkCallback_2();
task->data[0]++;
@@ -862,7 +862,7 @@ static void sub_80B33BC(u8 taskId)
switch (data[0])
{
case 0:
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gLinkType = LINKTYPE_BATTLE;
ClearLinkCallback_2();
data[0] = 1;
@@ -1077,7 +1077,7 @@ static void sub_80B37FC(u8 taskId)
{
case 0:
ScriptContext2_Enable();
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
ClearLinkCallback_2();
task->data[0]++;
break;
@@ -1110,7 +1110,7 @@ static void sub_80B3894(u8 taskId)
{
case 0:
ScriptContext2_Enable();
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
ClearLinkRfuCallback();
data[0]++;
break;
diff --git a/src/decoration.c b/src/decoration.c
index a0065752a..2a5c2ccd7 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -608,7 +608,7 @@ static void DecorationMenuAction_PutAway(u8 taskId)
{
RemoveDecorationWindow(0);
ClearDialogWindowAndFrame(0, 0);
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].data[2] = 0;
gTasks[taskId].func = sub_8129ABC;
}
@@ -1292,7 +1292,7 @@ void sub_8127F68(u8 taskId)
{
if (sub_8127F38() == TRUE)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].data[2] = 0;
gTasks[taskId].func = sub_8128060;
}
@@ -1682,7 +1682,7 @@ void CancelDecorating(u8 taskId)
void sub_8128BBC(u8 taskId)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].data[2] = 0;
gTasks[taskId].func = c1_overworld_prev_quest;
}
@@ -2551,7 +2551,7 @@ void ReturnDecorationPrompt(u8 taskId)
void PutAwayDecoration(u8 taskId)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].data[2] = 0;
gTasks[taskId].func = sub_81298EC;
}
@@ -2570,7 +2570,7 @@ void StopPuttingAwayDecorations(u8 taskId)
void sub_812A22C(u8 taskId)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].data[2] = 0;
gTasks[taskId].func = sub_812A25C;
}
diff --git a/src/easy_chat.c b/src/easy_chat.c
index 77e57ffaf..3aa709732 100644
--- a/src/easy_chat.c
+++ b/src/easy_chat.c
@@ -1341,7 +1341,7 @@ static void CB2_QuizLadyQuestion(void)
switch (gMain.state)
{
case 0:
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
break;
case 1:
if (!gPaletteFade.active)
diff --git a/src/egg_hatch.c b/src/egg_hatch.c
index 2ce2c04bb..2a942c9d9 100644
--- a/src/egg_hatch.c
+++ b/src/egg_hatch.c
@@ -461,7 +461,7 @@ void EggHatch(void)
{
ScriptContext2_Enable();
CreateTask(Task_EggHatch, 10);
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
static void Task_EggHatch(u8 taskID)
diff --git a/src/item_use.c b/src/item_use.c
index 54169db1c..2a614243b 100755
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -601,7 +601,7 @@ void ItemUseOutOfBattle_PokeblockCase(u8 taskId)
else
{
gFieldCallback = sub_80AF6D4;
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].func = sub_80FDC00;
}
}
diff --git a/src/player_pc.c b/src/player_pc.c
index 94484ab72..e10af43b8 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -484,7 +484,7 @@ static void ItemStorageMenuProcessInput(u8 taskId)
static void ItemStorage_Deposit(u8 taskId)
{
gTasks[taskId].func = Task_ItemStorage_Deposit;
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
static void Task_ItemStorage_Deposit(u8 taskId)
@@ -714,7 +714,7 @@ static void Mailbox_MailOptionsProcessInput(u8 taskId)
static void Mailbox_DoMailRead(u8 taskId)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].func = Mailbox_FadeAndReadMail;
}
@@ -813,7 +813,7 @@ static void Mailbox_Give(u8 taskId)
Mailbox_NoPokemonForMail(taskId);
else
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
gTasks[taskId].func = Mailbox_DoGiveMailPokeMenu;
}
}
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c
index fae152bb2..3118f66cd 100644
--- a/src/pokemon_storage_system.c
+++ b/src/pokemon_storage_system.c
@@ -1790,7 +1790,7 @@ static void Task_PokemonStorageSystemPC(u8 taskId)
}
else
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
task->data[0] = 4;
}
break;
diff --git a/src/pokenav.c b/src/pokenav.c
index 6b971bc00..a7b7c95a3 100644
--- a/src/pokenav.c
+++ b/src/pokenav.c
@@ -320,7 +320,7 @@ void CB2_InitPokeNav(void)
void OpenPokenavForTutorial(void)
{
SetMainCallback2(CB2_InitPokenavForTutorial);
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
static void CB2_InitPokenavForTutorial(void)
diff --git a/src/scrcmd.c b/src/scrcmd.c
index f215b8541..82da62b27 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -650,13 +650,14 @@ bool8 ScrCmd_fadescreenswapbuffers(struct ScriptContext *ctx)
switch (mode)
{
- case 1:
+ case FADE_TO_BLACK:
+ case FADE_TO_WHITE:
default:
CpuCopy32(gPlttBufferUnfaded, gPaletteDecompressionBuffer, PLTT_DECOMP_BUFFER_SIZE);
FadeScreen(mode, 0);
break;
- case 0:
- case 2:
+ case FADE_FROM_BLACK:
+ case FADE_FROM_WHITE:
CpuCopy32(gPaletteDecompressionBuffer, gPlttBufferUnfaded, PLTT_DECOMP_BUFFER_SIZE);
FadeScreen(mode, 0);
break;
diff --git a/src/secret_base.c b/src/secret_base.c
index b8752b8a6..fe941008c 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -423,7 +423,7 @@ static void Task_EnterSecretBase(u8 taskId)
void EnterSecretBase(void)
{
CreateTask(Task_EnterSecretBase, 0);
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1);
}
diff --git a/src/shop.c b/src/shop.c
index 5f796f307..5b83ca2a9 100755
--- a/src/shop.c
+++ b/src/shop.c
@@ -348,7 +348,7 @@ static void Task_HandleShopMenuBuy(u8 taskId)
data[8] = (u32)CB2_InitBuyMenu >> 16;
data[9] = (u32)CB2_InitBuyMenu;
gTasks[taskId].func = Task_GoToBuyOrSellMenu;
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
static void Task_HandleShopMenuSell(u8 taskId)
@@ -357,7 +357,7 @@ static void Task_HandleShopMenuSell(u8 taskId)
data[8] = (u32)CB2_GoToSellMenu >> 16;
data[9] = (u32)CB2_GoToSellMenu;
gTasks[taskId].func = Task_GoToBuyOrSellMenu;
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
void CB2_ExitSellMenu(void)
diff --git a/src/start_menu.c b/src/start_menu.c
index 93145655f..99f474a90 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -581,7 +581,7 @@ static bool8 HandleStartMenuInput(void)
&& gMenuCallback != StartMenuSafariZoneRetireCallback
&& gMenuCallback != StartMenuBattlePyramidRetireCallback)
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
}
return FALSE;
diff --git a/src/union_room.c b/src/union_room.c
index 2ef888a2f..3880d85be 100644
--- a/src/union_room.c
+++ b/src/union_room.c
@@ -1583,7 +1583,7 @@ void sub_8014790(u8 taskId)
case 1:
if (!ScriptContext1_IsScriptSetUp())
{
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
data[0] = 2;
}
break;