aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/scalpel
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/scalpel')
-rw-r--r--engines/sherlock/scalpel/scalpel.cpp4
-rw-r--r--engines/sherlock/scalpel/scalpel_people.cpp11
-rw-r--r--engines/sherlock/scalpel/scalpel_talk.cpp8
3 files changed, 10 insertions, 13 deletions
diff --git a/engines/sherlock/scalpel/scalpel.cpp b/engines/sherlock/scalpel/scalpel.cpp
index 586978e1c5..91e920d8f0 100644
--- a/engines/sherlock/scalpel/scalpel.cpp
+++ b/engines/sherlock/scalpel/scalpel.cpp
@@ -922,8 +922,8 @@ void ScalpelEngine::startScene() {
_scene->_goToScene = _map->show();
_music->freeSong();
- _people->_hSavedPos = Common::Point(-1, -1);
- _people->_hSavedFacing = -1;
+ _people->_savedPos = Common::Point(-1, -1);
+ _people->_savedPos._facing = -1;
}
// Some rooms are prologue cutscenes, rather than normal game scenes. These are:
diff --git a/engines/sherlock/scalpel/scalpel_people.cpp b/engines/sherlock/scalpel/scalpel_people.cpp
index 94042e7a13..db26bb8c0f 100644
--- a/engines/sherlock/scalpel/scalpel_people.cpp
+++ b/engines/sherlock/scalpel/scalpel_people.cpp
@@ -126,11 +126,10 @@ void ScalpelPerson::adjustSprite() {
scene._goToScene = exit->_scene;
if (exit->_newPosition.x != 0) {
- people._hSavedPos = exit->_newPosition;
- people._hSavedFacing = exit->_newFacing;
+ people._savedPos = exit->_newPosition;
- if (people._hSavedFacing > 100 && people._hSavedPos.x < 1)
- people._hSavedPos.x = 100;
+ if (people._savedPos._facing > 100 && people._savedPos.x < 1)
+ people._savedPos.x = 100;
}
}
}
@@ -444,8 +443,8 @@ void ScalpelPeople::synchronize(Serializer &s) {
s.syncAsSint16LE(_holmesQuotient);
if (s.isLoading()) {
- _hSavedPos = _data[HOLMES]->_position;
- _hSavedFacing = _data[HOLMES]->_sequenceNumber;
+ _savedPos = _data[HOLMES]->_position;
+ _savedPos._facing = _data[HOLMES]->_sequenceNumber;
}
}
diff --git a/engines/sherlock/scalpel/scalpel_talk.cpp b/engines/sherlock/scalpel/scalpel_talk.cpp
index ed529df17c..a6bb6b6fcd 100644
--- a/engines/sherlock/scalpel/scalpel_talk.cpp
+++ b/engines/sherlock/scalpel/scalpel_talk.cpp
@@ -320,15 +320,13 @@ OpcodeReturn ScalpelTalk::cmdGotoScene(const byte *&str) {
// Run a canimation?
if (str[2] > 100) {
- people._hSavedFacing = str[2];
- people._hSavedPos = Point32(160, 100);
+ people._savedPos = PositionFacing(160, 100, str[2]);
} else {
- people._hSavedFacing = str[2] - 1;
int32 posX = (str[3] - 1) * 256 + str[4] - 1;
int32 posY = str[5] - 1;
- people._hSavedPos = Point32(posX, posY);
+ people._savedPos = PositionFacing(posX, posY, str[2] - 1);
}
- } // if (scene._goToScene != 100)
+ }
str += 6;