|
|
@@ -152,8 +152,14 @@ void CRewardableObject::onHeroVisit(const CGHeroInstance *h) const
|
|
|
BlockingDialog sd(canRefuse, rewards.size() > 1);
|
|
|
sd.player = h->tempOwner;
|
|
|
sd.text = dialog;
|
|
|
- for (auto index : rewards)
|
|
|
- sd.components.push_back(info[index].reward.getDisplayedComponent(h));
|
|
|
+
|
|
|
+ if (rewards.size() > 1)
|
|
|
+ for (auto index : rewards)
|
|
|
+ sd.components.push_back(info[index].reward.getDisplayedComponent(h));
|
|
|
+
|
|
|
+ if (rewards.size() == 1)
|
|
|
+ info[rewards[0]].reward.loadComponents(sd.components, h);
|
|
|
+
|
|
|
cb->showBlockingDialog(&sd);
|
|
|
};
|
|
|
|