diff options
Diffstat (limited to 'engine/map_objects.asm')
-rw-r--r-- | engine/map_objects.asm | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/engine/map_objects.asm b/engine/map_objects.asm index 8e1c9b829..0f04a0a16 100644 --- a/engine/map_objects.asm +++ b/engine/map_objects.asm @@ -1,6 +1,6 @@ -INCLUDE "data/facings.asm" +INCLUDE "data/sprites/facings.asm" -INCLUDE "data/map_objects.asm" +INCLUDE "data/sprites/map_objects.asm" ; 4357 @@ -392,6 +392,7 @@ StepVectors: ; 4700 db -4, 0, 4, 4 db 4, 0, 4, 4 ; 4730 + GetStepVectorSign: ; 4730 add a ret z ; 0 or 128 @@ -400,6 +401,7 @@ GetStepVectorSign: ; 4730 ld a, -1 ret ; 129 - 255 ; 4738 + UpdatePlayerStep: ; 4738 ld hl, OBJECT_DIRECTION_WALKING add hl, bc @@ -891,7 +893,7 @@ MapObjectMovementPattern: ; 47dd ld hl, OBJECT_DIRECTION_WALKING add hl, de ld a, [hl] - and 3 + maskbits NUM_DIRECTIONS +- 1 ld d, 1 * 8 + 6 cp DOWN jr z, .ok_13 @@ -2793,6 +2795,7 @@ Function5903: ; 5903 db SPRITEMOVEDATA_STANDING_LEFT db SPRITEMOVEDATA_STANDING_RIGHT ; 5920 + _UpdateSprites:: ; 5920 ld a, [VramState] bit 0, a @@ -2814,18 +2817,18 @@ _UpdateSprites:: ; 5920 bit 1, a ld b, LOW(SpritesEnd) jr z, .ok - ld b, 28 * 4 + ld b, 28 * SPRITEOAMSTRUCT_LENGTH .ok ld a, [hUsedSpriteIndex] cp b ret nc ld l, a ld h, HIGH(Sprites) - ld de, 4 + ld de, SPRITEOAMSTRUCT_LENGTH ld a, b - ld c, SCREEN_HEIGHT_PX + 16 + ld c, SCREEN_HEIGHT_PX + 2 * TILE_WIDTH .loop - ld [hl], c + ld [hl], c ; y add hl, de cp l jr nz, .loop @@ -3042,12 +3045,12 @@ PRIORITY_HIGH EQU $30 ld a, [hFFC0] add [hl] inc hl - ld [bc], a + ld [bc], a ; y inc c ld a, [hFFBF] add [hl] inc hl - ld [bc], a + ld [bc], a ; x inc c ld e, [hl] inc hl @@ -3058,7 +3061,7 @@ PRIORITY_HIGH EQU $30 .nope1 add [hl] inc hl - ld [bc], a + ld [bc], a ; tile id inc c ld a, e bit 1, a @@ -3068,7 +3071,7 @@ PRIORITY_HIGH EQU $30 .nope2 and %11110000 or d - ld [bc], a + ld [bc], a ; attributes inc c ld a, [hUsedSpriteTile] dec a |