diff options
author | Paul Gilbert | 2017-07-02 22:02:24 -0400 |
---|---|---|
committer | Paul Gilbert | 2017-07-02 22:02:24 -0400 |
commit | fbb4cb9b319e2fecc483fe579f2a38c86aeb65f7 (patch) | |
tree | f31ab72ff82c2de33c3378d714e66952d775e633 /engines/titanic/core | |
parent | d5ebd9ae9249be09c0afb948394019bb5fc29796 (diff) | |
download | scummvm-rg350-fbb4cb9b319e2fecc483fe579f2a38c86aeb65f7.tar.gz scummvm-rg350-fbb4cb9b319e2fecc483fe579f2a38c86aeb65f7.tar.bz2 scummvm-rg350-fbb4cb9b319e2fecc483fe579f2a38c86aeb65f7.zip |
TITANIC: Don't allow saving during the Doorbot prologue
This works around a bug in the original where if you saved immediately
after getting the PET, the savegame would put in in an invalid state
Diffstat (limited to 'engines/titanic/core')
-rw-r--r-- | engines/titanic/core/game_object.cpp | 12 | ||||
-rw-r--r-- | engines/titanic/core/game_object.h | 10 |
2 files changed, 22 insertions, 0 deletions
diff --git a/engines/titanic/core/game_object.cpp b/engines/titanic/core/game_object.cpp index 3286a6c7ee..3d9fede6c1 100644 --- a/engines/titanic/core/game_object.cpp +++ b/engines/titanic/core/game_object.cpp @@ -589,6 +589,18 @@ void CGameObject::petHide() { } } +void CGameObject::petIncAreaLocks() { + CPetControl *pet = getPetControl(); + if (pet) + pet->incAreaLocks(); +} + +void CGameObject::petDecAreaLocks() { + CPetControl *pet = getPetControl(); + if (pet) + pet->decAreaLocks(); +} + void CGameObject::petSetRemoteTarget() { CPetControl *pet = getPetControl(); if (pet) diff --git a/engines/titanic/core/game_object.h b/engines/titanic/core/game_object.h index d4befa8fc8..0c946623ac 100644 --- a/engines/titanic/core/game_object.h +++ b/engines/titanic/core/game_object.h @@ -934,6 +934,16 @@ public: void petShow(); /** + * Increment the number of PET area (tab) locks + */ + void petIncAreaLocks(); + + /** + * Decrement the number of PET area (tab) locks + */ + void petDecAreaLocks(); + + /** * Shows the text cursor in the current section, if applicable */ void petShowCursor(); |