diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2021-03-03 22:22:41 -0500 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2021-03-05 16:10:25 -0500 |
commit | 5454e1e0deefc6b4fc8c4de0e63314052fceebc0 (patch) | |
tree | 565805b252fa596aab3f80b3128ebc91b1fae540 /engine/gfx | |
parent | b423e94be700cc6434465cf1dcccf0b677489192 (diff) |
Verify data table sizes with table_width and assert_table_length macros
It also uncovered some off-by-one issues with defining some constants.
A few structs now use rsreset/_RS to define their offset constants.
Diffstat (limited to 'engine/gfx')
-rw-r--r-- | engine/gfx/color.asm | 2 | ||||
-rw-r--r-- | engine/gfx/load_pics.asm | 2 | ||||
-rw-r--r-- | engine/gfx/sprite_anims.asm | 4 |
3 files changed, 6 insertions, 2 deletions
diff --git a/engine/gfx/color.asm b/engine/gfx/color.asm index d319ab0d..47f5dbf5 100644 --- a/engine/gfx/color.asm +++ b/engine/gfx/color.asm @@ -1215,7 +1215,9 @@ MapObjectPals:: INCLUDE "gfx/overworld/npc_sprites.pal" RoofPals: + table_width PAL_COLOR_SIZE * 2 * 2, RoofPals INCLUDE "gfx/tilesets/roofs.pal" + assert_table_length NUM_MAP_GROUPS + 1 DiplomaPalettes: INCLUDE "gfx/diploma/diploma.pal" diff --git a/engine/gfx/load_pics.asm b/engine/gfx/load_pics.asm index ad9c1f14..23d75e68 100644 --- a/engine/gfx/load_pics.asm +++ b/engine/gfx/load_pics.asm @@ -238,7 +238,7 @@ GetTrainerPic: ld a, [wTrainerClass] and a ret z - cp NUM_TRAINER_CLASSES + cp NUM_TRAINER_CLASSES + 1 ret nc ld a, 0 call WaitBGMap diff --git a/engine/gfx/sprite_anims.asm b/engine/gfx/sprite_anims.asm index 58622521..b0e5b91a 100644 --- a/engine/gfx/sprite_anims.asm +++ b/engine/gfx/sprite_anims.asm @@ -12,7 +12,8 @@ DoAnimFrame: jp hl .Jumptable: -; entries correspond to SPRITE_ANIM_SEQ_* constants +; entries correspond to SPRITE_ANIM_SEQ_* constants (see constants/sprite_anim_constants.asm) + table_width 2, DoAnimFrame.Jumptable dw AnimSeq_Null dw AnimSeq_PartyMon dw AnimSeq_PartyMonSwitch @@ -55,6 +56,7 @@ DoAnimFrame: dw AnimSeq_FlyLeaf dw AnimSeq_FlyTo dw AnimSeq_GSIntroHoOhLugia + assert_table_length NUM_SPRITE_ANIM_SEQS AnimSeq_Null: ret |