Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
object_fields.h
Go to the documentation of this file.
1 #ifndef _OBJECT_FIELDS_H
2 #define _OBJECT_FIELDS_H
3 
4 
11 #define OBJECT_FIELD_U32(index) rawData.asU32[index]
12 #define OBJECT_FIELD_S32(index) rawData.asS32[index]
13 #define OBJECT_FIELD_S16(index, subIndex) rawData.asS16[index][subIndex]
14 #define OBJECT_FIELD_F32(index) rawData.asF32[index]
15 #define OBJECT_FIELD_VOIDP(index) rawData.asVoidP[index]
16 #define OBJECT_FIELD_S16P(index) rawData.asS16P[index]
17 #define OBJECT_FIELD_S32P(index) rawData.asS32P[index]
18 #define OBJECT_FIELD_ANIMS(index) rawData.asAnims[index]
19 #define OBJECT_FIELD_WAYPOINT(index) rawData.asWaypoint[index]
20 #define OBJECT_FIELD_CHAIN_SEGMENT(index) rawData.asChainSegment[index]
21 #define OBJECT_FIELD_OBJECT(index) rawData.asObject[index]
22 #define OBJECT_FIELD_SURFACE(index) rawData.asSurface[index]
23 #define OBJECT_FIELD_VPTR(index) rawData.asVoidPtr[index]
24 #define OBJECT_FIELD_OBJ(index) rawData.asObjPtr[index]
25 
26 // 0x088 (0x00), the first field, is object-specific and defined below the common fields.
27 /* Common fields */
28 #define /*0x08C*/ oFlags OBJECT_FIELD_U32(0x01)
29 #define /*0x090*/ oDialogResponse OBJECT_FIELD_S16(0x02, 0)
30 #define /*0x092*/ oDialogState OBJECT_FIELD_S16(0x02, 1)
31 #define /*0x09C*/ oIntangibleTimer OBJECT_FIELD_S32(0x05)
32 #define /*0x0A0*/ O_POS_INDEX 0x06
33 #define /*0x0A0*/ oPosX OBJECT_FIELD_F32(O_POS_INDEX + 0)
34 #define /*0x0A4*/ oPosY OBJECT_FIELD_F32(O_POS_INDEX + 1)
35 #define /*0x0A8*/ oPosZ OBJECT_FIELD_F32(O_POS_INDEX + 2)
36 #define /*0x0AC*/ oVelX OBJECT_FIELD_F32(0x09)
37 #define /*0x0B0*/ oVelY OBJECT_FIELD_F32(0x0A)
38 #define /*0x0B4*/ oVelZ OBJECT_FIELD_F32(0x0B)
39 #define /*0x0B8*/ oForwardVel OBJECT_FIELD_F32(0x0C)
40 #define /*0x0B8*/ oForwardVel2 OBJECT_FIELD_S32(0x0C)
41 #define /*0x0BC*/ oUnkBC OBJECT_FIELD_F32(0x0D)
42 #define /*0x0C0*/ oUnkC0 OBJECT_FIELD_F32(0x0E)
43 #define /*0x0C4*/ O_MOVE_ANGLE_INDEX 0x0F
44 #define /*0x0C4*/ O_MOVE_ANGLE_PITCH_INDEX (O_MOVE_ANGLE_INDEX + 0)
45 #define /*0x0C4*/ O_MOVE_ANGLE_YAW_INDEX (O_MOVE_ANGLE_INDEX + 1)
46 #define /*0x0C4*/ O_MOVE_ANGLE_ROLL_INDEX (O_MOVE_ANGLE_INDEX + 2)
47 #define /*0x0C4*/ oMoveAnglePitch OBJECT_FIELD_S32(O_MOVE_ANGLE_PITCH_INDEX)
48 #define /*0x0C8*/ oMoveAngleYaw OBJECT_FIELD_S32(O_MOVE_ANGLE_YAW_INDEX)
49 #define /*0x0CC*/ oMoveAngleRoll OBJECT_FIELD_S32(O_MOVE_ANGLE_ROLL_INDEX)
50 #define /*0x0D0*/ O_FACE_ANGLE_INDEX 0x12
51 #define /*0x0C4*/ O_FACE_ANGLE_PITCH_INDEX (O_FACE_ANGLE_INDEX + 0)
52 #define /*0x0C4*/ O_FACE_ANGLE_YAW_INDEX (O_FACE_ANGLE_INDEX + 1)
53 #define /*0x0C4*/ O_FACE_ANGLE_ROLL_INDEX (O_FACE_ANGLE_INDEX + 2)
54 #define /*0x0D0*/ oFaceAnglePitch OBJECT_FIELD_S32(O_FACE_ANGLE_PITCH_INDEX)
55 #define /*0x0D4*/ oFaceAngleYaw OBJECT_FIELD_S32(O_FACE_ANGLE_YAW_INDEX)
56 #define /*0x0D8*/ oFaceAngleRoll OBJECT_FIELD_S32(O_FACE_ANGLE_ROLL_INDEX)
57 #define /*0x0DC*/ oGraphYOffset OBJECT_FIELD_F32(0x15)
58 #define /*0x0E0*/ oActiveParticleFlags OBJECT_FIELD_U32(0x16)
59 #define /*0x0E4*/ oGravity OBJECT_FIELD_F32(0x17)
60 #define /*0x0E8*/ oFloorHeight OBJECT_FIELD_F32(0x18)
61 #define /*0x0EC*/ oMoveFlags OBJECT_FIELD_U32(0x19)
62 #define /*0x0F0*/ oAnimState OBJECT_FIELD_S32(0x1A)
63 // 0x0F4-0x110 (0x1B-0x22) are object specific and defined below the common fields.
64 #define /*0x114*/ oAngleVelPitch OBJECT_FIELD_S32(0x23)
65 #define /*0x118*/ oAngleVelYaw OBJECT_FIELD_S32(0x24)
66 #define /*0x11C*/ oAngleVelRoll OBJECT_FIELD_S32(0x25)
67 #define /*0x120*/ oAnimations OBJECT_FIELD_ANIMS(0x26)
68 #define /*0x124*/ oHeldState OBJECT_FIELD_U32(0x27)
69 #define /*0x128*/ oWallHitboxRadius OBJECT_FIELD_F32(0x28)
70 #define /*0x12C*/ oDragStrength OBJECT_FIELD_F32(0x29)
71 #define /*0x130*/ oInteractType OBJECT_FIELD_U32(0x2A)
72 #define /*0x134*/ oInteractStatus OBJECT_FIELD_S32(0x2B)
73 #define /*0x138*/ O_PARENT_RELATIVE_POS_INDEX 0x2C
74 #define /*0x138*/ oParentRelativePosX OBJECT_FIELD_F32(O_PARENT_RELATIVE_POS_INDEX + 0)
75 #define /*0x13C*/ oParentRelativePosY OBJECT_FIELD_F32(O_PARENT_RELATIVE_POS_INDEX + 1)
76 #define /*0x140*/ oParentRelativePosZ OBJECT_FIELD_F32(O_PARENT_RELATIVE_POS_INDEX + 2)
77 #define /*0x144*/ oBehParams2ndByte OBJECT_FIELD_S32(0x2F)
78 #define /*0x14C*/ oAction OBJECT_FIELD_S32(0x31)
79 #define /*0x150*/ oSubAction OBJECT_FIELD_S32(0x32)
80 #define /*0x154*/ oTimer OBJECT_FIELD_S32(0x33)
81 #define /*0x158*/ oBounce OBJECT_FIELD_F32(0x34)
82 #define /*0x15C*/ oDistanceToMario OBJECT_FIELD_F32(0x35)
83 #define /*0x15C*/ oDistanceToMarioS32 OBJECT_FIELD_S32(0x35)
84 #define /*0x160*/ oAngleToMario OBJECT_FIELD_S32(0x36)
85 #define /*0x164*/ oHomeX OBJECT_FIELD_F32(0x37)
86 #define /*0x168*/ oHomeY OBJECT_FIELD_F32(0x38)
87 #define /*0x16C*/ oHomeZ OBJECT_FIELD_F32(0x39)
88 #define /*0x170*/ oFriction OBJECT_FIELD_F32(0x3A)
89 #define /*0x174*/ oBuoyancy OBJECT_FIELD_F32(0x3B)
90 #define /*0x178*/ oSoundStateID OBJECT_FIELD_S32(0x3C)
91 #define /*0x17C*/ oOpacity OBJECT_FIELD_S32(0x3D)
92 #define /*0x180*/ oDamageOrCoinValue OBJECT_FIELD_S32(0x3E)
93 #define /*0x184*/ oHealth OBJECT_FIELD_S32(0x3F)
94 #define /*0x188*/ oBehParams OBJECT_FIELD_S32(0x40)
95 #define /*0x18C*/ oPrevAction OBJECT_FIELD_S32(0x41)
96 #define /*0x190*/ oUnk190 OBJECT_FIELD_U32(0x42)
97 #define /*0x194*/ oCollisionDistance OBJECT_FIELD_F32(0x43)
98 #define /*0x198*/ oNumLootCoins OBJECT_FIELD_S32(0x44)
99 #define /*0x19C*/ oDrawingDistance OBJECT_FIELD_F32(0x45)
100 #define /*0x1A0*/ oRoom OBJECT_FIELD_S32(0x46)
101 // another object specific range, anim related
102 #define /*0x1A8*/ oUnk1A8 OBJECT_FIELD_U32(0x48)
103 #define /*0x1AC*/ oUnk1AC_VPTR OBJECT_FIELD_VPTR(0x49)
104 #define /*0x1AC*/ oUnk1AC_S32 OBJECT_FIELD_S32(0x49)
105 #define /*0x1AC*/ oUnk1AC_F32 OBJECT_FIELD_F32(0x49)
106 #define /*0x1AC*/ oMipsForwardVelocity OBJECT_FIELD_F32(0x49)
107 #define /*0x1AC*/ oUnk1AC_S16 OBJECT_FIELD_S16(0x49, 0)
108 #define /*0x1AE*/ oUnk1AE OBJECT_FIELD_S16(0x49, 1)
109 #define /*0x1B0*/ oUnk1B0 OBJECT_FIELD_S32(0x4A)
110 #define /*0x1B0*/ oEyesShut OBJECT_FIELD_S16(0x4A, 0)
111 #define /*0x1B0*/ oUnk1B0_S16 OBJECT_FIELD_S16(0x4A, 0)
112 #define /*0x1B2*/ oUnk1B2 OBJECT_FIELD_S16(0x4A, 1)
113 // more generic fields
114 #define /*0x1B4*/ oWallAngle OBJECT_FIELD_U32(0x4B)
115 #define /*0x1B8*/ oFloorType OBJECT_FIELD_S16(0x4C, 0)
116 #define /*0x1BA*/ oFloorRoom OBJECT_FIELD_S16(0x4C, 1)
117 #define /*0x1BC*/ oUnk1BC OBJECT_FIELD_S32(0x4D)
118 #define /*0x1C0*/ oFloor OBJECT_FIELD_SURFACE(0x4E)
119 #define /*0x1C4*/ oDeathSound OBJECT_FIELD_S32(0x4F)
120 
121 /* All uses of these should be removed as soon as object type is known */
122 #define /*0x088*/ oUnknownUnk88 OBJECT_FIELD_S32(0x00)
123 #define /*0x0F4*/ oUnknownUnkF4_S32 OBJECT_FIELD_S32(0x1B)
124 #define /*0x0F4*/ oUnknownUnkF4_F32 OBJECT_FIELD_F32(0x1B)
125 #define /*0x0FC*/ oUnknownUnkFC_VPtr OBJECT_FIELD_VPTR(0x1D)
126 #define /*0x100*/ oUnknownUnk100_VPtr OBJECT_FIELD_VPTR(0x1E)
127 #define /*0x104*/ oUnknownUnk104_S32 OBJECT_FIELD_S32(0x1F)
128 #define /*0x0F8*/ oUnknownUnkF8_S32 OBJECT_FIELD_S32(0x1C)
129 #define /*0x0F8*/ oUnknownUnkF8_F32 OBJECT_FIELD_F32(0x1C)
130 #define /*0x0FC*/ oUnknownUnkFC_S32 OBJECT_FIELD_S32(0x1D)
131 #define /*0x0FC*/ oUnknownUnkFC_F32 OBJECT_FIELD_F32(0x1D)
132 #define /*0x0FC*/ oUnknownUnkFC_VOIDP OBJECT_FIELD_VOIDP(0x1D)
133 #define /*0x100*/ oUnknownUnk100_S32 OBJECT_FIELD_S32(0x1E)
134 #define /*0x104*/ oUnknownUnk104_F32 OBJECT_FIELD_F32(0x1F)
135 #define /*0x108*/ oUnknownUnk108_S32 OBJECT_FIELD_S32(0x20)
136 #define /*0x108*/ oUnknownUnk108_F32 OBJECT_FIELD_F32(0x20)
137 #define /*0x10C*/ oUnknownUnk10C_S32 OBJECT_FIELD_S32(0x21)
138 #define /*0x10C*/ oUnknownUnk10C_F32 OBJECT_FIELD_F32(0x21)
139 #define /*0x110*/ oUnknownUnk110_S32 OBJECT_FIELD_S32(0x22)
140 #define /*0x110*/ oUnknownUnk110_F32 OBJECT_FIELD_F32(0x22)
141 #define /*0x110*/ oUnknownUnk110_S32 OBJECT_FIELD_S32(0x22)
142 
143 /* Pathed (see obj_follow_path) */
144 #define /*0x0FC*/ oPathedStartWaypoint OBJECT_FIELD_WAYPOINT(0x1D)
145 #define /*0x100*/ oPathedPrevWaypoint OBJECT_FIELD_WAYPOINT(0x1E)
146 #define /*0x104*/ oPathedPrevWaypointFlags OBJECT_FIELD_S32(0x1F)
147 #define /*0x108*/ oPathedTargetPitch OBJECT_FIELD_S32(0x20)
148 #define /*0x10C*/ oPathedTargetYaw OBJECT_FIELD_S32(0x21)
149 
150 /* Mario */
151 #define /*0x0F4*/ oMarioParticleFlags OBJECT_FIELD_S32(0x1B)
152 #define /*0x108*/ oMarioPoleUnk108 OBJECT_FIELD_S32(0x20)
153 #define /*0x108*/ oMarioReadingSignDYaw OBJECT_FIELD_S32(0x20)
154 #define /*0x10C*/ oMarioPoleYawVel OBJECT_FIELD_S32(0x21)
155 #define /*0x10C*/ oMarioCannonObjectYaw OBJECT_FIELD_S32(0x21)
156 #define /*0x10C*/ oMarioTornadoYawVel OBJECT_FIELD_S32(0x21)
157 #define /*0x10C*/ oMarioReadingSignDPosX OBJECT_FIELD_F32(0x21)
158 #define /*0x110*/ oMarioPolePos OBJECT_FIELD_F32(0x22)
159 #define /*0x110*/ oMarioCannonInputYaw OBJECT_FIELD_S32(0x22)
160 #define /*0x110*/ oMarioTornadoPosY OBJECT_FIELD_F32(0x22)
161 #define /*0x110*/ oMarioReadingSignDPosZ OBJECT_FIELD_F32(0x22)
162 #define /*0x110*/ oMarioWhirlpoolPosY OBJECT_FIELD_F32(0x22)
163 #define /*0x110*/ oMarioBurnTimer OBJECT_FIELD_S32(0x22)
164 #define /*0x110*/ oMarioLongJumpIsSlow OBJECT_FIELD_S32(0x22)
165 #define /*0x110*/ oMarioSteepJumpYaw OBJECT_FIELD_S32(0x22)
166 #define /*0x110*/ oMarioWalkingPitch OBJECT_FIELD_S32(0x22)
167 
168 /* Star selector */
169 #define /*0x0F4*/ oStarSelectorType OBJECT_FIELD_S32(0x1B)
170 #define /*0x0F8*/ oStarSelectorTimer OBJECT_FIELD_S32(0x1C)
171 #define /*0x108*/ oStarSelectorSize OBJECT_FIELD_F32(0x20)
172 
173 /* Sound effect */
174 #define /*0x0F4*/ oSoundEffectUnkF4 OBJECT_FIELD_S32(0x1B)
175 
176 /* Main menu button */
177 #define /*0x0F4*/ oMenuButtonState OBJECT_FIELD_S32(0x1B)
178 #define /*0x0F8*/ oMenuButtonTimer OBJECT_FIELD_S32(0x1C)
179 #define /*0x0FC*/ oMenuButtonOrigPosX OBJECT_FIELD_F32(0x1D)
180 #define /*0x100*/ oMenuButtonOrigPosY OBJECT_FIELD_F32(0x1E)
181 #define /*0x104*/ oMenuButtonOrigPosZ OBJECT_FIELD_F32(0x1F)
182 #define /*0x108*/ oMenuButtonScale OBJECT_FIELD_F32(0x20)
183 #define /*0x10C*/ oMenuButtonActionPhase OBJECT_FIELD_S32(0x21)
184 
185 /* Toad message */
186 #define /*0x108*/ oToadMessageDialogNum OBJECT_FIELD_U32(0x20)
187 #define /*0x10C*/ oToadMessageRecentlyTalked OBJECT_FIELD_S32(0x21)
188 #define /*0x110*/ oToadMessageState OBJECT_FIELD_S32(0x22)
189 
190 /* Sealed door star */
191 #define /*0x108*/ oUnlockDoorStarState OBJECT_FIELD_U32(0x20)
192 #define /*0x10C*/ oUnlockDoorStarTimer OBJECT_FIELD_S32(0x21)
193 #define /*0x10C*/ oUnlockDoorStarYawVel OBJECT_FIELD_S32(0x22)
194 
195 /* Bob-omb */
196 #define /*0x0F4*/ oBobombBlinkTimer OBJECT_FIELD_S32(0x1B)
197 #define /*0x0F8*/ oBobombFuseLit OBJECT_FIELD_S32(0x1C)
198 #define /*0x0FC*/ oBobombFuseTimer OBJECT_FIELD_S32(0x1D)
199 
200 /* Bob-omb Buddy */
201 #define /*0x0F4*/ oBobombBuddyBlinkTimer OBJECT_FIELD_S32(0x1B)
202 #define /*0x0F8*/ oBobombBuddyHasTalkedToMario OBJECT_FIELD_S32(0x1C)
203 #define /*0x0FC*/ oBobombBuddyRole OBJECT_FIELD_S32(0x1D)
204 #define /*0x100*/ oBobombBuddyCannonStatus OBJECT_FIELD_S32(0x1E)
205 #define /*0x108*/ oBobombBuddyPosXCopy OBJECT_FIELD_F32(0x20)
206 #define /*0x10C*/ oBobombBuddyPosYCopy OBJECT_FIELD_F32(0x21)
207 #define /*0x110*/ oBobombBuddyPosZCopy OBJECT_FIELD_F32(0x22)
208 
209 /* Whirlpool */
210 #define /*0x0F4*/ oWhirlpoolInitFacePitch OBJECT_FIELD_S32(0x1B)
211 #define /*0x0F8*/ oWhirlpoolInitFaceRoll OBJECT_FIELD_S32(0x1C)
212 
213 /* Homing Amp */
214 #define /*0x0F4*/ oHomingAmpLockedOn OBJECT_FIELD_S32(0x1B)
215 #define /*0x0FC*/ oHomingAmpAvgY OBJECT_FIELD_F32(0x1D)
216 
217 /* Amp */
218 #define /*0x0F4*/ oAmpRadiusOfRotation OBJECT_FIELD_F32(0x1B)
219 #define /*0x0F8*/ oAmpYPhase OBJECT_FIELD_S32(0x1C)
220 
221 /* Butterfly */
222 #define /*0x0F4*/ oButterflyYPhase OBJECT_FIELD_S32(0x1B)
223 
224 /* Hoot */
225 #define /*0x0F4*/ oHootAvailability OBJECT_FIELD_S32(0x1B)
226 #define /*0x110*/ oHootMarioReleaseTime OBJECT_FIELD_S32(0x22)
227 
228 /* Bob-omb Explosion Bubble */
229 #define /*0x0FC*/ oBobombExpBubGfxScaleFacX OBJECT_FIELD_S32(0x1D)
230 #define /*0x100*/ oBobombExpBubGfxScaleFacY OBJECT_FIELD_S32(0x1E)
231 #define /*0x104*/ oBobombExpBubGfxExpRateX OBJECT_FIELD_S32(0x1F)
232 #define /*0x108*/ oBobombExpBubGfxExpRateY OBJECT_FIELD_S32(0x20)
233 
234 /* Object Respawner */
235 #define /*0x0F4*/ oRespawnerModelToRespawn OBJECT_FIELD_S32(0x1B)
236 #define /*0x0F8*/ oRespawnerMinSpawnDist OBJECT_FIELD_F32(0x1C)
237 #define /*0x0FC*/ oRespawnerBehaviorToRespawn OBJECT_FIELD_VPTR(0x1D)
238 
239 /* Bully (all variants) */
240 #define /*0x0F4*/ oBullySubtype OBJECT_FIELD_S32(0x1B)
241 #define /*0x0F8*/ oBullyPrevX OBJECT_FIELD_F32(0x1C)
242 #define /*0x0FC*/ oBullyPrevY OBJECT_FIELD_F32(0x1D)
243 #define /*0x100*/ oBullyPrevZ OBJECT_FIELD_F32(0x1E)
244 #define /*0x104*/ oBullyKBTimerAndMinionKOCounter OBJECT_FIELD_S32(0x1F)
245 #define /*0x108*/ oBullyMarioCollisionAngle OBJECT_FIELD_S32(0x20)
246 
247 /* Water Ring (both variants) */
248 #define /*0x0F4*/ oWaterRingScalePhaseX OBJECT_FIELD_S32(0x1B)
249 #define /*0x0F8*/ oWaterRingScalePhaseY OBJECT_FIELD_S32(0x1C)
250 #define /*0x0FC*/ oWaterRingScalePhaseZ OBJECT_FIELD_S32(0x1D)
251 #define /*0x100*/ oWaterRingNormalX OBJECT_FIELD_F32(0x1E)
252 #define /*0x104*/ oWaterRingNormalY OBJECT_FIELD_F32(0x1F)
253 #define /*0x108*/ oWaterRingNormalZ OBJECT_FIELD_F32(0x20)
254 #define /*0x10C*/ oWaterRingMarioDistInFront OBJECT_FIELD_F32(0x21)
255 #define /*0x110*/ oWaterRingIndex OBJECT_FIELD_S32(0x22)
256 #define /*0x1AC*/ oWaterRingAvgScale OBJECT_FIELD_F32(0x49)
257 
258 /* Water Ring Spawner (Jet Stream Ring Spawner and Manta Ray) */
259 #define /*0x1AC*/ oWaterRingSpawnerRingsCollected OBJECT_FIELD_S32(0x49)
260 
261 /* Water Ring Manager (Jet Stream Ring Spawner and Manta Ray Ring Manager) */
262 #define /*0x0F4*/ oWaterRingMgrNextRingIndex OBJECT_FIELD_S32(0x1B)
263 #define /*0x0F8*/ oWaterRingMgrLastRingCollected OBJECT_FIELD_S32(0x1C)
264 
265 /* Celebration Star */
266 #define /*0x108*/ oCelebStarDiameterOfRotation OBJECT_FIELD_S32(0x20)
267 
268 /* Bomp (small) */
269 #define /*0x100*/ oSmallBompInitX OBJECT_FIELD_F32(0x1E)
270 
271 /* WF Sliding Brick Platform */
272 #define /*0x0F4*/ oWFSlidBrickPtfmMovVel OBJECT_FIELD_F32(0x1B)
273 
274 /* Moneybag */
275 #define /*0x0F4*/ oMoneybagJumpState OBJECT_FIELD_S32(0x1B)
276 
277 /* Bowling Ball */
278 #define /*0x0F4*/ oBowlingBallTargetYaw OBJECT_FIELD_S32(0x1B)
279 #define /*0x0FC*/ oBowlingBallUnkFC OBJECT_FIELD_VPTR(0x1D)
280 #define /*0x10C*/ oBowlingBallInitYaw OBJECT_FIELD_S32(0x21)
281 
282 /* Bowling Ball Spawner (Generic) */
283 #define /*0x0F4*/ oBBallSpwnrMaxSpawnDist OBJECT_FIELD_F32(0x1B)
284 #define /*0x0F8*/ oBBallSpwnrSpawnOdds OBJECT_FIELD_F32(0x1C)
285 #define /*0x0FC*/ oBBallSpwnrPeriodMinus1 OBJECT_FIELD_S32(0x1D)
286 
287 /* RR Cruiser Wing */
288 #define /*0x0F4*/ oRRCruiserWingUnkF4 OBJECT_FIELD_S32(0x1B)
289 #define /*0x0F8*/ oRRCruiserWingUnkF8 OBJECT_FIELD_S32(0x1C)
290 
291 /* MrI */
292 #define /*0x10C*/ oMrISize OBJECT_FIELD_F32(0x21)
293 
294 /* Platform */
295 #define /*0x0F4*/ oPlatformTimer OBJECT_FIELD_S32(0x1B)
296 #define /*0x0F8*/ oPlatformUnkF8 OBJECT_FIELD_OBJ(0x1C)
297 #define /*0x0FC*/ oPlatformUnkFC OBJECT_FIELD_S32(0x1D)
298 #define /*0x10C*/ oPlatformUnk10C OBJECT_FIELD_F32(0x21)
299 #define /*0x110*/ oPlatformUnk110 OBJECT_FIELD_F32(0x22)
300 
301 /* MovingFlame */
302 #define /*0x0F4*/ oMovingFlameTimer OBJECT_FIELD_S32(0x1B)
303 
304 /* FlameThrowerFlame */
305 #define /*0x110*/ oFlameThowerFlameUnk110 OBJECT_FIELD_S32(0x22)
306 
307 /* FlameThrower */
308 #define /*0x110*/ oFlameThowerUnk110 OBJECT_FIELD_S32(0x22)
309 
310 /* BouncingFireBall */
311 #define /*0x0F4*/ oBouncingFireBallUnkF4 OBJECT_FIELD_S32(0x1B)
312 
313 /* BowserShockWave */
314 #define /*0x0F4*/ oBowserShockWaveUnkF4 OBJECT_FIELD_F32(0x1B)
315 
316 /* BlackSmokeBowser */
317 #define /*0x0F4*/ oBlackSmokeBowserUnkF4 OBJECT_FIELD_F32(0x1B)
318 
319 /* PlatformSpawner */
320 #define /*0x0F4*/ oPlatformSpawnerUnkF4 OBJECT_FIELD_S32(0x1B)
321 #define /*0x0F8*/ oPlatformSpawnerUnkF8 OBJECT_FIELD_S32(0x1C)
322 #define /*0x0FC*/ oPlatformSpawnerUnkFC OBJECT_FIELD_S32(0x1D)
323 #define /*0x100*/ oPlatformSpawnerUnk100 OBJECT_FIELD_F32(0x1E)
324 #define /*0x104*/ oPlatformSpawnerUnk104 OBJECT_FIELD_F32(0x1F)
325 #define /*0x108*/ oPlatformSpawnerUnk108 OBJECT_FIELD_F32(0x20)
326 
327 /* TreeSnowOrLeaf */
328 #define /*0x0F4*/ oTreeSnowOrLeafUnkF4 OBJECT_FIELD_S32(0x1B)
329 #define /*0x0F8*/ oTreeSnowOrLeafUnkF8 OBJECT_FIELD_S32(0x1C)
330 #define /*0x0FC*/ oTreeSnowOrLeafUnkFC OBJECT_FIELD_S32(0x1D)
331 
332 /* HiddenObject */
333 #define /*0x0F4*/ oHiddenObjectUnkF4 OBJECT_FIELD_OBJ(0x1B)
334 
335 /* HeaveHo */
336 #define /*0x0F4*/ oHeaveHoUnkF4 OBJECT_FIELD_F32(0x1B)
337 
338 /* BetaTrampoline */
339 #define /*0x110*/ oBetaTrampolineMarioOnTrampoline OBJECT_FIELD_S32(0x22)
340 
341 /* JumpingBox */
342 #define /*0x0F4*/ oJumpingBoxUnkF4 OBJECT_FIELD_S32(0x1B)
343 #define /*0x0F8*/ oJumpingBoxUnkF8 OBJECT_FIELD_S32(0x1C)
344 
345 /* GrandStar */
346 #define /*0x108*/ oGrandStarUnk108 OBJECT_FIELD_S32(0x20)
347 
348 /* BulletBill */
349 #define /*0x0F8*/ oBulletBillUnkF8 OBJECT_FIELD_S32(0x1C)
350 
351 /* Bowser */
352 #define /*0x0F4*/ oBowserUnkF4 OBJECT_FIELD_S32(0x1B)
353 #define /*0x0F8*/ oBowserUnkF8 OBJECT_FIELD_S32(0x1C)
354 #define /*0x0FC*/ oBowserDistToCentre OBJECT_FIELD_F32(0x1D)
355 #define /*0x106*/ oBowserUnk106 OBJECT_FIELD_S16(0x1F, 1)
356 #define /*0x108*/ oBowserUnk108 OBJECT_FIELD_S16(0x20, 0)
357 #define /*0x10A*/ oBowserHeldAnglePitch OBJECT_FIELD_S16(0x20, 1)
358 #define /*0x10D*/ oBowserHeldAngleVelYaw OBJECT_FIELD_S16(0x21, 0)
359 #define /*0x10E*/ oBowserUnk10E OBJECT_FIELD_S16(0x21, 1)
360 #define /*0x110*/ oBowserUnk110 OBJECT_FIELD_S16(0x22, 0)
361 #define /*0x112*/ oBowserAngleToCentre OBJECT_FIELD_S16(0x22, 1)
362 
363 /* Flame */
364 #define /*0x0F4*/ oFlameUnkF4 OBJECT_FIELD_F32(0x1B)
365 #define /*0x0F8*/ oFlameUnkF8 OBJECT_FIELD_S32(0x1C)
366 #define /*0x0FC*/ oFlameUnkFC OBJECT_FIELD_F32(0x1D)
367 #define /*0x100*/ oFlameUnk100 OBJECT_FIELD_OBJ(0x1E)
368 
369 /* BlueFlame */
370 #define /*0x0F8*/ oBlueFlameUnkF8 OBJECT_FIELD_F32(0x1C)
371 
372 /* BlueFish */
373 #define /*0x0F4*/ oBlueFishUnkF4 OBJECT_FIELD_F32(0x1B)
374 #define /*0x0F8*/ oBlueFishUnkF8 OBJECT_FIELD_S32(0x1C)
375 #define /*0x100*/ oBlueFishUnk100 OBJECT_FIELD_F32(0x1E)
376 
377 /* CheckerboardPlatform */
378 #define /*0x0F8*/ oCheckerBoardPlatformUnkF8 OBJECT_FIELD_S32(0x1C) // oAction like
379 #define /*0x0FC*/ oCheckerBoardPlatformUnkFC OBJECT_FIELD_S32(0x1D)
380 
381 /* WaterLevelPillar */
382 #define /*0x0F8*/ oWaterLevelPillarUnkF8 OBJECT_FIELD_S32(0x1C) // boolean?
383 
384 /* BowserKeyUnlockDoor */
385 #define /*0x0F4*/ oBowserKeyUnlockDoorScale OBJECT_FIELD_F32(0x1B)
386 
387 /* bhvBowserKeyCourseExit */
388 #define /*0x0F4*/ oBowserKeyCourseExitScale OBJECT_FIELD_F32(0x1B)
389 
390 /* UkikiOpenCage */
391 #define /*0x0F4*/ oUkikiOpenCageUnkF4 OBJECT_FIELD_S16(0x1B, 0)
392 #define /*0x0F6*/ oUkikiOpenCageUnkF6 OBJECT_FIELD_S16(0x1B, 1)
393 #define /*0x0FC*/ oUkikiOpenCageUnkFC OBJECT_FIELD_VPTR(0x1D)
394 #define /*0x10C*/ oUkikiOpenCageUnk10C OBJECT_FIELD_S32(0x21)
395 #define /*0x110*/ oUkikiOpenCageUnk110 OBJECT_FIELD_F32(0x22)
396 
397 /* HorizontalMovement */
398 #define /*0x0F4*/ oHorizontalMovementUnkF4 OBJECT_FIELD_S32(0x1B)
399 #define /*0x0F8*/ oHorizontalMovementUnkF8 OBJECT_FIELD_S32(0x1C)
400 #define /*0x100*/ oHorizontalMovementUnk100 OBJECT_FIELD_F32(0x1E)
401 #define /*0x104*/ oHorizontalMovementUnk104 OBJECT_FIELD_S32(0x1F)
402 #define /*0x108*/ oHorizontalMovementUnk108 OBJECT_FIELD_F32(0x20)
403 
404 /* SinkWhenSteppedOn */
405 #define /*0x104*/ oSinkWhenSteppedOnUnk104 OBJECT_FIELD_S32(0x1F)
406 #define /*0x108*/ oSinkWhenSteppedOnUnk108 OBJECT_FIELD_F32(0x20)
407 
408 /* BehLllRotatingHexFlame */
409 #define /*0x0F4*/ oLllRotatingHexFlameUnkF4 OBJECT_FIELD_F32(0x1B)
410 #define /*0x0F8*/ oLllRotatingHexFlameUnkF8 OBJECT_FIELD_F32(0x1C)
411 #define /*0x0FC*/ oLllRotatingHexFlameUnkFC OBJECT_FIELD_F32(0x1D)
412 
413 /* LllWoodPiece */
414 #define /*0x0F4*/ oLllWoodPieceUnkF4 OBJECT_FIELD_S32(0x1B)
415 
416 /* TiltingPlatform */
417 #define /*0x0F4*/ oTiltingPlatformUnkF4 OBJECT_FIELD_F32(0x1B)
418 #define /*0x0F8*/ oTiltingPlatformUnkF8 OBJECT_FIELD_F32(0x1C)
419 #define /*0x0FC*/ oTiltingPlatformUnkFC OBJECT_FIELD_F32(0x1D)
420 #define /*0x10C*/ oTiltingPlatformUnk10C OBJECT_FIELD_S32(0x21)
421 
422 /* KoopaShellFlame */
423 #define /*0x0F4*/ oKoopaShellFlameUnkF4 OBJECT_FIELD_F32(0x1B)
424 #define /*0x0F8*/ oKoopaShellFlameUnkF8 OBJECT_FIELD_F32(0x1C)
425 
426 /* PiranhaPlant */
427 #define /*0x0F4*/ oPiranhaPlantSleepMusicState OBJECT_FIELD_S32(0x1B)
428 #define /*0x0F8*/ oPiranhaPlantScale OBJECT_FIELD_F32(0x1C)
429 
430 /* BowserPuzzle */
431 #define /*0x0F4*/ oBowserPuzzleCompletionFlags OBJECT_FIELD_S32(0x1B)
432 
433 /* BowserPuzzlePiece */
434 #define /*0x0FC*/ oBowserPuzzlePieceOffsetX OBJECT_FIELD_F32(0x1D)
435 #define /*0x100*/ oBowserPuzzlePieceOffsetY OBJECT_FIELD_F32(0x1E)
436 #define /*0x104*/ oBowserPuzzlePieceOffsetZ OBJECT_FIELD_F32(0x1F)
437 #define /*0x108*/ oBowserPuzzlePieceContinuePerformingAction OBJECT_FIELD_S32(0x20)
438 #define /*0x10C*/ oBowserPuzzlePieceActionList OBJECT_FIELD_VPTR(0x21)
439 #define /*0x110*/ oBowserPuzzlePieceNextAction OBJECT_FIELD_VPTR(0x22)
440 
441 /* SmallPenguin */
442 #define /*0x100*/ oSmallPenguinUnk100 OBJECT_FIELD_S32(0x1E) // angle?
443 #define /*0x104*/ oSmallPenguinUnk104 OBJECT_FIELD_F32(0x1F)
444 #define /*0x108*/ oSmallPenguinUnk108 OBJECT_FIELD_F32(0x20)
445 #define /*0x110*/ oSmallPenguinUnk110 OBJECT_FIELD_S32(0x22)
446 
447 /* FishGroup */
448 #define /*0x0F4*/ oFishGroupUnkF4 OBJECT_FIELD_F32(0x1B)
449 #define /*0x0F8*/ oFishGroupUnkF8 OBJECT_FIELD_F32(0x1C)
450 #define /*0x0FC*/ oFishGroupUnkFC OBJECT_FIELD_F32(0x1D)
451 #define /*0x100*/ oFishGroupUnk100 OBJECT_FIELD_S32(0x1E)
452 #define /*0x104*/ oFishGroupUnk104 OBJECT_FIELD_F32(0x1F)
453 #define /*0x108*/ oFishGroupUnk108 OBJECT_FIELD_F32(0x20)
454 #define /*0x10C*/ oFishGroupUnk10C OBJECT_FIELD_F32(0x21)
455 #define /*0x110*/ oFishGroupUnk110 OBJECT_FIELD_F32(0x22)
456 
457 /* BirdChirpChirp */
458 #define /*0x0F4*/ oBirdChirpChirpUnkF4 OBJECT_FIELD_S32(0x1B)
459 
460 /* CheepCheep */
461 #define /*0x0F4*/ oCheepCheepUnkF4 OBJECT_FIELD_F32(0x1B)
462 #define /*0x0F8*/ oCheepCheepUnkF8 OBJECT_FIELD_F32(0x1C)
463 #define /*0x0FC*/ oCheepCheepUnkFC OBJECT_FIELD_F32(0x1D)
464 #define /*0x104*/ oCheepCheepUnk104 OBJECT_FIELD_F32(0x1F)
465 #define /*0x108*/ oCheepCheepUnk108 OBJECT_FIELD_F32(0x20)
466 
467 /* ExclamationBox */
468 #define /*0x0F4*/ oExclamationBoxUnkF4 OBJECT_FIELD_F32(0x1B) // scale?
469 #define /*0x0F8*/ oExclamationBoxUnkF8 OBJECT_FIELD_F32(0x1C) // scale?
470 #define /*0x0FC*/ oExclamationBoxUnkFC OBJECT_FIELD_S32(0x1D) // angle?
471 
472 /* SushiShark */
473 #define /*0x0F4*/ oSushiSharkUnkF4 OBJECT_FIELD_S32(0x1B) // angle?
474 
475 /* ShipPart3 */
476 #define /*0x0F4*/ oShipPart3UnkF4 OBJECT_FIELD_S32(0x1B) // angle?
477 #define /*0x0F8*/ oShipPart3UnkF8 OBJECT_FIELD_S32(0x1C) // angle?
478 
479 /* JrbSlidingBox */
480 #define /*0x0F4*/ oJrbSlidingBoxUnkF4 OBJECT_FIELD_VPTR(0x1B)
481 #define /*0x0F8*/ oJrbSlidingBoxUnkF8 OBJECT_FIELD_S32(0x1C)
482 #define /*0x0FC*/ oJrbSlidingBoxUnkFC OBJECT_FIELD_F32(0x1D)
483 
484 /* HiddenBlueCoin */
485 #define /*0x0F8*/ oHiddenBlueCoinSwitch OBJECT_FIELD_VPTR(0x1C) // coin switch
486 
487 /* OpenableGrill */
488 #define /*0x0F4*/ oOpenableGrillUnkF4 OBJECT_FIELD_VPTR(0x1B)
489 
490 /* WaterLevelTrigger */
491 #define /*0x0F4*/ oWaterLevelTriggerUnkF4 OBJECT_FIELD_S32(0x1B)
492 #define /*0x0F8*/ oWaterLevelTriggerTargetWaterLevel OBJECT_FIELD_S32(0x1C)
493 
494 /* Tweester */
495 #define /*0x0F4*/ oTweesterUnkF4 OBJECT_FIELD_S32(0x1B)
496 #define /*0x0F8*/ oTweesterUnkF8 OBJECT_FIELD_S32(0x1C)
497 
498 /* HauntedBookshelf */
499 #define /*0x088*/ oHauntedBookshelfShouldOpen OBJECT_FIELD_S32(0x00)
500 
501 /* Boo */
502 #define /*0x088*/ oBooDeathStatus OBJECT_FIELD_S32(0x00)
503 #define /*0x0F4*/ oBooTargetOpacity OBJECT_FIELD_S32(0x1B)
504 #define /*0x0F8*/ oBooBaseScale OBJECT_FIELD_F32(0x1C)
505 #define /*0x0FC*/ oBooOscillationTimer OBJECT_FIELD_S32(0x1D)
506 #define /*0x100*/ oBooMoveYawAfterHit OBJECT_FIELD_S32(0x1E)
507 #define /*0x104*/ oBooUnk104 OBJECT_FIELD_F32(0x1F)
508 #define /*0x108*/ oBooParentBigBoo OBJECT_FIELD_OBJ(0x20)
509 #define /*0x10C*/ oBooUnk10C OBJECT_FIELD_F32(0x21)
510 #define /*0x110*/ oBooUnk110 OBJECT_FIELD_S32(0x22)
511 
512 /* BigBoo */
513 #define /*0x1AC*/ oBigBooNumMinionBoosKilled OBJECT_FIELD_S32(0x49)
514 
515 /* MerryGoRound */
516 #define /*0x088*/ oMerryGoRoundStopped OBJECT_FIELD_S32(0x00)
517 #define /*0x0F8*/ oMerryGoRoundMusicShouldPlay OBJECT_FIELD_S32(0x1C)
518 #define /*0x0FC*/ oMerryGoRoundMarioIsOutside OBJECT_FIELD_S32(0x1D)
519 
520 /* MerryGoRoundBooManager */
521 #define /*0x088*/ oMerryGoRoundBooManagerNumMinionBoosKilled OBJECT_FIELD_S32(0x00)
522 
523 /* Scuttlebug */
524 #define /*0x0F4*/ oScuttlebugUnkF4 OBJECT_FIELD_S32(0x1B)
525 #define /*0x0F8*/ oScuttlebugUnkF8 OBJECT_FIELD_S32(0x1C)
526 #define /*0x0FC*/ oScuttlebugUnkFC OBJECT_FIELD_S32(0x1D)
527 
528 /* ScuttlebugSpawner */
529 #define /*0x0F4*/ oScuttlebugSpawnerUnkF4 OBJECT_FIELD_S32(0x1B)
530 
531 /* Whomp */
532 #define /*0x0F8*/ oWhompUnkF8 OBJECT_FIELD_S32(0x1C)
533 
534 /* WaveTrail */
535 #define /*0x0F8*/ oWaveTrailUnkF8 OBJECT_FIELD_F32(0x1C)
536 
537 /* WhiteWindParticle */
538 #define /*0x0F4*/ oWhiteWindParticleUnkF4 OBJECT_FIELD_VPTR(0x1B)
539 
540 /* WalkingPenguin */
541 #define /*0x100*/ oWalkingPenguinUnk100 OBJECT_FIELD_F32(0x1E)
542 #define /*0x104*/ oWalkingPenguinUnk104 OBJECT_FIELD_F32(0x1F)
543 #define /*0x10C*/ oWalkingPenguinUnk10C OBJECT_FIELD_S32(0x21)
544 #define /*0x110*/ oWalkingPenguinUnk110 OBJECT_FIELD_S32(0x22)
545 
546 /* SnowmanWindBlowing */
547 #define /*0x0F4*/ oSnowmanWindBlowingUnkF4 OBJECT_FIELD_S32(0x1B)
548 
549 /* Koopa */
550 #define /*0x0F4*/ oKoopaAgility OBJECT_FIELD_F32(0x1B)
551 #define /*0x0F8*/ oKoopaMovementType OBJECT_FIELD_S32(0x1C)
552 #define /*0x0FC*/ oKoopaTargetYaw OBJECT_FIELD_S32(0x1D)
553 #define /*0x100*/ oKoopaUnshelledTimeUntilTurn OBJECT_FIELD_S32(0x1E)
554 #define /*0x104*/ oKoopaTurningAwayFromWall OBJECT_FIELD_S32(0x1F)
555 #define /*0x108*/ oKoopaDistanceToMario OBJECT_FIELD_F32(0x20)
556 #define /*0x10C*/ oKoopaAngleToMario OBJECT_FIELD_S32(0x21)
557 #define /*0x110*/ oKoopaBlinkTimer OBJECT_FIELD_S32(0x22)
558 #define /*0x1AC*/ oKoopaCountdown OBJECT_FIELD_S16(0x49, 0)
559 #define /*0x1AE*/ oKoopaTheQuickRaceIndex OBJECT_FIELD_S16(0x49, 1)
560 #define /*0x1B0*/ oKoopaTheQuickInitTextboxCooldown OBJECT_FIELD_S16(0x4A, 0)
561 // 0x1D-0x21 for koopa the quick reserved for pathing
562 
563 /* Koopa race endpoint */
564 #define /*0x0F4*/ oKoopaRaceEndpointRaceBegun OBJECT_FIELD_S32(0x1B)
565 #define /*0x0F8*/ oKoopaRaceEndpointKoopaFinished OBJECT_FIELD_S32(0x1C)
566 #define /*0x0FC*/ oKoopaRaceEndpointRaceStatus OBJECT_FIELD_S32(0x1D)
567 #define /*0x100*/ oKoopaRaceEndpointUnk100 OBJECT_FIELD_S32(0x1E)
568 #define /*0x104*/ oKoopaRaceEndpointRaceEnded OBJECT_FIELD_S32(0x1F)
569 
570 /* Pokey body part */
571 #define /*0x0F8*/ oPokeyBodyPartDeathDelayAfterHeadKilled OBJECT_FIELD_S32(0x1C)
572 #define /*0x110*/ oPokeyBodyPartBlinkTimer OBJECT_FIELD_S32(0x22)
573 
574 /* Pokey */
575 #define /*0x0F4*/ oPokeyAliveBodyPartFlags OBJECT_FIELD_U32(0x1B)
576 #define /*0x0F8*/ oPokeyNumAliveBodyParts OBJECT_FIELD_S32(0x1C)
577 #define /*0x0FC*/ oPokeyBottomBodyPartSize OBJECT_FIELD_F32(0x1D)
578 #define /*0x100*/ oPokeyHeadWasKilled OBJECT_FIELD_S32(0x1E)
579 #define /*0x104*/ oPokeyTargetYaw OBJECT_FIELD_S32(0x1F)
580 #define /*0x108*/ oPokeyChangeTargetTimer OBJECT_FIELD_S32(0x20)
581 #define /*0x10C*/ oPokeyTurningAwayFromWall OBJECT_FIELD_S32(0x21)
582 
583 /* Swoop */
584 #define /*0x0F4*/ oSwoopBonkCountdown OBJECT_FIELD_S32(0x1B)
585 #define /*0x0F8*/ oSwoopTargetPitch OBJECT_FIELD_S32(0x1C)
586 #define /*0x0FC*/ oSwoopTargetYaw OBJECT_FIELD_S32(0x1D)
587 
588 /* Fly guy */
589 #define /*0x0F4*/ oFlyGuyIdleTimer OBJECT_FIELD_S32(0x1B)
590 #define /*0x0F8*/ oFlyGuyOscTimer OBJECT_FIELD_S32(0x1C)
591 #define /*0x0FC*/ oFlyGuyUnusedJitter OBJECT_FIELD_S32(0x1D)
592 #define /*0x100*/ oFlyGuyLungeYDecel OBJECT_FIELD_F32(0x1E)
593 #define /*0x104*/ oFlyGuyLungeTargetPitch OBJECT_FIELD_S32(0x1F)
594 #define /*0x108*/ oFlyGuyTargetRoll OBJECT_FIELD_S32(0x20)
595 #define /*0x10C*/ oFlyGuyScaleVel OBJECT_FIELD_F32(0x21)
596 
597 /* Goomba */
598 #define /*0x0F4*/ oGoombaSize OBJECT_FIELD_S32(0x1B)
599 #define /*0x0F8*/ oGoombaScale OBJECT_FIELD_F32(0x1C)
600 #define /*0x0FC*/ oGoombaWalkTimer OBJECT_FIELD_S32(0x1D)
601 #define /*0x100*/ oGoombaTargetYaw OBJECT_FIELD_S32(0x1E)
602 #define /*0x104*/ oGoombaBlinkTimer OBJECT_FIELD_S32(0x1F)
603 #define /*0x108*/ oGoombaTurningAwayFromWall OBJECT_FIELD_S32(0x20)
604 #define /*0x10C*/ oGoombaRelativeSpeed OBJECT_FIELD_F32(0x21)
605 
606 /* Chain chomp */
607 #define /*0x0F4*/ oChainChompSegments OBJECT_FIELD_CHAIN_SEGMENT(0x1B)
608 #define /*0x0F8*/ oChainChompMaxDistFromPivotPerChainPart OBJECT_FIELD_F32(0x1C)
609 #define /*0x0FC*/ oChainChompMaxDistBetweenChainParts OBJECT_FIELD_F32(0x1D)
610 #define /*0x100*/ oChainChompDistToPivot OBJECT_FIELD_F32(0x1E)
611 #define /*0x104*/ oChainChompUnk104 OBJECT_FIELD_F32(0x1F)
612 #define /*0x108*/ oChainChompRestrictedByChain OBJECT_FIELD_S32(0x20)
613 #define /*0x10C*/ oChainChompTargetPitch OBJECT_FIELD_S32(0x21)
614 #define /*0x110*/ oChainChompNumLunges OBJECT_FIELD_S32(0x22)
615 #define /*0x1AC*/ oChainChompReleaseStatus OBJECT_FIELD_S32(0x49)
616 #define /*0x1B0*/ oChainChompHitGate OBJECT_FIELD_S32(0x4A)
617 
618 /* Wooden post */
619 #define /*0x0F4*/ oWoodenPostTotalMarioAngle OBJECT_FIELD_S32(0x1B)
620 #define /*0x0F8*/ oWoodenPostPrevAngleToMario OBJECT_FIELD_S32(0x1C)
621 #define /*0x0FC*/ oWoodenPostSpeedY OBJECT_FIELD_F32(0x1D)
622 #define /*0x100*/ oWoodenPostMarioPounding OBJECT_FIELD_S32(0x1E)
623 #define /*0x104*/ oWoodenPostOffsetY OBJECT_FIELD_F32(0x1F)
624 
625 /* Wiggler */
626 #define /*0x0F4*/ oWigglerFallThroughFloorsHeight OBJECT_FIELD_F32(0x1B)
627 #define /*0x0F8*/ oWigglerSegments OBJECT_FIELD_CHAIN_SEGMENT(0x1C)
628 #define /*0x0FC*/ oWigglerWalkAnimSpeed OBJECT_FIELD_F32(0x1D)
629 #define /*0x104*/ oWigglerSquishSpeed OBJECT_FIELD_F32(0x1F)
630 #define /*0x108*/ oWigglerTimeUntilRandomTurn OBJECT_FIELD_S32(0x20)
631 #define /*0x10C*/ oWigglerTargetYaw OBJECT_FIELD_S32(0x21)
632 #define /*0x110*/ oWigglerWalkAwayFromWallTimer OBJECT_FIELD_S32(0x22)
633 #define /*0x1AC*/ oWigglerUnk1AC OBJECT_FIELD_S16(0x49, 0)
634 #define /*0x1AE*/ oWigglerTextStatus OBJECT_FIELD_S16(0x49, + 1)
635 
636 /* Spiny */
637 #define /*0x0F4*/ oSpinyTimeUntilTurn OBJECT_FIELD_S32(0x1B)
638 #define /*0x0F8*/ oSpinyTargetYaw OBJECT_FIELD_S32(0x1C)
639 #define /*0x100*/ oSpinyTurningAwayFromWall OBJECT_FIELD_S32(0x1E)
640 
641 /* Evil lakitu */
642 #define /*0x0F4*/ oEnemyLakituNumSpinies OBJECT_FIELD_S32(0x1B)
643 #define /*0x0F8*/ oEnemyLakituBlinkTimer OBJECT_FIELD_S32(0x1C)
644 #define /*0x0FC*/ oEnemyLakituSpinyCooldown OBJECT_FIELD_S32(0x1D)
645 #define /*0x100*/ oEnemyLakituFaceForwardCountdown OBJECT_FIELD_S32(0x1E)
646 
647 /* Cloud */
648 #define /*0x0F4*/ oCloudCenterX OBJECT_FIELD_F32(0x1B)
649 #define /*0x0F8*/ oCloudCenterY OBJECT_FIELD_F32(0x1C)
650 #define /*0x0FC*/ oCloudBlowing OBJECT_FIELD_S32(0x1D)
651 #define /*0x100*/ oCloudGrowSpeed OBJECT_FIELD_F32(0x1E)
652 #define /*0x1AC*/ oCloudFwooshMovementRadius OBJECT_FIELD_S16(0x49, 0)
653 
654 /* Camera lakitu */
655 #define /*0x0F4*/ oCameraLakituBlinkTimer OBJECT_FIELD_S32(0x1B)
656 #define /*0x0F8*/ oCameraLakituSpeed OBJECT_FIELD_F32(0x1C)
657 #define /*0x0FC*/ oCameraLakituCircleRadius OBJECT_FIELD_F32(0x1D)
658 #define /*0x100*/ oCameraLakituFinishedDialog OBJECT_FIELD_S32(0x1E)
659 #ifndef VERSION_JP
660 #define /*0x104*/ oCameraLakituUnk104 OBJECT_FIELD_S32(0x1F)
661 #endif
662 #define /*0x1AC*/ oCameraLakituPitchVel OBJECT_FIELD_S16(0x49, 0)
663 #define /*0x1AE*/ oCameraLakituYawVel OBJECT_FIELD_S16(0x49, + 1)
664 
665 /* Monty mole hole */
666 #define /*0x0F4*/ oMontyMoleHoleCooldown OBJECT_FIELD_S32(0x1B)
667 
668 /* Monty mole */
669 #define /*0x0F4*/ oMontyMoleCurrentHole OBJECT_FIELD_OBJECT(0x1B)
670 #define /*0x0F8*/ oMontyMoleHeightRelativeToFloor OBJECT_FIELD_F32(0x1C)
671 
672 /* Platform on tracks */
673 #define /*0x088*/ oPlatformOnTrackBaseBallIndex OBJECT_FIELD_S32(0x00)
674 #define /*0x0F4*/ oPlatformOnTrackDistMovedSinceLastBall OBJECT_FIELD_F32(0x1B)
675 #define /*0x0F8*/ oPlatformOnTrackSkiLiftRollVel OBJECT_FIELD_F32(0x1C)
676 #define /*0x0FC*/ oPlatformOnTrackStartWaypoint OBJECT_FIELD_WAYPOINT(0x1D)
677 #define /*0x100*/ oPlatformOnTrackPrevWaypoint OBJECT_FIELD_WAYPOINT(0x1E)
678 #define /*0x104*/ oPlatformOnTrackPrevWaypointFlags OBJECT_FIELD_S32(0x1F)
679 #define /*0x108*/ oPlatformOnTrackPitch OBJECT_FIELD_S32(0x20)
680 #define /*0x10C*/ oPlatformOnTrackYaw OBJECT_FIELD_S32(0x21)
681 #define /*0x110*/ oPlatformOnTrackOffsetY OBJECT_FIELD_F32(0x22)
682 #define /*0x1AC*/ oPlatformOnTrackIsNotSkiLift OBJECT_FIELD_S16(0x49, 0)
683 #define /*0x1AE*/ oPlatformOnTrackIsNotHMC OBJECT_FIELD_S16(0x49, + 1)
684 #define /*0x1B0*/ oPlatformOnTrackType OBJECT_FIELD_S16(0x4A, 0)
685 #define /*0x1B2*/ oPlatformOnTrackWasStoodOn OBJECT_FIELD_S16(0x4A, + 1)
686 
687 /* Seesaw platform */
688 #define /*0x0F4*/ oSeesawPlatformPitchVel OBJECT_FIELD_F32(0x1B)
689 
690 /* Water bomb spawner */
691 #define /*0x0F4*/ oWaterBombSpawnerBombActive OBJECT_FIELD_S32(0x1B)
692 #define /*0x0F8*/ oWaterBombSpawnerTimeToSpawn OBJECT_FIELD_S32(0x1C)
693 
694 /* Water bomb */
695 #define /*0x0F8*/ oWaterBombVerticalStretch OBJECT_FIELD_F32(0x1C)
696 #define /*0x0FC*/ oWaterBombStretchSpeed OBJECT_FIELD_F32(0x1D)
697 #define /*0x100*/ oWaterBombOnGround OBJECT_FIELD_S32(0x1E)
698 #define /*0x104*/ oWaterBombNumBounces OBJECT_FIELD_F32(0x1F)
699 
700 /* TTC rotating solid */
701 #define /*0x0F4*/ oTTCRotatingSolidNumTurns OBJECT_FIELD_S32(0x1B)
702 #define /*0x0F8*/ oTTCRotatingSolidNumSides OBJECT_FIELD_S32(0x1C)
703 #define /*0x0FC*/ oTTCRotatingSolidRotationDelay OBJECT_FIELD_S32(0x1D)
704 #define /*0x100*/ oTTCRotatingSolidVelY OBJECT_FIELD_F32(0x1E)
705 #define /*0x104*/ oTTCRotatingSolidSoundTimer OBJECT_FIELD_S32(0x1F)
706 
707 /* TTC pendulum */
708 #define /*0x0F4*/ oTTCPendulumAccelDir OBJECT_FIELD_F32(0x1B)
709 #define /*0x0F8*/ oTTCPendulumAngle OBJECT_FIELD_F32(0x1C)
710 #define /*0x0FC*/ oTTCPendulumAngleVel OBJECT_FIELD_F32(0x1D)
711 #define /*0x100*/ oTTCPendulumAngleAccel OBJECT_FIELD_F32(0x1E)
712 #define /*0x104*/ oTTCPendulumDelay OBJECT_FIELD_S32(0x1F)
713 #define /*0x108*/ oTTCPendulumSoundTimer OBJECT_FIELD_S32(0x20)
714 
715 /* TTC treadmill */
716 #define /*0x0F4*/ oTTCTreadmillBigSurface OBJECT_FIELD_S16P(0x1B)
717 #define /*0x0F8*/ oTTCTreadmillSmallSurface OBJECT_FIELD_S16P(0x1C)
718 #define /*0x0FC*/ oTTCTreadmillSpeed OBJECT_FIELD_F32(0x1D)
719 #define /*0x100*/ oTTCTreadmillTargetSpeed OBJECT_FIELD_F32(0x1E)
720 #define /*0x104*/ oTTCTreadmillTimeUntilSwitch OBJECT_FIELD_S32(0x1F)
721 
722 /* TTC moving bar */
723 #define /*0x0F4*/ oTTCMovingBarDelay OBJECT_FIELD_S32(0x1B)
724 #define /*0x0F8*/ oTTCMovingBarStoppedTimer OBJECT_FIELD_S32(0x1C)
725 #define /*0x0FC*/ oTTCMovingBarOffset OBJECT_FIELD_F32(0x1D)
726 #define /*0x100*/ oTTCMovingBarSpeed OBJECT_FIELD_F32(0x1E)
727 #define /*0x104*/ oTTCMovingBarStartOffset OBJECT_FIELD_F32(0x1F)
728 
729 /* TTC cog */
730 #define /*0x0F4*/ oTTCCogDir OBJECT_FIELD_F32(0x1B)
731 #define /*0x0F8*/ oTTCCogSpeed OBJECT_FIELD_F32(0x1C)
732 #define /*0x0FC*/ oTTCCogTargetVel OBJECT_FIELD_F32(0x1D)
733 
734 /* TTC pit block */
735 #define /*0x0F4*/ oTTCPitBlockPeakY OBJECT_FIELD_F32(0x1B)
736 #define /*0x0F8*/ oTTCPitBlockDir OBJECT_FIELD_S32(0x1C)
737 #define /*0x0FC*/ oTTCPitBlockWaitTime OBJECT_FIELD_S32(0x1D)
738 
739 /* TTC elevator */
740 #define /*0x0F4*/ oTTCElevatorDir OBJECT_FIELD_F32(0x1B)
741 #define /*0x0F8*/ oTTCElevatorPeakY OBJECT_FIELD_F32(0x1C)
742 #define /*0x0FC*/ oTTCElevatorMoveTime OBJECT_FIELD_S32(0x1D)
743 
744 /* TTC 2D rotator */
745 #define /*0x0F4*/ oTTC2DRotatorMinTimeUntilNextTurn OBJECT_FIELD_S32(0x1B)
746 #define /*0x0F8*/ oTTC2DRotatorTargetYaw OBJECT_FIELD_S32(0x1C)
747 #define /*0x0FC*/ oTTC2DRotatorIncrement OBJECT_FIELD_S32(0x1D)
748 #define /*0x104*/ oTTC2DRotatorRandomDirTimer OBJECT_FIELD_S32(0x1F)
749 #define /*0x108*/ oTTC2DRotatorSpeed OBJECT_FIELD_S32(0x20)
750 
751 /* TTC spinner */
752 #define /*0x0F4*/ oTTCSpinnerDir OBJECT_FIELD_S32(0x1B)
753 #define /*0x0F8*/ oTTCChangeDirTimer OBJECT_FIELD_S32(0x1C)
754 
755 /* Mr. Blizzard */
756 #define /*0x0F4*/ oMrBlizzardUnkF4 OBJECT_FIELD_F32(0x1B)
757 #define /*0x0F8*/ oMrBlizzardUnkF8 OBJECT_FIELD_OBJECT(0x1C)
758 #define /*0x0FC*/ oMrBlizzardUnkFC OBJECT_FIELD_F32(0x1D)
759 #define /*0x100*/ oMrBlizzardUnk100 OBJECT_FIELD_S32(0x1E)
760 #define /*0x104*/ oMrBlizzardUnk104 OBJECT_FIELD_F32(0x1F)
761 #define /*0x108*/ oMrBlizzardUnk108 OBJECT_FIELD_F32(0x20)
762 #define /*0x10C*/ oMrBlizzardUnk10C OBJECT_FIELD_F32(0x21)
763 #define /*0x110*/ oMrBlizzardUnk110 OBJECT_FIELD_S32(0x22)
764 #define /*0x1AC*/ oMrBlizzardUnk1AC OBJECT_FIELD_S32(0x49)
765 
766 /* Back-and-forth platform */
767 #define /*0x0F4*/ oBackAndForthPlatformUnkF4 OBJECT_FIELD_F32(0x1B)
768 #define /*0x0F8*/ oBackAndForthPlatformUnkF8 OBJECT_FIELD_F32(0x1C)
769 #define /*0x0FC*/ oBackAndForthPlatformUnkFC OBJECT_FIELD_F32(0x1D)
770 #define /*0x100*/ oBackAndForthPlatformUnk100 OBJECT_FIELD_F32(0x1E)
771 
772 // rename
773 /* Floor switch press animation */
774 #define /*0x0F4*/ oFloorSwitchPressAnimationUnkF4 OBJECT_FIELD_S32(0x1B)
775 #define /*0x0F8*/ oFloorSwitchPressAnimationUnkF8 OBJECT_FIELD_S32(0x1C)
776 #define /*0x0FC*/ oFloorSwitchPressAnimationUnkFC OBJECT_FIELD_S32(0x1D)
777 #define /*0x100*/ oFloorSwitchPressAnimationUnk100 OBJECT_FIELD_S32(0x1E)
778 
779 /* Activated back and forth platform */
780 #define /*0x0F4*/ oActivatedBackAndForthPlatformMaxOffset OBJECT_FIELD_F32(0x1B)
781 #define /*0x0F8*/ oActivatedBackAndForthPlatformOffset OBJECT_FIELD_F32(0x1C)
782 #define /*0x0FC*/ oActivatedBackAndForthPlatformVel OBJECT_FIELD_F32(0x1D)
783 #define /*0x100*/ oActivatedBackAndForthPlatformCountdown OBJECT_FIELD_S32(0x1E)
784 #define /*0x104*/ oActivatedBackAndForthPlatformStartYaw OBJECT_FIELD_S32(0x1F)
785 #define /*0x108*/ oActivatedBackAndForthPlatformVertical OBJECT_FIELD_S32(0x20)
786 #define /*0x10C*/ oActivatedBackAndForthPlatformFlipRotation OBJECT_FIELD_S32(0x21)
787 
788 /* Spinning heart */
789 #define /*0x0F4*/ oSpinningHeartTotalSpin OBJECT_FIELD_S32(0x1B)
790 #define /*0x0F8*/ oSpinningHeartPlayedSound OBJECT_FIELD_S32(0x1C)
791 
792 // check name
793 /* Cannon barrel bubbles */
794 #define /*0x0F4*/ oCannonBarrelBubblesUnkF4 OBJECT_FIELD_F32(0x1B)
795 
796 /* Cannon */
797 #define /*0x0F4*/ oCannonUnkF4 OBJECT_FIELD_S32(0x1B)
798 #define /*0x0F8*/ oCannonUnkF8 OBJECT_FIELD_S32(0x1C)
799 #define /*0x0FC*/ oCannonUnkFC OBJECT_FIELD_S32(0x1D)
800 #define /*0x100*/ oCannonUnk100 OBJECT_FIELD_S32(0x1E)
801 
802 /* Eel */
803 #define /*0x0F4*/ oUnagiUnkF4 OBJECT_FIELD_F32(0x1B)
804 #define /*0x0F8*/ oUnagiUnkF8 OBJECT_FIELD_F32(0x1C)
805 #define /*0x0FC*/ oUnagiUnkFC OBJECT_FIELD_S16P(0x1D)
806 #define /*0x100*/ oUnagiUnk100 OBJECT_FIELD_S16P(0x1E)
807 #define /*0x104*/ oUnagiUnk104 OBJECT_FIELD_S32(0x1F)
808 #define /*0x108*/ oUnagiUnk108 OBJECT_FIELD_S32(0x20)
809 #define /*0x10C*/ oUnagiUnk10C OBJECT_FIELD_S32(0x21)
810 #define /*0x110*/ oUnagiUnk110 OBJECT_FIELD_F32(0x22)
811 #define /*0x1B0*/ oUnagiUnk1AC OBJECT_FIELD_F32(0x49)
812 #define /*0x1B0*/ oUnagiUnk1B0 OBJECT_FIELD_S16(0x4A, 0)
813 #define /*0x1B2*/ oUnagiUnk1B2 OBJECT_FIELD_S16(0x4A, + 1)
814 
815 /* Dorrie */
816 #define /*0x0F4*/ oDorrieDistToHome OBJECT_FIELD_F32(0x1B)
817 #define /*0x0F8*/ oDorrieOffsetY OBJECT_FIELD_F32(0x1C)
818 #define /*0x0FC*/ oDorrieVelY OBJECT_FIELD_F32(0x1D)
819 #define /*0x100*/ oDorrieForwardDistToMario OBJECT_FIELD_F32(0x1E)
820 #define /*0x104*/ oDorrieYawVel OBJECT_FIELD_S32(0x1F)
821 #define /*0x10C*/ oDorrieLiftingMario OBJECT_FIELD_S32(0x21)
822 #define /*0x1AC*/ oDorrieGroundPounded OBJECT_FIELD_S16(0x49, 0)
823 #define /*0x1AE*/ oDorrieAngleToHome OBJECT_FIELD_S16(0x49, + 1)
824 #define /*0x1B0*/ oDorrieNeckAngle OBJECT_FIELD_S16(0x4A, 0)
825 #define /*0x1B2*/ oDorrieHeadRaiseSpeed OBJECT_FIELD_S16(0x4A, + 1)
826 
827 /* Haunted chair */
828 #define /*0x0F4*/ oHauntedChairUnkF4 OBJECT_FIELD_S32(0x1B)
829 #define /*0x0F8*/ oHauntedChairUnkF8 OBJECT_FIELD_F32(0x1C)
830 #define /*0x0FC*/ oHauntedChairUnkFC OBJECT_FIELD_F32(0x1D)
831 #define /*0x100*/ oHauntedChairUnk100 OBJECT_FIELD_S32P(0x1E)
832 #define /*0x104*/ oHauntedChairUnk104 OBJECT_FIELD_S32(0x1F)
833 
834 /* Bookend */
835 #define /*0x0F4*/ oBookendUnkF4 OBJECT_FIELD_S32(0x1B)
836 #define /*0x0F8*/ oBookendUnkF8 OBJECT_FIELD_S32(0x1C)
837 
838 /* Book switch manager */
839 #define /*0x0F4*/ oBookSwitchManagerUnkF4 OBJECT_FIELD_S32(0x1B)
840 #define /*0x0F8*/ oBookSwitchManagerUnkF8 OBJECT_FIELD_S32(0x1C)
841 
842 /* Book switch */
843 #define /*0x0F4*/ oBookSwitchUnkF4 OBJECT_FIELD_F32(0x1B)
844 
845 /* Fire piranha plant */
846 #define /*0x0F4*/ oFirePiranhaPlantNeutralScale OBJECT_FIELD_F32(0x1B)
847 #define /*0x0F8*/ oFirePiranhaPlantScale OBJECT_FIELD_F32(0x1C)
848 #define /*0x0FC*/ oFirePiranhaPlantActive OBJECT_FIELD_S32(0x1D)
849 #define /*0x100*/ oFirePiranhaPlantDeathSpinTimer OBJECT_FIELD_S32(0x1E)
850 #define /*0x104*/ oFirePiranhaPlantDeathSpinVel OBJECT_FIELD_F32(0x1F)
851 
852 // Rename
853 /* Small piranha flame */
854 #define /*0x0F4*/ oSmallPiranhaFlameUnkF4 OBJECT_FIELD_F32(0x1B)
855 #define /*0x0F8*/ oSmallPiranhaFlameUnkF8 OBJECT_FIELD_F32(0x1C)
856 #define /*0x0FC*/ oSmallPiranhaFlameUnkFC OBJECT_FIELD_S32(0x1D)
857 #define /*0x100*/ oSmallPiranhaFlameUnk100 OBJECT_FIELD_S32(0x1E)
858 #define /*0x104*/ oSmallPiranhaFlameUnk104 OBJECT_FIELD_F32(0x1F)
859 
860 /* Fire spitter */
861 #define /*0x0F4*/ oFireSpitterScaleVel OBJECT_FIELD_F32(0x1B)
862 
863 /* Snufit */
864 #define /*0x0F4*/ oSnufitUnkF4 OBJECT_FIELD_S32(0x1B)
865 #define /*0x0F8*/ oSnufitUnkF8 OBJECT_FIELD_F32(0x1C)
866 #define /*0x100*/ oSnufitUnk100 OBJECT_FIELD_S32(0x1E)
867 #define /*0x104*/ oSnufitUnk104 OBJECT_FIELD_S32(0x1F)
868 #define /*0x108*/ oSnufitUnk108 OBJECT_FIELD_S32(0x20)
869 #define /*0x10C*/ oSnufitUnk10C OBJECT_FIELD_S32(0x21)
870 #define /*0x1AE*/ oSnufitUnk1AE OBJECT_FIELD_S16(0x49, + 1)
871 #define /*0x1B0*/ oSnufitUnk1B0 OBJECT_FIELD_S16(0x4A, 0)
872 #define /*0x1B2*/ oSnufitUnk1B2 OBJECT_FIELD_S16(0x4A, + 1)
873 
874 /* Horizontal grindel */
875 #define /*0x0F4*/ oHorizontalGrindelTargetYaw OBJECT_FIELD_S32(0x1B)
876 #define /*0x0F8*/ oHorizontalGrindelDistToHome OBJECT_FIELD_F32(0x1C)
877 #define /*0x0FC*/ oHorizontalGrindelOnGround OBJECT_FIELD_S32(0x1D)
878 
879 /* Eyerok boss */
880 #define /*0x0F8*/ oEyerokBossNumHands OBJECT_FIELD_S32(0x1C)
881 #define /*0x0FC*/ oEyerokBossUnkFC OBJECT_FIELD_S32(0x1D)
882 #define /*0x100*/ oEyerokBossActiveHand OBJECT_FIELD_S32(0x1E)
883 #define /*0x104*/ oEyerokBossUnk104 OBJECT_FIELD_S32(0x1F)
884 #define /*0x108*/ oEyerokBossUnk108 OBJECT_FIELD_F32(0x20)
885 #define /*0x10C*/ oEyerokBossUnk10C OBJECT_FIELD_F32(0x21)
886 #define /*0x110*/ oEyerokBossUnk110 OBJECT_FIELD_F32(0x22)
887 #define /*0x1AC*/ oEyerokBossUnk1AC OBJECT_FIELD_S32(0x49)
888 
889 /* Eyerok hand */
890 #define /*0x0F4*/ oEyerokHandWakeUpTimer OBJECT_FIELD_S32(0x1B)
891 #define /*0x0F8*/ oEyerokReceivedAttack OBJECT_FIELD_S32(0x1C)
892 #define /*0x0FC*/ oEyerokHandUnkFC OBJECT_FIELD_S32(0x1D)
893 #define /*0x100*/ oEyerokHandUnk100 OBJECT_FIELD_S32(0x1E)
894 
895 /* Klepto */
896 #define /*0x0F4*/ oKleptoDistanceToTarget OBJECT_FIELD_F32(0x1B)
897 #define /*0x0F8*/ oKleptoUnkF8 OBJECT_FIELD_F32(0x1C)
898 #define /*0x0FC*/ oKleptoUnkFC OBJECT_FIELD_F32(0x1D)
899 #define /*0x100*/ oKleptoSpeed OBJECT_FIELD_F32(0x1E)
900 #define /*0x104*/ oKleptoStartPosX OBJECT_FIELD_F32(0x1F)
901 #define /*0x108*/ oKleptoStartPosY OBJECT_FIELD_F32(0x20)
902 #define /*0x10C*/ oKleptoStartPosZ OBJECT_FIELD_F32(0x21)
903 #define /*0x110*/ oKleptoTimeUntilTargetChange OBJECT_FIELD_S32(0x22)
904 #define /*0x1AC*/ oKleptoTargetNumber OBJECT_FIELD_S16(0x49, 0)
905 #define /*0x1AE*/ oKleptoUnk1AE OBJECT_FIELD_S16(0x49, + 1)
906 #define /*0x1B0*/ oKleptoUnk1B0 OBJECT_FIELD_S16(0x4A, 0)
907 #define /*0x1B2*/ oKleptoYawToTarget OBJECT_FIELD_S16(0x4A, + 1)
908 
909 /* Bird */
910 #define /*0x0F4*/ oBirdSpeed OBJECT_FIELD_F32(0x1B)
911 #define /*0x0F8*/ oBirdTargetPitch OBJECT_FIELD_S32(0x1C)
912 #define /*0x0FC*/ oBirdTargetYaw OBJECT_FIELD_S32(0x1D)
913 
914 /* Racing penguin */
915 #define /*0x0F4*/ oRacingPenguinInitTextCooldown OBJECT_FIELD_S32(0x1B)
916 // 0x1D-0x21 reserved for pathing
917 #define /*0x110*/ oRacingPenguinWeightedNewTargetSpeed OBJECT_FIELD_F32(0x22)
918 #define /*0x1AC*/ oRacingPenguinFinalTextbox OBJECT_FIELD_S16(0x49, 0)
919 #define /*0x1AE*/ oRacingPenguinMarioWon OBJECT_FIELD_S16(0x49, + 1)
920 #define /*0x1B0*/ oRacingPenguinReachedBottom OBJECT_FIELD_S16(0x4A, 0)
921 #define /*0x1B2*/ oRacingPenguinMarioCheated OBJECT_FIELD_S16(0x4A, + 1)
922 
923 /* Clam */
924 #define /*0x0F4*/ oClamUnkF4 OBJECT_FIELD_S32(0x1B)
925 
926 /* Skeeter */
927 #define /*0x0F4*/ oSkeeterTargetAngle OBJECT_FIELD_S32(0x1B)
928 #define /*0x0F8*/ oSkeeterUnkF8 OBJECT_FIELD_S32(0x1C)
929 #define /*0x0FC*/ oSkeeterUnkFC OBJECT_FIELD_F32(0x1D)
930 #define /*0x100*/ oSkeeterWaitTime OBJECT_FIELD_S32(0x1E)
931 #define /*0x1AC*/ oSkeeterUnk1AC OBJECT_FIELD_S16(0x49, 0)
932 
933 /* Swing platform */
934 #define /*0x0F4*/ oSwingPlatformAngle OBJECT_FIELD_F32(0x1B)
935 #define /*0x0F8*/ oSwingPlatformSpeed OBJECT_FIELD_F32(0x1C)
936 
937 /* Donut platform spawner */
938 #define /*0x0F4*/ oDonutPlatformSpawnerSpawnedPlatforms OBJECT_FIELD_S32(0x1B)
939 
940 /* DDD pole */
941 #define /*0x0F4*/ oDDDPoleVel OBJECT_FIELD_F32(0x1B)
942 #define /*0x0F8*/ oDDDPoleMaxOffset OBJECT_FIELD_F32(0x1C)
943 #define /*0x0FC*/ oDDDPoleOffset OBJECT_FIELD_F32(0x1D)
944 
945 /* Triplet butterfly */
946 #define /*0x0F4*/ oTripletButterflyScale OBJECT_FIELD_F32(0x1B)
947 #define /*0x0F8*/ oTripletButterflySpeed OBJECT_FIELD_F32(0x1C)
948 #define /*0x0FC*/ oTripletButterflyBaseYaw OBJECT_FIELD_F32(0x1D)
949 #define /*0x100*/ oTripletButterflyTargetPitch OBJECT_FIELD_S32(0x1E)
950 #define /*0x104*/ oTripletButterflyTargetYaw OBJECT_FIELD_S32(0x1F)
951 #define /*0x108*/ oTripletButterflyType OBJECT_FIELD_S32(0x20)
952 #define /*0x10C*/ oTripletButterflyModel OBJECT_FIELD_S32(0x21)
953 #define /*0x110*/ oTripletButterflySelectedButterfly OBJECT_FIELD_S32(0x22)
954 #define /*0x1AC*/ oTripletButterflyScalePhase OBJECT_FIELD_S32(0x49)
955 
956 /* Bubba */
957 #define /*0x0F4*/ oBubbaUnkF4 OBJECT_FIELD_F32(0x1B)
958 #define /*0x0F8*/ oBubbaUnkF8 OBJECT_FIELD_S32(0x1C)
959 #define /*0x0FC*/ oBubbaUnkFC OBJECT_FIELD_S32(0x1D)
960 #define /*0x100*/ oBubbaUnk100 OBJECT_FIELD_S32(0x1E)
961 #define /*0x104*/ oBubbaUnk104 OBJECT_FIELD_S32(0x1F)
962 #define /*0x108*/ oBubbaUnk108 OBJECT_FIELD_F32(0x20)
963 #define /*0x10C*/ oBubbaUnk10C OBJECT_FIELD_F32(0x21)
964 #define /*0x1AC*/ oBubbaUnk1AC OBJECT_FIELD_S16(0x49, 0)
965 #define /*0x1AE*/ oBubbaUnk1AE OBJECT_FIELD_S16(0x49, + 1)
966 #define /*0x1B0*/ oBubbaUnk1B0 OBJECT_FIELD_S16(0x4A, 0)
967 #define /*0x1B2*/ oBubbaUnk1B2 OBJECT_FIELD_S16(0x4A, + 1)
968 
969 /* PyramidTop */
970 #define /*0x0F4*/ oPyramidTopPillarsTouched OBJECT_FIELD_S32(0x1B)
971 
972 /* PyramidTopExplosion */
973 #define /*0x0F4*/ oPyramidTopFragmentsScale OBJECT_FIELD_F32(0x1B)
974 
975 /* SnowmansBottom */
976 #define /*0x0F4*/ oSnowmansBottomUnkF4 OBJECT_FIELD_F32(0x1B)
977 #define /*0x0F8*/ oSnowmansBottomUnkF8 OBJECT_FIELD_S32(0x1C)
978 #define /*0x0FC*/ oSnowmansBottomUnkFC OBJECT_FIELD_VOIDP(0x1D)
979 #define /*0x10C*/ oSnowmansBottomUnk10C OBJECT_FIELD_S32(0x21)
980 
981 /* SnowmansHead */
982 #define /*0x0F4*/ oSnowmansHeadUnkF4 OBJECT_FIELD_S32(0x1B)
983 
984 /* StarSpawn */
985 #define /*0x0F4*/ oStarSpawnDisFromHome OBJECT_FIELD_F32(0x1B)
986 #define /*0x0FC*/ oStarSpawnUnkFC OBJECT_FIELD_F32(0x1D)
987 
988 /* HiddenRedCoinStar */
989 #define /*0x0F4*/ oHiddenRedCoinStarCoinsCollected OBJECT_FIELD_S32(0x1B)
990 
991 /* HiddenStar */
992 #define /*0x0F4*/ oHiddenStarSecretsCollected OBJECT_FIELD_S32(0x1B)
993 
994 /* BowserCourseRedCoinStar */
995 #define /*0x0F4*/ oBowserCourseRedCoinStarCoinsCollected OBJECT_FIELD_S32(0x1B)
996 
997 /* Pitoune */
998 #define /*0x0F4*/ oPitouneUnkF4 OBJECT_FIELD_F32(0x1B)
999 #define /*0x0F8*/ oPitouneUnkF8 OBJECT_FIELD_F32(0x1C)
1000 #define /*0x0FC*/ oPitouneUnkFC OBJECT_FIELD_F32(0x1D)
1001 
1002 /* 1UpHidden */
1003 #define /*0x0F4*/ o1UpHiddenUnkF4 OBJECT_FIELD_S32(0x1B)
1004 
1005 /* ControllablePlatform */
1006 #define /*0x0FC*/ oControllablePlatformUnkFC OBJECT_FIELD_F32(0x1D)
1007 #define /*0x100*/ oControllablePlatformUnk100 OBJECT_FIELD_S32(0x1E)
1008 
1009 /* BreakableBoxSmall */
1010 #define /*0x0F4*/ oBreakableBoxSmallReleased OBJECT_FIELD_S32(0x1B)
1011 #define /*0x0FC*/ oBreakableBoxSmallFramesSinceReleased OBJECT_FIELD_S32(0x1D)
1012 
1013 /* FloatingPlatform */
1014 #define /*0x0F4*/ oFloatingPlatformUnkFC OBJECT_FIELD_S32(0x1B)
1015 
1016 /* ArrowLift */
1017 #define /*0x0F4*/ oArrowLiftDisplacement OBJECT_FIELD_F32(0x1B)
1018 
1019 /* FallingPillar */
1020 #define /*0x0F4*/ oFallingPillarPitchAcceleration OBJECT_FIELD_F32(0x1B)
1021 
1022 /* TreasureChestJrb */
1023 #define /*0x0F4*/ oTreasureChestJrbUnkF4 OBJECT_FIELD_S32(0x1B)
1024 #define /*0x0FC*/ oTreasureChestJrbUnkFC OBJECT_FIELD_S32(0x1D)
1025 
1026 /* TreasureChest */
1027 #define /*0x0F4*/ oTreasureChestUnkF4 OBJECT_FIELD_S32(0x1B)
1028 #define /*0x0FC*/ oTreasureChestUnkFC OBJECT_FIELD_S32(0x1D)
1029 
1030 /* Mips */
1031 #define /*0x0F4*/ oMipsStarStatus OBJECT_FIELD_S32(0x1B)
1032 #define /*0x0F8*/ oMipsStartWaypointIndex OBJECT_FIELD_S32(0x1C)
1033 
1034 /* Yoshi */
1035 #define /*0x0F4*/ oYoshiUnkF4 OBJECT_FIELD_S32(0x1B)
1036 #define /*0x0FC*/ oYoshiChosenHome OBJECT_FIELD_S32(0x1D)
1037 #define /*0x100*/ oYoshiTargetYaw OBJECT_FIELD_S32(0x1E)
1038 
1039 /* End birds */
1040 #define /*0x104*/ oEndBirdUnk104 OBJECT_FIELD_F32(0x1F)
1041 
1042 /* Intro cutscene lakitu */
1043 #define /*0x0F8*/ oIntroLakituUnkF8 OBJECT_FIELD_F32(0x1C)
1044 #define /*0x0FC*/ oIntroLakituUnkFC OBJECT_FIELD_F32(0x1D)
1045 #define /*0x100*/ oIntroLakituUnk100 OBJECT_FIELD_F32(0x1E)
1046 #define /*0x104*/ oIntroLakituUnk104 OBJECT_FIELD_F32(0x1F)
1047 #define /*0x108*/ oIntroLakituUnk108 OBJECT_FIELD_F32(0x20)
1048 #define /*0x10C*/ oIntroLakituUnk10C OBJECT_FIELD_F32(0x21)
1049 #define /*0x110*/ oIntroLakituUnk110 OBJECT_FIELD_F32(0x22)
1050 
1051 /* Intro cutscene Peach */
1052 #define /*0x108*/ oIntroPeachUnk108 OBJECT_FIELD_F32(0x20)
1053 #define /*0x10C*/ oIntroPeachUnk10C OBJECT_FIELD_F32(0x21)
1054 #define /*0x110*/ oIntroPeachUnk110 OBJECT_FIELD_F32(0x22)
1055 
1056 #endif