diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-02-16 02:43:31 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-02-16 02:43:31 +0300 |
commit | cbf5a66ac0d5cbcd2f0058b9e326ef9b6d56f23b (patch) | |
tree | 5acc50addb37120aa7719e52a2fa0d451118fb74 | |
parent | 572c2e0048400388c71b962b74b9a443a0b076a0 (diff) | |
download | mv-cbf5a66ac0d5cbcd2f0058b9e326ef9b6d56f23b.tar.gz mv-cbf5a66ac0d5cbcd2f0058b9e326ef9b6d56f23b.tar.bz2 mv-cbf5a66ac0d5cbcd2f0058b9e326ef9b6d56f23b.tar.xz mv-cbf5a66ac0d5cbcd2f0058b9e326ef9b6d56f23b.zip |
Add race name to status and debug windows.
-rw-r--r-- | src/being.cpp | 8 | ||||
-rw-r--r-- | src/being.h | 7 | ||||
-rw-r--r-- | src/gui/debugwindow.cpp | 25 | ||||
-rw-r--r-- | src/gui/debugwindow.h | 1 | ||||
-rw-r--r-- | src/gui/statuswindow.cpp | 8 |
5 files changed, 38 insertions, 11 deletions
diff --git a/src/being.cpp b/src/being.cpp index 47a74c7b2..e1cb9b0ae 100644 --- a/src/being.cpp +++ b/src/being.cpp @@ -338,7 +338,15 @@ void Being::setSubtype(Uint16 subtype) // Prevent showing errors when sprite doesn't exist if (!ItemDB::exists(id)) + { id = -100; + setRaceName(_("Human")); + } + else + { + const ItemInfo &info = ItemDB::get(id); + setRaceName(info.getName()); + } setSprite(Net::getCharHandler()->baseSprite(), id); } diff --git a/src/being.h b/src/being.h index 0b9257e83..859ebf26c 100644 --- a/src/being.h +++ b/src/being.h @@ -769,6 +769,12 @@ class Being : public ActorSprite, public ConfigListener void updatePercentHP(); + void setRaceName(std::string name) + { mRaceName = name; } + + std::string getRaceName() + { return mRaceName; } + protected: /** * Sets the new path for this being. @@ -804,6 +810,7 @@ class Being : public ActorSprite, public ConfigListener Uint8 mSpriteDirection; /**< Facing direction */ std::string mName; /**< Name of character */ + std::string mRaceName; std::string mPartyName; std::string mGuildName; diff --git a/src/gui/debugwindow.cpp b/src/gui/debugwindow.cpp index 19db5540a..b65068dc5 100644 --- a/src/gui/debugwindow.cpp +++ b/src/gui/debugwindow.cpp @@ -62,7 +62,7 @@ DebugWindow::DebugWindow(): setSaveVisible(true); setStickyButtonLock(true); - setDefaultSize(400, 150, ImageRect::CENTER); + setDefaultSize(400, 300, ImageRect::CENTER); mTabs = new TabbedArea; mMapWidget = new MapDebugTab; @@ -269,9 +269,10 @@ TargetDebugTab::TargetDebugTab() mTargetLabel = new Label(strprintf("%s ?", _("Target:"))); mTargetIdLabel = new Label(strprintf("%s ? ", _("Target Id:"))); - mTargetLevelLabel = new Label(strprintf("%s ?", _("Target Level:"))); - mTargetPartyLabel = new Label(strprintf("%s ?", _("Target Party:"))); - mTargetGuildLabel = new Label(strprintf("%s ?", _("Target Guild:"))); + mTargetLevelLabel = new Label(strprintf("%s ?", _("Target level:"))); + mTargetRaceLabel = new Label(strprintf("%s ?", _("Target race:"))); + mTargetPartyLabel = new Label(strprintf("%s ?", _("Target party:"))); + mTargetGuildLabel = new Label(strprintf("%s ?", _("Target guild:"))); mAttackDelayLabel = new Label(strprintf("%s ?", _("Attack delay:"))); mMinHitLabel = new Label(strprintf("%s ?", _("Minimal hit:"))); mMaxHitLabel = new Label(strprintf("%s ?", _("Maximum hit:"))); @@ -280,12 +281,13 @@ TargetDebugTab::TargetDebugTab() place(0, 0, mTargetLabel, 2); place(0, 1, mTargetIdLabel, 2); place(0, 2, mTargetLevelLabel, 2); - place(0, 3, mAttackDelayLabel, 2); - place(0, 4, mTargetPartyLabel, 2); - place(0, 5, mTargetGuildLabel, 2); - place(0, 6, mMinHitLabel, 2); - place(0, 7, mMaxHitLabel, 2); - place(0, 8, mCriticalHitLabel, 2); + place(0, 3, mTargetRaceLabel, 2); + place(0, 4, mAttackDelayLabel, 2); + place(0, 5, mTargetPartyLabel, 2); + place(0, 6, mTargetGuildLabel, 2); + place(0, 7, mMinHitLabel, 2); + place(0, 8, mMaxHitLabel, 2); + place(0, 9, mCriticalHitLabel, 2); place.getCell().matchColWidth(0, 0); place = h.getPlacer(0, 1); @@ -315,6 +317,9 @@ void TargetDebugTab::logic() _("Target Level:"))); } + mTargetRaceLabel->setCaption(strprintf("%s %s", + _("Target race:"), target->getRaceName().c_str())); + mTargetPartyLabel->setCaption(strprintf("%s %s", _("Target Party:"), target->getPartyName().c_str())); diff --git a/src/gui/debugwindow.h b/src/gui/debugwindow.h index ff86eaf74..8be6f1220 100644 --- a/src/gui/debugwindow.h +++ b/src/gui/debugwindow.h @@ -82,6 +82,7 @@ class TargetDebugTab : public DebugTab Label *mTargetLabel; Label *mTargetIdLabel; Label *mTargetLevelLabel; + Label *mTargetRaceLabel; Label *mTargetPartyLabel; Label *mTargetGuildLabel; Label *mAttackDelayLabel; diff --git a/src/gui/statuswindow.cpp b/src/gui/statuswindow.cpp index 25403e544..1964b974d 100644 --- a/src/gui/statuswindow.cpp +++ b/src/gui/statuswindow.cpp @@ -135,7 +135,13 @@ StatusWindow::StatusWindow(): setSaveVisible(true); setStickyButtonLock(true); setDefaultSize((windowContainer->getWidth() - 480) / 2, - (windowContainer->getHeight() - 500) / 2, 480, 500); + (windowContainer->getHeight() - 500) / 2, 480, 500); + + if (player_node && !player_node->getRaceName().empty()) + { + setCaption(strprintf("%s (%s)", player_node->getName().c_str(), + player_node->getRaceName().c_str())); + } // ---------------------- // Status Part |