From 6df1f8df4d0b9dcd691685db86354a17da861a61 Mon Sep 17 00:00:00 2001 From: Johanna Ploog Date: Wed, 6 Jan 2010 20:01:13 +0100 Subject: Distinguish icons of neutral and good neutral monsters. --- crawl-ref/source/rltiles/dc-misc.txt | 1 + crawl-ref/source/rltiles/dc-misc/good_neutral.png | Bin 0 -> 196 bytes crawl-ref/source/rltiles/dc-misc/neutral.png | Bin 146 -> 191 bytes crawl-ref/source/tilepick.cc | 2 ++ crawl-ref/source/tilereg.cc | 11 ++++++++--- crawl-ref/source/tiles.h | 17 +++++++++-------- 6 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 crawl-ref/source/rltiles/dc-misc/good_neutral.png (limited to 'crawl-ref/source') diff --git a/crawl-ref/source/rltiles/dc-misc.txt b/crawl-ref/source/rltiles/dc-misc.txt index 10bc4fc714..92329d2dd8 100644 --- a/crawl-ref/source/rltiles/dc-misc.txt +++ b/crawl-ref/source/rltiles/dc-misc.txt @@ -69,6 +69,7 @@ cursor_green CURSOR3 tutorial_cursor TUTORIAL_CURSOR %rim 1 heart HEART +good_neutral GOOD_NEUTRAL neutral NEUTRAL animated_weapon ANIMATED_WEAPON poison POISON diff --git a/crawl-ref/source/rltiles/dc-misc/good_neutral.png b/crawl-ref/source/rltiles/dc-misc/good_neutral.png new file mode 100644 index 0000000000..394569aa9a Binary files /dev/null and b/crawl-ref/source/rltiles/dc-misc/good_neutral.png differ diff --git a/crawl-ref/source/rltiles/dc-misc/neutral.png b/crawl-ref/source/rltiles/dc-misc/neutral.png index 63c5f4cd2a..db2da3173b 100644 Binary files a/crawl-ref/source/rltiles/dc-misc/neutral.png and b/crawl-ref/source/rltiles/dc-misc/neutral.png differ diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc index 6d276af1ed..0f7ed79bbd 100644 --- a/crawl-ref/source/tilepick.cc +++ b/crawl-ref/source/tilepick.cc @@ -1139,6 +1139,8 @@ int tileidx_monster(const monsters *mons, bool detected) if (mons->friendly()) ch |= TILE_FLAG_PET; + else if (mons->good_neutral()) + ch |= TILE_FLAG_GD_NEUTRAL; else if (mons->neutral()) ch |= TILE_FLAG_NEUTRAL; else if (mons_looks_stabbable(mons)) diff --git a/crawl-ref/source/tilereg.cc b/crawl-ref/source/tilereg.cc index dbac2f6d64..87d9e20508 100644 --- a/crawl-ref/source/tilereg.cc +++ b/crawl-ref/source/tilereg.cc @@ -918,17 +918,22 @@ void DungeonRegion::pack_foreground(unsigned int bg, unsigned int fg, int x, int m_buf_main.add(TILE_HEART, x, y); status_shift += 10; } - else if ((fg & TILE_FLAG_MAY_STAB) == TILE_FLAG_NEUTRAL) + else if (fg & TILE_FLAG_GD_NEUTRAL) + { + m_buf_main.add(TILE_GOOD_NEUTRAL, x, y); + status_shift += 8; + } + else if (fg & TILE_FLAG_NEUTRAL) { m_buf_main.add(TILE_NEUTRAL, x, y); status_shift += 8; } - else if ((fg & TILE_FLAG_MAY_STAB) == TILE_FLAG_STAB) + else if (fg & TILE_FLAG_STAB) { m_buf_main.add(TILE_STAB_BRAND, x, y); status_shift += 8; } - else if ((fg & TILE_FLAG_MAY_STAB) == TILE_FLAG_MAY_STAB) + else if (fg & TILE_FLAG_MAY_STAB) { m_buf_main.add(TILE_MAY_STAB_BRAND, x, y); status_shift += 5; diff --git a/crawl-ref/source/tiles.h b/crawl-ref/source/tiles.h index 2f1028b72d..ba41232e43 100644 --- a/crawl-ref/source/tiles.h +++ b/crawl-ref/source/tiles.h @@ -133,14 +133,15 @@ enum tile_flags TILE_FLAG_S_UNDER = 0x00000800, TILE_FLAG_FLYING = 0x00001000, TILE_FLAG_PET = 0x00002000, - TILE_FLAG_NEUTRAL = 0x00004000, - TILE_FLAG_STAB = 0x00008000, - TILE_FLAG_MAY_STAB = 0x0000C000, - TILE_FLAG_NET = 0x00010000, - TILE_FLAG_POISON = 0x00020000, - TILE_FLAG_FLAME = 0x00040000, - TILE_FLAG_ANIM_WEP = 0x00080000, - TILE_FLAG_BERSERK = 0x00100000, + TILE_FLAG_GD_NEUTRAL = 0x00004000, + TILE_FLAG_NEUTRAL = 0x00008000, + TILE_FLAG_STAB = 0x00010000, + TILE_FLAG_MAY_STAB = 0x00020000, + TILE_FLAG_NET = 0x00040000, + TILE_FLAG_POISON = 0x00080000, + TILE_FLAG_ANIM_WEP = 0x00100000, + TILE_FLAG_FLAME = 0x00200000, + TILE_FLAG_BERSERK = 0x00400000, // MDAM has 5 possibilities, so uses 3 bits. TILE_FLAG_MDAM_MASK = 0x03800000, -- cgit v1.2.3-54-g00ecf