1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-17 01:32:21 +02:00

Merge branch 'PregameCache' into develop

This commit is contained in:
AlexVinS
2016-11-03 17:10:54 +03:00

View File

@ -1088,8 +1088,8 @@ void SelectionTab::filter( int size, bool selectFirst )
{ {
slider->moveTo(0); slider->moveTo(0);
onSelect(curItems[0]); onSelect(curItems[0]);
selectAbs(0);
} }
selectAbs(0);
} }
else else
{ {
@ -1304,16 +1304,24 @@ SelectionTab::SelectionTab(CMenuScreen::EState Type, const std::function<void(CM
switch(tabType) switch(tabType)
{ {
case CMenuScreen::newGame: case CMenuScreen::newGame:
selectFName("Maps/Arrogance"); logGlobal->error(settings["session"]["lastMap"].String());
if(settings["session"]["lastMap"].isNull())
selectFName("Maps/Arrogance");
else
selectFName(settings["session"]["lastMap"].String());
break; break;
case CMenuScreen::loadGame:
case CMenuScreen::campaignList: case CMenuScreen::campaignList:
select(0); select(0);
break; break;
case CMenuScreen::loadGame:
case CMenuScreen::saveGame:; case CMenuScreen::saveGame:;
if(saveGameName.empty()) if(saveGameName.empty())
{ {
txt->setText("NEWGAME"); if(tabType == CMenuScreen::saveGame)
txt->setText("NEWGAME");
else
select(0);
} }
else else
{ {
@ -1371,6 +1379,12 @@ void SelectionTab::select( int position )
else if(position >= positions) else if(position >= positions)
slider->moveBy(position - positions + 1); slider->moveBy(position - positions + 1);
if(tabType == CMenuScreen::newGame)
{
Settings lastMap = settings.write["session"]["lastMap"];
lastMap->String() = getSelectedMapInfo()->fileURI;
}
if(txt) if(txt)
{ {
auto filename = *CResourceHandler::get("local")->getResourceName( auto filename = *CResourceHandler::get("local")->getResourceName(
@ -1418,7 +1432,7 @@ void SelectionTab::printMaps(SDL_Surface *to)
{ {
CMapInfo *currentItem = curItems[elemIdx]; CMapInfo *currentItem = curItems[elemIdx];
if (elemIdx == selectionPos) if(elemIdx == selectionPos)
itemColor=Colors::YELLOW; itemColor=Colors::YELLOW;
else else
itemColor=Colors::WHITE; itemColor=Colors::WHITE;