summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/describe.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/describe.cc')
-rw-r--r--crawl-ref/source/describe.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/crawl-ref/source/describe.cc b/crawl-ref/source/describe.cc
index 47c8d42f66..b4ef97cf18 100644
--- a/crawl-ref/source/describe.cc
+++ b/crawl-ref/source/describe.cc
@@ -2732,6 +2732,23 @@ static std::string _monster_stat_description(const monsters& mon)
// Magic resistance at MAG_IMMUNE.
if (mons_immune_magic(&mon))
result << pronoun << " is immune to magical enchantments.$";
+ else // How resistant is it? Same scale as the player.
+ {
+ const int mr = mon.res_magic();
+ if (mr >= 10)
+ {
+ result << pronoun << make_stringf(" is %s resistant to magic.$",
+ (mr < 30) ? "slightly" :
+ (mr < 60) ? "somewhat" :
+ (mr < 90) ? "quite" :
+ (mr < 120) ? "very" :
+ (mr < 150) ? "extremely" :
+ (mr < 190) ? "extraordinarily" :
+ (mr < 240) ? "incredibly" :
+ (mr < 300) ? "uncannily"
+ : "almost entirely");
+ }
+ }
if (mons_class_flag(mon.type, M_STATIONARY))
result << pronoun << " cannot move.$";