Isle
Loading...
Searching...
No Matches
LegoVehicleBuildState Class Reference

[AI] Represents the persistent state of the LEGO vehicle build world, tracking animation and part placement state. More...

#include <legocarbuild.h>

Inheritance diagram for LegoVehicleBuildState:
Collaboration diagram for LegoVehicleBuildState:

Public Types

enum  AnimationState {
  e_unknown0 = 0 , e_entering = 1 , e_unknown2 = 2 , e_cutscene = 3 ,
  e_unknown4 = 4 , e_exiting = 6
}
 [AI] Enumerates the possible animation states for the build process. More...
 
- Public Types inherited from LegoState
enum  ScoreColor { e_grey = 0 , e_yellow , e_blue , e_red }
 [AI] Score coloring values for in-game display feedback or logic. More...
 

Public Member Functions

 LegoVehicleBuildState (const char *p_classType)
 [AI] Constructs a LegoVehicleBuildState with a specified class type string, which identifies the build-type (e.g., RaceCar/Copter). More...
 
const char * ClassName () const override
 [AI] Returns the class name (run-time type string) for this object. More...
 
MxBool IsA (const char *p_name) const override
 [AI] Checks if the provided type name matches this class or any base class. More...
 
MxResult Serialize (LegoStorage *p_storage) override
 [AI] Serialize or deserialize the build state to/from a storage object for save/load. More...
 
- Public Member Functions inherited from LegoState
 ~LegoState () override
 [AI] Virtual destructor to allow subclass cleanup. More...
 
virtual MxBool IsSerializable ()
 [AI] Returns if this state can be serialized (for game saving/loading support). More...
 
virtual MxBool Reset ()
 [AI] Hook for returning object to default (empty) state; not implemented in this base. More...
 
virtual MxResult Serialize (LegoStorage *p_storage)
 [AI] Serialize state to a storage (for save/load). More...
 
const char * ClassName () const override
 [AI] Gets this class's name for RTTI/IsA functionality. More...
 
MxBool IsA (const char *p_name) const override
 [AI] Tests if this object is of a given class name, directly or through inheritance. More...
 
- Public Member Functions inherited from MxCore
 MxCore ()
 [AI] Constructs a new MxCore object and assigns it a unique id. More...
 
virtual ~MxCore ()
 [AI] Virtual destructor. Required for correct polymorphic cleanup in derived classes. More...
 
virtual MxLong Notify (MxParam &p_param)
 [AI] Virtual callback notification mechanism. More...
 
virtual MxResult Tickle ()
 [AI] Called by tickle managers to allow the object to update itself. More...
 
virtual const char * ClassName () const
 [AI] Returns the runtime class name of this object. More...
 
virtual MxBool IsA (const char *p_name) const
 [AI] Checks whether this object's class type or parents match the given name. More...
 
MxU32 GetId ()
 [AI] Gets the unique (per-process) id assigned to this object instance. More...
 

Public Attributes

Playlist m_unk0x08 [4]
 [AI] Unused/unknown playlists per build? [AI_SUGGESTED_NAME: m_playlists] Unclear, but likely reserved space for per-vehicle actions or steps. More...
 
MxString m_className
 [AI] Class name string ("LegoRaceCarBuildState", etc), used for identifying the build state type. More...
 
AnimationState m_animationState
 [AI] Current animation state within the build area. More...
 
MxU8 m_unk0x4c
 [AI] Number of completed actions or animation steps, incremented through build progress. More...
 
MxBool m_unk0x4d
 [AI] Persists transition or completion flag across world reloads. More...
 
MxBool m_unk0x4e
 [AI] Unknown. Flag—purpose unclear. More...
 
MxU8 m_placedPartCount
 [AI] Number of parts (bricks) placed during the build. More...
 

Detailed Description

[AI] Represents the persistent state of the LEGO vehicle build world, tracking animation and part placement state.

Used for all build subtypes (car, copter, dune car, jetski).

