summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/tilesdl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/tilesdl.cc')
-rw-r--r--crawl-ref/source/tilesdl.cc24
1 files changed, 23 insertions, 1 deletions
diff --git a/crawl-ref/source/tilesdl.cc b/crawl-ref/source/tilesdl.cc
index 45bd2d161d..c25fcdd92a 100644
--- a/crawl-ref/source/tilesdl.cc
+++ b/crawl-ref/source/tilesdl.cc
@@ -7,6 +7,7 @@
#include "coord.h"
#include "directn.h"
#include "env.h"
+#include "food.h"
#include "itemname.h"
#include "itemprop.h"
#include "files.h"
@@ -1436,6 +1437,23 @@ int tile_known_weapon_brand(const item_def item)
return 0;
}
+int tile_corpse_brand(const item_def item)
+{
+ if (is_poisonous(item))
+ return TILE_FOOD_POISONED;
+
+ if (is_mutagenic(item))
+ return TILE_FOOD_MUTAGENIC;
+
+ if (causes_rot(item))
+ return TILE_FOOD_ROTTING;
+
+ if (is_forbidden_food(item))
+ return TILE_FOOD_FORBIDDEN;
+
+ return 0;
+}
+
static void _fill_item_info(InventoryTile &desc, const item_def &item)
{
desc.tile = tileidx_item(item);
@@ -1458,7 +1476,11 @@ static void _fill_item_info(InventoryTile &desc, const item_def &item)
else
desc.quantity = -1;
- desc.special = tile_known_weapon_brand(item);
+ if (type == OBJ_WEAPONS || type == OBJ_MISSILES)
+ desc.special = tile_known_weapon_brand(item);
+ else if (type == OBJ_CORPSES)
+ desc.special = tile_corpse_brand(item);
+
desc.flag = 0;
if (item.cursed() && item_ident(item, ISFLAG_KNOW_CURSE))
desc.flag |= TILEI_FLAG_CURSE;