diff options
Diffstat (limited to 'crawl-ref/source/fight.cc')
-rw-r--r-- | crawl-ref/source/fight.cc | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index 202bb9146c..e32961c628 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -2818,7 +2818,20 @@ std::string melee_attack::mons_attack_verb(const mon_attack_def &attk) std::string melee_attack::mons_weapon_desc() { if (weapon && attacker->id() != MONS_DANCING_WEAPON) - return std::string(" with ") + weapon->name(DESC_NOCAP_A); + { + std::string result = ""; + const item_def wpn = *weapon; + if (get_weapon_brand(wpn) == SPWPN_REACHING) + { + int dx = abs(attacker->pos().x - defender->pos().x); + int dy = abs(attacker->pos().y - defender->pos().y); + if ((dx == 2 && dy <= 2) || (dy == 2 && dx <= 2)) + result += " from afar"; + } + result += " with "; + result += weapon->name(DESC_NOCAP_A); + return result; + } return (""); } |