diff options
author | David Lawrence Ramsey <dolorous@users.sourceforge.net> | 2009-11-09 23:30:47 -0600 |
---|---|---|
committer | David Lawrence Ramsey <dolorous@users.sourceforge.net> | 2009-11-09 23:30:47 -0600 |
commit | f72939d2821579a1c8da6202efe6cb6cc351fee4 (patch) | |
tree | a48bf3ffd5971df09f656f29c202bd36abaf703d /crawl-ref/source/mon-behv.cc | |
parent | 43e85458c7c6205645f844153f2569cb200ee206 (diff) | |
download | crawl-ref-f72939d2821579a1c8da6202efe6cb6cc351fee4.tar.gz crawl-ref-f72939d2821579a1c8da6202efe6cb6cc351fee4.zip |
Fix a genus check for blink frogs, and species checks for giant spores.
Diffstat (limited to 'crawl-ref/source/mon-behv.cc')
-rw-r--r-- | crawl-ref/source/mon-behv.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/crawl-ref/source/mon-behv.cc b/crawl-ref/source/mon-behv.cc index a15ea7e2e9..7e5188a40f 100644 --- a/crawl-ref/source/mon-behv.cc +++ b/crawl-ref/source/mon-behv.cc @@ -1192,13 +1192,13 @@ void handle_behaviour(monsters *mon) && you.pet_target != MHITNOT && (mon->foe == MHITNOT || mon->foe == MHITYOU) && !mon->berserk() - && mon->mons_species() != MONS_GIANT_SPORE) + && mon->type != MONS_GIANT_SPORE) { mon->foe = you.pet_target; } // Instead, berserkers attack nearest monsters. - if ((mon->berserk() || mon->mons_species() == MONS_GIANT_SPORE) + if ((mon->berserk() || mon->type == MONS_GIANT_SPORE) && (mon->foe == MHITNOT || isFriendly && mon->foe == MHITYOU)) { // Intelligent monsters prefer to attack the player, @@ -1280,12 +1280,14 @@ void handle_behaviour(monsters *mon) case BEH_LURK: case BEH_SEEK: - // No foe? Then wander or seek the player. + // No foe? Then wander or seek the player. if (mon->foe == MHITNOT) { if (crawl_state.arena || !proxPlayer || isNeutral || patrolling || mon->type == MONS_GIANT_SPORE) + { new_beh = BEH_WANDER; + } else { new_foe = MHITYOU; @@ -1762,7 +1764,7 @@ void behaviour_event(monsters *mon, mon_event_type event, int src, break; } - // Avoid moving friendly giant spores out of BEH_WANDER + // Avoid moving friendly giant spores out of BEH_WANDER. if (mon->friendly() && mon->type == MONS_GIANT_SPORE) break; |