Isle
Loading...
Searching...
No Matches
doors.h
Go to the documentation of this file.
1#ifndef DOORS_H
2#define DOORS_H
3
4#include "legopathactor.h"
5
6class LegoROI;
7
17class Doors : public LegoPathActor {
18public:
20 Doors() : m_unk0x154(0), m_ltDoor(NULL), m_rtDoor(NULL), m_unk0x1f4(0) {}
21
24 const char* ClassName() const override // vtable+0x0c
25 {
26 // STRING: LEGO1 0x100f03e8
27 return "Doors";
28 }
29
34 MxBool IsA(const char* p_name) const override // vtable+0x10
35 {
36 return !strcmp(p_name, Doors::ClassName()) || LegoPathActor::IsA(p_name);
37 }
38
43 void ParseAction(char* p_extra) override; // vtable+0x20
44
49 void Animate(float p_time) override; // vtable+0x70
50
57 MxResult HitActor(LegoPathActor* p_actor, MxBool p_bool) override; // vtable+0x94
58
63 virtual MxFloat VTable0xcc(float p_time); // vtable+0xcc
64
65 // SYNTHETIC: LEGO1 0x1000e580
66 // Doors::`scalar deleting destructor'
67
68private:
69 undefined4 m_unk0x154;
70 MxFloat m_unk0x158;
71 LegoROI* m_ltDoor;
72 LegoROI* m_rtDoor;
73 MxMatrix m_ltDoorLocal;
74 MxMatrix m_rtDoorLocal;
75 MxFloat m_unk0x1f4;
76};
77
78#endif // DOORS_H
[AI] Represents a special LegoPathActor controlling the animation and logic of a pair of doors,...
Definition: doors.h:17
void Animate(float p_time) override
[AI] Animates the doors based on current time, moving them through different animation states (closed...
Definition: doors.cpp:68
void ParseAction(char *p_extra) override
[AI] Parses action directives for the Doors, as well as identifying and associating left and right do...
Definition: doors.cpp:119
virtual MxFloat VTable0xcc(float p_time)
[AI] Calculates the normalized open-close position of the doors for the given time,...
Definition: doors.cpp:43
MxBool IsA(const char *p_name) const override
[AI] Checks whether this object derives from or matches the given class name.
Definition: doors.h:34
const char * ClassName() const override
[AI] Returns the class name string literal ("Doors") used for RTTI and IsA checks.
Definition: doors.h:24
MxResult HitActor(LegoPathActor *p_actor, MxBool p_bool) override
[AI] Handles the event where another path actor interacts (collides) with this Doors actor,...
Definition: doors.cpp:27
Doors()
[AI] Constructs a Doors object and initializes member variables, in particular, sets pointers to per-...
Definition: doors.h:20
[AI] An actor that moves along a predefined path, supporting boundary transitions,...
Definition: legopathactor.h:32
MxBool IsA(const char *p_name) const override
[AI] RTTI-like check, matches against own or base class name for IsA hierarchy checks.
[AI] Represents a Real-time Object Instance enriched with LEGO-specific functionality.
Definition: legoroi.h:43
[AI] Represents a 4x4 transformation matrix, specialized for the LEGO Island engine and derived from ...
Definition: mxmatrix.h:16
#define override
Definition: compat.h:21
unsigned int undefined4
Definition: decomp.h:28
#define NULL
[AI] Null pointer value (C/C++ semantics).
Definition: legotypes.h:26
MxU8 MxBool
[AI]
Definition: mxtypes.h:124
MxLong MxResult
[AI]
Definition: mxtypes.h:106
float MxFloat
[AI]
Definition: mxtypes.h:68