summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mapdef.cc
diff options
context:
space:
mode:
authorMatthew Cline <zelgadis@sourceforge.net>2009-11-12 22:32:31 -0800
committerMatthew Cline <zelgadis@sourceforge.net>2009-11-12 22:32:31 -0800
commitc1676b3f938f1b3106df4370a3002f92c4279636 (patch)
tree2374e520f5b77ffd7f559de929fd2e0121c64217 /crawl-ref/source/mapdef.cc
parent91a0670e7038461929a8035c2aecb0df8d830291 (diff)
downloadcrawl-ref-c1676b3f938f1b3106df4370a3002f92c4279636.tar.gz
crawl-ref-c1676b3f938f1b3106df4370a3002f92c4279636.zip
mon_spec: "col:any" to get random colours
Diffstat (limited to 'crawl-ref/source/mapdef.cc')
-rw-r--r--crawl-ref/source/mapdef.cc16
1 files changed, 11 insertions, 5 deletions
diff --git a/crawl-ref/source/mapdef.cc b/crawl-ref/source/mapdef.cc
index ebafae76e2..c295cc5394 100644
--- a/crawl-ref/source/mapdef.cc
+++ b/crawl-ref/source/mapdef.cc
@@ -2576,12 +2576,18 @@ mons_list::mons_spec_slot mons_list::parse_mons_spec(std::string spec)
std::string colour = strip_tag_prefix(mon_str, "col:");
if (!colour.empty())
{
- mspec.colour = str_to_colour(colour, BLACK);
- if (mspec.colour == BLACK)
+ if (colour == "any")
+ // XXX: Hack
+ mspec.colour = BLACK;
+ else
{
- error = make_stringf("bad monster colour \"%s\" in \"%s\"",
- colour.c_str(), specs[i].c_str());
- return (slot);
+ mspec.colour = str_to_colour(colour, BLACK);
+ if (mspec.colour == BLACK)
+ {
+ error = make_stringf("bad monster colour \"%s\" in \"%s\"",
+ colour.c_str(), specs[i].c_str());
+ return (slot);
+ }
}
}