X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;ds=sidebyside;f=src%2Fbattle%2Fstates%2FRunState.cpp;h=7fbb78347c5ad5c2cf76912a9414685b6cabc7b0;hb=0b11a24a8b08c49d6e4301573602fb6d01e7a8c8;hp=7e7dfc49b5ceb04262287a8c04886d39cd9027ed;hpb=d97b7038c28058a76e7214e0dce0394fd8b67cff;p=l2e.git diff --git a/src/battle/states/RunState.cpp b/src/battle/states/RunState.cpp index 7e7dfc4..7fbb783 100644 --- a/src/battle/states/RunState.cpp +++ b/src/battle/states/RunState.cpp @@ -16,7 +16,7 @@ using math::Vector; namespace battle { void RunState::OnEnterState(SDL_Surface *screen) { - + OnResize(screen->w, screen->h); } void RunState::OnExitState(SDL_Surface *screen) { @@ -33,7 +33,14 @@ void RunState::OnPauseState(SDL_Surface *screen) { void RunState::OnResize(int width, int height) { + framePosition = battle->ScreenOffset(); + frameSize = Vector ( + battle->Width(), + battle->Res().titleFrame->BorderHeight() * 2 + battle->Res().titleFont->CharHeight()); + textPosition = Vector( + (battle->Width() - std::strlen(battle->Res().escapeText) * battle->Res().titleFont->CharWidth()) / 2, + battle->Res().titleFrame->BorderHeight()); } @@ -50,22 +57,17 @@ void RunState::UpdateWorld(Uint32 deltaT) { } void RunState::Render(SDL_Surface *screen) { - Vector offset(battle->CalculateScreenOffset(screen)); - battle->RenderBackground(screen, offset); - battle->RenderMonsters(screen, offset); - battle->RenderHeroes(screen, offset); - battle->RenderSmallHeroTags(screen, offset); - RenderTitleBar(screen, offset); + battle->RenderBackground(screen); + battle->RenderMonsters(screen); + battle->RenderHeroes(screen); + battle->RenderSmallHeroTags(screen); + RenderTitleBar(screen); } -void RunState::RenderTitleBar(SDL_Surface *screen, const Vector &offset) { - int height(battle->Res().titleFrame->BorderHeight() * 2 + battle->Res().titleFont->CharHeight()); - battle->Res().titleFrame->Draw(screen, offset, battle->Width(), height); - - Vector textPosition( - (battle->Width() - (std::strlen(battle->Res().escapeText) * battle->Res().titleFont->CharWidth())) / 2, - battle->Res().titleFrame->BorderHeight()); - battle->Res().titleFont->DrawString(battle->Res().escapeText, screen, textPosition + offset); +void RunState::RenderTitleBar(SDL_Surface *screen) { +const Resources &res = battle->Res(); + res.titleFrame->Draw(screen, framePosition, frameSize.X(), frameSize.Y()); + res.titleFont->DrawString(res.escapeText, screen, textPosition); } }