diff options
Diffstat (limited to 'asm/field_map_obj.s')
-rw-r--r-- | asm/field_map_obj.s | 595 |
1 files changed, 0 insertions, 595 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s index c3b867525..ee5aa61c0 100644 --- a/asm/field_map_obj.s +++ b/asm/field_map_obj.s @@ -6,149 +6,6 @@ .text - thumb_func_start sub_805E278 -sub_805E278: @ 805E278 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E294 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E298 @ =sub_805E29C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E294: .4byte gMapObjects -_0805E298: .4byte sub_805E29C - thumb_func_end sub_805E278 - - thumb_func_start sub_805E29C -sub_805E29C: @ 805E29C - push {r4,lr} - ldr r3, _0805E2B8 @ =gUnknown_083753E4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E2B8: .4byte gUnknown_083753E4 - thumb_func_end sub_805E29C - - thumb_func_start sub_805E2BC -sub_805E2BC: @ 805E2BC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E2BC - - thumb_func_start sub_805E2E8 -sub_805E2E8: @ 805E2E8 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E302 - adds r0, r4, 0 - movs r1, 0x30 - bl sub_8064820 - movs r0, 0x2 - strh r0, [r4, 0x30] -_0805E302: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E2E8 - - thumb_func_start sub_805E30C -sub_805E30C: @ 805E30C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805E32A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805E32E -_0805E32A: - movs r0, 0x3 - strh r0, [r5, 0x30] -_0805E32E: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E30C - - thumb_func_start sub_805E338 -sub_805E338: @ 805E338 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E378 @ =gUnknown_083753F4 - mov r0, sp - movs r2, 0x5 - bl memcpy - adds r0, r4, 0 - movs r1, 0 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E364 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - add r0, sp - ldrb r1, [r0] -_0805E364: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0 - strh r0, [r5, 0x30] - movs r0, 0x1 - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E378: .4byte gUnknown_083753F4 - thumb_func_end sub_805E338 - thumb_func_start sub_805E37C sub_805E37C: @ 805E37C push {lr} @@ -3660,458 +3517,6 @@ sub_805FD08: @ 805FD08 .section .text_805fd18 - thumb_func_start sub_805FE28 -sub_805FE28: @ 805FE28 - push {r4,lr} - adds r3, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r0, 0x1] - lsls r0, 27 - lsrs r4, r0, 31 - cmp r4, 0 - bne _0805FE5E - adds r0, r3, 0 - adds r0, 0x2A - strb r2, [r0] - adds r0, 0x1 - ldrb r2, [r0] - adds r1, r0, 0 - cmp r2, 0x1 - bne _0805FE50 - movs r0, 0x2 - strb r0, [r1] - b _0805FE56 -_0805FE50: - cmp r2, 0x3 - bne _0805FE56 - strb r4, [r1] -_0805FE56: - ldrb r1, [r1] - adds r0, r3, 0 - bl SeekSpriteAnim -_0805FE5E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_805FE28 - - thumb_func_start sub_805FE64 -sub_805FE64: @ 805FE64 - push {lr} - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r0, 0x1] - lsls r0, 27 - cmp r0, 0 - blt _0805FE8C - adds r0, r1, 0 - adds r0, 0x2A - strb r2, [r0] - movs r2, 0x3 - adds r0, 0x1 - ldrb r0, [r0] - cmp r0, 0x1 - bhi _0805FE84 - movs r2, 0x1 -_0805FE84: - adds r0, r1, 0 - adds r1, r2, 0 - bl SeekSpriteAnim -_0805FE8C: - pop {r0} - bx r0 - thumb_func_end sub_805FE64 - - thumb_func_start sub_805FE90 -sub_805FE90: @ 805FE90 - push {lr} - lsls r1, 16 - lsrs r1, 16 - lsls r3, 16 - lsrs r3, 16 - lsls r0, 16 - asrs r0, 16 - lsls r2, 16 - asrs r2, 16 - cmp r0, r2 - ble _0805FEAA - movs r0, 0x3 - b _0805FEC0 -_0805FEAA: - cmp r0, r2 - bge _0805FEB2 - movs r0, 0x4 - b _0805FEC0 -_0805FEB2: - lsls r1, 16 - lsls r0, r3, 16 - cmp r1, r0 - bgt _0805FEBE - movs r0, 0x1 - b _0805FEC0 -_0805FEBE: - movs r0, 0x2 -_0805FEC0: - pop {r1} - bx r1 - thumb_func_end sub_805FE90 - - thumb_func_start npc_set_running_behaviour_etc -npc_set_running_behaviour_etc: @ 805FEC4 - push {r4,lr} - mov r12, r0 - lsls r1, 24 - lsrs r1, 24 - movs r3, 0 - strb r1, [r0, 0x6] - adds r0, 0x21 - strb r3, [r0] - adds r0, 0x1 - strb r3, [r0] - ldr r4, _0805FF08 @ =gSprites - mov r0, r12 - ldrb r2, [r0, 0x4] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r2, r4, 0 - adds r2, 0x1C - adds r0, r2 - ldr r2, _0805FF0C @ =gUnknown_0836DA88 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - str r1, [r0] - mov r0, r12 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r3, [r0, 0x30] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0805FF08: .4byte gSprites -_0805FF0C: .4byte gUnknown_0836DA88 - thumb_func_end npc_set_running_behaviour_etc - - thumb_func_start npc_running_behaviour_by_direction -npc_running_behaviour_by_direction: @ 805FF10 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FF1C @ =gUnknown_0837567B - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FF1C: .4byte gUnknown_0837567B - thumb_func_end npc_running_behaviour_by_direction - - thumb_func_start sub_805FF20 -sub_805FF20: @ 805FF20 - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - lsls r5, r1, 24 - lsrs r5, 24 - ldrh r1, [r6, 0x10] - mov r0, sp - strh r1, [r0] - ldrh r0, [r6, 0x12] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - adds r0, r5, 0 - mov r1, sp - adds r2, r4, 0 - bl MoveCoords - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r4, r0] - adds r0, r6, 0 - adds r3, r5, 0 - bl npc_block_way - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805FF20 - - thumb_func_start npc_block_way -npc_block_way: @ 805FF60 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - lsls r1, 16 - lsls r2, 16 - lsls r3, 24 - lsrs r7, r3, 24 - mov r8, r7 - lsrs r0, r1, 16 - mov r9, r0 - asrs r5, r1, 16 - lsrs r0, r2, 16 - mov r10, r0 - asrs r4, r2, 16 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl IsCoordOutsideFieldObjectMovementRect - lsls r0, 24 - cmp r0, 0 - beq _0805FF96 - movs r0, 0x1 - b _08060016 -_0805FF96: - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridIsImpassableAt - lsls r0, 24 - cmp r0, 0 - bne _0805FFD8 - adds r0, r5, 0 - adds r1, r4, 0 - bl GetMapBorderIdAt - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0805FFD8 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl IsMetatileDirectionallyImpassable - lsls r0, 24 - cmp r0, 0 - bne _0805FFD8 - ldrb r0, [r6, 0x1] - lsrs r0, 7 - cmp r0, 0 - beq _0805FFDC - mov r0, r8 - bl CanCameraMoveInDirection - cmp r0, 0 - bne _0805FFDC -_0805FFD8: - movs r0, 0x2 - b _08060016 -_0805FFDC: - ldrb r0, [r6, 0xB] - lsls r0, 28 - lsrs r0, 28 - mov r2, r9 - lsls r1, r2, 16 - asrs r5, r1, 16 - mov r2, r10 - lsls r1, r2, 16 - asrs r4, r1, 16 - adds r1, r5, 0 - adds r2, r4, 0 - bl IsZCoordMismatchAt - lsls r0, 24 - cmp r0, 0 - beq _08060000 - movs r0, 0x3 - b _08060016 -_08060000: - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl CheckForCollisionBetweenFieldObjects - lsls r0, 24 - cmp r0, 0 - bne _08060014 - movs r0, 0 - b _08060016 -_08060014: - movs r0, 0x4 -_08060016: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end npc_block_way - - thumb_func_start sub_8060024 -sub_8060024: @ 8060024 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - lsls r1, 16 - lsls r2, 16 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - lsrs r0, r1, 16 - mov r9, r0 - asrs r6, r1, 16 - lsrs r0, r2, 16 - mov r10, r0 - asrs r5, r2, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl IsCoordOutsideFieldObjectMovementRect - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r6, 0 - adds r1, r5, 0 - bl MapGridIsImpassableAt - lsls r0, 24 - cmp r0, 0 - bne _0806009C - adds r0, r6, 0 - adds r1, r5, 0 - bl GetMapBorderIdAt - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0806009C - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - mov r3, r8 - bl IsMetatileDirectionallyImpassable - lsls r0, 24 - cmp r0, 0 - bne _0806009C - ldrb r0, [r7, 0x1] - lsrs r0, 7 - cmp r0, 0 - beq _080600A0 - mov r0, r8 - bl CanCameraMoveInDirection - cmp r0, 0 - bne _080600A0 -_0806009C: - movs r0, 0x2 - orrs r4, r0 -_080600A0: - ldrb r0, [r7, 0xB] - lsls r0, 28 - lsrs r0, 28 - mov r2, r9 - lsls r1, r2, 16 - asrs r6, r1, 16 - mov r2, r10 - lsls r1, r2, 16 - asrs r5, r1, 16 - adds r1, r6, 0 - adds r2, r5, 0 - bl IsZCoordMismatchAt - lsls r0, 24 - cmp r0, 0 - beq _080600C8 - movs r0, 0x4 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080600C8: - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl CheckForCollisionBetweenFieldObjects - lsls r0, 24 - cmp r0, 0 - beq _080600E0 - movs r0, 0x8 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080600E0: - adds r0, r4, 0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8060024 - - thumb_func_start IsCoordOutsideFieldObjectMovementRect -IsCoordOutsideFieldObjectMovementRect: @ 80600F0 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 16 - lsrs r3, r1, 16 - lsls r2, 16 - lsrs r5, r2, 16 - ldrb r1, [r4, 0x19] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - beq _08060128 - lsls r1, 28 - lsrs r2, r1, 28 - ldrh r0, [r4, 0xC] - subs r2, r0, r2 - lsrs r1, 28 - adds r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - lsls r2, 16 - lsls r0, r3, 16 - asrs r3, r0, 16 - cmp r2, r0 - bgt _08060154 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, r3 - blt _08060154 -_08060128: - ldrb r1, [r4, 0x19] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - beq _08060158 - lsls r1, 24 - lsrs r2, r1, 28 - ldrh r0, [r4, 0xE] - subs r2, r0, r2 - lsrs r1, 28 - adds r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - lsls r2, 16 - lsls r0, r5, 16 - asrs r3, r0, 16 - cmp r2, r0 - bgt _08060154 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, r3 - bge _08060158 -_08060154: - movs r0, 0x1 - b _0806015A -_08060158: - movs r0, 0 -_0806015A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end IsCoordOutsideFieldObjectMovementRect - thumb_func_start IsMetatileDirectionallyImpassable IsMetatileDirectionallyImpassable: @ 8060160 push {r4-r7,lr} |