diff options
author | Charles Otto <ottochar@gmail.com> | 2009-11-11 23:32:33 -0500 |
---|---|---|
committer | Charles Otto <ottochar@gmail.com> | 2009-11-11 23:57:28 -0500 |
commit | 4cf89bf43fe0847385567b94f0a61a16003561fb (patch) | |
tree | 0592151dd59949eabc8c3223ddaac6cac809d6d1 /crawl-ref/source/monstuff.cc | |
parent | 37ba8b3ae6c9c7f6b39e372c4dd8f305f69923be (diff) | |
download | crawl-ref-4cf89bf43fe0847385567b94f0a61a16003561fb.tar.gz crawl-ref-4cf89bf43fe0847385567b94f0a61a16003561fb.zip |
Change the ballistomycete activation mechanic
Give ballistomycetes a counter, when it's at zero they have the slow
spawn rate (are considered inactive), when it's greater than zero they
have the fast spawn rate. Killing a ballisto gives +1 to any others on
the level, a ballisto spawning a spore subtracts 1 from its own counter
Diffstat (limited to 'crawl-ref/source/monstuff.cc')
-rw-r--r-- | crawl-ref/source/monstuff.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 1334751541..ae91249f6b 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -1445,13 +1445,15 @@ static void _activate_ballistomycetes( monsters * monster) && env.mons[i].alive() && env.mons[i].type == MONS_BALLISTOMYCETE) { - if(env.mons[i].colour != LIGHTRED) + env.mons[i].number++; + // 0 -> 1 means the ballisto moves onto the faster spawn + // timer and changes color + if(env.mons[i].number == 1) { env.mons[i].colour = LIGHTRED; // Reset the spore production timer. env.mons[i].del_ench(ENCH_SPORE_PRODUCTION, false); env.mons[i].add_ench(ENCH_SPORE_PRODUCTION); - activated_others = true; if(you.can_see(&env.mons[i])) seen_others++; |