Match Serialize functions to BETA10 (#1334)

* Begin refactor Serialize functions

* Match more Serialize functions

* Match `LegoVehicleBuildState::Serialize`

* Match `LegoGameState::Username::Serialize`

* Match `LegoGameState::ScoreItem::Serialize`

* Match `LegoGameState::History::Serialize`

* Var name

* Var name

* Revert "Var name"

This reverts commit 1c0cccfba7.

* Add other Serialize implementations

* Add remaining Serialize implementations

* Add Read for char*

* Improvements
This commit is contained in:
Christian Semmler
2025-01-15 16:52:29 -07:00
committed by GitHub
parent f95eedd0ce
commit 77a3dc0795
20 changed files with 409 additions and 327 deletions

View File

@@ -15,6 +15,7 @@ class MxSoundPresenter;
class MxActionNotificationParam;
// VTABLE: LEGO1 0x100d66e0
// VTABLE: BETA10 0x101bb910
// SIZE 0x50
class LegoVehicleBuildState : public LegoState {
public:
@@ -32,13 +33,13 @@ public:
// FUNCTION: LEGO1 0x10025ff0
const char* ClassName() const override // vtable+0x0c
{
return this->m_className.GetData();
return m_className.GetData();
}
// FUNCTION: LEGO1 0x10026000
MxBool IsA(const char* p_name) const override // vtable+0x10
{
return !strcmp(p_name, this->m_className.GetData()) || LegoState::IsA(p_name);
return !strcmp(p_name, m_className.GetData()) || LegoState::IsA(p_name);
}
MxResult Serialize(LegoFile* p_file) override; // vtable+0x1c
@@ -56,7 +57,7 @@ public:
MxString m_className; // 0x38
AnimationState m_animationState; // 0x48
undefined m_unk0x4c; // 0x4c
MxU8 m_unk0x4c; // 0x4c
MxBool m_unk0x4d; // 0x4d
MxBool m_unk0x4e; // 0x4e
MxU8 m_placedPartCount; // 0x4f