4#include <libultraship.h>
87#define ACTOR_LIST_SIZE CM_GetActorSize()
88#define GET_ACTOR(index) CM_GetActor(index)
91#define ACTOR_IS_NOT_EXPIRED 0xF
107#define THROW_SHELL_BACKWARDS -45
120#define HELD_FAKE_ITEM_BOX 0
121#define FAKE_ITEM_BOX_ON_GROUND 1
122#define DESTROYED_FAKE_ITEM_BOX 2
187static_assert(
sizeof(
struct RailroadCrossing) ==
sizeof(
struct Actor),
"RailroadCrossing struct size does not match base struct size");
ActorType
Definition actor_types.h:39
@ ACTOR_UNKNOWN_0x14
Definition actor_types.h:59
@ ACTOR_BANANA_BUNCH
Definition actor_types.h:53
@ ACTOR_PADDLE_BOAT
Definition actor_types.h:77
@ ACTOR_BLUE_SPINY_SHELL
Definition actor_types.h:81
@ ACTOR_RED_SHELL
Definition actor_types.h:47
@ ACTOR_WARIO_SIGN
Definition actor_types.h:74
@ ACTOR_CACTUS2_KALAMARI_DESERT
Definition actor_types.h:70
@ ACTOR_BUSH_BOWSERS_CASTLE
Definition actor_types.h:72
@ ACTOR_MARIO_SIGN
Definition actor_types.h:62
@ ACTOR_TRIPLE_RED_SHELL
Definition actor_types.h:61
@ ACTOR_CACTUS3_KALAMARI_DESERT
Definition actor_types.h:71
@ ACTOR_UNKNOWN_0x1B
Definition actor_types.h:66
@ ACTOR_UNKNOWN_0x23
Definition actor_types.h:75
@ ACTOR_COW
Definition actor_types.h:57
@ ACTOR_RAILROAD_CROSSING
Definition actor_types.h:78
@ ACTOR_PIRANHA_PLANT
Definition actor_types.h:49
@ ACTOR_CACTUS1_KALAMARI_DESERT
Definition actor_types.h:69
@ ACTOR_UNKNOWN_0x01
Definition actor_types.h:40
@ ACTOR_SCHOOL_BUS
Definition actor_types.h:79
@ ACTOR_PALM_TREE
Definition actor_types.h:64
@ ACTOR_TREE_ROYAL_RACEWAY
Definition actor_types.h:43
@ ACTOR_FALLING_ROCK
Definition actor_types.h:44
@ ACTOR_UNKNOWN_0x0B
Definition actor_types.h:50
@ ACTOR_GREEN_SHELL
Definition actor_types.h:46
@ ACTOR_KIWANO_FRUIT
Definition actor_types.h:84
@ ACTOR_YOSHI_EGG
Definition actor_types.h:48
@ ACTOR_TRAIN_ENGINE
Definition actor_types.h:54
@ ACTOR_TREE_PEACH_CASTLE
Definition actor_types.h:67
@ ACTOR_UNKNOWN_0x21
Definition actor_types.h:73
@ ACTOR_FAKE_ITEM_BOX
Definition actor_types.h:52
@ ACTOR_TREE_MOO_MOO_FARM
Definition actor_types.h:58
@ ACTOR_TRAIN_TENDER
Definition actor_types.h:55
@ ACTOR_TANKER_TRUCK
Definition actor_types.h:80
@ ACTOR_TREE_LUIGI_RACEWAY
Definition actor_types.h:65
@ ACTOR_TRIPLE_GREEN_SHELL
Definition actor_types.h:60
@ ACTOR_TREE_YOSHI_VALLEY
Definition actor_types.h:42
@ ACTOR_TRAIN_PASSENGER_CAR
Definition actor_types.h:56
@ ACTOR_BANANA
Definition actor_types.h:45
@ ACTOR_CAR
Definition actor_types.h:83
@ ACTOR_UNKNOWN_0x18
Definition actor_types.h:63
@ ACTOR_HOT_AIR_BALLOON_ITEM_BOX
Definition actor_types.h:82
@ ACTOR_TREE_FRAPPE_SNOWLAND
Definition actor_types.h:68
@ ACTOR_BOX_TRUCK
Definition actor_types.h:76
@ ACTOR_TREE_MARIO_RACEWAY
Definition actor_types.h:41
@ ACTOR_ITEM_BOX
Definition actor_types.h:51
struct Actor gActorList[100]
ShellState
Definition actor_types.h:94
@ DESTROYED_SHELL
Definition actor_types.h:102
@ MOVING_SHELL
Definition actor_types.h:97
@ HELD_SHELL
Definition actor_types.h:95
@ TRIPLE_RED_SHELL
Definition actor_types.h:101
@ BLUE_SHELL_TARGET_ELIMINATED
Definition actor_types.h:104
@ RELEASED_SHELL
Definition actor_types.h:96
@ GREEN_SHELL_HIT_A_RACER
Definition actor_types.h:100
@ TRIPLE_GREEN_SHELL
Definition actor_types.h:99
@ BLUE_SHELL_LOCK_ON
Definition actor_types.h:103
@ RED_SHELL_LOCK_ON
Definition actor_types.h:98
BananaState
Definition actor_types.h:110
@ BANANA_ON_GROUND
Definition actor_types.h:115
@ DROPPED_BANANA
Definition actor_types.h:112
@ DESTROYED_BANANA
Definition actor_types.h:116
@ HELD_BANANA
Definition actor_types.h:111
@ BANANA_BUNCH_BANANA
Definition actor_types.h:114
@ FIRST_BANANA_BUNCH_BANANA
Definition actor_types.h:113
s16 Vec4s[4]
Definition common_structs.h:17
f32 Vec3f[3]
Definition common_structs.h:10
s16 Vec3s[3]
Definition common_structs.h:15
@ s16
Definition GenericArray.h:55
s16 signedSomeId
Definition SpawnData.h:12
Vec3s pos
Definition SpawnData.h:9
u16 someId
Definition SpawnData.h:11
Definition actor_types.h:124
s16 type
Definition actor_types.h:125
s16 unk_16
Definition actor_types.h:132
s16 state
Definition actor_types.h:128
Vec3s rot
Definition actor_types.h:131
Vec3f velocity
Definition actor_types.h:134
const char * model
Definition actor_types.h:136
Collision unk30
Definition actor_types.h:135
f32 unk_08
Definition actor_types.h:129
s16 unk_04
Definition actor_types.h:127
s16 flags
Definition actor_types.h:126
Vec3f pos
Definition actor_types.h:133
f32 boundingBoxSize
Definition actor_types.h:130
Definition actor_types.h:408
Vec3f velocity
Definition actor_types.h:426
Vec3s rot
Definition actor_types.h:417
Collision unk30
Definition actor_types.h:427
f32 boundingBoxSize
Definition actor_types.h:415
s16 unk_16
Definition actor_types.h:424
s16 playerId
Definition actor_types.h:419
s16 elderIndex
Definition actor_types.h:420
s16 type
Definition actor_types.h:409
Vec3f pos
Definition actor_types.h:425
s16 bananaId
Definition actor_types.h:414
s16 unk_04
Definition actor_types.h:411
s16 flags
Definition actor_types.h:410
const char * model
Definition actor_types.h:428
s16 youngerIndex
Definition actor_types.h:421
s16 parentIndex
Definition actor_types.h:413
s16 state
Definition actor_types.h:412
Definition actor_types.h:392
s16 playerId
Definition actor_types.h:399
s16 bananasAvailable
Definition actor_types.h:401
s16 state
Definition actor_types.h:396
s16 unk_04
Definition actor_types.h:395
f32 unk_08
Definition actor_types.h:397
s16 unk_1E
Definition actor_types.h:402
s16 flags
Definition actor_types.h:394
s16 bananaIndices[5]
Definition actor_types.h:400
f32 unk_0C
Definition actor_types.h:398
f32 unk_20[4]
Definition actor_types.h:403
Collision unk30
Definition actor_types.h:404
const char * model
Definition actor_types.h:405
s16 type
Definition actor_types.h:393
Definition common_structs.h:147
Definition actor_types.h:375
Vec3s rot
Definition actor_types.h:382
const char * model
Definition actor_types.h:389
s16 someTimer
Definition actor_types.h:378
f32 targetY
Definition actor_types.h:386
s16 flags
Definition actor_types.h:377
f32 boundingBoxSize
Definition actor_types.h:381
f32 sizeScaling
Definition actor_types.h:380
Collision unk30
Definition actor_types.h:388
f32 playerId
Definition actor_types.h:385
s16 state
Definition actor_types.h:379
s16 unk_16
Definition actor_types.h:383
s16 type
Definition actor_types.h:376
Vec3f pos
Definition actor_types.h:384
f32 unk_02C
Definition actor_types.h:387
Definition actor_types.h:189
Collision unk30
Definition actor_types.h:200
s16 respawnTimer
Definition actor_types.h:192
f32 unk_08
Definition actor_types.h:194
Vec3s rot
Definition actor_types.h:196
s16 unk_06
Definition actor_types.h:193
Vec3f pos
Definition actor_types.h:198
f32 boundingBoxSize
Definition actor_types.h:195
s16 unk_16
Definition actor_types.h:197
Vec3f velocity
Definition actor_types.h:199
s16 type
Definition actor_types.h:190
s16 flags
Definition actor_types.h:191
const char * model
Definition actor_types.h:201
Definition actor_types.h:356
s16 someTimer
Definition actor_types.h:359
s16 flags
Definition actor_types.h:358
f32 unk_028
Definition actor_types.h:369
f32 origY
Definition actor_types.h:368
f32 boundingBoxSize
Definition actor_types.h:364
s16 type
Definition actor_types.h:357
Vec3f pos
Definition actor_types.h:367
s16 state
Definition actor_types.h:360
f32 resetDistance
Definition actor_types.h:361
const char * model
Definition actor_types.h:372
Vec3s rot
Definition actor_types.h:365
f32 unk_02C
Definition actor_types.h:370
Collision unk30
Definition actor_types.h:371
s16 unk_16
Definition actor_types.h:366
Definition actor_types.h:249
f32 boundingBoxSize
Definition actor_types.h:257
Collision unk30
Definition actor_types.h:264
f32 bonkTimer
Definition actor_types.h:255
Vec3f velocity
Definition actor_types.h:263
s16 animState
Definition actor_types.h:258
s16 animTimer
Definition actor_types.h:259
s16 type
Definition actor_types.h:250
s16 unk_16
Definition actor_types.h:261
s16 unk_14
Definition actor_types.h:260
s16 flags
Definition actor_types.h:251
s16 targetPlayer
Definition actor_types.h:253
Vec3f pos
Definition actor_types.h:262
s16 state
Definition actor_types.h:254
const char * model
Definition actor_types.h:265
Definition actor_types.h:268
Vec3f pos
Definition actor_types.h:277
Vec3s boatRot
Definition actor_types.h:275
s16 unk_04
Definition actor_types.h:271
Vec3f velocity
Definition actor_types.h:278
f32 unk_0C
Definition actor_types.h:274
s16 wheelRot
Definition actor_types.h:272
s16 unk_16
Definition actor_types.h:276
f32 unk_08
Definition actor_types.h:273
s16 flags
Definition actor_types.h:270
s16 type
Definition actor_types.h:269
const char * model
Definition actor_types.h:280
Collision unk30
Definition actor_types.h:279
Definition actor_types.h:296
Vec3s rot
Definition actor_types.h:303
s16 state
Definition actor_types.h:300
s16 type
Definition actor_types.h:297
s16 unk_16
Definition actor_types.h:304
f32 unk_08
Definition actor_types.h:301
s16 variant
Definition actor_types.h:299
s16 flags
Definition actor_types.h:298
Vec3f velocity
Definition actor_types.h:306
Vec3f pos
Definition actor_types.h:305
const char * model
Definition actor_types.h:308
f32 boundingBoxSize
Definition actor_types.h:302
Collision unk30
Definition actor_types.h:307
Definition actor_types.h:283
Vec4s visibilityStates
Definition actor_types.h:286
s16 type
Definition actor_types.h:284
Collision unk30
Definition actor_types.h:292
Vec4s timers
Definition actor_types.h:290
f32 unk_02C
Definition actor_types.h:291
Vec4s unk10
Definition actor_types.h:288
const char * model
Definition actor_types.h:293
s16 flags
Definition actor_types.h:285
Vec3f pos
Definition actor_types.h:289
f32 boundingBoxSize
Definition actor_types.h:287
Definition actor_types.h:164
Vec3f velocity
Definition actor_types.h:181
s16 unk_16
Definition actor_types.h:179
s16 type
Definition actor_types.h:165
s16 flags
Definition actor_types.h:166
void * crossingTrigger
Definition actor_types.h:171
s16 crossingId
Definition actor_types.h:168
f32 unk_08
Definition actor_types.h:174
f32 boundingBoxSize
Definition actor_types.h:175
Vec3s rot
Definition actor_types.h:178
Collision unk30
Definition actor_types.h:182
Vec3f pos
Definition actor_types.h:180
s16 someTimer
Definition actor_types.h:167
const char * model
Definition actor_types.h:183
Definition actor_types.h:328
s16 rotAngle
Definition actor_types.h:344
s16 rotVelocity
Definition actor_types.h:342
s16 unk_16
Definition actor_types.h:349
s16 flags
Definition actor_types.h:330
f32 boundingBoxSize
Definition actor_types.h:341
s16 state
Definition actor_types.h:339
f32 shellId
Definition actor_types.h:340
s16 type
Definition actor_types.h:329
s16 playerId
Definition actor_types.h:348
Vec3f velocity
Definition actor_types.h:351
const char * model
Definition actor_types.h:353
s16 parentIndex
Definition actor_types.h:334
Vec3f pos
Definition actor_types.h:350
Collision unk30
Definition actor_types.h:352
s16 targetPlayer
Definition actor_types.h:337
s16 someTimer
Definition actor_types.h:335
u16 pathIndex
Definition actor_types.h:345
Definition actor_types.h:149
s16 flags
Definition actor_types.h:151
s16 unk_04
Definition actor_types.h:152
s16 unk_16
Definition actor_types.h:157
s16 wheelRot
Definition actor_types.h:153
f32 unk_0C
Definition actor_types.h:155
f32 unk_08
Definition actor_types.h:154
Vec3f pos
Definition actor_types.h:158
Vec3f velocity
Definition actor_types.h:159
s16 type
Definition actor_types.h:150
const char * model
Definition actor_types.h:161
Vec3s rot
Definition actor_types.h:156
Collision unk30
Definition actor_types.h:160
Definition actor_types.h:311
Collision unk30
Definition actor_types.h:324
s16 playerId
Definition actor_types.h:320
s16 state
Definition actor_types.h:315
s16 shellsAvailable
Definition actor_types.h:314
s16 rotVelocity
Definition actor_types.h:318
Vec3f unk_18
Definition actor_types.h:322
s16 type
Definition actor_types.h:312
s16 rotAngle
Definition actor_types.h:319
s16 unk_16
Definition actor_types.h:321
f32 firePressed
Definition actor_types.h:316
s16 flags
Definition actor_types.h:313
f32 unk_0C
Definition actor_types.h:317
const char * model
Definition actor_types.h:325
Vec3f shellIndices
Definition actor_types.h:323
Definition UnkSpawnData.h:8
Vec3s pos
Definition UnkSpawnData.h:9
s16 someId
Definition UnkSpawnData.h:11
s16 unk8
Definition UnkSpawnData.h:13
Definition actor_types.h:230
s16 unk_14
Definition actor_types.h:239
Collision unk30
Definition actor_types.h:245
s16 eggRot
Definition actor_types.h:238
const char * model
Definition actor_types.h:246
s16 type
Definition actor_types.h:231
s16 flags
Definition actor_types.h:232
Vec3f pos
Definition actor_types.h:241
f32 pathRadius
Definition actor_types.h:235
s16 unk_16
Definition actor_types.h:240
s16 unk_06
Definition actor_types.h:234
s16 unk_04
Definition actor_types.h:233
f32 boundingBoxSize
Definition actor_types.h:236
Vec3f pathCenter
Definition actor_types.h:244
s16 pathRot
Definition actor_types.h:237