diff options
-rw-r--r-- | engines/pink/objects/sequences/sequencer.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/engines/pink/objects/sequences/sequencer.cpp b/engines/pink/objects/sequences/sequencer.cpp index 9ba10aa449..a92ed54531 100644 --- a/engines/pink/objects/sequences/sequencer.cpp +++ b/engines/pink/objects/sequences/sequencer.cpp @@ -159,6 +159,12 @@ void Sequencer::skipSequence() { void Sequencer::loadState(Archive &archive) { Sequence *sequence = findSequence(archive.readString()); authorSequence(sequence, 1); + + uint size = archive.readWORD(); + for (uint i = 0; i < size; ++i) { + sequence = findSequence(archive.readString()); + authorParallelSequence(sequence, 1); + } } void Sequencer::saveState(Archive &archive) { @@ -166,7 +172,11 @@ void Sequencer::saveState(Archive &archive) { if (_context) sequenceName = _context->getSequence()->getName(); archive.writeString(sequenceName); - // add pokus specific + + archive.writeWORD(_parrallelContexts.size()); + for (uint i = 0; i < _parrallelContexts.size(); ++i) { + archive.writeString(_parrallelContexts[i]->getSequence()->getName()); + } } SequenceContext *Sequencer::findConfilictingContextWith(SequenceContext *context) { |