Isle
Loading...
Searching...
No Matches
dunebuggy.h
Go to the documentation of this file.
1#ifndef DUNEBUGGY_H
2#define DUNEBUGGY_H
3
4#include "decomp.h"
5#include "islepathactor.h"
6
7// VTABLE: LEGO1 0x100d8f98
8// VTABLE: BETA10 0x101b95c0
9// SIZE 0x16c
10
16class DuneBuggy : public IslePathActor {
17public:
21 DuneBuggy();
22
27 const char* ClassName() const override // vtable+0x0c
28 {
29 // STRING: LEGO1 0x100f0410
30 return "DuneBuggy";
31 }
32
39 MxBool IsA(const char* p_name) const override // vtable+0x10
40 {
41 return !strcmp(p_name, DuneBuggy::ClassName()) || IslePathActor::IsA(p_name);
42 }
43
48 MxResult Create(MxDSAction& p_dsAction) override;
49
54 void Animate(float p_time) override;
55
60 MxLong HandleClick() override;
61
68
75
79 void Exit() override;
80
86
93 static MxS32 GetColorOffset(const char* p_variable);
94
95 // SYNTHETIC: LEGO1 0x10067dc0
96 // DuneBuggy::`scalar deleting destructor'
97
98private:
102 MxS16 m_dashboard; // 0x160
103
107 MxFloat m_fuel; // 0x164
108
112 MxFloat m_time; // 0x168
113};
114
115#endif // DUNEBUGGY_H
[AI] Represents the player-controllable dune buggy vehicle in LEGO Island, inheriting movement and in...
Definition: dunebuggy.h:16
void Animate(float p_time) override
[AI] Advances the animation and updates state variables for the dune buggy, including updating the sp...
Definition: dunebuggy.cpp:51
void ActivateSceneActions()
[AI] Triggers cutscene/cinematic actions associated with the garage/dune buggy scenario ("scene actio...
Definition: dunebuggy.cpp:190
const char * ClassName() const override
[AI] Returns the class name string for run-time type identification.
Definition: dunebuggy.h:27
MxLong HandleControl(LegoControlManagerNotificationParam &p_param) override
[AI] Handles control manager notifications (e.g., dashboard button presses) while the dune buggy is a...
Definition: dunebuggy.cpp:120
DuneBuggy()
[AI] Constructor.
Definition: dunebuggy.cpp:28
MxResult Create(MxDSAction &p_dsAction) override
[AI] Creates and initializes the dune buggy from a MxDSAction, also placing it into the current world...
Definition: dunebuggy.cpp:35
MxLong HandleClick() override
[AI] Handles player click interactions on the dune buggy.
Definition: dunebuggy.cpp:89
static MxS32 GetColorOffset(const char *p_variable)
[AI] Determines the color offset index for the dune buggy dashboard based on a variable.
Definition: dunebuggy.cpp:161
MxBool IsA(const char *p_name) const override
[AI] Checks if the object matches the provided class name or any of its ancestor types.
Definition: dunebuggy.h:39
MxLong HandlePathStruct(LegoPathStructNotificationParam &p_param) override
[AI] Handles notifications if the dune buggy actor reaches a certain location/path segment (e....
Definition: dunebuggy.cpp:149
void Exit() override
[AI] Exits the dune buggy scenario, cleaning up the HUD, unregistering dashboard elements,...
Definition: dunebuggy.cpp:74
Derived path actor type for handling player transitions and activities on LEGO Island.
Definition: islepathactor.h:23
MxBool IsA(const char *p_name) const override
[AI] Checks if class or any superclass matches the given type string.
[AI] Notification parameter for the LegoControlManager, used to propagate information about control e...
[AI] Specialized notification parameter used for path structure related events in LEGO Island.
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
Definition: mxdsaction.h:17
#define override
Definition: compat.h:21
MxU8 MxBool
[AI]
Definition: mxtypes.h:124
MxLong MxResult
[AI]
Definition: mxtypes.h:106
int MxLong
[AI]
Definition: mxtypes.h:83
signed short MxS16
[AI]
Definition: mxtypes.h:26
float MxFloat
[AI]
Definition: mxtypes.h:68
signed int MxS32
[AI]
Definition: mxtypes.h:38