ref: 7b20626c7bb90d0bc43c3eb001844d917b2034bf
parent: 48db6daef9741aafaf0ff339c01f9e7920089f8e
author: yenatch <[email protected]>
date: Sun Dec 22 23:39:26 EST 2013
more object struct constants
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -1771,6 +1771,7 @@
OBJECT_SPRITE EQU $2
OBJECT_FLAGS EQU $5
OBJECT_PALETTE EQU $6
+OBJECT_STEP_DURATION EQU $a
OBJECT_FACING EQU $d
OBJECT_STANDING_TILE EQU $e
OBJECT_NEXT_TILE EQU $f
--- a/engine/movement.asm
+++ b/engine/movement.asm
@@ -205,7 +205,7 @@
; 51c1
Movement_step_end: ; 51c1
- call $4769
+ call Function4769
ld hl, $0003
add hl, bc
ld [hl], a
@@ -221,7 +221,7 @@
; 51db
Function51db: ; 51db
- call $4769
+ call Function4769
ld hl, $0003
add hl, bc
ld [hl], a
@@ -241,7 +241,7 @@
; 51fd
Movement_remove_person: ; 51fd
- call $4357
+ call Function4357
ld hl, $d4cd
ld a, [hConnectionStripLength]
cp [hl]
@@ -398,12 +398,12 @@
; 52c9
Movement_hide_emote: ; 52c9
- call $5579
+ call Function5579
jp Function5065
; 52cf
Movement_show_emote: ; 52cf
- call $5547
+ call Function5547
jp Function5065
; 52d5
@@ -412,7 +412,7 @@
; displacement (DecimalParam)
call Function505e
- call $5565
+ call Function5565
jp Function5065
; 52de
@@ -719,21 +719,22 @@
; 5412
Function5412: ; 5412
- call $4690
- call $463f
+ call Function4690
+ call Function463f
ld hl, $000b
add hl, bc
ld [hl], $2
- ld hl, $000e
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
- call $188e
+ call Function188e
jr z, .asm_542d
- call $1875
+
+ call Function1875
jr c, .asm_5430
.asm_542d
- call $5556
+ call Function5556
.asm_5430
ld hl, $d4cf
@@ -740,6 +741,7 @@
ld a, [hConnectionStripLength]
cp [hl]
jr z, .asm_543f
+
ld hl, $0009
add hl, bc
ld [hl], $2
@@ -753,8 +755,8 @@
; 5446
Function5446: ; 5446
- call $4690
- call $463f
+ call Function4690
+ call Function463f
ld hl, $000b
add hl, bc
ld [hl], $4
@@ -776,8 +778,8 @@
Function5468: ; 5468
- call $4690
- call $463f
+ call Function4690
+ call Function463f
ld hl, $000b
add hl, bc
ld [hl], $1
@@ -799,7 +801,7 @@
Function548a: ; 548a
- call $4690
+ call Function4690
ld hl, $001f
add hl, bc
ld [hl], $0
@@ -809,7 +811,7 @@
ld hl, $000b
add hl, bc
ld [hl], $2
- call $5529
+ call Function5529
ld hl, $d4cf
ld a, [hConnectionStripLength]
cp [hl]
--- a/main.asm
+++ b/main.asm
@@ -296,7 +296,7 @@
; 44a3
Function44a3: ; 44a3
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $ff
ret
@@ -305,7 +305,7 @@
Function44aa: ; 44aa
call GetSpriteDirection
or $0
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -312,7 +312,7 @@
; 44b5
Function44b5: ; 44b5
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
and $1
@@ -338,7 +338,7 @@
call GetSpriteDirection
or $0
or d
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -362,7 +362,7 @@
call GetSpriteDirection
or $0
or d
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -385,7 +385,7 @@
call GetSpriteDirection
or $0
or d
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -397,7 +397,7 @@
add hl, bc
ld a, [hl]
or $0
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -450,7 +450,7 @@
rrca
rrca
add $10
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -457,7 +457,7 @@
; 457b
Function457b: ; 457b
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $15
ret
@@ -464,7 +464,7 @@
; 4582
Function4582: ; 4582
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $14
ret
@@ -471,7 +471,7 @@
; 4589
Function4589: ; 4589
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $17
ret
@@ -486,7 +486,7 @@
ld [hl], a
and $8
jr z, Function45a4
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $4
ret
@@ -493,7 +493,7 @@
; 45a4
Function45a4: ; 45a4
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $0
ret
@@ -509,7 +509,7 @@
rrca
rrca
add $18
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
@@ -516,7 +516,7 @@
; 45be
Function45be: ; 45be
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $16
ret
@@ -532,7 +532,7 @@
ld d, $16
.asm_45d4
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], d
ret
@@ -543,13 +543,13 @@
add hl, bc
inc [hl]
ld a, [hl]
- ld hl, $000d
+
+ ld hl, OBJECT_FACING
add hl, bc
- and $2
+ and 2
ld a, $1c
jr z, .asm_45eb
inc a
-
.asm_45eb
ld [hl], a
ret
@@ -560,9 +560,9 @@
add hl, bc
inc [hl]
ld a, [hl]
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
- and $4
+ and 4
ld a, $1e
jr z, .asm_45fe
inc a
@@ -573,50 +573,58 @@
; 4600
Function4600: ; 4600
- ld hl, $0010
+
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
- ld hl, $0012
+ ld hl, OBJECT_NEXT_MAP_X
add hl, bc
ld [hl], a
- ld hl, $0011
+
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld a, [hl]
- ld hl, $0013
+ ld hl, OBJECT_NEXT_MAP_Y
add hl, bc
ld [hl], a
- ld hl, $000e
+
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
- ld hl, $000f
+ ld hl, OBJECT_NEXT_TILE
add hl, bc
ld [hl], a
+
call Function4661
- ld hl, $000e
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
+
call Function4679
ret
; 462a
Function462a: ; 462a
- ld hl, $0012
+
+ ld hl, OBJECT_NEXT_MAP_X
add hl, bc
ld a, [hl]
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld [hl], a
- ld hl, $0013
+
+ ld hl, OBJECT_NEXT_MAP_Y
add hl, bc
ld a, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld [hl], a
+
ret
; 463f
Function463f: ; 463f
- ld hl, $0005
+ ld hl, OBJECT_FLAGS
add hl, bc
bit 3, [hl]
jr z, .asm_464f
@@ -700,53 +708,65 @@
; 46a6
Function46a6: ; 46a6
- call Function46e9
- ld hl, $000a
+
+ call GetStepVector
+
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
+
ld a, d
call Function4730
- ld hl, $0012
+ ld hl, OBJECT_NEXT_MAP_X
add hl, bc
add [hl]
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld [hl], a
ld d, a
+
ld a, e
call Function4730
- ld hl, $0013
+ ld hl, OBJECT_NEXT_MAP_Y
add hl, bc
add [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld [hl], a
ld e, a
+
push bc
call Function2a3c
pop bc
+
ld hl, $000e
add hl, bc
ld [hl], a
+
ret
; 46d7
Function46d7: ; 46d7
- call Function46e9
- ld hl, $0017
+
+ call GetStepVector
+
+ ld hl, OBJECT_SPRITE_X
add hl, bc
ld a, [hl]
add d
ld [hl], a
- ld hl, $0018
+
+ ld hl, OBJECT_SPRITE_Y
add hl, bc
ld a, [hl]
add e
ld [hl], a
+
ret
; 46e9
-Function46e9: ; 46e9
+GetStepVector: ; 46e9
+; Return (x, y, duration, speed) in (d, e, a, h).
ld hl, $0007
add hl, bc
ld a, [hl]
@@ -767,22 +787,22 @@
; 4700
StepVectors: ; 4700
- ; x, y, duration, speed
+; x, y, duration, speed
; slow
- db 0, 1, $10, $01
- db 0, -1, $10, $01
- db -1, 0, $10, $01
- db 1, 0, $10, $01
+ db 0, 1, 16, 1
+ db 0, -1, 16, 1
+ db -1, 0, 16, 1
+ db 1, 0, 16, 1
; normal
- db 0, 2, $08, $02
- db 0, -2, $08, $02
- db -2, 0, $08, $02
- db 2, 0, $08, $02
+ db 0, 2, 8, 2
+ db 0, -2, 8, 2
+ db -2, 0, 8, 2
+ db 2, 0, 8, 2
; fast
- db 0, 4, $04, $04
- db 0, -4, $04, $04
- db -4, 0, $04, $04
- db 4, 0, $04, $04
+ db 0, 4, 4, 4
+ db 0, -4, 4, 4
+ db -4, 0, 4, 4
+ db 4, 0, 4, 4
; 4730
Function4730: ; 4730
@@ -1260,7 +1280,7 @@
add hl, bc
ld a, [hl]
ld a, $10
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
ld hl, $0009
@@ -1313,13 +1333,13 @@
ld hl, $000b
add hl, bc
ld [hl], $7
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, de
ld a, [hl]
inc a
add a
add $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
ld hl, $0007
@@ -1334,10 +1354,10 @@
ld d, $c
.asm_4a0f
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], d
- ld hl, $0019
+ ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
ld [hl], $0
ld hl, $0009
@@ -1352,13 +1372,13 @@
ld hl, $000b
add hl, bc
ld [hl], $8
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $0
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $f0
- ld hl, $0019
+ ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
ld [hl], $0
ld hl, $0009
@@ -1373,12 +1393,12 @@
ld hl, $000b
add hl, bc
ld [hl], $e
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, de
ld a, [hl]
inc a
add a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
ld hl, $0007
@@ -1393,10 +1413,10 @@
ld d, [hl]
inc hl
ld e, [hl]
- ld hl, $0019
+ ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
ld [hl], d
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], e
ld hl, $0009
@@ -1419,11 +1439,11 @@
ld hl, $000b
add hl, bc
ld [hl], $f
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, de
ld a, [hl]
add $ff
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
ld hl, $0009
@@ -1458,7 +1478,7 @@
add hl, bc
ld a, [hl]
call Function4ade
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], e
ld hl, $001e
@@ -1532,7 +1552,7 @@
; 4b2d
Function4b2d: ; 4b2d
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
ld hl, $0007
@@ -1577,7 +1597,7 @@
; 4b79
Function4b79: ; 4b79
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1596,7 +1616,7 @@
Function4b8d: ; 4b8d
call Function46d7
call UpdateJumpPosition
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1612,7 +1632,7 @@
Function4ba9: ; 4ba9
call Function46d7
call UpdateJumpPosition
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1641,7 +1661,7 @@
Function4bd2: ; 4bd2
call UpdateJumpPosition
call Function4738
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1667,7 +1687,7 @@
Function4bfd: ; 4bfd
call UpdateJumpPosition
call Function4738
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1692,7 +1712,7 @@
ld hl, $000c
add hl, bc
ld [hl], $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1703,7 +1723,7 @@
ld hl, $000b
add hl, bc
ld [hl], $4
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1718,7 +1738,7 @@
ld hl, $001f
add hl, bc
ld [hl], $10
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
ld hl, $0005
@@ -1740,10 +1760,10 @@
call Sine
ld a, h
sub $60
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1771,7 +1791,7 @@
ld hl, $000b
add hl, bc
ld [hl], $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1779,7 +1799,7 @@
; 4caa
Function4caa: ; 4caa
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1794,7 +1814,7 @@
ld hl, $001f
add hl, bc
ld [hl], $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1813,10 +1833,10 @@
call Sine
ld a, h
sub $60
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1825,7 +1845,7 @@
; 4ceb
Function4ceb: ; 4ceb
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1836,7 +1856,7 @@
ld hl, $000b
add hl, bc
ld [hl], $4
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1846,7 +1866,7 @@
ld hl, $000c
add hl, bc
ld [hl], $0
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $0
ld hl, $0009
@@ -1867,7 +1887,7 @@
ld hl, $000b
add hl, bc
ld [hl], $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1875,7 +1895,7 @@
; 4d2e
Function4d2e: ; 4d2e
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1888,7 +1908,7 @@
ld hl, $001f
add hl, bc
ld [hl], $0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -1904,10 +1924,10 @@
call Sine
ld a, h
sub $60
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -1919,7 +1939,7 @@
ld hl, $000c
add hl, bc
ld [hl], $0
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $0
ld hl, $0009
@@ -1935,10 +1955,10 @@
; 4d85
Function4d85: ; 4d85
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $8
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $0
call Function47a2
@@ -1946,16 +1966,16 @@
; 4d94
Function4d94: ; 4d94
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld a, [hl]
xor 1
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $0
ld hl, $0009
@@ -1970,7 +1990,7 @@
; 4db5
Function4db5: ; 4db5
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
and $1
@@ -1986,7 +2006,7 @@
; 4dc8
Function4dc8: ; 4dc8
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
and $1
@@ -2005,7 +2025,7 @@
ld hl, $0007
add hl, bc
ld [hl], $ff
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2019,7 +2039,7 @@
ld hl, $0007
add hl, bc
ld [hl], $ff
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2027,7 +2047,7 @@
; 4dff
Function4dff: ; 4dff
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2064,7 +2084,7 @@
Function4e2b: ; 4e2b
call Function4fb2
call Function46d7
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2080,7 +2100,7 @@
Function4e47: ; 4e47
call Function46d7
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2104,7 +2124,7 @@
Function4e65: ; 4e65
call Function4738
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2136,7 +2156,7 @@
add hl, bc
ld a, [hl]
ld [hl], $2
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $2
call Function47a2
@@ -2144,7 +2164,7 @@
; 4ea4
Function4ea4: ; 4ea4
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2159,7 +2179,7 @@
ld hl, $0008
add hl, bc
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $2
call Function47a2
@@ -2167,7 +2187,7 @@
; 4ec0
Function4ec0: ; 4ec0
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2179,7 +2199,7 @@
Function4ecd: ; 4ecd
call Function46d7
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
@@ -2220,19 +2240,19 @@
ld a, [hl]
and a
jr z, .asm_4f30
- ld hl, $0017
+ ld hl, OBJECT_SPRITE_X
add hl, de
ld a, [hl]
- ld hl, $0017
+ ld hl, OBJECT_SPRITE_X
add hl, bc
ld [hl], a
- ld hl, $0018
+ ld hl, OBJECT_SPRITE_Y
add hl, de
ld a, [hl]
- ld hl, $0018
+ ld hl, OBJECT_SPRITE_Y
add hl, bc
ld [hl], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
and a
@@ -2266,7 +2286,7 @@
ld a, [$d14f]
sub d
ld [$d14f], a
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
jr z, .asm_4f68
@@ -2318,7 +2338,7 @@
ld hl, $000b
add hl, bc
ld [hl], $10
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
call Function47a2
@@ -2325,11 +2345,11 @@
; 4f99
Function4f99: ; 4f99
- ld hl, $000a
+ ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $60
ld hl, $000c
@@ -2358,7 +2378,7 @@
ld de, .y
add hl, de
ld a, [hl]
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], a
ret
@@ -2369,7 +2389,7 @@
; 4fd5
UpdateJumpPosition: ; 4fd5
- call Function46e9
+ call GetStepVector
ld a, h
ld hl, $001f
add hl, bc
@@ -2382,7 +2402,7 @@
ld hl, .y
add hl, de
ld a, [hl]
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], a
ret
@@ -2834,7 +2854,7 @@
; 5680
Function5680: ; 5680
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], $ff
scf
@@ -2896,10 +2916,10 @@
Function56cd: ; 56cd
ld a, [$d14c]
ld d, a
- ld hl, $0019
+ ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
ld a, [hl]
- ld hl, $0017
+ ld hl, OBJECT_SPRITE_X
add hl, bc
add [hl]
add d
@@ -2928,10 +2948,10 @@
ld [$ffbd], a
ld a, [$d14d]
ld e, a
- ld hl, $001a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld a, [hl]
- ld hl, $0018
+ ld hl, OBJECT_SPRITE_Y
add hl, bc
add [hl]
add e
@@ -3375,16 +3395,19 @@
ld e, a
ld bc, $d4d6
ld a, $d
+
.asm_5968
push af
call Function1af1
jr z, .asm_597c
- ld hl, $0017
+
+ ld hl, OBJECT_SPRITE_X
add hl, bc
ld a, [hl]
add d
ld [hl], a
- ld hl, $0018
+
+ ld hl, OBJECT_SPRITE_Y
add hl, bc
ld a, [hl]
add e
@@ -3398,6 +3421,7 @@
pop af
dec a
jr nz, .asm_5968
+
xor a
ld [$d14c], a
ld [$d14d], a
@@ -3423,41 +3447,42 @@
ld hl, $c2eb
ld bc, 13
call ByteFill
+
ld d, 0
ld bc, ObjectStructs
ld hl, $c2eb
-.asm_59b6
+.loop
push hl
call Function1af1
- jr z, .asm_59d9
+ jr z, .skip
ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
cp -1
- jr z, .asm_59d9
+ jr z, .skip
; Define the sprite priority.
ld e, $10
- ld hl, $0005
+ ld hl, OBJECT_FLAGS
add hl, bc
bit 0, [hl]
- jr nz, .asm_59e2
+ jr nz, .add
ld e, $20
bit 1, [hl]
- jr z, .asm_59e2
+ jr z, .add
ld e, $30
- jr .asm_59e2
+ jr .add
-.asm_59d9
+.skip
ld hl, ObjectStruct2 - ObjectStruct1
add hl, bc
ld b, h
ld c, l
pop hl
- jr .asm_59ec
+ jr .next
-.asm_59e2
+.add
ld hl, ObjectStruct2 - ObjectStruct1
add hl, bc
ld b, h
@@ -3467,11 +3492,11 @@
or e
ld [hli], a
-.asm_59ec
+.next
inc d
ld a, d
cp $d
- jr nz, .asm_59b6
+ jr nz, .loop
ret
; 59f3
@@ -3509,7 +3534,7 @@
or 8
.asm_5a1d
- ld hl, $0005
+ ld hl, OBJECT_FLAGS
add hl, bc
ld e, [hl]
bit 7, e
@@ -32292,7 +32317,7 @@
push bc
ld hl, $0001
add hl, bc
- ld bc, $001a
+ ld bc, OBJECT_SPRITE_Y_OFFSET
call CopyBytes
pop bc
ld hl, $001f