You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-04-09 05:44:44 -07:00
Verify data table sizes with table_width and assert_table_length macros
This was discussed in #706 It also uncovered some off-by-one issues with defining some constants. A few structs now use rsreset/_RS to define their offset constants, as discussed in #739
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
SpriteAnimFrameData:
|
||||
; entries correspond to SPRITE_ANIM_FRAMESET_* constants
|
||||
; entries correspond to SPRITE_ANIM_FRAMESET_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 2, SpriteAnimFrameData
|
||||
dw .Frameset_00
|
||||
dw .Frameset_PartyMon
|
||||
dw .Frameset_PartyMonWithMail
|
||||
@@ -66,6 +67,7 @@ SpriteAnimFrameData:
|
||||
dw .Frameset_IntroUnownF
|
||||
dw .Frameset_CelebiLeft
|
||||
dw .Frameset_CelebiRight
|
||||
assert_table_length NUM_SPRITE_ANIM_FRAMESETS
|
||||
|
||||
.Frameset_00:
|
||||
frame SPRITE_ANIM_OAMSET_RED_WALK_1, 32
|
||||
|
@@ -1,5 +1,6 @@
|
||||
SpriteAnimOAMData:
|
||||
; entries correspond to SPRITE_ANIM_OAMSET_* constants
|
||||
; entries correspond to SPRITE_ANIM_OAMSET_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 3, SpriteAnimOAMData
|
||||
; vtile offset, data pointer
|
||||
dbw $00, .OAMData_RedWalk ; SPRITE_ANIM_OAMSET_RED_WALK_1
|
||||
dbw $04, .OAMData_RedWalk ; SPRITE_ANIM_OAMSET_RED_WALK_2
|
||||
@@ -141,6 +142,7 @@ SpriteAnimOAMData:
|
||||
dbw $08, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9
|
||||
dbw $04, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10
|
||||
dbw $00, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11
|
||||
assert_table_length NUM_SPRITE_ANIM_OAMSETS
|
||||
|
||||
.OAMData_1x1_Palette0:
|
||||
db 1
|
||||
|
@@ -1,5 +1,6 @@
|
||||
SpriteAnimSeqData:
|
||||
; entries correspond to SPRITE_ANIM_INDEX_* constants
|
||||
; entries correspond to SPRITE_ANIM_INDEX_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 3, SpriteAnimSeqData
|
||||
; frameset, sequence, tile
|
||||
; SPRITE_ANIM_INDEX_PARTY_MON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_SEQ_PARTY_MON, SPRITE_ANIM_DICT_DEFAULT
|
||||
@@ -91,3 +92,4 @@ SpriteAnimSeqData:
|
||||
db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE_AWAY, SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_INDEX_CELEBI
|
||||
db SPRITE_ANIM_FRAMESET_CELEBI_LEFT, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT
|
||||
assert_table_length NUM_SPRITE_ANIM_INDEXES
|
||||
|
Reference in New Issue
Block a user