aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/kernel32.cpp
diff options
context:
space:
mode:
authorMatthew Hoops2010-06-17 00:20:40 +0000
committerMatthew Hoops2010-06-17 00:20:40 +0000
commit2cba994bb4179cbed1c54921ff825bc4f7735efb (patch)
tree8db7add2711de511bd2fea63df051052c899776f /engines/sci/engine/kernel32.cpp
parenta7b76c04d9df2c30d541554b9f907f6bcedd307a (diff)
downloadscummvm-rg350-2cba994bb4179cbed1c54921ff825bc4f7735efb.tar.gz
scummvm-rg350-2cba994bb4179cbed1c54921ff825bc4f7735efb.tar.bz2
scummvm-rg350-2cba994bb4179cbed1c54921ff825bc4f7735efb.zip
Only hide/show cursor when playing a VMD if it was visible in the first place.
svn-id: r49914
Diffstat (limited to 'engines/sci/engine/kernel32.cpp')
-rw-r--r--engines/sci/engine/kernel32.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/engines/sci/engine/kernel32.cpp b/engines/sci/engine/kernel32.cpp
index 9adfdca21c..dedcf0df5f 100644
--- a/engines/sci/engine/kernel32.cpp
+++ b/engines/sci/engine/kernel32.cpp
@@ -898,9 +898,8 @@ reg_t kMulDiv(EngineState *s, int argc, reg_t *argv) {
reg_t kPlayVMD(EngineState *s, int argc, reg_t *argv) {
uint16 operation = argv[0].toUint16();
Graphics::VideoDecoder *videoDecoder = 0;
- Common::String fileName;
-
- Common::String warningMsg;
+ bool reshowCursor = g_sci->_gfxCursor->isVisible();
+ Common::String fileName, warningMsg;
switch (operation) {
case 0: // play
@@ -908,7 +907,8 @@ reg_t kPlayVMD(EngineState *s, int argc, reg_t *argv) {
// TODO: argv[2] (usually 0)
videoDecoder = new VMDDecoder(g_system->getMixer());
- g_sci->_gfxCursor->kernelHide();
+ if (reshowCursor)
+ g_sci->_gfxCursor->kernelHide();
if (videoDecoder && videoDecoder->loadFile(fileName)) {
uint16 x = (g_system->getWidth() - videoDecoder->getWidth()) / 2;
@@ -944,8 +944,8 @@ reg_t kPlayVMD(EngineState *s, int argc, reg_t *argv) {
} else
warning("Could not play video %s\n", fileName.c_str());
- g_sci->_gfxCursor->kernelShow();
-
+ if (reshowCursor)
+ g_sci->_gfxCursor->kernelShow();
break;
default:
warningMsg = "PlayVMD - unsupported subop. Params: " +