aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/parallaction.cpp
diff options
context:
space:
mode:
authorNicola Mettifogo2008-12-15 07:15:29 +0000
committerNicola Mettifogo2008-12-15 07:15:29 +0000
commitc76f0bdb10344f1a35e43a098a3dcec4f09aa76c (patch)
tree8672b925ec1f072971db323d43a2b238dae98fae /engines/parallaction/parallaction.cpp
parent6b043aa05b8b59e1b938b88e98df38e027e1b8bf (diff)
downloadscummvm-rg350-c76f0bdb10344f1a35e43a098a3dcec4f09aa76c.tar.gz
scummvm-rg350-c76f0bdb10344f1a35e43a098a3dcec4f09aa76c.tar.bz2
scummvm-rg350-c76f0bdb10344f1a35e43a098a3dcec4f09aa76c.zip
Weeded out some more unused code, and some restructuring.
svn-id: r35377
Diffstat (limited to 'engines/parallaction/parallaction.cpp')
-rw-r--r--engines/parallaction/parallaction.cpp63
1 files changed, 29 insertions, 34 deletions
diff --git a/engines/parallaction/parallaction.cpp b/engines/parallaction/parallaction.cpp
index e2d5fc61df..6db48f7846 100644
--- a/engines/parallaction/parallaction.cpp
+++ b/engines/parallaction/parallaction.cpp
@@ -308,24 +308,39 @@ void Parallaction::showLocationComment(const Common::String &text, bool end) {
}
-void Parallaction::processInput(int event) {
+void Parallaction::runGameFrame(int event) {
+ if (_input->_inputMode != Input::kInputModeGame) {
+ return;
+ }
- switch (event) {
- case kEvSaveGame:
+ if (event != kEvNone) {
_input->stopHovering();
- _saveLoad->saveGame();
+ if (event == kEvSaveGame) {
+ _saveLoad->saveGame();
+ } else
+ if (event == kEvLoadGame) {
+ _saveLoad->loadGame();
+ }
_input->setArrowCursor();
- break;
+ }
- case kEvLoadGame:
- _input->stopHovering();
- _saveLoad->loadGame();
- _input->setArrowCursor();
- break;
+ runPendingZones();
+ if (shouldQuit())
+ return;
+
+ if (_engineFlags & kEngineChangeLocation) {
+ changeLocation(_location._name);
}
- return;
+ _programExec->runScripts(_location._programs.begin(), _location._programs.end());
+ _char._ani->setZ(_char._ani->height() + _char._ani->getFrameY());
+ if (_char._ani->gfxobj) {
+ _char._ani->gfxobj->z = _char._ani->getZ();
+ }
+ _char._walker->walk();
+ drawAnimations();
+
}
void Parallaction::runGame() {
@@ -337,30 +352,10 @@ void Parallaction::runGame() {
runGuiFrame();
runDialogueFrame();
runCommentFrame();
+ runGameFrame(event);
- if (_input->_inputMode == Input::kInputModeGame) {
- processInput(event);
- runPendingZones();
-
- if (shouldQuit())
- return;
-
- if (_engineFlags & kEngineChangeLocation) {
- changeLocation(_location._name);
- }
- }
-
- _gfx->beginFrame();
-
- if (_input->_inputMode == Input::kInputModeGame) {
- _programExec->runScripts(_location._programs.begin(), _location._programs.end());
- _char._ani->setZ(_char._ani->height() + _char._ani->getFrameY());
- if (_char._ani->gfxobj) {
- _char._ani->gfxobj->z = _char._ani->getZ();
- }
- _char._walker->walk();
- drawAnimations();
- }
+ if (shouldQuit())
+ return;
// change this to endFrame?
updateView();