diff options
author | Steve Melenchuk <smelenchuk@gmail.com> | 2014-05-23 14:27:56 -0600 |
---|---|---|
committer | Steve Melenchuk <smelenchuk@gmail.com> | 2014-05-23 14:27:56 -0600 |
commit | c8af7ebfa2ed8f3787ec77480f533eeadabf72dc (patch) | |
tree | 15a3369b1c5e047b8b4d12ddf572d6b6455f7cc7 /crawl-ref/source/view.cc | |
parent | ca111f6cd7ee74f7d7e2e7aa1f22e6005d91b1de (diff) | |
download | crawl-ref-c8af7ebfa2ed8f3787ec77480f533eeadabf72dc.tar.gz crawl-ref-c8af7ebfa2ed8f3787ec77480f533eeadabf72dc.zip |
Trigger shoutitis on seeing enemies, not randomly (dck).
This should make it more relevant.
Diffstat (limited to 'crawl-ref/source/view.cc')
-rw-r--r-- | crawl-ref/source/view.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc index 48663f1f20..85e8d3be0a 100644 --- a/crawl-ref/source/view.cc +++ b/crawl-ref/source/view.cc @@ -26,6 +26,7 @@ #include "delay.h" #include "dgn-overview.h" #include "directn.h" +#include "effects.h" #include "env.h" #include "exclude.h" #include "feature.h" @@ -296,6 +297,7 @@ void update_monsters_in_view() unsigned int size = monsters.size(); map<monster_type, int> types; map<monster_type, int> genera; // This is the plural for genus! + const monster* target = NULL; for (unsigned int i = 0; i < size; ++i) { const monster_type type = monsters[i]->type; @@ -320,6 +322,13 @@ void update_monsters_in_view() for (unsigned int i = 0; i < size; ++i) { const monster* mon = monsters[i]; + if (!target + && player_mutation_level(MUT_SCREAM) + && x_chance_in_y(3 + player_mutation_level(MUT_SCREAM) * 3, + 100)) + { + target = mon; + } if (!mon->props.exists("ash_id") && !mon->props.exists("zin_id")) continue; @@ -365,6 +374,9 @@ void update_monsters_in_view() #endif } + if (target) + yell(target); + if (player_under_penance(GOD_GOZAG)) { counted_monster_list mon_count; |