diff options
author | DracoOmega <draco_omega@live.com> | 2013-08-21 18:30:54 -0230 |
---|---|---|
committer | DracoOmega <draco_omega@live.com> | 2013-08-22 15:47:51 -0230 |
commit | f41c9ff8e56993424751139148622a463c5a64d9 (patch) | |
tree | 962c5c9a92b8b34b8f272d04deeb481aec8440e4 /crawl-ref/source/mon-abil.h | |
parent | b0eebf247c7407e6a2bdb1547771f5286f9109c9 (diff) | |
download | crawl-ref-f41c9ff8e56993424751139148622a463c5a64d9.tar.gz crawl-ref-f41c9ff8e56993424751139148622a463c5a64d9.zip |
Give treants a 'grasping roots' ability
With this ability, the treant causes the network of gnarled roots running
beneath the whole of the earth to rise and shift and otherwise impede the
footing of any hostile creatures near it, turning it into a shifting and
unstable undergrowth.
In practical terms, this applies a 5 aut movement speed penalty and halves
the EV of any hostile creature standing on solid ground within sight of the
treant, while the effect is active. Creatures above lava and water (even
shallow) are unaffected. Flying creatures are also unimpeded, but the roots
have a high chance of rising up and pulling them back to the ground (though
this can be evaded).
The aim of this is to provide an alternate mechanism (following the reduction
in ally production) to prevent them being trivially kitable, while themselves
remaining slow, and also to offer a support mechanism to other nearby creatures.
The flavor messages could probably use more variety.
Diffstat (limited to 'crawl-ref/source/mon-abil.h')
-rw-r--r-- | crawl-ref/source/mon-abil.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/crawl-ref/source/mon-abil.h b/crawl-ref/source/mon-abil.h index c923180f64..e7ef998023 100644 --- a/crawl-ref/source/mon-abil.h +++ b/crawl-ref/source/mon-abil.h @@ -43,5 +43,7 @@ bool lost_soul_spectralize(monster* mons); int spawn_spirit_pack(const actor* target); void waterport_touch(monster* nymph, actor* target); void treant_release_wasps(monster* mons); +bool apply_grasping_roots(monster* mons); +void check_grasping_roots(actor* act, bool quiet = false); #endif |