Match LegoOmni::Create(), other BETA10 matches (#1651)

* Match `LegoOmni::Create()`, other BETA10 matches

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
This commit is contained in:
jonschz
2025-07-25 17:13:34 +02:00
committed by GitHub
parent 2451b041f6
commit 03adac0c58
23 changed files with 187 additions and 42 deletions

View File

@@ -4,6 +4,8 @@
#include "misc/legocontainer.h"
#include "mxdsaction.h"
#include <assert.h>
DECOMP_SIZE_ASSERT(LegoFlcTexturePresenter, 0x70)
// FUNCTION: LEGO1 0x1005de80
@@ -27,11 +29,14 @@ void LegoFlcTexturePresenter::StartingTickle()
char* pp;
char extraCopy[128];
m_action->GetExtra(extraLength, pp);
assert(pp);
if (pp != NULL) {
strcpy(extraCopy, pp);
strcat(extraCopy, ".gif");
m_texture = TextureContainer()->Get(extraCopy);
LegoTextureContainer* textureContainer = TextureContainer();
assert(textureContainer);
m_texture = textureContainer->Get(extraCopy);
}
MxFlcPresenter::StartingTickle();

View File

@@ -26,6 +26,7 @@ DECOMP_SIZE_ASSERT(MxStopWatch, 0x18)
DECOMP_SIZE_ASSERT(MxFrequencyMeter, 0x20)
// FUNCTION: LEGO1 0x1007aa20
// FUNCTION: BETA10 0x100d5a00
LegoVideoManager::LegoVideoManager()
{
m_renderer = NULL;
@@ -286,12 +287,15 @@ void LegoVideoManager::ToggleFPS(MxBool p_visible)
}
// FUNCTION: LEGO1 0x1007b770
// STUB: BETA10 0x100d69cc
MxResult LegoVideoManager::Tickle()
{
#ifndef BETA10
if (m_unk0x554 && !m_videoParam.Flags().GetFlipSurfaces() &&
TransitionManager()->GetTransitionType() == MxTransitionManager::e_idle) {
Sleep(30);
}
#endif
m_stopWatch->Stop();
m_elapsedSeconds = m_stopWatch->ElapsedSeconds();
@@ -514,6 +518,7 @@ void LegoVideoManager::DrawFPS()
}
// FUNCTION: LEGO1 0x1007c080
// FUNCTION: BETA10 0x100d6d28
MxPresenter* LegoVideoManager::GetPresenterAt(MxS32 p_x, MxS32 p_y)
{
MxPresenterListCursor cursor(m_presenters);
@@ -551,6 +556,7 @@ MxPresenter* LegoVideoManager::GetPresenterByActionObjectName(const char* p_acti
}
// FUNCTION: LEGO1 0x1007c290
// FUNCTION: BETA10 0x100d731e
MxResult LegoVideoManager::RealizePalette(MxPalette* p_pallete)
{
if (p_pallete && m_videoParam.GetPalette()) {
@@ -652,6 +658,7 @@ void LegoVideoManager::OverrideSkyColor(MxBool p_shouldOverride)
}
// FUNCTION: LEGO1 0x1007c4d0
// FUNCTION: BETA10 0x100d77d3
void LegoVideoManager::UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height)
{
if (p_width == 0) {