summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohanna Ploog <j-p-e-g@users.sourceforge.net>2009-12-07 18:09:28 +0100
committerJohanna Ploog <j-p-e-g@users.sourceforge.net>2009-12-07 18:09:28 +0100
commit87da8db7d1e1a45d9aadaf6b4bc6f07ae5c822e0 (patch)
treed0d7cc82b410d28314d0aa1b0fe38b2d6305d4f0
parente0d592b0a5e032d7d35551907c4af69014e48b10 (diff)
downloadcrawl-ref-87da8db7d1e1a45d9aadaf6b4bc6f07ae5c822e0.tar.gz
crawl-ref-87da8db7d1e1a45d9aadaf6b4bc6f07ae5c822e0.zip
Add purge's tile for berserk monsters. Very neat, thanks!
-rw-r--r--crawl-ref/source/rltiles/dc-misc.txt1
-rw-r--r--crawl-ref/source/rltiles/dc-misc/berserk.pngbin0 -> 3153 bytes
-rw-r--r--crawl-ref/source/tilepick.cc4
-rw-r--r--crawl-ref/source/tilereg.cc8
-rw-r--r--crawl-ref/source/tiles.h1
5 files changed, 12 insertions, 2 deletions
diff --git a/crawl-ref/source/rltiles/dc-misc.txt b/crawl-ref/source/rltiles/dc-misc.txt
index bca4a92897..082d35c8a0 100644
--- a/crawl-ref/source/rltiles/dc-misc.txt
+++ b/crawl-ref/source/rltiles/dc-misc.txt
@@ -56,6 +56,7 @@ neutral NEUTRAL
animated_weapon ANIMATED_WEAPON
poison POISON
flame FLAME
+berserk BERSERK
%rim 0
may_stab_brand MAY_STAB_BRAND
stab_brand STAB_BRAND
diff --git a/crawl-ref/source/rltiles/dc-misc/berserk.png b/crawl-ref/source/rltiles/dc-misc/berserk.png
new file mode 100644
index 0000000000..75719701e6
--- /dev/null
+++ b/crawl-ref/source/rltiles/dc-misc/berserk.png
Binary files differ
diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc
index 1997072b81..5645237bde 100644
--- a/crawl-ref/source/tilepick.cc
+++ b/crawl-ref/source/tilepick.cc
@@ -1058,6 +1058,8 @@ int tileidx_monster(const monsters *mons, bool detected)
ch |= TILE_FLAG_POISON;
if (mons->has_ench(ENCH_STICKY_FLAME))
ch |= TILE_FLAG_FLAME;
+ if (mons->berserk())
+ ch |= TILE_FLAG_BERSERK;
if (mons->friendly())
ch |= TILE_FLAG_PET;
@@ -2914,7 +2916,7 @@ int tileidx_spell(spell_type spell)
case SPELL_DEATHS_DOOR: return TILEG_DEATHS_DOOR;
case SPELL_DEATH_CHANNEL: return TILEG_DEATH_CHANNEL;
case SPELL_REAPING_AMMUNITION: return TILEG_TODO;
-
+
// Transmutation
case SPELL_STICKS_TO_SNAKES: return TILEG_STICKS_TO_SNAKES;
case SPELL_SPIDER_FORM: return TILEG_SPIDER_FORM;
diff --git a/crawl-ref/source/tilereg.cc b/crawl-ref/source/tilereg.cc
index a24675c708..c908bc2d06 100644
--- a/crawl-ref/source/tilereg.cc
+++ b/crawl-ref/source/tilereg.cc
@@ -832,8 +832,14 @@ void DungeonRegion::pack_foreground(unsigned int bg, unsigned int fg, int x, int
if (fg & TILE_FLAG_S_UNDER)
m_buf_main.add(TILE_SOMETHING_UNDER, x, y);
- // Pet mark
int status_shift = 0;
+ if (fg & TILE_FLAG_BERSERK)
+ {
+ m_buf_main.add(TILE_BERSERK, x, y);
+ status_shift += 10;
+ }
+
+ // Pet mark
if (fg & TILE_FLAG_PET)
{
m_buf_main.add(TILE_HEART, x, y);
diff --git a/crawl-ref/source/tiles.h b/crawl-ref/source/tiles.h
index b378e54184..20f5a5f8a3 100644
--- a/crawl-ref/source/tiles.h
+++ b/crawl-ref/source/tiles.h
@@ -142,6 +142,7 @@ enum tile_flags
TILE_FLAG_POISON = 0x00020000,
TILE_FLAG_FLAME = 0x00040000,
TILE_FLAG_ANIM_WEP = 0x00080000,
+ TILE_FLAG_BERSERK = 0x00100000,
// MDAM has 5 possibilities, so uses 3 bits.
TILE_FLAG_MDAM_MASK = 0x03800000,