summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/actor.h
diff options
context:
space:
mode:
authorRobert Vollmert <rvollmert@gmx.net>2009-11-08 10:01:11 +0100
committerRobert Vollmert <rvollmert@gmx.net>2009-11-08 10:02:38 +0100
commit6a883aea39bceefb34718c699ee3877d33b6d2ba (patch)
tree7dfc750f9da300c069643661ec329b969515c897 /crawl-ref/source/actor.h
parent14710e6fd41d63a20a68342b6604d48de3a6b621 (diff)
downloadcrawl-ref-6a883aea39bceefb34718c699ee3877d33b6d2ba.tar.gz
crawl-ref-6a883aea39bceefb34718c699ee3877d33b6d2ba.zip
Add a general halo interface to actor.
Also convert the TSO halo to use this. actor::haloed() is still specific to the player TSO halo.
Diffstat (limited to 'crawl-ref/source/actor.h')
-rw-r--r--crawl-ref/source/actor.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/crawl-ref/source/actor.h b/crawl-ref/source/actor.h
index 000eba813f..0ca4e19c33 100644
--- a/crawl-ref/source/actor.h
+++ b/crawl-ref/source/actor.h
@@ -200,8 +200,15 @@ public:
virtual bool confused() const = 0;
virtual bool caught() const = 0;
virtual bool asleep() const { return (false); }
+
virtual bool backlit(bool check_haloed = true) const = 0;
- virtual bool haloed() const = 0;
+ // Within player halo.
+ virtual bool haloed() const;
+ // Halo radius.
+ virtual int halo_radius() const = 0;
+ // Is the given point within this actor's halo?
+ virtual bool inside_halo(const coord_def &c) const;
+
virtual bool petrified() const = 0;
virtual bool handle_trap();