diff --git a/src/modes/cutscene_world.cpp b/src/modes/cutscene_world.cpp index 08e90e066..0aff4dfed 100644 --- a/src/modes/cutscene_world.cpp +++ b/src/modes/cutscene_world.cpp @@ -408,7 +408,6 @@ void CutsceneWorld::enterRaceOverState() GUIEngine::Screen* newStack[] = { mainMenu, credits, NULL }; race_manager->exitRace(); StateManager::get()->resetAndSetStack(newStack); - credits->push(); } // TODO: remove hardcoded knowledge of cutscenes, replace with scripting probably else if (m_parts.size() == 1 && m_parts[0] == "gpwin") @@ -519,13 +518,17 @@ void CutsceneWorld::enterRaceOverState() { race_manager->exitRace(); StateManager::get()->resetAndGoToScreen(MainMenuScreen::getInstance()); - player->setFirstTime(false); PlayerManager::get()->save(); KartSelectionScreen* s = OfflineKartSelectionScreen::getInstance(); s->setMultiplayer(false); s->setGoToOverworldNext(); s->push(); + } else + { + race_manager->exitRace(); + StateManager::get()->resetAndGoToScreen(MainMenuScreen::getInstance()); + OverWorld::enterOverWorld(); } } // TODO: remove hardcoded knowledge of cutscenes, replace with scripting probably