summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/directn.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/directn.cc')
-rw-r--r--crawl-ref/source/directn.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/crawl-ref/source/directn.cc b/crawl-ref/source/directn.cc
index 1c14c2e8f6..eef4efefa4 100644
--- a/crawl-ref/source/directn.cc
+++ b/crawl-ref/source/directn.cc
@@ -2169,13 +2169,20 @@ static void describe_monster(const monsters *mon)
}
}
+// This method is called in two cases:
+// a) Monsters coming into view: "An ogre comes into view. It is wielding ..."
+// b) Monster description via 'x': "An ogre, wielding a club and wearing ..."
std::string get_monster_desc(const monsters *mon, bool full_desc,
description_level_type mondtype)
{
std::string desc = "";
if (mondtype != DESC_NONE)
+ {
desc = mon->name(mondtype);
-
+ // For named monsters also mention the base type.
+ if (!(mon->mname).empty())
+ desc += ", " + mons_type_name(mon->type, DESC_NOCAP_A);
+ }
std::string weap = "";
if (mon->type != MONS_DANCING_WEAPON)
@@ -2188,6 +2195,7 @@ std::string get_monster_desc(const monsters *mon, bool full_desc,
desc += weap;
}
+ // Print the rest of the equipment only for full descriptions.
if (full_desc)
{
const int mon_arm = mon->inv[MSLOT_ARMOUR];