aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/supernova.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/supernova/supernova.cpp')
-rw-r--r--engines/supernova/supernova.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/engines/supernova/supernova.cpp b/engines/supernova/supernova.cpp
index b5e674d46a..e1293c452d 100644
--- a/engines/supernova/supernova.cpp
+++ b/engines/supernova/supernova.cpp
@@ -167,6 +167,11 @@ int SupernovaEngine::getDOSTicks() {
}
void SupernovaEngine::updateEvents() {
+ _gm->handleTime();
+ if (_gm->_animationEnabled && _gm->_animationTimer == 0)
+ _gm->_currentRoom->animation();
+
+ _gm->_mouseClicked = false;
while (g_system->getEventManager()->pollEvent(_event)) {
switch (_event.type) {
case Common::EVENT_QUIT:
@@ -193,8 +198,13 @@ void SupernovaEngine::updateEvents() {
// fallthrough
case Common::EVENT_RBUTTONUP:
// fallthrough
+ _gm->_mouseClicked = true;
case Common::EVENT_MOUSEMOVE:
- _gm->processInput(_event.type, _event.mouse.x, _event.mouse.y);
+ _gm->_mouseClickType = _event.type;
+ _gm->_mouseX = _event.mouse.x;
+ _gm->_mouseY = _event.mouse.y;
+ if (_gm->_guiEnabled)
+ _gm->processInput();
break;
default: