Isle
Loading...
Searching...
No Matches
elevatorbottom.h
Go to the documentation of this file.
1#ifndef ELEVATORBOTTOM_H
2#define ELEVATORBOTTOM_H
3
4#include "decomp.h"
5#include "legogamestate.h"
6#include "legoworld.h"
7
9
23class ElevatorBottom : public LegoWorld {
24public:
27
29 ~ElevatorBottom() override; // vtable+0x00
30
34 MxLong Notify(MxParam& p_param) override; // vtable+0x04
35
38 MxBool VTable0x5c() override { return TRUE; } // vtable+0x5c
39
42 const char* ClassName() const override // vtable+0x0c
43 {
44 return "ElevatorBottom";
45 }
46
50 MxBool IsA(const char* p_name) const override // vtable+0x10
51 {
52 return !strcmp(p_name, ElevatorBottom::ClassName()) || LegoWorld::IsA(p_name);
53 }
54
58 MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
59
61 void ReadyWorld() override; // vtable+0x50
62
65 MxBool Escape() override; // vtable+0x64
66
69 void Enable(MxBool p_enable) override; // vtable+0x68
70
71 // SYNTHETIC: LEGO1 0x10018040
72 // ElevatorBottom::`scalar deleting destructor'
73
74private:
76 LegoGameState::Area m_destLocation; // 0xf8
77
81 MxLong HandleControl(LegoControlManagerNotificationParam& p_param);
82};
83
84#endif // ELEVATORBOTTOM_H
[AI] This class represents the "Elevator Bottom" area in the LEGO Island game.
MxLong Notify(MxParam &p_param) override
[AI] Handles notifications received while this world is active, such as control interactions and tran...
void Enable(MxBool p_enable) override
[AI] Enables or disables the world, updating input manager links and world activation state.
const char * ClassName() const override
[AI] Returns the class name identifier for runtime type checking.
~ElevatorBottom() override
[AI] Destroys the ElevatorBottom object, unregistering it from input, control, and notification manag...
MxBool Escape() override
[AI] Handles the user's "escape" action (such as pressing ESC), transitioning out of this area,...
MxBool IsA(const char *p_name) const override
[AI] Checks if this object is a class or subclass matching the provided name.
void ReadyWorld() override
[AI] Prepares the world for activation (e.g., starts music, disables input/3D as needed)....
MxResult Create(MxDSAction &p_dsAction) override
[AI] Initializes the world with a given action, registers input/world, and sets initial area state.
MxBool VTable0x5c() override
[AI] Indicates that this world is always considered "active" for tickling purposes.
ElevatorBottom()
[AI] Constructs the ElevatorBottom object and registers it for notifications. [AI]
[AI] Notification parameter for the LegoControlManager, used to propagate information about control e...
Area
Enumeration of all major in-game locations ("areas") for area/scene management and serialization.
Definition: legogamestate.h:92
Represents the active 3D world, holding all entity, animation, sound, path, and ROI objects.
Definition: legoworld.h:49
MxBool IsA(const char *p_name) const override
Runtime type checking; checks class hierarchy.
Definition: legoworld.h:153
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
Definition: mxdsaction.h:17
[AI] MxParam serves as a polymorphic base class for parameter passing in event and notification syste...
Definition: mxparam.h:7
#define override
Definition: compat.h:21
#define TRUE
Definition: d3drmdef.h:28
MxU8 MxBool
[AI]
Definition: mxtypes.h:124
MxLong MxResult
[AI]
Definition: mxtypes.h:106
int MxLong
[AI]
Definition: mxtypes.h:83