+ LoadResult(*i, lines);
+ }
+
+ s.str("");
+ s << state.money << ' ' << res.victoryGoldText;
+ string goldStr = s.str();
+
+ lines.push_back("");
+ s.str("");
+ s << right << setw(28) << setfill(' ') << goldStr;
+ lines.push_back(s.str());
+}
+
+void VictoryState::LoadResult(
+ const Upgrade &u,
+ vector<string> &lines) {
+ const Resources &res = parent->Res();
+ stringstream s;
+ switch (u.GetType()) {
+ case Upgrade::LEVEL_UP:
+ s << left << setw(6) << setfill(' ') << u.Name()
+ << res.victoryLevelUpText << '.';
+ break;
+ case Upgrade::MAX_HEALTH:
+ s << res.victoryMHPText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::MAX_MAGIC:
+ s << res.victoryMMPText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::ATTACK:
+ s << res.victoryATPText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::DEFENSE:
+ s << res.victoryDFPText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::STRENGTH:
+ s << res.victorySTRText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::AGILITY:
+ s << res.victoryAGLText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::INTELLIGENCE:
+ s << res.victoryINTText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::GUT:
+ s << res.victoryGUTText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::MAGIC_RESISTANCE:
+ s << res.victoryMGRText << ' '
+ << res.victoryUpgradeText << ' '
+ << u.Amount() << '.';
+ break;
+ case Upgrade::LEVEL_NEXT:
+ s << setw(7) << setfill(' ')
+ << left << u.Name() << ' '
+ << res.victoryNextLevelText
+ << ' ' << u.Amount();
+ break;
+ default:
+ s << "unknown upgrade type " << u.GetType();