summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-abil.h
diff options
context:
space:
mode:
authorDracoOmega <draco_omega@live.com>2013-08-21 18:30:54 -0230
committerDracoOmega <draco_omega@live.com>2013-08-22 15:47:51 -0230
commitf41c9ff8e56993424751139148622a463c5a64d9 (patch)
tree962c5c9a92b8b34b8f272d04deeb481aec8440e4 /crawl-ref/source/mon-abil.h
parentb0eebf247c7407e6a2bdb1547771f5286f9109c9 (diff)
downloadcrawl-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.h2
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