aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/state.cpp
diff options
context:
space:
mode:
authorJoseph-Eugene Winzer2017-12-28 02:02:15 +0100
committerThierry Crozat2018-01-23 02:15:45 +0000
commitf3f75da959ff4ce33fa6a5b542518d71198158dc (patch)
tree3b29bafb44f571f8e6721ca7794f521528b9d2f5 /engines/supernova/state.cpp
parent6df88c5c4611199d4c7047fb5578cdcb0896c41b (diff)
downloadscummvm-rg350-f3f75da959ff4ce33fa6a5b542518d71198158dc.tar.gz
scummvm-rg350-f3f75da959ff4ce33fa6a5b542518d71198158dc.tar.bz2
scummvm-rg350-f3f75da959ff4ce33fa6a5b542518d71198158dc.zip
SUPERNOVA: Pushes a mousemove to update object state
If you click on an exit on the map and there is again an exit on the same spot, it won't be recognized until the next mouse move/click. This change fakes a mouse move and thus updates the object state.
Diffstat (limited to 'engines/supernova/state.cpp')
-rw-r--r--engines/supernova/state.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/supernova/state.cpp b/engines/supernova/state.cpp
index e27a68f1bb..9392dd5b02 100644
--- a/engines/supernova/state.cpp
+++ b/engines/supernova/state.cpp
@@ -2250,6 +2250,13 @@ void GameManager::handleInput() {
void GameManager::executeRoom() {
if (_processInput && !_vm->_messageDisplayed && _guiEnabled) {
handleInput();
+ if (_mouseClicked) {
+ Common::Event event;
+ event.type = Common::EVENT_MOUSEMOVE;
+ event.mouse = Common::Point(_mouseX, _mouseY);
+ _vm->getEventManager()->pushEvent(event);
+ }
+
resetInputState();
}