implement RegistrationBook::ReadyWorld(), impl/match MxDisplaySurface::CopySurface() (#678)

* implement RegistrationBook::ReadyWorld()

* don't fix the size of letterBuffer

* Fix crash in MxStillPresenter::Clone

* Implement MxDisplaySurface::CopySurface

100% match

* improve accuracy

* invert HasRegistered check

* fix legogamestate structure, documentation tweaks

* this might be cleaner actually

* Update mxdisplaysurface.cpp

* Update legogamestate.h

* don't hardcode action ids in VTable0x64

* Match ~98%

---------

Co-authored-by: Misha <106913236+MishaProductions@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
Ramen2X
2024-03-15 21:32:06 -04:00
committed by GitHub
parent d07d7edc81
commit 6cd5ffcf1a
8 changed files with 170 additions and 63 deletions

View File

@@ -231,7 +231,7 @@ MxStillPresenter* MxStillPresenter::Clone()
if (presenter) {
if (presenter->AddToManager() == SUCCESS) {
MxDSAction* action = presenter->GetAction()->Clone();
MxDSAction* action = GetAction()->Clone();
if (action && presenter->StartAction(NULL, action) == SUCCESS) {
presenter->SetBit0(GetBit0());
@@ -249,7 +249,7 @@ MxStillPresenter* MxStillPresenter::Clone()
}
if (m_unk0x58) {
presenter->m_unk0x58 = MxDisplaySurface::FUN_100bbfb0(m_unk0x58);
presenter->m_unk0x58 = MxDisplaySurface::CopySurface(m_unk0x58);
}
if (m_alpha) {