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:
Rangi
2021-03-03 22:22:41 -05:00
parent 9c17fb14c8
commit 40902ffe24
148 changed files with 608 additions and 237 deletions

View File

@@ -1,5 +1,5 @@
BugContestantPointers:
; there are NUM_BUG_CONTESTANTS + 1 entries
table_width 2, BugContestantPointers
dw BugContestant_BugCatcherDon ; this reverts back to the player
dw BugContestant_BugCatcherDon
dw BugContestant_BugCatcherEd
@@ -11,6 +11,7 @@ BugContestantPointers:
dw BugContestant_BugCatcherJosh
dw BugContestant_YoungsterSamuel
dw BugContestant_SchoolboyKipp
assert_table_length NUM_BUG_CONTESTANTS + 1
; contestant format:
; db class, id