diff options
Diffstat (limited to 'macros')
-rw-r--r-- | macros/asserts.asm | 20 | ||||
-rw-r--r-- | macros/scripts/battle_commands.asm | 1 |
2 files changed, 21 insertions, 0 deletions
diff --git a/macros/asserts.asm b/macros/asserts.asm new file mode 100644 index 000000000..e045e2f56 --- /dev/null +++ b/macros/asserts.asm @@ -0,0 +1,20 @@ +; Macros to verify assumptions about the data or code + +table_width: MACRO +CURRENT_TABLE_WIDTH = \1 +if DEF(CURRENT_TABLE_START) +PURGE CURRENT_TABLE_START +endc +if _NARG == 2 +CURRENT_TABLE_START EQUS "\2" +else +CURRENT_TABLE_START EQUS "._table_width\@" +CURRENT_TABLE_START: +endc +ENDM + +assert_table_length: MACRO +x = \1 + assert x * CURRENT_TABLE_WIDTH == @ - CURRENT_TABLE_START, \ + "{CURRENT_TABLE_START}: expected {d:x} entries, each {d:CURRENT_TABLE_WIDTH} bytes" +ENDM diff --git a/macros/scripts/battle_commands.asm b/macros/scripts/battle_commands.asm index ad4480199..3e5046154 100644 --- a/macros/scripts/battle_commands.asm +++ b/macros/scripts/battle_commands.asm @@ -180,6 +180,7 @@ ENDM command supereffectivelooptext ; ad command startloop ; ae command curl ; af +NUM_EFFECT_COMMANDS EQU const_value - 1 const_def -1, -1 command endmove ; ff |