diff options
Diffstat (limited to 'engines/sherlock')
-rw-r--r-- | engines/sherlock/journal.h | 12 | ||||
-rw-r--r-- | engines/sherlock/scalpel/scalpel_journal.cpp | 6 | ||||
-rw-r--r-- | engines/sherlock/scalpel/scalpel_journal.h | 6 | ||||
-rw-r--r-- | engines/sherlock/tattoo/tattoo_journal.cpp | 8 | ||||
-rw-r--r-- | engines/sherlock/tattoo/tattoo_journal.h | 6 |
5 files changed, 32 insertions, 6 deletions
diff --git a/engines/sherlock/journal.h b/engines/sherlock/journal.h index 4d44b32ff3..a8fec104f4 100644 --- a/engines/sherlock/journal.h +++ b/engines/sherlock/journal.h @@ -82,12 +82,6 @@ public: bool drawJournal(int direction, int howFar); /** - * Records statements that are said, in the order which they are said. The player - * can then read the journal to review them - */ - void record(int converseNum, int statementNum, bool replyOnly = false); - - /** * Synchronize the data for a savegame */ void synchronize(Serializer &s); @@ -101,6 +95,12 @@ public: * Reset viewing position to the start of the journal */ virtual void resetPosition() {} + + /** + * Records statements that are said, in the order which they are said. The player + * can then read the journal to review them + */ + virtual void record(int converseNum, int statementNum, bool replyOnly = false); }; } // End of namespace Sherlock diff --git a/engines/sherlock/scalpel/scalpel_journal.cpp b/engines/sherlock/scalpel/scalpel_journal.cpp index e54f1bc490..787d899aee 100644 --- a/engines/sherlock/scalpel/scalpel_journal.cpp +++ b/engines/sherlock/scalpel/scalpel_journal.cpp @@ -625,6 +625,12 @@ void ScalpelJournal::resetPosition() { _page = 1; } +void ScalpelJournal::record(int converseNum, int statementNum, bool replyOnly) { + // there seems to be no journal in the 3DO version + if (!IS_3DO) + Journal::record(converseNum, statementNum, replyOnly); +} + } // End of namespace Scalpel } // End of namespace Sherlock diff --git a/engines/sherlock/scalpel/scalpel_journal.h b/engines/sherlock/scalpel/scalpel_journal.h index a154796df5..c8e9c01739 100644 --- a/engines/sherlock/scalpel/scalpel_journal.h +++ b/engines/sherlock/scalpel/scalpel_journal.h @@ -84,6 +84,12 @@ public: * Reset viewing position to the start of the journal */ virtual void resetPosition(); + + /** + * Records statements that are said, in the order which they are said. The player + * can then read the journal to review them + */ + virtual void record(int converseNum, int statementNum, bool replyOnly = false); }; } // End of namespace Scalpel diff --git a/engines/sherlock/tattoo/tattoo_journal.cpp b/engines/sherlock/tattoo/tattoo_journal.cpp index 861f7099df..93970abab1 100644 --- a/engines/sherlock/tattoo/tattoo_journal.cpp +++ b/engines/sherlock/tattoo/tattoo_journal.cpp @@ -903,6 +903,14 @@ int TattooJournal::getFindName(bool printError) { return result; } +void TattooJournal::record(int converseNum, int statementNum, bool replyOnly) { + TattooEngine &vm = *(TattooEngine *)_vm; + + // Only record activity in the Journal if the player is Holmes (i.e. we're paast the prologoue) + if (_vm->readFlags(FLAG_PLAYER_IS_HOLMES) && !vm._runningProlog) + Journal::record(converseNum, statementNum, replyOnly); +} + } // End of namespace Tattoo } // End of namespace Sherlock diff --git a/engines/sherlock/tattoo/tattoo_journal.h b/engines/sherlock/tattoo/tattoo_journal.h index 5e5cfda8c2..cb45466120 100644 --- a/engines/sherlock/tattoo/tattoo_journal.h +++ b/engines/sherlock/tattoo/tattoo_journal.h @@ -94,6 +94,12 @@ public: * Draw the journal background, frame, and interface buttons */ virtual void drawFrame(); + + /** + * Records statements that are said, in the order which they are said. The player + * can then read the journal to review them + */ + virtual void record(int converseNum, int statementNum, bool replyOnly = false); }; } // End of namespace Tattoo |