diff options
Diffstat (limited to 'macros')
-rwxr-xr-x | macros/data.asm | 23 | ||||
-rw-r--r-- | macros/move_anim.asm | 293 | ||||
-rwxr-xr-x | macros/pals.asm | 8 | ||||
-rw-r--r-- | macros/pic.asm | 4 | ||||
-rw-r--r-- | macros/scripts/battle_anims.asm | 302 |
5 files changed, 325 insertions, 305 deletions
diff --git a/macros/data.asm b/macros/data.asm index 932525eb..938a6cb3 100755 --- a/macros/data.asm +++ b/macros/data.asm @@ -1,7 +1,30 @@ ; Value macros +; Many arbitrary percentages are simple base-10 or base-16 values: +; - 10 = 4 percent +; - 15 = 6 percent +; - $10 = 6 percent + 1 = 7 percent - 1 +; - 20 = 8 percent +; - 25 = 10 percent +; - 30 = 12 percent +; - 40 = 16 percent +; - 50 = 20 percent - 1 +; - 60 = 24 percent - 1 +; - 70 = 28 percent - 1 +; - 80 = 31 percent + 1 = 32 percent - 1 +; - 85 = 33 percent + 1 = 34 percent - 1 +; - 100 = 39 percent + 1 = 40 percent - 2 +; - 120 = 47 percent + 1 +; - 123 = 49 percent - 1 +; - 160 = 63 percent +; - 180 = 71 percent - 1 = 70 percent + 2 +; - 200 = 79 percent - 1 +; - 230 = 90 percent + 1 percent EQUS "* $ff / 100" +; e.g. 1 out_of 2 == 50 percent + 1 == $80 +out_of EQUS "* $100 /" + ; Constant data (db, dw, dl) macros dwb: MACRO diff --git a/macros/move_anim.asm b/macros/move_anim.asm deleted file mode 100644 index 8df511b2..00000000 --- a/macros/move_anim.asm +++ /dev/null @@ -1,293 +0,0 @@ -anim_wait: macro -if \1 >= $d0 - flip out -endc - db \1 - endm - - enum_start $d0 - - enum anim_obj_command ; d0 -anim_obj: macro - db anim_obj_command - db \1 ; object - db \2 ; x - db \3 ; y - db \4 ; param - endm - - enum anim_1gfx_command ; d1 -anim_1gfx: macro - db anim_1gfx_command - db \1 ; gfx1 - endm - - enum anim_2gfx_command ; d2 -anim_2gfx: macro - db anim_2gfx_command - db \1 ; gfx1 - db \2 ; gfx2 - endm - - enum anim_3gfx_command ; d3 -anim_3gfx: macro - db anim_3gfx_command - db \1 ; gfx1 - db \2 ; gfx2 - db \3 ; gfx3 - endm - - enum anim_4gfx_command ; d4 -anim_4gfx: macro - db anim_4gfx_command - db \1 ; gfx1 - db \2 ; gfx2 - db \3 ; gfx3 - db \4 ; gfx4 - endm - - enum anim_5gfx_command ; d5 -anim_5gfx: macro - db anim_5gfx_command - db \1 ; gfx1 - db \2 ; gfx2 - db \3 ; gfx3 - db \4 ; gfx4 - db \5 ; gfx5 - endm - - enum anim_incobj_command ; d6 -anim_incobj: macro - db anim_incobj_command - db \1 ; id - endm - - enum anim_setobj_command ; d7 -anim_setobj: macro - db anim_setobj_command - db \1 ; id - db \2 ; obj - endm - - enum anim_incbgeffect_command ; d8 -anim_incbgeffect: macro - db anim_incbgeffect_command - db \1 ; effect - endm - - enum anim_battlergfx_2row_command ; d9 -anim_battlergfx_2row: macro - db anim_battlergfx_2row_command - endm - - enum anim_battlergfx_1row_command ; da -anim_battlergfx_1row: macro - db anim_battlergfx_1row_command - endm - - enum anim_checkpokeball_command ; db -anim_checkpokeball: macro - db anim_checkpokeball_command - endm - - enum anim_transform_command ; dc -anim_transform: macro - db anim_transform_command - endm - - enum anim_raisesub_command ; dd -anim_raisesub: macro - db anim_raisesub_command - endm - - enum anim_dropsub_command ; de -anim_dropsub: macro - db anim_dropsub_command - endm - - enum anim_resetobp0_command ; df -anim_resetobp0: macro - db anim_resetobp0_command - endm - - enum anim_sound_command ; e0 -anim_sound: macro - db anim_sound_command - db (\1 << 2) | \2 ; duration, tracks - db \3 ; id - endm - - enum anim_cry_command ; e1 -anim_cry: macro - db anim_cry_command - db \1 ; pitch - endm - - enum anim_minimizeopp_command ; e2 -anim_minimizeopp: macro - db anim_minimizeopp_command - endm - - enum anim_oamon_command ; e3 -anim_oamon: macro - db anim_oamon_command - endm - - enum anim_oamoff_command ; e4 -anim_oamoff: macro - db anim_oamoff_command - endm - - enum anim_clearobjs_command ; e5 -anim_clearobjs: macro - db anim_clearobjs_command - endm - - enum anim_beatup_command ; e6 -anim_beatup: macro - db anim_beatup_command - endm - - enum anim_0xe7_command ; e7 -anim_0xe7: macro - db anim_0xe7_command - endm - - enum anim_updateactorpic_command ; e8 -anim_updateactorpic: macro - db anim_updateactorpic_command - endm - - enum anim_minimize_command ; e9 -anim_minimize: macro - db anim_minimize_command - endm - - enum anim_0xea_command ; ea -anim_0xea: macro - db anim_0xea_command - endm - - enum anim_0xeb_command ; eb -anim_0xeb: macro - db anim_0xeb_command - endm - - enum anim_0xec_command ; ec -anim_0xec: macro - db anim_0xec_command - endm - - enum anim_0xed_command ; ed -anim_0xed: macro - db anim_0xed_command - endm - - enum anim_if_param_and_command ; ee -anim_if_param_and: macro - db anim_if_param_and_command - db \1 ; value - dw \2 ; address - endm - - enum anim_jumpuntil_command ; ef -anim_jumpuntil: macro - db anim_jumpuntil_command - dw \1 ; address - endm - - enum anim_bgeffect_command ; f0 -anim_bgeffect: macro - db anim_bgeffect_command - db \1 ; effect - db \2 ; unknown - db \3 ; unknown - db \4 ; unknown - endm - - enum anim_bgp_command ; f1 -anim_bgp: macro - db anim_bgp_command - db \1 ; colors - endm - - enum anim_obp0_command ; f2 -anim_obp0: macro - db anim_obp0_command - db \1 ; colors - endm - - enum anim_obp1_command ; f3 -anim_obp1: macro - db anim_obp1_command - db \1 ; colors - endm - - enum anim_keepsprites_command ; f4 -anim_keepsprites: macro - db anim_keepsprites_command - endm - - enum anim_0xf5_command ; f5 -anim_0xf5: macro - db anim_0xf5_command - endm - - enum anim_0xf6_command ; f6 -anim_0xf6: macro - db anim_0xf6_command - endm - - enum anim_0xf7_command ; f7 -anim_0xf7: macro - db anim_0xf7_command - endm - - enum anim_if_param_equal_command ; f8 -anim_if_param_equal: macro - db anim_if_param_equal_command - db \1 ; value - dw \2 ; address - endm - - enum anim_setvar_command ; f9 -anim_setvar: macro - db anim_setvar_command - db \1 ; value - endm - - enum anim_incvar_command ; fa -anim_incvar: macro - db anim_incvar_command - endm - - enum anim_if_var_equal_command ; fb -anim_if_var_equal: macro - db anim_if_var_equal_command - db \1 ; value - dw \2 ; address - endm - - enum anim_jump_command ; fc -anim_jump: macro - db anim_jump_command - dw \1 ; address - endm - - enum anim_loop_command ; fd -anim_loop: macro - db anim_loop_command - db \1 ; count - dw \2 ; address - endm - - enum anim_call_command ; fe -anim_call: macro - db anim_call_command - dw \1 ; address - endm - - enum anim_ret_command ; ff -anim_ret: macro - db anim_ret_command - endm diff --git a/macros/pals.asm b/macros/pals.asm deleted file mode 100755 index d45dae3f..00000000 --- a/macros/pals.asm +++ /dev/null @@ -1,8 +0,0 @@ -tilepal: MACRO -; pals -rept _NARG / 2 - dn PAL_BG_\2, PAL_BG_\1 - shift - shift -endr -endm diff --git a/macros/pic.asm b/macros/pic.asm deleted file mode 100644 index a01ce7a3..00000000 --- a/macros/pic.asm +++ /dev/null @@ -1,4 +0,0 @@ -add_pic: MACRO - db BANK(\1) - $36 - dw \1 -ENDM diff --git a/macros/scripts/battle_anims.asm b/macros/scripts/battle_anims.asm new file mode 100644 index 00000000..adb48e4a --- /dev/null +++ b/macros/scripts/battle_anims.asm @@ -0,0 +1,302 @@ +anim_wait: MACRO +if \1 >= $d0 + fail "anim_wait argument must be less than $d0." +endc + db \1 +ENDM + +; BattleAnimCommands indexes (see engine/battle_anims/anim_commands.asm) + enum_start $d0 + + enum anim_obj_command ; $d0 +anim_obj: MACRO + db anim_obj_command +if _NARG <= 4 + db \1 ; object + db \2 ; x + db \3 ; y + db \4 ; param +else +; LEGACY: Support the tile+offset format + db \1 ; object + db (\2) * 8 + (\3) ; x_tile, x + db (\4) * 8 + (\5) ; y_tile, y + db \6 ; param +endc +ENDM + + enum anim_1gfx_command ; $d1 +anim_1gfx: MACRO + db anim_1gfx_command + db \1 ; gfx1 +ENDM + + enum anim_2gfx_command ; $d2 +anim_2gfx: MACRO + db anim_2gfx_command + db \1 ; gfx1 + db \2 ; gfx2 +ENDM + + enum anim_3gfx_command ; $d3 +anim_3gfx: MACRO + db anim_3gfx_command + db \1 ; gfx1 + db \2 ; gfx2 + db \3 ; gfx3 +ENDM + + enum anim_4gfx_command ; $d4 +anim_4gfx: MACRO + db anim_4gfx_command + db \1 ; gfx1 + db \2 ; gfx2 + db \3 ; gfx3 + db \4 ; gfx4 +ENDM + + enum anim_5gfx_command ; $d5 +anim_5gfx: MACRO + db anim_5gfx_command + db \1 ; gfx1 + db \2 ; gfx2 + db \3 ; gfx3 + db \4 ; gfx4 + db \5 ; gfx5 +ENDM + + enum anim_incobj_command ; $d6 +anim_incobj: MACRO + db anim_incobj_command + db \1 ; object_id +ENDM + + enum anim_setobj_command ; $d7 +anim_setobj: MACRO + db anim_setobj_command + db \1 ; object_id + db \2 ; value +ENDM + + enum anim_incbgeffect_command ; $d8 +anim_incbgeffect: MACRO + db anim_incbgeffect_command + db \1 ; effect +ENDM + + enum anim_battlergfx_2row_command ; $d9 +anim_battlergfx_2row: MACRO + db anim_battlergfx_2row_command +ENDM + + enum anim_battlergfx_1row_command ; $da +anim_battlergfx_1row: MACRO + db anim_battlergfx_1row_command +ENDM + + enum anim_checkpokeball_command ; $db +anim_checkpokeball: MACRO + db anim_checkpokeball_command +ENDM + + enum anim_transform_command ; $dc +anim_transform: MACRO + db anim_transform_command +ENDM + + enum anim_raisesub_command ; $dd +anim_raisesub: MACRO + db anim_raisesub_command +ENDM + + enum anim_dropsub_command ; $de +anim_dropsub: MACRO + db anim_dropsub_command +ENDM + + enum anim_resetobp0_command ; $df +anim_resetobp0: MACRO + db anim_resetobp0_command +ENDM + + enum anim_sound_command ; $e0 +anim_sound: MACRO + db anim_sound_command + db (\1 << 2) | \2 ; duration, tracks + db \3 ; sound_id +ENDM + + enum anim_cry_command ; $e1 +anim_cry: MACRO + db anim_cry_command + db \1 ; pitch +ENDM + + enum anim_minimizeopp_command ; $e2 +anim_minimizeopp: MACRO + db anim_minimizeopp_command +ENDM + + enum anim_oamon_command ; $e3 +anim_oamon: MACRO + db anim_oamon_command +ENDM + + enum anim_oamoff_command ; $e4 +anim_oamoff: MACRO + db anim_oamoff_command +ENDM + + enum anim_clearobjs_command ; $e5 +anim_clearobjs: MACRO + db anim_clearobjs_command +ENDM + + enum anim_beatup_command ; $e6 +anim_beatup: MACRO + db anim_beatup_command +ENDM + + enum anim_0xe7_command ; $e7 +anim_0xe7: MACRO + db anim_0xe7_command +ENDM + + enum anim_updateactorpic_command ; $e8 +anim_updateactorpic: MACRO + db anim_updateactorpic_command +ENDM + + enum anim_minimize_command ; $e9 +anim_minimize: MACRO + db anim_minimize_command +ENDM + + enum anim_0xea_command ; $ea +anim_0xea: MACRO + db anim_0xea_command +ENDM + + enum anim_0xeb_command ; $eb +anim_0xeb: MACRO + db anim_0xeb_command +ENDM + + enum anim_0xec_command ; $ec +anim_0xec: MACRO + db anim_0xec_command +ENDM + + enum anim_0xed_command ; $ed +anim_0xed: MACRO + db anim_0xed_command +ENDM + + enum anim_if_param_and_command ; $ee +anim_if_param_and: MACRO + db anim_if_param_and_command + db \1 ; value + dw \2 ; address +ENDM + + enum anim_jumpuntil_command ; $ef +anim_jumpuntil: MACRO + db anim_jumpuntil_command + dw \1 ; address +ENDM + + enum anim_bgeffect_command ; $f0 +anim_bgeffect: MACRO + db anim_bgeffect_command + db \1 ; effect + db \2 ; jumptable index + db \3 ; battle turn + db \4 ; unknown +ENDM + + enum anim_bgp_command ; $f1 +anim_bgp: MACRO + db anim_bgp_command + db \1 ; colors +ENDM + + enum anim_obp0_command ; $f2 +anim_obp0: MACRO + db anim_obp0_command + db \1 ; colors +ENDM + + enum anim_obp1_command ; $f3 +anim_obp1: MACRO + db anim_obp1_command + db \1 ; colors +ENDM + + enum anim_keepsprites_command ; $f4 +anim_keepsprites: MACRO + db anim_keepsprites_command +ENDM + + enum anim_0xf5_command ; $f5 +anim_0xf5: MACRO + db anim_0xf5_command +ENDM + + enum anim_0xf6_command ; $f6 +anim_0xf6: MACRO + db anim_0xf6_command +ENDM + + enum anim_0xf7_command ; $f7 +anim_0xf7: MACRO + db anim_0xf7_command +ENDM + + enum anim_if_param_equal_command ; $f8 +anim_if_param_equal: MACRO + db anim_if_param_equal_command + db \1 ; value + dw \2 ; address +ENDM + + enum anim_setvar_command ; $f9 +anim_setvar: MACRO + db anim_setvar_command + db \1 ; value +ENDM + + enum anim_incvar_command ; $fa +anim_incvar: MACRO + db anim_incvar_command +ENDM + + enum anim_if_var_equal_command ; $fb +anim_if_var_equal: MACRO + db anim_if_var_equal_command + db \1 ; value + dw \2 ; address +ENDM + + enum anim_jump_command ; $fc +anim_jump: MACRO + db anim_jump_command + dw \1 ; address +ENDM + + enum anim_loop_command ; $fd +anim_loop: MACRO + db anim_loop_command + db \1 ; count + dw \2 ; address +ENDM + + enum anim_call_command ; $fe +anim_call: MACRO + db anim_call_command + dw \1 ; address +ENDM + + enum anim_ret_command ; $ff +anim_ret: MACRO + db anim_ret_command +ENDM |