summaryrefslogtreecommitdiff
path: root/constants/pikachu_emotion_constants.asm
diff options
context:
space:
mode:
Diffstat (limited to 'constants/pikachu_emotion_constants.asm')
-rw-r--r--constants/pikachu_emotion_constants.asm152
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