diff options
author | Neil Moore <neil@s-z.org> | 2014-07-21 00:27:08 -0400 |
---|---|---|
committer | Neil Moore <neil@s-z.org> | 2014-07-21 00:27:41 -0400 |
commit | 51fb82f12fa0de5ab6d2b355200af8dd779e4a8c (patch) | |
tree | cfe893baa16bac8fee16038464b11d5de4f39502 /crawl-ref/source/tilepick.cc | |
parent | 60945e0518a1a6adaf38d40a858db24643e67323 (diff) | |
download | crawl-ref-51fb82f12fa0de5ab6d2b355200af8dd779e4a8c.tar.gz crawl-ref-51fb82f12fa0de5ab6d2b355200af8dd779e4a8c.zip |
Fix tile_show_player_species for draconians (#8812)
Diffstat (limited to 'crawl-ref/source/tilepick.cc')
-rw-r--r-- | crawl-ref/source/tilepick.cc | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc index 72fc8ce796..6a5527c2f4 100644 --- a/crawl-ref/source/tilepick.cc +++ b/crawl-ref/source/tilepick.cc @@ -2997,27 +2997,27 @@ tileidx_t tileidx_monster(const monster_info& mons) return ch; } -tileidx_t tileidx_draco_base(const monster_info& mon) +static tileidx_t tileidx_draco_base(monster_type draco) { - int draco = mon.draco_or_demonspawn_subspecies(); - int colour = 0; - switch (draco) { default: - case MONS_DRACONIAN: colour = 0; break; - case MONS_BLACK_DRACONIAN: colour = 1; break; - case MONS_YELLOW_DRACONIAN: colour = 2; break; - case MONS_GREEN_DRACONIAN: colour = 3; break; - case MONS_GREY_DRACONIAN: colour = 4; break; - case MONS_MOTTLED_DRACONIAN:colour = 5; break; - case MONS_PALE_DRACONIAN: colour = 6; break; - case MONS_PURPLE_DRACONIAN: colour = 7; break; - case MONS_RED_DRACONIAN: colour = 8; break; - case MONS_WHITE_DRACONIAN: colour = 9; break; + case MONS_DRACONIAN: return TILEP_DRACO_BASE; + case MONS_BLACK_DRACONIAN: return TILEP_DRACO_BASE + 1; + case MONS_YELLOW_DRACONIAN: return TILEP_DRACO_BASE + 2; + case MONS_GREEN_DRACONIAN: return TILEP_DRACO_BASE + 3; + case MONS_GREY_DRACONIAN: return TILEP_DRACO_BASE + 4; + case MONS_MOTTLED_DRACONIAN:return TILEP_DRACO_BASE + 5; + case MONS_PALE_DRACONIAN: return TILEP_DRACO_BASE + 6; + case MONS_PURPLE_DRACONIAN: return TILEP_DRACO_BASE + 7; + case MONS_RED_DRACONIAN: return TILEP_DRACO_BASE + 8; + case MONS_WHITE_DRACONIAN: return TILEP_DRACO_BASE + 9; } +} - return TILEP_DRACO_BASE + colour; +tileidx_t tileidx_draco_base(const monster_info& mon) +{ + return tileidx_draco_base(mon.draco_or_demonspawn_subspecies()); } tileidx_t tileidx_draco_job(const monster_info& mon) @@ -3066,6 +3066,9 @@ tileidx_t tileidx_demonspawn_job(const monster_info& mon) tileidx_t tileidx_player_mons() { + const monster_type mons = player_mons(false); + if (mons_is_base_draconian(mons)) + return tileidx_draco_base(mons); return _tileidx_monster_base(player_mons(false)); } |