diff options
author | Eugene Sandulenko | 2005-08-11 16:13:10 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2005-08-11 16:13:10 +0000 |
commit | 2478c430deb91cf29b47afefd2c73a0af6f45557 (patch) | |
tree | 203a9ea213f23308ee6bd17b15bd984d84f51c8f /saga | |
parent | 801bb09bb5d4d5e0b94cc175ad28b34fb66edd2c (diff) | |
download | scummvm-rg350-2478c430deb91cf29b47afefd2c73a0af6f45557.tar.gz scummvm-rg350-2478c430deb91cf29b47afefd2c73a0af6f45557.tar.bz2 scummvm-rg350-2478c430deb91cf29b47afefd2c73a0af6f45557.zip |
Fix bugs #1256398 "ITE: Clicking doesn't skip dialogue"
svn-id: r18660
Diffstat (limited to 'saga')
-rw-r--r-- | saga/input.cpp | 10 | ||||
-rw-r--r-- | saga/interface.cpp | 5 | ||||
-rw-r--r-- | saga/interface.h | 3 |
3 files changed, 16 insertions, 2 deletions
diff --git a/saga/input.cpp b/saga/input.cpp index 12a15a38c5..3d2754220a 100644 --- a/saga/input.cpp +++ b/saga/input.cpp @@ -62,7 +62,8 @@ int SagaEngine::processInput() { _interface->draw(); break; -/* case 269: +#if 0 + case 269: case 270: case 273: case 274: @@ -73,7 +74,8 @@ int SagaEngine::processInput() { _vm->_isoMap->_viewScroll.y += (_vm->_isoMap->_viewDiff * (event.kbd.keycode == 274) - _vm->_isoMap->_viewDiff * (event.kbd.keycode == 273)); _vm->_isoMap->_viewScroll.x += (_vm->_isoMap->_viewDiff * (event.kbd.keycode == 275) - _vm->_isoMap->_viewDiff * (event.kbd.keycode == 276)); } - break;*/ + break; +#endif case 282: // F1 _render->toggleFlag(RF_SHOW_FPS); _actor->_handleActionDiv = (_actor->_handleActionDiv == 15) ? 50 : 15; @@ -87,6 +89,10 @@ int SagaEngine::processInput() { case 285: // F4 _render->toggleFlag(RF_OBJECTMAP_TEST); break; + case 286: // F5 + if (_interface->getSaveReminderState() > 0) + _interface->setMode(kPanelOption); + break; case 287: // F6 _render->toggleFlag(RF_ACTOR_PATH_TEST); break; diff --git a/saga/interface.cpp b/saga/interface.cpp index 6a2fd1d5e6..540b5aac5a 100644 --- a/saga/interface.cpp +++ b/saga/interface.cpp @@ -1080,9 +1080,11 @@ void Interface::setSave(PanelButton *panelButton) { fileName = _vm->calcSaveFileName(_vm->getSaveFile(_optionSaveFileTitleNumber)->slotNumber); _vm->save(fileName, _textInputString); } + _textInput = false; setMode(kPanelOption); break; case kTextCancel: + _textInput = false; setMode(kPanelOption); break; } @@ -1258,6 +1260,9 @@ void Interface::setOption(PanelButton *panelButton) { void Interface::update(const Point& mousePoint, int updateFlag) { + if (!_active && _panelMode == kPanelNull && (updateFlag & UPDATE_MOUSECLICK)) + _vm->_actor->abortSpeech(); + if (_vm->_scene->isInDemo() || _fadeMode == kFadeOut || !_active) { return; } diff --git a/saga/interface.h b/saga/interface.h index 9e14ea9644..78fa69b780 100644 --- a/saga/interface.h +++ b/saga/interface.h @@ -195,6 +195,9 @@ public: _saveReminderState = state; draw(); } + int getSaveReminderState() { + return _saveReminderState; + } bool isActive() { return _active; } void setMode(int mode); int getMode(void) const { return _panelMode; } |