From ffa576ef95433aed5e6ba82e593a52750827d9b7 Mon Sep 17 00:00:00 2001 From: Bertram Date: Fri, 24 Jul 2009 23:37:39 +0200 Subject: Fixed tmw start not crash at startup. The update of ministatus window was broken because the implementation makes StatusWindow tries to access private members of ministatus... --- src/gui/statuswindow.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/gui/statuswindow.cpp b/src/gui/statuswindow.cpp index 5d4ad8c4..bd1d4d85 100644 --- a/src/gui/statuswindow.cpp +++ b/src/gui/statuswindow.cpp @@ -183,24 +183,18 @@ std::string StatusWindow::update(int id) { updateHPBar(mHpBar, true); - miniStatusWindow->update(HP); - return _("HP"); } else if (id == MP) { updateMPBar(mMpBar, true); - miniStatusWindow->update(MP); - return _("MP"); } else if (id == EXP) { updateXPBar(mXpBar, false); - miniStatusWindow->update(EXP); - return _("Exp"); } else if (id == MONEY) @@ -293,6 +287,7 @@ void StatusWindow::addAttribute(int id, const std::string &name, void StatusWindow::updateHPBar(ProgressBar *bar, bool showMax) { + if (showMax) bar->setText(toString(player_node->getHp()) + "/" + toString(player_node->getMaxHp())); @@ -313,6 +308,7 @@ void StatusWindow::updateHPBar(ProgressBar *bar, bool showMax) int curHP = player_node->getHp(); int thresholdLevel = player_node->getMaxHp() / 4; int thresholdProgress = curHP % thresholdLevel; + if (thresholdLevel) weight = 1 - ((float)thresholdProgress) / ((float)thresholdLevel); else @@ -368,6 +364,7 @@ void StatusWindow::updateHPBar(ProgressBar *bar, bool showMax) bar->setColor(r1, g1, b1); bar->setProgress((float) player_node->getHp() / (float) player_node->getMaxHp()); + } void StatusWindow::updateMPBar(ProgressBar *bar, bool showMax) -- cgit v1.2.3-70-g09d2