summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-10-23 20:52:42 -0500
committerDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-10-23 20:52:42 -0500
commitf98ae79c4b2a6409cbc03e5fc48611603d37b2a0 (patch)
treefae6089c0f5718a978f680c80ded908ac189f792
parent88022edbd4c32e6b460d5ca81772bd6e85bfb0af (diff)
downloadcrawl-ref-f98ae79c4b2a6409cbc03e5fc48611603d37b2a0.tar.gz
crawl-ref-f98ae79c4b2a6409cbc03e5fc48611603d37b2a0.zip
When (very) ugly things mutate due to proximity with their kind, bias
their colors in favor of the ugly things around them, and even more so for the very ugly things around them.
-rw-r--r--crawl-ref/source/mstuff2.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/crawl-ref/source/mstuff2.cc b/crawl-ref/source/mstuff2.cc
index 8c43862487..5d6370799a 100644
--- a/crawl-ref/source/mstuff2.cc
+++ b/crawl-ref/source/mstuff2.cc
@@ -2533,15 +2533,20 @@ bool ugly_thing_mutate(monsters *ugly, bool proximity)
}
if (coinflip())
+ {
mon_mutate_chance++;
+ if (coinflip() && ugly->colour != ugly_near->colour)
+ mon_colour = ugly_near->colour;
+ }
+
if (ugly_near->type == MONS_VERY_UGLY_THING)
{
if (coinflip())
{
mon_mutate_chance++;
- if (ugly->colour != ugly_near->colour)
+ if (coinflip() && ugly->colour != ugly_near->colour)
mon_colour = ugly_near->colour;
}
}