aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/riven_scripts.h
diff options
context:
space:
mode:
authorBastien Bouclet2017-07-01 22:57:43 +0200
committerEugene Sandulenko2017-07-03 08:50:10 +0200
commit8ad53851bcf745da720f3f0da9e204da4716b7f2 (patch)
treedb77abd6d34a32066de57c7b9e3d141e78e555d4 /engines/mohawk/riven_scripts.h
parent2f7a04ae95e8f3a555022a071d08a33667175e19 (diff)
downloadscummvm-rg350-8ad53851bcf745da720f3f0da9e204da4716b7f2.tar.gz
scummvm-rg350-8ad53851bcf745da720f3f0da9e204da4716b7f2.tar.bz2
scummvm-rg350-8ad53851bcf745da720f3f0da9e204da4716b7f2.zip
MOHAWK: Implement interrupting scripts for the new script manager
Diffstat (limited to 'engines/mohawk/riven_scripts.h')
-rw-r--r--engines/mohawk/riven_scripts.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/engines/mohawk/riven_scripts.h b/engines/mohawk/riven_scripts.h
index 37bdc062d4..6d422b858d 100644
--- a/engines/mohawk/riven_scripts.h
+++ b/engines/mohawk/riven_scripts.h
@@ -122,14 +122,11 @@ public:
* Script execution must go through the ScriptManager,
* this method should not be called directly.
*/
- void run();
+ void run(RivenScriptManager *scriptManager);
/** Print script details to the standard output */
void dumpScript(byte tabs);
- /** Stop the script after the current command */
- void stopRunning() { _continueRunning = false; }
-
/** Append the commands of the other script to this script */
RivenScript &operator+=(const RivenScript &other);
@@ -138,7 +135,6 @@ public:
private:
Common::Array<RivenCommandPtr> _commands;
- bool _continueRunning;
};
/** Append the commands of the rhs Script to those of the lhs Script */
@@ -196,6 +192,8 @@ public:
void stopAllScripts();
+ bool stoppingAllScripts() const;
+
struct StoredMovieOpcode {
RivenScriptPtr script;
uint32 time;
@@ -213,6 +211,7 @@ private:
Common::Array<RivenScriptPtr> _queue;
bool _runningQueuedScripts;
+ bool _stoppingAllScripts;
StoredMovieOpcode _storedMovieOpcode;