diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-08-30 03:54:24 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-08-30 03:54:24 +0000 |
commit | b3b450db6b1b73f3161ec64d53f17cc8dcef89fa (patch) | |
tree | ff322b9a2cfb064ae97004c24bb4ecc3068f0de3 /crawl-ref/source/dat/clua/lm_timed.lua | |
parent | 251e99167c9fd284ab06f4ae1317ee108d2802b8 (diff) | |
download | crawl-ref-b3b450db6b1b73f3161ec64d53f17cc8dcef89fa.tar.gz crawl-ref-b3b450db6b1b73f3161ec64d53f17cc8dcef89fa.zip |
Allow adding amount=X property to timed markers to make them timed toll markers (due).
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10610 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/dat/clua/lm_timed.lua')
-rw-r--r-- | crawl-ref/source/dat/clua/lm_timed.lua | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/crawl-ref/source/dat/clua/lm_timed.lua b/crawl-ref/source/dat/clua/lm_timed.lua index a36f8aeaa8..31c34e1fad 100644 --- a/crawl-ref/source/dat/clua/lm_timed.lua +++ b/crawl-ref/source/dat/clua/lm_timed.lua @@ -5,6 +5,7 @@ require('clua/lm_tmsg.lua') require('clua/lm_1way.lua') +require('clua/lm_toll.lua') TimedMarker = util.subclass(OneWayStair) TimedMarker.CLASS = "TimedMarker" @@ -29,6 +30,10 @@ function TimedMarker:new(props) tmarker.dur = dur * 10 tmarker.msg = props.msg + if props.amount and props.amount > 0 then + tmarker.toll = TollStair:new(props) + end + props.msg = nil return tmarker @@ -38,6 +43,13 @@ function TimedMarker:activate(marker, verbose) self.super.activate(self, marker, verbose) self.msg:init(self, marker, verbose) dgn.register_listener(dgn.dgn_event_type('turn'), marker) + if self.toll then + self.toll:activate(marker, verbose) + end +end + +function TimedMarker:property(marker, pname) + return self.toll and self.toll:property(marker, pname) end function TimedMarker:disappear(marker, affect_player, x, y) @@ -96,6 +108,11 @@ function TimedMarker:read(marker, th) TimedMarker.super.read(self, marker, th) self.dur = file.unmarshall_number(th) self.msg = file.unmarshall_fn(th)(th) + + if self.props.amount then + self.toll = TollStair:new(self.props) + end + setmetatable(self, TimedMarker) return self end |