summaryrefslogtreecommitdiff
path: root/src/gui/popups/popupmenu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/popups/popupmenu.cpp')
-rw-r--r--src/gui/popups/popupmenu.cpp24
1 files changed, 22 insertions, 2 deletions
diff --git a/src/gui/popups/popupmenu.cpp b/src/gui/popups/popupmenu.cpp
index 2405743c5..811efc881 100644
--- a/src/gui/popups/popupmenu.cpp
+++ b/src/gui/popups/popupmenu.cpp
@@ -160,7 +160,12 @@ void PopupMenu::showPopup(const int x, const int y, const Being *const being)
mY = y;
const std::string &name = mName;
- mBrowserBox->addRow(name + being->getGenderSignWithSpace());
+#ifdef EATHENA_SUPPORT
+ if (being->getType() != ActorType::SkillUnit)
+#endif
+ {
+ mBrowserBox->addRow(name + being->getGenderSignWithSpace());
+ }
switch (being->getType())
{
@@ -409,8 +414,23 @@ void PopupMenu::showPopup(const int x, const int y, const Being *const being)
}
break;
case ActorType::SkillUnit:
- // +++ need impliment menu
+ {
+ const BeingId id = being->getCreatorId();
+ std::string creatorName;
+ Being *const creator = actorManager->findBeing(id);
+ if (creator)
+ creatorName = creator->getName();
+ else
+ creatorName = actorManager->getSeenPlayerById(id);
+
+ if (creatorName.empty())
+ creatorName = strprintf("?%d", CAST_S32(id));
+
+ mBrowserBox->addRow(strprintf("%s (%s)",
+ name.c_str(),
+ creatorName.c_str()));
break;
+ }
#endif
case ActorType::Avatar:
case ActorType::Unknown: