diff --git a/LEGO1/lego/legoomni/src/police/policestate.cpp b/LEGO1/lego/legoomni/src/police/policestate.cpp index 9e33b42b..b0011ccb 100644 --- a/LEGO1/lego/legoomni/src/police/policestate.cpp +++ b/LEGO1/lego/legoomni/src/police/policestate.cpp @@ -15,13 +15,16 @@ PoliceState::PoliceState() MxResult PoliceState::VTable0x1c(LegoFileStream* p_legoFileStream) { if (p_legoFileStream->IsWriteMode()) { - p_legoFileStream->FUN_10006030(this->ClassName()); + p_legoFileStream->FUN_10006030(ClassName()); } + if (p_legoFileStream->IsReadMode()) { - p_legoFileStream->Write(&m_unk0x8, sizeof(MxU32)); + p_legoFileStream->Read(&m_unk0x8, sizeof(m_unk0x8)); } - else if (p_legoFileStream->IsWriteMode()) { - p_legoFileStream->Read(&m_unk0x8, sizeof(MxU32)); + else { + undefined4 unk0x8 = m_unk0x8; + p_legoFileStream->Write(&unk0x8, sizeof(m_unk0x8)); } + return SUCCESS; } diff --git a/LEGO1/lego/legoomni/src/towtrack/towtrackmissionstate.cpp b/LEGO1/lego/legoomni/src/towtrack/towtrackmissionstate.cpp index 8d3d56b9..a5719da5 100644 --- a/LEGO1/lego/legoomni/src/towtrack/towtrackmissionstate.cpp +++ b/LEGO1/lego/legoomni/src/towtrack/towtrackmissionstate.cpp @@ -28,18 +28,6 @@ MxResult TowTrackMissionState::VTable0x1c(LegoFileStream* p_legoFileStream) } if (p_legoFileStream->IsReadMode()) { - p_legoFileStream->Write(&m_unk0x12, sizeof(MxU16)); - p_legoFileStream->Write(&m_unk0x14, sizeof(MxU16)); - p_legoFileStream->Write(&m_unk0x16, sizeof(MxU16)); - p_legoFileStream->Write(&m_unk0x18, sizeof(MxU16)); - p_legoFileStream->Write(&m_unk0x1a, sizeof(MxU16)); - p_legoFileStream->Write(&m_unk0x1c, sizeof(MxU16)); - p_legoFileStream->Write(&m_color1, sizeof(MxU16)); - p_legoFileStream->Write(&m_color2, sizeof(MxU16)); - p_legoFileStream->Write(&m_color3, sizeof(MxU16)); - p_legoFileStream->Write(&m_color4, sizeof(MxU16)); - } - else if (p_legoFileStream->IsWriteMode()) { p_legoFileStream->Read(&m_unk0x12, sizeof(MxU16)); p_legoFileStream->Read(&m_unk0x14, sizeof(MxU16)); p_legoFileStream->Read(&m_unk0x16, sizeof(MxU16)); @@ -51,6 +39,37 @@ MxResult TowTrackMissionState::VTable0x1c(LegoFileStream* p_legoFileStream) p_legoFileStream->Read(&m_color3, sizeof(MxU16)); p_legoFileStream->Read(&m_color4, sizeof(MxU16)); } + else if (p_legoFileStream->IsWriteMode()) { + MxU16 write = m_unk0x12; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_unk0x14; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_unk0x16; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_unk0x18; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_unk0x1a; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_unk0x1c; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_color1; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_color2; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_color3; + p_legoFileStream->Write(&write, sizeof(MxU16)); + + write = m_color4; + p_legoFileStream->Write(&write, sizeof(MxU16)); + } return SUCCESS; }