summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/dat/wizlab.des
diff options
context:
space:
mode:
authorJude Brown <bookofjude@users.sourceforge.net>2009-11-30 09:39:55 +1000
committerJude Brown <bookofjude@users.sourceforge.net>2009-11-30 09:39:55 +1000
commitc2c52e296b87254243881ee260ee09fdc9047345 (patch)
treec35eaf929072160b37a9a8d3816569491041e68f /crawl-ref/source/dat/wizlab.des
parent37cce550d1fbe01bf682ffa9b4e1408e836d7325 (diff)
downloadcrawl-ref-c2c52e296b87254243881ee260ee09fdc9047345.tar.gz
crawl-ref-c2c52e296b87254243881ee260ee09fdc9047345.zip
A quick bit of cleanup with the Doroklohe vault.
Diffstat (limited to 'crawl-ref/source/dat/wizlab.des')
-rw-r--r--crawl-ref/source/dat/wizlab.des298
1 files changed, 157 insertions, 141 deletions
diff --git a/crawl-ref/source/dat/wizlab.des b/crawl-ref/source/dat/wizlab.des
index 03675c1ff1..0acfc94a00 100644
--- a/crawl-ref/source/dat/wizlab.des
+++ b/crawl-ref/source/dat/wizlab.des
@@ -5,20 +5,20 @@
# Tukima's Studio
# threat: 6 dancing weapons, dancing weapon machine generating up to 5 more
# loot: the weapons, tukima's book and a scroll of acquirement
-# xp: ???
+# xp: 14400 or so
# layout: mirrors; grey and white
#
# Erinya's Formal Garden
# crumbling stone walls.
# threat: centaurs, oklobs
-# loot:
-# xp:
+# loot: a staff and four spellbooks
+# xp: 10500 or so
# layout: formal (French) garden, flowers, crumbling stone walls
#
# Doroklohe's Tomb
# threat: either Tomb set or demons or golems
# loot: either scrolls or armours or random items
-# xp:
+# xp: 10000+
# layout: lots of tombs with loot and monsters inside
# colour: yellow tombs, rest is dark, floor is randomised
#
@@ -64,8 +64,8 @@
# Wu Xia kung fu monastery; unarmed human threats, everything appears to be
# "dark"; some humans may wield quarterstaves. Wucad Mu as loot! Orange
# crystal statues.
-# Botono's Bayou: A bay-like area with small huts, dark coloured wizards that
-# cast negative-related spells, black draconians, rebranded swamp worms.
+# Botono's Bayou: A bay-like area with small huts, wizards that cast negative
+# related spells, shadow dragons, rebranded swamp worms, wraiths, spectrals.
# Ukta's Hut: phantoms, other "ghosts", ogre mages and ogres, druidic style,
# wooden walls set in a forest (more "earthy" than Erinya's Garden)
# The Alchemist's Tower: gold turned into things, things turned into gold.
@@ -164,7 +164,7 @@ default-depth:
###############################################################################
# And arrivals!
###############################################################################
-# Firstly, we have Tukima's Studio.
+# Firstly, we have Tukima's Dance Studio.
#
# Todo: clean up the code
NAME: wizlab_tukima
@@ -310,7 +310,7 @@ MAP
ENDMAP
###############################################################################
-# Erinya's Garden
+# Erinya's Formal Garden
#
# Map was based on this image: http://upload.wikimedia.org/wikipedia/commons/5
# /58/Plan_du_ch%C3%A2teau_et_des_jardins_de_Clagny_dessin%C3%A9_par_
@@ -407,7 +407,7 @@ cttttttt..111.........T.........111..tttttttc
ctttttt...121.tttttc.....cttttt.121...ttttttc
cttttt.tty...yttttttcc=cctttttty...ytt.tttttc
ctttt.tttty.yttttttt.....ttttttty.ytttt.ttttc
-cttt.tttttt.ttttttty.232.yttttttt.tttttt.tttc
+cttt.tttttt.tttttttyd232eyttttttt.tttttt.tttc
cttt.tttttt..tttttttydefyttttttt..tttttt.tttc
ctttt.tttttt..tttttttytyttttttt..tttttt.ttttc
cttttt.tttttt..ttttttttttttttt..tttttt.tttttc
@@ -432,7 +432,7 @@ ccccccccccccccccccccccccccccccccccccccccccccc
ENDMAP
###############################################################################
-# Doroklohe's Tomb
+# Doroklohe's Forbidden Tomb
#
# It seems as if he practised box casting. I wonder what that's good for.
# Vault by dpeg. Thanks to Enne for box_glyph and to Jude for triggers.
@@ -448,139 +448,137 @@ TAGS: wizlab no_item_gen no_monster_gen no_rotate allow_dup
LROCKCOL: yellow
KFEAT: ! = x
{{
- function make_box(cenx, ceny, gly)
- for ox = -1, 1 do
- for oy = -1, 1 do
- local x = cenx + ox
- local y = ceny + oy
- if (x >= 1 and y >= 1 and x <= width() and y <= height()) then
- if (ox ~= 0 or oy ~= 0) then
- mapgrd[x][y] = gly;
- end
- end
- end
- end
- end
---
- function box_glyph(findgly, boxgly)
- local glyphs = {gly_points(findgly)}
- for i = 1, #glyphs, 2 do
- -- This is ugly. gly_points should return 1-indexed coordinates.
- make_box(glyphs[i] + 1, glyphs[i+1] + 1, boxgly)
+function make_box(cenx, ceny, gly)
+ for ox = -1, 1 do
+ for oy = -1, 1 do
+ local x = cenx + ox
+ local y = ceny + oy
+ if (x >= 1 and y >= 1 and x <= width() and y <= height()) then
+ if (ox ~= 0 or oy ~= 0) then
+ mapgrd[x][y] = gly;
end
+ end
end
+ end
+end
+
+function box_glyph(findgly, boxgly)
+ local glyphs = {gly_points(findgly)}
+ for i = 1, #glyphs, 2 do
+ -- This is ugly. gly_points should return 1-indexed coordinates.
+ make_box(glyphs[i] + 1, glyphs[i+1] + 1, boxgly)
+ end
+end
}}
-# There are two layouts: round and grid.
-# Round has 19 boxes: 12 % and 6 * and 1 |
-# Grid has 21 boxes: b-u and |
-# Layout for grid can be regular or random.
-#
-: local layout = crawl.random2(13)
-: if layout < 3 then
-# Preparation for the rare regular grid layout.
-SUBST: b=., c=., d=., e=., f=., g=., h=., i=., j=., k=.
-SUBST: l=., m=., n=., o=., p=., q=., r=., s=., t=., u=.
-SUBST: B=b, C=c, D=d, E=e, F=f, G=g, H=h, I=i, J=j, K=k
-SUBST: L=l, M=m, N=n, O=o, P=p, Q=q, R=r, S=s, T=t, U=u
-: end
-: if layout > 9 then
-# First the round layout...
-COLOUR: _ = darkgrey
-KFEAT: _ = stone_wall
-SUBST: b=., c=., d=., e=., f=., g=., h=., i=., j=., k=.
-SUBST: l=., m=., n=., o=., p=., q=., r=., s=., t=., u=.
-SUBST: B=., C=., D=., E=., F=., G=., H=., I=., J=., K=.
-SUBST: L=., M=., N=., O=., P=., Q=., R=., S=., T=., U=.
-: else
-# ...and now the grid layout.
-SUBST: _ = .
-SUBST: *=., %=.
-SUBST: B=b, C=c, D=d, E=e, F=f, G=g, H=h, I=i, J=j, K=k
-SUBST: L=l, M=m, N=n, O=o, P=p, Q=q, R=r, S=s, T=t, U=u
-NSUBST: b = 1:b / *:.
-NSUBST: c = 1:c / *:.
-NSUBST: d = 1:d / *:.
-NSUBST: e = 1:e / *:.
-NSUBST: f = 1:f / *:.
-NSUBST: g = 1:g / *:.
-NSUBST: h = 1:h / *:.
-NSUBST: i = 1:i / *:.
-NSUBST: j = 1:j / *:.
-NSUBST: k = 1:k / *:.
-NSUBST: l = 1:l / *:.
-NSUBST: m = 1:m / *:.
-NSUBST: n = 1:n / *:.
-NSUBST: o = 1:o / *:.
-NSUBST: p = 1:p / *:.
-NSUBST: q = 1:q / *:.
-NSUBST: r = 1:r / *:.
-NSUBST: s = 1:s / *:.
-NSUBST: t = 1:t / *:.
-NSUBST: u = 1:u / *:.
-# Of the outer boxes, three are damaged.
-SHUFFLE: bcdefghijklm
-: box_glyph('b', 'X')
-: box_glyph('c', 'Y')
-: box_glyph('d', 'Z')
-SUBST: b = .
-SUBST: c = .
-SUBST: d = .
-NSUBST: X = 1=. / *=!:20 .:1
-NSUBST: Y = 1=. / *=!:30 .:1
-NSUBST: Z = 1=. / *=!:50 .:1
-# For the other boxes, prepare same setup as for the round layout (i.e. six *'s)
-SHUFFLE: nqru
-SUBST: e=%, f=%, g=%, h=%, i=%, j=%, k=%, l=%, m=%, n=%
-SUBST: o=*, p=*, q=%, r=*, s=*, t=*, u=*
-: end
+# There are two layouts: round and grid.
+# Round has 19 boxes: 12 % and 6 * and 1 |
+# Grid has 21 boxes: b-u and |
+# Layout for grid can be regular or random.
#
-# Monsters
-# 0 Tomb set: zombies, mummies
-# 1 Demons (if demons are added or reclassified, please change this set!)
-# 2 Golems
-# 3 Holy set (for later)
-: local mrnd = crawl.random2(4)
-: if mrnd == 0 then
-KMONS: % = clay golem / wood golem / toenail golem w:2
-KMONS: * = stone golem / crystal golem / iron golem
-KMONS: | = electric golem
-: elseif mrnd == 1 then
-KMONS: % = blue devil / iron devil / ynoxinul / neqoxec / hellion / chaos spawn /\
- demonic crawler / hellwing / orange demon / shadow demon / tormentor
-KMONS: * = lorocyproca / reaper / soul eater / ice devil / sun demon
-KMONS: | = blue death / green death / pit fiend / fiend / shadow fiend / ice fiend /\
- executioner / balrug / cacodemon
-: else
-KMONS: % = place:D:15 zombie / guardian mummy w:2
-KMONS: * = place:D:27 zombie / greater mummy w:5
-KMONS: | = ancient lich
-: end
-#
-# Loot.
-# 0 = scrolls. 1 = armours. 2 = mixed.
-: local lrnd = crawl.random2(3)
-: if lrnd == 0 then
-KITEM: % = any scroll / any scroll q:2 w:3 / any scroll q:3 w:1
-: kitem("* = " .. dgn.good_scrolls)
-KITEM: | = scroll of acquirement / scroll of enchant weapon III q:2 /\
- scroll of blinking q:2, scroll of fog q:2, scroll of holy word q:2
-: elseif lrnd == 1 then
-KITEM: % = any armour
-KITEM: * = any good_item armour
-KITEM: | = cursed robe ego:resistance / cursed gold dragon armour
-: else
-KITEM: % = any / star_item w:2
-KITEM: * = star_item / superb_item w:2
-KITEM: | = superb_item
-: end
-#
-# Boxification:
-: box_glyph('%', '!')
-: box_glyph('*', '!')
-: box_glyph('|', '!')
-: wizlab_setup(_G, "Doroklohe's Forbidden Tomb")
-# Intentionally colouring the floor glyphs of the central room only.
-# The squares beneath the boxes and outside of the room to be uncoloured.
+: local layout = crawl.random2(13)
+: if layout < 3 then
+# Preparation for the rare regular grid layout.
+SUBST: b=., c=., d=., e=., f=., g=., h=., i=., j=., k=.
+SUBST: l=., m=., n=., o=., p=., q=., r=., s=., t=., u=.
+SUBST: B=b, C=c, D=d, E=e, F=f, G=g, H=h, I=i, J=j, K=k
+SUBST: L=l, M=m, N=n, O=o, P=p, Q=q, R=r, S=s, T=t, U=u
+: end
+: if layout > 9 then
+# First the round layout...
+COLOUR: _ = darkgrey
+KFEAT: _ = stone_wall
+SUBST: b=., c=., d=., e=., f=., g=., h=., i=., j=., k=.
+SUBST: l=., m=., n=., o=., p=., q=., r=., s=., t=., u=.
+SUBST: B=., C=., D=., E=., F=., G=., H=., I=., J=., K=.
+SUBST: L=., M=., N=., O=., P=., Q=., R=., S=., T=., U=.
+: else
+# ...and now the grid layout.
+SUBST: _ = .
+SUBST: *=., %=.
+SUBST: B=b, C=c, D=d, E=e, F=f, G=g, H=h, I=i, J=j, K=k
+SUBST: L=l, M=m, N=n, O=o, P=p, Q=q, R=r, S=s, T=t, U=u
+NSUBST: b = 1:b / *:.
+NSUBST: c = 1:c / *:.
+NSUBST: d = 1:d / *:.
+NSUBST: e = 1:e / *:.
+NSUBST: f = 1:f / *:.
+NSUBST: g = 1:g / *:.
+NSUBST: h = 1:h / *:.
+NSUBST: i = 1:i / *:.
+NSUBST: j = 1:j / *:.
+NSUBST: k = 1:k / *:.
+NSUBST: l = 1:l / *:.
+NSUBST: m = 1:m / *:.
+NSUBST: n = 1:n / *:.
+NSUBST: o = 1:o / *:.
+NSUBST: p = 1:p / *:.
+NSUBST: q = 1:q / *:.
+NSUBST: r = 1:r / *:.
+NSUBST: s = 1:s / *:.
+NSUBST: t = 1:t / *:.
+NSUBST: u = 1:u / *:.
+# Of the outer boxes, three are damaged.
+SHUFFLE: bcdefghijklm
+: box_glyph('b', 'X')
+: box_glyph('c', 'Y')
+: box_glyph('d', 'Z')
+SUBST: b = .
+SUBST: c = .
+SUBST: d = .
+NSUBST: X = 1=. / *=!:20 .:1
+NSUBST: Y = 1=. / *=!:30 .:1
+NSUBST: Z = 1=. / *=!:50 .:1
+# For the other boxes, prepare same setup as for the
+# round layout (i.e. six *'s)
+SHUFFLE: nqru
+SUBST: e=%, f=%, g=%, h=%, i=%, j=%, k=%, l=%, m=%, n=%
+SUBST: o=*, p=*, q=%, r=*, s=*, t=*, u=*
+: end
+# Monsters
+# 0 Tomb set: zombies, mummies
+# 1 Demons (if demons are added or reclassified, please change!)
+# 2 Golems
+# 3 Holy set (for later)
+: local mrnd = crawl.random2(4)
+: if mrnd == 0 then
+KMONS: % = clay golem / wood golem / toenail golem w:2
+KMONS: * = stone golem / crystal golem / iron golem
+KMONS: | = electric golem
+: elseif mrnd == 1 then
+KMONS: % = blue devil / iron devil / ynoxinul / neqoxec / hellion /\
+ / chaos spawn / demonic crawler / hellwing / orange demon /\
+ shadow demon / tormentor
+KMONS: * = lorocyproca / reaper / soul eater / ice devil / sun demon
+KMONS: | = blue death / green death / pit fiend / fiend / shadow fiend /\
+ ice fiend / executioner / balrug / cacodemon
+: else
+KMONS: % = place:D:15 zombie / guardian mummy w:2
+KMONS: * = place:D:27 zombie / greater mummy w:5
+KMONS: | = ancient lich
+: end
+# Loot.
+# 0 = scrolls. 1 = armours. 2 = mixed.
+: local lrnd = crawl.random2(3)
+: if lrnd == 0 then
+KITEM: % = any scroll / any scroll q:2 w:3 / any scroll q:3 w:1
+: kitem("* = " .. dgn.good_scrolls)
+KITEM: | = scroll of acquirement / scroll of enchant weapon III q:2 /\
+ scroll of blinking q:2, scroll of fog q:2, scroll of holy word q:2
+: elseif lrnd == 1 then
+KITEM: % = any armour
+KITEM: * = any good_item armour
+KITEM: | = cursed robe ego:resistance / cursed gold dragon armour
+: else
+KITEM: % = any / star_item w:2
+KITEM: * = star_item / superb_item w:2
+KITEM: | = superb_item
+: end
+# Boxification:
+: box_glyph('%', '!')
+: box_glyph('*', '!')
+: box_glyph('|', '!')
+# Intentionally colouring the floor glyphs of the central room only.
+# The squares beneath the boxes are to remain uncoloured.
COLOUR: ^ = darkgrey
COLOUR: = = yellow
KFEAT: ^ = stone_wall
@@ -623,12 +621,21 @@ function convert_boxes (data, triggerable, triggerer, marker, ev)
end
end
-local box_marker = TriggerableFunction:new { func = convert_boxes, repeated = true, data = {phase=1} }
+local box_marker = TriggerableFunction:new {func=convert_boxes,
+ repeated=true, data={phase=1} }
-box_marker:add_triggerer(DgnTriggerer:new { type="turn", delay_min=500, delay_max=1000})
+box_marker:add_triggerer(DgnTriggerer:new { type="turn",
+ delay_min=500, delay_max=1000})
lua_marker("A", box_marker)
}}
+: dgn.set_feature_desc_short("rock wall", "strange rock wall")
+: dgn.set_feature_desc_long("rock wall", "It is decorated with "
+: .. "images you might see in a tomb.")
+: dgn.set_feature_desc_short("stone wall", "highly decorated stone")
+: dgn.set_feature_desc_long("stone wall", "It is covered with amazing"
+: .. " images and art.")
+: wizlab_setup(_G, "Doroklohe's Forbidden Tomb")
MAP
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^________________...........________________^
@@ -665,3 +672,12 @@ MAP
^^^^^^^^^^^^^
ENDMAP
+###############################################################################
+# Wucad Mu's Monastery
+#
+NAME: wizlab_wucad
+ORIENT: encompass
+TAGS: wizlab no_item_gen no_monster_gen no_rotate allow_dup
+: wizlab_setup(_G, "Wucad Mu's Monastery")
+MAP
+ENDMAP