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:
@@ -143,7 +143,7 @@ PlayCry::
|
||||
ld [MBC3RomBank], a
|
||||
|
||||
ld hl, PokemonCries
|
||||
rept 6 ; sizeof(mon_cry)
|
||||
rept MON_CRY_LENGTH
|
||||
add hl, de
|
||||
endr
|
||||
|
||||
|
@@ -49,6 +49,7 @@ GetBattleVarAddr::
|
||||
|
||||
BattleVarPairs:
|
||||
; entries correspond to BATTLE_VARS_* constants
|
||||
table_width 2, BattleVarPairs
|
||||
dw .Substatus1
|
||||
dw .Substatus2
|
||||
dw .Substatus3
|
||||
@@ -70,6 +71,7 @@ BattleVarPairs:
|
||||
dw .LastCounterOpp
|
||||
dw .LastMove
|
||||
dw .LastMoveOpp
|
||||
assert_table_length NUM_BATTLE_VARS
|
||||
|
||||
; player enemy
|
||||
.Substatus1: db PLAYER_SUBSTATUS_1, ENEMY_SUBSTATUS_1
|
||||
@@ -96,6 +98,7 @@ BattleVarPairs:
|
||||
|
||||
BattleVarLocations:
|
||||
; entries correspond to PLAYER_* and ENEMY_* constants
|
||||
table_width 2 + 2, BattleVarLocations
|
||||
dw wPlayerSubStatus1, wEnemySubStatus1
|
||||
dw wPlayerSubStatus2, wEnemySubStatus2
|
||||
dw wPlayerSubStatus3, wEnemySubStatus3
|
||||
@@ -109,3 +112,4 @@ BattleVarLocations:
|
||||
dw wCurPlayerMove, wCurEnemyMove
|
||||
dw wLastPlayerCounterMove, wLastEnemyCounterMove
|
||||
dw wLastPlayerMove, wLastEnemyMove
|
||||
assert_table_length NUM_BATTLE_VAR_LOCATION_PAIRS
|
||||
|
@@ -2285,12 +2285,12 @@ LoadMapTileset::
|
||||
push bc
|
||||
|
||||
ld hl, Tilesets
|
||||
ld bc, wTilesetEnd - wTileset
|
||||
ld bc, TILESET_LENGTH
|
||||
ld a, [wMapTileset]
|
||||
call AddNTimes
|
||||
|
||||
ld de, wTilesetBank
|
||||
ld bc, wTilesetEnd - wTileset
|
||||
ld bc, TILESET_LENGTH
|
||||
|
||||
ld a, BANK(Tilesets)
|
||||
call FarCopyBytes
|
||||
|
@@ -166,7 +166,7 @@ LoadCry::
|
||||
rst Bankswitch
|
||||
|
||||
ld hl, PokemonCries
|
||||
rept 6 ; sizeof(mon_cry)
|
||||
rept MON_CRY_LENGTH
|
||||
add hl, bc
|
||||
endr
|
||||
|
||||
|
Reference in New Issue
Block a user