summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
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 /crawl-ref/source
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.
Diffstat (limited to 'crawl-ref/source')
-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;
}
}