- cache the techname and selected faction when doing a faction preview in lobbies
This commit is contained in:
parent
b1ff035f9e
commit
465ae629ba
|
@ -52,6 +52,9 @@ MenuStateConnectedGame::MenuStateConnectedGame(Program *program, MainMenu *mainM
|
||||||
switchSetupRequestFlagType |= ssrft_NetworkPlayerName;
|
switchSetupRequestFlagType |= ssrft_NetworkPlayerName;
|
||||||
updateDataSynchDetailText = false;
|
updateDataSynchDetailText = false;
|
||||||
|
|
||||||
|
currentTechName_factionPreview="";
|
||||||
|
currentFactionName_factionPreview="";
|
||||||
|
|
||||||
currentFactionLogo = "";
|
currentFactionLogo = "";
|
||||||
factionTexture=NULL;
|
factionTexture=NULL;
|
||||||
lastMissingMap="";
|
lastMissingMap="";
|
||||||
|
@ -999,13 +1002,20 @@ void MenuStateConnectedGame::update() {
|
||||||
if( clientInterface != NULL && clientInterface->isConnected() &&
|
if( clientInterface != NULL && clientInterface->isConnected() &&
|
||||||
gameSettings != NULL) {
|
gameSettings != NULL) {
|
||||||
|
|
||||||
string factionLogo = Game::findFactionLogoFile(gameSettings, NULL,"preview_screen.*");
|
if( currentTechName_factionPreview != gameSettings->getTech() ||
|
||||||
if(factionLogo == "") {
|
currentFactionName_factionPreview != gameSettings->getFactionTypeName(gameSettings->getThisFactionIndex())) {
|
||||||
factionLogo = Game::findFactionLogoFile(gameSettings, NULL);
|
|
||||||
}
|
currentTechName_factionPreview=gameSettings->getTech();
|
||||||
if(currentFactionLogo != factionLogo) {
|
currentFactionName_factionPreview=gameSettings->getFactionTypeName(gameSettings->getThisFactionIndex());
|
||||||
currentFactionLogo = factionLogo;
|
|
||||||
loadFactionTexture(currentFactionLogo);
|
string factionLogo = Game::findFactionLogoFile(gameSettings, NULL,"preview_screen.*");
|
||||||
|
if(factionLogo == "") {
|
||||||
|
factionLogo = Game::findFactionLogoFile(gameSettings, NULL);
|
||||||
|
}
|
||||||
|
if(currentFactionLogo != factionLogo) {
|
||||||
|
currentFactionLogo = factionLogo;
|
||||||
|
loadFactionTexture(currentFactionLogo);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,6 +116,9 @@ private:
|
||||||
|
|
||||||
bool enableFactionTexturePreview;
|
bool enableFactionTexturePreview;
|
||||||
bool enableMapPreview;
|
bool enableMapPreview;
|
||||||
|
|
||||||
|
string currentTechName_factionPreview;
|
||||||
|
string currentFactionName_factionPreview;
|
||||||
string currentFactionLogo;
|
string currentFactionLogo;
|
||||||
Texture2D *factionTexture;
|
Texture2D *factionTexture;
|
||||||
|
|
||||||
|
|
|
@ -57,6 +57,8 @@ MenuStateCustomGame::MenuStateCustomGame(Program *program, MainMenu *mainMenu, b
|
||||||
generalErrorToShow = "---";
|
generalErrorToShow = "---";
|
||||||
currentFactionLogo = "";
|
currentFactionLogo = "";
|
||||||
factionTexture=NULL;
|
factionTexture=NULL;
|
||||||
|
currentTechName_factionPreview="";
|
||||||
|
currentFactionName_factionPreview="";
|
||||||
|
|
||||||
publishToMasterserverThread = NULL;
|
publishToMasterserverThread = NULL;
|
||||||
Lang &lang= Lang::getInstance();
|
Lang &lang= Lang::getInstance();
|
||||||
|
@ -1554,13 +1556,21 @@ void MenuStateCustomGame::update() {
|
||||||
if(chrono.getMillis() > 0) chrono.start();
|
if(chrono.getMillis() > 0) chrono.start();
|
||||||
|
|
||||||
if(enableFactionTexturePreview == true) {
|
if(enableFactionTexturePreview == true) {
|
||||||
string factionLogo = Game::findFactionLogoFile(&gameSettings, NULL,"preview_screen.*");
|
|
||||||
if(factionLogo == "") {
|
if( currentTechName_factionPreview != gameSettings.getTech() ||
|
||||||
factionLogo = Game::findFactionLogoFile(&gameSettings, NULL);
|
currentFactionName_factionPreview != gameSettings.getFactionTypeName(gameSettings.getThisFactionIndex())) {
|
||||||
}
|
|
||||||
if(currentFactionLogo != factionLogo) {
|
currentTechName_factionPreview=gameSettings.getTech();
|
||||||
currentFactionLogo = factionLogo;
|
currentFactionName_factionPreview=gameSettings.getFactionTypeName(gameSettings.getThisFactionIndex());
|
||||||
loadFactionTexture(currentFactionLogo);
|
|
||||||
|
string factionLogo = Game::findFactionLogoFile(&gameSettings, NULL,"preview_screen.*");
|
||||||
|
if(factionLogo == "") {
|
||||||
|
factionLogo = Game::findFactionLogoFile(&gameSettings, NULL);
|
||||||
|
}
|
||||||
|
if(currentFactionLogo != factionLogo) {
|
||||||
|
currentFactionLogo = factionLogo;
|
||||||
|
loadFactionTexture(currentFactionLogo);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -125,6 +125,9 @@ private:
|
||||||
|
|
||||||
bool enableFactionTexturePreview;
|
bool enableFactionTexturePreview;
|
||||||
bool enableMapPreview;
|
bool enableMapPreview;
|
||||||
|
|
||||||
|
string currentTechName_factionPreview;
|
||||||
|
string currentFactionName_factionPreview;
|
||||||
string currentFactionLogo;
|
string currentFactionLogo;
|
||||||
Texture2D *factionTexture;
|
Texture2D *factionTexture;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue