From 4425b7d234166a2f66f198a3310a09e3169e438b Mon Sep 17 00:00:00 2001 From: titiger Date: Mon, 13 Mar 2017 00:58:06 +0100 Subject: [PATCH] Use steam player name as default playername if nothing was set --- source/glest_game/main/main.cpp | 22 ++++++++++++++++--- source/glest_game/menu/menu_state_options.cpp | 3 +-- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/source/glest_game/main/main.cpp b/source/glest_game/main/main.cpp index 5582de2a..d6f470d2 100644 --- a/source/glest_game/main/main.cpp +++ b/source/glest_game/main/main.cpp @@ -3295,6 +3295,22 @@ void ShowINISettings(int argc, char **argv,Config &config,Config &configKeys) { } } +void setupSteamSettings(){ + bool needToSaveConfig=false; + Config &config = Config::getInstance(); + string steamPlayerName = safeCharPtrCopy(getenv("SteamAppUser"),100); + if( steamPlayerName=="") return;// not a steam launch + string currentPLayerName=config.getString("NetPlayerName",""); + if( currentPLayerName=="newbie" || currentPLayerName=="" ){ + config.setString("NetPlayerName",steamPlayerName); + needToSaveConfig=true; + } + + if( needToSaveConfig == true ){ + config.save(); + } +} + void CheckForDuplicateData() { Config &config = Config::getInstance(); @@ -4185,9 +4201,6 @@ int glestMain(int argc, char** argv) { return 2; } - - - if( hasCommandArgument(argc, argv,string(GAME_ARGS[GAME_ARG_MASTERSERVER_MODE])) == true) { //isMasterServerModeEnabled = true; //Window::setMasterserverMode(isMasterServerModeEnabled); @@ -4526,6 +4539,8 @@ int glestMain(int argc, char** argv) { Config &config = Config::getInstance(); setupGameItemPaths(argc, argv, &config); + setupSteamSettings(); + if(config.getString("PlayerId","") == "") { char uuid_str[38]; get_uuid_string(uuid_str,sizeof(uuid_str)); @@ -4533,6 +4548,7 @@ int glestMain(int argc, char** argv) { config.setString("PlayerId",uuid_str); config.save(); } + //printf("Players UUID: [%s]\n",config.getString("PlayerId","").c_str()); if(config.getBool("DisableLuaSandbox","false") == true) { diff --git a/source/glest_game/menu/menu_state_options.cpp b/source/glest_game/menu/menu_state_options.cpp index 0b67cb47..ac187d27 100644 --- a/source/glest_game/menu/menu_state_options.cpp +++ b/source/glest_game/menu/menu_state_options.cpp @@ -174,8 +174,7 @@ MenuStateOptions::MenuStateOptions(Program *program, MainMenu *mainMenu, Program labelPlayerNameLabel.setText(lang.getString("Playername")); labelPlayerName.init(currentColumnStart,currentLine); - string steamPlayerName = safeCharPtrCopy(getenv("SteamAppUser"),100); - labelPlayerName.setText(config.getString("NetPlayerName",(steamPlayerName != "" ? steamPlayerName.c_str() : Socket::getHostName().c_str()))); + labelPlayerName.setText(config.getString("NetPlayerName",Socket::getHostName().c_str())); labelPlayerName.setFont(CoreData::getInstance().getMenuFontBig()); labelPlayerName.setFont3D(CoreData::getInstance().getMenuFontBig3D()); labelPlayerName.setEditable(true);