QTfrontend/mapContainer.cpp
changeset 4563 b09f4a52aca4
parent 4562 b55f78fd2bf6
child 4564 6e45916a246e
equal deleted inserted replaced
4562:b55f78fd2bf6 4563:b09f4a52aca4
   472         break;
   472         break;
   473     case MAPGEN_DRAWN:
   473     case MAPGEN_DRAWN:
   474         emit drawMapRequested();
   474         emit drawMapRequested();
   475         break;
   475         break;
   476     default:
   476     default:
   477         if(chooseMap->currentIndex() < numMissions + 4)
   477         if(chooseMap->currentIndex() <= numMissions + MAPGEN_MAP)
   478             setRandomMission();
   478             setRandomMission();
   479         else
   479         else
   480             setRandomStatic();
   480             setRandomStatic();
   481         break;
   481         break;
   482     }
   482     }
   483 }
   483 }
   484 
   484 
   485 void HWMapContainer::setRandomStatic()
   485 void HWMapContainer::setRandomStatic()
   486 {
   486 {
   487     chooseMap->setCurrentIndex(4 + numMissions + rand() % (chooseMap->count() - 4 - numMissions));
   487     chooseMap->setCurrentIndex(MAPGEN_MAP + 1 + numMissions + rand() % (chooseMap->count() - MAPGEN_MAP - 1 - numMissions));
   488     setRandomSeed();
   488     setRandomSeed();
   489 }
   489 }
   490 
   490 
   491 void HWMapContainer::setRandomMission()
   491 void HWMapContainer::setRandomMission()
   492 {
   492 {
   493     chooseMap->setCurrentIndex(3 + rand() % numMissions);
   493     chooseMap->setCurrentIndex(MAPGEN_MAP + rand() % numMissions);
   494     setRandomSeed();
   494     setRandomSeed();
   495 }
   495 }
   496 
   496 
   497 void HWMapContainer::setRandomSeed()
   497 void HWMapContainer::setRandomSeed()
   498 {
   498 {
   499     m_seed = QUuid::createUuid().toString();
   499     m_seed = QUuid::createUuid().toString();
   500     seedEdit->setText(m_seed);
   500     seedEdit->setText(m_seed);
   501     emit seedChanged(m_seed);
   501     emit seedChanged(m_seed);
   502     if (chooseMap->currentIndex() < MAPGEN_MAP)
   502     if (chooseMap->currentIndex() < MAPGEN_MAP)
   503         askForGeneratedPreview();
   503         updatePreview();
   504 }
   504 }
   505 
   505 
   506 void HWMapContainer::setRandomTheme()
   506 void HWMapContainer::setRandomTheme()
   507 {
   507 {
   508     if(!Themes->size()) return;
   508     if(!Themes->size()) return;
   580     updatePreview();
   580     updatePreview();
   581 }
   581 }
   582 
   582 
   583 void HWMapContainer::updatePreview()
   583 void HWMapContainer::updatePreview()
   584 {
   584 {
   585     switch(chooseMap->currentIndex())
   585     int curIndex = chooseMap->currentIndex();
       
   586 
       
   587     switch(curIndex)
   586     {
   588     {
   587     case MAPGEN_REGULAR:
   589     case MAPGEN_REGULAR:
   588         askForGeneratedPreview();
   590         askForGeneratedPreview();
   589         break;
   591         break;
   590     case MAPGEN_MAZE:
   592     case MAPGEN_MAZE:
   592         break;
   594         break;
   593     case MAPGEN_DRAWN:
   595     case MAPGEN_DRAWN:
   594         askForGeneratedPreview();
   596         askForGeneratedPreview();
   595         break;
   597         break;
   596     default:
   598     default:
   597         int curIndex = chooseMap->currentIndex();
       
   598         QPixmap mapImage;
   599         QPixmap mapImage;
       
   600         qDebug() << "Map data" << curIndex << chooseMap->currentText() << chooseMap->itemData(curIndex);
   599         if(!mapImage.load(datadir->absolutePath() + "/Maps/" + chooseMap->itemData(curIndex).toList()[0].toString() + "/preview.png")) {
   601         if(!mapImage.load(datadir->absolutePath() + "/Maps/" + chooseMap->itemData(curIndex).toList()[0].toString() + "/preview.png")) {
   600             imageButt->setIcon(QIcon());
   602             imageButt->setIcon(QIcon());
   601             return;
   603             return;
   602         }
   604         }
   603 
   605