]> git.localhorst.tv Git - l2e.git/blobdiff - src/menu/StatusMenu.cpp
added ikari level to status menu
[l2e.git] / src / menu / StatusMenu.cpp
index f155c160b1fb71ab85d5a16a2be42956a7398b41..b0377033b50f1920258332595586325382a368c3 100644 (file)
@@ -88,6 +88,12 @@ void StatusMenu::Render(SDL_Surface *screen) {
        Vector<int> experienceOffset(
                        11 * parent->Res().statusFont->CharWidth(),
                        17 * parent->Res().statusFont->CharHeight() - parent->Res().statusFont->CharHeight() / 8);
+       Vector<int> nextLevelOffset(
+                       11 * parent->Res().statusFont->CharWidth(),
+                       19 * parent->Res().statusFont->CharHeight() - parent->Res().statusFont->CharHeight() / 8);
+       Vector<int> ikariOffset(
+                       17 * parent->Res().statusFont->CharWidth(),
+                       17 * parent->Res().statusFont->CharHeight() - parent->Res().statusFont->CharHeight() / 8);
 
        parent->RenderBackground(screen);
        parent->Res().shoulderNav->Draw(screen, offset + shoulderNavOffset);
@@ -95,6 +101,8 @@ void StatusMenu::Render(SDL_Surface *screen) {
        RenderStats(screen, offset + statsOffset);
        RenderEquipment(screen, offset + equipOffset);
        RenderExperience(screen, experienceOffset);
+       RenderNextLevel(screen, nextLevelOffset);
+       RenderIkari(screen, ikariOffset);
 }
 
 int StatusMenu::Width() const {
@@ -187,6 +195,25 @@ void StatusMenu::RenderExperience(SDL_Surface *screen, const geometry::Vector<in
        font.DrawNumberRight(GetHero().Experience(), screen, numberOffset, 7);
 }
 
+void StatusMenu::RenderNextLevel(SDL_Surface *screen, const geometry::Vector<int> &offset) const {
+       const Font &font(*parent->Res().statusFont);
+       font.DrawStringRight(parent->Res().nextLevelLabel, screen, offset, 10);
+
+       Vector<int> numberOffset(offset.X(), offset.Y() + font.CharHeight());
+       font.DrawNumberRight(GetHero().NextLevel(), screen, numberOffset, 7);
+}
+
+void StatusMenu::RenderIkari(SDL_Surface *screen, const geometry::Vector<int> &offset) const {
+       const Font &font(*parent->Res().statusFont);
+       font.DrawString(parent->Res().ipLabel, screen, offset, 5);
+
+       Vector<int> numberOffset(offset.X() + 5 * font.CharWidth(), offset.Y());
+       font.DrawNumber(GetHero().RelativeIP(100), screen, numberOffset, 3);
+
+       Vector<int> percentOffset(offset.X() + 8 * font.CharWidth(), offset.Y());
+       font.DrawChar('%', screen, percentOffset);
+}
+
 
 void StatusMenu::NextHero() {
        cursor = (cursor + 1) % parent->Game().state->partySize;