Add remaining functions

This commit is contained in:
Christian Semmler 2023-08-13 07:55:35 -04:00
parent 2b68b9cb48
commit 81f5fe9d47
3 changed files with 29 additions and 1 deletions

View File

@ -46,8 +46,12 @@ class MxDSAction : public MxDSObject
MxU32 m_sizeOnDisk; MxU32 m_sizeOnDisk;
DWORD m_flags; DWORD m_flags;
DWORD m_startTime; DWORD m_startTime;
protected:
MxLong m_duration; MxLong m_duration;
MxS32 m_loopCount; MxS32 m_loopCount;
private:
MxVector3Data m_location; MxVector3Data m_location;
MxVector3Data m_direction; MxVector3Data m_direction;
MxVector3Data m_up; MxVector3Data m_up;

View File

@ -47,6 +47,14 @@ MxDSStreamingAction *MxDSStreamingAction::CopyFrom(MxDSStreamingAction &p_dsStre
return this; return this;
} }
// OFFSET: LEGO1 0x100cd090
MxBool MxDSStreamingAction::HasId(MxU32 p_objectId)
{
if (this->m_internalAction)
return this->m_internalAction->HasId(p_objectId);
return FALSE;
}
// OFFSET: LEGO1 0x100cd1e0 // OFFSET: LEGO1 0x100cd1e0
MxResult MxDSStreamingAction::Init() MxResult MxDSStreamingAction::Init()
{ {
@ -68,3 +76,16 @@ void MxDSStreamingAction::SetInternalAction(MxDSAction *p_dsAction)
delete this->m_internalAction; delete this->m_internalAction;
this->m_internalAction = p_dsAction; this->m_internalAction = p_dsAction;
} }
// OFFSET: LEGO1 0x100cd2d0
void MxDSStreamingAction::FUN_100CD2D0()
{
if (this->m_duration == -1)
return;
MxLong duration = this->m_duration / this->m_loopCount;
this->m_loopCount--;
this->m_duration -= duration;
this->m_unka8 += duration;
}

View File

@ -16,8 +16,11 @@ class MxDSStreamingAction : public MxDSAction
MxDSStreamingAction *CopyFrom(MxDSStreamingAction &p_dsStreamingAction); MxDSStreamingAction *CopyFrom(MxDSStreamingAction &p_dsStreamingAction);
virtual MxBool HasId(MxU32 p_objectId); // vtable+34;
MxResult Init(); MxResult Init();
void SetInternalAction(MxDSAction *p_dsAction); void SetInternalAction(MxDSAction *p_dsAction);
void FUN_100CD2D0();
private: private:
MxU32 m_unk94; MxU32 m_unk94;
@ -25,7 +28,7 @@ class MxDSStreamingAction : public MxDSAction
MxS32 m_unk9c; MxS32 m_unk9c;
MxDSBuffer *m_unka0; MxDSBuffer *m_unka0;
MxDSBuffer *m_unka4; MxDSBuffer *m_unka4;
undefined4 m_unka8; MxLong m_unka8;
undefined2 m_unkac; undefined2 m_unkac;
MxDSAction *m_internalAction; MxDSAction *m_internalAction;
}; };