diff --git a/LEGO1/mxloopingsmkpresenter.cpp b/LEGO1/mxloopingsmkpresenter.cpp index 4484624a..7f9a5851 100644 --- a/LEGO1/mxloopingsmkpresenter.cpp +++ b/LEGO1/mxloopingsmkpresenter.cpp @@ -39,8 +39,8 @@ void MxLoopingSmkPresenter::Destroy(MxBool p_fromDestructor) // FUNCTION: LEGO1 0x100b4a00 void MxLoopingSmkPresenter::VTable0x88() { - if (m_mxSmack.m_smackTag.Frames == m_elapsedFrames) { - m_elapsedFrames = 0; + if (m_mxSmack.m_smackTag.Frames == m_currentFrame) { + m_currentFrame = 0; // TODO: struct incorrect, Palette at wrong offset? memset(&m_mxSmack.m_smackTag.Palette[4], 0, sizeof(m_mxSmack.m_smackTag.Palette)); } diff --git a/LEGO1/mxsmkpresenter.cpp b/LEGO1/mxsmkpresenter.cpp index dc26ed7d..709151c3 100644 --- a/LEGO1/mxsmkpresenter.cpp +++ b/LEGO1/mxsmkpresenter.cpp @@ -21,7 +21,7 @@ MxSmkPresenter::~MxSmkPresenter() // FUNCTION: LEGO1 0x100b38d0 void MxSmkPresenter::Init() { - m_elapsedFrames = 0; + m_currentFrame = 0; memset(&m_mxSmack, 0, sizeof(m_mxSmack)); m_flags &= 0xfd; m_flags &= 0xfb; @@ -65,8 +65,8 @@ void MxSmkPresenter::LoadFrame(MxStreamChunk* p_chunk) MxU8* bitmapData = m_bitmap->GetBitmapData(); MxU8* chunkData = p_chunk->GetData(); - MxBool paletteChanged = m_mxSmack.m_frameTypes[m_elapsedFrames] & 1; - m_elapsedFrames++; + MxBool paletteChanged = m_mxSmack.m_frameTypes[m_currentFrame] & 1; + m_currentFrame++; VTable0x88(); MxRectList list(TRUE); @@ -90,13 +90,13 @@ void MxSmkPresenter::LoadFrame(MxStreamChunk* p_chunk) void MxSmkPresenter::VTable0x88() { if ((m_mxSmack.m_smackTag.SmackerType & 1) != 0) { - MxU32 und = (m_elapsedFrames % m_mxSmack.m_smackTag.Frames); - if (1 < m_elapsedFrames && und == 1) - m_elapsedFrames = 1; + MxU32 und = (m_currentFrame % m_mxSmack.m_smackTag.Frames); + if (1 < m_currentFrame && und == 1) + m_currentFrame = 1; } else { - if (m_mxSmack.m_smackTag.Frames == m_elapsedFrames) { - m_elapsedFrames = 0; + if (m_mxSmack.m_smackTag.Frames == m_currentFrame) { + m_currentFrame = 0; // TODO: struct incorrect, Palette at wrong offset? memset(&m_mxSmack.m_smackTag.Palette[4], 0, sizeof(m_mxSmack.m_smackTag.Palette)); } diff --git a/LEGO1/mxsmkpresenter.h b/LEGO1/mxsmkpresenter.h index f2ce9ce6..95b6a201 100644 --- a/LEGO1/mxsmkpresenter.h +++ b/LEGO1/mxsmkpresenter.h @@ -38,8 +38,8 @@ class MxSmkPresenter : public MxVideoPresenter { void Destroy(MxBool p_fromDestructor); protected: - MxSmack m_mxSmack; // 0x64 - MxU32 m_elapsedFrames; // 0x71c + MxSmack m_mxSmack; // 0x64 + MxU32 m_currentFrame; // 0x71c }; #endif // MXSMKPRESENTER_H