23 m_pizzaVisible =
FALSE;
24 m_maxLinearVel = 15.0;
63 m_pizzaVisible =
FALSE;
133 presenter->
Enable(p_enable);
135 else if (m_pizzaVisible) {
158 mat.
TranslateBy(mat[2][0] * 2.5, mat[2][1] + 0.2, mat[2][2] * 2.5);
[AI] Holds state and transient gameplay data for the first act on Lego Island.
MxBool m_unk0x022
[AI] Temporary state variable; persists through serialization, often used for logic gating....
MxU32 m_unk0x018
[AI] Internal gameplay state variable; see Get/SetUnknown18 for usage. [AI]
Derived path actor type for handling player transitions and activities on LEGO Island.
MxResult Create(MxDSAction &p_dsAction) override
[AI] Initialize this actor from a DSAction.
virtual void Exit()
[AI] Called when the actor is deactivated or moved out of player control, restoring previous actor if...
LegoWorld * m_world
[AI] Pointer to the current world instance actor is existing in. [AI]
virtual void Enter()
[AI] Called when the actor is made active in a new area or context, setting navigation and visibility...
[AI] Represents the main overworld (LEGO Island) in the game, acting as the central hub and state mac...
virtual MxU8 GetActorId()
[AI] Gets this actor's numeric ID, corresponding to a known enumeration/actor.
MxResult FUN_10060dc0(MxU32 p_objectId, MxMatrix *p_matrix, MxBool p_param3, MxU8 p_param4, LegoROI *p_roi, MxBool p_param6, MxBool p_param7, MxBool p_param8, MxBool p_param9)
[AI] Helper for starting a specific animation, including world matrix and camera settings.
@ e_unk0
[AI] Unknown/unspecified play mode
MxResult FUN_10064740(Vector3 *p_position)
[AI] Similar to FUN_10064670, but triggers a different special animation event for secondary location...
MxResult FUN_10064670(Vector3 *p_position)
[AI] Activates special triggered animation in response to player position near given point.
[AI] Notification parameter for the LegoControlManager, used to propagate information about control e...
MxS32 m_clickedObjectId
[AI] Object ID of the clicked control/presenter (or -1 if not set). [AI]
MxS16 m_unk0x28
[AI] Undetermined; settable via SetUnknown0x28. [AI]
void Register(MxCore *p_listener)
[AI] Adds a listener to be notified of control events.
void Unregister(MxCore *p_listener)
[AI] Removes a listener so it no longer receives control events.
LegoROI * GetROI()
[AI] Gets the ROI (Realtime Object Instance) associated with this entity. [AI]
LegoROI * m_roi
[AI] Pointer to this entity's currently assigned ROI (3D instance in the world). [AI]
Area m_currentArea
Area/world the player is presently in. [AI].
LegoState * CreateState(const char *p_stateName)
Creates an instance of given state, registers it, and returns pointer.
LegoState * GetState(const char *p_stateName)
Find an existing state (LegoState-derived) object by its registered script/class name.
@ e_unk66
Used for some spawn locations. [AI].
@ e_skateboard
Skateboard (vehicle, spawn). [AI].
MxBool IsA(const char *p_name) const override
[AI] RTTI-like check, matches against own or base class name for IsA hierarchy checks.
virtual void Add(MxCore *p_object)
Adds an object (entity, presenter, ROI, etc.) to the appropriate world-managed list or set.
MxCore * Find(const char *p_class, const char *p_name)
Finds an object of a given class and name in the world.
virtual void TranslateBy(const float &p_x, const float &p_y, const float &p_z)
Applies translation by amounts along X, Y, Z axes.
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
void SetObjectId(MxU32 p_objectId)
[AI] Sets the object id (for serialization or lookup).
[AI] Represents a 4x4 transformation matrix, specialized for the LEGO Island engine and derived from ...
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.
MxResult Send(MxCore *p_listener, const MxNotificationParam &p_param)
[AI] Queues a notification to be sent to a specific registered listener.
[AI] Parameter object representing a single notification or event, carrying an identifier and sender ...
[AI] Presenter for single still image/bitmap media sources in the game.
void Enable(MxBool p_enable) override
[AI] Sets the enabled/disabled state of the presenter, updating the video manager's rendering as need...
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.
const float * GetWorldPosition() const
Returns a pointer to the world position from the transformation matrix (translation row).
Interactive pizza entity actor; manages the in-game pizza delivery sequence and reacts to mission tri...
void SetSkateboard(SkateBoard *p_skateBoard)
Sets the SkateBoard actor pointer used for interaction and scene presentation.
void StopActions()
Stops all currently running pizza mission actions and resets to an idle state.
void FUN_100382b0()
Cancels or resets the Pizza mission, stopping music, resetting camera, and animation state.
[AI] Represents the skateboard vehicle actor used in the minigame and cutscenes.
~SkateBoard() override
[AI] Destructor that performs de-registration from control/notification managers. [AI]
MxLong HandleClick() override
[AI] Handles player click events on the SkateBoard.
MxLong HandleNotification0() override
[AI] Responds to a generic notification.
MxLong HandleControl(LegoControlManagerNotificationParam &p_param) override
[AI] Handles controller input or notification events directed at the SkateBoard (e....
MxBool IsA(const char *p_name) const override
[AI] Checks if this instance is of type "SkateBoard" or a base type.
void ActivateSceneActions()
[AI] Activates the skateboard scene-specific scripted actions, including animations and music.
void Exit() override
[AI] Exits the skateboard sequence, unregisters itself, and resets related scene state.
MxResult Create(MxDSAction &p_dsAction) override
[AI] Initializes the SkateBoard from a DSAction (e.g., script sequence start).
void EnableScenePresentation(MxBool p_enable)
[AI] Enables or disables the presentation (visual display) of pizza in the skateboard scene.
[AI] 3D vector class, providing vector and cross-product operations in 3D space.
#define DECOMP_SIZE_ASSERT(T, S)
#define NULL
[AI] Null pointer value (C/C++ semantics).
#define SUCCESS
[AI] Used to indicate a successful operation in result codes.
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 RemoveFromCurrentWorld(const MxAtomId &p_atomId, MxS32 p_id)
[AI] Removes an entity or presenter with specified AtomId and ID from the current world; triggers End...
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]
LegoAnimationManager * AnimationManager()
[AI] Accessor for the animation manager, which controls Lego character/world animation state....
MxTransitionManager * TransitionManager()
[AI] Accessor for the MxTransitionManager, handling level transitions, fades, and world changes....
MxDSAction & GetCurrentAction()
[AI] Accessor for the currently running MxDSAction (e.g.
LegoControlManager * ControlManager()
[AI] Accessor for the control manager through the input manager; manages higher-level user/game contr...
LegoWorld * CurrentWorld()
[AI] Accessor for the currently active LegoWorld instance. [AI]
void FUN_10015820(MxBool p_disable, MxU16 p_flags)
[AI] Utility for enabling or disabling functionality in LegoOmni based on certain flags.
void PlayMusic(JukeboxScript::Script p_objectId)
[AI] Starts music playback by scripting the background audio manager to play the music piece referenc...
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_notificationType0
[AI] Undefined/Generic notification type [AI]
@ c_BeachBlvd_Music
[AI] Music for Beach Boulevard.
[AI] Contains global script AtomId pointers and utility functions for managing script AtomIds in LEGO...