1(kern-load "anne.scm")
2(kern-load "jones.scm")
3(kern-load "alex.scm")
4
5(mk-dungeon-room
6 'p_great_hall "Great Hall"
7 (list
8  "xx xx xx xx xx xx xx xx xx xx xx xx xx x! xx xx xx xx xx "
9  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
10  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
11  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
12  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
13  "xx ,, ,, ,, ,, xx xx ,, cc cc cc ,, xx xx ,, ,, ,, ,, xx "
14  "x! ,, ,, ,, ,, xx x! ,, cc cc cc ,, x! xx ,, ,, ,, ,, x! "
15  ",, ,, ,, ,, ,, ,, ,, ,, cc cc cc ,, ,, ,, ,, ,, ,, ,, ,, "
16  "cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc "
17  "cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc "
18  "cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc "
19  ",, ,, ,, ,, ,, ,, ,, ,, cc cc cc ,, ,, ,, ,, ,, ,, ,, ,, "
20  "x! ,, ,, ,, ,, xx x! ,, cc cc cc ,, x! xx ,, ,, ,, ,, x! "
21  "xx ,, ,, ,, ,, xx xx ,, cc cc cc ,, xx xx ,, ,, ,, ,, xx "
22  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
23  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
24  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
25  "xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
26  "xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx "
27  )
28
29 (put (mk-ladder-down 'p_pools 9 9) 9 6)
30
31  ;; secret wall mech
32  (put (mk-hidden-mech) 13 0)
33  (put (mk-disg-lvr 'gh_wall 's_wall_torch) 13 0)
34  (put (kern-tag 'gh_wall
35                 (mk-tblitter 'p_great_hall
36                              8
37                              0
38                              3
39                              1
40                              'm_hall_section))
41       0
42       0)
43
44  ;; militia
45  (put (spawn-pt 'halberdier) 8 8)
46  (put (spawn-pt 'halberdier) 8 10)
47  (put (spawn-pt 'crossbowman) 6 8)
48  (put (spawn-pt 'medik) 7 9)
49  (put (spawn-pt 'crossbowman) 6 10)
50
51  ;; death knights
52  (put (spawn-pt 'death-knight) 10 8)
53  (put (spawn-pt 'death-knight) 10 9)
54  (put (spawn-pt 'death-knight) 10 10)
55  (put (spawn-pt 'warlock)      12 9)
56
57  ;; skeletons
58  (put (spawn-pt 'skeletal-warrior) 9 13)
59  (put (spawn-pt 'skeletal-spear-thrower) 10 14)
60  )
61
62(mk-place-music p_great_hall 'ml-dungeon-adventure)
63
64(mk-dungeon-room
65 'p_paladins_hold "Paladin's Hold"
66 (list
67  "rn rn xx xx xx rn rn rn rn xx xx xx xx && xx xx xx xx xx "
68  "rn xx xx ,, xx xx rn rn xx x! ,, ,, ,, ,, ,, ,, ,, x! xx "
69  "xx xx ,, ,, ,, xx x! xx xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
70  "xx && ,, ,, ,, ,, ,, ,, ,, ,, ,, [[ @@ @@ @@ ]] ,, ,, xx "
71  "xx xx ,, ,, ,, xx ,, xx xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx "
72  "rn xx xx xx xx xx ,, xx xx x! ,, ,, ,, ,, ,, ,, ,, x! xx "
73  "rn rn xx xx xx xx ,, xx xx xx xx xx xx xx xx xx xx xx xx "
74  "rn rn xx x! ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, x! ,, ,, ,, ,, "
75  "rn rn xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, w+ ,, ,, ,, ,, "
76  "rn rn xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, "
77  "rn rn xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, w+ ,, ,, ,, ,, "
78  "rn rn xx x! ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, x! .. ,, ,, ,, "
79  "xx xx xx xx xx xx xx xx ,, xx xx xx xx xx xx xx xx xx xx "
80  "xx .A .R .M .S xx xx xx ,, xx xx xx xx .M .E .D .I .K xx "
81  "xx ,, ,, ,, ,, x! ,, ,, ,, ,, ,, ,, sH ,, ,, ,, ,, ,, xx "
82  "x! ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, x! "
83  "xx ,, ,, ,, ,, sA ,, ,, ,, ,, ,, ,, x! ,, ,, ,, ,, ,, xx "
84  "xx ,, ,, ,, ,, xx xx xx ,, xx xx xx xx ,, ,, ,, ,, ,, xx "
85  "xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx "
86  )
87 (put (kern-tag 'php1 (mk-portcullis)) 14 9)
88 (put (mk-clock) 3 1)
89 (put (mk-door) 5 15)
90 (put (mk-door) 12 15)
91 (put (mk-bed) 13 17)
92 (put (mk-bed) 15 17)
93 (put (mk-bed) 17 17)
94 (put (mk-bed) 17 15)
95 (put (mk-ladder-down 'p_forsaken_prison 9 9) 8 17)
96 (put (mk-ladder-up 'p_watchpoint 9 14) 3 9)
97 (put (mk-anne) 9 9)
98 (put (mk-jones) 9 9)
99 (put (mk-alex) 9 9)
100
101 (put (custom-pt 'put-gate-guard 'php1 'deep) 11 9)
102
103 ;; inner guard
104 (put (guard-pt 'crossbowman) 13 8)
105 (put (guard-pt 'crossbowman) 13 10)
106
107 ;; outer guard
108 (put (guard-pt 'halberdier) 15 10)
109 (put (guard-pt 'halberdier) 15 8)
110
111 ;; foes...
112 (put (spawn-pt 'death-knight) 17 9)
113 (put (spawn-pt 'skeletal-spear-thrower) 18 7)
114 (put (spawn-pt 'skeletal-spear-thrower) 18 11)
115
116 )
117
118(mk-place-music p_paladins_hold 'ml-castle)
119
120(mk-dungeon-room
121 'p_treasury "Treasury"
122 (list
123  "xx xx xx xx xx rn xx xx xx xx xx xx xx rn xx xx xx xx xx "
124  "xx ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, xx "
125  "xx ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, xx "
126  "xx ,, ,, ,, xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx ,, ,, ,, xx "
127  "xx xx xx xx xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx xx xx xx xx "
128  "rn xx xx ,, ,, ,, ,, ,, w+ xx w+ ,, ,, ,, ,, ,, xx xx rn "
129  "xx xx xx ,, ,, ,, ,, ,, w+ xx w+ ,, ,, ,, ,, ,, xx xx xx "
130  "xx ,, ,, ,, ,, ,, ,, ,, w+ xx w+ ,, ,, ,, ,, ,, ,, ,, xx "
131  "xx ,, ,, ,, ,, xx xx xx x! xx x! xx xx xx ,, ,, ,, ,, xx "
132  "xx ,, ,, ,, ,, xx rn rn xx ,, xx rn rn xx ,, ,, ,, ,, xx "
133  "xx ,, ,, ,, ,, xx xx xx x! xx x! xx xx xx ,, ,, ,, ,, xx "
134  "xx ,, ,, ,, ,, ,, ,, ,, xx rn xx ,, ,, ,, ,, ,, ,, ,, xx "
135  "xx xx xx ,, ,, ,, ,, ,, xx rn xx ,, ,, ,, ,, ,, xx xx xx "
136  "rn xx xx ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx xx rn "
137  "xx xx xx xx xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx xx xx xx xx "
138  "xx ,, ,, ,, xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx ,, ,, ,, xx "
139  "xx ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, xx "
140  "xx ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, xx "
141  "xx xx xx xx xx rn xx ,, ,, ,, ,, ,, xx rn xx xx xx xx xx "
142  )
143 ;; four corner blitters and levers
144 (put (kern-tag 'tr-ba
145                (mk-tblitter 'p_treasury
146                             2 2
147                             3 3
148                             'm_hall_section)) 2 2)
149 (put (kern-tag 'tr-bb
150                (mk-tblitter 'p_treasury
151                             14 2
152                             3 3
153                             'm_hall_section)) 14 2)
154 (put (kern-tag 'tr-bc
155                (mk-tblitter 'p_treasury
156                             14 14
157                             3 3
158                             'm_hall_section)) 14 14)
159 (put (kern-tag 'tr-bd
160                (mk-tblitter 'p_treasury
161                             2 14
162                             3 3
163                             'm_hall_section)) 2 14)
164 (put (mk-lever 'tr-ba) 11 11)
165 (put (mk-lever 'tr-bb) 7 11)
166 (put (mk-lever 'tr-bc) 7 7)
167 (put (mk-lever 'tr-bd) 11 7)
168
169 ;; four center blitters and levers
170 (put (kern-tag 'tr-be1
171                (mk-tblitter 'p_treasury
172                             9 5
173                             1 1
174                             'm_hall_section)) 9 5)
175 (put (kern-tag 'tr-be2
176                (mk-tblitter 'p_treasury
177                             9 6
178                             1 1
179                             'm_hall_section)) 9 6)
180 (put (kern-tag 'tr-be3
181                (mk-tblitter 'p_treasury
182                             9 7
183                             1 1
184                             'm_hall_section)) 9 7)
185 (put (kern-tag 'tr-be4
186                (mk-tblitter 'p_treasury
187                             9 8
188                             1 1
189                             'm_hall_section)) 9 8)
190 (put (mk-lever 'tr-be1) 1 1)
191 (put (mk-lever 'tr-be2) 17 1)
192 (put (mk-lever 'tr-be3) 17 17)
193 (put (mk-lever 'tr-be4) 1 17)
194
195 (put (mk-ladder-up 'p_treasury2 9 9) 9 9)
196
197)
198
199;; slimes in NE corner
200(foldr-rect p_treasury 15 1 3 3
201            (lambda (x loc) (kern-obj-put-at (spawn-pt 'green-slime) loc))
202            #f)
203
204;; skeletal warriors in SE corner
205(foldr-rect p_treasury 15 15 3 3
206            (lambda (x loc) (kern-obj-put-at (spawn-pt 'skeletal-warrior) loc))
207            #f)
208
209;; headless in SW corner
210(foldr-rect p_treasury 1 1 3 3
211            (lambda (x loc) (kern-obj-put-at (spawn-pt 'headless) loc))
212            #f)
213
214;; spiders in NW corner
215(foldr-rect p_treasury 1 15 3 3
216            (lambda (x loc) (kern-obj-put-at (spawn-pt 'giant-spider) loc))
217            #f)
218
219(mk-place-music p_treasury 'ml-dungeon-adventure)
220
221
222(mk-dungeon-room
223 'p_death_knights_hold "Death Knight's Hold"
224 (list
225		"xx xx xx xx xx xx xx xx xx xx xx r8 r8 r8 r8 r8 rn rn rn "
226		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx .. .. .. bb bb ra rn rn "
227		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, .. .. .. .. bb ra rn "
228		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx ,, .. .. .. .. .. bb r2 "
229		"xx xx xx xx ,, ,, ,, xx xx xx xx ,, ,, ,, ,, .. .. .. r2 "
230		",, ,, ,, xx ,, ,, ,, xx ,, ,, ,, ,, xx xx ,, xx xx xx xx "
231		",, ,, ,, xx w+ w+ w+ xx ,, ,, ,, ,, xx ,, ,, ,, ,, ,, xx "
232		",, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx "
233		",, ,, ,, ,, ,, ,, ,, ,, ,, ,, w+ ,, ,, ,, ,, ,, ,, ,, xx "
234		",, ,, ,, ,, ,, ,, ,, ,, ,, ,, w+ ,, ,, ,, ,, ,, ,, ,, xx "
235		",, ,, ,, ,, ,, ,, ,, ,, ,, ,, w+ ,, ,, ,, ,, ,, ,, ,, xx "
236		",, ,, ,, ,, ,, ,, ,, ,, ,, ,, xx xx xx ,, ,, ,, ,, ,, xx "
237		",, ,, ,, xx w+ w+ w+ xx ,, ,, ,, ,, xx ,, ,, ,, ,, ,, xx "
238		",, ,, ,, xx ,, ,, ,, xx ,, ,, ,, ,, xx xx ,, xx xx xx xx "
239		"xx xx xx xx ,, ,, ,, xx xx xx xx ,, ,, ,, ,, .. .. .. r2 "
240		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx ,, .. .. .. .. .. bb r2 "
241		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, .. .. .. .. bb rb rn "
242		"xx ,, ,, ,, ,, ,, ,, ,, ,, ,, xx .. .. .. bb bb .. bb r2 "
243		"xx xx xx xx xx xx xx xx xx xx xx r1 r1 r1 r1 r1 r1 r1 rn "
244                  )
245 (put (mk-locked-door) 10 2)
246 (put (mk-magic-locked-door) 14 5)
247 (put (mk-magic-locked-door) 14 13)
248 (put (mk-locked-door) 10 16)
249 (put (mk-ladder-down 'p_altar_room 17 17) 17 9)
250
251 ;; defenders
252 (put (guard-pt 'craven-archer)  5  5)
253 (put (guard-pt 'craven-archer)  5 13)
254 (put (guard-pt 'craven-archer) 11  9)
255 (put (spawn-pt 'death-knight)  14  2)
256 (put (spawn-pt 'death-knight)  14 16)
257 (put (spawn-pt 'death-knight)   7  9)
258 (put (guard-pt 'death-knight)   9  2)
259 (put (guard-pt 'death-knight)   9 16)
260 (put (guard-pt 'death-knight)  14  6)
261 (put (guard-pt 'death-knight)  14 12)
262 (put (guard-pt 'warlock)       14  9)
263
264)
265
266(mk-place-music p_death_knights_hold 'ml-dungeon-adventure)
267
268(mk-dungeon-level
269 (list nil              p_treasury   nil)
270 (list p_paladins_hold  p_great_hall p_death_knights_hold)
271 (list nil              nil          nil)
272 )
273