[AI] Derived from LegoState, this class maintains the class name, current animation state, flags, and number of parts placed. The class also serializes build progress and animation.

Definition at line 24 of file legocarbuild.h.

Member Enumeration Documentation

◆ AnimationState

[AI] Enumerates the possible animation states for the build process.

Enumerator
e_unknown0 

[AI] Default/uninitialized state. Meaning unclear.

e_entering 

[AI] Transition/Entering the build area.

e_unknown2 

[AI] Likely a 'ready' or transitional state before a cutscene.

e_cutscene 

[AI] Indicates that the build is in a cutscene (camera or instructions animation).

e_unknown4 

[AI] Indicates transition to exit (possibly ready for world exit or next act).

e_exiting 

[AI] Build area is in the process of ending/exiting.

Definition at line 29 of file legocarbuild.h.

Constructor & Destructor Documentation

◆ LegoVehicleBuildState()

LegoVehicleBuildState::LegoVehicleBuildState ( const char *  p_classType)

[AI] Constructs a LegoVehicleBuildState with a specified class type string, which identifies the build-type (e.g., RaceCar/Copter).

Parameters
p_classTypeBuild state type name ("LegoRaceCarBuildState", "LegoCopterBuildState", etc.) [AI]

Definition at line 1701 of file legocarbuild.cpp.

Member Function Documentation

◆ ClassName()

const char * LegoVehicleBuildState::ClassName ( ) const
overridevirtual

[AI] Returns the class name (run-time type string) for this object.

Returns
const char* Pointer to string of class name. [AI]

Reimplemented from MxCore.

◆ IsA()

MxBool LegoVehicleBuildState::IsA ( const char *  p_name) const
overridevirtual

[AI] Checks if the provided type name matches this class or any base class.

Parameters
p_nameClass/type name for comparison. [AI]
Returns
MxBool TRUE if matches, FALSE otherwise. [AI]

Reimplemented from MxCore.

◆ Serialize()

MxResult LegoVehicleBuildState::Serialize ( LegoStorage p_storage)
overridevirtual

[AI] Serialize or deserialize the build state to/from a storage object for save/load.

Parameters
p_storageA pointer to the LegoStorage for reading or writing the state. [AI]
Returns
MxResult Success or failure status. [AI]

Reimplemented from LegoState.

Definition at line 1712 of file legocarbuild.cpp.

Member Data Documentation

◆ m_animationState

AnimationState LegoVehicleBuildState::m_animationState

[AI] Current animation state within the build area.

Definition at line 74 of file legocarbuild.h.

◆ m_className

MxString LegoVehicleBuildState::m_className

[AI] Class name string ("LegoRaceCarBuildState", etc), used for identifying the build state type.

Definition at line 69 of file legocarbuild.h.

◆ m_placedPartCount

MxU8 LegoVehicleBuildState::m_placedPartCount

[AI] Number of parts (bricks) placed during the build.

Definition at line 79 of file legocarbuild.h.

◆ m_unk0x08

Playlist LegoVehicleBuildState::m_unk0x08[4]

[AI] Unused/unknown playlists per build? [AI_SUGGESTED_NAME: m_playlists] Unclear, but likely reserved space for per-vehicle actions or steps.

Definition at line 64 of file legocarbuild.h.

◆ m_unk0x4c

MxU8 LegoVehicleBuildState::m_unk0x4c

[AI] Number of completed actions or animation steps, incremented through build progress.

Definition at line 76 of file legocarbuild.h.

◆ m_unk0x4d

MxBool LegoVehicleBuildState::m_unk0x4d

[AI] Persists transition or completion flag across world reloads.

Definition at line 77 of file legocarbuild.h.

◆ m_unk0x4e

MxBool LegoVehicleBuildState::m_unk0x4e

[AI] Unknown. Flag—purpose unclear.

Definition at line 78 of file legocarbuild.h.


The documentation for this class was generated from the following files: