################################################################################
# lair.des: All maps relating to the Lair branch. Branches off of Lair can be
#           found in their relevant file:
#               Shoals - shoals.des
#               Snake Pit - snake.des
#               Swamp - swamp.des
#               Pits of Slime - slime.des
################################################################################

{{
function lair_small_ending(e)
    e.tags('lair_end_small')
    e.weight(5)

    if e.is_validating() then return end

    e.hook("post_place", function ()
        if not dgn.persist.lair_second_ending_built then
            dgn.persist.lair_second_ending_built = true
            dgn.place_maps { tag = "lair_end_small" }
            dgn.persist.lair_second_ending_built = nil
        end
    end)
end
}}

################################################################################
# Lair entries
################################################################################
# Dummy Lair entry
NAME:   lair_0_dummy
TAGS:   lair_entry
WEIGHT: 30
ORIENT: float
KFEAT:  O = enter_lair
MAP
O
ENDMAP

################################################################################
# Generic Lair entry
#
NAME:    david_lair_1
TAGS:    lair_entry
MONS:    crocodile / sheep, agate snail / elephant slug / nothing
MONS:    nothing / yak / weight:2 death yak, plant / fungus / w:20 nothing
MONS:    elephant
SHUFFLE: 12
ORIENT:  float
KFEAT:   O = enter_lair
MAP
xxxx..@..xxxx
xx.........xx
x..42...44..x
..44..1......
@....1O3....@
...4..5...4..
x...4..2....x
xx.........xx
xxxx..@..xxxx
ENDMAP

################################################################################
# Shrubbed Lair entry
#
NAME:   david_lair_2
TAGS:   lair_entry
MONS:   plant, fire drake
SUBST:  ' = 1.
ORIENT: float
KFEAT:  O = enter_lair
MAP
xxxxxxxxxxxxx
xx111111111xx
x112.'111111x
x11.O.'111''.
x11'..111'..@
x111111''....
x1''11......x
xx.''..'...xx
xxxx..@..xxxx
ENDMAP

################################################################################
# Lair monsters near stair
#
NAME:    david_lair_3
TAGS:    lair_entry
ORIENT:  float
MONS:    w:50 nothing / w:30 giant slug / w:30 agate snail
MONS:    w:100 nothing / w:40 yak / sheep / death yak
MONS:    w:100 nothing / w:20 iguana / w:20 crocodile /\
         komodo dragon / basilisk w:5
MONS:    green rat / porcupine / orange rat / quokka / rat
MONS:    w:90 nothing / w:30 giant frog / blink frog / giant toad /\
         spiny frog
MONS:    elephant
SHUFFLE: 123456
KFEAT:   O = enter_lair
MAP
111...@......
111..........
11........2..
.............
@.....O.....@
...2.........
........2....
.............
....@........
ENDMAP

################################################################################
# Obligatory Oklob Plant Lair Entry Vault,
#
NAME:   oklobed_lair
TAGS:   lair_entry no_monster_gen no_pool_fixup no_rotate
ORIENT: float
: if you.absdepth() >= 12 then
MONS:   plant, oklob plant / w:50 plant
: elseif you.absdepth() >= 10 then
MONS:   plant, oklob plant / w:150 plant
: else
MONS:   fungus, wandering mushroom / w:50 fungus
:end
SUBST:  ? = 2.
KFEAT:  O = enter_lair
MAP
...xxxxxxx...
..x.......x..
....x...x....
...xx???xx...
.x..?111?..x.
.x..?1O1?..x.
.x..?111?..x.
...xx???xx...
....x...x....
..x.......x..
...xxxxxxx...
ENDMAP

################################################################################
# A boring Lair entry vault.
#
NAME: erik_lair_2
TAGS: lair_entry
MONS: generate_awake boring beetle / nothing / rat
MONS: generate_awake boring beetle
# Rats are boring.
ORIENT: float
SUBST: ? = c x $ .
KFEAT: O = enter_lair
MAP
xxxxxxxxx?xxxx
xxxxxx?xxxx?xx
?xx?xxxxxxx?xx
xxxxxx121xxxxx
?xxxxx1O1xxx?x
xxx??x111xxx?x
xxxxxxxx??xxxx
x?xxxx?xxxxx?x
xxxxxxxxx?xxxx
ENDMAP

################################################################################
# Grove Lair entry
#
NAME:   minmay_lair_entry_grove
TAGS:   lair_entry
ORIENT: float
MONS:   plant / bush w:2 / fungus w:2
MONS:   crocodile / basilisk w:5 / agate snail w:5 / giant slug w:5
MONS:   yak
MONS:   sheep
MONS:   rat w:2 / porcupine / green rat / quokka w:1
SUBST:  . = .:400 tt111123355
SUBST:  ' = .:200 tt111123355
SUBST:  3 : 334
KFEAT:  O = enter_lair
validate {{ return has_exit_from_glyph('O') }}
MAP
     .....
   .........
  ...........
 .............
 .....'''.....
.....'''''.....
....'''''''....
....'''O'''....
....'''''''....
.....'''''.....
 .....'''.....
 .............
  ...........
   .........
     .....
ENDMAP

################################################################################
# Lava Lair entry
#
NAME:   minmay_lair_entry_lava
TAGS:   lair_entry no_monster_gen
ORIENT: float
KMONS:  1 = lava worm / lava snake / lava fish
KFEAT:  1 = l
KMONS:  2 = fire drake
SUBST:  L = l.
KFEAT:  O = enter_lair
MAP
.........
...1Lll..
..lllllL.
..ll2Ll1.
.LlLOLll.
.lllLlll.
.ll1lll..
..lllL...
.........
ENDMAP

################################################################################
# Welcome to Lair Island. We make great pancakes.
#
NAME:   erik_lair_3
TAGS:   lair_entry
ORIENT: float
MONS:   w:60 troll / Snorg
MONS:   w:30 hound / jackal / w:20 war dog
SUBST:  ? = w.
KFEAT:  O = enter_lair
MAP
.@........wwwwww?.....
..?.?.?..wwwwwww.?..?.
..??w..wwwwwwwww?.??..
...??w.wwwwwwww?www?..
...wwww?wwwwwwwwww??..
..wwwwww??w??w2wwww..@
..wwwwww??....wwww???.
....1....2.2O2.wwww...
..?wwwww???2.2www.ww?.
.....wwww2..w.2www....
..wwwwwwwww?.wwww???..
@..wwwwwwwwwwwwwww....
....?ww..ww?www..w....
....?......??.w..???..
...........?...@......
ENDMAP

################################################################################
# Dragon's Lair, for generous values of Dragon
#
NAME:    erik_lair_4
TAGS:    lair_entry no_rotate
ORIENT:  float
MONS:    steam dragon / mottled dragon / swamp drake
MONS:    w:20 iguana / komodo dragon / giant gecko / crocodile / nothing
SUBST:   ? = x.c
SHUFFLE: %*RO
KITEM:   R = w:2 honeycomb / w:1 royal jelly
KFEAT:   O = enter_lair

MAP
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx?xxx?x?xx?x.2xx?xxx?x*?xxx?.2.xxxx
xxxxxxxxxxxxxxx.2.......?xx.x.?xxx?.??xxxx?x.?xxx
xxxxxxxxxxxxx?....xxx...2....??????..????x..%xxxx
xx?xx???xxxxx..xx??xx??..........?...???..??x=.?x
@......xxx.2.xx?xxxxxx?x?x??.......1...2.x.xxx.?x
xxx?xxx...xxxxxxxxxxxx?xxxx.??.2...?......?xxx$xx
xxxxxx?xxx?xxxxxxxxxxxx....xx??...?....??..??xx?x
xxxxxxxxxxxxxxxxxxxxx??.xxx?xx????..???2??.2O?xxx
xxxxxxxxxxxxxxxxxxxxx?R?xxxxxxxxxx.xxx?xxx?xxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ENDMAP

################################################################################
# Orcish Takeover!
#
NAME:   erik_lair_5
TAGS:   lair_entry
ORIENT: float
MONS:   orc
MONS:   warg / agate snail
MONS:   orc warrior / warg
MONS:   orc priest / orc wizard / plant
KFEAT:  O = enter_lair
MAP
xxxx..@..xxxx
xx.........xx
x...2...44..x
...4..1......
@....1O3....@
..........4..
x...4..2....x
xx.........xx
xxxx..@..xxxx
ENDMAP

################################################################################
# Plant/fungus maze (due)
#
NAME:   due_lair_maze_entry_diamond
TAGS:   lair_entry
MONS:   plant / fungus
MONS:   w:100 bat / w:100 rat / w:30 green rat / crocodile /\
        yak / nothing
ORIENT: float
SUBST:  . = G:20 B:15 .
SUBST:  1 = 1:60 .
SUBST:  2 = 2:60 1 .
SUBST:  . = .:60 1:20 2:5
COLOUR: G = green
FTILE:  G = floor_grass
SUBST:  G = .
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  B = .
KFEAT:  O = enter_lair
MAP
       ..1.1..
     ...........
   ..1.1.11.11....
 .....11..11211..1.
 .1..1111.11.111...
....1.1111211.111....
.1.11121.111.1.111...
...1111.1211.1.111...
...111.111O.11.1.1...
.1.12....1111211.1.1.
..111111.111.11.1....
 ....1111.1.11.1..1.
 1....1111.11.1..1..
   .1..11111.1....
     ......1....
       ..1....
ENDMAP

################################################################################
# Lair-specific non-entry/ending vaults
################################################################################

################################################################################
# Rats! (Lemuel), special Lair version
# There another, easier version for the shallow dungeon
#
NAME:    RatsNest_Lair
ORIENT:  northeast
TAGS:    uniq_rats_nest
DEPTH:   Lair
WEIGHT:  5
SHUFFLE: 23, 34
MONS:    rat / green rat / nothing, grey rat / orange rat / nothing
MONS:    green rat / orange rat / nothing, orange rat / rat
MAP
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxx...xxxxxxxxxxxxxxxxxxxxxxxxxxx
xxx343.xx.xxxxxxxx.334433xxxxxxxxx23...x
xx.222...xxxxxxxx..224422xxxxxx1111...xx
x..111..xxxxxxxxx..111111.xxx.111...xxxx
xx.111..xxxxxxxxxx.11111..x......xxxxxxx
xxxx..xx.x.xxxxxx.xx..........xxxxxxxxxx
xxxxx.xxx.x..x.xx.x.xx....x.xxxxxxxxxxxx
xxxxx...x.xxx.x33xx.xxxx.xxxxxxxxxxxxxxx
xxxxxxx.x.xxxx221x.xxx...xxxxxxxxxxxxxxx
xxxxxxxx.xxxxx111.xxxx.xxxxxxxxxxxxxxxxx
       xx..xxx.x.x.xxx.xxxxxxxxxxxxxxxxx
       xxx..x.xx.x.xx.xxxxxxxxxxxxxxxxxx
       xxxxx..xx.xx.x.xxxxxxxxxxxxxxxxxx
       xxxxxxxx.xxxx.xxxxxxxxxxxxxxxxxxx
             xx.xxxxxxxxxxxxxxxxxxxxxxxx
             xxx.xxxxxxxxxxxxxxxxxxxxxxx
             xxx.xxx                   x
             xxxx.xx                   x
             xxx.xxx                   x
             xxxx.xx                   x
             xxxx@xx                   x
ENDMAP

################################################################################
# A comfortable, reclusive cottage for the summer holidays (Eino)
#
NAME:    pond_and_an_island_with_a_cottage
ORIENT:  float
DEPTH:   Lair:3-7
SUBST:   % = %%%%%$$$**|
MONS:    patrolling necromancer / necromancer
SHUFFLE: 23
MONS:    giant slug zombie / agate snail zombie / \
         elephant slug zombie w:2 / nothing
MONS:    crocodile zombie / basilisk zombie / \
         komodo dragon zombie w:4 / nothing
MAP
             wwwwwwwww
        wwwwwwwwwwwwwwwww
     wwwwwwwwwwwwwwwwwwwwww
    wwwww..........wwwwwwwww
  wwwwww.xxxxxxxxxx.wwwwwwwww
 wwwwwww.x.3.2+.1.x..wwwwwwww
 wwwwwww.x+xxxx2.3x..wwwwwwwww
wwwwwwww.x.%%%x.32x..wwwwwwwww
wwwwwwww.xxxxxxx+xx..wwwwwwwww
wwwwwwwww...........wwwwwwwwww
 wwwwwwwww....WW....wwwwwwwww
  wwwwwwwwww..WWW..wwwwwwwww
  wwwwwwwwwww..W..wwwwwwww
   wwwwwwwwwww...wwwwwww
    wwwwwwwwwww..wwwww
     wwwwwwwww...www
       wwwwww.@.www
         www
ENDMAP

################################################################################
# Pointless little "vaults" by Lemuel
#
NAME:   strawberry_fields_big
ORIENT: float
WEIGHT: 1
DEPTH:  Lair
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  .= d .:150 1:8 2:4
# "strawberry plant"
MONS:   plant name:strawberry name_adjective, butterfly
ITEM:   strawberry q:1 / strawberry q:2 / strawberry q:3 w:5 /\
        strawberry q:4 w:3 / strawberry q:5 w:2 / strawberry q:6 w:1
MAP
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
.....................
ENDMAP

NAME:   strawberry_fields_big_rounded
ORIENT: float
WEIGHT: 1
DEPTH:  Lair
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  .= d .:140 1:8 2:4
# "strawberry plant"
MONS:   plant name:strawberry name_adjective, butterfly
ITEM:   strawberry q:1 / strawberry q:2 / strawberry q:3 w:5 /\
        strawberry q:4 w:3 / strawberry q:5 w:2 / strawberry q:6 w:1
MAP
       .......
     ...........
   ...............
 ..................
 ..................
.....................
.....................
.....................
.....................
.....................
.....................
 ...................
 ...................
   ...............
     ...........
       .......
ENDMAP

NAME:   strawberry_fields_round
ORIENT: float
WEIGHT: 4
TAGS:   allow_dup
DEPTH:  Lair
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  .= d .:50 1:8 2:4
# "strawberry plant"
MONS:   plant name:strawberry name_adjective, butterfly
ITEM:   strawberry q:1 / strawberry q:2 / strawberry q:3 w:5 /\
        strawberry q:4 w:3 / strawberry q:5 w:2 / strawberry q:6 w:1
MAP
   ....
 ........
..........
..........
..........
..........
 ........
   ....
ENDMAP

NAME:   strawberry_fields_patches_spacepadded
ORIENT: float
WEIGHT: 4
DEPTH:  Lair
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  .= d .:50 1:8 2:4
# "strawberry plant"
MONS:   plant name:strawberry name_adjective, butterfly
ITEM:   strawberry q:1 / strawberry q:2 / strawberry q:3 w:5 /\
        strawberry q:4 w:3 / strawberry q:5 w:2 / strawberry q:6 w:1
MAP
   ..
 ......
........
........      ..
 ......     ......
   ..      ........
           ........
     ..     ......
   ......     ..
  ........
  ........
   ......
     ..
ENDMAP

################################################################################
# Plantages
#
NAME:   fruit_tree_single
ORIENT: float
TAGS:   allow_dup
DEPTH:  Lair, Snake
MONS:   plant, fungus
SUBST:  ' = . a 2:1
SUBST:  . = .:90 a:10 2:1
KITEM:  a : apple / apricot / pear / orange / banana / strawberry q:1 w:5 /\
            strawberry q:2 w:5 / lemon
KFEAT:  a = .
WEIGHT: 8
MAP
 .....
.......
..'''..
..'1'..
..'''..
.......
 .....
ENDMAP

NAME:   fruit_tree_lots
ORIENT: float
DEPTH:  Lair, Snake
MONS:   plant, fungus
SUBST:  ' = . 1
SUBST:  . = .:90 a:10 2:1
SUBST:  _ = .:90 a:4
KITEM:  a : apple / apricot / pear / orange / banana / strawberry q:1 w:5 /\
            strawberry q:2 w:5 / lemon
KFEAT:  a = .
WEIGHT: 2
MAP
   ________
  _........_
 _.....'...._
_..'........._
_......'..'.._
_...'........_
_......'....._
 _..'....'.._
  _........_
   ________
ENDMAP

#############################################
# A number of fruity vaults, by blue_anna
#
# The "fruiting_plant" tag was used originally for subvault use in
# blue_anna's dwarven hall branch; it may be obsolete.
#
# TODO: Many of them could be combined into a single vault.
#       Using KMONS and KITEM, we could have fruits on the same
#       square as a tree/plant.
#
NAME:   blue_anna_choko_field
TAGS:   fruiting_plant allow_dup
WEIGHT: 1
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d 1 .:50
MONS:   plant name:gourd name_adjective
ITEM:   choko q:1 / choko q:2 / choko q:3 w:2
MAP
.....
.....
.....
.....
ENDMAP

NAME:   blue_anna_soapberry_tree
TAGS:   fruiting_plant allow_dup
WEIGHT: 1
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d .:50
SUBST:  ' = d .:33
MONS:   plant name:soapberry_tree name_replace name_descriptor
: if crawl.coinflip() then
ITEM:   lychee q:1 / lychee q:2 / lychee q:3 w:2
: else
ITEM:   rambutan q:1 / rambutan q:2 / rambutan q:3 w:2
: end
MAP
.'''.
.'1'.
.'''.
.....
ENDMAP

NAME:   blue_anna_citrus_tree
TAGS:   fruiting_plant allow_dup
WEIGHT: 2
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d .:50
SUBST:  ' = d .:33
MONS:   plant name:citrus_tree name_replace name_descriptor
: if crawl.coinflip() then
ITEM:   orange q:1 / orange q:2 / orange q:3 w:2
: else
ITEM:   lemon q:1 / lemon q:2 / lemon q:3 w:2
: end
MAP
.'''.
.'1'.
.'''.
.....
ENDMAP

NAME:   blue_anna_apple_tree
TAGS:   fruiting_plant allow_dup
WEIGHT: 2
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d .:50
SUBST:  ' = d .:33
MONS:   plant name:apple_tree name_replace name_descriptor
ITEM:   apple q:1 / apple q:2 / apple q:3 w:2
MAP
.'''.
.'1'.
.'''.
.....
ENDMAP

NAME:   blue_anna_apricot_tree
TAGS:   fruiting_plant allow_dup
SUBST:  . = G:20 B:15 .
WEIGHT: 2
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d .:50
SUBST:  ' = d .:33
MONS:   plant name:apricot_tree name_replace name_descriptor
ITEM:   apricot q:1 / apricot q:2 / apricot q:3 w:2
MAP
.'''.
.'1'.
.'''.
.....
ENDMAP

NAME:   blue_anna_pyrus_tree
TAGS:   fruiting_plant allow_dup
SUBST:  . = G:20 B:15 .
WEIGHT: 2
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d .:50
SUBST:  ' = d .:33
MONS:   plant name:pyrus_tree name_replace name_descriptor
ITEM:   pear q:1 / pear q:2 / pear q:3 w:2
MAP
.'''.
.'1'.
.'''.
.....
ENDMAP

NAME:   blue_anna_bittermelon_vine
TAGS:   fruiting_plant allow_dup
WEIGHT: 1
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  .= d 1 .:34
MONS:   plant name:bittermelon_vine name_replace name_descriptor
ITEM:   snozzcumber q:1 / snozzcumber q:2 / snozzcumber q:3 w:2
MAP
.....
..1..
.....
.....
ENDMAP

NAME:   blue_anna_grape_vine
TAGS:   fruiting_plant allow_dup
WEIGHT: 2
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
SUBST:  . = d 1 .:34
MONS: plant name:grape_vine name_replace name_descriptor
: if crawl.coinflip() then
ITEM:   grape q:1 w:3 / grape q:2 w:5 / grape q:3 / \
        grape q:4 w:7 / grape q:5 w:5 / grape q:6 w:2
: else
ITEM:   sultana q:1 w:2 / sultana q:2 w:3 / sultana q:3 / \
        sultana q:4 w:5 / sultana q:5 w:7 / sultana q:6 w:5
: end
MAP
.....
.....
.....
.....
ENDMAP

NAME:   blue_anna_musa_stalks
TAGS:   fruiting_plant allow_dup
WEIGHT: 2
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
NSUBST: ' = 1:d *:.
NSUBST: . = 1:1 *=.....1
MONS:   plant name:musa name_adjective
ITEM:   banana q:6 w:2 / banana q:7 w:4 / banana q:10 / banana q:12 / \
        banana q:14 w:4 / banana q:16 w:2
MAP
.....
.'''.
.'''.
.....
ENDMAP

NAME:   blue_anna_strawberry_field
TAGS:   fruiting_plant allow_dup
WEIGHT: 2
SUBST:  . = G:20 B:15 .
COLOUR: G = green
FTILE:  G = floor_grass
COLOUR: B = brown
FTILE:  B = floor_dirt
SUBST:  BG = .
NSUBST: . = 1:d / *=..1
NSUBST: . = 2:1 / *=.....1
MONS:   plant name:strawberry name_adjective
ITEM:   strawberry q:1 / strawberry q:2 / strawberry q:3 w:5 /\
        strawberry q:4 w:3 / strawberry q:5 w:2 / strawberry q:6 w:1
MAP
.....
.....
.....
.....
ENDMAP


################################################################################
# Ice dragon lair with assorted imp pets
#
NAME:   ice_dragon_lair_bobbens
DEPTH:  Lair:4-8
TAGS:   no_monster_gen
MONS:   ice dragon
MONS:   w:9 white imp/w:1 nothing
MONS:   white imp
ITEM:   any good_item
SUBST:  ! = $:3 d:2
SUBST:  ' = w:15 x:9 c:3 .:1
SUBST:  ? = x:3 c:1
SUBST:  ; = x:2 .:3
SUBST:  _ = %:1 .:3
SUBST:  " = G:1 .:3
MAP
;;..;..;;;.;;.;;;
;;...wwww.;;..ww.;;
;..ww'''ww..wwwww;;;;
;.ww'???wwwwwwwww;....
;.ww'?!??''''''w...ww.
;..ww?!!??????'w..www.
;;..w?!1?...??'w"www.;
;;;.w?!!.2?3.?'wwww.;
;;;ww??w2.?W.''www.;;
;..www'??????'.wwww.;;
..wwww''????ww'''ww.;;
.wwwwwww...www'_'ww.;
..wwwww....www'''w.;;
.;www...V..wwwwww.;;
;;...........www.;;;
;;   ;;;....w..;
ENDMAP

################################################################################
# Dragon lair embedded in wall
#
NAME:   dragon_lair_wall_bobbens
DEPTH:  Lair:4-8
TAGS:   no_monster_gen mini_float
: if you.absdepth() >= 18 then
MONS:   dragon
MONS:   fire drake / w:2 mottled dragon / w:4 nothing
: else
MONS:   mottled dragon / steam dragon
MONS:   fire drake / w:15 nothing
: end
ITEM:   any good_item
SUBST:  ! = $:3 d:2
SUBST:  ' = l:15 x:9 c:3
SUBST:  ? = x:3 c:1
SUBST:  ; = x:3 c:1 .:4
SUBST:  / = l:3 .:1
SUBST:  _ = %:1 .:3
MAP
xxxxx?????????xxxxx
xxx?????..//???xxxx
xx???'.../?/!????xx
x???;.2./???!!???xx
x??;.1../;??!!???xx
x??;.../''???!???xx
x??;'.../'???????xx
x???;/..???????xxxx
x??????;.?????xxxxx
xx?????.;?????xxxxx
xx????./??????xxlxx
xx????.;_????xxxlxx
xx?./'.2///???x?xlx
x?//.././///x??xl/x
.._....//..//?x//..
.././...G./..//....
./........./.......
ENDMAP

################################################################################
# Drake nest (minmay)
#
NAME:   minmay_lair_drake_nest
DEPTH:  Lair:4-
MONS:   fire drake / nothing w:20, plant w:20 / fungus w:1 / bush w:1
SUBST:  . = ...2
SUBST:  . = ...%
MAP
   ...
  .....
 .......
...111...
...111...
...111...
 .......
  .....
   ...
ENDMAP

################################################################################
# Venomous thicket (minmay)
#
NAME:   minmay_lair_venomous_thicket
TAGS:   ruin_lair
DEPTH:  Lair
ORIENT: north
MONS:   black mamba / spiny frog / wolf spider / spiny worm
MONS:   basilisk / komodo dragon / yellow wasp
MONS:   giant mite / giant centipede
MONS:   plant / fungus w:2 / bush w:1
SUBST:  4 = 444. t:2, . = ...4 t:2
SUBST:  1 = 1., 2 = 2., 3 = 3.
MAP
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxx4444xxxxxxx
xxxxx4441..34xxxxx
xxxx444.3.1.44xxxx
xxxx4.31.3.3.4xxxx
xxx4.2.3444.144xxx
xxx.3.444444324xxx
xxx2..4444444.4xxx
xxx43.444444434xxx
xxx442.444444.4xxx
xx444..344443..4xx
xx44..........3.xx
..3..3....3.......
ENDMAP

################################################################################
#       Hibernating monster in a tunnel, can be pretty dangerous
#
NAME:   hibernation_bobbens
DEPTH:  Lair:4-8
TAGS:   allow_dup no_monster_gen no_item_gen mini_float
MONS:   w:5 death drake / ice dragon / dragon / swamp dragon
MONS:   swamp dragon / hydra / anaconda
MONS:   swamp drake / w:20 spiny frog / w:20 komodo dragon /\
        w:20 basilisk / w:20 black mamba
: if you.absdepth() >= 18 then
SUBST:  M = 1:1 2:9 3:20
: elseif you.absdepth() >= 13 then
SUBST:  M = 2:1 3:4
: else
SUBST:  M = 3
: end
SUBST:  ; = x:3 .:1
MAP
xxxxxxxxxx
xxx....xxx
xx......xx
xx..xx.Mxx
xxx..xxxxx
xxx;.;xxxx
xxx;..xxxx
xxxx..;xxx
xxx....xxx
ENDMAP

################################################################################
# Stranded yaks
#
NAME:   Lemuel_yak_island_a
WEIGHT: 5
DEPTH:  Lair
TAGS:   no_pool_fixup uniq_yak_island
MONS:   yak / w:5 sheep / w:3 death yak
SUBST:  ; : .wW
SUBST:  . : . W:2
MAP
..............
...;;wwww;;...
..;wwwwwwww;..
.;wwww..wwww;.
.;www.1.1www;.
.www.1>1.1www.
.;www.1.1www;.
.;wwww..wwww;.
..;wwwwwwww;..
...;;wwww;;...
..............
ENDMAP

NAME:   Lemuel_yak_island_b
WEIGHT: 5
DEPTH:  Swamp, Shoals
TAGS:   no_pool_fixup uniq_yak_island
MONS:   yak / w:5 sheep / w:3 death yak
SUBST:  ; = wW
SUBST:  . : . W:2
MAP
   ;;wwww;;
  ;wwwwwwww;
 ;wwww..wwww;
 ;www.1.1www;
 www.1>1.1www
 ;www.1.1www;
 ;wwww..wwww;
  ;wwwwwwww;
   ;;wwww;;
ENDMAP


################################################################################
# Oklob tunnel
#
NAME:   minmay_lair_oklob_tunnel
ORIENT: southwest
DEPTH:  Lair
MONS:   plant / oklob plant w:1 / nothing w:15
MAP
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xllllllllxxxxxxxxxxxxxxxxxxx11xxx111....
xlllllllxxxxxxxxxxxxxx111xxxx111xx111..@
xlllllxxxx111xxx11xxxxx111111111111111..x
xllxxxxxx11xxxx11xxxx111111111111111111xx
xllllxxxx1xxxxxx11111111111111111111x1xx
xllxxxxxx11xx1111111111111xxx11111xxxxxx
xllx11xx1111111111111111111xxxxxx111x
xlxxx1111111111111xx111xxx11xxxxxxxxx
xlx%+11111111111xxxxxx11xxxxx
xlx%xxx11111xxx11xxxxxxxxxx
xlx|xx11xxx11xxxxx
xlxxxxxxxxxx111xx
xllllllxxxxxxxxx
xxxlllxxxx
xxxxxxxx
ENDMAP

################################################################################
# Hidden items, with an oklob, naturally
#
NAME:   minmay_lair_hidden_items
DEPTH:  Lair
ORIENT: float
MONS:   plant / fungus w:3 / bush w:5
KMONS:  | = oklob plant
KITEM:  | = |
SUBST:  X = xx.
SUBST:  % = ....%%%%**
MAP
XXXXXXXXX
Xxxxxxxxx.
Xx%%%1.x1@
Xx%%%xx1x.
Xx|%%xxxx
XxxxxxXXX
XXXXXXX
ENDMAP

################################################################################
# Oklob-based vaults.
#
NAME:   minmay_lair_oklob_chamber_tiny
TAGS:   luniq_oklob uniq_oklobchamber no_monster_gen
DEPTH:  Lair
ORIENT: north
WEIGHT: 4
MONS:   plant, oklob plant
NSUBST: ? = 1:2 / *:?
SUBST:  ? = ....x11$$%%*|
MAP
xxxx
x??x
x??x
x11x
....
 ..
ENDMAP

NAME:   minmay_lair_oklob_chamber_small
TAGS:   luniq_oklob uniq_oklobchamber no_monster_gen
DEPTH:  Lair
ORIENT: north
WEIGHT: 3
MONS:   plant, oklob plant
NSUBST: ? = 2:2 / *:?
SUBST:  ? = ....x11$$%%*|
MAP
xxxxx
x???x
x???x
x???x
x111x
.....
 ...
ENDMAP

NAME:   minmay_lair_oklob_chamber_medium
TAGS:   luniq_oklob uniq_oklobchamber no_monster_gen
DEPTH:  Lair
ORIENT: north
WEIGHT: 2
MONS:   plant, oklob plant
NSUBST: ? = 3:2 / *:?
SUBST:  ? = ....x11$$%%*|
MAP
xxxxxx
x????x
x????x
x????x
x????x
x1111x
......
 ....
ENDMAP

NAME:   minmay_lair_oklob_chamber_large
TAGS:   luniq_oklob uniq_oklobchamber no_monster_gen
DEPTH:  Lair
ORIENT: north
WEIGHT: 1
MONS:   plant, oklob plant
NSUBST: ? = 4:2 / *:?
SUBST:  ? = ....x11$$%%*|
MAP
xxxxxxx
x?????x
x?????x
x?????x
x?????x
x?????x
x11111x
.......
 .....
ENDMAP

NAME:   minmay_lair_oklob_bushes_tiny
TAGS:   luniq_oklob uniq_oklobbushes
DEPTH:  Lair
WEIGHT: 4
MONS:   oklob plant, bush
MAP
 ...
.222.
.212.
.222.
 ...
ENDMAP

NAME:   minmay_lair_oklob_bushes_small
TAGS:   luniq_oklob uniq_oklobbushes
DEPTH:  Lair
WEIGHT: 3
MONS:   oklob plant, bush
MAP
  ...
 .....
..222..
..212..
..222..
 .....
  ...
ENDMAP

NAME:   minmay_lair_oklob_bushes_medium
TAGS:   luniq_oklob uniq_oklobbushes
DEPTH:  Lair
WEIGHT: 2
MONS:   oklob plant, bush
MAP
    ...
  .......
 .........
 .........
....222....
....212....
....222....
 .........
 .........
  .......
    ...
ENDMAP

NAME:   minmay_lair_oklob_bushes_large
TAGS:   luniq_oklob uniq_oklobbushes
DEPTH:  Lair
WEIGHT: 1
MONS:   oklob plant, bush
MAP
       ...
    .........
   ...........
  .............
 ...............
 ...............
 ...............
.......222.......
.......212.......
.......222.......
 ...............
 ...............
 ...............
  .............
   ...........
    .........
       ...
ENDMAP

################################################################################
# Goldilocks: three bears
#
NAME:   minmay_lair_goldilocks
WEIGHT: 5
DEPTH:  Lair
MONS:   black bear, grizzly bear, polar bear
ITEM:   potion of porridge / honeycomb
MAP
.......
.xxxxx.
.xdddx.
.x321x.
.xx+xx.
.......
ENDMAP


###############################################################################
# Lair endings
###############################################################################

#######################################################################
# Vaguely Jungle Book (R. Kipling) inspired. Map by due.
# Could do with some nice tiles, I guess. Does require elephant statue
# tiles!
NAME:   jungle_book
ORIENT: north
PLACE:  Lair:$
TAGS:   no_pool_fixup no_wall_fixup no_monster_gen
MONS:   plant, elephant
SUBST:  X = xxx..
SUBST:  P = 1.........
SUBST:  T = tttxxc
KFEAT:  S = deep_water
KMONS:  S = anaconda
# The anaconda's name is Kaa.
KITEM:  U = superb_item
KITEM:  Q = acquire any
MARKER: S = lua:MonPropsMarker:new { anaconda_guard="anaconda_guard" }
KFEAT:  o = granite_statue
{{
function elephant_statue()
  return
end
}}
MARKER: o = lua:portal_desc { desc="elephant-shaped statue", \
            desc_long=("This worn granite statue depicts" .. \
                       " elephants standing guard."), \
            slaved_to="elephant" }
MARKER: G = lua:portal_desc { desc="elephant-shaped statue", \
            desc_long=("This worn granite statue depicts" .. \
                       " elephants standing guard.") }
COLOUR: oG = green
TILE:   oG = dngn_statue_elephant
MARKER: o = lua:monster_on_death { \
            target="anaconda_guard", new_monster="generate_awake dire elephant", \
            message_seen="The elephant guardians awaken!", \
            message_unseen="You hear a distant trumpeting.", \
            master_name="elephant", \
            veto_fragmentation="veto", veto_disintegrate="veto", \
         }
MARKER:  c = lua:portal_desc { desc="moss-covered stone wall", \
             desc_long="This stone wall is ancient, and covered in moss." }
MAP
  xxxxxxxxxxx
 xxxxxXX.XXXxx
xxxxXt....PPXxx
xxttttt......Xxx                           xxxx
xttttxx.X..X..Xxx                         xxT.xxx...@
xtUttxccc+cc++ccccccccccccccccccccccccccccTT.TT.xxx..
xtttxccco.Gc.....ccPWWcco..%cccP..ccP....P.G.o.TTxxx.
xttxcccc...c.P...=P.WwW+...%Qc.....+.....c.c...TTTx..
xxccccccPc.ccccP.c.WwwS+...%|c.22..c.Pcccc.P.cTTccc..
xccccccc+c.P.PccccPwwwwco..%cc.22..cccc.P..c+ccccccc.
xcc1...PPccccP.P.cWwWWPccccccc%...PcP.PPccccPP1..%cc.
xcc......cccccccPcccW.ccco.occcP.ccc.ccccccc......cc.
xccP.1..%ccttTccP.PcccccG.V.GcccccP.PccTttcc1....Pcc.
xxcccccccct....cccP.P.P1P...P1P.P.Pccc....tcccccccc.
 TxTcccTt.......tcccccccc+++cccccccct.......tcccTt..@
   @........@@...........@@@....T......@@..........@
ENDMAP

#######################################################################
NAME:   evil_forest
PLACE:  Lair:$
TAGS:   no_pool_fixup no_wall_fixup no_monster_gen no_rotate no_item_gen
ORIENT: southeast
SUBST:  T = ttt.
COLOUR: _;/1234 = red
COLOUR: :6 = lightgrey
KFEAT:  / = enter_hell
KFEAT:  ; = floor
KFEAT:  : = floor
KFEAT:  Q = granite_statue
KFEAT:  _ = altar_makhleb
KPROP:  Q = bloody
KFEAT:  L = endless_lava
MONS:   smoke demon
MONS:   red devil / rotting devil / hairy devil / hellwing w:50
MONS:   orange demon
MONS:   sun demon
MONS:   hydra / fire drake / dire elephant
MONS:   wizard col:red hd:13 name:crazed n_adj
KITEM:  / = acquire any
MARKER: = = lua:restrict_door {}
MAP
   ...TTTT....  .............................
  ..TttttttT.......Tt.TtT....TT..TT......Tt....
 ..TtttttttttT..TTtttttttT..TttttttTT..TTtttT...
 ..Tttttttttttt0ttttttttttttttttttttttttttttttT..
 .Tttttttttttttt.ttttttttttttttttT.Ttttttttttttttt
 ..Ttttttttttttt.tttttttttttttttT.5.Tttttttttttttttx
 .....ttttttttt..tttttttttttttttT....ttttttttttttttx
 ..Ttt0.tttttt....ttttttttttttttt..Tt..ttttttttttttx
 ..Ttttt.......t.0.tttttttttttt...ttttt.0ttttttttttx
 ..ttttttt..0tttt.t..ttttttttt.0.tttttttt..ttttttttx
 .Tttttttttttttt..ttt...ttt....ttttttttttT.5Tttttttx
 ...Ttttttttttt..ttttt.......tttttttttttT....Ttttttx
 ...tttttttttt..ttttttt0tt.tttttttttcccccc++cccccccx
 ..Tttttttttt..tttttttttttt=ccccccccc:::::::::::::cL
 ..Ttttttttt.0t..ttttttttttc::::::::c:::Q;;;;Q::::cL
 .Tttttttttt..tt..tttttttttc::G:G:::c:::::::::::::cL
 ..Tttttttt..tttt.tttttttttc:::G:G::cccccccccccccccL
 .Tttttttt..ttttt..ttttttttc::G:G:::c;;;;;;;2llllllL
 ..Ttttt.0ttttttt...tttttttc:::G:G::c;;;;;;;222llllL
 ....T..tttttttt....tttttttc::G:G:::=;;;;_;3142/lllL
 ...T0tttttttttt.Q5ttttttttc:::G:G::c;;;;;2222lllllL
 ..Ttttttttttttttttttttttttc:::::::6c;;;;2lllllllllL
 ttttttttttttttttttttttttttccccccccccccclllllllllllL
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxLLLLLLLLLLLLLLLLLL
ENDMAP

#######################################################################
# Oh worms!
NAME:   wormcave
PLACE:  Lair:$
TAGS:   no_pool_fixup no_wall_fixup no_monster_gen no_rotate no_item_gen
ORIENT: southeast
MONS:   plant
MONS:   spiny worm, brain worm, worm, giant leech, lindwurm
KMONS:  7 = dragon
KMONS:  8 = giant firefly
KMONS:  9 = rock worm
KFEAT:  9 = rock_wall
SUBST:  X = x.
SUBST:  P = 11.
# Give a hint about the dragon cave.
: if crawl.one_chance_in(4) then
SUBST:  C = c
: elseif crawl.one_chance_in(3) then
NSUBST: " = 2:$ / *:$..
: elseif crawl.coinflip() then
NSUBST: " = 1:GU / *:.
: else
KPROP:  = = bloody
: end
SUBST:  C = x
SUBST:  _ = .
: lair_small_ending(_G)
MAP
            XXXXXxxXXxxXXxxxxXXxxxXXXxxx
 @........@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 ..PP.XX..Px..xxxxxxxxxxxxxxxxxX4x9xxxxx
 ..PP.XX..PPxxxxxxxxXX88Xxxxxx4%..xxxxxx
 ...x.....PPP.xxxxxP...88XxxxX44..Xxxxxx
 ..XxX..X.....xxxxxX....88xxx244..xxxxxx
 .Pxxxxx.x...xxxxxxx....%XxxxxX41.4xxxxx
 xxccccxx..XPPxxxxxP11.XPxxxxxxxXP.xxxxx
Xxcc$$ccxxXxx..xxxxxX1..xXxxxxXxx.1xxxxx
Xxc$$$$ccxxx...Xxxxxxx2..x9xxxx...xxxxxx
xxc$$$$$cxxx..xxxxxxxXx4..xXxx..4xxxxxxx
xxcc$7$$cxx..x9xxxxxxxxx2P..X...xXxxxxxx
xxxcc$$CCxX..Xxxxxxxxxxx....4.xxxxxxxxxx
xxxxccC=CX".xxxxxxxxxXx...P.xxxx236xxxxx
xxxxxxxCP""xxxxxxxxxXx...Xx9Xxx5625%xxxx
xxxxxxxX""xxXxxxxXxx...4xxxxxxx%334xxxxx
xxxxxxxxX.2.xxxx9x....x..xxxxxxxx5.xxxxx
xxxxxxxxxX...xXx...4Xxx2...1xxxx...xxxxx
xxxxxxxxxxx.......Xxxxxx..........xxxxxx
xxxxxxxxxxXxx41.xxXxxxxxxxxx....xxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ENDMAP

#######################################################################
# Bear with us...
NAME:   bearwithus
PLACE:  Lair:$
TAGS:   no_pool_fixup no_wall_fixup no_monster_gen no_rotate no_item_gen
ORIENT: southeast
MONS:   plant
MONS:   grizzly bear, polar bear, black bear
SUBST:  X = xx.
SUBST:  P = 1111.
KITEM:  % = honeycomb q:3
: lair_small_ending(_G)
MAP
            xXXxxxXXXxxx
       @...xxxxxxxxxxxxx
       P..Pxxxxxxxxxxxxx
      @...xxxxxxxxxxxxxx
      P..PxxxxxxxxXxxxxx
     @..PxxxXXxxxx34.%xx
     P..2xxx2%xXx34..2xx
    @....1x...2xxx...xxx
    ...2P1....xxx..2xXxx
   @..Pxxx........xxxxxx
   P.2xxxxx2...xx..Xxxxx
  @..PxxxxXX..xx43xxxxxx
  P.Pxxxxxxxx..3.xxxxxxx
 @..xxxxxxxxX2....xXxxxx
 ..Pxxxxxxxxxx....%xxxxx
 .PxxxxxxxxXx2....4xxxxx
 Pxxxxxxxxxx3....4xXxxxx
XxxxxxxxxxxXx3%.2xxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxx
ENDMAP

#######################################################################
# Who let the dogs out?
NAME:   kennels
PLACE:  Lair:$
TAGS:   no_pool_fixup no_wall_fixup no_monster_gen no_rotate no_item_gen patrolling
ORIENT: southeast
MONS:   plant
MONS:   jackal, hound, warg, wolf, war dog, hell hound
SUBST:  X = xx.
SUBST:  P = 1111.
KITEM:  $ = gold, acquire any
: lair_small_ending(_G)
MAP
@   @  @  XXXXXxxxxXXxxxxxxxxxxxxxxx
 ...P..Pxxxxxxxx.3xxxxxxxxxxxxxxxxxx
 .P...Pxxxxxx.......xxxxxxx$x7xxxxxx
@P...1xxxxxx3...xx....xxxxxx6.6..xxx
 ...Px..xxxxx..xxx....xxxxx7.5.4.xxx
 .Pxxx.2.xxx...5xxx..6.4xx.......xxx
@Pxxx.22.xx....xxx.6...xx......xxxxx
 xxxx.22.xxx....xxx66..4xx....xxxxxx
 xxxxx..x3xx.....x.....xx5x..xxxxxxx
Xxxxxxx..xx3x...xx....xxxxx..xxxxxxx
Xxxxxx3...xx...xxxx.22x2xxx...xxxxxx
Xxxxxxx...x4x..5xxxx2..xxxxx...xxxxx
xxxxxx...3xx...xxxx2x...xxxxx...xxxx
xxxxxxx..xxx...xxxxx2...xxx...xx5xxx
xxxxxx3.......xxxxx2....23...xxxxxxx
xxxxxxxx.....xxxxxxxxx.3....xxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ENDMAP

#######################################################################
# Frog pond
#
NAME:   minmay_lair_end_frog_pond
PLACE:  Lair:$
ORIENT: float
MONS:   giant frog / giant toad / spiny frog
MONS:   blink frog
MONS:   vampire mosquito
MONS:   plant
SUBST:  p = 44W2
SUBST:  w = W:40 w:10 1:2 3:1 4:5
SUBST:  . = .:40 W:10 1:2 3:1 4:5
KFEAT:  W = W
KMONS:  W = giant leech / nothing w:1000
SUBST:  % = %%*|
: lair_small_ending(_G)
MAP
          ..............
       ....................
   .........wwwww.............
 ........wwwwwwwwwwwwwww.......
.......wwwwwwwwwwwwwwwwwww.....
.....wwwwwwwwwwwwwwwwwwwwww.....
....wwwwwwwwwwwwwwwwwwwwwwww....
...wwwwwwwwwwwwwwwwwwwwwwwww....
...wwwwwwwwwwwwwwwwwwwwwwwwww...
..wwwwwwwwwwwwwppwwwwwwwwwwww...
..wwwwwwwwwwppppppwwwwwwwwwww...
..wwwwwwwwwwpp%%ppwwwwwwwwwww...
..wwwwwwwwwpp%%%%ppwwwwwwwwwww..
..wwwwwwwwwpp%%%pppwwwwwwwwwww..
.wwwwwwwwwwwpppppwwwwwwwwwwwww..
.wwwwwwwwwwwwwppwwwwwwwwwwwwww..
.wwwwwwwwwwwwwwwwwwwwwwwwwwww...
.wwwwwwwwwwwwwwwwwwwwwwwwwwww...
..wwwwwwwwwwwwwwwwwwwwwwwwww....
..wwwwwwwwwwwwwwwwwwwwwwwww....
...wwwwwwwwwwwwwwwwwwwwww......
....wwwwwwwwwwwwwwwwwww.......
 .....wwwwwwwwwwwwww.........
  .........wwwwww.........
    ...................
        ...........
ENDMAP

################################################################################
# See https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:branch:forest.
#
NAME:   minmay_lair_end_enchanted_forest
PLACE:  Lair:$
ORIENT: northwest
MONS:   black bear / grizzly bear, wolf, spriggan
MONS:   spriggan rider / spriggan druid
SUBST:  T : T:20 .:1 t:1
SUBST:  T = t.
SUBST:  2 = 2., 3 = 3., 4 = 4., . = .:190 1
KITEM:  $ = gold, star_item
MAP
ttttttttttttttttttttttttttttttttttttttttttttttttttt
tttttttttttttttttttttttttttttttttttttttttttttttttt
tttttttttT$G$Ttttttt....ttttttttt.....ttTTtttttTT
ttttttttt3.$..TTT....ttT...TTT....ttT.2222TTtt..@
tttttttTT.3.3....TTttttttT..3...TttttttTT222..ttT
tttttT.....4..3TtttttttttT3...3ttttttttt22ttttttt
ttttt..ttT3.3.TtttttttttT....3.tttttttt..tttttttT
tttt.ttttttttttttttttttt....tt..TttT...TT.tttttt
tttT2ttttttttttttttttT...TTttttt.....ttttT.Tttt
ttT22tttT.4TtttttttT....tttttttttTTttttttt..ttT
tt22ttt..3..tttttt..TTT.ttttttttttttttttttt.tt
tt22tttT..3.ttttT.Tttttt.22tttttttttttttttT.tt
tt2tttttt..TtttT2TtttttttT22TttttttttttttT.ttt
tt2ttttttt.TtTT22tttttttttT222ttttttttttt.tttt
tt..tttttTT..222Ttttttttttttt22ttTTTTtt..TtttT
ttT.tttt.....TTT222TttttttttttT...TT...TttttT
ttt..tt...TTttttttt..TTttttttttt..3...Tttttt
tttT....TtttttttttttT@   TTttttt34.3.ttttttT
ttttT..tttttttttttttT      TTttttT..tttttT
ttttT..TtttttttttttT          ttttttttt
ttttt...ttttttttttT            ttttttt
tttttT..TttttttT                 TTT
ttttttt.@ttT
ttttttT
tttT
tT
t
ENDMAP
