aboutsummaryrefslogtreecommitdiff
path: root/engines/neverhood/mouse.cpp
diff options
context:
space:
mode:
authorjohndoe1232012-10-16 11:15:13 +0000
committerWillem Jan Palenstijn2013-05-08 20:47:31 +0200
commitf5c7070ace26b95a52303ceb51893d2032ad8241 (patch)
tree0148635d6a26d3ffd84b6c731943b87ff4f3876d /engines/neverhood/mouse.cpp
parent682d15fce443223b306366ef9b1ad71f94b6cfed (diff)
downloadscummvm-rg350-f5c7070ace26b95a52303ceb51893d2032ad8241.tar.gz
scummvm-rg350-f5c7070ace26b95a52303ceb51893d2032ad8241.tar.bz2
scummvm-rg350-f5c7070ace26b95a52303ceb51893d2032ad8241.zip
NEVERHOOD: Add mouse cursor hiding/showing
Diffstat (limited to 'engines/neverhood/mouse.cpp')
-rw-r--r--engines/neverhood/mouse.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/neverhood/mouse.cpp b/engines/neverhood/mouse.cpp
index a1c4a9a5a8..bce66467de 100644
--- a/engines/neverhood/mouse.cpp
+++ b/engines/neverhood/mouse.cpp
@@ -42,7 +42,7 @@ Mouse::Mouse(NeverhoodEngine *vm, uint32 fileHash, const NRect &mouseRect)
Mouse::Mouse(NeverhoodEngine *vm, uint32 fileHash, int16 x1, int16 x2)
: StaticSprite(vm, 2000), _mouseType(kMouseType435),
- _mouseCursorResource(vm), _frameNum(0), _x1(x1), _x2(x2) {
+ _mouseCursorResource(vm), _frameNum(0), _x1(x1), _x2(x2), _visible(true) {
init(fileHash);
if (_x <= _x1) {
@@ -85,6 +85,13 @@ void Mouse::load(uint32 fileHash) {
}
void Mouse::update() {
+ if (_visible && !_surface->getVisible()) {
+ CursorMan.showMouse(false);
+ _visible = false;
+ } else if (!_visible && _surface->getVisible()) {
+ CursorMan.showMouse(true);
+ _visible = true;
+ }
updateCursor();
_frameNum++;
if (_frameNum >= 6)