1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-08-13 19:54:17 +02:00

Merge pull request #3364 from IvanSavenko/scholar_fix

Fix refusable Scholar
This commit is contained in:
Ivan Savenko
2023-12-23 21:54:13 +02:00
committed by GitHub

View File

@@ -111,11 +111,20 @@ void CRewardableObject::onHeroVisit(const CGHeroInstance *h) const
selectRewardWthMessage(h, rewards, configuration.onSelect);
break;
case Rewardable::SELECT_FIRST: // give first available
grantRewardWithMessage(h, rewards.front(), true);
if (configuration.canRefuse)
selectRewardWthMessage(h, { rewards.front() }, configuration.info.at(rewards.front()).message);
else
grantRewardWithMessage(h, rewards.front(), true);
break;
case Rewardable::SELECT_RANDOM: // give random
grantRewardWithMessage(h, *RandomGeneratorUtil::nextItem(rewards, cb->gameState()->getRandomGenerator()), true);
{
ui32 rewardIndex = *RandomGeneratorUtil::nextItem(rewards, cb->gameState()->getRandomGenerator());
if (configuration.canRefuse)
selectRewardWthMessage(h, { rewardIndex }, configuration.info.at(rewardIndex).message);
else
grantRewardWithMessage(h, rewardIndex, true);
break;
}
}
break;
}