Isle
Loading...
Searching...
No Matches
legoraceactor.h
Go to the documentation of this file.
1#ifndef LEGORACEACTOR_H
2#define LEGORACEACTOR_H
3
4#include "legoanimactor.h"
5
6class Matrix4;
7
8// VTABLE: LEGO1 0x100d5b78 LegoAnimActor
9// VTABLE: LEGO1 0x100d5b88 LegoPathActor
10// VTABLE: LEGO1 0x100d5c54 LegoRaceActor
11// VTABLE: BETA10 0x101be380 LegoAnimActor
12// VTABLE: BETA10 0x101be398 LegoPathActor
13// VTABLE: BETA10 0x101be488 LegoRaceActor
14// SIZE 0x180
15
22class LegoRaceActor : public virtual LegoAnimActor {
23public:
29
34 const char* ClassName() const override // vtable+0x0c
35 {
36 // STRING: LEGO1 0x100f0bf4
37 return "LegoRaceActor";
38 }
39
46 MxBool IsA(const char* p_name) const override // vtable+0x10
47 {
48 return !strcmp(p_name, LegoRaceActor::ClassName()) || LegoAnimActor::IsA(p_name);
49 }
50
60 MxS32 VTable0x68(Vector3& p_v1, Vector3& p_v2, Vector3& p_v3) override; // vtable+0x68
61
70 MxU32 VTable0x90(float p_time, Matrix4& p_matrix) override; // vtable+0x90
71
80 MxResult HitActor(LegoPathActor* p_actor, MxBool p_bool) override; // vtable+0x94
81
87 virtual MxResult FUN_10014aa0();
88
89 // SYNTHETIC: LEGO1 0x10012c10
90 // LegoRaceActor::`vbase destructor'
91
92 // SYNTHETIC: LEGO1 0x10014ac0
93 // LegoRaceActor::`scalar deleting destructor'
94
95private:
100 MxFloat m_unk0x08; // 0x08
101
106 static Mx3DPointFloat g_unk0x10102b08;
107};
108
109// GLOBAL: LEGO1 0x100d5b68
110// LegoRaceActor::`vbtable'{for `LegoRaceActor'}
111
112// GLOBAL: LEGO1 0x100d5b60
113// LegoRaceActor::`vbtable'{for `LegoAnimActor'}
114
115#endif // LEGORACEACTOR_H
[AI] Path-based actor which supports skeletal/mesh animation via an animation tree and multiple anima...
Definition: legoanimactor.h:49
MxBool IsA(const char *p_name) const override
[AI] Checks for runtime type equality ("IsA" support); matches for this class or parent.
[AI] An actor that moves along a predefined path, supporting boundary transitions,...
Definition: legopathactor.h:32
[AI] Represents an actor that participates in races (usually vehicles or racers) on LEGO Island.
Definition: legoraceactor.h:22
MxResult HitActor(LegoPathActor *p_actor, MxBool p_bool) override
[AI] Handles logic when this actor is hit by another actor (e.g., collision interaction).
virtual MxResult FUN_10014aa0()
[AI] Additional race-specific behavior stub.
LegoRaceActor()
[AI] Constructor for the LegoRaceActor class.
MxU32 VTable0x90(float p_time, Matrix4 &p_matrix) override
[AI] Updates the actor's state and transformation for a given simulation time.
MxS32 VTable0x68(Vector3 &p_v1, Vector3 &p_v2, Vector3 &p_v3) override
[AI] Handles collision/interaction queries between the actor and the environment or other actors.
MxBool IsA(const char *p_name) const override
[AI] Determines whether this object is of a class with a given name.
Definition: legoraceactor.h:46
const char * ClassName() const override
[AI] Returns the runtime class name for this class.
Definition: legoraceactor.h:34
4x4 Matrix class with virtual interface for manipulation and transformation.
Definition: matrix.h:24
[AI] Represents a 3D point with floating-point precision, inheriting from Vector3.
Definition: mxgeometry3d.h:14
[AI] 3D vector class, providing vector and cross-product operations in 3D space.
Definition: vector.h:249
#define override
Definition: compat.h:21
MxU8 MxBool
[AI]
Definition: mxtypes.h:124
MxLong MxResult
[AI]
Definition: mxtypes.h:106
float MxFloat
[AI]
Definition: mxtypes.h:68
signed int MxS32
[AI]
Definition: mxtypes.h:38
unsigned int MxU32
[AI]
Definition: mxtypes.h:32