Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Vehumet wants you to burn the damn trees down.
- {{
- local tree_destroyed = false
- local god_speak = false
- function callback.dk_vehumet_trees_tree_destroyed(data, triggerable, triggerer, marker, ev)
- tree_destroyed = true
- crawl.mpr("Tree destroyed")
- end
- function callback.dk_vehumet_trees_step(data, triggerable, triggerer, marker, ev)
- if god_speak then
- crawl.mpr("exit step because god_speak")
- return
- end
- if tree_destroyed then
- crawl.mpr("exit step because Tree destroyed")
- return
- end
- crawl.god_speaks("Vehumet", "In a voice like roaring flames, Vehumet " ..
- "offers to free you in exchange for your " ..
- "pious devotion to destruction.")
- god_speak = true
- end
- function callback.dk_vehumet_trees_los(data, triggerable, triggerer, marker, ev)
- if tree_destroyed == true then
- crawl.mpr("exit los because Tree destroyed")
- return
- end
- if you.god() == "Vehumet" then
- crawl.mpr("Suddenly, the trees start to burn!")
- for slave in iter.slave_iterator("tree", 1) do
- dgn.terrain_changed(slave.x, slave.y, "floor", false, false, false)
- dgn.place_cloud(slave.x, slave.y, "flame", crawl.random2(15) + 5)
- tree_destroyed = true
- end
- end
- end
- }}
- NAME: dk_vehumet_trees
- DEPTH: 2-10
- TAGS: temple_overflow_vehumet
- KFEAT: _ = altar_vehumet
- {{
- local tf = TriggerableFunction:new{
- func="callback.dk_vehumet_trees_tree_destroyed", repeated=false}
- tf:add_triggerer(DgnTriggerer:new{type="feat_change"})
- --local marker = "123456789abcdefg"
- --for i = 1, string.len(marker) do
- -- local c = string.sub(marker, i, i)
- -- lua_marker(c, tf)
- --end
- --ERROR: Can't activate
- lua_marker('t', tf)
- }}
- #SUBST: 123456789abcdfeg = t
- {{
- local ts = TriggerableFunction:new{
- func="callback.dk_vehumet_trees_step", repeated=true}
- ts:add_triggerer(DgnTriggerer:new{type="player_move"})
- local tl = TriggerableFunction:new{
- func="callback.dk_vehumet_trees_los", repeated=true}
- tl:add_triggerer(DgnTriggerer:new{type="player_los"})
- --local tf = TriggerableFunction:new{
- -- func="callback.dk_vehumet_trees_tree_destroyed", repeated=false}
- --tf:add_triggerer(DgnTriggerer:new{type="feat_change"})
- lua_marker(':', ts)
- lua_marker(':', props_marker { step=1 })
- lua_marker('_', tl)
- lua_marker('t', props_marker { tree=1 })
- }}
- MAP
- .......
- .ttttt.
- .t:::t.
- .t:_:t.
- .t:::t.
- .ttttt.
- .......
- ENDMAP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement