diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/event_object_movement.s | 26 | ||||
| -rw-r--r-- | asm/field_player_avatar.s | 6 | ||||
| -rw-r--r-- | asm/trainer_see.s | 451 | 
3 files changed, 16 insertions, 467 deletions
| diff --git a/asm/event_object_movement.s b/asm/event_object_movement.s index f585a60bc..49724f61d 100644 --- a/asm/event_object_movement.s +++ b/asm/event_object_movement.s @@ -10521,7 +10521,7 @@ sub_80629B8: @ 80629B8  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062A3E @@ -10610,7 +10610,7 @@ sub_8062A70: @ 8062A70  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062AF6 @@ -10699,7 +10699,7 @@ sub_8062B28: @ 8062B28  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062BAE @@ -10788,7 +10788,7 @@ sub_8062BE0: @ 8062BE0  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062C66 @@ -10913,7 +10913,7 @@ sub_8062CE0: @ 8062CE0  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062D66 @@ -11009,7 +11009,7 @@ oac_hopping: @ 8062D98  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _08062E2C @@ -12292,7 +12292,7 @@ npc_block_way__next_tile: @ 806366C  	ldrsh r2, [r4, r0]  	adds r0, r6, 0  	adds r3, r5, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	lsrs r0, 24  	add sp, 0x4 @@ -12301,8 +12301,8 @@ npc_block_way__next_tile: @ 806366C  	bx r1  	thumb_func_end npc_block_way__next_tile -	thumb_func_start npc_block_way -npc_block_way: @ 80636AC +	thumb_func_start GetCollisionAtCoords +GetCollisionAtCoords: @ 80636AC  	push {r4-r7,lr}  	mov r7, r10  	mov r6, r9 @@ -12400,10 +12400,10 @@ _08063762:  	pop {r4-r7}  	pop {r1}  	bx r1 -	thumb_func_end npc_block_way +	thumb_func_end GetCollisionAtCoords -	thumb_func_start sub_8063770 -sub_8063770: @ 8063770 +	thumb_func_start GetCollisionFlagsAtCoords +GetCollisionFlagsAtCoords: @ 8063770  	push {r4-r7,lr}  	mov r7, r10  	mov r6, r9 @@ -12503,7 +12503,7 @@ _0806382C:  	pop {r4-r7}  	pop {r1}  	bx r1 -	thumb_func_end sub_8063770 +	thumb_func_end GetCollisionFlagsAtCoords  	thumb_func_start IsCoordOutsideObjectEventMovementRect  IsCoordOutsideObjectEventMovementRect: @ 806383C diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s index a605f1439..7a2c5cbc5 100644 --- a/asm/field_player_avatar.s +++ b/asm/field_player_avatar.s @@ -1120,7 +1120,7 @@ sub_805BBA8: @ 805BBA8  	adds r1, r5, 0  	adds r2, r4, 0  	adds r3, r6, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	lsrs r0, 24  	mov r1, sp @@ -1323,7 +1323,7 @@ sub_805BCEC: @ 805BCEC  	ldrsh r2, [r5, r0]  	adds r0, r4, 0  	adds r3, r7, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	cmp r0, 0  	bne _0805BDA0 @@ -2906,7 +2906,7 @@ IsPlayerFacingSurfableFishableWater: @ 805C8B0  	lsls r3, 28  	lsrs r3, 28  	adds r0, r4, 0 -	bl npc_block_way +	bl GetCollisionAtCoords  	lsls r0, 24  	lsrs r0, 24  	cmp r0, 0x3 diff --git a/asm/trainer_see.s b/asm/trainer_see.s index c12bcaeeb..11c4fcbcb 100644 --- a/asm/trainer_see.s +++ b/asm/trainer_see.s @@ -5,457 +5,6 @@  	.text -	thumb_func_start CheckForTrainersWantingBattle -CheckForTrainersWantingBattle: @ 8081B30 -	push {r4,r5,lr} -	bl sub_8111C2C -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	bne _08081B44 -	b _08081B78 -_08081B40: -	movs r0, 0x1 -	b _08081B7A -_08081B44: -	movs r4, 0 -	ldr r5, _08081B80 @ =gObjectEvents -_08081B48: -	lsls r0, r4, 3 -	adds r0, r4 -	lsls r0, 2 -	adds r1, r0, r5 -	ldrb r0, [r1] -	lsls r0, 31 -	cmp r0, 0 -	beq _08081B6E -	ldrb r0, [r1, 0x7] -	cmp r0, 0x1 -	beq _08081B62 -	cmp r0, 0x3 -	bne _08081B6E -_08081B62: -	adds r0, r4, 0 -	bl sub_8081B84 -	lsls r0, 24 -	cmp r0, 0 -	bne _08081B40 -_08081B6E: -	adds r0, r4, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0xF -	bls _08081B48 -_08081B78: -	movs r0, 0 -_08081B7A: -	pop {r4,r5} -	pop {r1} -	bx r1 -	.align 2, 0 -_08081B80: .4byte gObjectEvents -	thumb_func_end CheckForTrainersWantingBattle - -	thumb_func_start sub_8081B84 -sub_8081B84: @ 8081B84 -	push {r4-r7,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	adds r0, r5, 0 -	bl GetObjectEventScriptPointerByObjectEventId -	adds r6, r0, 0 -	bl GetTrainerFlagFromScriptPointer -	cmp r0, 0 -	bne _08081BE4 -	lsls r4, r5, 3 -	adds r0, r4, r5 -	lsls r0, 2 -	ldr r1, _08081BE0 @ =gObjectEvents -	adds r0, r1 -	bl sub_8081BEC -	lsls r0, 24 -	lsrs r7, r0, 24 -	cmp r7, 0 -	beq _08081BE4 -	ldrb r0, [r6, 0x1] -	cmp r0, 0x4 -	bne _08081BC0 -	bl GetMonsStateToDoubles -	lsls r0, 24 -	cmp r0, 0 -	bne _08081BE4 -_08081BC0: -	adds r0, r5, 0 -	adds r1, r6, 0 -	bl ConfigureAndSetUpOneTrainerBattle -	adds r0, r4, r5 -	lsls r0, 2 -	ldr r1, _08081BE0 @ =gObjectEvents -	adds r0, r1 -	subs r1, r7, 0x1 -	lsls r1, 24 -	lsrs r1, 24 -	bl sub_8081E68 -	movs r0, 0x1 -	b _08081BE6 -	.align 2, 0 -_08081BE0: .4byte gObjectEvents -_08081BE4: -	movs r0, 0 -_08081BE6: -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_8081B84 - -	thumb_func_start sub_8081BEC -sub_8081BEC: @ 8081BEC -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	sub sp, 0x4 -	adds r7, r0, 0 -	mov r4, sp -	adds r4, 0x2 -	mov r0, sp -	adds r1, r4, 0 -	bl PlayerGetDestCoords -	ldrb r0, [r7, 0x7] -	mov r8, r4 -	cmp r0, 0x1 -	bne _08081C4C -	ldr r1, _08081C44 @ =gUnknown_83C7248 -	ldrb r0, [r7, 0x18] -	lsls r0, 28 -	lsrs r0, 26 -	subs r0, 0x4 -	adds r0, r1 -	ldrb r1, [r7, 0x1D] -	mov r2, sp -	movs r3, 0 -	ldrsh r2, [r2, r3] -	movs r5, 0 -	ldrsh r3, [r4, r5] -	ldr r4, [r0] -	adds r0, r7, 0 -	bl _call_via_r4 -	lsls r0, 24 -	lsrs r6, r0, 24 -	ldrb r2, [r7, 0x18] -	lsls r2, 28 -	lsrs r2, 28 -	adds r0, r7, 0 -	adds r1, r6, 0 -	bl CheckPathBetweenTrainerAndPlayer -	lsls r0, 24 -	lsrs r0, 24 -	b _08081C8C -	.align 2, 0 -_08081C44: .4byte gUnknown_83C7248 -_08081C48: -	adds r0, r6, 0 -	b _08081C8C -_08081C4C: -	movs r5, 0 -_08081C4E: -	ldr r0, _08081C98 @ =gUnknown_83C7248 -	lsls r4, r5, 2 -	adds r4, r0 -	ldrb r1, [r7, 0x1D] -	mov r0, sp -	movs r6, 0 -	ldrsh r2, [r0, r6] -	mov r0, r8 -	movs r6, 0 -	ldrsh r3, [r0, r6] -	ldr r4, [r4] -	adds r0, r7, 0 -	bl _call_via_r4 -	lsls r0, 24 -	lsrs r6, r0, 24 -	adds r0, r5, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	adds r0, r7, 0 -	adds r1, r6, 0 -	adds r2, r4, 0 -	bl CheckPathBetweenTrainerAndPlayer -	lsls r0, 24 -	cmp r0, 0 -	bne _08081C48 -	adds r5, r4, 0 -	cmp r5, 0x3 -	bls _08081C4E -	movs r0, 0 -_08081C8C: -	add sp, 0x4 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_08081C98: .4byte gUnknown_83C7248 -	thumb_func_end sub_8081BEC - -	thumb_func_start IsTrainerInRangeSouth -IsTrainerInRangeSouth: @ 8081C9C -	push {r4,r5,lr} -	adds r4, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	lsls r3, 16 -	lsrs r5, r3, 16 -	movs r3, 0x10 -	ldrsh r0, [r4, r3] -	lsls r2, 16 -	asrs r2, 16 -	cmp r0, r2 -	bne _08081CE4 -	lsls r0, r5, 16 -	asrs r2, r0, 16 -	movs r3, 0x12 -	ldrsh r0, [r4, r3] -	cmp r2, r0 -	ble _08081CE4 -	lsls r1, 16 -	asrs r1, 16 -	adds r0, r1 -	cmp r2, r0 -	bgt _08081CE4 -	cmp r1, 0x3 -	ble _08081CDA -	bl sub_805DF30 -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x10 -	beq _08081CE4 -_08081CDA: -	ldrb r0, [r4, 0x12] -	subs r0, r5, r0 -	lsls r0, 24 -	lsrs r0, 24 -	b _08081CE6 -_08081CE4: -	movs r0, 0 -_08081CE6: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end IsTrainerInRangeSouth - -	thumb_func_start IsTrainerInRangeNorth -IsTrainerInRangeNorth: @ 8081CEC -	push {r4-r6,lr} -	adds r4, r0, 0 -	lsls r1, 16 -	lsrs r6, r1, 16 -	lsls r3, 16 -	lsrs r5, r3, 16 -	movs r1, 0x10 -	ldrsh r0, [r4, r1] -	lsls r2, 16 -	asrs r2, 16 -	cmp r0, r2 -	bne _08081D26 -	lsls r0, r5, 16 -	asrs r2, r0, 16 -	ldrh r3, [r4, 0x12] -	movs r1, 0x12 -	ldrsh r0, [r4, r1] -	cmp r2, r0 -	bge _08081D26 -	adds r1, r0, 0 -	lsls r0, r6, 16 -	asrs r0, 16 -	subs r1, r0 -	cmp r2, r1 -	blt _08081D26 -	subs r0, r3, r5 -	lsls r0, 24 -	lsrs r0, 24 -	b _08081D28 -_08081D26: -	movs r0, 0 -_08081D28: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end IsTrainerInRangeNorth - -	thumb_func_start IsTrainerInRangeWest -IsTrainerInRangeWest: @ 8081D30 -	push {r4-r6,lr} -	adds r4, r0, 0 -	lsls r1, 16 -	lsrs r6, r1, 16 -	lsls r2, 16 -	lsrs r5, r2, 16 -	movs r1, 0x12 -	ldrsh r0, [r4, r1] -	lsls r3, 16 -	asrs r3, 16 -	cmp r0, r3 -	bne _08081D6A -	lsls r0, r5, 16 -	asrs r3, r0, 16 -	ldrh r2, [r4, 0x10] -	movs r1, 0x10 -	ldrsh r0, [r4, r1] -	cmp r3, r0 -	bge _08081D6A -	adds r1, r0, 0 -	lsls r0, r6, 16 -	asrs r0, 16 -	subs r1, r0 -	cmp r3, r1 -	blt _08081D6A -	subs r0, r2, r5 -	lsls r0, 24 -	lsrs r0, 24 -	b _08081D6C -_08081D6A: -	movs r0, 0 -_08081D6C: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end IsTrainerInRangeWest - -	thumb_func_start IsTrainerInRangeEast -IsTrainerInRangeEast: @ 8081D74 -	push {r4-r6,lr} -	adds r4, r0, 0 -	lsls r1, 16 -	lsrs r6, r1, 16 -	lsls r2, 16 -	lsrs r5, r2, 16 -	movs r1, 0x12 -	ldrsh r0, [r4, r1] -	lsls r3, 16 -	asrs r3, 16 -	cmp r0, r3 -	bne _08081DAE -	lsls r0, r5, 16 -	asrs r3, r0, 16 -	ldrh r2, [r4, 0x10] -	movs r1, 0x10 -	ldrsh r0, [r4, r1] -	cmp r3, r0 -	ble _08081DAE -	adds r1, r0, 0 -	lsls r0, r6, 16 -	asrs r0, 16 -	adds r1, r0 -	cmp r3, r1 -	bgt _08081DAE -	subs r0, r5, r2 -	lsls r0, 24 -	lsrs r0, 24 -	b _08081DB0 -_08081DAE: -	movs r0, 0 -_08081DB0: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end IsTrainerInRangeEast - -	thumb_func_start CheckPathBetweenTrainerAndPlayer -CheckPathBetweenTrainerAndPlayer: @ 8081DB8 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x4 -	adds r6, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	mov r9, r1 -	lsls r2, 24 -	lsrs r7, r2, 24 -	cmp r1, 0 -	beq _08081E54 -	ldrh r1, [r6, 0x10] -	mov r0, sp -	strh r1, [r0] -	ldrh r0, [r6, 0x12] -	mov r1, sp -	adds r1, 0x2 -	strh r0, [r1] -	movs r4, 0 -	mov r8, r1 -	mov r5, r9 -	subs r5, 0x1 -	cmp r4, r5 -	bgt _08081E26 -_08081DEC: -	mov r0, sp -	movs r2, 0 -	ldrsh r1, [r0, r2] -	mov r3, r8 -	movs r0, 0 -	ldrsh r2, [r3, r0] -	adds r0, r6, 0 -	adds r3, r7, 0 -	bl sub_8063770 -	lsls r0, 24 -	lsrs r1, r0, 24 -	cmp r1, 0 -	beq _08081E12 -	movs r0, 0x2 -	negs r0, r0 -	ands r1, r0 -	cmp r1, 0 -	bne _08081E54 -_08081E12: -	adds r0, r4, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	adds r0, r7, 0 -	mov r1, sp -	mov r2, r8 -	bl MoveCoords -	cmp r4, r5 -	ble _08081DEC -_08081E26: -	ldrb r4, [r6, 0x19] -	lsls r5, r4, 28 -	lsrs r5, 28 -	lsrs r4, 4 -	movs r0, 0 -	strb r0, [r6, 0x19] -	mov r0, sp -	movs r2, 0 -	ldrsh r1, [r0, r2] -	mov r3, r8 -	movs r0, 0 -	ldrsh r2, [r3, r0] -	adds r0, r6, 0 -	adds r3, r7, 0 -	bl npc_block_way -	lsls r0, 24 -	lsrs r1, r0, 24 -	lsls r4, 4 -	orrs r5, r4 -	strb r5, [r6, 0x19] -	cmp r1, 0x4 -	beq _08081E58 -_08081E54: -	movs r0, 0 -	b _08081E5A -_08081E58: -	mov r0, r9 -_08081E5A: -	add sp, 0x4 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end CheckPathBetweenTrainerAndPlayer -  	thumb_func_start sub_8081E68  sub_8081E68: @ 8081E68  	push {r4,r5,lr} | 
