aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/scalpel/scalpel_people.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/scalpel/scalpel_people.cpp')
-rw-r--r--engines/sherlock/scalpel/scalpel_people.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/sherlock/scalpel/scalpel_people.cpp b/engines/sherlock/scalpel/scalpel_people.cpp
index 08100fef11..2b76eea55e 100644
--- a/engines/sherlock/scalpel/scalpel_people.cpp
+++ b/engines/sherlock/scalpel/scalpel_people.cpp
@@ -86,6 +86,20 @@ void ScalpelPeople::setTalking(int speaker) {
}
}
+
+void ScalpelPeople::synchronize(Serializer &s) {
+ s.syncAsByte(_holmesOn);
+ s.syncAsSint32LE(_player._position.x);
+ s.syncAsSint32LE(_player._position.y);
+ s.syncAsSint16LE(_player._sequenceNumber);
+ s.syncAsSint16LE(_holmesQuotient);
+
+ if (s.isLoading()) {
+ _hSavedPos = _player._position;
+ _hSavedFacing = _player._sequenceNumber;
+ }
+}
+
void ScalpelPeople::setTalkSequence(int speaker, int sequenceNum) {
People &people = *_vm->_people;
Scene &scene = *_vm->_scene;