Derived path actor type for handling player transitions and activities on LEGO Island.
[AI] Represents the main overworld (LEGO Island) in the game, acting as the central hub and state mac...
[AI] Represents the jukebox interactive entity in LEGO Island, handling click events,...
~JukeBoxEntity() override
[AI] Destructor unregisters from the notification manager.
MxLong Notify(MxParam &p_param) override
[AI] Handles notification events relevant to the jukebox, e.g., click events to activate jukebox beha...
MxBool IsBackgroundAudioEnabled()
[AI] Returns whether background audio was enabled before the current jukebox action.
void StartAction()
[AI] Starts the jukebox action: plays the selected music track, sets proper animation,...
void StopAction(JukeboxScript::Script p_script)
[AI] Stops the given jukebox music and resets related animation/states.
MxBool m_audioEnabled
[AI] Whether background audio was enabled before this entity started its action.
[AI] Represents the music selection state for the Jukebox in the game.
Music m_music
[AI] Currently selected music track in the Jukebox. [AI]
@ e_torpedos
[AI] "Torpedos" music track. [AI]
@ e_nelson
[AI] "Nelson" music track. [AI]
@ e_decal
[AI] "Decal" music track. [AI]
@ e_right
[AI] "Right" music track. [AI]
@ e_pasquell
[AI] "Pasquell" music track (default selection). [AI]
@ e_wallis
[AI] "Wallis" music track. [AI]
MxU32 m_active
[AI] Flag indicating whether the Jukebox is currently active (1=active, 0=inactive)....
virtual MxU8 GetActorId()
[AI] Gets this actor's numeric ID, corresponding to a known enumeration/actor.
JukeboxScript::Script m_jukeboxMusic
Which jukebox music is currently set to play. [AI].
MxU8 GetActorId()
Returns the current selected actor ID. [AI].
LegoState * GetState(const char *p_stateName)
Find an existing state (LegoState-derived) object by its registered script/class name.
@ e_jukeboxw
Western Jukebox (special minigame). [AI].
void Enable(MxBool p_enable)
[AI] Enables or disables the background audio manager.
MxBool GetEnabled()
[AI] Returns whether background audio management is currently enabled.
MxResult PlayMusic(MxDSAction &p_action, undefined4 p_speed, MxPresenter::TickleState p_tickleState)
[AI] Initiates playback of a new background music action with specified speed and target tickle state...
void Stop()
[AI] Immediately stops all background music, clears all actions and presenters, and resets tickle sta...
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
virtual void SetAtomId(MxAtomId p_atomId)
[AI] Sets the atom id for this object instance, used for indexing or lookup.
void SetObjectId(MxU32 p_objectId)
[AI] Sets the object id (for serialization or lookup).
void Unregister(MxCore *p_listener)
[AI] Removes a previously registered listener and flushes any pending notifications for it.
void Register(MxCore *p_listener)
[AI] Registers a listener object to receive notifications.
[AI] Parameter object representing a single notification or event, carrying an identifier and sender ...
NotificationId GetNotification() const
[AI] Retrieves the current notification type of this parameter.
[AI] MxParam serves as a polymorphic base class for parameter passing in event and notification syste...
@ e_repeating
[AI] Presentation is repeating (e.g., looping media).
MxResult StartTransition(TransitionType p_animationType, MxS32 p_speed, MxBool p_doCopy, MxBool p_playMusicInAnim)
[AI] Begins a new transition animation of type p_animationType at the specified speed,...
@ e_mosaic
[AI] Complex mosaic block-out effect.
#define DECOMP_SIZE_ASSERT(T, S)
#define NULL
[AI] Null pointer value (C/C++ semantics).
void InvokeAction(Extra::ActionType p_actionId, const MxAtomId &p_pAtom, MxS32 p_streamId, LegoEntity *p_sender)
[AI] Dispatches and triggers a game action on the given script or object.
MxBool FUN_1003ef60()
[AI] Determines if the current actor can exit their area, based on state/zone/vehicle.
MxAtomId * g_isleScript
[AI] Node used in hierarchical scene graphs and animation trees. [AI]
LegoGameState * GameState()
[AI] Accessor for the game's central game state controller. [AI]
MxTransitionManager * TransitionManager()
[AI] Accessor for the MxTransitionManager, handling level transitions, fades, and world changes....
MxBackgroundAudioManager * BackgroundAudioManager()
[AI] Accessor for the background audio manager. Used for background music and ambient sounds....
LegoWorld * FindWorld(const MxAtomId &p_atom, MxS32 p_entityid)
[AI] Searches for or retrieves a LegoWorld instance based on an atom id and entity id.
LegoPathActor * UserActor()
[AI] Accessor for the user (player-controllable) LegoPathActor. [AI]
MxNotificationManager * NotificationManager()
[AI] Returns the notification manager for system-wide state/update notifications.
@ c_notificationClick
[AI] Mouse click event [AI]
@ c_JBMusic3
[AI] Jukebox miscellaneous music 3.
@ c_JBMusic4
[AI] Jukebox miscellaneous music 4.
@ c_JBMusic1
[AI] Jukebox miscellaneous music 1.
@ c_JBMusic6
[AI] Jukebox miscellaneous music 6.
@ c_JBMusic5
[AI] Jukebox miscellaneous music 5.
@ c_JBMusic2
[AI] Jukebox miscellaneous music 2.
[AI] Contains global script AtomId pointers and utility functions for managing script AtomIds in LEGO...
MxAtomId * g_jukeboxScript
[AI] Script AtomId for the Jukebox entity/event script.