Isle
|
[AI] Specialized presenter class for handling locomotion animation playback and state in the LEGO Island game engine. More...
#include <legolocomotionanimpresenter.h>
Public Member Functions | |
LegoLocomotionAnimPresenter () | |
[AI] Constructs a new LegoLocomotionAnimPresenter and initializes internal members. More... | |
~LegoLocomotionAnimPresenter () override | |
[AI] Destructor. More... | |
const char * | ClassName () const override |
[AI] Gets the class name for run-time type identification. More... | |
MxBool | IsA (const char *p_name) const override |
[AI] Checks if the given name matches the class (or any ancestor) for run-time type queries. More... | |
void | ReadyTickle () override |
[AI] Called during the ready tickle state to prepare for animation processing and add itself to the world if necessary. More... | |
void | StartingTickle () override |
[AI] Called during the starting tickle state to dequeue and process any pending animation data chunks. More... | |
void | StreamingTickle () override |
[AI] Called during the streaming state to manage lifecycle and check if further processing is required. More... | |
MxResult | AddToManager () override |
[AI] Registers this presenter with manager systems and initializes additional ROI mapping state. More... | |
void | Destroy () override |
[AI] Completely cleans up and deletes this presenter's resources. More... | |
void | EndAction () override |
[AI] Ends the bound action/animation for this presenter, finalizing any running videos or related resources. More... | |
void | PutFrame () override |
[AI] Called to process/queue a frame for this presenter's active animation playback. More... | |
MxResult | CreateAnim (MxStreamChunk *p_chunk) override |
[AI] Creates an animation sequence from a stream chunk and initializes playback. More... | |
void | FUN_1006d680 (LegoAnimActor *p_actor, MxFloat p_value) |
[AI] Binds a LegoAnimActor to the internal animation context and ROI mapping. More... | |
void | DecrementUnknown0xd4 () |
[AI] Decrements the reference/lightweight counter controlling an internal streaming/cleanup state. More... | |
undefined2 | GetUnknown0xd4 () |
[AI] Accessor for m_unk0xd4, a lightweight counter used internally to gate certain state transitions. More... | |
![]() | |
const char * | ClassName () const override |
[AI] Returns the actual class name for runtime type identification. More... | |
MxBool | IsA (const char *p_name) const override |
[AI] Checks if this object is or derives from a class of the given name. More... | |
void | StreamingTickle () override |
[AI] Called every streaming tickle to update looping/animation progress. More... | |
void | PutFrame () override |
[AI] Advances animation to the correct frame, applying looping time logic. More... | |
![]() | |
LegoAnimPresenter () | |
[AI] Constructor for LegoAnimPresenter. More... | |
~LegoAnimPresenter () override | |
[AI] Destructor for LegoAnimPresenter. More... | |
const char * | ClassName () const override |
[AI] RTTI name for the presenter ("LegoAnimPresenter"), used for string-based identification. More... | |
MxBool | IsA (const char *p_name) const override |
[AI] Checks if this or a parent class matches the given type name for RTTI. More... | |
void | ReadyTickle () override |
[AI] Called when the presenter is in the "Ready" tickle state. More... | |
void | StartingTickle () override |
[AI] Called at the "Starting" tickle state. More... | |
void | StreamingTickle () override |
[AI] Tickle function during streaming (active animation). More... | |
void | DoneTickle () override |
[AI] Called when animation streaming completes; triggers notification and wraps up state. More... | |
void | ParseExtra () override |
[AI] Extra data parser for animation presenter. More... | |
MxResult | AddToManager () override |
[AI] Adds this presenter instance to the relevant presenter/notification manager. More... | |
void | Destroy () override |
[AI] Releases all internal resources, actors, maps, and presenter state. More... | |
MxResult | StartAction (MxStreamController *p_controller, MxDSAction *p_action) override |
[AI] Begin playback action using a stream and a given action descriptor. More... | |
void | EndAction () override |
[AI] Completes playback action, triggers world notification and resets/hides all animated actors depending on flags. More... | |
void | PutFrame () override |
[AI] Called once per frame to push updated animation information (transform, position, etc.) to the ROIs. More... | |
virtual MxResult | CreateAnim (MxStreamChunk *p_chunk) |
[AI] Creates/loads the LegoAnim resource instance from a stream chunk buffer. More... | |
virtual void | VTable0x8c () |
[AI] Virtual callback for future expansion. More... | |
virtual void | VTable0x90 () |
[AI] Virtual callback for future expansion. More... | |
virtual MxU32 | VTable0x94 (Vector3 &p_v1, Vector3 &p_v2, float p_f1, float p_f2, Vector3 &p_v3) |
[AI] Tests if a swept segment (defined by v1, v2, f1, f2) collides any of this presenter's animated ROIs. More... | |
virtual MxResult | VTable0x98 (LegoPathBoundary *p_boundary) |
[AI] Adds all actor ROIs, associated with this animation, to the provided path boundary for grouping or path following. More... | |
virtual LegoROI ** | GetROIMap (MxU32 &p_roiMapSize) |
[AI] Returns the mapping array from animation node index to LegoROI*. More... | |
virtual void | VTable0xa0 (Matrix4 &p_matrix) |
[AI] Sets the baseline transform for the animation. More... | |
MxResult | FUN_1006afc0 (MxMatrix *&p_matrix, float p_und) |
[AI] Fills a matrix array with each node's local-to-world transform after animation advance (for state change / blending). More... | |
MxResult | FUN_1006b140 (LegoROI *p_roi) |
[AI] Calculates a blended transformation for a target ROI and applies as base transform for this animation. More... | |
void | FUN_1006c7a0 () |
[AI] Immediately completes this animation, updates all ROIs to their final pose. More... | |
const char * | GetActionObjectName () |
[AI] Gets the name of the object associated with the current animation action. More... | |
void | SetCurrentWorld (LegoWorld *p_currentWorld) |
[AI] Sets the world used by this presenter for actor placement and notification. More... | |
void | SetUnknown0x0cTo1 () |
[AI] Sets the value of internal flag m_unk0x9c to 1. More... | |
void | SetUnknown0xa0 (Matrix4 *p_unk0xa0) |
[AI] Sets a pointer to the baseline animation transform. More... | |
LegoAnim * | GetAnimation () |
[AI] Returns the current animation resource in use. More... | |
![]() | |
MxVideoPresenter () | |
Constructs a new MxVideoPresenter and initializes internal state. More... | |
virtual void | LoadHeader (MxStreamChunk *p_chunk) |
Loads and processes header information from a video stream chunk. More... | |
virtual void | CreateBitmap () |
Allocates and sets up the display bitmap for video frame data. More... | |
virtual void | NextFrame () |
Advances video playback to the next frame, handling decoding and playback progression. More... | |
virtual void | LoadFrame (MxStreamChunk *p_chunk) |
Loads and processes frame data from a video stream chunk. More... | |
virtual void | PutFrame () |
Presents the current frame using the chosen output mechanism (e.g., blitting to screen). More... | |
virtual void | RealizePalette () |
Loads or establishes the palette for display from the current video format or media. More... | |
virtual undefined | VTable0x74 () |
Unknown/potentially format-specific method (VTable0x74). More... | |
~MxVideoPresenter () override | |
Destroys the MxVideoPresenter, releasing owned resources and unregistering from the manager. More... | |
void | Destroy () override |
Destroys internal resources for the presenter. More... | |
virtual LPDIRECTDRAWSURFACE | VTable0x78 () |
Retrieves the DirectDraw surface used for hardware-accelerated rendering. More... | |
virtual MxBool | VTable0x7c () |
Checks if this presenter has either a video frame bitmap or alpha mask available. More... | |
virtual MxS32 | GetWidth () |
Returns the width of the current bitmap or alpha mask in pixels. More... | |
virtual MxS32 | GetHeight () |
Returns the height of the current bitmap or alpha mask in pixels. More... | |
const char * | ClassName () const override |
Returns the run-time class name of this presenter instance. More... | |
MxBool | IsA (const char *p_name) const override |
Determines if this object is or derives from a class with the given name. More... | |
void | ReadyTickle () override |
Advance logic for the "ready" tickle state. More... | |
void | StartingTickle () override |
Advance logic for the "starting" tickle state (frame setup). More... | |
void | StreamingTickle () override |
Advance logic for the "streaming" tickle state (typical video playback). More... | |
void | RepeatingTickle () override |
Advance logic for the "repeating" tickle state (media looping). More... | |
void | FreezingTickle () override |
Advance logic for the "freezing" tickle state (sustain after playback). More... | |
MxResult | AddToManager () override |
Adds this presenter to the global video manager. More... | |
void | EndAction () override |
Signals the end of the current playback action. More... | |
MxResult | PutData () override |
Writes the frame to the display device if appropriate. More... | |
MxBool | IsHit (MxS32 p_x, MxS32 p_y) override |
Determines if a point is inside the non-transparent region of frame/alpha. More... | |
MxS32 | PrepareRects (RECT &p_rectDest, RECT &p_rectSrc) |
Utility function to adjust source/dest rectangles to stay within allowed bounds. More... | |
MxBitmap * | GetBitmap () |
Returns the frame bitmap currently used for this presenter. More... | |
AlphaMask * | GetAlphaMask () |
Returns this presenter's alpha mask for hit testing. More... | |
MxU8 * | GetBitmapStart (MxS32 p_left, MxS32 p_top) |
Provides a pointer to the start of frame bitmap data at a given coordinate. More... | |
void | SetBit0 (BOOL p_e) |
Sets internal miscellaneous state flags. More... | |
void | SetBit1 (BOOL p_e) |
void | SetBit2 (BOOL p_e) |
void | SetBit3 (BOOL p_e) |
void | SetBit4 (BOOL p_e) |
BYTE | GetBit0 () |
Gets internal miscellaneous state flags (bits 0-4). More... | |
BYTE | GetBit1 () |
BYTE | GetBit2 () |
BYTE | GetBit3 () |
BYTE | GetBit4 () |
![]() | |
MxMediaPresenter () | |
[AI] Constructs the presenter, initializing all member variables. More... | |
~MxMediaPresenter () override | |
[AI] Destructor; cleans up and optionally destroys all internal resources as well as the MxDSSubscriber and chunk list/cursor. More... | |
void | Destroy () override |
[AI] Cleans up internal resources and resets the presenter to an uninitialized state. More... | |
MxResult | Tickle () override |
[AI] Advances the presenter's state and media stream, if any, by tickling (i.e., updating) components. More... | |
const char * | ClassName () const override |
[AI] Returns the class name for this presenter (see HandlerClassName()). More... | |
MxBool | IsA (const char *p_name) const override |
[AI] Returns TRUE if the provided class name matches this class or any of its parents. More... | |
void | StreamingTickle () override |
[AI] Per-frame update when streaming the media stream. More... | |
void | RepeatingTickle () override |
[AI] Per-frame update while looping/repeating over known chunks. More... | |
void | DoneTickle () override |
[AI] Per-frame update for the "done" state; transitions this presenter to idle and ends the action. More... | |
MxResult | StartAction (MxStreamController *, MxDSAction *) override |
[AI] Begins a new media playback action, wiring up the stream and chunk lists as needed. More... | |
void | EndAction () override |
[AI] Ends the media playback action, releasing all resources, notifying listeners if necessary. More... | |
void | Enable (MxBool p_enable) override |
[AI] Enables or disables media stream playback and transitions state as needed. More... | |
virtual void | LoopChunk (MxStreamChunk *p_chunk) |
[AI] Adds a chunk to the looping chunk list, making it available for repeated playback. More... | |
MxStreamChunk * | CurrentChunk () |
[AI] Returns a pointer to the current data chunk at the head of the stream, without consuming it. More... | |
MxStreamChunk * | NextChunk () |
[AI] Returns the next data chunk in the stream, removing it from the stream queue. More... | |
![]() | |
MxPresenter () | |
[AI] Constructor. Initializes internal tickle state and other members. More... | |
MxResult | Tickle () override |
[AI] Main tickle handler, called periodically to progress presenter's internal state. More... | |
virtual void | VTable0x14 () |
[AI] Reserved for future or specialized use in derived classes. More... | |
virtual void | ReadyTickle () |
[AI] Handles the transition and setup for the Ready state. Parses extra action data and advances state. More... | |
virtual void | StartingTickle () |
[AI] Handles actions required when first starting presentation. Advances to streaming state. More... | |
virtual void | StreamingTickle () |
[AI] Handles periodic updates during the streaming/presentation stage. Advances to repeating state. More... | |
virtual void | RepeatingTickle () |
[AI] Handles updates when in a repeating (looping) stage. Advances to freezing state. More... | |
virtual void | FreezingTickle () |
[AI] Handles updates during the freezing/suspended state. Advances to done state. More... | |
~MxPresenter () override | |
[AI] Destructor, cleans up resources (base class: does nothing beyond Init). More... | |
virtual MxResult | AddToManager () |
[AI] Optional registration with a manager (such as TickleManager); by default does nothing. More... | |
virtual void | Destroy () |
[AI] Resets presenter state or cleans up resources after completion/removal. More... | |
virtual MxResult | StartAction (MxStreamController *, MxDSAction *) |
[AI] Initiates presenter for a new action, setting up context and state. More... | |
virtual void | EndAction () |
[AI] Terminates the current action, notifies listeners and resets state. More... | |
virtual void | SetTickleState (TickleState p_tickleState) |
[AI] Forces the tickle state, advancing to the requested lifecycle stage. More... | |
virtual MxBool | HasTickleStatePassed (TickleState p_tickleState) |
[AI] Checks if the specified tickle state has ever been passed since last reset. More... | |
virtual MxResult | PutData () |
[AI] Allows the presenter to submit pending results or output to the engine. More... | |
virtual MxBool | IsHit (MxS32 p_x, MxS32 p_y) |
[AI] Returns TRUE if the given (x, y) falls within hit-test bounds for the presenter (e.g. More... | |
virtual void | Enable (MxBool p_enable) |
[AI] Enables or disables this presenter (controls action flags accordingly). More... | |
const char * | ClassName () const override |
[AI] Returns the run-time class name for this presenter. More... | |
MxBool | IsA (const char *p_name) const override |
[AI] Determines if this object is of (or inherits) the specified named class. More... | |
MxEntity * | CreateEntity (const char *p_defaultName) |
[AI] Creates an entity based on action 'extra' data, or uses the provided default name. More... | |
void | SendToCompositePresenter (MxOmni *p_omni) |
[AI] Notifies a composite presenter (if one exists) that this presenter wishes to join a group. More... | |
MxBool | IsEnabled () |
[AI] Returns whether this presenter is logically enabled (based on the associated action's flags). More... | |
MxS32 | GetCurrentTickleState () const |
[AI] Returns the current tickle state. More... | |
MxPoint32 | GetLocation () const |
[AI] Returns the presenter's screen location (in pixels). More... | |
MxS32 | GetX () const |
[AI] Returns the X coordinate of screen location. More... | |
MxS32 | GetY () const |
[AI] Returns the Y coordinate of screen location. More... | |
MxS32 | GetDisplayZ () const |
[AI] Returns the display Z (depth) order. More... | |
MxDSAction * | GetAction () const |
[AI] Returns the current action being presented. More... | |
void | SetAction (MxDSAction *p_action) |
[AI] Sets the action associated with this presenter. More... | |
void | SetCompositePresenter (MxCompositePresenter *p_compositePresenter) |
[AI] Sets the composite presenter to notify/join on completion. More... | |
void | SetDisplayZ (MxS32 p_displayZ) |
[AI] Sets the display Z (depth) order for the presenter. More... | |
![]() | |
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... | |
Static Public Member Functions | |
static const char * | HandlerClassName () |
[AI] Gets the handler class name for this presenter type. More... | |
![]() | |
static const char * | HandlerClassName () |
[AI] Returns the name of the handler class as a static string. More... | |
![]() | |
static const char * | HandlerClassName () |
[AI] Returns the class name for this presenter ("LegoAnimPresenter"). More... | |
![]() | |
static const char * | HandlerClassName () |
Returns the class name string for this presenter type. More... | |
![]() | |
static const char * | HandlerClassName () |
[AI] Gets the class name string for handler dispatch and RTTI emulation. More... | |
![]() | |
static const char * | HandlerClassName () |
[AI] Returns the handler class name for identification and reflection purposes. More... | |
Additional Inherited Members | |
![]() | |
enum | { c_hideOnStop = 0x01 , c_mustSucceed = 0x02 } |
[AI] Animation presenter flags More... | |
![]() | |
enum | TickleState { e_idle = 0 , e_ready , e_starting , e_streaming , e_repeating , e_freezing , e_done } |
[AI] Represents the state of the presenter's tickle (update) lifecycle. More... | |
![]() | |
float | m_unk0xa4 |
[AI] Animation touch radius for path boundary checks and state (set from resource). More... | |
Mx3DPointFloat | m_unk0xa8 |
[AI] 3D float property, used for animation base position offset. More... | |
![]() | |
void | Init () |
[AI] Allocates and resets all internal presenter state. More... | |
void | Destroy (MxBool p_fromDestructor) |
[AI] Releases all dynamic memory, unbinds actors from animation, and resets references. More... | |
LegoChar * | FUN_10069150 (const LegoChar *p_und1) |
[AI] [Internal] String construction utility used in actor/ROI naming substitution. More... | |
void | FUN_100692b0 () |
[AI] Populates m_unk0x74 with all relevant ROIs/actors for this animation by iterating actors in the animation resource. More... | |
void | FUN_100695c0 () |
[AI] Scans the world view compound objects to find and collect relevant ROIs for animation, populating m_unk0x70. More... | |
LegoChar * | FUN_100697c0 (const LegoChar *p_und1, const LegoChar *p_und2) |
[AI] Returns a composed name string for combining variable substitution and direct actor references for name lookup. More... | |
LegoBool | FUN_100698b0 (const CompoundObject &p_rois, const LegoChar *p_und2) |
[AI] Locates (and adds to m_unk0x70) an ROI in a compound object by substituted name, matching either direct or indirect name reference. More... | |
LegoROI * | FUN_100699e0 (const LegoChar *p_und) |
[AI] Looks up an ROI in m_unk0x70 by substituted name. More... | |
void | FUN_10069b10 () |
[AI] Builds mapping from animation node data names to ROIs, fills m_roiMap and m_roiMapSize. More... | |
void | FUN_1006a3c0 (LegoAnimStructMap &p_map, LegoTreeNode *p_node, LegoROI *p_roi) |
[AI] Recursive helper for building ROI map: walks animation node tree, matching names to ROIs at each node level. More... | |
void | FUN_1006a4f0 (LegoAnimStructMap &p_map, LegoAnimNodeData *p_data, const LegoChar *p_und, LegoROI *p_roi) |
[AI] Helper to insert an animation node's data into the map (adding new struct if not already inserted). More... | |
void | FUN_1006aa60 () |
[AI] Releases all actors in m_unk0x74 via CharacterManager, respecting state flag m_unk0x96. More... | |
void | FUN_1006ab70 () |
[AI] Invokes end-of-animation logic via AnimationManager, depending on mode flag m_unk0x96. More... | |
LegoBool | FUN_1006aba0 () |
[AI] Returns TRUE if every animation actor/ROI node is bound successfully. More... | |
MxBool | FUN_1006abb0 (LegoTreeNode *p_node, LegoROI *p_roi) |
[AI] Recursively validates correct ROI matching/binding in animation tree (helper for FUN_1006aba0). More... | |
void | SubstituteVariables () |
[AI] Applies all queued variable substitutions in the animation resource by setting corresponding VariableTable entries. More... | |
void | FUN_1006b900 (LegoAnim *p_anim, MxLong p_time, Matrix4 *p_matrix) |
[AI] Steps animation nodes to 'p_time' using transform 'p_matrix', using fast path for tree traversal. More... | |
void | FUN_1006b9a0 (LegoAnim *p_anim, MxLong p_time, Matrix4 *p_matrix) |
[AI] Like FUN_1006b900, but also processes associated camera animation if present. More... | |
void | FUN_1006c8a0 (MxBool p_bool) |
[AI] Enables or disables internal state (LegoEntity c_altBit1) on all animated entities. More... | |
![]() | |
void | Destroy (MxBool p_fromDestructor) |
Releases resources and unregisters presenter from the video manager. More... | |
![]() | |
void | Init () |
[AI] Initializes all member variables to a known default state (NULL pointers, etc). More... | |
void | Destroy (MxBool p_fromDestructor) |
[AI] Frees all managed resources, owned memory and pointers, optionally preventing destruction of the base class. More... | |
![]() | |
virtual void | DoneTickle () |
[AI] Handles any post-completion logic, resetting to idle state. More... | |
virtual void | ParseExtra () |
[AI] Parses additional data from the associated action for configuration or world interaction. More... | |
void | ProgressTickleState (TickleState p_tickleState) |
[AI] Helper for advancing the presenter's tickle state and updating transition history. More... | |
void | Init () |
[AI] Initializes object state to post-construction defaults. More... | |
![]() | |
LegoAnim * | m_anim |
[AI] Animation resource currently being played back. More... | |
LegoROI ** | m_roiMap |
[AI] Lookup array to map animation node indices to scene ROIs (1-based index). More... | |
MxU32 | m_roiMapSize |
[AI] Number of valid entries in m_roiMap (excluding 0th index). More... | |
LegoROIList * | m_unk0x70 |
[AI] List of ROIs used during preprocessing, actor matching, or variable substitution (purpose varies). More... | |
LegoROIList * | m_unk0x74 |
[AI] List of actors/ROIs created or acquired for this animation instance. More... | |
Matrix4 * | m_unk0x78 |
[AI] Pointer to root/offset MxMatrix used for transform computations. More... | |
MxU32 | m_flags |
[AI] Animation presenter flags (hide-on-stop, must-succeed, etc). More... | |
LegoWorld * | m_currentWorld |
[AI] Reference to the world in which this presenter is currently placed/active. More... | |
MxAtomId | m_worldAtom |
[AI] String identifier for the target world (if set in animation resource via extra data). More... | |
MxS32 | m_worldId |
[AI] Numeric world ID for world selection/lookup. More... | |
LegoROI ** | m_unk0x8c |
[AI] Lookup array for secondary ROI objects (used for e.g. More... | |
char ** | m_unk0x90 |
[AI] Array of char* names used for selecting camera attached ROIs (from ptatcam extra parameter). More... | |
MxU8 | m_unk0x94 |
[AI] Count of valid camera attached ROI names in m_unk0x90 / m_unk0x8c. More... | |
MxBool | m_unk0x95 |
[AI] Boolean: indicates streaming/animation is finished and presenter should progress to Done state. More... | |
MxBool | m_unk0x96 |
[AI] Boolean/mode: influences actor release vs animation manager cleanup selection (see FUN_1006ab70). More... | |
undefined | m_unk0x97 |
[AI] Unknown/unused byte, for possible explicit alignment or hidden flag. More... | |
LegoAnimSubstMap * | m_substMap |
[AI] Table of macro/variable substitutions to apply before animation begins (from resource "subst" field). More... | |
MxS16 | m_unk0x9c |
[AI] Int16 state flag, set via SetUnknown0x0cTo1(). More... | |
Matrix4 * | m_unk0xa0 |
[AI] Optional pointer to a matrix storing a blended/baseline local-to-world transform. More... | |
![]() | |
MxBitmap * | m_frameBitmap |
Bitmap for current video frame. [AI]. More... | |
AlphaMask * | m_alpha |
Alpha mask for hit testing. May be null. [AI]. More... | |
LPDIRECTDRAWSURFACE | m_unk0x58 |
DirectDraw surface for hardware video rendering. [AI]. More... | |
MxS16 | m_unk0x5c |
Loop/advance/frame decode counter. [AI]. More... | |
FlagBitfield | m_flags |
Miscellaneous flags for object and UI state. [AI]. More... | |
MxLong | m_unk0x60 |
Last freeze time/start of sustain interval. [AI]. More... | |
![]() | |
MxDSSubscriber * | m_subscriber |
[AI] Subscriber that provides the stream data (e.g., audio/video chunks) for this presenter. More... | |
MxStreamChunkList * | m_loopingChunks |
[AI] Linked list of all chunks available for looping/repeating playback. More... | |
MxStreamChunkListCursor * | m_loopingChunkCursor |
[AI] Cursor used to iterate through the loopingChunk list during repeat mode. More... | |
MxStreamChunk * | m_currentChunk |
[AI] Currently active data chunk for playback or processing. More... | |
![]() | |
TickleState | m_currentTickleState |
[AI] Current state in the tickle lifecycle. More... | |
MxU32 | m_previousTickleStates |
[AI] Bitfield representing all tickle states that have already occurred during this lifetime. More... | |
MxPoint32 | m_location |
[AI] 2D display location for the presenter. More... | |
MxS32 | m_displayZ |
[AI] Z-order value for display stacking. More... | |
MxDSAction * | m_action |
[AI] The associated action currently being presented by this presenter. More... | |
MxCriticalSection | m_criticalSection |
[AI] Thread synchronization for presenter state and data. More... | |
MxCompositePresenter * | m_compositePresenter |
[AI] Owner composite presenter, if any. More... | |
[AI] Specialized presenter class for handling locomotion animation playback and state in the LEGO Island game engine.
[AI] LegoLocomotionAnimPresenter is a subclass of LegoLoopingAnimPresenter, designed to manage animation sequences that are associated with locomotion (movement) of game entities. It manages additional internal lists for ROI (real-time object instance) mapping and controls the tickle/process state flow for animations bound to moving actors. It integrates with the variable table to dynamically assign variables used during animation binding.
Definition at line 16 of file legolocomotionanimpresenter.h.
LegoLocomotionAnimPresenter::LegoLocomotionAnimPresenter | ( | ) |
[AI] Constructs a new LegoLocomotionAnimPresenter and initializes internal members.
Definition at line 16 of file legolocomotionanimpresenter.cpp.
|
override |
[AI] Destructor.
Cleans up resources, memory, and state used by this presenter instance.
Definition at line 22 of file legolocomotionanimpresenter.cpp.
|
overridevirtual |
[AI] Registers this presenter with manager systems and initializes additional ROI mapping state.
Reimplemented from LegoAnimPresenter.
Definition at line 70 of file legolocomotionanimpresenter.cpp.
|
inlineoverridevirtual |
[AI] Gets the class name for run-time type identification.
Reimplemented from LegoAnimPresenter.
Definition at line 41 of file legolocomotionanimpresenter.h.
|
overridevirtual |
[AI] Creates an animation sequence from a stream chunk and initializes playback.
p_chunk | Pointer to a stream chunk containing animation data. [AI] |
Reimplemented from LegoAnimPresenter.
Definition at line 62 of file legolocomotionanimpresenter.cpp.
|
inline |
[AI] Decrements the reference/lightweight counter controlling an internal streaming/cleanup state.
Definition at line 106 of file legolocomotionanimpresenter.h.
|
overridevirtual |
[AI] Completely cleans up and deletes this presenter's resources.
Should not be called directly—use Destroy() instead.
Reimplemented from LegoAnimPresenter.
Definition at line 82 of file legolocomotionanimpresenter.cpp.
|
overridevirtual |
[AI] Ends the bound action/animation for this presenter, finalizing any running videos or related resources.
Reimplemented from LegoAnimPresenter.
Definition at line 131 of file legolocomotionanimpresenter.cpp.
void LegoLocomotionAnimPresenter::FUN_1006d680 | ( | LegoAnimActor * | p_actor, |
MxFloat | p_value | ||
) |
[AI] Binds a LegoAnimActor to the internal animation context and ROI mapping.
p_actor | The animation actor to associate. [AI] |
p_value | An animation phase or weight value to use for the association. [AI] |
[AI] Internally, this updates the variable table to match the actor's ROI name with the animation, invokes mapping/finalization routines for ROI binding, and may invoke additional actor update routines.
Definition at line 140 of file legolocomotionanimpresenter.cpp.
|
inline |
[AI] Accessor for m_unk0xd4, a lightweight counter used internally to gate certain state transitions.
Definition at line 117 of file legolocomotionanimpresenter.h.
|
inlinestatic |
[AI] Gets the handler class name for this presenter type.
Definition at line 31 of file legolocomotionanimpresenter.h.
|
inlineoverridevirtual |
[AI] Checks if the given name matches the class (or any ancestor) for run-time type queries.
p_name | Class name to compare against. [AI] |
Reimplemented from LegoAnimPresenter.
Definition at line 51 of file legolocomotionanimpresenter.h.
|
overridevirtual |
[AI] Called to process/queue a frame for this presenter's active animation playback.
Reimplemented from LegoAnimPresenter.
Definition at line 88 of file legolocomotionanimpresenter.cpp.
|
overridevirtual |
[AI] Called during the ready tickle state to prepare for animation processing and add itself to the world if necessary.
Reimplemented from LegoAnimPresenter.
Definition at line 94 of file legolocomotionanimpresenter.cpp.
|
overridevirtual |
[AI] Called during the starting tickle state to dequeue and process any pending animation data chunks.
Reimplemented from LegoAnimPresenter.
Definition at line 110 of file legolocomotionanimpresenter.cpp.
|
overridevirtual |
[AI] Called during the streaming state to manage lifecycle and check if further processing is required.
Reimplemented from LegoAnimPresenter.
Definition at line 123 of file legolocomotionanimpresenter.cpp.