diff options
author | Charles Otto <ottochar@gmail.com> | 2009-11-13 01:50:58 -0500 |
---|---|---|
committer | Charles Otto <ottochar@gmail.com> | 2009-11-13 01:50:58 -0500 |
commit | 63beb01e92ddefa8708b80316fcf27081afe3a06 (patch) | |
tree | 59d6007b78f033176414a25029f205a3c1906263 /crawl-ref/source | |
parent | e55cf763ffe7a240f57663731d820b8bff78219b (diff) | |
parent | c1676b3f938f1b3106df4370a3002f92c4279636 (diff) | |
download | crawl-ref-63beb01e92ddefa8708b80316fcf27081afe3a06.tar.gz crawl-ref-63beb01e92ddefa8708b80316fcf27081afe3a06.zip |
Merge branch 'master' of ssh://crawl-ref.git.sourceforge.net/gitroot/crawl-ref/crawl-ref into spore_merge2
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/dungeon.cc | 7 | ||||
-rw-r--r-- | crawl-ref/source/mapdef.cc | 16 | ||||
-rw-r--r-- | crawl-ref/source/mon-spll.h | 2 |
3 files changed, 18 insertions, 7 deletions
diff --git a/crawl-ref/source/dungeon.cc b/crawl-ref/source/dungeon.cc index 401c53ab1d..381eb18982 100644 --- a/crawl-ref/source/dungeon.cc +++ b/crawl-ref/source/dungeon.cc @@ -19,6 +19,7 @@ #include "branch.h" #include "chardump.h" #include "cloud.h" +#include "colour.h" #include "defines.h" #include "effects.h" #include "enum.h" @@ -1702,7 +1703,7 @@ static void _build_overflow_temples(int level_number) // For a single-altar temple, first try to find a temple specialized // for that god. - if (num_gods == 1) + if (num_gods == 1 && coinflip()) { CrawlVector &god_vec = temple[TEMPLE_GODS_KEY]; god_type god = (god_type) god_vec[0].get_byte(); @@ -4852,6 +4853,10 @@ int dgn_place_monster(mons_spec &mspec, mg.colour = mspec.colour; mg.mname = mspec.monname; + // XXX: hack. + if (mg.colour == BLACK) + mg.colour = random_colour(); + coord_def place(where); if (!force_pos && monster_at(place) && (mg.cls < NUM_MONSTERS || mg.cls == RANDOM_MONSTER)) 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); + } } } diff --git a/crawl-ref/source/mon-spll.h b/crawl-ref/source/mon-spll.h index 9989ddcd21..8cd482057d 100644 --- a/crawl-ref/source/mon-spll.h +++ b/crawl-ref/source/mon-spll.h @@ -1025,7 +1025,7 @@ SPELL_NO_SPELL, SPELL_HASTE, SPELL_NO_SPELL, - SPELL_NO_SPELL, + SPELL_SYMBOL_OF_TORMENT, SPELL_NO_SPELL } }, |