]> git.localhorst.tv Git - l2e.git/commitdiff
refactored battle resources to better compatibility with loader
authorDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 2 Sep 2012 15:32:58 +0000 (17:32 +0200)
committerDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 2 Sep 2012 15:33:53 +0000 (17:33 +0200)
src/battle/BattleState.cpp
src/battle/Resources.h
src/main.cpp

index 5ba60d67bb02ac29061df9509834b307145c40ba..d9586636d9667ee2d97756e83c28fcc3913bc77a 100644 (file)
@@ -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<int>(xOffset + tagWidth, yOffset);
        smallHeroTagPositions[3] = Vector<int>(xOffset + 3 * tagWidth, yOffset);
 
-       itemMenu = res->itemMenuPrototype;
+       itemMenu = *res->itemMenuProperties;
        LoadInventory();
 }
 
@@ -422,7 +422,7 @@ void BattleState::RenderSmallHeroTags(SDL_Surface *screen, const Vector<int> &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);
index 49d30c1fd49bf7693fcae0deeecd7a7e0a8c993d..719eec48f6428a94a9e126c4f908ac499c6161a1 100644 (file)
@@ -8,7 +8,7 @@
 #ifndef BATTLE_RESOURCES_H_
 #define BATTLE_RESOURCES_H_
 
-#include "../graphics/Menu.h"
+#include "../graphics/Color.h"
 
 #include <SDL.h>
 
@@ -60,14 +60,14 @@ struct Resources {
        graphics::Sprite *itemTargetCursor;
 
        const char *spellMenuHeadline;
-       graphics::Menu<const common::Spell *> spellMenuPrototype;
+       graphics::MenuProperties *spellMenuProperties;
 
        common::Inventory *inventory;
        const char *itemMenuHeadline;
-       graphics::Menu<const common::Item *> itemMenuPrototype;
+       graphics::MenuProperties *itemMenuProperties;
 
        const char *ikariMenuHeadline;
-       graphics::Menu<const common::Item *> 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)
        { }
 
 };
index a1fbfaf940d9cb29d3e2b16a366bff96fa17e645..491a0ec6c77d8fda2791dd5ae3d287b8fc89ae54 100644 (file)
@@ -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<const Spell *>(*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<const common::Item *>(*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<const Item *>(*intp.GetMenuProperties("ikariMenuPrototype"));
+               battleRes.ikariMenuProperties = intp.GetMenuProperties("ikariMenuPrototype");
                battleRes.escapeText = intp.GetString("escapeText");
 
                BattleState *battleState(new BattleState(bg, monstersLayout, heroesLayout, &battleRes));