aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/tattoo/tattoo_people.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/tattoo/tattoo_people.cpp')
-rw-r--r--engines/sherlock/tattoo/tattoo_people.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/tattoo_people.cpp b/engines/sherlock/tattoo/tattoo_people.cpp
index 94a40780e6..cc5872e8c8 100644
--- a/engines/sherlock/tattoo/tattoo_people.cpp
+++ b/engines/sherlock/tattoo/tattoo_people.cpp
@@ -971,7 +971,14 @@ void TattooPerson::synchronize(Serializer &s) {
s.syncAsSint32LE(_position.x);
s.syncAsSint32LE(_position.y);
s.syncAsSint16LE(_sequenceNumber);
- s.syncAsSint16LE(_type);
+
+ if (s.isSaving()) {
+ SpriteType type = (_type == INVALID && _walkLoaded) ? HIDDEN_CHARACTER : _type;
+ s.syncAsSint16LE(type);
+ } else {
+ s.syncAsSint16LE(_type);
+ }
+
s.syncString(_walkVGSName);
s.syncString(_description);
s.syncString(_examine);