shithub: pokecrystal

Download patch

ref: 3fc06b0f9da7ef993cb75315c5b2b168a3d6a3cf
parent: 41feb29680da2740a1c7c8c781a6ca535037e12d
author: Remy Oukaour <[email protected]>
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