aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/talk.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2015-06-05 22:52:26 -0400
committerPaul Gilbert2015-06-05 22:52:26 -0400
commit389d453f0e805e7b6b7eef8632889837fd5e3445 (patch)
tree78330119aec02bc1a540c979b2b0065f151fef9a /engines/sherlock/talk.cpp
parent5e3b9c8f690239318b5cd2c58916aab302781f03 (diff)
downloadscummvm-rg350-389d453f0e805e7b6b7eef8632889837fd5e3445.tar.gz
scummvm-rg350-389d453f0e805e7b6b7eef8632889837fd5e3445.tar.bz2
scummvm-rg350-389d453f0e805e7b6b7eef8632889837fd5e3445.zip
SHERLOCK: Implement cmdMouseOnOff opcode
Diffstat (limited to 'engines/sherlock/talk.cpp')
-rw-r--r--engines/sherlock/talk.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/engines/sherlock/talk.cpp b/engines/sherlock/talk.cpp
index dd00d47fb2..607417b55a 100644
--- a/engines/sherlock/talk.cpp
+++ b/engines/sherlock/talk.cpp
@@ -2087,7 +2087,15 @@ TattooTalk::TattooTalk(SherlockEngine *vm) : Talk(vm) {
_opcodeTable = OPCODE_METHODS;
}
-OpcodeReturn TattooTalk::cmdMouseOnOff(const byte *&str) { error("TODO: script opcode"); }
+OpcodeReturn TattooTalk::cmdMouseOnOff(const byte *&str) {
+ Events &events = *_vm->_events;
+ bool mouseOn = *++str == 2;
+ if (mouseOn)
+ events.showCursor();
+ else
+ events.hideCursor();
+ return RET_SUCCESS;
+}
OpcodeReturn TattooTalk::cmdNextSong(const byte *&str) {
Sound &sound = *_vm->_sound;