summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_setup.s24
-rw-r--r--asm/bike.s20
-rw-r--r--asm/field_control_avatar.s130
-rw-r--r--asm/field_door.s8
-rw-r--r--asm/field_effect_helpers.s18
-rw-r--r--asm/field_fadetransition.s18
-rw-r--r--asm/field_ground_effect.s44
-rw-r--r--asm/field_map_obj.s8
-rw-r--r--asm/field_player_avatar.s18
-rw-r--r--asm/field_tasks.s4
-rw-r--r--asm/item_use.s16
-rw-r--r--asm/macros/movement.inc4
-rw-r--r--asm/metatile_behavior.s2194
-rw-r--r--asm/overworld.s28
-rw-r--r--asm/party_menu.s4
-rw-r--r--asm/unk_8159F40.s2
-rw-r--r--asm/vs_seeker.s1767
-rw-r--r--asm/wild_encounter.s2
18 files changed, 176 insertions, 4133 deletions
diff --git a/asm/battle_setup.s b/asm/battle_setup.s
index a0585784f..faa32be0e 100644
--- a/asm/battle_setup.s
+++ b/asm/battle_setup.s
@@ -763,7 +763,7 @@ sub_807FC5C: @ 807FC5C
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _0807FC92
@@ -771,7 +771,7 @@ sub_807FC5C: @ 807FC5C
b _0807FD88
_0807FC92:
adds r0, r4, 0
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _0807FCA2
@@ -779,7 +779,7 @@ _0807FC92:
b _0807FD88
_0807FCA2:
adds r0, r4, 0
- bl sub_8059B74
+ bl MetatileBehavior_IsMB21OrWaterfallBottom
lsls r0, 24
cmp r0, 0
beq _0807FCB2
@@ -814,7 +814,7 @@ _0807FCF4:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl MetatileBehavior_IsMB_0B
+ bl MetatileBehavior_IsMB0B
lsls r0, 24
cmp r0, 0
beq _0807FD08
@@ -823,7 +823,7 @@ _0807FD04:
b _0807FD88
_0807FD08:
adds r0, r4, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD70
@@ -835,7 +835,7 @@ _0807FD18:
_0807FD1C:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD82
@@ -844,17 +844,17 @@ _0807FD2C:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_805A01C
+ bl MetatileBehavior_IsDeepSemiDeepOrSplashingWater
lsls r0, 24
cmp r0, 0
bne _0807FD82
adds r0, r4, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD70
adds r0, r4, 0
- bl MetatileBehavior_IsMountain
+ bl MetatileBehavior_IsMB0C
lsls r0, 24
cmp r0, 0
beq _0807FD58
@@ -867,7 +867,7 @@ _0807FD58:
cmp r0, 0
beq _0807FD86
adds r0, r4, 0
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
cmp r0, 0
beq _0807FD74
@@ -876,7 +876,7 @@ _0807FD70:
b _0807FD88
_0807FD74:
adds r0, r4, 0
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -919,7 +919,7 @@ GetBattleTransitionTypeByMap: @ 807FD90
_0807FDC0:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FDE8
diff --git a/asm/bike.s b/asm/bike.s
index fcce5ca66..915c4bf8f 100644
--- a/asm/bike.s
+++ b/asm/bike.s
@@ -87,7 +87,7 @@ sub_80BD100: @ 80BD100
mov r0, r8
strb r0, [r5, 0xA]
ldrb r0, [r4, 0x1E]
- bl sub_805A1DC
+ bl MetatileBehavior_IsCyclingRoadPullDownTile
cmp r0, 0x1
bne _080BD176
ldr r0, _080BD164 @ =gMain
@@ -207,7 +207,7 @@ sub_80BD1E8: @ 80BD1E8
ldr r1, _080BD244 @ =gMapObjects
adds r0, r1
ldrb r0, [r0, 0x1E]
- bl sub_805A1DC
+ bl MetatileBehavior_IsCyclingRoadPullDownTile
adds r2, r0, 0
cmp r2, 0x1
bne _080BD25A
@@ -572,12 +572,12 @@ sub_80BD4B8: @ 80BD4B8
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_805A234
+ bl MetatileBehavior_IsMB0A
lsls r0, 24
cmp r0, 0
bne _080BD4E2
adds r0, r4, 0
- bl sub_805A118
+ bl MetatileBehavior_ReturnFalse_9
lsls r0, 24
cmp r0, 0
beq _080BD4E6
@@ -611,21 +611,21 @@ sub_80BD4F0: @ 80BD4F0
cmp r0, 0x1
bhi _080BD51A
adds r0, r4, 0
- bl sub_805A210
+ bl MetatileBehavior_ReturnFalse_15
lsls r0, 24
cmp r0, 0
bne _080BD532
adds r0, r4, 0
- bl sub_805A218
+ bl MetatileBehavior_ReturnFalse_17
b _080BD52C
_080BD51A:
adds r0, r5, 0
- bl sub_805A214
+ bl MetatileBehavior_ReturnFalse_16
lsls r0, 24
cmp r0, 0
bne _080BD532
adds r0, r5, 0
- bl sub_805A21C
+ bl MetatileBehavior_ReturnFalse_18
_080BD52C:
lsls r0, 24
cmp r0, 0
@@ -697,7 +697,7 @@ player_should_look_direction_be_enforced_upon_movement: @ 80BD58C
lsls r0, 2
adds r0, r2
ldrb r0, [r0, 0x1E]
- bl sub_805A20C
+ bl MetatileBehavior_ReturnFalse_14
lsls r0, 24
cmp r0, 0
beq _080BD5C0
@@ -875,7 +875,7 @@ Bike_HandleBumpySlopeJump: @ 80BD6C4
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_805A20C
+ bl MetatileBehavior_ReturnFalse_14
lsls r0, 24
cmp r0, 0
beq _080BD70C
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 7fb590d80..4ae8ad562 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -53,7 +53,7 @@ FieldGetPlayerInput: @ 806C8BC
bl cur_mapdata_block_role_at_player_pos
lsls r0, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
lsrs r7, r0, 24
bl ScriptContext1_IsScriptSetUp
@@ -1226,7 +1226,7 @@ _0806D210: .4byte gUnknown_20370D4
_0806D214: .4byte gUnknown_81A6955
_0806D218:
adds r0, r4, 0
- bl sub_805A134
+ bl MetatileBehavior_IsRegionMap
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1237,7 +1237,7 @@ _0806D218:
_0806D22C: .4byte gUnknown_81A6C32
_0806D230:
adds r0, r4, 0
- bl sub_805A24C
+ bl MetatileBehavior_IsBookshelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1248,7 +1248,7 @@ _0806D230:
_0806D244: .4byte gUnknown_81A7606
_0806D248:
adds r0, r4, 0
- bl sub_805A260
+ bl MetatileBehavior_IsPokeMartShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1259,7 +1259,7 @@ _0806D248:
_0806D25C: .4byte gUnknown_81A760F
_0806D260:
adds r0, r4, 0
- bl sub_805A44C
+ bl MetatileBehavior_IsFood
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1270,7 +1270,7 @@ _0806D260:
_0806D274: .4byte gUnknown_81A7618
_0806D278:
adds r0, r4, 0
- bl sub_805A558
+ bl MetatileBehavior_IsImpressiveMachine
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1281,7 +1281,7 @@ _0806D278:
_0806D28C: .4byte gUnknown_81A7633
_0806D290:
adds r0, r4, 0
- bl sub_805A474
+ bl MetatileBehavior_IsBlueprints
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1292,7 +1292,7 @@ _0806D290:
_0806D2A4: .4byte gUnknown_81A763C
_0806D2A8:
adds r0, r4, 0
- bl sub_805A56C
+ bl MetatileBehavior_IsVideoGame
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1303,7 +1303,7 @@ _0806D2A8:
_0806D2BC: .4byte gUnknown_81A7621
_0806D2C0:
adds r0, r4, 0
- bl sub_805A580
+ bl MetatileBehavior_IsBurglary
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1314,7 +1314,7 @@ _0806D2C0:
_0806D2D4: .4byte gUnknown_81A7645
_0806D2D8:
adds r0, r4, 0
- bl sub_805A4C4
+ bl MetatileBehavior_IsComputer
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1325,7 +1325,7 @@ _0806D2D8:
_0806D2EC: .4byte gUnknown_81A762A
_0806D2F0:
adds r0, r4, 0
- bl sub_805A594
+ bl MetatileBehavior_IsMBA3
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1348,7 +1348,7 @@ _0806D308:
_0806D31C: .4byte gUnknown_81A764E
_0806D320:
adds r0, r4, 0
- bl sub_805A374
+ bl MetatileBehavior_IsCabinet
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1359,7 +1359,7 @@ _0806D320:
_0806D334: .4byte gUnknown_81A7657
_0806D338:
adds r0, r4, 0
- bl sub_805A388
+ bl MetatileBehavior_IsKitchen
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1370,7 +1370,7 @@ _0806D338:
_0806D34C: .4byte gUnknown_81A7660
_0806D350:
adds r0, r4, 0
- bl sub_805A39C
+ bl MetatileBehavior_IsDresser
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1381,7 +1381,7 @@ _0806D350:
_0806D364: .4byte gUnknown_81A7669
_0806D368:
adds r0, r4, 0
- bl sub_805A3B0
+ bl MetatileBehavior_IsSnacks
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1392,7 +1392,7 @@ _0806D368:
_0806D37C: .4byte gUnknown_81A7672
_0806D380:
adds r0, r4, 0
- bl sub_805A488
+ bl MetatileBehavior_IsPainting
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1403,7 +1403,7 @@ _0806D380:
_0806D394: .4byte gUnknown_81A767B
_0806D398:
adds r0, r4, 0
- bl sub_805A49C
+ bl MetatileBehavior_IsPowerPlantMachine
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1414,7 +1414,7 @@ _0806D398:
_0806D3AC: .4byte gUnknown_81A7684
_0806D3B0:
adds r0, r4, 0
- bl sub_805A4B0
+ bl MetatileBehavior_IsTelephone
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1425,7 +1425,7 @@ _0806D3B0:
_0806D3C4: .4byte gUnknown_81A768D
_0806D3C8:
adds r0, r4, 0
- bl sub_805A4D8
+ bl MetatileBehavior_IsAdvertisingPoster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1436,7 +1436,7 @@ _0806D3C8:
_0806D3DC: .4byte gUnknown_81A7696
_0806D3E0:
adds r0, r4, 0
- bl sub_805A4EC
+ bl MetatileBehavior_IsTastyFood
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1447,7 +1447,7 @@ _0806D3E0:
_0806D3F4: .4byte gUnknown_81A769F
_0806D3F8:
adds r0, r4, 0
- bl sub_805A500
+ bl MetatileBehavior_IsTrashBin
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1458,7 +1458,7 @@ _0806D3F8:
_0806D40C: .4byte gUnknown_81A76A8
_0806D410:
adds r0, r4, 0
- bl sub_805A514
+ bl MetatileBehavior_IsCup
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1469,7 +1469,7 @@ _0806D410:
_0806D424: .4byte gUnknown_81A76B1
_0806D428:
adds r0, r4, 0
- bl sub_805A528
+ bl MetatileBehavior_ReturnFalse_19
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1480,7 +1480,7 @@ _0806D428:
_0806D43C: .4byte gUnknown_81A76BA
_0806D440:
adds r0, r4, 0
- bl sub_805A52C
+ bl MetatileBehavior_ReturnFalse_20
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1491,7 +1491,7 @@ _0806D440:
_0806D454: .4byte gUnknown_81A76C3
_0806D458:
adds r0, r4, 0
- bl sub_805A530
+ bl MetatileBehavior_IsBlinkingLights
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1502,7 +1502,7 @@ _0806D458:
_0806D46C: .4byte gUnknown_81A76CC
_0806D470:
adds r0, r4, 0
- bl sub_805A544
+ bl MetatileBehavior_IsMB9F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1514,7 +1514,7 @@ _0806D484: .4byte gUnknown_81A76D5
_0806D488:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A3D8
+ bl MetatileBehavior_IsPlayerFacingMB_8D
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1525,7 +1525,7 @@ _0806D488:
_0806D49C: .4byte gUnknown_81BBFD8
_0806D4A0:
adds r0, r4, 0
- bl sub_805A410
+ bl MetatileBehavior_IsQuestionnaire
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1537,7 +1537,7 @@ _0806D4B4: .4byte gUnknown_81A7702
_0806D4B8:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A3F4
+ bl MetatileBehavior_IsPlayerFacingBattleRecords
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1548,7 +1548,7 @@ _0806D4B8:
_0806D4CC: .4byte gUnknown_81BB8A7
_0806D4D0:
adds r0, r4, 0
- bl sub_805A424
+ bl MetatileBehavior_IsIndigoPlateauMark
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1560,7 +1560,7 @@ _0806D4D0:
_0806D4E8: .4byte gUnknown_81A76F0
_0806D4EC:
adds r0, r4, 0
- bl sub_805A438
+ bl MetatileBehavior_IsIndigoPlateauMark2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1573,7 +1573,7 @@ _0806D504: .4byte gUnknown_81A76F9
_0806D508:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A290
+ bl MetatileBehavior_IsPlayerFacingPokeMartSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1586,7 +1586,7 @@ _0806D520: .4byte gUnknown_81A76DE
_0806D524:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A274
+ bl MetatileBehavior_IsPlayerFacingPokemonCenterSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1610,7 +1610,7 @@ sub_806D548: @ 806D548
lsls r1, 24
lsrs r4, r1, 24
adds r0, r4, 0
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1721,7 +1721,7 @@ sub_806D5E8: @ 806D5E8
bne _0806D658
lsls r0, r6, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
cmp r0, 0
bne _0806D658
@@ -1800,7 +1800,7 @@ sub_806D698: @ 806D698
bne _0806D720
lsls r0, r4, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
cmp r0, 0
bne _0806D720
@@ -2057,7 +2057,7 @@ sub_806D898: @ 806D898
lsrs r4, r0, 24
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A274
+ bl MetatileBehavior_IsPlayerFacingPokemonCenterSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2067,7 +2067,7 @@ sub_806D898: @ 806D898
_0806D8B6:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A290
+ bl MetatileBehavior_IsPlayerFacingPokeMartSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2076,7 +2076,7 @@ _0806D8B6:
b _0806D902
_0806D8CA:
adds r0, r4, 0
- bl sub_805A424
+ bl MetatileBehavior_IsIndigoPlateauMark
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2085,7 +2085,7 @@ _0806D8CA:
b _0806D902
_0806D8DC:
adds r0, r4, 0
- bl sub_805A438
+ bl MetatileBehavior_IsIndigoPlateauMark2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2094,7 +2094,7 @@ _0806D8DC:
b _0806D902
_0806D8EE:
adds r0, r4, 0
- bl sub_805A360
+ bl MetatileBehavior_IsSignpost
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2273,7 +2273,7 @@ sub_806DA10: @ 806DA10
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059BF0
+ bl MetatileBehavior_IsEscalator
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2286,7 +2286,7 @@ sub_806DA10: @ 806DA10
_0806DA68: .4byte gMapHeader
_0806DA6C:
adds r0, r4, 0
- bl sub_805A158
+ bl MetatileBehavior_ReturnFalse_12
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2296,7 +2296,7 @@ _0806DA6C:
b _0806DAEE
_0806DA82:
adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
+ bl MetatileBheavior_IsMB_68
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2306,7 +2306,7 @@ _0806DA82:
b _0806DAEE
_0806DA98:
adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
+ bl MetatileBehavior_IsRegularWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2316,7 +2316,7 @@ _0806DA98:
b _0806DAEE
_0806DAAE:
adds r0, r4, 0
- bl sub_805A184
+ bl MetatileBehavior_IsUnionRoomWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2326,7 +2326,7 @@ _0806DAAE:
b _0806DAEE
_0806DAC4:
adds r0, r4, 0
- bl sub_805A1C4
+ bl MetatileBehavior_IsFallWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2362,49 +2362,49 @@ sub_806DAF4: @ 806DAF4
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059C78
+ bl MetatileBehavior_IsLadder
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059BF0
+ bl MetatileBehavior_IsEscalator
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A158
+ bl MetatileBehavior_ReturnFalse_12
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
+ bl MetatileBheavior_IsMB_68
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
+ bl MetatileBehavior_IsRegularWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A1C4
+ bl MetatileBehavior_IsFallWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A184
+ bl MetatileBehavior_IsUnionRoomWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2435,23 +2435,23 @@ _0806DB98:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
bne _0806DBCC
adds r0, r4, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
b _0806DBC6
_0806DBB0:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
bne _0806DBCC
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
_0806DBC6:
lsls r0, 24
cmp r0, 0
@@ -2491,12 +2491,12 @@ _0806DBF2:
_0806DBFC:
lsls r0, 24
lsrs r0, 24
- bl sub_8059D04
+ bl MetatileBehavior_IsNorthArrowWarp
b _0806DC22
_0806DC06:
lsls r0, 24
lsrs r0, 24
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
b _0806DC22
_0806DC10:
lsls r0, 24
@@ -2952,7 +2952,7 @@ dive_warp: @ 806DF3C
bne _0806DF74
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059FCC
+ bl MetatileBehavior_IsMB19
lsls r0, 24
cmp r0, 0
bne _0806DF74
@@ -2971,7 +2971,7 @@ _0806DF70: .4byte gMapHeader
_0806DF74:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059FB0
+ bl MetatileBehavior_IsDeepOrSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3025,7 +3025,7 @@ sub_806DFB8: @ 806DFB8
cmp r0, 0x5
bne _0806E014
adds r0, r5, 0
- bl sub_8059FCC
+ bl MetatileBehavior_IsMB19
lsls r0, 24
cmp r0, 0
bne _0806E014
@@ -3049,7 +3049,7 @@ sub_806DFB8: @ 806DFB8
_0806E010: .4byte gMapHeader
_0806E014:
adds r0, r5, 0
- bl sub_8059FB0
+ bl MetatileBehavior_IsDeepOrSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_door.s b/asm/field_door.s
index 431189e98..9c7e5eb10 100644
--- a/asm/field_door.s
+++ b/asm/field_door.s
@@ -490,7 +490,7 @@ sub_805B268: @ 805B268
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B292
@@ -518,7 +518,7 @@ sub_805B29C: @ 805B29C
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B2C6
@@ -546,7 +546,7 @@ sub_805B2D0: @ 805B2D0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B304
@@ -580,7 +580,7 @@ sub_805B310: @ 805B310
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B344
diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s
index 9e416b83a..bfeb2b942 100644
--- a/asm/field_effect_helpers.s
+++ b/asm/field_effect_helpers.s
@@ -134,13 +134,13 @@ npc_pal_op: @ 80DAE54
cmp r0, 0
bne _080DAEB0
ldrb r0, [r5, 0x1F]
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
lsrs r0, 24
cmp r0, 0
bne _080DAE96
ldrb r0, [r5, 0x1E]
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -714,27 +714,27 @@ _080DB2AE:
cmp r0, r1
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059B44
+ bl MetatileBehavior_IsTallGrass
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1F]
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1F]
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
beq _080DB334
@@ -900,7 +900,7 @@ _080DB438:
cmp r0, 0
bne _080DB48C
adds r0, r6, 0
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _080DB48C
@@ -1251,7 +1251,7 @@ _080DB6E8:
cmp r0, 0
bne _080DB73C
adds r0, r4, 0
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080DB73C
diff --git a/asm/field_fadetransition.s b/asm/field_fadetransition.s
index 703316872..d0176941a 100644
--- a/asm/field_fadetransition.s
+++ b/asm/field_fadetransition.s
@@ -465,7 +465,7 @@ sub_807DE78: @ 807DE78
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -500,7 +500,7 @@ _0807DEE8:
adds r0, r5, 0
bl sub_807DF4C
adds r0, r4, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -511,7 +511,7 @@ _0807DEE8:
_0807DF00: .4byte task_map_chg_seq_0807E20C
_0807DF04:
adds r0, r4, 0
- bl sub_8059C5C
+ bl MetatileBehavior_IsUnknownWarp6C_to_6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2105,7 +2105,7 @@ sub_807EBBC: @ 807EBBC
lsrs r4, r0, 24
adds r7, r4, 0
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
beq _0807EBE0
@@ -2117,7 +2117,7 @@ sub_807EBBC: @ 807EBBC
b _0807EC2A
_0807EBE0:
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
beq _0807EBFA
@@ -2130,7 +2130,7 @@ _0807EBE0:
b _0807EC2A
_0807EBFA:
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
beq _0807EC0E
@@ -2140,7 +2140,7 @@ _0807EBFA:
b _0807EC2A
_0807EC0E:
adds r0, r7, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -2251,12 +2251,12 @@ sub_807ECBC: @ 807ECBC
lsls r0, 24
lsrs r6, r0, 24
adds r0, r6, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
bne _0807ED06
adds r0, r6, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
beq _0807ED0A
diff --git a/asm/field_ground_effect.s b/asm/field_ground_effect.s
index 40159bc04..62bc54815 100644
--- a/asm/field_ground_effect.s
+++ b/asm/field_ground_effect.s
@@ -186,7 +186,7 @@ GetGroundEffectFlags_TallGrassOnSpawn: @ 8067CA8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _08067CC0
@@ -205,7 +205,7 @@ GetGroundEffectFlags_TallGrassOnBeginStep: @ 8067CC8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _08067CE0
@@ -224,7 +224,7 @@ GetGroundEffectFlags_LongGrassOnSpawn: @ 8067CE8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _08067D00
@@ -243,7 +243,7 @@ GetGroundEffectFlags_LongGrassOnBeginStep: @ 8067D08
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _08067D20
@@ -263,7 +263,7 @@ GetGroundEffectFlags_Tracks: @ 8067D28
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1F]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067D42
@@ -273,12 +273,12 @@ GetGroundEffectFlags_Tracks: @ 8067D28
b _08067D5E
_08067D42:
ldrb r0, [r4, 0x1F]
- bl sub_8059B5C
+ bl MetatileBehavior_IsMB21OrSand
lsls r0, 24
cmp r0, 0
bne _08067D5A
ldrb r0, [r4, 0x1F]
- bl sub_8059F54
+ bl MetatileBehavior_ReturnFalse_5
lsls r0, 24
cmp r0, 0
beq _08067D62
@@ -300,12 +300,12 @@ GetGroundEffectFlags_SandHeap: @ 8067D68
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067DA6
ldrb r0, [r4, 0x1F]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067DA6
@@ -343,23 +343,23 @@ GetGroundEffectFlags_ShallowFlowingWater: @ 8067DB8
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059FE0
+ bl MetatileBehavior_IsWaterfallBottom
lsls r0, 24
cmp r0, 0
beq _08067DD6
ldrb r0, [r4, 0x1F]
- bl sub_8059FE0
+ bl MetatileBehavior_IsWaterfallBottom
lsls r0, 24
cmp r0, 0
bne _08067DEE
_08067DD6:
ldrb r0, [r4, 0x1E]
- bl sub_805A12C
+ bl MetatileBehavior_ReturnFalse_10
lsls r0, 24
cmp r0, 0
beq _08067E0C
ldrb r0, [r4, 0x1F]
- bl sub_805A12C
+ bl MetatileBehavior_ReturnFalse_10
lsls r0, 24
cmp r0, 0
beq _08067E0C
@@ -397,12 +397,12 @@ GetGroundEffectFlags_Puddle: @ 8067E1C
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059F20
+ bl MetatileBehavior_IsPuddle
lsls r0, 24
cmp r0, 0
beq _08067E44
ldrb r0, [r4, 0x1F]
- bl sub_8059F20
+ bl MetatileBehavior_IsPuddle
lsls r0, 24
cmp r0, 0
beq _08067E44
@@ -422,7 +422,7 @@ GetGroundEffectFlags_Ripple: @ 8067E4C
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F08
+ bl MetatileBehavior_IsPondWaterOrPuddle
lsls r0, 24
cmp r0, 0
beq _08067E66
@@ -443,12 +443,12 @@ GetGroundEffectFlags_ShortGrass: @ 8067E6C
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_805A0EC
+ bl MetatileBehavior_ReturnFalse_8
lsls r0, 24
cmp r0, 0
beq _08067EAA
ldrb r0, [r4, 0x1F]
- bl sub_805A0EC
+ bl MetatileBehavior_ReturnFalse_8
lsls r0, 24
cmp r0, 0
beq _08067EAA
@@ -528,7 +528,7 @@ GetGroundEffectFlags_Seaweed: @ 8067F0C
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_805A220
+ bl MetatileBehavior_IsMB22
lsls r0, 24
cmp r0, 0
beq _08067F26
@@ -763,7 +763,7 @@ GetReflectionTypeByMetatileBehavior: @ 80680C8
b _080680F0
_080680DE:
adds r0, r4, 0
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
bne _080680EE
@@ -838,12 +838,12 @@ FieldObjectSetSpriteOamTableForLongGrass: @ 8068154
cmp r0, 0
blt _080681A8
ldrb r0, [r5, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080681A8
ldrb r0, [r5, 0x1F]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080681A8
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index c79a0330f..d82f467dc 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -11129,7 +11129,7 @@ _08062ED0:
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
- ldr r3, _08062F04 @ =sub_8059B44
+ ldr r3, _08062F04 @ =MetatileBehavior_IsTallGrass
ldr r4, [r4]
adds r0, r6, 0
adds r1, r7, 0
@@ -11142,7 +11142,7 @@ _08062EF8:
bx r1
.align 2, 0
_08062F00: .4byte gUnknown_83A6390
-_08062F04: .4byte sub_8059B44
+_08062F04: .4byte MetatileBehavior_IsTallGrass
thumb_func_end mss_08062EA4
thumb_func_start FieldObjectCB_TreeDisguise
@@ -13373,13 +13373,13 @@ sub_8063E28: @ 8063E28
bl sub_8064544
_08063E5C:
ldrb r0, [r4, 0x1E]
- bl sub_8059DAC
+ bl MetatileBehavior_IsIce_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08063E78
ldrb r0, [r4, 0x1E]
- bl sub_8059DC0
+ bl MetatileBehavior_IsUnknownMovement48
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s
index db32efc52..65d56af88 100644
--- a/asm/field_player_avatar.s
+++ b/asm/field_player_avatar.s
@@ -213,7 +213,7 @@ sub_805B528: @ 805B528
cmp r0, 0
beq _0805B598
ldrb r0, [r5, 0x1C]
- bl sub_805A344
+ bl MetatileBehavior_IsSpinTile
lsls r0, 24
cmp r0, 0
beq _0805B598
@@ -230,13 +230,13 @@ sub_805B528: @ 805B528
cmp r0, 0
beq _0805B586
ldrb r0, [r1, 0x1E]
- bl sub_805A330
+ bl MetatileBehavior_IsStopSpinning
lsls r0, 24
cmp r0, 0
bne _0805B598
ldr r0, [r4]
ldrb r0, [r0, 0x1E]
- bl sub_805A344
+ bl MetatileBehavior_IsSpinTile
lsls r0, 24
cmp r0, 0
beq _0805B57A
@@ -1015,7 +1015,7 @@ _0805BB00:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_805A460
+ bl MetatileBehavior_IsRockStairs
lsls r0, 24
lsrs r0, 24
b _0805BB14
@@ -1335,7 +1335,7 @@ sub_805BCEC: @ 805BCEC
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
cmp r0, 0
bne _0805BDA0
@@ -2322,12 +2322,12 @@ sub_805C438: @ 805C438
cmp r5, 0x3
bne _0805C484
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
bne _0805C4DE
adds r0, r4, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
cmp r0, 0
bne _0805C4DE
@@ -2335,12 +2335,12 @@ _0805C484:
cmp r5, 0x4
bne _0805C4A0
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
bne _0805C4DE
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
bne _0805C4DE
diff --git a/asm/field_tasks.s b/asm/field_tasks.s
index d7dd5e6b6..306b52940 100644
--- a/asm/field_tasks.s
+++ b/asm/field_tasks.s
@@ -481,7 +481,7 @@ _0806EB8E:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059F50
+ bl MetatileBehavior_ReturnFalse_4
lsls r0, 24
cmp r0, 0
beq _0806EBF6
@@ -633,7 +633,7 @@ _0806ECCE:
strh r0, [r5, 0x6]
lsls r0, r7, 24
lsrs r0, 24
- bl sub_805A1D8
+ bl MetatileBehavior_ReturnFalse_13
lsls r0, 24
cmp r0, 0
beq _0806ED2E
diff --git a/asm/item_use.s b/asm/item_use.s
index 259f3206f..a7f7b1b7c 100644
--- a/asm/item_use.s
+++ b/asm/item_use.s
@@ -359,25 +359,25 @@ sub_80A122C: @ 80A122C
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A218
+ bl MetatileBehavior_ReturnFalse_17
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A21C
+ bl MetatileBehavior_ReturnFalse_18
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A210
+ bl MetatileBehavior_ReturnFalse_15
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A214
+ bl MetatileBehavior_ReturnFalse_16
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -535,7 +535,7 @@ _080A13D0:
b _080A1406
_080A13D4:
adds r0, r5, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
beq _080A13F4
@@ -551,7 +551,7 @@ _080A13D4:
_080A13F4:
lsls r0, r6, 24
lsrs r0, 24
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1810,7 +1810,7 @@ _080A1DEC: .4byte gSaveBlock1Ptr
_080A1DF0: .4byte gTasks
_080A1DF4:
ldr r1, _080A1E04 @ =gUnknown_2039998
- ldr r0, _080A1E08 @ =sub_810C670
+ ldr r0, _080A1E08 @ =Task_VsSeeker_0
str r0, [r1]
adds r0, r2, 0
bl sub_80A103C
@@ -1819,7 +1819,7 @@ _080A1E00:
bx r0
.align 2, 0
_080A1E04: .4byte gUnknown_2039998
-_080A1E08: .4byte sub_810C670
+_080A1E08: .4byte Task_VsSeeker_0
thumb_func_end sub_80A1D9C
thumb_func_start sub_80A1E0C
diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc
index 674ce7169..909b24916 100644
--- a/asm/macros/movement.inc
+++ b/asm/macros/movement.inc
@@ -104,6 +104,10 @@
create_movement step_5f
create_movement step_60
create_movement step_61
+ create_movement step_62
+ create_movement step_63
+ create_movement step_64
+ create_movement step_65
enum_start 0x91
create_movement step_91
diff --git a/asm/metatile_behavior.s b/asm/metatile_behavior.s
deleted file mode 100644
index 6dd520d71..000000000
--- a/asm/metatile_behavior.s
+++ /dev/null
@@ -1,2194 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8059AF0
-sub_8059AF0: @ 8059AF0
- movs r0, 0x1
- bx lr
- thumb_func_end sub_8059AF0
-
- thumb_func_start MetatileBehavior_IsJumpEast
-MetatileBehavior_IsJumpEast: @ 8059AF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x38
- beq _08059B02
- movs r0, 0
- b _08059B04
-_08059B02:
- movs r0, 0x1
-_08059B04:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpEast
-
- thumb_func_start MetatileBehavior_IsJumpWest
-MetatileBehavior_IsJumpWest: @ 8059B08
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x39
- beq _08059B16
- movs r0, 0
- b _08059B18
-_08059B16:
- movs r0, 0x1
-_08059B18:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpWest
-
- thumb_func_start MetatileBehavior_IsJumpNorth
-MetatileBehavior_IsJumpNorth: @ 8059B1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3A
- beq _08059B2A
- movs r0, 0
- b _08059B2C
-_08059B2A:
- movs r0, 0x1
-_08059B2C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpNorth
-
- thumb_func_start MetatileBehavior_IsJumpSouth
-MetatileBehavior_IsJumpSouth: @ 8059B30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3B
- beq _08059B3E
- movs r0, 0
- b _08059B40
-_08059B3E:
- movs r0, 0x1
-_08059B40:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpSouth
-
- thumb_func_start sub_8059B44
-sub_8059B44: @ 8059B44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059B52
- cmp r0, 0xD1
- bne _08059B56
-_08059B52:
- movs r0, 0x1
- b _08059B58
-_08059B56:
- movs r0, 0
-_08059B58:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B44
-
- thumb_func_start sub_8059B5C
-sub_8059B5C: @ 8059B5C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x21
- beq _08059B6A
- cmp r0, 0x2B
- bne _08059B6E
-_08059B6A:
- movs r0, 0x1
- b _08059B70
-_08059B6E:
- movs r0, 0
-_08059B70:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B5C
-
- thumb_func_start sub_8059B74
-sub_8059B74: @ 8059B74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x21
- beq _08059B82
- cmp r0, 0x17
- bne _08059B86
-_08059B82:
- movs r0, 0x1
- b _08059B88
-_08059B86:
- movs r0, 0
-_08059B88:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B74
-
- thumb_func_start sub_8059B8C
-sub_8059B8C: @ 8059B8C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059B8C
-
- thumb_func_start sub_8059B90
-sub_8059B90: @ 8059B90
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08059BAA
- cmp r0, 0x16
- beq _08059BAA
- cmp r0, 0x1A
- beq _08059BAA
- cmp r0, 0x1B
- beq _08059BAA
- cmp r0, 0x23
- bne _08059BAE
-_08059BAA:
- movs r0, 0x1
- b _08059BB0
-_08059BAE:
- movs r0, 0
-_08059BB0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B90
-
- thumb_func_start MetatileBehavior_IsIce
-MetatileBehavior_IsIce: @ 8059BB4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x23
- beq _08059BC2
- movs r0, 0
- b _08059BC4
-_08059BC2:
- movs r0, 0x1
-_08059BC4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIce
-
- thumb_func_start MetatileBehavior_IsWarpDoor
-MetatileBehavior_IsWarpDoor: @ 8059BC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x69
- beq _08059BD6
- movs r0, 0
- b _08059BD8
-_08059BD6:
- movs r0, 0x1
-_08059BD8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWarpDoor
-
- thumb_func_start sub_8059BDC
-sub_8059BDC: @ 8059BDC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x69
- beq _08059BEA
- movs r0, 0
- b _08059BEC
-_08059BEA:
- movs r0, 0x1
-_08059BEC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059BDC
-
- thumb_func_start sub_8059BF0
-sub_8059BF0: @ 8059BF0
- push {lr}
- lsls r0, 24
- movs r1, 0x96
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08059C04
- movs r0, 0
- b _08059C06
-_08059C04:
- movs r0, 0x1
-_08059C06:
- pop {r1}
- bx r1
- thumb_func_end sub_8059BF0
-
- thumb_func_start sub_8059C0C
-sub_8059C0C: @ 8059C0C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6C
- bne _08059C1A
- movs r1, 0x1
-_08059C1A:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C0C
-
- thumb_func_start sub_8059C20
-sub_8059C20: @ 8059C20
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6D
- bne _08059C2E
- movs r1, 0x1
-_08059C2E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C20
-
- thumb_func_start sub_8059C34
-sub_8059C34: @ 8059C34
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6E
- bne _08059C42
- movs r1, 0x1
-_08059C42:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C34
-
- thumb_func_start sub_8059C48
-sub_8059C48: @ 8059C48
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6F
- bne _08059C56
- movs r1, 0x1
-_08059C56:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C48
-
- thumb_func_start sub_8059C5C
-sub_8059C5C: @ 8059C5C
- push {lr}
- lsls r0, 24
- movs r1, 0
- movs r2, 0x94
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x3
- bhi _08059C70
- movs r1, 0x1
-_08059C70:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C5C
-
- thumb_func_start sub_8059C78
-sub_8059C78: @ 8059C78
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x61
- beq _08059C86
- movs r0, 0
- b _08059C88
-_08059C86:
- movs r0, 0x1
-_08059C88:
- pop {r1}
- bx r1
- thumb_func_end sub_8059C78
-
- thumb_func_start sub_8059C8C
-sub_8059C8C: @ 8059C8C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x60
- beq _08059C9A
- movs r0, 0
- b _08059C9C
-_08059C9A:
- movs r0, 0x1
-_08059C9C:
- pop {r1}
- bx r1
- thumb_func_end sub_8059C8C
-
- thumb_func_start sub_8059CA0
-sub_8059CA0: @ 8059CA0
- movs r0, 0
- bx lr
- thumb_func_end sub_8059CA0
-
- thumb_func_start sub_8059CA4
-sub_8059CA4: @ 8059CA4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08059CBC @ =gUnknown_8352F78
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08059CC0
- movs r0, 0
- b _08059CC2
- .align 2, 0
-_08059CBC: .4byte gUnknown_8352F78
-_08059CC0:
- movs r0, 0x1
-_08059CC2:
- pop {r1}
- bx r1
- thumb_func_end sub_8059CA4
-
- thumb_func_start sub_8059CC8
-sub_8059CC8: @ 8059CC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x11
- beq _08059CD6
- movs r0, 0
- b _08059CD8
-_08059CD6:
- movs r0, 0x1
-_08059CD8:
- pop {r1}
- bx r1
- thumb_func_end sub_8059CC8
-
- thumb_func_start MetatileBehavior_IsEastArrowWarp
-MetatileBehavior_IsEastArrowWarp: @ 8059CDC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x62
- beq _08059CEA
- movs r0, 0
- b _08059CEC
-_08059CEA:
- movs r0, 0x1
-_08059CEC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastArrowWarp
-
- thumb_func_start MetatileBehavior_IsWestArrowWarp
-MetatileBehavior_IsWestArrowWarp: @ 8059CF0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x63
- beq _08059CFE
- movs r0, 0
- b _08059D00
-_08059CFE:
- movs r0, 0x1
-_08059D00:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestArrowWarp
-
- thumb_func_start sub_8059D04
-sub_8059D04: @ 8059D04
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x64
- beq _08059D12
- movs r0, 0
- b _08059D14
-_08059D12:
- movs r0, 0x1
-_08059D14:
- pop {r1}
- bx r1
- thumb_func_end sub_8059D04
-
- thumb_func_start sub_8059D18
-sub_8059D18: @ 8059D18
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x65
- beq _08059D26
- movs r0, 0
- b _08059D28
-_08059D26:
- movs r0, 0x1
-_08059D28:
- pop {r1}
- bx r1
- thumb_func_end sub_8059D18
-
- thumb_func_start sub_8059D2C
-sub_8059D2C: @ 8059D2C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- adds r0, r4, 0
- bl MetatileBehavior_IsEastArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl MetatileBehavior_IsWestArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl sub_8059D04
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl sub_8059D18
- lsls r0, 24
- cmp r0, 0
- beq _08059D66
-_08059D64:
- movs r5, 0x1
-_08059D66:
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8059D2C
-
- thumb_func_start MetatileBehavior_IsMoveTile
-MetatileBehavior_IsMoveTile: @ 8059D70
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xC0
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x8
- bls _08059DA2
- adds r0, r1, 0
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _08059DA2
- cmp r1, 0x13
- beq _08059DA2
- cmp r1, 0x23
- beq _08059DA2
- adds r0, r1, 0
- subs r0, 0x54
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _08059DA6
-_08059DA2:
- movs r0, 0x1
- b _08059DA8
-_08059DA6:
- movs r0, 0
-_08059DA8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMoveTile
-
- thumb_func_start sub_8059DAC
-sub_8059DAC: @ 8059DAC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x23
- beq _08059DBA
- movs r0, 0
- b _08059DBC
-_08059DBA:
- movs r0, 0x1
-_08059DBC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059DAC
-
- thumb_func_start sub_8059DC0
-sub_8059DC0: @ 8059DC0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x48
- beq _08059DCE
- movs r0, 0
- b _08059DD0
-_08059DCE:
- movs r0, 0x1
-_08059DD0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059DC0
-
- thumb_func_start MetatileBehavior_IsWalkNorth
-MetatileBehavior_IsWalkNorth: @ 8059DD4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x42
- beq _08059DE2
- movs r0, 0
- b _08059DE4
-_08059DE2:
- movs r0, 0x1
-_08059DE4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkNorth
-
- thumb_func_start MetatileBehavior_IsWalkSouth
-MetatileBehavior_IsWalkSouth: @ 8059DE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x43
- beq _08059DF6
- movs r0, 0
- b _08059DF8
-_08059DF6:
- movs r0, 0x1
-_08059DF8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkSouth
-
- thumb_func_start MetatileBehavior_IsWalkWest
-MetatileBehavior_IsWalkWest: @ 8059DFC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x41
- beq _08059E0A
- movs r0, 0
- b _08059E0C
-_08059E0A:
- movs r0, 0x1
-_08059E0C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkWest
-
- thumb_func_start MetatileBehavior_IsWalkEast
-MetatileBehavior_IsWalkEast: @ 8059E10
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _08059E1E
- movs r0, 0
- b _08059E20
-_08059E1E:
- movs r0, 0x1
-_08059E20:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkEast
-
- thumb_func_start MetatileBehavior_IsNorthwardCurrent
-MetatileBehavior_IsNorthwardCurrent: @ 8059E24
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x52
- beq _08059E32
- movs r0, 0
- b _08059E34
-_08059E32:
- movs r0, 0x1
-_08059E34:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsNorthwardCurrent
-
- thumb_func_start MetatileBehavior_IsSouthwardCurrent
-MetatileBehavior_IsSouthwardCurrent: @ 8059E38
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x53
- beq _08059E46
- movs r0, 0
- b _08059E48
-_08059E46:
- movs r0, 0x1
-_08059E48:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSouthwardCurrent
-
- thumb_func_start MetatileBehavior_IsWestwardCurrent
-MetatileBehavior_IsWestwardCurrent: @ 8059E4C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x51
- beq _08059E5A
- movs r0, 0
- b _08059E5C
-_08059E5A:
- movs r0, 0x1
-_08059E5C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestwardCurrent
-
- thumb_func_start MetatileBehavior_IsEastwardCurrent
-MetatileBehavior_IsEastwardCurrent: @ 8059E60
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x50
- beq _08059E6E
- movs r0, 0
- b _08059E70
-_08059E6E:
- movs r0, 0x1
-_08059E70:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastwardCurrent
-
- thumb_func_start MetatileBehavior_IsSlideNorth
-MetatileBehavior_IsSlideNorth: @ 8059E74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x46
- beq _08059E82
- movs r0, 0
- b _08059E84
-_08059E82:
- movs r0, 0x1
-_08059E84:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideNorth
-
- thumb_func_start MetatileBehavior_IsSlideSouth
-MetatileBehavior_IsSlideSouth: @ 8059E88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x47
- beq _08059E96
- movs r0, 0
- b _08059E98
-_08059E96:
- movs r0, 0x1
-_08059E98:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideSouth
-
- thumb_func_start MetatileBehavior_IsSlideWest
-MetatileBehavior_IsSlideWest: @ 8059E9C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x45
- beq _08059EAA
- movs r0, 0
- b _08059EAC
-_08059EAA:
- movs r0, 0x1
-_08059EAC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideWest
-
- thumb_func_start MetatileBehavior_IsSlideEast
-MetatileBehavior_IsSlideEast: @ 8059EB0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x44
- beq _08059EBE
- movs r0, 0
- b _08059EC0
-_08059EBE:
- movs r0, 0x1
-_08059EC0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideEast
-
- thumb_func_start MetatileBehavior_IsCounter
-MetatileBehavior_IsCounter: @ 8059EC4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x80
- beq _08059ED2
- movs r0, 0
- b _08059ED4
-_08059ED2:
- movs r0, 0x1
-_08059ED4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsCounter
-
- thumb_func_start MetatileBehavior_IsPlayerFacingTVScreen
-MetatileBehavior_IsPlayerFacingTVScreen: @ 8059ED8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _08059EEA
- cmp r0, 0x86
- beq _08059EEE
-_08059EEA:
- movs r0, 0
- b _08059EF0
-_08059EEE:
- movs r0, 0x1
-_08059EF0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPlayerFacingTVScreen
-
- thumb_func_start MetatileBehavior_IsPC
-MetatileBehavior_IsPC: @ 8059EF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x83
- beq _08059F02
- movs r0, 0
- b _08059F04
-_08059F02:
- movs r0, 0x1
-_08059F04:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPC
-
- thumb_func_start sub_8059F08
-sub_8059F08: @ 8059F08
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08059F16
- cmp r0, 0x16
- bne _08059F1A
-_08059F16:
- movs r0, 0x1
- b _08059F1C
-_08059F1A:
- movs r0, 0
-_08059F1C:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F08
-
- thumb_func_start sub_8059F20
-sub_8059F20: @ 8059F20
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x16
- beq _08059F2E
- movs r0, 0
- b _08059F30
-_08059F2E:
- movs r0, 0x1
-_08059F30:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F20
-
- thumb_func_start sub_8059F34
-sub_8059F34: @ 8059F34
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059F42
- cmp r0, 0xD1
- bne _08059F46
-_08059F42:
- movs r0, 0x1
- b _08059F48
-_08059F46:
- movs r0, 0
-_08059F48:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F34
-
- thumb_func_start sub_8059F4C
-sub_8059F4C: @ 8059F4C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F4C
-
- thumb_func_start sub_8059F50
-sub_8059F50: @ 8059F50
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F50
-
- thumb_func_start sub_8059F54
-sub_8059F54: @ 8059F54
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F54
-
- thumb_func_start sub_8059F58
-sub_8059F58: @ 8059F58
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F58
-
- thumb_func_start sub_8059F5C
-sub_8059F5C: @ 8059F5C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F5C
-
- thumb_func_start sub_8059F60
-sub_8059F60: @ 8059F60
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08059F6E
- movs r0, 0
- b _08059F70
-_08059F6E:
- movs r0, 0x1
-_08059F70:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F60
-
- thumb_func_start sub_8059F74
-sub_8059F74: @ 8059F74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059F82
- movs r0, 0
- b _08059F84
-_08059F82:
- movs r0, 0x1
-_08059F84:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F74
-
- thumb_func_start MetatileBehavior_IsMB_0B
-MetatileBehavior_IsMB_0B: @ 8059F88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB
- beq _08059F96
- movs r0, 0
- b _08059F98
-_08059F96:
- movs r0, 0x1
-_08059F98:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMB_0B
-
- thumb_func_start MetatileBehavior_IsMountain
-MetatileBehavior_IsMountain: @ 8059F9C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC
- beq _08059FAA
- movs r0, 0
- b _08059FAC
-_08059FAA:
- movs r0, 0x1
-_08059FAC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMountain
-
- thumb_func_start sub_8059FB0
-sub_8059FB0: @ 8059FB0
- push {lr}
- lsls r0, 24
- movs r1, 0xEF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08059FC4
- movs r0, 0
- b _08059FC6
-_08059FC4:
- movs r0, 0x1
-_08059FC6:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FB0
-
- thumb_func_start sub_8059FCC
-sub_8059FCC: @ 8059FCC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x19
- beq _08059FDA
- movs r0, 0
- b _08059FDC
-_08059FDA:
- movs r0, 0x1
-_08059FDC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FCC
-
- thumb_func_start sub_8059FE0
-sub_8059FE0: @ 8059FE0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x17
- beq _08059FEE
- movs r0, 0
- b _08059FF0
-_08059FEE:
- movs r0, 0x1
-_08059FF0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FE0
-
- thumb_func_start MetatileBehavior_IsThinIce
-MetatileBehavior_IsThinIce: @ 8059FF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x26
- beq _0805A002
- movs r0, 0
- b _0805A004
-_0805A002:
- movs r0, 0x1
-_0805A004:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsThinIce
-
- thumb_func_start MetatileBehavior_IsCrackedIce
-MetatileBehavior_IsCrackedIce: @ 805A008
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x27
- beq _0805A016
- movs r0, 0
- b _0805A018
-_0805A016:
- movs r0, 0x1
-_0805A018:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsCrackedIce
-
- thumb_func_start sub_805A01C
-sub_805A01C: @ 805A01C
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xEF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x1
- bls _0805A032
- cmp r1, 0x15
- bne _0805A036
-_0805A032:
- movs r0, 0x1
- b _0805A038
-_0805A036:
- movs r0, 0
-_0805A038:
- pop {r1}
- bx r1
- thumb_func_end sub_805A01C
-
- thumb_func_start sub_805A03C
-sub_805A03C: @ 805A03C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1A
- beq _0805A04A
- movs r0, 0
- b _0805A04C
-_0805A04A:
- movs r0, 0x1
-_0805A04C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A03C
-
- thumb_func_start MetatileBehavior_IsSurfableAndNotWaterfall
-MetatileBehavior_IsSurfableAndNotWaterfall: @ 805A050
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_8059CA4
- lsls r0, 24
- cmp r0, 0
- beq _0805A072
- adds r0, r4, 0
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- cmp r0, 0
- bne _0805A072
- movs r0, 0x1
- b _0805A074
-_0805A072:
- movs r0, 0
-_0805A074:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSurfableAndNotWaterfall
-
- thumb_func_start sub_805A07C
-sub_805A07C: @ 805A07C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x30
- beq _0805A08E
- cmp r0, 0x34
- beq _0805A08E
- cmp r0, 0x36
- bne _0805A092
-_0805A08E:
- movs r0, 0x1
- b _0805A094
-_0805A092:
- movs r0, 0
-_0805A094:
- pop {r1}
- bx r1
- thumb_func_end sub_805A07C
-
- thumb_func_start sub_805A098
-sub_805A098: @ 805A098
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x31
- beq _0805A0AA
- cmp r0, 0x35
- beq _0805A0AA
- cmp r0, 0x37
- bne _0805A0AE
-_0805A0AA:
- movs r0, 0x1
- b _0805A0B0
-_0805A0AE:
- movs r0, 0
-_0805A0B0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A098
-
- thumb_func_start sub_805A0B4
-sub_805A0B4: @ 805A0B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x32
- beq _0805A0C6
- cmp r0, 0x34
- beq _0805A0C6
- cmp r0, 0x35
- bne _0805A0CA
-_0805A0C6:
- movs r0, 0x1
- b _0805A0CC
-_0805A0CA:
- movs r0, 0
-_0805A0CC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A0B4
-
- thumb_func_start sub_805A0D0
-sub_805A0D0: @ 805A0D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x33
- beq _0805A0E2
- cmp r0, 0x36
- beq _0805A0E2
- cmp r0, 0x37
- bne _0805A0E6
-_0805A0E2:
- movs r0, 0x1
- b _0805A0E8
-_0805A0E6:
- movs r0, 0
-_0805A0E8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A0D0
-
- thumb_func_start sub_805A0EC
-sub_805A0EC: @ 805A0EC
- movs r0, 0
- bx lr
- thumb_func_end sub_805A0EC
-
- thumb_func_start MetatileBehavior_IsHotSprings
-MetatileBehavior_IsHotSprings: @ 805A0F0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x28
- beq _0805A0FE
- movs r0, 0
- b _0805A100
-_0805A0FE:
- movs r0, 0x1
-_0805A100:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsHotSprings
-
- thumb_func_start MetatileBehavior_IsWaterfall
-MetatileBehavior_IsWaterfall: @ 805A104
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- beq _0805A112
- movs r0, 0
- b _0805A114
-_0805A112:
- movs r0, 0x1
-_0805A114:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWaterfall
-
- thumb_func_start sub_805A118
-sub_805A118: @ 805A118
- movs r0, 0
- bx lr
- thumb_func_end sub_805A118
-
- thumb_func_start sub_805A11C
-sub_805A11C: @ 805A11C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A11C
-
- thumb_func_start sub_805A120
-sub_805A120: @ 805A120
- movs r0, 0
- bx lr
- thumb_func_end sub_805A120
-
- thumb_func_start sub_805A124
-sub_805A124: @ 805A124
- movs r0, 0
- bx lr
- thumb_func_end sub_805A124
-
- thumb_func_start sub_805A128
-sub_805A128: @ 805A128
- movs r0, 0
- bx lr
- thumb_func_end sub_805A128
-
- thumb_func_start sub_805A12C
-sub_805A12C: @ 805A12C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A12C
-
- thumb_func_start sub_805A130
-sub_805A130: @ 805A130
- movs r0, 0
- bx lr
- thumb_func_end sub_805A130
-
- thumb_func_start sub_805A134
-sub_805A134: @ 805A134
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x85
- beq _0805A142
- movs r0, 0
- b _0805A144
-_0805A142:
- movs r0, 0x1
-_0805A144:
- pop {r1}
- bx r1
- thumb_func_end sub_805A134
-
- thumb_func_start sub_805A148
-sub_805A148: @ 805A148
- movs r0, 0
- bx lr
- thumb_func_end sub_805A148
-
- thumb_func_start sub_805A14C
-sub_805A14C: @ 805A14C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A14C
-
- thumb_func_start sub_805A150
-sub_805A150: @ 805A150
- movs r0, 0
- bx lr
- thumb_func_end sub_805A150
-
- thumb_func_start sub_805A154
-sub_805A154: @ 805A154
- movs r0, 0
- bx lr
- thumb_func_end sub_805A154
-
- thumb_func_start sub_805A158
-sub_805A158: @ 805A158
- movs r0, 0
- bx lr
- thumb_func_end sub_805A158
-
- thumb_func_start MetatileBehavior_IsLavaridge1FWarp
-MetatileBehavior_IsLavaridge1FWarp: @ 805A15C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x68
- beq _0805A16A
- movs r0, 0
- b _0805A16C
-_0805A16A:
- movs r0, 0x1
-_0805A16C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLavaridge1FWarp
-
- thumb_func_start MetatileBehavior_IsAquaHideoutWarp
-MetatileBehavior_IsAquaHideoutWarp: @ 805A170
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x67
- beq _0805A17E
- movs r0, 0
- b _0805A180
-_0805A17E:
- movs r0, 0x1
-_0805A180:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsAquaHideoutWarp
-
- thumb_func_start sub_805A184
-sub_805A184: @ 805A184
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x71
- beq _0805A192
- movs r0, 0
- b _0805A194
-_0805A192:
- movs r0, 0x1
-_0805A194:
- pop {r1}
- bx r1
- thumb_func_end sub_805A184
-
- thumb_func_start sub_805A198
-sub_805A198: @ 805A198
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xF0
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x2
- bls _0805A1BA
- cmp r1, 0x15
- beq _0805A1BA
- adds r0, r1, 0
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _0805A1BE
-_0805A1BA:
- movs r0, 0x1
- b _0805A1C0
-_0805A1BE:
- movs r0, 0
-_0805A1C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A198
-
- thumb_func_start sub_805A1C4
-sub_805A1C4: @ 805A1C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x66
- beq _0805A1D2
- movs r0, 0
- b _0805A1D4
-_0805A1D2:
- movs r0, 0x1
-_0805A1D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A1C4
-
- thumb_func_start sub_805A1D8
-sub_805A1D8: @ 805A1D8
- movs r0, 0
- bx lr
- thumb_func_end sub_805A1D8
-
- thumb_func_start sub_805A1DC
-sub_805A1DC: @ 805A1DC
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 22
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _0805A1F0
- movs r0, 0
- b _0805A1F2
-_0805A1F0:
- movs r0, 0x1
-_0805A1F2:
- pop {r1}
- bx r1
- thumb_func_end sub_805A1DC
-
- thumb_func_start sub_805A1F8
-sub_805A1F8: @ 805A1F8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0xD1
- bne _0805A206
- movs r1, 0x1
-_0805A206:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A1F8
-
- thumb_func_start sub_805A20C
-sub_805A20C: @ 805A20C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A20C
-
- thumb_func_start sub_805A210
-sub_805A210: @ 805A210
- movs r0, 0
- bx lr
- thumb_func_end sub_805A210
-
- thumb_func_start sub_805A214
-sub_805A214: @ 805A214
- movs r0, 0
- bx lr
- thumb_func_end sub_805A214
-
- thumb_func_start sub_805A218
-sub_805A218: @ 805A218
- movs r0, 0
- bx lr
- thumb_func_end sub_805A218
-
- thumb_func_start sub_805A21C
-sub_805A21C: @ 805A21C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A21C
-
- thumb_func_start sub_805A220
-sub_805A220: @ 805A220
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x22
- beq _0805A22E
- movs r0, 0
- b _0805A230
-_0805A22E:
- movs r0, 0x1
-_0805A230:
- pop {r1}
- bx r1
- thumb_func_end sub_805A220
-
- thumb_func_start sub_805A234
-sub_805A234: @ 805A234
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- beq _0805A242
- movs r0, 0
- b _0805A244
-_0805A242:
- movs r0, 0x1
-_0805A244:
- pop {r1}
- bx r1
- thumb_func_end sub_805A234
-
- thumb_func_start sub_805A248
-sub_805A248: @ 805A248
- movs r0, 0
- bx lr
- thumb_func_end sub_805A248
-
- thumb_func_start sub_805A24C
-sub_805A24C: @ 805A24C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x81
- beq _0805A25A
- movs r0, 0
- b _0805A25C
-_0805A25A:
- movs r0, 0x1
-_0805A25C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A24C
-
- thumb_func_start sub_805A260
-sub_805A260: @ 805A260
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x82
- beq _0805A26E
- movs r0, 0
- b _0805A270
-_0805A26E:
- movs r0, 0x1
-_0805A270:
- pop {r1}
- bx r1
- thumb_func_end sub_805A260
-
- thumb_func_start sub_805A274
-sub_805A274: @ 805A274
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A286
- cmp r0, 0x87
- beq _0805A28A
-_0805A286:
- movs r0, 0
- b _0805A28C
-_0805A28A:
- movs r0, 0x1
-_0805A28C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A274
-
- thumb_func_start sub_805A290
-sub_805A290: @ 805A290
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A2A2
- cmp r0, 0x88
- beq _0805A2A6
-_0805A2A2:
- movs r0, 0
- b _0805A2A8
-_0805A2A6:
- movs r0, 0x1
-_0805A2A8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A290
-
- thumb_func_start sub_805A2AC
-sub_805A2AC: @ 805A2AC
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2AC
-
- thumb_func_start sub_805A2B0
-sub_805A2B0: @ 805A2B0
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B0
-
- thumb_func_start sub_805A2B4
-sub_805A2B4: @ 805A2B4
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B4
-
- thumb_func_start sub_805A2B8
-sub_805A2B8: @ 805A2B8
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B8
-
- thumb_func_start sub_805A2BC
-sub_805A2BC: @ 805A2BC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0805A2D4 @ =gUnknown_8353068
- adds r0, r2
- ldrb r0, [r0]
- ands r0, r1
- cmp r0, 0
- bne _0805A2D8
- movs r0, 0
- b _0805A2DA
- .align 2, 0
-_0805A2D4: .4byte gUnknown_8353068
-_0805A2D8:
- movs r0, 0x1
-_0805A2DA:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2BC
-
- thumb_func_start sub_805A2E0
-sub_805A2E0: @ 805A2E0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x54
- beq _0805A2EE
- movs r0, 0
- b _0805A2F0
-_0805A2EE:
- movs r0, 0x1
-_0805A2F0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2E0
-
- thumb_func_start sub_805A2F4
-sub_805A2F4: @ 805A2F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x55
- beq _0805A302
- movs r0, 0
- b _0805A304
-_0805A302:
- movs r0, 0x1
-_0805A304:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2F4
-
- thumb_func_start sub_805A308
-sub_805A308: @ 805A308
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x56
- beq _0805A316
- movs r0, 0
- b _0805A318
-_0805A316:
- movs r0, 0x1
-_0805A318:
- pop {r1}
- bx r1
- thumb_func_end sub_805A308
-
- thumb_func_start sub_805A31C
-sub_805A31C: @ 805A31C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x57
- beq _0805A32A
- movs r0, 0
- b _0805A32C
-_0805A32A:
- movs r0, 0x1
-_0805A32C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A31C
-
- thumb_func_start sub_805A330
-sub_805A330: @ 805A330
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x58
- beq _0805A33E
- movs r0, 0
- b _0805A340
-_0805A33E:
- movs r0, 0x1
-_0805A340:
- pop {r1}
- bx r1
- thumb_func_end sub_805A330
-
- thumb_func_start sub_805A344
-sub_805A344: @ 805A344
- push {lr}
- lsls r0, 24
- movs r1, 0
- movs r2, 0xAC
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x3
- bhi _0805A358
- movs r1, 0x1
-_0805A358:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A344
-
- thumb_func_start sub_805A360
-sub_805A360: @ 805A360
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x84
- beq _0805A36E
- movs r0, 0
- b _0805A370
-_0805A36E:
- movs r0, 0x1
-_0805A370:
- pop {r1}
- bx r1
- thumb_func_end sub_805A360
-
- thumb_func_start sub_805A374
-sub_805A374: @ 805A374
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x89
- beq _0805A382
- movs r0, 0
- b _0805A384
-_0805A382:
- movs r0, 0x1
-_0805A384:
- pop {r1}
- bx r1
- thumb_func_end sub_805A374
-
- thumb_func_start sub_805A388
-sub_805A388: @ 805A388
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8A
- beq _0805A396
- movs r0, 0
- b _0805A398
-_0805A396:
- movs r0, 0x1
-_0805A398:
- pop {r1}
- bx r1
- thumb_func_end sub_805A388
-
- thumb_func_start sub_805A39C
-sub_805A39C: @ 805A39C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8B
- beq _0805A3AA
- movs r0, 0
- b _0805A3AC
-_0805A3AA:
- movs r0, 0x1
-_0805A3AC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A39C
-
- thumb_func_start sub_805A3B0
-sub_805A3B0: @ 805A3B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8C
- beq _0805A3BE
- movs r0, 0
- b _0805A3C0
-_0805A3BE:
- movs r0, 0x1
-_0805A3C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3B0
-
- thumb_func_start sub_805A3C4
-sub_805A3C4: @ 805A3C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- beq _0805A3D2
- movs r0, 0
- b _0805A3D4
-_0805A3D2:
- movs r0, 0x1
-_0805A3D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3C4
-
- thumb_func_start sub_805A3D8
-sub_805A3D8: @ 805A3D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A3EA
- cmp r0, 0x8D
- beq _0805A3EE
-_0805A3EA:
- movs r0, 0
- b _0805A3F0
-_0805A3EE:
- movs r0, 0x1
-_0805A3F0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3D8
-
- thumb_func_start sub_805A3F4
-sub_805A3F4: @ 805A3F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A406
- cmp r0, 0x8E
- beq _0805A40A
-_0805A406:
- movs r0, 0
- b _0805A40C
-_0805A40A:
- movs r0, 0x1
-_0805A40C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3F4
-
- thumb_func_start sub_805A410
-sub_805A410: @ 805A410
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8F
- beq _0805A41E
- movs r0, 0
- b _0805A420
-_0805A41E:
- movs r0, 0x1
-_0805A420:
- pop {r1}
- bx r1
- thumb_func_end sub_805A410
-
- thumb_func_start sub_805A424
-sub_805A424: @ 805A424
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x91
- beq _0805A432
- movs r0, 0
- b _0805A434
-_0805A432:
- movs r0, 0x1
-_0805A434:
- pop {r1}
- bx r1
- thumb_func_end sub_805A424
-
- thumb_func_start sub_805A438
-sub_805A438: @ 805A438
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x92
- beq _0805A446
- movs r0, 0
- b _0805A448
-_0805A446:
- movs r0, 0x1
-_0805A448:
- pop {r1}
- bx r1
- thumb_func_end sub_805A438
-
- thumb_func_start sub_805A44C
-sub_805A44C: @ 805A44C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x90
- beq _0805A45A
- movs r0, 0
- b _0805A45C
-_0805A45A:
- movs r0, 0x1
-_0805A45C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A44C
-
- thumb_func_start sub_805A460
-sub_805A460: @ 805A460
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x2A
- bne _0805A46E
- movs r1, 0x1
-_0805A46E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A460
-
- thumb_func_start sub_805A474
-sub_805A474: @ 805A474
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x93
- beq _0805A482
- movs r0, 0
- b _0805A484
-_0805A482:
- movs r0, 0x1
-_0805A484:
- pop {r1}
- bx r1
- thumb_func_end sub_805A474
-
- thumb_func_start sub_805A488
-sub_805A488: @ 805A488
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x94
- beq _0805A496
- movs r0, 0
- b _0805A498
-_0805A496:
- movs r0, 0x1
-_0805A498:
- pop {r1}
- bx r1
- thumb_func_end sub_805A488
-
- thumb_func_start sub_805A49C
-sub_805A49C: @ 805A49C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x95
- beq _0805A4AA
- movs r0, 0
- b _0805A4AC
-_0805A4AA:
- movs r0, 0x1
-_0805A4AC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A49C
-
- thumb_func_start sub_805A4B0
-sub_805A4B0: @ 805A4B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x96
- beq _0805A4BE
- movs r0, 0
- b _0805A4C0
-_0805A4BE:
- movs r0, 0x1
-_0805A4C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4B0
-
- thumb_func_start sub_805A4C4
-sub_805A4C4: @ 805A4C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x97
- beq _0805A4D2
- movs r0, 0
- b _0805A4D4
-_0805A4D2:
- movs r0, 0x1
-_0805A4D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4C4
-
- thumb_func_start sub_805A4D8
-sub_805A4D8: @ 805A4D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x98
- beq _0805A4E6
- movs r0, 0
- b _0805A4E8
-_0805A4E6:
- movs r0, 0x1
-_0805A4E8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4D8
-
- thumb_func_start sub_805A4EC
-sub_805A4EC: @ 805A4EC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x99
- beq _0805A4FA
- movs r0, 0
- b _0805A4FC
-_0805A4FA:
- movs r0, 0x1
-_0805A4FC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4EC
-
- thumb_func_start sub_805A500
-sub_805A500: @ 805A500
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9A
- beq _0805A50E
- movs r0, 0
- b _0805A510
-_0805A50E:
- movs r0, 0x1
-_0805A510:
- pop {r1}
- bx r1
- thumb_func_end sub_805A500
-
- thumb_func_start sub_805A514
-sub_805A514: @ 805A514
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9B
- beq _0805A522
- movs r0, 0
- b _0805A524
-_0805A522:
- movs r0, 0x1
-_0805A524:
- pop {r1}
- bx r1
- thumb_func_end sub_805A514
-
- thumb_func_start sub_805A528
-sub_805A528: @ 805A528
- movs r0, 0
- bx lr
- thumb_func_end sub_805A528
-
- thumb_func_start sub_805A52C
-sub_805A52C: @ 805A52C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A52C
-
- thumb_func_start sub_805A530
-sub_805A530: @ 805A530
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9E
- beq _0805A53E
- movs r0, 0
- b _0805A540
-_0805A53E:
- movs r0, 0x1
-_0805A540:
- pop {r1}
- bx r1
- thumb_func_end sub_805A530
-
- thumb_func_start sub_805A544
-sub_805A544: @ 805A544
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9F
- beq _0805A552
- movs r0, 0
- b _0805A554
-_0805A552:
- movs r0, 0x1
-_0805A554:
- pop {r1}
- bx r1
- thumb_func_end sub_805A544
-
- thumb_func_start sub_805A558
-sub_805A558: @ 805A558
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA0
- beq _0805A566
- movs r0, 0
- b _0805A568
-_0805A566:
- movs r0, 0x1
-_0805A568:
- pop {r1}
- bx r1
- thumb_func_end sub_805A558
-
- thumb_func_start sub_805A56C
-sub_805A56C: @ 805A56C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA1
- beq _0805A57A
- movs r0, 0
- b _0805A57C
-_0805A57A:
- movs r0, 0x1
-_0805A57C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A56C
-
- thumb_func_start sub_805A580
-sub_805A580: @ 805A580
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA2
- beq _0805A58E
- movs r0, 0
- b _0805A590
-_0805A58E:
- movs r0, 0x1
-_0805A590:
- pop {r1}
- bx r1
- thumb_func_end sub_805A580
-
- thumb_func_start sub_805A594
-sub_805A594: @ 805A594
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA3
- beq _0805A5A2
- movs r0, 0
- b _0805A5A4
-_0805A5A2:
- movs r0, 0x1
-_0805A5A4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A594
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/overworld.s b/asm/overworld.s
index 0ca0b2b55..f1587d154 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -1984,7 +1984,7 @@ _08055AF4:
beq _08055B30
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2018,7 +2018,7 @@ sub_8055B38: @ 8055B38
push {lr}
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2067,25 +2067,25 @@ _08055B94:
lsls r4, 24
lsrs r5, r4, 24
adds r0, r5, 0
- bl sub_8059CA0
+ bl MetatileBehavior_ReturnFalse_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055BD0
adds r0, r5, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C68
adds r0, r5, 0
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C68
adds r0, r5, 0
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2097,7 +2097,7 @@ _08055BD0:
_08055BD4: .4byte 0x00000802
_08055BD8:
adds r0, r5, 0
- bl sub_8059D04
+ bl MetatileBehavior_IsNorthArrowWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2115,13 +2115,13 @@ _08055BD8:
cmp r0, 0x1
beq _08055C1E
adds r0, r5, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C1E
adds r0, r5, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2131,13 +2131,13 @@ _08055C1E:
b _08055C6E
_08055C22:
adds r0, r5, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C3E
adds r0, r5, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2158,7 +2158,7 @@ _08055C4C:
beq _08055C6C
_08055C54:
lsrs r0, r4, 24
- bl sub_8059C78
+ bl MetatileBehavior_IsLadder
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2680,7 +2680,7 @@ sub_8055FE0: @ 8055FE0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
beq _0805606A
@@ -6714,7 +6714,7 @@ sub_8058034: @ 8058034
bne _08058058
_08058042:
ldrb r0, [r4, 0xC]
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
lsls r0, 24
cmp r0, 0
beq _08058058
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 5f2d4d4db..d9504245a 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -12103,7 +12103,7 @@ sub_8124998: @ 8124998
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -12166,7 +12166,7 @@ _08124A24:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/unk_8159F40.s b/asm/unk_8159F40.s
index 78693e452..a8d1b9bf8 100644
--- a/asm/unk_8159F40.s
+++ b/asm/unk_8159F40.s
@@ -801,7 +801,7 @@ sub_815A540: @ 815A540
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0815A5A4
diff --git a/asm/vs_seeker.s b/asm/vs_seeker.s
deleted file mode 100644
index 8e66877fa..000000000
--- a/asm/vs_seeker.s
+++ /dev/null
@@ -1,1767 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_810C670
-sub_810C670: @ 810C670
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r2, 0
- ldr r7, _0810C6C0 @ =gUnknown_203ADB8
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r3, r0, 3
- ldr r5, _0810C6C4 @ =gTasks+0x8
- adds r6, r1, 0
- movs r1, 0
-_0810C686:
- lsls r0, r2, 1
- adds r0, r3
- adds r0, r5
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _0810C686
- adds r5, r7, 0
- ldr r0, _0810C6C8 @ =0x00000434
- bl AllocZeroed
- str r0, [r5]
- bl sub_810C808
- bl sub_810C96C
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0
- bne _0810C6D0
- ldr r0, [r5]
- bl Free
- ldr r2, _0810C6CC @ =gUnknown_81C137C
- b _0810C6DC
- .align 2, 0
-_0810C6C0: .4byte gUnknown_203ADB8
-_0810C6C4: .4byte gTasks+0x8
-_0810C6C8: .4byte 0x00000434
-_0810C6CC: .4byte gUnknown_81C137C
-_0810C6D0:
- cmp r0, 0x1
- bne _0810C6F0
- ldr r0, [r7]
- bl Free
- ldr r2, _0810C6E8 @ =gUnknown_81C13D6
-_0810C6DC:
- ldr r3, _0810C6EC @ =sub_80A1E0C
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageOnField
- b _0810C718
- .align 2, 0
-_0810C6E8: .4byte gUnknown_81C13D6
-_0810C6EC: .4byte sub_80A1E0C
-_0810C6F0:
- cmp r1, 0x2
- bne _0810C718
- ldr r0, _0810C720 @ =gUnknown_203AD30
- ldrh r2, [r0]
- ldr r3, _0810C724 @ =0x0000ffff
- movs r0, 0x4
- movs r1, 0
- bl sub_80A2294
- movs r0, 0x41
- bl FieldEffectStart
- ldr r1, _0810C728 @ =gTasks
- adds r0, r6, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810C72C @ =sub_810C730
- str r1, [r0]
- movs r1, 0xF
- strh r1, [r0, 0x8]
-_0810C718:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C720: .4byte gUnknown_203AD30
-_0810C724: .4byte 0x0000ffff
-_0810C728: .4byte gTasks
-_0810C72C: .4byte sub_810C730
- thumb_func_end sub_810C670
-
- thumb_func_start sub_810C730
-sub_810C730: @ 810C730
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810C758 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrh r0, [r1, 0x8]
- subs r0, 0x1
- strh r0, [r1, 0x8]
- lsls r0, 16
- cmp r0, 0
- bne _0810C754
- ldr r0, _0810C75C @ =sub_810C760
- str r0, [r1]
- movs r0, 0x10
- strh r0, [r1, 0xA]
-_0810C754:
- pop {r0}
- bx r0
- .align 2, 0
-_0810C758: .4byte gTasks
-_0810C75C: .4byte sub_810C760
- thumb_func_end sub_810C730
-
- thumb_func_start sub_810C760
-sub_810C760: @ 810C760
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0810C7E8 @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x2
- beq _0810C794
- ldrh r0, [r4, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bne _0810C794
- movs r0, 0x5E
- bl PlaySE
- movs r0, 0xB
- strh r0, [r4, 0x2]
- ldrh r0, [r4, 0x4]
- adds r0, 0x1
- strh r0, [r4, 0x4]
-_0810C794:
- movs r0, 0x41
- bl FieldEffectActiveListContains
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0810C7E2
- strh r0, [r4, 0x2]
- strh r0, [r4, 0x4]
- bl sub_810C604
- ldr r0, _0810C7EC @ =gUnknown_845318C
- bl sub_810C9A8
- ldr r1, _0810C7F0 @ =gUnknown_203ADB8
- ldr r2, [r1]
- ldr r1, _0810C7F4 @ =0x00000431
- adds r2, r1
- lsls r0, 3
- ldrb r3, [r2]
- movs r1, 0x7
- ands r1, r3
- orrs r1, r0
- strb r1, [r2]
- ldr r0, _0810C7F8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- ldr r3, _0810C7FC @ =gUnknown_8453F5C
- movs r0, 0xFF
- bl ScriptMovement_StartObjectMovementScript
- ldr r1, _0810C800 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810C804 @ =sub_810C8EC
- str r1, [r0]
-_0810C7E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C7E8: .4byte gTasks+0x8
-_0810C7EC: .4byte gUnknown_845318C
-_0810C7F0: .4byte gUnknown_203ADB8
-_0810C7F4: .4byte 0x00000431
-_0810C7F8: .4byte gSaveBlock1Ptr
-_0810C7FC: .4byte gUnknown_8453F5C
-_0810C800: .4byte gTasks
-_0810C804: .4byte sub_810C8EC
- thumb_func_end sub_810C760
-
- thumb_func_start sub_810C808
-sub_810C808: @ 810C808
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, _0810C8DC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x8E
- lsls r1, 4
- adds r2, r0, r1
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- mov r8, r1
- mov r9, r1
- ldr r0, _0810C8E0 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- bge _0810C8BC
- ldr r7, _0810C8E4 @ =gUnknown_203ADB8
- mov r6, sp
- ldr r0, _0810C8E8 @ =gMapObjects
- mov r10, r0
- adds r5, r2, 0
-_0810C83C:
- ldrh r0, [r5, 0xC]
- cmp r0, 0x1
- beq _0810C846
- cmp r0, 0x3
- bne _0810C8AC
-_0810C846:
- ldr r1, [r7]
- mov r2, r8
- lsls r4, r2, 4
- adds r1, r4
- ldr r0, [r5, 0x10]
- str r0, [r1]
- ldr r0, [r5, 0x10]
- bl sub_810D074
- ldr r1, [r7]
- adds r1, r4
- strh r0, [r1, 0x4]
- ldrb r0, [r5]
- strb r0, [r1, 0x6]
- ldrb r0, [r5]
- ldr r1, _0810C8DC @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- ldr r0, [r7]
- adds r0, r4
- ldrb r1, [r6]
- strb r1, [r0, 0x7]
- ldr r2, [r7]
- adds r2, r4
- ldrb r1, [r6]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x10]
- subs r0, 0x7
- strh r0, [r2, 0x8]
- ldrb r1, [r6]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x12]
- subs r0, 0x7
- strh r0, [r2, 0xA]
- ldrb r0, [r5, 0x1]
- strb r0, [r2, 0xC]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
-_0810C8AC:
- adds r5, 0x18
- movs r0, 0x1
- add r9, r0
- ldr r0, _0810C8E0 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r9, r0
- blt _0810C83C
-_0810C8BC:
- ldr r0, _0810C8E4 @ =gUnknown_203ADB8
- ldr r0, [r0]
- mov r2, r8
- lsls r1, r2, 4
- adds r0, r1
- movs r1, 0xFF
- strb r1, [r0, 0x6]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C8DC: .4byte gSaveBlock1Ptr
-_0810C8E0: .4byte gMapHeader
-_0810C8E4: .4byte gUnknown_203ADB8
-_0810C8E8: .4byte gMapObjects
- thumb_func_end sub_810C808
-
- thumb_func_start sub_810C8EC
-sub_810C8EC: @ 810C8EC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, _0810C928 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0xFF
- bl ScriptMovement_IsObjectMovementFinished
- lsls r0, 24
- cmp r0, 0
- beq _0810C962
- ldr r0, _0810C92C @ =gUnknown_203ADB8
- ldr r0, [r0]
- ldr r1, _0810C930 @ =0x00000431
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0xF8
- ands r1, r0
- cmp r1, 0
- bne _0810C93C
- ldr r2, _0810C934 @ =gUnknown_81C1429
- ldr r3, _0810C938 @ =sub_80A1E0C
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageOnField
- b _0810C95A
- .align 2, 0
-_0810C928: .4byte gSaveBlock1Ptr
-_0810C92C: .4byte gUnknown_203ADB8
-_0810C930: .4byte 0x00000431
-_0810C934: .4byte gUnknown_81C1429
-_0810C938: .4byte sub_80A1E0C
-_0810C93C:
- cmp r1, 0x10
- bne _0810C944
- bl sub_810D304
-_0810C944:
- movs r0, 0
- movs r1, 0x1
- bl sub_80F6F54
- bl sub_80696C0
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_0810C95A:
- ldr r0, _0810C968 @ =gUnknown_203ADB8
- ldr r0, [r0]
- bl Free
-_0810C962:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C968: .4byte gUnknown_203ADB8
- thumb_func_end sub_810C8EC
-
- thumb_func_start sub_810C96C
-sub_810C96C: @ 810C96C
- push {lr}
- ldr r0, _0810C990 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0xC7
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x64
- bne _0810C998
- bl sub_810D1CC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _0810C994
- movs r0, 0x1
- b _0810C9A4
- .align 2, 0
-_0810C990: .4byte gSaveBlock1Ptr
-_0810C994:
- movs r0, 0x2
- b _0810C9A4
-_0810C998:
- movs r1, 0x64
- subs r1, r0
- movs r0, 0
- bl TV_PrintIntToStringVar
- movs r0, 0
-_0810C9A4:
- pop {r1}
- bx r1
- thumb_func_end sub_810C96C
-
- thumb_func_start sub_810C9A8
-sub_810C9A8: @ 810C9A8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- str r0, [sp, 0x4]
- movs r0, 0
- mov r8, r0
- mov r0, sp
- mov r1, r8
- strb r1, [r0]
- movs r2, 0
- mov r9, r2
- ldr r4, _0810CA14 @ =gUnknown_203ADB8
- ldr r0, [r4]
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810C9D0
- b _0810CB2C
-_0810C9D0:
- adds r6, r4, 0
- movs r3, 0x86
- lsls r3, 3
- mov r10, r3
- movs r5, 0
-_0810C9DA:
- ldr r0, [r6]
- adds r0, r5
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810C9EC
- b _0810CB18
-_0810C9EC:
- ldr r0, [r4]
- adds r0, r5
- ldrh r0, [r0, 0x4]
- mov r8, r0
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- bne _0810CA20
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA18 @ =gUnknown_8453F60
- bl sub_810D24C
- ldr r2, [r6]
- ldr r0, _0810CA1C @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x1
- b _0810CB14
- .align 2, 0
-_0810CA14: .4byte gUnknown_203ADB8
-_0810CA18: .4byte gUnknown_8453F60
-_0810CA1C: .4byte 0x00000431
-_0810CA20:
- ldr r0, [sp, 0x4]
- mov r1, r8
- mov r2, sp
- bl sub_810D164
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0
- bne _0810CA50
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA48 @ =gUnknown_8453F62
- bl sub_810D24C
- ldr r2, [r6]
- ldr r3, _0810CA4C @ =0x00000431
- adds r2, r3
- ldrb r0, [r2]
- movs r1, 0x2
- b _0810CB14
- .align 2, 0
-_0810CA48: .4byte gUnknown_8453F62
-_0810CA4C: .4byte 0x00000431
-_0810CA50:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r4, r0, 16
- mov r0, r9
- mov r1, r8
- bl sub_810D280
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _0810CA76
- movs r4, 0x64
- b _0810CA7C
-_0810CA76:
- cmp r0, 0x1
- bne _0810CA7C
- movs r4, 0
-_0810CA7C:
- cmp r4, 0x1D
- bhi _0810CAA0
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA98 @ =gUnknown_8453F62
- bl sub_810D24C
- ldr r2, [r6]
- ldr r0, _0810CA9C @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x2
- b _0810CB14
- .align 2, 0
-_0810CA98: .4byte gUnknown_8453F62
-_0810CA9C: .4byte 0x00000431
-_0810CAA0:
- ldr r0, _0810CB54 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, [r6]
- adds r0, r5
- ldr r2, _0810CB58 @ =0x0000063a
- adds r1, r2
- ldrb r0, [r0, 0x6]
- adds r1, r0
- strb r7, [r1]
- ldr r0, [r6]
- adds r0, r5
- ldrb r1, [r0, 0x7]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810CB5C @ =gMapObjects
- adds r0, r1
- bl npc_coords_shift_still
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CB60 @ =gUnknown_8453F64
- bl sub_810D24C
- ldr r2, [r6]
- mov r3, r10
- adds r0, r2, r3
- ldrb r1, [r0]
- lsls r1, 1
- movs r3, 0x80
- lsls r3, 3
- adds r0, r2, r3
- adds r0, r1
- mov r1, r8
- strh r1, [r0]
- adds r2, r5
- ldrb r0, [r2, 0xC]
- bl sub_810CF90
- ldr r1, [r6]
- mov r3, r10
- adds r2, r1, r3
- movs r3, 0x84
- lsls r3, 3
- adds r1, r3
- ldrb r2, [r2]
- adds r1, r2
- strb r0, [r1]
- ldr r1, [r6]
- add r1, r10
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r2, [r6]
- ldr r0, _0810CB64 @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x4
-_0810CB14:
- orrs r0, r1
- strb r0, [r2]
-_0810CB18:
- adds r5, 0x10
- movs r1, 0x1
- add r9, r1
- ldr r4, _0810CB68 @ =gUnknown_203ADB8
- ldr r0, [r4]
- adds r0, r5
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- beq _0810CB2C
- b _0810C9DA
-_0810CB2C:
- ldr r2, _0810CB68 @ =gUnknown_203ADB8
- ldr r0, [r2]
- ldr r3, _0810CB64 @ =0x00000431
- adds r0, r3
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0810CB70
- movs r0, 0x15
- bl PlaySE
- ldr r0, _0810CB6C @ =0x00000801
- bl FlagSet
- bl sub_810C640
- movs r0, 0x2
- b _0810CB7E
- .align 2, 0
-_0810CB54: .4byte gSaveBlock1Ptr
-_0810CB58: .4byte 0x0000063a
-_0810CB5C: .4byte gMapObjects
-_0810CB60: .4byte gUnknown_8453F64
-_0810CB64: .4byte 0x00000431
-_0810CB68: .4byte gUnknown_203ADB8
-_0810CB6C: .4byte 0x00000801
-_0810CB70:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0810CB7C
- movs r0, 0
- b _0810CB7E
-_0810CB7C:
- movs r0, 0x1
-_0810CB7E:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810C9A8
-
- thumb_func_start sub_810CB90
-sub_810CB90: @ 810CB90
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- ldr r5, _0810CC54 @ =gSaveBlock1Ptr
- ldr r0, [r5]
- movs r1, 0x8E
- lsls r1, 4
- adds r4, r0, r1
- ldr r0, _0810CC58 @ =gUnknown_845318C
- ldr r1, _0810CC5C @ =gTrainerBattleOpponent_A
- ldrh r1, [r1]
- bl sub_810CE10
- mov r9, r0
- movs r0, 0x1
- negs r0, r0
- cmp r9, r0
- beq _0810CC8A
- movs r0, 0
- mov r8, r0
- ldr r0, _0810CC60 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- bge _0810CC8A
- mov r10, r5
- adds r6, r4, 0
- adds r5, r6, 0
-_0810CBD4:
- ldrh r0, [r5, 0xC]
- cmp r0, 0x1
- beq _0810CBDE
- cmp r0, 0x3
- bne _0810CC78
-_0810CBDE:
- ldr r0, [r5, 0x10]
- bl sub_810D074
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _0810CC58 @ =gUnknown_845318C
- bl sub_810CE10
- cmp r9, r0
- bne _0810CC78
- ldrb r0, [r5]
- mov r1, r10
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810CC64 @ =gMapObjects
- adds r4, r0, r1
- adds r0, r6, 0
- bl sub_810CF54
- ldr r7, _0810CC68 @ =gUnknown_8453F67
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_805FE7C
- mov r1, r10
- ldr r0, [r1]
- ldr r1, _0810CC6C @ =0x0000063a
- adds r0, r1
- ldrb r1, [r5]
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, _0810CC70 @ =gUnknown_3005074
- mov r1, sp
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0810CC74
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r0, [r0]
- b _0810CC76
- .align 2, 0
-_0810CC54: .4byte gSaveBlock1Ptr
-_0810CC58: .4byte gUnknown_845318C
-_0810CC5C: .4byte gTrainerBattleOpponent_A
-_0810CC60: .4byte gMapHeader
-_0810CC64: .4byte gMapObjects
-_0810CC68: .4byte gUnknown_8453F67
-_0810CC6C: .4byte 0x0000063a
-_0810CC70: .4byte gUnknown_3005074
-_0810CC74:
- movs r0, 0x8
-_0810CC76:
- strb r0, [r4, 0x6]
-_0810CC78:
- adds r5, 0x18
- adds r6, 0x18
- movs r0, 0x1
- add r8, r0
- ldr r0, _0810CC9C @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- blt _0810CBD4
-_0810CC8A:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810CC9C: .4byte gMapHeader
- thumb_func_end sub_810CB90
-
- thumb_func_start sub_810CCA0
-sub_810CCA0: @ 810CCA0
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldrb r0, [r4]
- cmp r0, 0x5
- bhi _0810CD0A
- lsls r0, 2
- ldr r1, _0810CCB8 @ =_0810CCBC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810CCB8: .4byte _0810CCBC
- .align 2, 0
-_0810CCBC:
- .4byte _0810CD0A
- .4byte _0810CCD4
- .4byte _0810CCDC
- .4byte _0810CCE4
- .4byte _0810CCEC
- .4byte _0810CCF4
-_0810CCD4:
- ldr r0, _0810CCD8 @ =0x00000292
- b _0810CCF6
- .align 2, 0
-_0810CCD8: .4byte 0x00000292
-_0810CCDC:
- ldr r0, _0810CCE0 @ =0x00000896
- b _0810CCF6
- .align 2, 0
-_0810CCE0: .4byte 0x00000896
-_0810CCE4:
- ldr r0, _0810CCE8 @ =0x00000897
- b _0810CCF6
- .align 2, 0
-_0810CCE8: .4byte 0x00000897
-_0810CCEC:
- ldr r0, _0810CCF0 @ =0x0000082c
- b _0810CCF6
- .align 2, 0
-_0810CCF0: .4byte 0x0000082c
-_0810CCF4:
- ldr r0, _0810CD10 @ =0x00000844
-_0810CCF6:
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _0810CD0A
- ldrb r1, [r4]
- adds r0, r5, 0
- bl sub_810CD14
- strb r0, [r4]
-_0810CD0A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810CD10: .4byte 0x00000844
- thumb_func_end sub_810CCA0
-
- thumb_func_start sub_810CD14
-sub_810CD14: @ 810CD14
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- movs r0, 0xFF
- lsls r0, 24
- adds r1, r0
- lsrs r1, 24
- cmp r1, 0
- beq _0810CD46
- ldr r3, _0810CD38 @ =0x0000ffff
-_0810CD28:
- lsls r0, r1, 1
- adds r0, r2, r0
- ldrh r0, [r0]
- cmp r0, r3
- beq _0810CD3C
- adds r0, r1, 0
- b _0810CD48
- .align 2, 0
-_0810CD38: .4byte 0x0000ffff
-_0810CD3C:
- subs r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _0810CD28
-_0810CD46:
- movs r0, 0
-_0810CD48:
- pop {r1}
- bx r1
- thumb_func_end sub_810CD14
-
- thumb_func_start sub_810CD4C
-sub_810CD4C: @ 810CD4C
- push {r4,r5,lr}
- ldr r5, _0810CD70 @ =gUnknown_845318C
- ldr r4, _0810CD74 @ =gTrainerBattleOpponent_A
- ldrh r1, [r4]
- adds r0, r5, 0
- bl sub_810CD80
- lsls r0, 24
- cmp r0, 0
- bne _0810CD78
- ldrh r1, [r4]
- adds r0, r5, 0
- bl sub_810CDB4
- lsls r0, 24
- lsrs r0, 24
- b _0810CD7A
- .align 2, 0
-_0810CD70: .4byte gUnknown_845318C
-_0810CD74: .4byte gTrainerBattleOpponent_A
-_0810CD78:
- movs r0, 0x1
-_0810CD7A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810CD4C
-
- thumb_func_start sub_810CD80
-sub_810CD80: @ 810CD80
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- bl sub_810D084
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CDAC
- cmp r1, 0xDC
- bhi _0810CDAC
- ldr r0, _0810CDA8 @ =gUnknown_20370D2
- ldrh r0, [r0]
- bl sub_810D0A8
- cmp r0, 0
- beq _0810CDAC
- movs r0, 0x1
- b _0810CDAE
- .align 2, 0
-_0810CDA8: .4byte gUnknown_20370D2
-_0810CDAC:
- movs r0, 0
-_0810CDAE:
- pop {r1}
- bx r1
- thumb_func_end sub_810CD80
-
- thumb_func_start sub_810CDB4
-sub_810CDB4: @ 810CDB4
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r1, 16
- bl sub_810D084
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CDDE
- lsls r0, r1, 4
- adds r0, r4
- ldrh r0, [r0]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- beq _0810CDDE
- movs r0, 0x1
- b _0810CDE0
-_0810CDDE:
- movs r0, 0
-_0810CDE0:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_810CDB4
-
- thumb_func_start sub_810CDE8
-sub_810CDE8: @ 810CDE8
- push {lr}
- ldr r0, _0810CE04 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _0810CE08 @ =gUnknown_20370D2
- ldr r2, _0810CE0C @ =0x0000063a
- adds r0, r2
- ldrh r1, [r1]
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- bl sub_80803FC
- pop {r0}
- bx r0
- .align 2, 0
-_0810CE04: .4byte gSaveBlock1Ptr
-_0810CE08: .4byte gUnknown_20370D2
-_0810CE0C: .4byte 0x0000063a
- thumb_func_end sub_810CDE8
-
- thumb_func_start sub_810CE10
-sub_810CE10: @ 810CE10
- push {r4-r7,lr}
- mov r12, r0
- lsls r1, 16
- lsrs r6, r1, 16
- movs r1, 0
- mov r4, r12
- movs r7, 0
-_0810CE1E:
- movs r3, 0
- ldrh r0, [r4]
- cmp r0, 0
- beq _0810CE4E
- ldr r5, _0810CE3C @ =0x0000ffff
- mov r0, r12
- adds r2, r7, r0
-_0810CE2C:
- ldrh r0, [r2]
- cmp r0, r5
- beq _0810CE40
- cmp r0, r6
- bne _0810CE40
- adds r0, r1, 0
- b _0810CE5C
- .align 2, 0
-_0810CE3C: .4byte 0x0000ffff
-_0810CE40:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x5
- bgt _0810CE4E
- ldrh r0, [r2]
- cmp r0, 0
- bne _0810CE2C
-_0810CE4E:
- adds r4, 0x10
- adds r7, 0x10
- adds r1, 0x1
- cmp r1, 0xDC
- bls _0810CE1E
- movs r0, 0x1
- negs r0, r0
-_0810CE5C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810CE10
-
- thumb_func_start sub_810CE64
-sub_810CE64: @ 810CE64
- push {r4,r5,lr}
- sub sp, 0x4
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r5, _0810CEA4 @ =gUnknown_845318C
- adds r0, r5, 0
- mov r2, sp
- bl sub_810D164
- mov r4, sp
- adds r4, 0x1
- strb r0, [r4]
- ldrb r0, [r4]
- cmp r0, 0
- beq _0810CEA8
- mov r0, sp
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r5
- adds r1, r4, 0
- bl sub_810CCA0
- ldrb r1, [r4]
- lsls r1, 1
- mov r0, sp
- ldrb r0, [r0]
- lsls r0, 4
- adds r1, r0
- adds r1, r5
- ldrh r0, [r1]
- b _0810CEAA
- .align 2, 0
-_0810CEA4: .4byte gUnknown_845318C
-_0810CEA8:
- movs r0, 0
-_0810CEAA:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810CE64
-
- thumb_func_start sub_810CEB4
-sub_810CEB4: @ 810CEB4
- push {lr}
- ldr r0, _0810CEC8 @ =gUnknown_845318C
- ldr r1, _0810CECC @ =gTrainerBattleOpponent_A
- ldrh r1, [r1]
- bl sub_810CED0
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0810CEC8: .4byte gUnknown_845318C
-_0810CECC: .4byte gTrainerBattleOpponent_A
- thumb_func_end sub_810CEB4
-
- thumb_func_start sub_810CED0
-sub_810CED0: @ 810CED0
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- bl sub_810CE10
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CEFC
- cmp r1, 0xDC
- bhi _0810CEFC
- ldr r0, _0810CEF8 @ =gUnknown_20370D2
- ldrh r0, [r0]
- bl sub_810D0A8
- cmp r0, 0
- beq _0810CEFC
- movs r0, 0x1
- b _0810CEFE
- .align 2, 0
-_0810CEF8: .4byte gUnknown_20370D2
-_0810CEFC:
- movs r0, 0
-_0810CEFE:
- pop {r1}
- bx r1
- thumb_func_end sub_810CED0
-
- thumb_func_start sub_810CF04
-sub_810CF04: @ 810CF04
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- ldr r1, _0810CF40 @ =gMapObjects
- adds r1, r0, r1
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _0810CF4C
- ldr r0, _0810CF44 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- ldrb r2, [r1, 0x8]
- cmp r0, r2
- bcc _0810CF4C
- ldr r2, _0810CF48 @ =gSprites
- ldrb r1, [r1, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, r3
- bne _0810CF4C
- movs r0, 0x1
- b _0810CF4E
- .align 2, 0
-_0810CF40: .4byte gMapObjects
-_0810CF44: .4byte gMapHeader
-_0810CF48: .4byte gSprites
-_0810CF4C:
- movs r0, 0
-_0810CF4E:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF04
-
- thumb_func_start sub_810CF54
-sub_810CF54: @ 810CF54
- push {lr}
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 16
- adds r0, r1, 0
- cmp r1, 0x1
- beq _0810CF8A
- cmp r1, 0x1
- bgt _0810CF74
- cmp r1, 0
- beq _0810CF7E
- b _0810CF8A
-_0810CF74:
- cmp r0, 0x2
- beq _0810CF82
- cmp r0, 0x3
- beq _0810CF86
- b _0810CF8A
-_0810CF7E:
- movs r0, 0x7
- b _0810CF8C
-_0810CF82:
- movs r0, 0x9
- b _0810CF8C
-_0810CF86:
- movs r0, 0xA
- b _0810CF8C
-_0810CF8A:
- movs r0, 0x8
-_0810CF8C:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF54
-
- thumb_func_start sub_810CF90
-sub_810CF90: @ 810CF90
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x11
- cmp r0, 0x2D
- bhi _0810D06C
- lsls r0, 2
- ldr r1, _0810CFA8 @ =_0810CFAC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810CFA8: .4byte _0810CFAC
- .align 2, 0
-_0810CFAC:
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D068
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D068
- .4byte _0810D068
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D064
-_0810D064:
- movs r0, 0x4E
- b _0810D06E
-_0810D068:
- movs r0, 0x4F
- b _0810D06E
-_0810D06C:
- movs r0, 0x4D
-_0810D06E:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF90
-
- thumb_func_start sub_810D074
-sub_810D074: @ 810D074
- adds r0, 0x2
- ldrb r1, [r0]
- ldrb r0, [r0, 0x1]
- lsls r0, 8
- orrs r1, r0
- adds r0, r1, 0
- bx lr
- thumb_func_end sub_810D074
-
- thumb_func_start sub_810D084
-sub_810D084: @ 810D084
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- movs r3, 0
- adds r2, r0, 0
-_0810D08E:
- ldrh r0, [r2]
- cmp r0, r1
- bne _0810D098
- adds r0, r3, 0
- b _0810D0A4
-_0810D098:
- adds r2, 0x10
- adds r3, 0x1
- cmp r3, 0xDC
- bls _0810D08E
- movs r0, 0x1
- negs r0, r0
-_0810D0A4:
- pop {r1}
- bx r1
- thumb_func_end sub_810D084
-
- thumb_func_start sub_810D0A8
-sub_810D0A8: @ 810D0A8
- push {lr}
- ldr r1, _0810D0C0 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, _0810D0C4 @ =0x0000063a
- adds r1, r2
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _0810D0C8
- movs r0, 0x1
- b _0810D0CA
- .align 2, 0
-_0810D0C0: .4byte gSaveBlock1Ptr
-_0810D0C4: .4byte 0x0000063a
-_0810D0C8:
- movs r0, 0
-_0810D0CA:
- pop {r1}
- bx r1
- thumb_func_end sub_810D0A8
-
- thumb_func_start sub_810D0D0
-sub_810D0D0: @ 810D0D0
- push {r4,lr}
- movs r1, 0
- ldr r4, _0810D0F4 @ =gSaveBlock1Ptr
- ldr r3, _0810D0F8 @ =0x0000063a
- movs r2, 0
-_0810D0DA:
- ldr r0, [r4]
- adds r0, r3
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x63
- bls _0810D0DA
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D0F4: .4byte gSaveBlock1Ptr
-_0810D0F8: .4byte 0x0000063a
- thumb_func_end sub_810D0D0
-
- thumb_func_start sub_810D0FC
-sub_810D0FC: @ 810D0FC
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r1, sp
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x7
- strh r0, [r1]
- ldrh r0, [r4]
- subs r0, 0x7
- strh r0, [r4]
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- subs r0, r2, 0x7
- movs r3, 0x8
- ldrsh r1, [r5, r3]
- cmp r0, r1
- bgt _0810D15A
- adds r0, r2, 0x7
- cmp r0, r1
- blt _0810D15A
- movs r0, 0
- ldrsh r1, [r4, r0]
- subs r0, r1, 0x5
- movs r3, 0xA
- ldrsh r2, [r5, r3]
- cmp r0, r2
- bgt _0810D15A
- adds r0, r1, 0x5
- cmp r0, r2
- blt _0810D15A
- ldrb r0, [r5, 0x7]
- bl sub_810CF04
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D15A
- movs r0, 0x1
- b _0810D15C
-_0810D15A:
- movs r0, 0
-_0810D15C:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810D0FC
-
- thumb_func_start sub_810D164
-sub_810D164: @ 810D164
- push {r4-r7,lr}
- lsls r1, 16
- lsrs r1, 16
- movs r4, 0
- adds r3, r0, 0
-_0810D16E:
- ldrh r0, [r3]
- cmp r0, r1
- bne _0810D1B8
- strb r4, [r2]
- movs r5, 0x1
- ldr r7, _0810D188 @ =0x0000ffff
- adds r4, r3, 0x2
- movs r6, 0
-_0810D17E:
- ldrh r0, [r4]
- cmp r0, 0
- bne _0810D18C
- lsrs r0, r6, 24
- b _0810D1C6
- .align 2, 0
-_0810D188: .4byte 0x0000ffff
-_0810D18C:
- cmp r0, r7
- beq _0810D1A2
- ldrh r0, [r4]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- bne _0810D1A2
- lsls r0, r5, 24
- lsrs r0, 24
- b _0810D1C6
-_0810D1A2:
- adds r4, 0x2
- movs r0, 0x80
- lsls r0, 17
- adds r6, r0
- adds r5, 0x1
- cmp r5, 0x5
- ble _0810D17E
- subs r0, r5, 0x1
- lsls r0, 24
- lsrs r0, 24
- b _0810D1C6
-_0810D1B8:
- adds r3, 0x10
- adds r4, 0x1
- cmp r4, 0xDC
- bls _0810D16E
- movs r0, 0
- strb r0, [r2]
- movs r0, 0
-_0810D1C6:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810D164
-
- thumb_func_start sub_810D1CC
-sub_810D1CC: @ 810D1CC
- push {r4-r7,lr}
- sub sp, 0x4
- movs r5, 0
- ldr r6, _0810D220 @ =gUnknown_203ADB8
- ldr r0, [r6]
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- beq _0810D23C
- adds r7, r6, 0
-_0810D1DE:
- lsls r4, r5, 4
- ldr r0, [r7]
- adds r0, r4
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D228
- ldr r0, [r6]
- adds r0, r4
- ldrh r0, [r0, 0x4]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D216
- ldr r0, [r7]
- adds r0, r4
- ldrh r1, [r0, 0x4]
- ldr r0, _0810D224 @ =gUnknown_845318C
- mov r2, sp
- bl sub_810D164
- lsls r0, 24
- cmp r0, 0
- beq _0810D228
-_0810D216:
- ldr r0, [r7]
- adds r0, r4
- ldrb r0, [r0, 0x6]
- b _0810D23E
- .align 2, 0
-_0810D220: .4byte gUnknown_203ADB8
-_0810D224: .4byte gUnknown_845318C
-_0810D228:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r6, _0810D248 @ =gUnknown_203ADB8
- ldr r0, [r6]
- lsls r1, r5, 4
- adds r0, r1
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810D1DE
-_0810D23C:
- movs r0, 0xFF
-_0810D23E:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0810D248: .4byte gUnknown_203ADB8
- thumb_func_end sub_810D1CC
-
- thumb_func_start sub_810D24C
-sub_810D24C: @ 810D24C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r1, [r4, 0x7]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810D278 @ =gMapObjects
- adds r0, r1
- bl npc_sync_anim_pause_bits
- ldrb r0, [r4, 0x6]
- ldr r1, _0810D27C @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- adds r3, r5, 0
- bl ScriptMovement_StartObjectMovementScript
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D278: .4byte gMapObjects
-_0810D27C: .4byte gSaveBlock1Ptr
- thumb_func_end sub_810D24C
-
- thumb_func_start sub_810D280
-sub_810D280: @ 810D280
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- movs r5, 0
- cmp r5, r6
- bge _0810D2F8
- ldr r7, _0810D2E0 @ =gUnknown_203ADB8
- movs r4, 0
-_0810D298:
- ldr r0, [r7]
- adds r0, r4
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D2F0
- ldr r1, [r7]
- adds r0, r1, r4
- ldrh r0, [r0, 0x4]
- cmp r0, r8
- bne _0810D2F0
- movs r3, 0
- movs r2, 0x86
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r3, r0
- bge _0810D2EC
- ldr r0, _0810D2E0 @ =gUnknown_203ADB8
- ldr r1, [r0]
- adds r0, r1, r4
- ldrh r4, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 3
- adds r2, r1, r0
- adds r0, 0x30
- adds r1, r0
- ldrb r1, [r1]
-_0810D2D4:
- ldrh r0, [r2]
- cmp r0, r4
- bne _0810D2E4
- movs r0, 0x2
- b _0810D2FA
- .align 2, 0
-_0810D2E0: .4byte gUnknown_203ADB8
-_0810D2E4:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, r1
- blt _0810D2D4
-_0810D2EC:
- movs r0, 0x1
- b _0810D2FA
-_0810D2F0:
- adds r4, 0x10
- adds r5, 0x1
- cmp r5, r6
- blt _0810D298
-_0810D2F8:
- movs r0, 0
-_0810D2FA:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810D280
-
- thumb_func_start sub_810D304
-sub_810D304: @ 810D304
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- movs r7, 0
- ldr r2, _0810D328 @ =gUnknown_203ADB8
- ldr r0, [r2]
- movs r1, 0x86
- lsls r1, 3
- adds r0, r1
- mov r10, r2
- b _0810D3CC
- .align 2, 0
-_0810D328: .4byte gUnknown_203ADB8
-_0810D32C:
- ldr r0, [r2]
- ldrb r0, [r0, 0x6]
- adds r3, r7, 0x1
- mov r8, r3
- cmp r0, 0xFF
- beq _0810D3C0
- adds r5, r2, 0
- mov r10, r5
- movs r6, 0
- mov r9, r5
-_0810D340:
- ldr r0, [r5]
- adds r2, r0, r6
- lsls r1, r7, 1
- movs r3, 0x80
- lsls r3, 3
- adds r0, r3
- adds r0, r1
- ldrh r1, [r2, 0x4]
- ldrh r0, [r0]
- cmp r1, r0
- bne _0810D3B2
- ldrb r0, [r2, 0x7]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r2, _0810D3E4 @ =gMapObjects
- adds r4, r1, r2
- bl sub_810CF04
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D380
- ldr r0, [r5]
- movs r1, 0x84
- lsls r1, 3
- adds r0, r1
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl npc_set_running_behaviour_etc
-_0810D380:
- ldr r0, [r5]
- movs r3, 0x84
- lsls r3, 3
- adds r0, r3
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_805FE7C
- ldr r0, [r5]
- adds r0, r6
- ldrh r1, [r0, 0x4]
- ldr r0, _0810D3E8 @ =gUnknown_845318C
- mov r2, sp
- bl sub_810D164
- ldr r1, _0810D3EC @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, [r5]
- adds r2, r6
- ldr r3, _0810D3F0 @ =0x0000063a
- adds r1, r3
- ldrb r2, [r2, 0x6]
- adds r1, r2
- strb r0, [r1]
-_0810D3B2:
- adds r6, 0x10
- mov r1, r9
- ldr r0, [r1]
- adds r0, r6
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810D340
-_0810D3C0:
- mov r7, r8
- mov r2, r10
- ldr r0, [r2]
- movs r3, 0x86
- lsls r3, 3
- adds r0, r3
-_0810D3CC:
- ldrb r0, [r0]
- cmp r7, r0
- blt _0810D32C
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D3E4: .4byte gMapObjects
-_0810D3E8: .4byte gUnknown_845318C
-_0810D3EC: .4byte gSaveBlock1Ptr
-_0810D3F0: .4byte 0x0000063a
- thumb_func_end sub_810D304
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/wild_encounter.s b/asm/wild_encounter.s
index 45fdc3612..c57ca5366 100644
--- a/asm/wild_encounter.s
+++ b/asm/wild_encounter.s
@@ -878,7 +878,7 @@ _08082D78:
bl sub_8058F1C
lsls r0, 24
lsrs r0, 24
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1