aboutsummaryrefslogtreecommitdiff
path: root/engines/adl/adl.cpp
diff options
context:
space:
mode:
authorWalter van Niftrik2016-04-11 18:52:03 +0200
committerWalter van Niftrik2016-06-06 20:35:49 +0200
commitb8c40f9a8b81631c610c0bdadaefb4b9b7df5792 (patch)
tree5483ff1885ad32fd4d0c4f52cb0bffa6d4fb97c5 /engines/adl/adl.cpp
parent7e9a8c00728592290c2c4f2ba0aa5bf3bf7efff9 (diff)
downloadscummvm-rg350-b8c40f9a8b81631c610c0bdadaefb4b9b7df5792.tar.gz
scummvm-rg350-b8c40f9a8b81631c610c0bdadaefb4b9b7df5792.tar.bz2
scummvm-rg350-b8c40f9a8b81631c610c0bdadaefb4b9b7df5792.zip
ADL: Implement hires6 cond opcode 0xa
Diffstat (limited to 'engines/adl/adl.cpp')
-rw-r--r--engines/adl/adl.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/adl/adl.cpp b/engines/adl/adl.cpp
index 98895ce8dd..fdbb2aa3b7 100644
--- a/engines/adl/adl.cpp
+++ b/engines/adl/adl.cpp
@@ -58,6 +58,7 @@ AdlEngine::AdlEngine(OSystem *syst, const AdlGameDescription *gd) :
_graphics(nullptr),
_isRestarting(false),
_isRestoring(false),
+ _skipOneCommand(false),
_gameDescription(gd),
_saveVerb(0),
_saveNoun(0),
@@ -1192,6 +1193,12 @@ bool AdlEngine::doOneCommand(const Commands &commands, byte verb, byte noun) {
Commands::const_iterator cmd;
for (cmd = commands.begin(); cmd != commands.end(); ++cmd) {
+
+ if (_skipOneCommand) {
+ _skipOneCommand = false;
+ continue;
+ }
+
ScriptEnv env(*cmd, _state.room, verb, noun);
if (matchCommand(env)) {
doActions(env);
@@ -1199,6 +1206,7 @@ bool AdlEngine::doOneCommand(const Commands &commands, byte verb, byte noun) {
}
}
+ _skipOneCommand = false;
return false;
}
@@ -1206,6 +1214,11 @@ void AdlEngine::doAllCommands(const Commands &commands, byte verb, byte noun) {
Commands::const_iterator cmd;
for (cmd = commands.begin(); cmd != commands.end(); ++cmd) {
+ if (_skipOneCommand) {
+ _skipOneCommand = false;
+ continue;
+ }
+
ScriptEnv env(*cmd, _state.room, verb, noun);
if (matchCommand(env)) {
doActions(env);
@@ -1214,6 +1227,8 @@ void AdlEngine::doAllCommands(const Commands &commands, byte verb, byte noun) {
return;
}
}
+
+ _skipOneCommand = false;
}
Common::String AdlEngine::toAscii(const Common::String &str) {