summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/target.h
diff options
context:
space:
mode:
authorRaphael Langella <raphael.langella@gmail.com>2012-09-23 23:11:32 +0200
committerRaphael Langella <raphael.langella@gmail.com>2012-09-24 00:38:40 +0200
commit0824a09233b68e3b6e38e62765e2e486b7478514 (patch)
tree59c227d214c141ca01509095dac2ef8c1813d962 /crawl-ref/source/target.h
parent07b43754a526a36cfb49bc4bdd99fa40b989a9f9 (diff)
downloadcrawl-ref-0824a09233b68e3b6e38e62765e2e486b7478514.tar.gz
crawl-ref-0824a09233b68e3b6e38e62765e2e486b7478514.zip
Only do handle_phase_attempted() once when cleaving.
It fixes a number of issues: * You get a single stop attack prompt for all targets * No more fumbling for each target * Hunger cost isn't multiplied by targets Still broken for ctrl+dir attacks.
Diffstat (limited to 'crawl-ref/source/target.h')
-rw-r--r--crawl-ref/source/target.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/crawl-ref/source/target.h b/crawl-ref/source/target.h
index 80a41cee62..8a8648ccf6 100644
--- a/crawl-ref/source/target.h
+++ b/crawl-ref/source/target.h
@@ -110,6 +110,16 @@ public:
aff_type is_affected(coord_def loc);
};
+class targetter_cleave : public targetter
+{
+public:
+ targetter_cleave(const actor* act, coord_def target);
+ aff_type is_affected(coord_def loc);
+ bool valid_aim(coord_def a) { return false; }
+private:
+ set<coord_def> targets;
+};
+
class targetter_cloud : public targetter
{
public: