1;;----------------------------------------------------------------------------
2;; Map
3;;----------------------------------------------------------------------------
4(kern-mk-map
5 'm_bole 48 39 pal_expanded
6	(list
7		"^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ~6 ^a ^^ ^c ~6 ^a ^^ ^^ ~6 || || || || || || || || || ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
8		"^^ ^^ ^^ ^^ ^c t7 ^^ ^^ ^^ ^^ ^^ ^^ ^^ ~6 |B || |% ~6 |# |% ^e ~6 || || || || || || || || || ^a ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
9		"^^ ^^ ^c t3 tt tc {5 ^^ ^^ ^^ ^^ ^^ ^^ ~a ~5 |A |C ~6 |A |C ~3 ~c || || || || || || || || || |% ^a ^^ ^^ ^^ ^^ ^c |& ^a ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
10		"^^ ^^ t3 tt tc t# .. {1 {5 ^^ ^^ ^^ ^c |& ~a ~1 ~~ ~~ ~~ ~1 ~c |# || || || || || || || || || || |% ^^ ^^ ^c |# || || |% ^e t3 tt tt tt t5 ^^ ^^ "
11		"^^ ^c tt t# .. .. .. .. .. {5 ^c tb tt || |% ~a ~~ bb ~~ ~c |# || || || tt tt tt tt tt tt tt tt || ^a ^c |# || || || || tt tc bb .. bb te ^a ^^ "
12		"^^ t3 tc .. .. .. .. .. .. .. bb .. t% tt || tH ~a ~~ ~c tG || || || tc t# .. .. .. t% ta tt tt || || || || || || |C ^7 tt bb .. .. .. bb t7 ^^ "
13		"^^ tt t# .. .. .. .. .. .. bb .. .. .. ta tt tt td ~6 tb tt || || tt t# tC t3 tt t5 tA .. t% ta tt tt tt || || || ^3 ^^ tt .. .. .. .. tb tt ^^ "
14		"^^ tt .. .. rr rr rr rr rr rr rr .. .. .. .. .. .. == .. t% ta tt tc .. t3 || || || || t5 .. .. .. t% tt || || |C ^^ ^^ tt bb .. .. .. bb tt ^^ "
15		"^^ tt .. .. rr .. .. .. .. .. rr .. .. tC t3 tt td ~6 t7 tA .. .. .. tC tt || || || || tt tA .. .. tC tt || |C ^3 ^^ ^^ ta t5 bb .. bb t3 tc ^^ "
16		"^^ tt .. .. rr .. .. .. .. .. rr .. .. t3 || || ~3 ~c || tt tt tt tt tt || || || || || tt t5 .. .. t3 tt || ^3 ^^ ^^ ^^ ^5 ta tt tt tt tc ^3 ^^ "
17		"^^ tt .. .. rr .. .. && .. .. .. .. .. tt || || ~6 |# || || || || || || || || || || || || tt .. tC tt || |C ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
18		"^^ tt .. .. rr .. .. .. .. .. rr .. .. tt || |C ~6 || || || || || || || || || || tt tt tt tc .. t3 || |C ^3 ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
19		"^^ tt .. .. rr .. .. .. .. .. rr .. .. tt || ~3 ~c tt tt tt tt tt tt tt tt || || tt t# .. .. tC tt || ^b ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
20		"^^ tt .. .. rr rr rr .. rr rr rr .. .. || |C ~6 t3 tt tt tt tt tt tt tt tt tt || tt .. t3 tt tt || || |% ^a ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
21		"^^ tt tA .. .. .. .. .. .. bb .. .. tC || ~3 ~c tt xx xx xx xx xx xx xx xx tt tt tc .. tt tt tt tt tt tt t5 ^a ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
22		"^^ tt t5 tA .. .. .. .. bb {8 tC t3 tt || ~6 t3 tt xx cc cc cc cc cc cc xx te bb .. tC tt tt tt tt tt tt tt tt td ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
23		"^^ ta tt t5 .. .. .. {c ^^ ^c t3 tt || || ~6 tt tt xx cc xx cc cc cc cc xx .. .. .. t3 tt xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx ^^ ^^ "
24		"^^ ^5 tt tt tA .. {c ^^ ^^ t3 tt || tt tc ~6 tt tt xx xx xx cc cc cc cc cc .. .. bb tt tt xx cc cc cc cc cc x! cc cc xx cc cc cc cc cc xx ^^ ^^ "
25		"^^ ^^ ta tt tt td ^^ ^^ ^c tt tt || tt ~3 ~c tt tt tt t5 xx cc cc cc cc xx .. .. tb tt tt xx cc cc x! cc cc cc cc cc xx cc cc cc cc cc xx ^^ ^^ "
26		"^^ ^^ ^5 ta tc ^3 ^^ ^^ t3 tt tt || tt ~6 t3 tt tt tt tt xx cc cc cc cc xx .. .. bb tt tt xx xx xx xx cc cc xx xx xx xx cc cc cc cc cc xx ^^ ^^ "
27		"^^ ^^ ^^ ^^ ^^ ^^ ^^ ^c tt || || tt tc ~6 tt || || tt tt xx xx xx && xx xx .. .. .. ta tt xx cc cc cc cc cc cc cc cc xx cc cc cc cc cc xx ^^ ^^ "
28		"^^ ^^ ^^ ^^ ^^ ^^ ^c t3 tt || tt tc ~3 ~c tt || || tt tt tt t5 xx xx xx t7 bb .. .. bb tt xx cc cc x! cc cc x! cc cc xx cc cc cc cc cc xx ^^ ^^ "
29		"^^ ^^ ^^ ^^ ^^ t3 tt tt tt tt tc ~3 ~c t3 tt || || || tt tt tt tt tt tt tt td .. .. tb tt xx xx xx xx cc cc xx xx xx xx xx xx xx cc cc xx ^^ ^^ "
30		"^^ ^^ ^^ ^^ ^^ tt || || || tt ~3 ~c t3 tt || || || || || || tt tt tt tt tt bb .. .. bb tt xx cc cc cc cc cc cc cc cc cc cc 00 xx cc cc xx ^^ ^^ "
31		"^^ ^^ ^^ ^^ ^^ tt || || tt tc ~6 t3 tt || || || || || || || || || tt tt tt td .. .. tb tt xx cc cc cc cc cc cc cc cc cc cc 00 xx cc cc xx ^^ ^^ "
32		"^^ |& ^a ^^ ^c ta tt tt tc ~3 ~c tt || || || || || || || || || || || tt bb .. .. .. bb te xx cc cc 00 cc cc xx xx xx cc cc cc cc cc cc xx ^^ ^^ "
33		"|| || |% ^a td td ta tL ~3 ~4 t3 tt || || || || || || || || || || || tc .. .. .. .. .. .. sI cc cc 00 cc cc && xx && cc cc cc xx cc cc xx ^^ ^^ "
34		"|| || tt td td tL ~3 ~~ ~~ ~4 tt || || || || || || tt tt tt || || || bb .. .. .. .. .. .. cc cc cc 00 cc cc && xx && cc cc cc xx xx xx xx ^^ ^^ "
35		"|| tt tt ~3 ~1 ~~ ~~ ~~ ~~ ~4 tt || || || || || tt tt tt tt tt || || t5 .. .. .. .. .. .. xx cc cc 00 cc cc xx xx xx cc cc cc cc cc cc xx ^^ ^^ "
36		"tt tt tt ~2 ~~ b~ ~~ ~~ ~~ ~c tt || || || || tt tt tc ^7 ta tt tt || tt bb .. .. .. bb t7 xx cc cc cc cc cc cc cc cc cc cc 00 xx cc cc xx ^^ ^^ "
37		"tt tt tt ~a ~~ ~~ ~~ b~ ~~ tG tt || || || tt tt tc ^3 ^^ ^5 ta tt || || tt td .. .. tb tt xx cc cc cc cc cc cc cc cc cc cc 00 xx cc cc xx ^^ ^^ "
38		"tt tt tt tH ~a ~~ ~~ ~~ ~c tt || || || || tt tt ^b ^^ ^^ ^^ ^d tt tt || || bb .. .. bb tt xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx ^^ ^^ "
39		"|| tt tt tt tH ~a ~8 ~c tG tt || || || || tt tt t5 ^a ^^ ^c t3 tt tt || || td .. .. tb tt tt tt tt tt tt tt tt tt tt tt tt tt tt tt t5 ^^ ^^ ^^ "
40		"|| || || tt tt tt tt tt tt || || || tt tt tt tt tt tt tt tt tt tt || || tt bb .. .. bb tt tt tt tt tt tt tt tt tt tt tt tt tt tt tt tt t5 ^a ^^ "
41		"|| || || || || tt tt tt || || || tt tt tt tt tt tt tt tt tt tt || || || tc .. .. .. tb tt tt || || || || || || || || || || || tt tt tt tt td ^^ "
42		"|| || || || || tt bb tt || || tt tt bb tt || || || || || || || || || || bb .. .. .. bb || || || || || || || || || || || || || || || tt tc ^3 ^^ "
43		"|| || || || || tt tt tt tt tt tt tt tt tt || || || || || || || || || || td .. .. tb tt || || || || || || || || || || || || || || || tt ^b ^^ ^^ "
44		"|| || || || || || tt tt tt tt tt tt || || || || || || || || || || || || bb .. .. bb || || || || || || || || || || || || || || || || tt t5 ^a ^^ "
45		"|| || || || || || || || || || || || || || || || || || || || || || || || t5 .. .. t3 || || || || || || || || || || || || || || || || || tt t5 ^^ "
46	)
47)
48
49;;----------------------------------------------------------------------------
50;; Characters
51;;----------------------------------------------------------------------------
52(kern-load "may.scm")
53(mk-may)
54
55(kern-load "kathryn.scm")
56(mk-kathryn)
57
58(kern-load "thud.scm")
59(mk-thud)
60
61(kern-load "bill.scm")
62(mk-bill)
63
64(kern-load "melvin.scm")
65(mk-melvin)
66
67(kern-load "hackle.scm")
68(mk-hackle)
69
70;;----------------------------------------------------------------------------
71;; Place
72;;----------------------------------------------------------------------------
73(kern-mk-place
74 'p_bole     ; tag
75 "Bole"      ; name
76 s_hamlet           ; sprite
77 m_bole             ; map
78 #f                 ; wraps
79 #f                 ; underground
80 #f                 ; large-scale (wilderness)
81 #f                 ; tmp combat place
82 nil ; subplaces
83 nil ; neighbors
84 (list ;; objects
85
86   ;; Tag the special door used as the player's guest room:
87   (list (kern-tag 'bole-inn-room-door (mk-locked-door)) 33 17)
88
89   (list (mk-locked-door) 36 18)
90   (list (mk-locked-door) 33 20)
91   (list (mk-locked-door) 36 20)
92   (list (mk-locked-door) 42 25)
93   (list (mk-door) 42 28)
94   (list (mk-windowed-door) 30 27)
95   (list (mk-bed) 31 18)
96   (list (mk-bed) 38 18)
97   (list (mk-bed) 31 21)
98   (list (mk-bed) 38 21)
99   (list (mk-bed) 40 17)
100   (list (mk-bed) 44 17)
101   (list (mk-clock) 35 17)
102
103   ;; Bill's hut
104   (list (mk-locked-door) 24 17)
105   (list (mk-locked-door) 19 15)
106   (list (mk-bed) 23 19)
107
108   ;; Hackle's hut
109   (list (mk-bed) 5 8)
110   (list (mk-windowed-door-in-rock) 7 13)
111   (list (mk-windowed-door-in-rock) 10 10)
112
113   ;; Thief's door
114   (put (mk-thief-door 'p_traps_1 4 16) 43 6)
115
116   ;; npc's
117   (list ch_may   44 17)
118   (list ch_kathryn 31 18)
119   (list ch_thud 32 18)
120   (list ch_bill  22 8)
121   (put ch_melvin 44 17)
122   (put ch_hackle 0 0)
123   (put (mk-npc 'bull 1) 6 4)
124   )
125
126 ;; on-entry-hook
127 (list 'lock-inn-room-doors)
128
129 (list ;; edge entrances
130  (list north 26 38)
131  (list east  0  30)
132  (list northeast 7 38)
133  (list northwest 45 38)
134  )
135
136 )
137
138(mk-place-music p_bole 'ml-small-town)
139
140;;-----------------------------------------------------------------------------
141;; Make a special cave for the dryad so it doen't kill the town with its wolves
142;;-----------------------------------------------------------------------------
143(kern-mk-map
144 'm_dryad_grove 19 19 pal_expanded
145	(list
146		"^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
147		"^^ ^^ ^^ ^^ ^c |# || || || || || || || || || || |% ^a ^^ "
148		"^^ ^^ ^^ {3 tb tt tt || || tt tt tt || || || || || |% ^^ "
149		"^^ ^^ {3 .. tD tt tt tt tt tc t& ta tt tt || || || || || "
150		"^^ ^c t7 tE t3 tt tt tt tt tB .. tD tt tt tt tt || || || "
151		"^^ |# tt tt tt || || tt tt t5 tE t3 tt tt tt tt tt tt tt "
152		"^^ || || || || || || || || tt tt tt || || tt tt tt tt tt "
153		"^^ || || || || || || || || || || || || || tt tt tc t# .. "
154		"^^ || || || || || || || || || || || || || tt tt t# .. .. "
155		"^^ || || || || || || || || || || || || || tt tt .. .. .. "
156		"^^ || || tt tt tt || || || || || || || || tt tt tA .. .. "
157		"^^ || tt tt tt tt tt || || || || || || || tt tt t5 tA .. "
158		"^^ || tt tt tt tt tt tt || || || || || tt tt tt tt tt tt "
159		"^^ || tt tt tt tt tt tt tt || || || || tt tt tt tt tt tt "
160		"^^ || tt tt tt tt tt tt tt || || || tt tt tt || || || || "
161		"^^ || || tt tt tt tt tt tt || || || tt tt tt || || || || "
162		"^^ || || || tt tt tt tt || || || tt tc t& ta tt || |C ^^ "
163		"^^ |A || || || || || || || || || tc t# {8 t% ta |C ^3 ^^ "
164		"^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ "
165	)
166 )
167(kern-mk-place
168 'p_dryad_grove ; tag
169 "Dryad Grove"   ; name
170 nil     ; sprite
171 m_dryad_grove  ; map
172 #f               ; wraps
173 #f                     ; underground
174 #f                     ; large-scale (wilderness)
175 #f                     ; tmp combat place
176 nil                    ; subplaces
177
178 ;; neighbors
179 (list
180  )
181
182 ;; objects
183 (list
184  (put (mk-npc 'dryad 8) 4 14)
185  (put (kern-mk-obj t_2H_axe 1) 5 15)
186  )
187
188 nil ; hooks
189 nil ; edge entrances
190 )
191
192(mk-dungeon-level
193 (list p_dryad_grove p_bole)
194 )
195
196(mk-place-music p_dryad_grove 'ml-small-town)
197