Isle
Loading...
Searching...
No Matches
motorcycle.h
Go to the documentation of this file.
1#ifndef MOTORCYCLE_H
2#define MOTORCYCLE_H
3
4#include "decomp.h"
5#include "islepathactor.h"
6
7// VTABLE: LEGO1 0x100d7090
8// VTABLE: BETA10 0x101bf3d8
9// SIZE 0x16c
10
15class Motocycle : public IslePathActor {
16public:
21 Motocycle();
22
28 const char* ClassName() const override // vtable+0x0c
29 {
30 // STRING: LEGO1 0x100f38e8
31 return "Motorcycle";
32 }
33
40 MxBool IsA(const char* p_name) const override // vtable+0x10
41 {
42 return !strcmp(p_name, Motocycle::ClassName()) || IslePathActor::IsA(p_name);
43 }
44
50 MxResult Create(MxDSAction& p_dsAction) override;
51
57 void Animate(float p_time) override;
58
64 MxLong HandleClick() override;
65
73
81
86 void Exit() override;
87
93
94 // SYNTHETIC: LEGO1 0x100359d0
95 // Motocycle::`scalar deleting destructor'
96
97private:
102 undefined m_unk0x160[4]; // 0x160
103
108 MxFloat m_fuel; // 0x164
109
114 MxFloat m_time; // 0x168
115};
116
117#endif // MOTORCYCLE_H
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.
Motocycle is an IslePathActor representing the motorcycle vehicle the user can drive in LEGO Island.
Definition: motorcycle.h:15
void ActivateSceneActions()
[AI] Triggers in-game events when scene actions should execute after transition into Motocycle.
Definition: motorcycle.cpp:149
const char * ClassName() const override
[AI] Returns the class name string ("Motorcycle").
Definition: motorcycle.h:28
void Animate(float p_time) override
[AI] Updates animation state and Motocycle-specific logic, including fuel and dashboard variables.
Definition: motorcycle.cpp:47
MxLong HandlePathStruct(LegoPathStructNotificationParam &) override
[AI] Handles notifications for special-path contact, e.g.
Definition: motorcycle.cpp:138
MxBool IsA(const char *p_name) const override
[AI] Checks if this object is of the given class type name or any parent class.
Definition: motorcycle.h:40
Motocycle()
[AI] Creates a Motocycle actor with initial default physics and fuel.
Definition: motorcycle.cpp:22
MxResult Create(MxDSAction &p_dsAction) override
[AI] Creates and registers the Motocycle in the game world from a DS action.
Definition: motorcycle.cpp:31
MxLong HandleClick() override
[AI] Handles the event when the user clicks to enter/use the motorcycle.
Definition: motorcycle.cpp:85
void Exit() override
[AI] Handles exit and cleanup from Motocycle mode, including dashboard and HUD.
Definition: motorcycle.cpp:72
MxLong HandleControl(LegoControlManagerNotificationParam &p_param) override
[AI] Handles dashboard or control area UI interactions for the motorcycle.
Definition: motorcycle.cpp:114
[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
unsigned char undefined
Definition: decomp.h:26
MxU8 MxBool
[AI]
Definition: mxtypes.h:124
MxLong MxResult
[AI]
Definition: mxtypes.h:106
int MxLong
[AI]
Definition: mxtypes.h:83
float MxFloat
[AI]
Definition: mxtypes.h:68