12 m_type = e_serialAction;
36 if (p_dsSerialAction.m_cursor->
HasMatch() || p_dsSerialAction.m_unk0xa0) {
37 MxTrace(
"copying a serialAction while someone is traversing it's list\n");
51 if (
this == &p_dsSerialAction) {
84 while (cursor.
Next(action)) {
88 if (action->
IsA(
"MxDSMediaAction")) {
91 if (sustainTime && sustainTime != -1) {
[AI] Convenience cursor class for iterating over an MxDSActionList.
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
MxLong GetStartTime() const
[AI] Gets the nominal start time for the action, as loaded or scheduled.
MxBool IsA(const char *p_name) const override
[AI] Run-time type check, compares provided name with this or any ancestor type.
virtual MxLong GetDuration()
[AI] Gets the duration for which this action is intended to run.
MxLong m_duration
[AI] The duration to run the action, or INT_MIN for undefined.
[AI] Represents a container for multiple MxDSAction objects, facilitating the grouping and management...
MxDSActionList * m_actionList
[AI] List of contained actions (ownership: this owns and deletes subactions).
MxDSMultiAction & operator=(MxDSMultiAction &p_dsMultiAction)
[AI] Assignment operator, deeply copies all state and actions from another MxDSMultiAction.
[AI] Represents a serial (sequential) action group for data-driven sequence execution in LEGO Island.
MxDSSerialAction & operator=(MxDSSerialAction &p_dsSerialAction)
[AI] Assignment operator.
MxLong GetDuration() override
[AI] Calculates and retrieves the total duration of this serial action.
MxDSAction * Clone() override
[AI] Clones (deep copies) this serial action, including its list of contained actions and configurati...
MxDSSerialAction()
[AI] Constructs an empty serial action, setting up the cursor and type.
void CopyFrom(MxDSSerialAction &p_dsSerialAction)
[AI] Copies the state of another MxDSSerialAction into this one, including duplication warnings if th...
~MxDSSerialAction() override
[AI] Destructor.
void SetDuration(MxLong p_duration) override
[AI] Sets an explicit duration value for the entire serial action sequence.
#define DECOMP_SIZE_ASSERT(T, S)
#define NULL
[AI] Null pointer value (C/C++ semantics).
#define MxTrace(args)
[AI] Macro for trace logging (non-variadic version, MSVC compatibility), expands to nothing.