Mario Kart 64
Loading...
Searching...
No Matches
actor_types.h
Go to the documentation of this file.
1#ifndef ACTOR_TYPES_H
2#define ACTOR_TYPES_H
3
4#include <ultra64.h>
5#include <macros.h>
6#include <common_structs.h>
7
8//#pragma GCC diagnostic push
9//#pragma GCC diagnostic ignored "-Wmicrosoft-extension"
10//#pragma GCC diagnostic ignored "-Wmissing-member-name-in-structure-/-union"
11
12/*
13gActorList should be understood to be populated by generic Actor structs.
14However, for human readability, many functions interacting with actor list elements expect one of the many
15specialized types found in this file.
16
17Note that specialized types must be the same size as a plain Actor. Don't be mislead into thinking that
18because its a separate type that it can modified separately from plain Actor. If you modify/add an actor type
19and its size is different from plain Actor's, you WILL run into buggy (potentially crash inducing) behaviour.
20
21Specialized structs are customizable so long as the following member specifications are met:
22
23In general:
24 0x00 -> s16 type
25 0x02 -> s16 flags
26 0x30 -> Collision unk30
27
28If player can collide with the actor:
29 0x0C -> f32 boundingBoxSize
30
31If the actor makes sound (necessary for doppler/volume stuff):
32 0x18 -> Vec3f pos
33 0x24 -> Vec3f velocity
34
35Other members are more flexible, and even the non-general specifications can be ignored IF AND ONLY IF you know
36exactly what you're doing.
37*/
38
39#define ACTOR_TREE_MARIO_RACEWAY 0x02
40#define ACTOR_TREE_YOSHI_VALLEY 0x03
41#define ACTOR_TREE_ROYAL_RACEWAY 0x04
42#define ACTOR_FALLING_ROCK 0x05
43#define ACTOR_BANANA 0x06
44#define ACTOR_GREEN_SHELL 0x07
45#define ACTOR_RED_SHELL 0x08
46#define ACTOR_YOSHI_VALLEY_EGG 0x09
47#define ACTOR_PIRANHA_PLANT 0x0A
48#define ACTOR_ITEM_BOX 0x0C
49#define ACTOR_FAKE_ITEM_BOX 0x0D
50#define ACTOR_BANANA_BUNCH 0x0E
51#define ACTOR_TRAIN_ENGINE 0x0F
52#define ACTOR_TRAIN_TENDER 0x10
53#define ACTOR_TRAIN_PASSENGER_CAR 0x11
54#define ACTOR_COW 0x12
55#define ACTOR_TREE_MOO_MOO_FARM 0x13
56#define ACTOR_TRIPLE_GREEN_SHELL 0x15
57#define ACTOR_TRIPLE_RED_SHELL 0x16
58#define ACTOR_MARIO_RACEWAY_SIGN 0x17
59#define ACTOR_PALM_TREE 0x19
60#define ACTOR_TREE_BOWSERS_CASTLE 0x1C
61#define ACTOR_TREE_FRAPPE_SNOWLAND 0x1D
62#define ACTOR_CACTUS1_KALAMARI_DESERT 0x1E
63#define ACTOR_CACTUS2_KALAMARI_DESERT 0x1F
64#define ACTOR_CACTUS3_KALAMARI_DESERT 0x20
65#define ACTOR_BUSH_BOWSERS_CASTLE 0x21
66#define ACTOR_WARIO_STADIUM_SIGN 0x23
67#define ACTOR_BOX_TRUCK 0x25
68#define ACTOR_PADDLE_WHEEL_BOAT 0x26
69#define ACTOR_RAILROAD_CROSSING 0x27
70#define ACTOR_SCHOOL_BUS 0x28
71#define ACTOR_TANKER_TRUCK 0x29
72#define ACTOR_BLUE_SPINY_SHELL 0x2A
73#define ACTOR_HOT_AIR_BALLOON_ITEM_BOX 0x2B
74#define ACTOR_CAR 0x2C
75#define ACTOR_KIWANO_FRUIT 0x2D
76
77#define ACTOR_LIST_SIZE 100
78
79// Actor flags
80#define ACTOR_IS_NOT_EXPIRED 0xF // The actor possesses some kind of collision and can be removed
81
82// Actor shell->state (green, red and blue)
83#define HELD_SHELL 0 // Single shell that has not been dropped. (probably holding Z).
84#define RELEASED_SHELL 1 // This is the short window where single shells aren't being held or launched.
85#define MOVING_SHELL 2 // Moving towards its target after being shot.
86#define RED_SHELL_LOCK_ON 3 // Red shell is targeting.
87#define TRIPLE_GREEN_SHELL 4 // Loses triple shell state when shot.
88#define GREEN_SHELL_HIT_A_RACER 5 // A racer has been hit by a green shell.
89#define TRIPLE_RED_SHELL 6 // Loses triple shell state when shot.
90#define DESTROYED_SHELL 7 // Collision with the shell.
91#define BLUE_SHELL_LOCK_ON 8 // A blue shell has found a target and is hastily approaching it.
92#define BLUE_SHELL_TARGET_ELIMINATED 9 // Mission completed, well done boss.
93// Actor banana->state
94#define HELD_BANANA 0 // Single banana that has not been dropped.
95#define DROPPED_BANANA 1 // A banana in the state of being dropped on the ground (it only last for a few frames).
96#define FIRST_BANANA_BUNCH_BANANA 2 // The first banana of the banana bunch
97#define BANANA_BUNCH_BANANA 3 // Every banana of the banana bunch except the first one.
98#define BANANA_ON_GROUND 4 // A banana sitting on the ground.
99#define DESTROYED_BANANA 5 // Collision with the banana.
100// Actor fakeItemBox->state
101#define HELD_FAKE_ITEM_BOX 0 // Item box is being held be Z.
102#define FAKE_ITEM_BOX_ON_GROUND 1 // Item box is on the ground.
103#define DESTROYED_FAKE_ITEM_BOX 2 // Collision with fake item box.
104
105struct Actor {
106 /* 0x00 */ s16 type;
107 /* 0x02 */ s16 flags;
108 /* 0x04 */ s16 unk_04;
109 /* 0x06 */ s16 state;
110 /* 0x08 */ f32 unk_08;
112 /* 0x10 */ Vec3s rot;
113 /* 0x16 */ s16 unk_16;
114 /* 0x18 */ Vec3f pos;
115 /* 0x24 */ Vec3f velocity;
116 /* 0x30 */ Collision unk30;
117}; // size = 0x70
118
119// Duplicate declare for simplicity when externing actors & packed files.
120extern struct Actor gActorList[ACTOR_LIST_SIZE]; // D_8015F9B8
121
122/*
123Specialized actor types
124*/
125
126/*
127Used by the locomotive, tender, and passenger car
128*/
129struct TrainCar {
130 /* 0x00 */ s16 type;
131 /* 0x02 */ s16 flags;
132 /* 0x04 */ s16 unk_04;
133 /* 0x06 */ s16 wheelRot;
134 /* 0x08 */ f32 unk_08;
135 /* 0x0C */ f32 unk_0C;
136 /* 0x10 */ Vec3s rot;
137 /* 0x10 */ s16 unk_16;
138 /* 0x18 */ Vec3f pos;
139 /* 0x24 */ Vec3f velocity;
140 /* 0x30 */ Collision unk30;
141}; // size = 0x70
142
144 /* 0x00 */ s16 type;
145 /* 0x02 */ s16 flags;
146 /* 0x04 */ s16 someTimer;
147 /* 0x06 */ s16 crossingId;
148 /* 0x08 */ f32 unk_08;
149 /* 0x0C */ f32 unk_0C;
150 /* 0x10 */ Vec3s rot;
151 /* 0x16 */ s16 unk_16;
152 /* 0x18 */ Vec3f pos;
153 /* 0x24 */ Vec3f velocity;
154 /* 0x30 */ Collision unk30;
155}; // size = 0x70
156
158 /* 0x00 */ s16 type;
159 /* 0x02 */ s16 flags;
160 /* 0x04 */ s16 respawnTimer;
161 /* 0x06 */ s16 unk_06;
162 /* 0x08 */ f32 unk_08;
164 /* 0x10 */ Vec3s rot;
165 /* 0x16 */ s16 unk_16;
166 /* 0x18 */ Vec3f pos;
167 /* 0x24 */ Vec3f velocity;
168 /* 0x30 */ Collision unk30;
169}; // size = 0x70
170
172 /* 0x00 */ Vec3s pos;
173 union {
174 /* 0x06 */ u16 someId; // Usually populated, but not necessarily used by all actors types
175 /* 0x06 */ s16 signedSomeId;
176 };
177};
178
179// Required for func_80298AC0 due to diff size.
180// members unverified. data located at d_course_dks_jungle_parkway_tree_spawn
190 /* 0x00 */ Vec3s pos;
191 // Techinically only the bottom byte of someId is the "id". The top byte is used for flags.
192 /* 0x06 */ s16 someId;
193 // Stores the tree's original Y position.
194 /* 0x08 */ s16 unk8;
195};
196
198 /* 0x00 */ s16 type;
199 /* 0x02 */ s16 flags;
200 /* 0x04 */ s16 unk_04;
201 /* 0x06 */ s16 unk_06;
202 /* 0x08 */ f32 pathRadius;
204 /* 0x10 */ s16 pathRot;
205 /* 0x12 */ s16 eggRot;
206 /* 0x14 */ s16 unk_14;
207 /* 0x16 */ s16 unk_16;
208 /* 0x18 */ Vec3f pos;
209 // Note, pathCenter[1] should be understood to be the Y velocity of the egg
210 // pathCenter[0] and pathCenter[2] are the X,Z coordinates of the center of the path
211 /* 0x24 */ Vec3f pathCenter;
212 /* 0x30 */ Collision unk30;
213}; // size = 0x70
214
216 /* 0x00 */ s16 type;
217 /* 0x02 */ s16 flags;
218 /* 0x04 */ s16 targetPlayer; // Id of the player this actor tracks. Each player has their own kiwano actor just for them
219 /* 0x06 */ s16 state;
220 /* 0x08 */ f32 bonkTimer; // bonkState? Not sure what this is tracking, but its some form of count down that starts after the fruit hits you
222 /* 0x10 */ s16 animState;
223 /* 0x12 */ s16 animTimer;
224 /* 0x14 */ s16 unk_14;
225 /* 0x16 */ s16 unk_16;
226 /* 0x18 */ Vec3f pos;
227 /* 0x24 */ Vec3f velocity;
228 /* 0x30 */ Collision unk30;
229}; // size = 0x70
230
232 /* 0x00 */ s16 type;
233 /* 0x02 */ s16 flags;
234 /* 0x04 */ s16 unk_04;
235 /* 0x06 */ s16 wheelRot;
236 /* 0x08 */ f32 unk_08;
237 /* 0x0C */ f32 unk_0C;
238 /* 0x10 */ Vec3s boatRot;
239 /* 0x16 */ s16 unk_16;
240 /* 0x18 */ Vec3f pos;
241 /* 0x24 */ Vec3f velocity;
242 /* 0x30 */ Collision unk30;
243}; // size = 0x70
244
246 /* 0x00 */ s16 type;
247 /* 0x02 */ s16 flags;
248 /* 0x04 */ Vec4s visibilityStates; // A per-camera visibilty state tracker
250 /* 0x10 */ Vec4s unk10;
251 /* 0x18 */ Vec3f pos;
252 /* 0x24 */ Vec4s timers; // A per-camera timer. Might be more appropriate to call this state
253 /* 0x2C */ f32 unk_02C;
254 /* 0x30 */ Collision unk30;
255}; // size = 0x70
256
257// Copied from PiranhaPlant, may not be accurate.
258struct PalmTree {
259 /* 0x00 */ s16 type;
260 /* 0x02 */ s16 flags;
261 /* 0x04 */ Vec4s visibilityStates; // A per-camera visibilty state tracker
263 /* 0x10 */ Vec3s unk10;
264 /* 0x16 */ s16 unk16;
265 /* 0x18 */ Vec3f pos;
266 /* 0x24 */ Vec4s timers; // A per-camera timer. Might be more appropriate to call this state
267 /* 0x2C */ f32 unk_02C;
268 /* 0x30 */ Collision unk30;
269}; // size = 0x70
270
271typedef struct {
272 /* 0x00 */ s16 type;
273 /* 0x02 */ s16 flags;
275 /* 0x06 */ s16 state;
276 /* 0x08 */ f32 unk_08;
277 /* 0x0C */ f32 unk_0C;
278 /* 0x10 */ s16 rotVelocity;
279 /* 0x12 */ s16 rotAngle;
280 /* 0x14 */ s16 playerId; // Id of the player that "owns" the shells
281 /* 0x16 */ s16 unk_16;
282 /* 0x18 */ Vec3f unk_18;
283 /* 0x24 */ Vec3f shellIndices; // Indices in gActorList for the shells "owned" by this parent
284 /* 0x30 */ Collision unk30;
285} TripleShellParent; // size = 0x70
286
288 /* 0x00 */ s16 type;
289 /* 0x02 */ s16 flags;
290 // Index in gActorList for the parent actor of this shell
291 // Seems to pull double duty as a timer
292 union {
293 /* 0x04 */ s16 parentIndex;
294 /* 0x04 */ s16 someTimer;
295 // Red Shells only (maybe blue shells?)
296 /* 0x04 */ s16 targetPlayer; // Player the shell is after
297 };
298 /* 0x06 */ s16 state;
299 /* 0x08 */ f32 shellId; // 0, 1, or 2. Indicates which shell in the triplet this one is
301 /* 0x10 */ s16 rotVelocity; // Change in rotAngle on a per-update basis
302 union {
303 /* 0x12 */ s16 rotAngle; // Angle of rotation around player (or parent?), not the rotation of the shell itself
304 /* 0x12 */ u16 pathIndex; // Index in the set of points that make up the "path" the red/blue shell follows (may be GP mode exclusive)
305 };
306 /* 0x14 */ s16 playerId; // Id of the player that "owns" the shell
307 /* 0x16 */ s16 unk_16;
308 /* 0x18 */ Vec3f pos;
309 /* 0x24 */ Vec3f velocity; // All 0 until the shell is fired
310 /* 0x30 */ Collision unk30;
311}; // size = 0x70
312
313struct ItemBox {
314 /* 0x00 */ s16 type;
315 /* 0x02 */ s16 flags;
316 /* 0x04 */ s16 someTimer;
317 /* 0x06 */ s16 state;
318 /* 0x08 */ f32 resetDistance; // Value added to the Y position when box is touched. Expected to be negative
319 // Distance at which a player can activate the item box
320 // Named "bounding box" to match the name used for the "size" of a kart
322 /* 0x10 */ Vec3s rot;
323 /* 0x16 */ s16 unk_16;
324 /* 0x18 */ Vec3f pos;
325 /* 0x24 */ f32 origY; // Original Y position. Basically the Y position the box will reset to after being touched
326 /* 0x28 */ f32 unk_028;
327 /* 0x2C */ f32 unk_02C;
328 /* 0x30 */ Collision unk30;
329}; // size = 0x70
330
332 /* 0x00 */ s16 type;
333 /* 0x02 */ s16 flags;
334 /* 0x04 */ s16 someTimer;
335 /* 0x06 */ s16 state;
336 /* 0x08 */ f32 sizeScaling; // Controls the size of the box
338 /* 0x10 */ Vec3s rot;
339 /* 0x16 */ s16 unk_16;
340 /* 0x18 */ Vec3f pos;
341 /* 0x24 */ f32 playerId;
342 /* 0x28 */ f32 targetY;
343 /* 0x2C */ f32 unk_02C;
344 /* 0x30 */ Collision unk30;
345}; // size = 0x70
346
348 /* 0x00 */ s16 type;
349 /* 0x02 */ s16 flags;
350 /* 0x04 */ s16 unk_04;
351 /* 0x06 */ s16 state;
352 /* 0x08 */ f32 unk_08;
353 /* 0x0C */ f32 unk_0C;
354 /* 0x10 */ s16 playerId; // Player that own the bananas
355 /* 0x12 */ s16 bananaIndices[5]; // Indices in gActorList for the bananas owned by this parent
357 /* 0x1E */ s16 unk_1E;
358 /* 0x20 */ f32 unk_20[4];
359 /* 0x30 */ Collision unk30;
360}; // size = 0x70
361
363 /* 0x00 */ s16 type;
364 /* 0x02 */ s16 flags;
365 /* 0x04 */ s16 unk_04;
366 /* 0x06 */ s16 state;
367 /* 0x08 */ s16 parentIndex;
368 /* 0x0A */ s16 bananaId; // ? Appears to indiciate which banana of the bunch this one is
370 union {
371 /* 0x10 */ Vec3s rot;
372 struct {
373 /* 0x10 */ s16 playerId; // Id of the player that owns this banana
374 /* 0x12 */ s16 elderIndex; // Index in gActorList of the next-oldest banana in the bunch
375 /* 0x14 */ s16 youngerIndex; // Index in gActorList of the next-youngest banana in the bunch
376 };
377 };
378 /* 0x16 */ s16 unk_16;
379 /* 0x18 */ Vec3f pos;
380 /* 0x24 */ Vec3f velocity;
381 /* 0x30 */ Collision unk30;
382}; // size = 0x70
383
384//#pragma GCC diagnostic pop
385
386#endif // ACTOR_TYPES_H
#define ACTOR_LIST_SIZE
Definition actor_types.h:77
struct Actor gActorList[ACTOR_LIST_SIZE]
Definition code_800029B0.c:147
s16 Vec4s[4]
Definition common_structs.h:10
f32 Vec3f[3]
Definition common_structs.h:6
s16 Vec3s[3]
Definition common_structs.h:8
Definition actor_types.h:171
s16 signedSomeId
Definition actor_types.h:175
Vec3s pos
Definition actor_types.h:172
u16 someId
Definition actor_types.h:174
Definition actor_types.h:105
s16 type
Definition actor_types.h:106
s16 unk_16
Definition actor_types.h:113
s16 state
Definition actor_types.h:109
Vec3s rot
Definition actor_types.h:112
Vec3f velocity
Definition actor_types.h:115
Collision unk30
Definition actor_types.h:116
f32 unk_08
Definition actor_types.h:110
s16 unk_04
Definition actor_types.h:108
s16 flags
Definition actor_types.h:107
Vec3f pos
Definition actor_types.h:114
f32 boundingBoxSize
Definition actor_types.h:111
Definition actor_types.h:362
Vec3f velocity
Definition actor_types.h:380
Vec3s rot
Definition actor_types.h:371
Collision unk30
Definition actor_types.h:381
f32 boundingBoxSize
Definition actor_types.h:369
s16 unk_16
Definition actor_types.h:378
s16 playerId
Definition actor_types.h:373
s16 elderIndex
Definition actor_types.h:374
s16 type
Definition actor_types.h:363
Vec3f pos
Definition actor_types.h:379
s16 bananaId
Definition actor_types.h:368
s16 unk_04
Definition actor_types.h:365
s16 flags
Definition actor_types.h:364
s16 youngerIndex
Definition actor_types.h:375
s16 parentIndex
Definition actor_types.h:367
s16 state
Definition actor_types.h:366
Definition actor_types.h:347
s16 playerId
Definition actor_types.h:354
s16 bananasAvailable
Definition actor_types.h:356
s16 state
Definition actor_types.h:351
s16 unk_04
Definition actor_types.h:350
f32 unk_08
Definition actor_types.h:352
s16 unk_1E
Definition actor_types.h:357
s16 flags
Definition actor_types.h:349
s16 bananaIndices[5]
Definition actor_types.h:355
f32 unk_0C
Definition actor_types.h:353
f32 unk_20[4]
Definition actor_types.h:358
Collision unk30
Definition actor_types.h:359
s16 type
Definition actor_types.h:348
Definition common_structs.h:114
Definition actor_types.h:331
Vec3s rot
Definition actor_types.h:338
s16 someTimer
Definition actor_types.h:334
f32 targetY
Definition actor_types.h:342
s16 flags
Definition actor_types.h:333
f32 boundingBoxSize
Definition actor_types.h:337
f32 sizeScaling
Definition actor_types.h:336
Collision unk30
Definition actor_types.h:344
f32 playerId
Definition actor_types.h:341
s16 state
Definition actor_types.h:335
s16 unk_16
Definition actor_types.h:339
s16 type
Definition actor_types.h:332
Vec3f pos
Definition actor_types.h:340
f32 unk_02C
Definition actor_types.h:343
Definition actor_types.h:157
Collision unk30
Definition actor_types.h:168
s16 respawnTimer
Definition actor_types.h:160
f32 unk_08
Definition actor_types.h:162
Vec3s rot
Definition actor_types.h:164
s16 unk_06
Definition actor_types.h:161
Vec3f pos
Definition actor_types.h:166
f32 boundingBoxSize
Definition actor_types.h:163
s16 unk_16
Definition actor_types.h:165
Vec3f velocity
Definition actor_types.h:167
s16 type
Definition actor_types.h:158
s16 flags
Definition actor_types.h:159
Definition actor_types.h:313
s16 someTimer
Definition actor_types.h:316
s16 flags
Definition actor_types.h:315
f32 unk_028
Definition actor_types.h:326
f32 origY
Definition actor_types.h:325
f32 boundingBoxSize
Definition actor_types.h:321
s16 type
Definition actor_types.h:314
Vec3f pos
Definition actor_types.h:324
s16 state
Definition actor_types.h:317
f32 resetDistance
Definition actor_types.h:318
Vec3s rot
Definition actor_types.h:322
f32 unk_02C
Definition actor_types.h:327
Collision unk30
Definition actor_types.h:328
s16 unk_16
Definition actor_types.h:323
Definition actor_types.h:215
f32 boundingBoxSize
Definition actor_types.h:221
Collision unk30
Definition actor_types.h:228
f32 bonkTimer
Definition actor_types.h:220
Vec3f velocity
Definition actor_types.h:227
s16 animState
Definition actor_types.h:222
s16 animTimer
Definition actor_types.h:223
s16 type
Definition actor_types.h:216
s16 unk_16
Definition actor_types.h:225
s16 unk_14
Definition actor_types.h:224
s16 flags
Definition actor_types.h:217
s16 targetPlayer
Definition actor_types.h:218
Vec3f pos
Definition actor_types.h:226
s16 state
Definition actor_types.h:219
Definition actor_types.h:231
Vec3f pos
Definition actor_types.h:240
Vec3s boatRot
Definition actor_types.h:238
s16 unk_04
Definition actor_types.h:234
Vec3f velocity
Definition actor_types.h:241
f32 unk_0C
Definition actor_types.h:237
s16 wheelRot
Definition actor_types.h:235
s16 unk_16
Definition actor_types.h:239
f32 unk_08
Definition actor_types.h:236
s16 flags
Definition actor_types.h:233
s16 type
Definition actor_types.h:232
Collision unk30
Definition actor_types.h:242
Definition actor_types.h:258
Vec3s unk10
Definition actor_types.h:263
f32 unk_02C
Definition actor_types.h:267
s16 type
Definition actor_types.h:259
s16 unk16
Definition actor_types.h:264
Vec4s visibilityStates
Definition actor_types.h:261
s16 flags
Definition actor_types.h:260
Vec4s timers
Definition actor_types.h:266
Vec3f pos
Definition actor_types.h:265
f32 boundingBoxSize
Definition actor_types.h:262
Collision unk30
Definition actor_types.h:268
Definition actor_types.h:245
Vec4s visibilityStates
Definition actor_types.h:248
s16 type
Definition actor_types.h:246
Collision unk30
Definition actor_types.h:254
Vec4s timers
Definition actor_types.h:252
f32 unk_02C
Definition actor_types.h:253
Vec4s unk10
Definition actor_types.h:250
s16 flags
Definition actor_types.h:247
Vec3f pos
Definition actor_types.h:251
f32 boundingBoxSize
Definition actor_types.h:249
Definition actor_types.h:143
Vec3f velocity
Definition actor_types.h:153
s16 unk_16
Definition actor_types.h:151
s16 type
Definition actor_types.h:144
f32 unk_0C
Definition actor_types.h:149
s16 flags
Definition actor_types.h:145
s16 crossingId
Definition actor_types.h:147
f32 unk_08
Definition actor_types.h:148
Vec3s rot
Definition actor_types.h:150
Collision unk30
Definition actor_types.h:154
Vec3f pos
Definition actor_types.h:152
s16 someTimer
Definition actor_types.h:146
Definition actor_types.h:287
s16 rotAngle
Definition actor_types.h:303
s16 rotVelocity
Definition actor_types.h:301
s16 unk_16
Definition actor_types.h:307
s16 flags
Definition actor_types.h:289
f32 boundingBoxSize
Definition actor_types.h:300
s16 state
Definition actor_types.h:298
f32 shellId
Definition actor_types.h:299
s16 type
Definition actor_types.h:288
s16 playerId
Definition actor_types.h:306
Vec3f velocity
Definition actor_types.h:309
s16 parentIndex
Definition actor_types.h:293
Vec3f pos
Definition actor_types.h:308
Collision unk30
Definition actor_types.h:310
s16 targetPlayer
Definition actor_types.h:296
s16 someTimer
Definition actor_types.h:294
u16 pathIndex
Definition actor_types.h:304
Definition actor_types.h:129
s16 flags
Definition actor_types.h:131
s16 unk_04
Definition actor_types.h:132
s16 unk_16
Definition actor_types.h:137
s16 wheelRot
Definition actor_types.h:133
f32 unk_0C
Definition actor_types.h:135
f32 unk_08
Definition actor_types.h:134
Vec3f pos
Definition actor_types.h:138
Vec3f velocity
Definition actor_types.h:139
s16 type
Definition actor_types.h:130
Vec3s rot
Definition actor_types.h:136
Collision unk30
Definition actor_types.h:140
Definition actor_types.h:271
Collision unk30
Definition actor_types.h:284
s16 playerId
Definition actor_types.h:280
s16 state
Definition actor_types.h:275
s16 shellsAvailable
Definition actor_types.h:274
s16 rotVelocity
Definition actor_types.h:278
Vec3f unk_18
Definition actor_types.h:282
s16 type
Definition actor_types.h:272
s16 rotAngle
Definition actor_types.h:279
s16 unk_16
Definition actor_types.h:281
s16 flags
Definition actor_types.h:273
f32 unk_0C
Definition actor_types.h:277
Vec3f shellIndices
Definition actor_types.h:283
f32 unk_08
Definition actor_types.h:276
Definition actor_types.h:189
Vec3s pos
Definition actor_types.h:190
s16 someId
Definition actor_types.h:192
s16 unk8
Definition actor_types.h:194
Definition actor_types.h:197
s16 unk_14
Definition actor_types.h:206
Collision unk30
Definition actor_types.h:212
s16 eggRot
Definition actor_types.h:205
s16 type
Definition actor_types.h:198
s16 flags
Definition actor_types.h:199
Vec3f pos
Definition actor_types.h:208
f32 pathRadius
Definition actor_types.h:202
s16 unk_16
Definition actor_types.h:207
s16 unk_06
Definition actor_types.h:201
s16 unk_04
Definition actor_types.h:200
f32 boundingBoxSize
Definition actor_types.h:203
Vec3f pathCenter
Definition actor_types.h:211
s16 pathRot
Definition actor_types.h:204
signed short int s16
Definition ultratypes.h:13
float f32
Definition ultratypes.h:33
unsigned short int u16
Definition ultratypes.h:14