diff options
author | Thomas Winwood <twwinwood@gmail.com> | 2018-07-21 02:06:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-21 02:06:31 +0100 |
commit | 23ef2f50a7b94c23b50e9e690a7482ac349c9ef3 (patch) | |
tree | 63c20c67efbdf8334c6e273f78065b83135e3886 /engine/overworld/npc_movement.asm | |
parent | 17a4d0540acc00e3f5ad260009115eb36e72b7d2 (diff) | |
parent | 2d73d040d16a7836f935a7a6cb2a311aed2ca5a2 (diff) |
Merge branch 'master' into the-diffening
Diffstat (limited to 'engine/overworld/npc_movement.asm')
-rw-r--r-- | engine/overworld/npc_movement.asm | 57 |
1 files changed, 16 insertions, 41 deletions
diff --git a/engine/overworld/npc_movement.asm b/engine/overworld/npc_movement.asm index 40ced1a5f..b4b5ef467 100644 --- a/engine/overworld/npc_movement.asm +++ b/engine/overworld/npc_movement.asm @@ -1,5 +1,4 @@ -CanObjectMoveInDirection: ; 6ec1 - +CanObjectMoveInDirection: ld hl, OBJECT_PALETTE add hl, bc bit SWIMMING_F, [hl] @@ -57,10 +56,8 @@ CanObjectMoveInDirection: ; 6ec1 .move_anywhere and a ret -; 6f07 - -WillObjectBumpIntoWater: ; 6f07 +WillObjectBumpIntoWater: call Function6f5f ret c ld hl, OBJECT_NEXT_MAP_X @@ -82,9 +79,8 @@ WillObjectBumpIntoWater: ; 6f07 jr z, WillObjectBumpIntoTile scf ret -; 6f2c -WillObjectBumpIntoLand: ; 6f2c +WillObjectBumpIntoLand: call Function6f5f ret c ld hl, OBJECT_NEXT_TILE @@ -95,9 +91,8 @@ WillObjectBumpIntoLand: ; 6f2c jr z, WillObjectBumpIntoTile scf ret -; 6f3e -WillObjectBumpIntoTile: ; 6f3e +WillObjectBumpIntoTile: ld hl, OBJECT_NEXT_TILE add hl, bc ld a, [hl] @@ -117,13 +112,11 @@ WillObjectBumpIntoTile: ; 6f3e ret z scf ret -; 6f5b .data_6f5b db DOWN_MASK, UP_MASK, RIGHT_MASK, LEFT_MASK -; 6f5f -Function6f5f: ; 6f5f +Function6f5f: ld hl, OBJECT_STANDING_TILE add hl, bc ld a, [hl] @@ -142,18 +135,16 @@ Function6f5f: ; 6f5f ret z scf ret -; 6f7b .data_6f7b db UP_MASK, DOWN_MASK, LEFT_MASK, RIGHT_MASK -; 6f7f -Function6f7f: ; 6f7f +Function6f7f: ld d, a and $f0 - cp $b0 + cp HI_NYBBLE_SIDE_WALLS jr z, .done - cp $c0 + cp HI_NYBBLE_UNUSED_C0 jr z, .done xor a ret @@ -168,14 +159,12 @@ Function6f7f: ; 6f7f ld a, [hl] scf ret -; 6f99 .data_6f99 db 8, 4, 1, 2 db 10, 6, 9, 5 -; 6fa1 -Function6fa1: ; 6fa1 +Function6fa1: ld hl, OBJECT_DIRECTION_WALKING add hl, bc ld a, [hl] @@ -224,12 +213,8 @@ Function6fa1: ; 6fa1 .not_land scf ret -; 6fd9 - - - -CheckFacingObject:: ; 6fd9 +CheckFacingObject:: call GetFacingTileCoord ; Double the distance for counter tiles. @@ -267,10 +252,8 @@ CheckFacingObject:: ; 6fd9 .standing scf ret -; 7009 - -WillObjectBumpIntoSomeoneElse: ; 7009 +WillObjectBumpIntoSomeoneElse: ld hl, OBJECT_NEXT_MAP_X add hl, bc ld d, [hl] @@ -278,7 +261,6 @@ WillObjectBumpIntoSomeoneElse: ; 7009 add hl, bc ld e, [hl] jr IsNPCAtCoord -; 7015 Unreferenced_Function7015: ld a, [hMapObjectIndexBuffer] @@ -287,7 +269,7 @@ Unreferenced_Function7015: call IsNPCAtCoord ret -.CheckWillBeFacingNPC: ; 7021 +.CheckWillBeFacingNPC: ld hl, OBJECT_NEXT_MAP_X add hl, bc ld d, [hl] @@ -315,9 +297,8 @@ Unreferenced_Function7015: .left dec d ret -; 7041 -IsNPCAtCoord: ; 7041 +IsNPCAtCoord: ld bc, wObjectStructs xor a .loop @@ -390,9 +371,8 @@ IsNPCAtCoord: ; 7041 .setcarry scf ret -; 70a4 -HasObjectReachedMovementLimit: ; 70a4 +HasObjectReachedMovementLimit: ld hl, OBJECT_RADIUS add hl, bc ld a, [hl] @@ -450,9 +430,8 @@ HasObjectReachedMovementLimit: ; 70a4 .yes scf ret -; 70ed -IsObjectMovingOffEdgeOfScreen: ; 70ed +IsObjectMovingOffEdgeOfScreen: ld hl, OBJECT_NEXT_MAP_X add hl, bc ld a, [wXCoord] @@ -481,7 +460,6 @@ IsObjectMovingOffEdgeOfScreen: ; 70ed .yes scf ret -; 7113 Unreferenced_Function7113: ld a, [wPlayerStandingMapX] @@ -547,10 +525,8 @@ Unreferenced_Function7113: .yes scf ret -; 7171 - -Function7171: ; 7171 +Function7171: ld hl, OBJECT_NEXT_MAP_X add hl, bc ld a, d @@ -571,4 +547,3 @@ Function7171: ; 7171 .nope and a ret -; 718d |