summaryrefslogtreecommitdiff
path: root/constants/pikachu_emotion_constants.asm
blob: f9298f16b0241612b2d72cd993972a6ef99294e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
; pikachu happiness modifiers
	const_def 1
	const PIKAHAPPY_LEVELUP
	const PIKAHAPPY_USEDITEM
	const PIKAHAPPY_USEDXITEM
	const PIKAHAPPY_GYMLEADER
	const PIKAHAPPY_USEDTMHM
	const PIKAHAPPY_WALKING
	const PIKAHAPPY_DEPOSITED
	const PIKAHAPPY_FAINTED
	const PIKAHAPPY_PSNFNT
	const PIKAHAPPY_CARELESSTRAINER
	const PIKAHAPPY_TRADE

dpikapic: MACRO
	db (\1_id - PikaPicAnimPointers) / 2
ENDM

dpikaemotion: MACRO
	db (\1_id - PikachuEmotionTable) / 2
ENDM

ldpikaemotion: MACRO
	ld \1, (\2_id - PikachuEmotionTable) / 2
ENDM

; Starter Pikachu emotion commands constants

	const_def
	const PIKAEMOTION_DUMMY1
	const PIKAEMOTION_PRINTTEXT
	const PIKAEMOTION_PLAYPCMSOUNDCLIP
	const PIKAEMOTION_DOEMOTIONBUBBLE
	const PIKAEMOTION_4
	const PIKAEMOTION_5
	const PIKAEMOTION_SUBCMD
	const PIKAEMOTION_DELAYFRAMES
	const PIKAEMOTION_DUMMY2
	const PIKAEMOTION_9
	const PIKAEMOTION_DUMMY3

	const_def
	const PIKAEMOTION_SUBCMD_LOADEXTRAPIKASPRITES
	const PIKAEMOTION_SUBCMD_LOADFONT
	const PIKAEMOTION_SUBCMD_SHOWMAPVIEW
	const PIKAEMOTION_SUBCMD_WAITBUTTONPRESS
	const PIKAEMOTION_SUBCMD_CHECKPEWTERCENTER
	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
	db PIKAEMOTION_DUMMY1
ENDM

pikaemotion_printtext: MACRO
	db PIKAEMOTION_PRINTTEXT
	dw \1
ENDM

pikaemotion_pcm: MACRO
	db PIKAEMOTION_PLAYPCMSOUNDCLIP
IF _NARG > 0
	dpikacry \1
ELSE
	db $ff
ENDC
ENDM

pikaemotion_emotebubble: MACRO
	db PIKAEMOTION_DOEMOTIONBUBBLE
	db \1
ENDM

pikaemotion_movement: MACRO
	db PIKAEMOTION_4
	dw \1
ENDM

pikaemotion_pikapic: MACRO
	db PIKAEMOTION_5
	dpikapic \1
ENDM

pikaemotion_subcmd: MACRO
	db PIKAEMOTION_SUBCMD
	db \1
ENDM

pikaemotion_delay: MACRO
	db PIKAEMOTION_DELAYFRAMES
	db \1
ENDM

pikaemotion_dummy2: MACRO
	db PIKAEMOTION_DUMMY2
ENDM

pikaemotion_9: MACRO
	db PIKAEMOTION_9
ENDM

pikaemotion_dummy3: MACRO
	db PIKAEMOTION_DUMMY3
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


	const_def
	const pikapic_nop_command
pikapic_nop: MACRO
	db pikapic_nop_command
ENDM

	const pikapic_writebyte_command
pikapic_writebyte: MACRO
	db pikapic_writebyte_command
	db \1
ENDM

	const pikapic_loadgfx_command
pikapic_loadgfx: MACRO
	db pikapic_loadgfx_command
	db (\1_id - PikaPicAnimGFXHeaders) / 4
ENDM

	const pikapic_animation_command
pikapic_animation: MACRO
	; frameset pointer, starting vtile, y offset, x offset
	db pikapic_animation_command
	db (\1_id - PikaPicAnimBGFramesPointers) / 2
	db 0, \2, \3, \4
ENDM

	const pikapic_nop4_command
pikapic_nop4: MACRO
	db pikapic_nop4_command
ENDM

	const pikapic_nop5_command
pikapic_nop5: MACRO
	db pikapic_nop5_command
ENDM

	const pikapic_waitbgmapeleteobject_command
pikapic_waitbgmapeleteobject: MACRO
	db pikapic_waitbgmapeleteobject_command
	db \1
ENDM

	const pikapic_nop7_command
pikapic_nop7: MACRO
	db pikapic_nop7_command
ENDM

	const pikapic_nop8_command
pikapic_nop8: MACRO
	db pikapic_nop8_command
ENDM

	const pikapic_jump_command
pikapic_jump: MACRO ; 9
	db pikapic_jump_command
	dw \1
ENDM

	const pikapic_setduration_command
pikapic_setduration: MACRO ; a
	db pikapic_setduration_command
	dw \1
ENDM

	const pikapic_cry_command
pikapic_cry: MACRO ; b
	db pikapic_cry_command
IF _NARG == 0
	db $ff
else
	dpikacry \1
	endc
ENDM

	const pikapic_thunderbolt_command
pikapic_thunderbolt: MACRO ; c
	db pikapic_thunderbolt_command
ENDM

	const pikapic_waitbgmap_command
pikapic_waitbgmap: MACRO ; d
	db pikapic_waitbgmap_command
ENDM

	const pikapic_ret_command
pikapic_ret: MACRO ; e
	db pikapic_ret_command
ENDM

pikapic_looptofinish: MACRO
.loop\@
	pikapic_waitbgmap
	pikapic_jump .loop\@
ENDM