summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorRemy Oukaour <remy.oukaour@gmail.com>2018-01-10 00:08:05 -0500
committerRemy Oukaour <remy.oukaour@gmail.com>2018-01-10 00:08:05 -0500
commit8aa58dca9e18ba6e420cc55050955e9606409633 (patch)
tree739c9ce03170dec78660f87e596e8f21fa38a627 /data
parent9af6d8d0f1cdfe13d5b6b028b7da2965fddaab67 (diff)
Specialized macros go with their data/code
Diffstat (limited to 'data')
-rw-r--r--data/pokemon/base_stats.asm33
1 files changed, 33 insertions, 0 deletions
diff --git a/data/pokemon/base_stats.asm b/data/pokemon/base_stats.asm
index 8a6435a40..27f9174e5 100644
--- a/data/pokemon/base_stats.asm
+++ b/data/pokemon/base_stats.asm
@@ -1,3 +1,36 @@
+tmhm: MACRO
+; used in data/pokemon/base_stats/*.asm
+tms1 = 0 ; TM01-TM24 (24)
+tms2 = 0 ; TM25-TM48 (24)
+tms3 = 0 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/24)
+rept _NARG
+ if DEF(\1_TMNUM)
+ if \1_TMNUM < 24 + 1
+tms1 = tms1 | (1 << ((\1_TMNUM) - 1))
+ elif \1_TMNUM < 48 + 1
+tms2 = tms2 | (1 << ((\1_TMNUM) - 1 - 24))
+ else
+tms3 = tms3 | (1 << ((\1_TMNUM) - 1 - 48))
+ endc
+ else
+ fail "\1 is not a TM, HM, or move tutor move"
+ endc
+ shift
+endr
+rept 3 ; TM01-TM24 (24/24)
+ db tms1 & $ff
+tms1 = tms1 >> 8
+endr
+rept 3 ; TM25-TM48 (24/24)
+ db tms2 & $ff
+tms2 = tms2 >> 8
+endr
+rept 2 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/16)
+ db tms3 & $ff
+tms3 = tms3 >> 8
+endr
+ENDM
+
BaseData::
INCLUDE "data/pokemon/base_stats/bulbasaur.asm"
INCLUDE "data/pokemon/base_stats/ivysaur.asm"