aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-07-06 11:16:11 +0000
committerMartin Kiewitz2010-07-06 11:16:11 +0000
commit2d5dabee30b842a6670f4d6e956c45e37389e344 (patch)
tree408466bd7afa8c72808cff307cdff59114bb03a1
parentf3a935351b7977517876e2342471c1330a5db7ff (diff)
downloadscummvm-rg350-2d5dabee30b842a6670f4d6e956c45e37389e344.tar.gz
scummvm-rg350-2d5dabee30b842a6670f4d6e956c45e37389e344.tar.bz2
scummvm-rg350-2d5dabee30b842a6670f4d6e956c45e37389e344.zip
SCI: implemented pauseSound inside kMenuSelect
svn-id: r50721
-rw-r--r--engines/sci/engine/kmenu.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/engines/sci/engine/kmenu.cpp b/engines/sci/engine/kmenu.cpp
index 54543d783f..69ec07559e 100644
--- a/engines/sci/engine/kmenu.cpp
+++ b/engines/sci/engine/kmenu.cpp
@@ -90,10 +90,17 @@ reg_t kDrawMenuBar(EngineState *s, int argc, reg_t *argv) {
reg_t kMenuSelect(EngineState *s, int argc, reg_t *argv) {
reg_t eventObject = argv[0];
- //bool pauseSound = argc > 1 ? (argv[1].isNull() ? false : true) : false;
+ bool pauseSound = argc > 1 ? (argv[1].isNull() ? false : true) : true;
+ reg_t result;
- // TODO: pauseSound implementation
- return g_sci->_gfxMenu->kernelSelect(eventObject);
+ if (pauseSound)
+ g_sci->_soundCmd->pauseAll(true);
+
+ result = g_sci->_gfxMenu->kernelSelect(eventObject);
+
+ if (pauseSound)
+ g_sci->_soundCmd->pauseAll(false);
+ return result;
}
} // End of namespace Sci