Remember user kart choice between sessions
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6362 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
@@ -221,7 +221,9 @@ namespace UserConfigParams
|
||||
PARAM_DEFAULT( IntUserConfigParam(0, "difficulty", &m_race_setup_group, "Default race difficulty. 0=easy, 1=medium, 2=hard") );
|
||||
PARAM_PREFIX IntUserConfigParam m_game_mode
|
||||
PARAM_DEFAULT( IntUserConfigParam(0, "game_mode", &m_race_setup_group, "Game mode. 0=standard, 1=time trial, 2=follow the leader, 3=3 strikes") );
|
||||
|
||||
PARAM_PREFIX StringUserConfigParam m_default_kart
|
||||
PARAM_DEFAULT( StringUserConfigParam("tux", "kart", "Kart to select by default (the last used kart)") );
|
||||
|
||||
// ---- Video
|
||||
PARAM_PREFIX GroupUserConfigParam m_video_group
|
||||
PARAM_DEFAULT( GroupUserConfigParam("Video", "Video Settings") );
|
||||
@@ -321,8 +323,6 @@ namespace UserConfigParams
|
||||
PARAM_DEFAULT( StringUserConfigParam("http://download.tuxfamily.org/stkaddons/0.7/", "server_addons", "The server used for addon.") );
|
||||
|
||||
PARAM_PREFIX bool m_no_start_screen PARAM_DEFAULT( false ); // not saved to file
|
||||
|
||||
PARAM_PREFIX std::string m_default_kart PARAM_DEFAULT( "tux" ); // not saved to file
|
||||
|
||||
// TODO? implement blacklist for new irrlicht device and GUI
|
||||
PARAM_PREFIX std::vector<std::string> m_blacklist_res;
|
||||
|
||||
@@ -307,7 +307,7 @@ public:
|
||||
m_children.push_back(m_model_view);
|
||||
|
||||
// Init kart model
|
||||
std::string& default_kart = UserConfigParams::m_default_kart;
|
||||
const std::string default_kart = UserConfigParams::m_default_kart.toString();
|
||||
const KartProperties* props = kart_properties_manager->getKart(default_kart);
|
||||
if(!props)
|
||||
{
|
||||
@@ -938,7 +938,11 @@ void KartSelectionScreen::init()
|
||||
}
|
||||
|
||||
// Player 0 select default kart
|
||||
w->setSelection(UserConfigParams::m_default_kart, 0, true);
|
||||
if (!w->setSelection(UserConfigParams::m_default_kart, 0, true))
|
||||
{
|
||||
// if kart from config not found, select the first instead
|
||||
w->setSelection(0, 0, true);
|
||||
}
|
||||
|
||||
/*
|
||||
std::cout << "===== screen contents =====\n";
|
||||
@@ -1211,6 +1215,11 @@ void KartSelectionScreen::playerConfirm(const int playerID)
|
||||
return;
|
||||
}
|
||||
|
||||
if (playerID == PLAYER_ID_GAME_MASTER)
|
||||
{
|
||||
UserConfigParams::m_default_kart = selection;
|
||||
}
|
||||
|
||||
// make sure no other player selected the same identity or kart
|
||||
const int amount = m_kart_widgets.size();
|
||||
for (int n=0; n<amount; n++)
|
||||
|
||||
Reference in New Issue
Block a user