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

[AI] Represents the music selection state for the Jukebox in the game. More...

#include <jukebox.h>

Inheritance diagram for JukeBoxState:
Collaboration diagram for JukeBoxState:

Public Types

enum  Music {
  e_pasquell = 0 , e_right , e_decal , e_wallis ,
  e_nelson , e_torpedos
}
 [AI] Enumeration for Jukebox music tracks. Used to identify the currently selected music piece. [AI] 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

 JukeBoxState ()
 [AI] Creates a new JukeBoxState with default music e_pasquell and inactive. [AI] More...
 
MxBool IsSerializable () override
 [AI] JukeBoxState is never serialized—used only during gameplay session. [AI] More...
 
const char * ClassName () const override
 [AI] Returns the class name "JukeBoxState" for run-time type identification. [AI] More...
 
MxBool IsA (const char *p_name) const override
 [AI] Checks if the object is or derives from the class specified by p_name. 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

Music m_music
 [AI] Currently selected music track in the Jukebox. [AI] More...
 
MxU32 m_active
 [AI] Flag indicating whether the Jukebox is currently active (1=active, 0=inactive). [AI] More...
 

Detailed Description

[AI] Represents the music selection state for the Jukebox in the game.

Inherits from LegoState to support state saving/restoration architecture. Holds information about which song is currently selected and whether the Jukebox is active. [AI]

[AI] JukeBoxState manages which song is currently playing in the Jukebox area of the game. The state is not serializable as it is only relevant during gameplay. The Music enum identifies which track is selected. [AI]

See also
LegoState [AI]

Definition at line 14 of file jukebox.h.

Member Enumeration Documentation

◆ Music

[AI] Enumeration for Jukebox music tracks. Used to identify the currently selected music piece. [AI]

Enumerator
e_pasquell 

[AI] "Pasquell" music track (default selection). [AI]

e_right 

[AI] "Right" music track. [AI]

e_decal 

[AI] "Decal" music track. [AI]

e_wallis 

[AI] "Wallis" music track. [AI]

e_nelson 

[AI] "Nelson" music track. [AI]

e_torpedos 

[AI] "Torpedos" music track. [AI]

Definition at line 17 of file jukebox.h.

Constructor & Destructor Documentation

◆ JukeBoxState()

JukeBoxState::JukeBoxState ( )
inline

[AI] Creates a new JukeBoxState with default music e_pasquell and inactive. [AI]

Definition at line 27 of file jukebox.h.

Member Function Documentation

◆ ClassName()

const char * JukeBoxState::ClassName ( ) const
inlineoverridevirtual

[AI] Returns the class name "JukeBoxState" for run-time type identification. [AI]

Reimplemented from MxCore.

Definition at line 33 of file jukebox.h.

◆ IsA()

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

[AI] Checks if the object is or derives from the class specified by p_name.

[AI]

Parameters
p_nameName of class for comparison. [AI]

Reimplemented from MxCore.

Definition at line 41 of file jukebox.h.

◆ IsSerializable()

MxBool JukeBoxState::IsSerializable ( )
inlineoverridevirtual

[AI] JukeBoxState is never serialized—used only during gameplay session. [AI]

Reimplemented from LegoState.

Definition at line 30 of file jukebox.h.

Member Data Documentation

◆ m_active

MxU32 JukeBoxState::m_active

[AI] Flag indicating whether the Jukebox is currently active (1=active, 0=inactive). [AI]

Definition at line 47 of file jukebox.h.

◆ m_music

Music JukeBoxState::m_music

[AI] Currently selected music track in the Jukebox. [AI]

Definition at line 46 of file jukebox.h.


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