ref: 3fc06b0f9da7ef993cb75315c5b2b168a3d6a3cf
parent: 41feb29680da2740a1c7c8c781a6ca535037e12d
author: Remy Oukaour <remy.oukaour@gmail.com>
date: Tue Jan 2 15:35:57 EST 2018
Use constants
--- a/constants/map_data_constants.asm
+++ b/constants/map_data_constants.asm
@@ -102,7 +102,9 @@
const OBJECT_1E ; 1e
const OBJECT_1F ; 1f
const OBJECT_RANGE ; 20
-; 33-39 are not used
+ ; 21-27 are not used
+OBJECT_STRUCT_LENGTH EQU 40
+NUM_OBJECT_STRUCTS EQU 13 ; see ObjectStructs
; map_object struct members (see macros/wram.asm)
const_def
--- a/constants/sprite_anim_constants.asm
+++ b/constants/sprite_anim_constants.asm
@@ -16,6 +16,8 @@
const SPRITEANIMSTRUCT_0D ; d
const SPRITEANIMSTRUCT_0E ; e
const SPRITEANIMSTRUCT_0F ; f
+SPRITEANIMSTRUCT_LENGTH EQU const_value
+NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
; SpriteAnimSeqData indexes (see data/sprite_anims/sequences.asm)
const_def
--- a/constants/wram_constants.asm
+++ b/constants/wram_constants.asm
@@ -116,9 +116,6 @@
PLAYER_SURF EQU 4
PLAYER_SURF_PIKA EQU 8
-OBJECT_STRUCT_LENGTH EQU 40
-NUM_OBJECT_STRUCTS EQU 13
-
; After-Champion Spawn
SPAWN_LANCE EQU 1
SPAWN_RED EQU 2
--- a/engine/sprites.asm
+++ b/engine/sprites.asm
@@ -36,7 +36,7 @@
DoNextFrameForAllSprites: ; 8cf7a
ld hl, wSpriteAnimationStructs
- ld e, 10 ; There are 10 structs here.
+ ld e, NUM_SPRITE_ANIM_STRUCTS
.loop
ld a, [hl]
@@ -53,7 +53,7 @@
jr c, .done
.next
- ld bc, $10
+ ld bc, SPRITEANIMSTRUCT_LENGTH
add hl, bc
dec e
jr nz, .loop
@@ -76,7 +76,7 @@
DoNextFrameForFirst16Sprites: ; 8cfa8 (23:4fa8)
ld hl, wSpriteAnimationStructs
- ld e, 10
+ ld e, NUM_SPRITE_ANIM_STRUCTS
.loop
ld a, [hl]
@@ -93,7 +93,7 @@
jr c, .done
.next
- ld bc, $10
+ ld bc, SPRITEANIMSTRUCT_LENGTH
add hl, bc
dec e
jr nz, .loop
@@ -119,12 +119,12 @@
push de
push af
ld hl, wSpriteAnimationStructs
- ld e, 10
+ ld e, NUM_SPRITE_ANIM_STRUCTS
.loop
ld a, [hl]
and a
jr z, .found
- ld bc, $10
+ ld bc, SPRITEANIMSTRUCT_LENGTH
add hl, bc
dec e
jr nz, .loop
@@ -222,8 +222,8 @@
DeinitializeAllSprites: ; 8d03d (23:503d)
; Clear the index field of every struct in the wSpriteAnimationStructs array.
ld hl, wSpriteAnimationStructs
- ld bc, $10
- ld e, 10
+ ld bc, SPRITEANIMSTRUCT_LENGTH
+ ld e, NUM_SPRITE_ANIM_STRUCTS
xor a
.loop
ld [hl], a
@@ -391,7 +391,7 @@
push bc
ld hl, wSpriteAnimDict
ld b, a
- ld c, 10
+ ld c, NUM_SPRITE_ANIM_STRUCTS
.loop
ld a, [hli]
cp b