Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
MorsGames
GitHub Repository: MorsGames/sm64plus
Path: blob/master/levels/scripts.c
7854 views
1
#include <ultra64.h>
2
#include "sm64.h"
3
#include "game/level_update.h"
4
#include "level_commands.h"
5
#include "game/area.h"
6
7
#include "make_const_nonconst.h"
8
9
#include "segment_symbols.h"
10
11
#include "actors/common0.h"
12
#include "actors/common1.h"
13
#include "actors/group0.h"
14
#include "actors/group1.h"
15
#include "actors/group2.h"
16
#include "actors/group3.h"
17
#include "actors/group4.h"
18
#include "actors/group5.h"
19
#include "actors/group6.h"
20
#include "actors/group7.h"
21
#include "actors/group8.h"
22
#include "actors/group9.h"
23
#include "actors/group10.h"
24
#include "actors/group11.h"
25
#include "actors/group12.h"
26
#include "actors/group13.h"
27
#include "actors/group14.h"
28
#include "actors/group15.h"
29
#include "actors/group16.h"
30
#include "actors/group17.h"
31
32
#include "levels/menu/header.h"
33
#include "levels/intro/header.h"
34
35
#include "level_headers.h"
36
37
#include "level_table.h"
38
39
#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8)
40
#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) + 3
41
static const LevelScript script_exec_level_table[2
42
#include "level_defines.h"
43
];
44
#undef DEFINE_LEVEL
45
#undef STUB_LEVEL
46
47
static const LevelScript script_L1[4];
48
static const LevelScript script_L2[4];
49
static const LevelScript goto_mario_head_regular[4];
50
static const LevelScript goto_mario_head_dizzy[4];
51
static const LevelScript script_L5[4];
52
53
#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8)
54
#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) static const LevelScript script_exec_ ## folder [4 + 1];
55
56
#include "level_defines.h"
57
58
#undef DEFINE_LEVEL
59
#undef STUB_LEVEL
60
61
const LevelScript level_main_scripts_entry[] = {
62
LOAD_MIO0(/*seg*/ 0x04, _group0_mio0SegmentRomStart, _group0_mio0SegmentRomEnd),
63
LOAD_MIO0(/*seg*/ 0x03, _common1_mio0SegmentRomStart, _common1_mio0SegmentRomEnd),
64
LOAD_RAW( /*seg*/ 0x17, _group0_geoSegmentRomStart, _group0_geoSegmentRomEnd),
65
LOAD_RAW( /*seg*/ 0x16, _common1_geoSegmentRomStart, _common1_geoSegmentRomEnd),
66
LOAD_RAW( /*seg*/ 0x13, _behaviorSegmentRomStart, _behaviorSegmentRomEnd),
67
ALLOC_LEVEL_POOL(),
68
LOAD_MODEL_FROM_GEO(MODEL_MARIO, mario_geo),
69
LOAD_MODEL_FROM_GEO(MODEL_SMOKE, smoke_geo),
70
LOAD_MODEL_FROM_GEO(MODEL_SPARKLES, sparkles_geo),
71
LOAD_MODEL_FROM_GEO(MODEL_BUBBLE, bubble_geo),
72
LOAD_MODEL_FROM_GEO(MODEL_SMALL_WATER_SPLASH, small_water_splash_geo),
73
LOAD_MODEL_FROM_GEO(MODEL_IDLE_WATER_WAVE, idle_water_wave_geo),
74
LOAD_MODEL_FROM_GEO(MODEL_WATER_SPLASH, water_splash_geo),
75
LOAD_MODEL_FROM_GEO(MODEL_WAVE_TRAIL, wave_trail_geo),
76
LOAD_MODEL_FROM_GEO(MODEL_YELLOW_COIN, yellow_coin_geo),
77
LOAD_MODEL_FROM_GEO(MODEL_STAR, star_geo),
78
LOAD_MODEL_FROM_GEO(MODEL_TRANSPARENT_STAR, transparent_star_geo),
79
LOAD_MODEL_FROM_GEO(MODEL_WOODEN_SIGNPOST, wooden_signpost_geo),
80
LOAD_MODEL_FROM_DL( MODEL_WHITE_PARTICLE_SMALL, white_particle_small_dl, LAYER_ALPHA),
81
LOAD_MODEL_FROM_GEO(MODEL_RED_FLAME, red_flame_geo),
82
LOAD_MODEL_FROM_GEO(MODEL_BLUE_FLAME, blue_flame_geo),
83
LOAD_MODEL_FROM_GEO(MODEL_BURN_SMOKE, burn_smoke_geo),
84
LOAD_MODEL_FROM_GEO(MODEL_LEAVES, leaves_geo),
85
LOAD_MODEL_FROM_GEO(MODEL_PURPLE_MARBLE, purple_marble_geo),
86
LOAD_MODEL_FROM_GEO(MODEL_FISH, fish_geo),
87
LOAD_MODEL_FROM_GEO(MODEL_FISH_SHADOW, fish_shadow_geo),
88
LOAD_MODEL_FROM_GEO(MODEL_SPARKLES_ANIMATION, sparkles_animation_geo),
89
LOAD_MODEL_FROM_DL( MODEL_SAND_DUST, sand_seg3_dl_0302BCD0, LAYER_ALPHA),
90
LOAD_MODEL_FROM_GEO(MODEL_BUTTERFLY, butterfly_geo),
91
LOAD_MODEL_FROM_GEO(MODEL_BURN_SMOKE_UNUSED, burn_smoke_geo),
92
LOAD_MODEL_FROM_DL( MODEL_PEBBLE, pebble_seg3_dl_0301CB00, LAYER_ALPHA),
93
LOAD_MODEL_FROM_GEO(MODEL_MIST, mist_geo),
94
LOAD_MODEL_FROM_GEO(MODEL_WHITE_PUFF, white_puff_geo),
95
LOAD_MODEL_FROM_DL( MODEL_WHITE_PARTICLE_DL, white_particle_dl, LAYER_ALPHA),
96
LOAD_MODEL_FROM_GEO(MODEL_WHITE_PARTICLE, white_particle_geo),
97
LOAD_MODEL_FROM_GEO(MODEL_YELLOW_COIN_NO_SHADOW, yellow_coin_no_shadow_geo),
98
LOAD_MODEL_FROM_GEO(MODEL_BLUE_COIN, blue_coin_geo),
99
LOAD_MODEL_FROM_GEO(MODEL_BLUE_COIN_NO_SHADOW, blue_coin_no_shadow_geo),
100
LOAD_MODEL_FROM_GEO(MODEL_MARIOS_WINGED_METAL_CAP, marios_winged_metal_cap_geo),
101
LOAD_MODEL_FROM_GEO(MODEL_MARIOS_METAL_CAP, marios_metal_cap_geo),
102
LOAD_MODEL_FROM_GEO(MODEL_MARIOS_WING_CAP, marios_wing_cap_geo),
103
LOAD_MODEL_FROM_GEO(MODEL_MARIOS_CAP, marios_cap_geo),
104
LOAD_MODEL_FROM_GEO(MODEL_MARIOS_CAP, marios_cap_geo), // repeated
105
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_KEY_CUTSCENE, bowser_key_cutscene_geo),
106
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_KEY, bowser_key_geo),
107
LOAD_MODEL_FROM_GEO(MODEL_RED_FLAME_SHADOW, red_flame_shadow_geo),
108
LOAD_MODEL_FROM_GEO(MODEL_1UP, mushroom_1up_geo),
109
LOAD_MODEL_FROM_GEO(MODEL_RED_COIN, red_coin_geo),
110
LOAD_MODEL_FROM_GEO(MODEL_RED_COIN_NO_SHADOW, red_coin_no_shadow_geo),
111
LOAD_MODEL_FROM_GEO(MODEL_NUMBER, number_geo),
112
LOAD_MODEL_FROM_GEO(MODEL_EXPLOSION, explosion_geo),
113
LOAD_MODEL_FROM_GEO(MODEL_DIRT_ANIMATION, dirt_animation_geo),
114
LOAD_MODEL_FROM_GEO(MODEL_CARTOON_STAR, cartoon_star_geo),
115
FREE_LEVEL_POOL(),
116
CALL(/*arg*/ 0, /*func*/ lvl_init_from_save_file),
117
LOOP_BEGIN(),
118
EXECUTE(/*seg*/ 0x14, _menuSegmentRomStart, _menuSegmentRomEnd, level_main_menu_entry_2),
119
JUMP_LINK(script_exec_level_table),
120
SLEEP(/*frames*/ 1),
121
LOOP_UNTIL(/*op*/ OP_LT, /*arg*/ 0),
122
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -1, script_L2),
123
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -2, goto_mario_head_regular),
124
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -3, goto_mario_head_dizzy),
125
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -8, script_L1),
126
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -9, script_L5),
127
};
128
129
static const LevelScript script_L1[] = {
130
EXIT_AND_EXECUTE(/*seg*/ 0x14, _introSegmentRomStart, _introSegmentRomEnd, level_intro_splash_screen),
131
};
132
133
static const LevelScript script_L2[] = {
134
EXIT_AND_EXECUTE(/*seg*/ 0x0E, _endingSegmentRomStart, _endingSegmentRomEnd, level_ending_entry),
135
};
136
137
static const LevelScript goto_mario_head_regular[] = {
138
EXIT_AND_EXECUTE(/*seg*/ 0x14, _introSegmentRomStart, _introSegmentRomEnd, level_intro_mario_head_regular),
139
};
140
141
static const LevelScript goto_mario_head_dizzy[] = {
142
EXIT_AND_EXECUTE(/*seg*/ 0x14, _introSegmentRomStart, _introSegmentRomEnd, level_intro_mario_head_dizzy),
143
};
144
145
static const LevelScript script_L5[] = {
146
EXIT_AND_EXECUTE(/*seg*/ 0x14, _introSegmentRomStart, _introSegmentRomEnd, level_intro_entry_4),
147
};
148
149
// Include the level jumptable.
150
151
#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8)
152
153
#define DEFINE_LEVEL(_0, levelenum, _2, folder, _4, _5, _6, _7, _8, _9, _10) JUMP_IF(OP_EQ, levelenum, script_exec_ ## folder),
154
155
static const LevelScript script_exec_level_table[] = {
156
GET_OR_SET(/*op*/ OP_GET, /*var*/ VAR_CURR_LEVEL_NUM),
157
#include "levels/level_defines.h"
158
EXIT(),
159
};
160
#undef DEFINE_LEVEL
161
162
#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) \
163
static const LevelScript script_exec_ ## folder [] = { \
164
EXECUTE(0x0E, _ ## folder ## SegmentRomStart, _ ## folder ## SegmentRomEnd, level_ ## folder ## _entry), \
165
RETURN(), \
166
};
167
168
#include "levels/level_defines.h"
169
#undef STUB_LEVEL
170
#undef DEFINE_LEVEL
171
172
const LevelScript script_func_global_1[] = {
173
LOAD_MODEL_FROM_GEO(MODEL_BLUE_COIN_SWITCH, blue_coin_switch_geo),
174
LOAD_MODEL_FROM_GEO(MODEL_AMP, dAmpGeo),
175
LOAD_MODEL_FROM_GEO(MODEL_PURPLE_SWITCH, purple_switch_geo),
176
LOAD_MODEL_FROM_GEO(MODEL_CHECKERBOARD_PLATFORM, checkerboard_platform_geo),
177
LOAD_MODEL_FROM_GEO(MODEL_BREAKABLE_BOX, breakable_box_geo),
178
LOAD_MODEL_FROM_GEO(MODEL_BREAKABLE_BOX_SMALL, breakable_box_small_geo),
179
LOAD_MODEL_FROM_GEO(MODEL_EXCLAMATION_BOX_OUTLINE, exclamation_box_outline_geo),
180
LOAD_MODEL_FROM_GEO(MODEL_EXCLAMATION_BOX, exclamation_box_geo),
181
LOAD_MODEL_FROM_GEO(MODEL_GOOMBA, goomba_geo),
182
LOAD_MODEL_FROM_DL( MODEL_EXCLAMATION_POINT, exclamation_box_outline_seg8_dl_08025F08, LAYER_ALPHA),
183
LOAD_MODEL_FROM_GEO(MODEL_KOOPA_SHELL, koopa_shell_geo),
184
LOAD_MODEL_FROM_GEO(MODEL_METAL_BOX, metal_box_geo),
185
LOAD_MODEL_FROM_DL( MODEL_METAL_BOX_DL, metal_box_dl, LAYER_OPAQUE),
186
LOAD_MODEL_FROM_GEO(MODEL_BLACK_BOBOMB, black_bobomb_geo),
187
LOAD_MODEL_FROM_GEO(MODEL_BOBOMB_BUDDY, bobomb_buddy_geo),
188
LOAD_MODEL_FROM_DL( MODEL_DL_CANNON_LID, cannon_lid_seg8_dl_080048E0, LAYER_OPAQUE),
189
LOAD_MODEL_FROM_GEO(MODEL_BOWLING_BALL, bowling_ball_geo),
190
LOAD_MODEL_FROM_GEO(MODEL_CANNON_BARREL, cannon_barrel_geo),
191
LOAD_MODEL_FROM_GEO(MODEL_CANNON_BASE, cannon_base_geo),
192
LOAD_MODEL_FROM_GEO(MODEL_HEART, heart_geo),
193
LOAD_MODEL_FROM_GEO(MODEL_FLYGUY, flyguy_geo),
194
LOAD_MODEL_FROM_GEO(MODEL_CHUCKYA, chuckya_geo),
195
LOAD_MODEL_FROM_GEO(MODEL_TRAJECTORY_MARKER_BALL, bowling_ball_track_geo),
196
RETURN(),
197
};
198
199
const LevelScript script_func_global_2[] = {
200
LOAD_MODEL_FROM_GEO(MODEL_BULLET_BILL, bullet_bill_geo),
201
LOAD_MODEL_FROM_GEO(MODEL_YELLOW_SPHERE, yellow_sphere_geo),
202
LOAD_MODEL_FROM_GEO(MODEL_HOOT, hoot_geo),
203
LOAD_MODEL_FROM_GEO(MODEL_YOSHI_EGG, yoshi_egg_geo),
204
LOAD_MODEL_FROM_GEO(MODEL_THWOMP, thwomp_geo),
205
LOAD_MODEL_FROM_GEO(MODEL_HEAVE_HO, heave_ho_geo),
206
RETURN(),
207
};
208
209
const LevelScript script_func_global_3[] = {
210
LOAD_MODEL_FROM_GEO(MODEL_BLARGG, blargg_geo),
211
LOAD_MODEL_FROM_GEO(MODEL_BULLY, bully_geo),
212
LOAD_MODEL_FROM_GEO(MODEL_BULLY_BOSS, bully_boss_geo),
213
RETURN(),
214
};
215
216
const LevelScript script_func_global_4[] = {
217
LOAD_MODEL_FROM_GEO(MODEL_WATER_BOMB, water_bomb_geo),
218
LOAD_MODEL_FROM_GEO(MODEL_WATER_BOMB_SHADOW, water_bomb_shadow_geo),
219
LOAD_MODEL_FROM_GEO(MODEL_KING_BOBOMB, king_bobomb_geo),
220
RETURN(),
221
};
222
223
const LevelScript script_func_global_5[] = {
224
LOAD_MODEL_FROM_GEO(MODEL_MANTA_RAY, manta_seg5_geo_05008D14),
225
LOAD_MODEL_FROM_GEO(MODEL_UNAGI, unagi_geo),
226
LOAD_MODEL_FROM_GEO(MODEL_SUSHI, sushi_geo),
227
LOAD_MODEL_FROM_DL( MODEL_DL_WHIRLPOOL, whirlpool_seg5_dl_05013CB8, LAYER_TRANSPARENT),
228
LOAD_MODEL_FROM_GEO(MODEL_CLAM_SHELL, clam_shell_geo),
229
RETURN(),
230
};
231
232
const LevelScript script_func_global_6[] = {
233
LOAD_MODEL_FROM_GEO(MODEL_POKEY_HEAD, pokey_head_geo),
234
LOAD_MODEL_FROM_GEO(MODEL_POKEY_BODY_PART, pokey_body_part_geo),
235
LOAD_MODEL_FROM_GEO(MODEL_TWEESTER, tweester_geo),
236
LOAD_MODEL_FROM_GEO(MODEL_KLEPTO, klepto_geo),
237
LOAD_MODEL_FROM_GEO(MODEL_EYEROK_LEFT_HAND, eyerok_left_hand_geo),
238
LOAD_MODEL_FROM_GEO(MODEL_EYEROK_RIGHT_HAND, eyerok_right_hand_geo),
239
RETURN(),
240
};
241
242
const LevelScript script_func_global_7[] = {
243
LOAD_MODEL_FROM_DL( MODEL_DL_MONTY_MOLE_HOLE, monty_mole_hole_seg5_dl_05000840, LAYER_TRANSPARENT_DECAL),
244
LOAD_MODEL_FROM_GEO(MODEL_MONTY_MOLE, monty_mole_geo),
245
LOAD_MODEL_FROM_GEO(MODEL_UKIKI, ukiki_geo),
246
LOAD_MODEL_FROM_GEO(MODEL_FWOOSH, fwoosh_geo),
247
RETURN(),
248
};
249
250
const LevelScript script_func_global_8[] = {
251
LOAD_MODEL_FROM_GEO(MODEL_SPINDRIFT, spindrift_geo),
252
LOAD_MODEL_FROM_GEO(MODEL_MR_BLIZZARD_HIDDEN, mr_blizzard_hidden_geo),
253
LOAD_MODEL_FROM_GEO(MODEL_MR_BLIZZARD, mr_blizzard_geo),
254
LOAD_MODEL_FROM_GEO(MODEL_PENGUIN, penguin_geo),
255
RETURN(),
256
};
257
258
const LevelScript script_func_global_9[] = {
259
LOAD_MODEL_FROM_DL( MODEL_CAP_SWITCH_EXCLAMATION, cap_switch_exclamation_seg5_dl_05002E00, LAYER_ALPHA),
260
LOAD_MODEL_FROM_GEO(MODEL_CAP_SWITCH, cap_switch_geo),
261
LOAD_MODEL_FROM_DL( MODEL_CAP_SWITCH_BASE, cap_switch_base_seg5_dl_05003120, LAYER_OPAQUE),
262
RETURN(),
263
};
264
265
const LevelScript script_func_global_10[] = {
266
LOAD_MODEL_FROM_GEO(MODEL_BOO, boo_geo),
267
LOAD_MODEL_FROM_GEO(MODEL_BETA_BOO_KEY, small_key_geo),
268
LOAD_MODEL_FROM_GEO(MODEL_HAUNTED_CHAIR, haunted_chair_geo),
269
LOAD_MODEL_FROM_GEO(MODEL_MAD_PIANO, mad_piano_geo),
270
LOAD_MODEL_FROM_GEO(MODEL_BOOKEND_PART, bookend_part_geo),
271
LOAD_MODEL_FROM_GEO(MODEL_BOOKEND, bookend_geo),
272
LOAD_MODEL_FROM_GEO(MODEL_HAUNTED_CAGE, haunted_cage_geo),
273
RETURN(),
274
};
275
276
const LevelScript script_func_global_11[] = {
277
LOAD_MODEL_FROM_GEO(MODEL_BIRDS, birds_geo),
278
LOAD_MODEL_FROM_GEO(MODEL_PEACH, peach_geo),
279
LOAD_MODEL_FROM_GEO(MODEL_YOSHI, yoshi_geo),
280
RETURN(),
281
};
282
283
const LevelScript script_func_global_12[] = {
284
LOAD_MODEL_FROM_GEO(MODEL_ENEMY_LAKITU, enemy_lakitu_geo),
285
LOAD_MODEL_FROM_GEO(MODEL_SPINY_BALL, spiny_ball_geo),
286
LOAD_MODEL_FROM_GEO(MODEL_SPINY, spiny_geo),
287
LOAD_MODEL_FROM_GEO(MODEL_WIGGLER_HEAD, wiggler_head_geo),
288
LOAD_MODEL_FROM_GEO(MODEL_WIGGLER_BODY, wiggler_body_geo),
289
LOAD_MODEL_FROM_GEO(MODEL_BUBBA, bubba_geo),
290
RETURN(),
291
};
292
293
const LevelScript script_func_global_13[] = {
294
LOAD_MODEL_FROM_GEO(MODEL_BOWSER, bowser_geo),
295
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_BOMB_CHILD_OBJ, bowser_bomb_geo),
296
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_BOMB, bowser_bomb_geo),
297
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_SMOKE, bowser_impact_smoke_geo),
298
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_FLAMES, bowser_flames_geo),
299
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_WAVE, invisible_bowser_accessory_geo),
300
LOAD_MODEL_FROM_GEO(MODEL_BOWSER_NO_SHADOW, bowser_geo_no_shadow),
301
RETURN(),
302
};
303
304
const LevelScript script_func_global_14[] = {
305
LOAD_MODEL_FROM_GEO(MODEL_BUB, bub_geo),
306
LOAD_MODEL_FROM_GEO(MODEL_TREASURE_CHEST_BASE, treasure_chest_base_geo),
307
LOAD_MODEL_FROM_GEO(MODEL_TREASURE_CHEST_LID, treasure_chest_lid_geo),
308
LOAD_MODEL_FROM_GEO(MODEL_CYAN_FISH, cyan_fish_geo),
309
LOAD_MODEL_FROM_GEO(MODEL_WATER_RING, water_ring_geo),
310
LOAD_MODEL_FROM_GEO(MODEL_WATER_MINE, water_mine_geo),
311
LOAD_MODEL_FROM_GEO(MODEL_SEAWEED, seaweed_geo),
312
LOAD_MODEL_FROM_GEO(MODEL_SKEETER, skeeter_geo),
313
RETURN(),
314
};
315
316
const LevelScript script_func_global_15[] = {
317
LOAD_MODEL_FROM_GEO(MODEL_PIRANHA_PLANT, piranha_plant_geo),
318
LOAD_MODEL_FROM_GEO(MODEL_WHOMP, whomp_geo),
319
LOAD_MODEL_FROM_GEO(MODEL_KOOPA_WITH_SHELL, koopa_with_shell_geo),
320
LOAD_MODEL_FROM_GEO(MODEL_KOOPA_WITHOUT_SHELL, koopa_without_shell_geo),
321
LOAD_MODEL_FROM_GEO(MODEL_METALLIC_BALL, metallic_ball_geo),
322
LOAD_MODEL_FROM_GEO(MODEL_CHAIN_CHOMP, chain_chomp_geo),
323
LOAD_MODEL_FROM_GEO(MODEL_KOOPA_FLAG, koopa_flag_geo),
324
LOAD_MODEL_FROM_GEO(MODEL_WOODEN_POST, wooden_post_geo),
325
RETURN(),
326
};
327
328
const LevelScript script_func_global_16[] = {
329
LOAD_MODEL_FROM_GEO(MODEL_MIPS, mips_geo),
330
LOAD_MODEL_FROM_GEO(MODEL_BOO_CASTLE, boo_castle_geo),
331
LOAD_MODEL_FROM_GEO(MODEL_LAKITU, lakitu_geo),
332
LOAD_MODEL_FROM_GEO(MODEL_TOAD, toad_geo),
333
RETURN(),
334
};
335
336
const LevelScript script_func_global_17[] = {
337
LOAD_MODEL_FROM_GEO(MODEL_CHILL_BULLY, chilly_chief_geo),
338
LOAD_MODEL_FROM_GEO(MODEL_BIG_CHILL_BULLY, chilly_chief_big_geo),
339
LOAD_MODEL_FROM_GEO(MODEL_MONEYBAG, moneybag_geo),
340
RETURN(),
341
};
342
343
const LevelScript script_func_global_18[] = {
344
LOAD_MODEL_FROM_GEO(MODEL_SWOOP, swoop_geo),
345
LOAD_MODEL_FROM_GEO(MODEL_SCUTTLEBUG, scuttlebug_geo),
346
LOAD_MODEL_FROM_GEO(MODEL_MR_I_IRIS, mr_i_iris_geo),
347
LOAD_MODEL_FROM_GEO(MODEL_MR_I, mr_i_geo),
348
LOAD_MODEL_FROM_GEO(MODEL_DORRIE, dorrie_geo),
349
LOAD_MODEL_FROM_GEO(MODEL_SNUFIT, snufit_geo),
350
RETURN(),
351
};
352
353