From: Daniel Karbach Date: Wed, 13 Feb 2013 17:39:57 +0000 (+0100) Subject: put victory strings in battle resources X-Git-Url: http://git.localhorst.tv/?p=l2e.git;a=commitdiff_plain;h=77b070e782e664f9906487d6ee71010f659ce8b5 put victory strings in battle resources --- diff --git a/src/battle/Resources.cpp b/src/battle/Resources.cpp index d50571f..621f61e 100644 --- a/src/battle/Resources.cpp +++ b/src/battle/Resources.cpp @@ -84,6 +84,23 @@ Resources::Resources() , ikariLabelCol(0) , ikariLabelRow(0) +, victoryGetsText(0) +, victoryExpText(0) +, victoryGoldText(0) +, victoryLevelUpText(0) +, victoryUpgradeText(0) +, victoryNextLevelText(0) + +, victoryMHPText(0) +, victoryMMPText(0) +, victoryATPText(0) +, victoryDFPText(0) +, victorySTRText(0) +, victoryAGLText(0) +, victoryINTText(0) +, victoryGUTText(0) +, victoryMGRText(0) + { } @@ -160,6 +177,23 @@ void Resources::CreateTypeDescription() { td.AddField("ikariLabelCol", FieldDescription(((char *)&r.ikariLabelCol) - ((char *)&r), Interpreter::NUMBER_ID).SetDescription("row of the ikari label in heroTagLabels")); td.AddField("heroesBgColor", FieldDescription(((char *)&r.heroesBgColor) - ((char *)&r), Interpreter::COLOR_ID).SetDescription("background color of the small tags during attack animation")); + + td.AddField("victoryGetsText", FieldDescription(((char *)&r.victoryGetsText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryExpText", FieldDescription(((char *)&r.victoryExpText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryGoldText", FieldDescription(((char *)&r.victoryGoldText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryLevelUpText", FieldDescription(((char *)&r.victoryLevelUpText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryUpgradeText", FieldDescription(((char *)&r.victoryUpgradeText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryNextLevelText", FieldDescription(((char *)&r.victoryNextLevelText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + + td.AddField("victoryMHPText", FieldDescription(((char *)&r.victoryMHPText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryMMPText", FieldDescription(((char *)&r.victoryMMPText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryATPText", FieldDescription(((char *)&r.victoryATPText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryDFPText", FieldDescription(((char *)&r.victoryDFPText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victorySTRText", FieldDescription(((char *)&r.victorySTRText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryAGLText", FieldDescription(((char *)&r.victoryAGLText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryINTText", FieldDescription(((char *)&r.victoryINTText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryGUTText", FieldDescription(((char *)&r.victoryGUTText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); + td.AddField("victoryMGRText", FieldDescription(((char *)&r.victoryMGRText) - ((char *)&r), Interpreter::STRING_ID).SetReferenced()); } void Resources::Construct(void *data) { diff --git a/src/battle/Resources.h b/src/battle/Resources.h index 1500378..0a8a1e8 100644 --- a/src/battle/Resources.h +++ b/src/battle/Resources.h @@ -88,6 +88,23 @@ struct Resources { graphics::Color heroesBgColor; + const char *victoryGetsText; + const char *victoryExpText; + const char *victoryGoldText; + const char *victoryLevelUpText; + const char *victoryUpgradeText; + const char *victoryNextLevelText; + + const char *victoryMHPText; + const char *victoryMMPText; + const char *victoryATPText; + const char *victoryDFPText; + const char *victorySTRText; + const char *victoryAGLText; + const char *victoryINTText; + const char *victoryGUTText; + const char *victoryMGRText; + Resources(); diff --git a/src/battle/states/VictoryState.cpp b/src/battle/states/VictoryState.cpp index e2cc99f..59d4495 100644 --- a/src/battle/states/VictoryState.cpp +++ b/src/battle/states/VictoryState.cpp @@ -3,6 +3,7 @@ #include "../Battle.h" #include "../BattleState.h" #include "../Hero.h" +#include "../Resources.h" #include "../../app/Application.h" #include "../../app/Input.h" #include "../../common/Capsule.h" @@ -13,6 +14,7 @@ #include "../../graphics/Font.h" #include "../../graphics/Frame.h" +#include #include using app::Application; @@ -22,7 +24,12 @@ using common::Upgrade; using graphics::Font; using graphics::Frame; using math::Vector; +using std::left; +using std::right; +using std::setfill; +using std::setw; using std::string; +using std::stringstream; using std::vector; namespace battle { @@ -33,15 +40,19 @@ void VictoryState::OnEnterState(SDL_Surface *screen) { } void VictoryState::LoadResults() { - // TODO: localization + const Resources &res = parent->Res(); lines.clear(); - std::stringstream s; - s << "Gets " << battle->ExpReward() << " EXP"; + stringstream s; + s << res.victoryGetsText << ' ' + << battle->ExpReward() << ' ' + << res.victoryExpText << '.'; lines.push_back(s.str()); s.str(""); - s << "Gets " << battle->GoldReward() << " gold"; + s << res.victoryGetsText << ' ' + << battle->GoldReward() << ' ' + << res.victoryGoldText << '.'; lines.push_back(s.str()); lines.push_back(""); @@ -49,55 +60,82 @@ void VictoryState::LoadResults() { GameState &state = *parent->Game().state; vector upgrade; battle->ApplyRewards(state, upgrade); - for (std::vector::const_iterator + for (vector::const_iterator i(upgrade.begin()), end(upgrade.end()); i != end; ++i) { LoadResult(*i, lines); } + s.str(""); + s << state.money << ' ' << res.victoryGoldText; + string goldStr = s.str(); + lines.push_back(""); s.str(""); - s << state.money << " gold"; + s << right << setw(28) << setfill(' ') << goldStr; lines.push_back(s.str()); } void VictoryState::LoadResult( const Upgrade &u, vector &lines) { - std::stringstream s; + const Resources &res = parent->Res(); + stringstream s; switch (u.GetType()) { case Upgrade::LEVEL_UP: - s << u.Name() << " levels up."; + s << left << setw(6) << setfill(' ') << u.Name() + << res.victoryLevelUpText << '.'; break; case Upgrade::MAX_HEALTH: - s << "Max. HP increases by " << u.Amount(); + s << res.victoryMHPText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::MAX_MAGIC: - s << "Max. MP increases by " << u.Amount(); + s << res.victoryMMPText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::ATTACK: - s << "ATP increases by " << u.Amount(); + s << res.victoryATPText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::DEFENSE: - s << "DFP increases by " << u.Amount(); + s << res.victoryDFPText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::STRENGTH: - s << "STR increases by " << u.Amount(); + s << res.victorySTRText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::AGILITY: - s << "AGL increases by " << u.Amount(); + s << res.victoryAGLText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::INTELLIGENCE: - s << "INT increases by " << u.Amount(); + s << res.victoryINTText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::GUT: - s << "GUT increases by " << u.Amount(); + s << res.victoryGUTText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::MAGIC_RESISTANCE: - s << "MGR increases by " << u.Amount(); + s << res.victoryMGRText << ' ' + << res.victoryUpgradeText << ' ' + << u.Amount() << '.'; break; case Upgrade::LEVEL_NEXT: - s << u.Name() << " next level " << u.Amount(); + s << setw(7) << setfill(' ') + << left << u.Name() << ' ' + << res.victoryNextLevelText + << ' ' << u.Amount(); break; default: s << "unknown upgrade type " << u.GetType(); diff --git a/test-data/test.l2s b/test-data/test.l2s index 7b187aa..500039f 100644 --- a/test-data/test.l2s +++ b/test-data/test.l2s @@ -650,7 +650,24 @@ export BattleResources battleResources { }, noEquipmentText: "No equip", - escapeText: "Escapes." + escapeText: "Escapes.", + + victoryGetsText: "Gets", + victoryExpText: "EXP", + victoryGoldText: "GOLD", + victoryLevelUpText: "levels up", + victoryUpgradeText: "increases by", + victoryNextLevelText: "NXT.LEVEL", + + victoryMHPText: "Max. HP", + victoryMMPText: "Max. MP", + victoryATPText: "ATP", + victoryDFPText: "DFP", + victorySTRText: "STR", + victoryAGLText: "AGL", + victoryINTText: "INT", + victoryGUTText: "GUT", + victoryMGRText: "MGR" } Font menuFont {