diff --git a/engines/grim/actor.cpp b/engines/grim/actor.cpp index f68765537a7..2d95b03ba8f 100644 --- a/engines/grim/actor.cpp +++ b/engines/grim/actor.cpp @@ -254,6 +254,11 @@ void Actor::saveState(SaveGame *savedState) const { savedState->writeLESint32(_winY1); savedState->writeLESint32(_winX2); savedState->writeLESint32(_winY2); + + savedState->writeLESint32(_path.size()); + for (Common::List::const_iterator i = _path.begin(); i != _path.end(); ++i) { + savedState->writeVector3d(*i); + } } bool Actor::restoreState(SaveGame *savedState) { @@ -414,6 +419,11 @@ bool Actor::restoreState(SaveGame *savedState) { _winX2 = savedState->readLESint32(); _winY2 = savedState->readLESint32(); + size = savedState->readLESint32(); + for (int i = 0; i < size; ++i) { + _path.push_back(savedState->readVector3d()); + } + return true; }