diff options
-rw-r--r-- | engines/dreamweb/dreamweb.cpp | 6 | ||||
-rw-r--r-- | engines/dreamweb/dreamweb.h | 1 |
2 files changed, 6 insertions, 1 deletions
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp index 6b9fda8882..3d74570da2 100644 --- a/engines/dreamweb/dreamweb.cpp +++ b/engines/dreamweb/dreamweb.cpp @@ -67,6 +67,7 @@ DreamWebEngine::DreamWebEngine(OSystem *syst, const DreamWebGameDescription *gam _outSaveFile = 0; _inSaveFile = 0; _speed = 1; + _oldMouseState = 0; } DreamWebEngine::~DreamWebEngine() { @@ -270,7 +271,10 @@ void DreamWebEngine::mouseCall() { pos.y = 184; _context.cx = pos.x; _context.dx = pos.y; - _context.bx = eventMan->getButtonState(); + + unsigned state = eventMan->getButtonState(); + _context.bx = state == _oldMouseState? 0: state; + _oldMouseState = state; } void DreamWebEngine::setGraphicsMode() { diff --git a/engines/dreamweb/dreamweb.h b/engines/dreamweb/dreamweb.h index 50d2779327..f61c113e30 100644 --- a/engines/dreamweb/dreamweb.h +++ b/engines/dreamweb/dreamweb.h @@ -114,6 +114,7 @@ private: Common::InSaveFile *_inSaveFile; uint _speed; + uint _oldMouseState; dreamgen::Context _context; }; |