X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2FBattleState.cpp;h=d442f2289becfefbbf4432ac37e637e292001eb3;hb=7252571fb926a187c4c40e8f4eec718f16d63ffa;hp=5ba60d67bb02ac29061df9509834b307145c40ba;hpb=70641f2eb3f9fce8c89dcbf345e202050609a142;p=l2e.git diff --git a/src/battle/BattleState.cpp b/src/battle/BattleState.cpp index 5ba60d6..d442f22 100644 --- a/src/battle/BattleState.cpp +++ b/src/battle/BattleState.cpp @@ -12,6 +12,7 @@ #include "states/PerformAttacks.h" #include "../app/Application.h" #include "../app/Input.h" +#include "../common/GameState.h" #include "../common/Ikari.h" #include "../common/Inventory.h" #include "../common/Item.h" @@ -29,6 +30,7 @@ using app::Input; using common::Inventory; using common::Item; using common::Spell; +using common::Stats; using geometry::Vector; using graphics::Menu; @@ -72,17 +74,17 @@ void BattleState::SwapHeroes(int lhs, int rhs) { } -void BattleState::Resize(int w, int h) { +void BattleState::OnResize(int w, int h) { } -void BattleState::EnterState(Application &ctrl, SDL_Surface *screen) { +void BattleState::OnEnterState(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,12 +111,12 @@ 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(); } void BattleState::LoadInventory() { - const Inventory &inv(*res->inventory); + const Inventory &inv(game->state->inventory); itemMenu.Clear(); itemMenu.Reserve(inv.MaxItems()); for (int i(0); i < inv.MaxItems(); ++i) { @@ -128,11 +130,11 @@ void BattleState::LoadInventory() { ClearAllAttacks(); } -void BattleState::ExitState(Application &ctrl, SDL_Surface *screen) { +void BattleState::OnExitState(Application &ctrl, SDL_Surface *screen) { } -void BattleState::ResumeState(Application &ctrl, SDL_Surface *screen) { +void BattleState::OnResumeState(Application &ctrl, SDL_Surface *screen) { if (ranAway) { ctrl.PopState(); // quit the battle scene return; @@ -167,7 +169,7 @@ bool BattleState::Defeat() const { return true; } -void BattleState::PauseState(Application &ctrl, SDL_Surface *screen) { +void BattleState::OnPauseState(Application &ctrl, SDL_Surface *screen) { } @@ -422,7 +424,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);