Show which challenges have been solved in the dialog
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10849 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
parent
2d926bbfcd
commit
c92df26ea6
@ -77,6 +77,8 @@ public:
|
||||
// ------------------------------------------------------------------------
|
||||
void setActive(RaceManager::Difficulty d) {m_state[d] = CH_ACTIVE; }
|
||||
// ------------------------------------------------------------------------
|
||||
ChallengeData* getData() { return m_data; }
|
||||
|
||||
ChallengeData* getData() { return m_data; }
|
||||
const ChallengeData* getData() const { return m_data; }
|
||||
};
|
||||
#endif
|
||||
|
@ -18,9 +18,11 @@
|
||||
#include "challenges/unlock_manager.hpp"
|
||||
#include "config/user_config.hpp"
|
||||
#include "guiengine/engine.hpp"
|
||||
#include "guiengine/widgets/icon_button_widget.hpp"
|
||||
#include "guiengine/widgets/label_widget.hpp"
|
||||
#include "input/device_manager.hpp"
|
||||
#include "input/input_manager.hpp"
|
||||
#include "io/file_manager.hpp"
|
||||
#include "modes/world.hpp"
|
||||
#include "network/network_manager.hpp"
|
||||
#include "race/race_manager.hpp"
|
||||
@ -79,16 +81,38 @@ SelectChallengeDialog::SelectChallengeDialog(const float percentWidth,
|
||||
getWidget("expert")->setFocusForPlayer(PLAYER_ID_GAME_MASTER);
|
||||
break;
|
||||
}
|
||||
|
||||
const ChallengeData* c = unlock_manager->getChallenge(challenge_id);
|
||||
|
||||
const Challenge* c = unlock_manager->getCurrentSlot()->getChallenge(challenge_id);
|
||||
|
||||
if (c->isSolved(RaceManager::RD_EASY))
|
||||
{
|
||||
IconButtonWidget* btn = getWidget<IconButtonWidget>("novice");
|
||||
btn->setImage(file_manager->getTextureFile("cup_bronze.png").c_str(),
|
||||
IconButtonWidget::ICON_PATH_TYPE_ABSOLUTE);
|
||||
}
|
||||
|
||||
if (c->isSolved(RaceManager::RD_MEDIUM))
|
||||
{
|
||||
IconButtonWidget* btn = getWidget<IconButtonWidget>("intermediate");
|
||||
btn->setImage(file_manager->getTextureFile("cup_silver.png").c_str(),
|
||||
IconButtonWidget::ICON_PATH_TYPE_ABSOLUTE);
|
||||
}
|
||||
|
||||
if (c->isSolved(RaceManager::RD_HARD))
|
||||
{
|
||||
IconButtonWidget* btn = getWidget<IconButtonWidget>("expert");
|
||||
btn->setImage(file_manager->getTextureFile("cup_gold.png").c_str(),
|
||||
IconButtonWidget::ICON_PATH_TYPE_ABSOLUTE);
|
||||
}
|
||||
|
||||
|
||||
LabelWidget* novice_label = getWidget<LabelWidget>("novice_label");
|
||||
LabelWidget* medium_label = getWidget<LabelWidget>("intermediate_label");
|
||||
LabelWidget* expert_label = getWidget<LabelWidget>("difficult_label");
|
||||
|
||||
novice_label->setText( getLabel(RaceManager::RD_EASY, c), false );
|
||||
medium_label->setText( getLabel(RaceManager::RD_MEDIUM, c), false );
|
||||
expert_label->setText( getLabel(RaceManager::RD_HARD, c), false );
|
||||
novice_label->setText( getLabel(RaceManager::RD_EASY, c->getData()), false );
|
||||
medium_label->setText( getLabel(RaceManager::RD_MEDIUM, c->getData()), false );
|
||||
expert_label->setText( getLabel(RaceManager::RD_HARD, c->getData()), false );
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user