mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-31 04:01:16 +00:00
Fixes
This commit is contained in:
parent
e7777ad8de
commit
c105741b91
@ -36,7 +36,7 @@ class LegoAnimPresenter : public MxVideoPresenter {
|
|||||||
virtual MxResult StartAction(MxStreamController* p_controller, MxDSAction* p_action) override; // vtable+0x3c
|
virtual MxResult StartAction(MxStreamController* p_controller, MxDSAction* p_action) override; // vtable+0x3c
|
||||||
virtual void EndAction() override; // vtable+0x40
|
virtual void EndAction() override; // vtable+0x40
|
||||||
virtual void PutFrame() override; // vtable+0x6c
|
virtual void PutFrame() override; // vtable+0x6c
|
||||||
virtual MxS32 VTable0x88(MxStreamChunk* p_chunk) override; // vtable+0x88
|
virtual MxResult VTable0x88(MxStreamChunk* p_chunk) override; // vtable+0x88
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void Init();
|
void Init();
|
||||||
|
|||||||
@ -56,9 +56,9 @@ void LegoAnimPresenter::Destroy(MxBool p_fromDestructor)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10068fb0
|
// FUNCTION: LEGO1 0x10068fb0
|
||||||
MxS32 LegoAnimPresenter::VTable0x88(MxStreamChunk* p_chunk)
|
MxResult LegoAnimPresenter::VTable0x88(MxStreamChunk* p_chunk)
|
||||||
{
|
{
|
||||||
MxS32 result = FAILURE;
|
MxResult result = FAILURE;
|
||||||
LegoMemoryStream stream((char*) p_chunk->GetData());
|
LegoMemoryStream stream((char*) p_chunk->GetData());
|
||||||
|
|
||||||
MxS32 magicSig;
|
MxS32 magicSig;
|
||||||
@ -104,21 +104,21 @@ void LegoAnimPresenter::PutFrame()
|
|||||||
void LegoAnimPresenter::ReadyTickle()
|
void LegoAnimPresenter::ReadyTickle()
|
||||||
{
|
{
|
||||||
m_currentWorld = GetCurrentWorld();
|
m_currentWorld = GetCurrentWorld();
|
||||||
|
|
||||||
if (m_currentWorld) {
|
if (m_currentWorld) {
|
||||||
MxStreamChunk* chunk = m_subscriber->CurrentChunk();
|
MxStreamChunk* chunk = m_subscriber->CurrentChunk();
|
||||||
if (chunk) {
|
|
||||||
if (chunk->GetTime() + m_action->GetStartTime() <= m_action->GetElapsedTime()) {
|
|
||||||
chunk = m_subscriber->NextChunk();
|
|
||||||
MxU32 result = VTable0x88(chunk);
|
|
||||||
m_subscriber->DestroyChunk(chunk);
|
|
||||||
|
|
||||||
if (result == 0) {
|
if (chunk && chunk->GetTime() + m_action->GetStartTime() <= m_action->GetElapsedTime()) {
|
||||||
ProgressTickleState(TickleState_Starting);
|
chunk = m_subscriber->NextChunk();
|
||||||
ParseExtra();
|
MxResult result = VTable0x88(chunk);
|
||||||
}
|
m_subscriber->DestroyChunk(chunk);
|
||||||
else {
|
|
||||||
EndAction();
|
if (result == SUCCESS) {
|
||||||
}
|
ProgressTickleState(TickleState_Starting);
|
||||||
|
ParseExtra();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
EndAction();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user