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

Maintains persistent, serializable state information for the gas station/garage area, including actor animation choice tracking [AI]. More...

#include <gasstation.h>

Inheritance diagram for GasStationState:
Collaboration diagram for GasStationState:

Public Member Functions

 GasStationState ()
 [AI] Creates and resets state for gas station, initializing all actor counters and action lists. More...
 
const char * ClassName () const override
 Returns the class name string used for RTTI and IsA queries [AI]. More...
 
MxBool IsA (const char *p_name) const override
 Checks if this object is or inherits from a specified class [AI]. More...
 
MxResult Serialize (LegoStorage *p_storage) override
 Serializes/deserializes the gas station state from the given storage [AI]. More...
 
void PlayAction (GarageScript::Script p_objectId)
 Records a running GarageScript action as currently active in this state [AI]. More...
 
void StopAction (GarageScript::Script p_objectId)
 Removes the specified GarageScript action from the active set as no longer running [AI]. More...
 
void StopActions ()
 [AI] Stops all running actions tracked in this state and raises background audio volume. 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

GarageScript::Script m_actions [3]
 List of up to 3 currently running GarageScript actions [AI]. More...
 
undefined4 m_unk0x14
 [AI_SUGGESTED_NAME: m_actionState] Tracks the phase in scripted action sequence for state machine control [AI] More...
 
MxS16 m_pepperAction
 Current animation/action index for Pepper actor (cycles variants) [AI]. More...
 
MxS16 m_mamaAction
 Current animation/action index for Mama actor [AI]. More...
 
MxS16 m_papaAction
 Current animation/action index for Papa actor [AI]. More...
 
MxS16 m_nickAction
 Current animation/action index for Nick actor [AI]. More...
 
MxS16 m_lauraAction
 Current animation/action index for Laura actor [AI]. More...
 

Additional Inherited Members

- 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...
 

Detailed Description

Maintains persistent, serializable state information for the gas station/garage area, including actor animation choice tracking [AI].

GasStationState extends LegoState to provide save/load support and persistent run state for the game's garage (gas station) world. It tracks action progressions for each main actor character and manages which scripted GarageScript actions are currently running (typically for animations and triggered logic) [AI].

Definition at line 18 of file gasstation.h.

Constructor & Destructor Documentation

◆ GasStationState()

GasStationState::GasStationState ( )

[AI] Creates and resets state for gas station, initializing all actor counters and action lists.

Definition at line 499 of file gasstation.cpp.

Member Function Documentation

◆ ClassName()

const char * GasStationState::ClassName ( ) const
inlineoverridevirtual

Returns the class name string used for RTTI and IsA queries [AI].

Reimplemented from MxCore.

Definition at line 24 of file gasstation.h.

◆ IsA()

MxBool GasStationState::IsA ( const char *  p_name) const
inlineoverridevirtual

Checks if this object is or inherits from a specified class [AI].

Parameters
p_namethe class name to query [AI]

Reimplemented from MxCore.

Definition at line 32 of file gasstation.h.

◆ PlayAction()

void GasStationState::PlayAction ( GarageScript::Script  p_objectId)

Records a running GarageScript action as currently active in this state [AI].

Parameters
p_objectIdThe GarageScript action being started [AI]

Definition at line 534 of file gasstation.cpp.

◆ Serialize()

MxResult GasStationState::Serialize ( LegoStorage p_storage)
overridevirtual

Serializes/deserializes the gas station state from the given storage [AI].

Writes and reads persistent per-character action indices (last completed variation) for animation progression. [AI]

Parameters
p_storageThe storage stream for persistent state [AI]

Reimplemented from LegoState.

Definition at line 511 of file gasstation.cpp.

◆ StopAction()

void GasStationState::StopAction ( GarageScript::Script  p_objectId)

Removes the specified GarageScript action from the active set as no longer running [AI].

Parameters
p_objectIdScript whose running status is to be cleared [AI]

Definition at line 545 of file gasstation.cpp.

◆ StopActions()

void GasStationState::StopActions ( )

[AI] Stops all running actions tracked in this state and raises background audio volume.

Definition at line 556 of file gasstation.cpp.

Member Data Documentation

◆ m_actions

GarageScript::Script GasStationState::m_actions[3]

List of up to 3 currently running GarageScript actions [AI].

Definition at line 58 of file gasstation.h.

◆ m_lauraAction

MxS16 GasStationState::m_lauraAction

Current animation/action index for Laura actor [AI].

Definition at line 64 of file gasstation.h.

◆ m_mamaAction

MxS16 GasStationState::m_mamaAction

Current animation/action index for Mama actor [AI].

Definition at line 61 of file gasstation.h.

◆ m_nickAction

MxS16 GasStationState::m_nickAction

Current animation/action index for Nick actor [AI].

Definition at line 63 of file gasstation.h.

◆ m_papaAction

MxS16 GasStationState::m_papaAction

Current animation/action index for Papa actor [AI].

Definition at line 62 of file gasstation.h.

◆ m_pepperAction

MxS16 GasStationState::m_pepperAction

Current animation/action index for Pepper actor (cycles variants) [AI].

Definition at line 60 of file gasstation.h.

◆ m_unk0x14

undefined4 GasStationState::m_unk0x14

[AI_SUGGESTED_NAME: m_actionState] Tracks the phase in scripted action sequence for state machine control [AI]

Definition at line 59 of file gasstation.h.


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