void update(Env *e) { e->gui.focus = e->gui.next; if (!e->gui.scoreBoard.stable) updateScoreBoard(&e->gui.scoreBoard, &e->game, SPF); switch (e->gui.focus) { case guiFocusTitle: update_guiFocusTitle(&e->gui, &e->io.controls); break; case guiFocusMenu: e->quit = update_guiFocusMenu(&e->gui, &e->io.controls); break; case guiFocusRules: e->quit = update_guiFocusRules(&e->gui, &e->io.controls); break; case guiFocusSettings: update_guiFocusSettings(&e->gui, &e->io.controls); break; case guiFocusControls: update_guiFocusControls(&e->gui, &e->io.controls); break; case guiFocusPlayMenu: updatePlayMenu(&e->gui, &e->io.controls, &e->game); break; case guiFocusOptions: update_guiFocusOptions(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameGUI: updateGameGUI(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameMenu: update_guiFocusGameMenu(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameHotseatPause: updateGameHotseatPause(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameAIPause: updateGameAIPause(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameOver: updateGameOver(&e->gui, &e->io.controls, &e->game); break; case guiFocusGameAreYouSureQuit: updateGameAreYouSureQuit(&e->gui, &e->game, &e->io.controls); break; case guiFocusTransScreen: update_guiFocusTransScreen(&e->gui, SPF); break; default: break; } e->io.time += SPF; }
MODE_T updateGame(void) { switch (state) { case STATE_PLAYING: updateGamePlaying(); break; case STATE_OVER: updateGameOver(); break; case STATE_ISSUES: updateGameIssues(); break; case STATE_MENU: case STATE_RESULT: handleMenu(); break; } return (state == STATE_LEAVE) ? MODE_TITLE : MODE_GAME; }
void GameScreen::update(float deltaTime, std::vector<TouchEvent> &touchEvents) { m_world->update(deltaTime); switch (m_gameState) { case WAITING: updateWaiting(deltaTime); updateInputWaiting(touchEvents); break; case GAME_OVER: updateGameOver(deltaTime); updateInputGameOver(touchEvents); break; case RUNNING: default: m_fTitleAlpha -= deltaTime * 2; updateRunning(deltaTime); updateInputRunning(touchEvents); break; } }