summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mutation.cc
diff options
context:
space:
mode:
authorJohanna Ploog <j-p-e-g@users.sourceforge.net>2009-12-14 17:13:08 +0100
committerJohanna Ploog <j-p-e-g@users.sourceforge.net>2009-12-14 17:13:08 +0100
commite26588af61d060df4b61fde1bb0c53ea7f142c6a (patch)
treec74c784f260e407423cc1af250f0a7804d18b186 /crawl-ref/source/mutation.cc
parent4f1494ceb034f1b47bc98620277415f19d0ef80e (diff)
downloadcrawl-ref-e26588af61d060df4b61fde1bb0c53ea7f142c6a.tar.gz
crawl-ref-e26588af61d060df4b61fde1bb0c53ea7f142c6a.zip
Colour completely inactive mutations (for Vampires) darkgrey.
Also, partially inactive mutations are bracketed.
Diffstat (limited to 'crawl-ref/source/mutation.cc')
-rw-r--r--crawl-ref/source/mutation.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/crawl-ref/source/mutation.cc b/crawl-ref/source/mutation.cc
index a8de02db3f..4c01425f4d 100644
--- a/crawl-ref/source/mutation.cc
+++ b/crawl-ref/source/mutation.cc
@@ -2624,7 +2624,7 @@ std::string mutation_name(mutation_type mut, int level, bool colour)
{
const bool fully_active = mutation_is_fully_active(mut);
const bool fully_inactive =
- (!fully_active) && _mutation_is_fully_inactive(mut);
+ (!fully_active && _mutation_is_fully_inactive(mut));
// level == -1 means default action of current level
if (level == -1)
@@ -2677,7 +2677,7 @@ std::string mutation_name(mutation_type mut, int level, bool colour)
else if (result.empty() && level > 0)
result = mdef.have[level - 1];
- if (fully_inactive)
+ if (fully_inactive || player_mutation_level(mut) < you.mutation[mut])
{
result = "(" + result;
result += ")";
@@ -2686,7 +2686,7 @@ std::string mutation_name(mutation_type mut, int level, bool colour)
if (colour)
{
const char* colourname = "lightgrey"; // the default
- const bool permanent = (you.demon_pow[mut] > 0);
+ const bool permanent = (you.demon_pow[mut] > 0);
if (innate)
colourname = (level > 0 ? "cyan" : "lightblue");
else if (permanent)
@@ -2703,6 +2703,8 @@ std::string mutation_name(mutation_type mut, int level, bool colour)
else
colourname = demonspawn ? "red" : "lightblue";
}
+ else if (fully_inactive)
+ colourname = "darkgrey";
// Build the result
std::ostringstream ostr;