summaryrefslogtreecommitdiff
path: root/macros/scripts/movement.asm
blob: 6501454c54913655ed3e624fc72451376053c9a5 (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
; MovementPointers indexes (see engine/overworld/movement.asm)
	const_def 0, 4

; Directional movements

	const movement_turn_head ; $00
turn_head: MACRO
	db movement_turn_head | \1
ENDM

	const movement_turn_step ; $04
turn_step: MACRO
	db movement_turn_step | \1
ENDM

	const movement_slow_step ; $08
slow_step: MACRO
	db movement_slow_step | \1
ENDM

	const movement_step ; $0c
step: MACRO
	db movement_step | \1
ENDM

	const movement_big_step ; $10
big_step: MACRO
	db movement_big_step | \1
ENDM

	const movement_slow_slide_step ; $14
slow_slide_step: MACRO
	db movement_slow_slide_step | \1
ENDM

	const movement_slide_step ; $18
slide_step: MACRO
	db movement_slide_step | \1
ENDM

	const movement_fast_slide_step ; $1c
fast_slide_step: MACRO
	db movement_fast_slide_step | \1
ENDM

	const movement_turn_away ; $20
turn_away: MACRO
	db movement_turn_away | \1
ENDM

	const movement_turn_in ; $24
turn_in: MACRO
	db movement_turn_in | \1
ENDM

	const movement_turn_waterfall ; $28
turn_waterfall: MACRO
	db movement_turn_waterfall | \1
ENDM

	const movement_slow_jump_step ; $2c
slow_jump_step: MACRO
	db movement_slow_jump_step | \1
ENDM

	const movement_jump_step ; $30
jump_step: MACRO
	db movement_jump_step | \1
ENDM

	const movement_fast_jump_step ; $34
fast_jump_step: MACRO
	db movement_fast_jump_step | \1
ENDM

const_inc = 1

; Control
	const movement_remove_sliding ; $38
remove_sliding: MACRO
	db movement_remove_sliding
ENDM

	const movement_set_sliding ; $39
set_sliding: MACRO
	db movement_set_sliding
ENDM

	const movement_remove_fixed_facing ; $3a
remove_fixed_facing: MACRO
	db movement_remove_fixed_facing
ENDM

	const movement_fix_facing ; $3b
fix_facing: MACRO
	db movement_fix_facing
ENDM

	const movement_show_object ; $3c
show_object: MACRO
	db movement_show_object
ENDM

	const movement_hide_object ; $3d
hide_object: MACRO
	db movement_hide_object
ENDM

; Sleep

	const movement_step_sleep ; $3e
step_sleep: MACRO
if \1 <= 8
	db movement_step_sleep + \1 - 1
else
	db movement_step_sleep + 8, \1
endc
ENDM

	const_skip 8 ; all step_sleep values

	const movement_step_end ; $47
step_end: MACRO
	db movement_step_end
ENDM

	const movement_step_48 ; $48
step_48: MACRO
	db movement_step_48
	db \1 ; ???
ENDM

	const movement_remove_object ; $49
remove_object: MACRO
	db movement_remove_object
ENDM

	const movement_step_loop ; $4a
step_loop: MACRO
	db movement_step_loop
ENDM

	const movement_step_4b ; $4b
step_4b: MACRO
	db movement_step_4b
ENDM

	const movement_teleport_from ; $4c
teleport_from: MACRO
	db movement_teleport_from
ENDM

	const movement_teleport_to ; $4d
teleport_to: MACRO
	db movement_teleport_to
ENDM

	const movement_skyfall ; $4e
skyfall: MACRO
	db movement_skyfall
ENDM

	const movement_step_dig ; $4f
step_dig: MACRO
	db movement_step_dig
	db \1 ; length
ENDM

	const movement_step_bump ; $50
step_bump: MACRO
	db movement_step_bump
ENDM

	const movement_fish_got_bite ; $51
fish_got_bite: MACRO
	db movement_fish_got_bite
ENDM

	const movement_fish_cast_rod ; $52
fish_cast_rod: MACRO
	db movement_fish_cast_rod
ENDM

	const movement_hide_emote ; $53
hide_emote: MACRO
	db movement_hide_emote
ENDM

	const movement_show_emote ; $54
show_emote: MACRO
	db movement_show_emote
ENDM

	const movement_step_shake ; $55
step_shake: MACRO
	db movement_step_shake
	db \1 ; displacement
ENDM

	const movement_tree_shake ; $56
tree_shake: MACRO
	db movement_tree_shake
ENDM

	const movement_rock_smash ; $57
rock_smash: MACRO
	db movement_rock_smash
	db \1 ; length
ENDM

	const movement_return_dig ; $58
return_dig: MACRO
	db movement_return_dig
	db \1 ; length
ENDM

	const movement_skyfall_top ; $59
skyfall_top: MACRO
	db movement_skyfall_top
ENDM

NUM_MOVEMENT_CMDS EQU const_value