Keep the race going (with end race controller) while the race
results are shown. git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5704 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
parent
9de958aa17
commit
e291ce56ff
@ -400,8 +400,8 @@ void World::updateWorld(float dt)
|
|||||||
{
|
{
|
||||||
// Don't update world if a menu is shown or the race is over.
|
// Don't update world if a menu is shown or the race is over.
|
||||||
if( m_phase == FINISH_PHASE ||
|
if( m_phase == FINISH_PHASE ||
|
||||||
m_phase == RESULT_DISPLAY_PHASE ||
|
m_phase == IN_GAME_MENU_PHASE )
|
||||||
m_phase == IN_GAME_MENU_PHASE ) return;
|
return;
|
||||||
|
|
||||||
update(dt);
|
update(dt);
|
||||||
if( (!isFinishPhase()) && isRaceOver())
|
if( (!isFinishPhase()) && isRaceOver())
|
||||||
|
@ -85,10 +85,11 @@ void WorldStatus::setClockMode(const ClockType mode, const float initial_time)
|
|||||||
*/
|
*/
|
||||||
void WorldStatus::enterRaceOverState()
|
void WorldStatus::enterRaceOverState()
|
||||||
{
|
{
|
||||||
// Don't
|
// Don't enter race over if it's already race over
|
||||||
if( m_phase == DELAY_FINISH_PHASE
|
if( m_phase == DELAY_FINISH_PHASE
|
||||||
|| m_phase == RESULT_DISPLAY_PHASE
|
|| m_phase == RESULT_DISPLAY_PHASE
|
||||||
|| m_phase == FINISH_PHASE ) return;
|
|| m_phase == FINISH_PHASE )
|
||||||
|
return;
|
||||||
|
|
||||||
m_phase = DELAY_FINISH_PHASE;
|
m_phase = DELAY_FINISH_PHASE;
|
||||||
m_auxiliary_timer = 0.0f;
|
m_auxiliary_timer = 0.0f;
|
||||||
@ -183,11 +184,17 @@ void WorldStatus::update(const float dt)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case RESULT_DISPLAY_PHASE :
|
case RESULT_DISPLAY_PHASE :
|
||||||
if(((RaceOverDialog*)GUIEngine::ModalDialog::getCurrent())->menuIsFinished())
|
|
||||||
{
|
{
|
||||||
m_phase = FINISH_PHASE;
|
// Wait for the race over GUI/modal dialog to appear
|
||||||
}
|
// Previously the in race race over results are shown,
|
||||||
|
// and getCurrent() returns NULL.
|
||||||
|
GUIEngine::ModalDialog *m = GUIEngine::ModalDialog::getCurrent();
|
||||||
|
if( m && ( (RaceOverDialog*)m)->menuIsFinished() )
|
||||||
|
{
|
||||||
|
m_phase = FINISH_PHASE;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case FINISH_PHASE:
|
case FINISH_PHASE:
|
||||||
// Nothing to do here.
|
// Nothing to do here.
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user