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.cc21
1 files changed, 19 insertions, 2 deletions
diff --git a/crawl-ref/source/describe.cc b/crawl-ref/source/describe.cc
index 4904d24b66..3b6d4969d8 100644
--- a/crawl-ref/source/describe.cc
+++ b/crawl-ref/source/describe.cc
@@ -1636,6 +1636,10 @@ std::string get_item_description( const item_def &item, bool verbose,
description << "$";
break;
+ case OBJ_CORPSES:
+ if (item.sub_type == CORPSE_SKELETON)
+ break;
+ // intentional fall-through
case OBJ_FOOD:
if (item.sub_type == FOOD_CHUNK)
{
@@ -1685,6 +1689,13 @@ std::string get_item_description( const item_def &item, bool verbose,
default:
break;
}
+ if (is_good_god(you.religion) && is_player_same_species(item.plus)
+ || you.religion == GOD_ZIN
+ && mons_intel(item.plus) >= I_NORMAL)
+ {
+ description << "$$" << god_name(you.religion) << " disapproves "
+ "of eating such meat.";
+ }
description << "$";
}
@@ -1747,7 +1758,6 @@ std::string get_item_description( const item_def &item, bool verbose,
case OBJ_SCROLLS:
case OBJ_ORBS:
- case OBJ_CORPSES:
case OBJ_GOLD:
// No extra processing needed for these item types.
break;
@@ -1788,6 +1798,13 @@ std::string get_item_description( const item_def &item, bool verbose,
}
}
+ if (is_good_god(you.religion) && is_evil_item(item)
+ && item_type_known(item))
+ {
+ description << "$$" << god_name(you.religion) << " disapproves of the "
+ << "use of such an item.";
+ }
+
return description.str();
} // end get_item_description()
@@ -1823,7 +1840,7 @@ void describe_feature_wide(int x, int y)
getch();
}
-// Return true if spells can be shown to player
+// Returns true if spells can be shown to player.
static bool show_item_description(const item_def &item)
{
clrscr();