From b681a24f5efdafaa86898a20d6df2ad936ce5a4e Mon Sep 17 00:00:00 2001 From: zelgadis Date: Mon, 5 Jan 2009 03:10:08 +0000 Subject: Oops, I'd made cycle_random cycle through uniques instead of through place-appropraite monsters. Tags like "no_immobile" now apply to random_uniques git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8227 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/arena.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crawl-ref/source/arena.cc b/crawl-ref/source/arena.cc index 6e02607b13..3866f2a783 100644 --- a/crawl-ref/source/arena.cc +++ b/crawl-ref/source/arena.cc @@ -574,6 +574,9 @@ namespace arena void global_setup() { + // Set various options from the arena spec's tags + parse_monster_spec(); + if (file != NULL) end(0, false, "Results file already open"); file = fopen("arena.result", "w"); @@ -599,8 +602,11 @@ namespace arena if (i == MONS_ROYAL_JELLY) continue; - if (mons_is_unique(i)) + if (mons_is_unique(i) + && !arena_veto_random_monster( (monster_type) i)) + { uniques_list.push_back(i); + } } } @@ -691,7 +697,7 @@ monster_type arena_pick_random_monster(const level_id &place, int power, const monster_type type = (monster_type) arena::cycle_random_pos; - if (!mons_is_unique(type)) + if (mons_rarity(type, place) == 0) continue; if (arena_veto_random_monster(type)) -- cgit v1.2.3-54-g00ecf