diff --git a/engines/mohawk/myst_state.cpp b/engines/mohawk/myst_state.cpp index 87e02f57e32..968bb422bed 100644 --- a/engines/mohawk/myst_state.cpp +++ b/engines/mohawk/myst_state.cpp @@ -227,13 +227,13 @@ void MystGameState::syncGameState(Common::Serializer &s, bool isME) { s.syncAsUint16LE(_channelwood.holoprojectorSelection); s.syncAsUint16LE(_channelwood.stairsUpperDoorState); - if (isME) - s.skip(4); - else - s.skip(1); - // Mechanical + if (isME) + s.syncAsUint32LE(_mechanical.achenarCrateOpened); + else + s.syncAsByte(_mechanical.achenarCrateOpened); + s.syncAsUint16LE(_mechanical.achenarPanelState); s.syncAsUint16LE(_mechanical.sirrusPanelState); s.syncAsUint16LE(_mechanical.staircaseState); diff --git a/engines/mohawk/myst_state.h b/engines/mohawk/myst_state.h index 3f1e49e5c9e..a543cb1c4f4 100644 --- a/engines/mohawk/myst_state.h +++ b/engines/mohawk/myst_state.h @@ -203,6 +203,7 @@ public: 7 = Code Lock Shape #4 (Right) */ struct Mechanical { + uint32 achenarCrateOpened; uint16 achenarPanelState; uint16 sirrusPanelState; uint16 staircaseState;