diff options
Diffstat (limited to 'constants/pikachu_emotion_constants.asm')
-rw-r--r-- | constants/pikachu_emotion_constants.asm | 152 |
1 files changed, 148 insertions, 4 deletions
diff --git a/constants/pikachu_emotion_constants.asm b/constants/pikachu_emotion_constants.asm index c34a08f7..25d9a7aa 100644 --- a/constants/pikachu_emotion_constants.asm +++ b/constants/pikachu_emotion_constants.asm @@ -1,6 +1,33 @@ +dpikapic: macro + db (\1_id - PikaPicAnimPointers) / 2 + endm + +ldpikapic: macro + ld \1, (\2_id - PikaPicAnimPointers) / 2 + endm + +dpikaemotion: macro + db (\1_id - PikachuEmotionTable) / 2 + endm + +ldpikaemotion: macro + ld \1, (\2_id - PikachuEmotionTable) / 2 + endm + +dpikaanim: macro + db (\1_id - PikaPicAnimBGFramesPointers) / 2 + endm + +pikaframeend EQUS "db $e0" +pikaframe: macro + db (\1_id - PikaPicTilemapPointers) / 2, \2 + endm + +pikaframedelay EQUS "db 0," + ; Starter Pikachu emotion commands constants -const_value = 0 + const_def const PIKAEMOTION_DUMMY1 const PIKAEMOTION_PRINTTEXT const PIKAEMOTION_PLAYPCMSOUNDCLIP @@ -13,7 +40,7 @@ const_value = 0 const PIKAEMOTION_9 const PIKAEMOTION_DUMMY3 -const_value = 0 + const_def const PIKAEMOTION_SUBCMD_LOADEXTRAPIKASPRITES const PIKAEMOTION_SUBCMD_LOADFONT const PIKAEMOTION_SUBCMD_SHOWMAPVIEW @@ -22,6 +49,16 @@ const_value = 0 const PIKAEMOTION_SUBCMD_CHECKLAVENDERTOWER const PIKAEMOTION_SUBCMD_CHECKBILLSHOUSE + const_def + const PIKASTEPDIR_DOWN + const PIKASTEPDIR_UP + const PIKASTEPDIR_LEFT + const PIKASTEPDIR_RIGHT + const PIKASTEPDIR_DOWN_LEFT + const PIKASTEPDIR_DOWN_RIGHT + const PIKASTEPDIR_UP_LEFT + const PIKASTEPDIR_UP_RIGHT + ; Macros for commands pikaemotion_dummy1: MACRO @@ -54,7 +91,7 @@ ENDM pikaemotion_pikapic: MACRO db PIKAEMOTION_5 - db \1 + dpikapic \1 ENDM pikaemotion_subcmd: MACRO @@ -77,4 +114,111 @@ ENDM pikaemotion_dummy3: MACRO db PIKAEMOTION_DUMMY3 -ENDM
\ No newline at end of file +ENDM + +pikacry_def: MACRO +\1_id:: dba \1 +endm + +dpikacry: MACRO + db (\1_id - PikachuCriesPointerTable) / 3 + endm + +ldpikacry: MACRO + ld \1, (\2_id - PikachuCriesPointerTable) / 3 + ENDM + +pikacry: MACRO + ldpikacry a, \1 + endm + + + enum_start + enum pikapic_nop_command +pikapic_nop: macro + db pikapic_nop_command + endm + + enum pikapic_writebyte_command +pikapic_writebyte: macro + db pikapic_writebyte_command, \1 + endm + + enum pikapic_loadgfx_command +pikapic_loadgfx: macro + db pikapic_loadgfx_command, (\1_id - PikaPicAnimGFXHeaders) / 4 + endm + + enum pikapic_animation_command +pikapic_animation: macro + ; frameset pointer, starting vtile, y offset, x offset + db pikapic_animation_command + dpikaanim \1 + db 0, \2, \3, \4 + endm + + enum pikapic_nop4_command +pikapic_nop4: macro + db pikapic_nop4_command + endm + + enum pikapic_nop5_command +pikapic_nop5: macro + db pikapic_nop5_command + endm + + enum pikapic_waitbgmapeleteobject_command +pikapic_waitbgmapeleteobject: macro + db pikapic_waitbgmapeleteobject_command, \1 + endm + + enum pikapic_nop7_command +pikapic_nop7: macro + db pikapic_nop7_command + endm + + enum pikapic_nop8_command +pikapic_nop8: macro + db pikapic_nop8_command + endm + + enum pikapic_jump_command +pikapic_jump: macro ; 9 + dbw pikapic_jump_command, \1 + endm + + enum pikapic_setduration_command +pikapic_setduration: macro ; a + dbw pikapic_setduration_command, \1 + endm + + enum pikapic_cry_command +pikapic_cry: macro ; b + db pikapic_cry_command +IF _NARG == 0 + db $ff +else + dpikacry \1 + endc + endm + + enum pikapic_thunderbolt_command +pikapic_thunderbolt: macro ; c + db pikapic_thunderbolt_command + endm + + enum pikapic_waitbgmap_command +pikapic_waitbgmap: macro ; d + db pikapic_waitbgmap_command + endm + + enum pikapic_ret_command +pikapic_ret: macro ; e + db pikapic_ret_command + endm + +pikapic_looptofinish: macro +.loop\@ + pikapic_waitbgmap + pikapic_jump .loop\@ + endm |