mirror of
https://github.com/vcmi/vcmi.git
synced 2025-03-19 21:10:12 +02:00
Ability to use random progress bar
This commit is contained in:
parent
905eac24ae
commit
f3d48ecc3a
@ -693,17 +693,26 @@ CLoadingScreen::CLoadingScreen(ImagePath background)
|
|||||||
|
|
||||||
CCS->musich->stopMusic(5000);
|
CCS->musich->stopMusic(5000);
|
||||||
|
|
||||||
const auto & conf = CMainMenuConfig::get().getConfig()["loading"];
|
const auto& conf = CMainMenuConfig::get().getConfig()["loading"];
|
||||||
if(conf.isStruct())
|
const auto& nameConfig = conf["name"];
|
||||||
|
|
||||||
|
AnimationPath animationPath;
|
||||||
|
if (nameConfig.isVector() && !nameConfig.Vector().empty())
|
||||||
|
animationPath = AnimationPath::fromJson(*RandomGeneratorUtil::nextItem(nameConfig.Vector(), CRandomGenerator::getDefault()));
|
||||||
|
|
||||||
|
if (nameConfig.isString())
|
||||||
|
animationPath = AnimationPath::fromJson(nameConfig);
|
||||||
|
|
||||||
|
if (conf.isStruct())
|
||||||
{
|
{
|
||||||
const int posx = conf["x"].Integer();
|
const int posx = conf["x"].Integer();
|
||||||
const int posy = conf["y"].Integer();
|
const int posy = conf["y"].Integer();
|
||||||
const int blockSize = conf["size"].Integer();
|
const int blockSize = conf["size"].Integer();
|
||||||
const int blocksAmount = conf["amount"].Integer();
|
const int blocksAmount = conf["amount"].Integer();
|
||||||
|
|
||||||
for(int i = 0; i < blocksAmount; ++i)
|
for (int i = 0; i < blocksAmount; ++i)
|
||||||
{
|
{
|
||||||
progressBlocks.push_back(std::make_shared<CAnimImage>(AnimationPath::fromJson(conf["name"]), i, 0, posx + i * blockSize, posy));
|
progressBlocks.push_back(std::make_shared<CAnimImage>(animationPath, i, 0, posx + i * blockSize, posy));
|
||||||
progressBlocks.back()->deactivate();
|
progressBlocks.back()->deactivate();
|
||||||
progressBlocks.back()->visible = false;
|
progressBlocks.back()->visible = false;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user