From 3ecf065f3bcef720e82bb137a2be734ed7e16746 Mon Sep 17 00:00:00 2001 From: Daniel Karbach Date: Sun, 2 Sep 2012 17:32:58 +0200 Subject: [PATCH] refactored battle resources to better compatibility with loader --- src/battle/BattleState.cpp | 8 ++++---- src/battle/Resources.h | 14 ++++++++------ src/main.cpp | 8 ++++---- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/battle/BattleState.cpp b/src/battle/BattleState.cpp index 5ba60d6..d958663 100644 --- a/src/battle/BattleState.cpp +++ b/src/battle/BattleState.cpp @@ -80,9 +80,9 @@ void BattleState::Resize(int w, int h) { void BattleState::EnterState(Application &ctrl, SDL_Surface *screen) { for (int i(0); i < 4; ++i) { heroes[i].Position() = heroesLayout->CalculatePosition(i, background->w, background->h); - heroes[i].SpellMenu() = res->spellMenuPrototype; + heroes[i].SpellMenu() = *res->spellMenuProperties; heroes[i].UpdateSpellMenu(); - heroes[i].IkariMenu() = res->ikariMenuPrototype; + heroes[i].IkariMenu() = *res->ikariMenuProperties; heroes[i].UpdateIkariMenu(res); heroTags[i] = HeroTag(this, i); smallHeroTags[i] = SmallHeroTag(this, i); @@ -109,7 +109,7 @@ void BattleState::EnterState(Application &ctrl, SDL_Surface *screen) { smallHeroTagPositions[2] = Vector(xOffset + tagWidth, yOffset); smallHeroTagPositions[3] = Vector(xOffset + 3 * tagWidth, yOffset); - itemMenu = res->itemMenuPrototype; + itemMenu = *res->itemMenuProperties; LoadInventory(); } @@ -422,7 +422,7 @@ void BattleState::RenderSmallHeroTags(SDL_Surface *screen, const Vector &of SDL_FillRect(screen, &rect, SDL_MapRGB(screen->format, 0, 0, 0)); rect.y += res->normalFont->CharHeight() / 8; rect.h -= res->normalFont->CharHeight() / 4; - SDL_FillRect(screen, &rect, res->heroesBgColor); + SDL_FillRect(screen, &rect, res->heroesBgColor.MapRGB(screen->format)); for (int i(0); i < numHeroes; ++i) { smallHeroTags[i].Render(screen, tagWidth, tagHeight, smallHeroTagPositions[i] + offset); diff --git a/src/battle/Resources.h b/src/battle/Resources.h index 49d30c1..719eec4 100644 --- a/src/battle/Resources.h +++ b/src/battle/Resources.h @@ -8,7 +8,7 @@ #ifndef BATTLE_RESOURCES_H_ #define BATTLE_RESOURCES_H_ -#include "../graphics/Menu.h" +#include "../graphics/Color.h" #include @@ -60,14 +60,14 @@ struct Resources { graphics::Sprite *itemTargetCursor; const char *spellMenuHeadline; - graphics::Menu spellMenuPrototype; + graphics::MenuProperties *spellMenuProperties; common::Inventory *inventory; const char *itemMenuHeadline; - graphics::Menu itemMenuPrototype; + graphics::MenuProperties *itemMenuProperties; const char *ikariMenuHeadline; - graphics::Menu ikariMenuPrototype; + graphics::MenuProperties *ikariMenuProperties; const char *noEquipmentText; const char *escapeText; @@ -95,7 +95,7 @@ struct Resources { int ikariLabelCol; int ikariLabelRow; - Uint32 heroesBgColor; + graphics::Color heroesBgColor; Resources() @@ -130,9 +130,12 @@ struct Resources { , itemTargetCursor(0) , spellMenuHeadline("") + , spellMenuProperties(0) , inventory(0) , itemMenuHeadline("") + , itemMenuProperties(0) , ikariMenuHeadline("") + , ikariMenuProperties(0) , noEquipmentText("") , escapeText("") @@ -159,7 +162,6 @@ struct Resources { , ikariLabelCol(0) , ikariLabelRow(0) - , heroesBgColor(0) { } }; diff --git a/src/main.cpp b/src/main.cpp index a1fbfaf..491a0ec 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -128,7 +128,7 @@ int main(int argc, char **argv) { battleRes.activeHeroTagFrame = intp.GetFrame("activeHeroTagFrame"); battleRes.smallHeroTagFrame = intp.GetFrame("smallHeroTagFrame"); battleRes.lastSmallHeroTagFrame = intp.GetFrame("lastSmallHeroTagFrame"); - battleRes.heroesBgColor = intp.GetColor("heroesBgColor").MapRGB(screen.Screen()->format); + battleRes.heroesBgColor = intp.GetColor("heroesBgColor"); battleRes.healthGauge = intp.GetGauge("healthGauge"); battleRes.manaGauge = intp.GetGauge("manaGauge"); @@ -162,7 +162,7 @@ int main(int argc, char **argv) { selan.AddSpell(valorSpell); battleRes.spellMenuHeadline = intp.GetString("spellMenuHeadline"); - battleRes.spellMenuPrototype = Menu(*intp.GetMenuProperties("spellMenuPrototype")); + battleRes.spellMenuProperties = intp.GetMenuProperties("spellMenuPrototype"); battleRes.weaponMenuIcon = intp.GetSprite("swordIcon"); battleRes.armorMenuIcon = intp.GetSprite("armorIcon"); @@ -181,7 +181,7 @@ int main(int argc, char **argv) { battleRes.inventory = &inventory; battleRes.itemMenuHeadline = intp.GetString("itemMenuHeadline"); - battleRes.itemMenuPrototype = Menu(*intp.GetMenuProperties("itemMenuPrototype")); + battleRes.itemMenuProperties = intp.GetMenuProperties("itemMenuPrototype"); maxim.SetWeapon(intp.GetItem("zircoSwordItem")); maxim.SetArmor(intp.GetItem("zirconArmorItem")); @@ -214,7 +214,7 @@ int main(int argc, char **argv) { battleRes.ikariMenuHeadline = intp.GetString("ikariMenuHeadline"); battleRes.noEquipmentText = intp.GetString("noEquipmentText"); - battleRes.ikariMenuPrototype = Menu(*intp.GetMenuProperties("ikariMenuPrototype")); + battleRes.ikariMenuProperties = intp.GetMenuProperties("ikariMenuPrototype"); battleRes.escapeText = intp.GetString("escapeText"); BattleState *battleState(new BattleState(bg, monstersLayout, heroesLayout, &battleRes)); -- 2.39.2