1 ;;----------------------------------------------------------------------------
3 ;;----------------------------------------------------------------------------
5 ;;----------------------------------------------------------------------------
8 ;; The schedule below is for the place "Trigrave"
9 ;;----------------------------------------------------------------------------
10 (kern-mk-sched 'sch_chant
11 (list 0 0 trigrave-east-west-road "drunk")
12 (list 2 0 trigrave-chants-bed "sleeping")
13 (list 12 0 trigrave-tavern-hall "working")
14 (list 23 0 trigrave-east-west-road "drunk")
17 ;;----------------------------------------------------------------------------
20 ;; Quest flags, etc, go here.
21 ;;----------------------------------------------------------------------------
22 (define (chant-mk) (list 0))
23 (define (chant-get-gold knpc) (car (kobj-gob-data knpc)))
24 (define (chant-has-gold? knpc) (> (chant-get-gold knpc) 0))
25 (define (chant-set-gold! knpc amount)
27 (set-car! (kobj-gob-data knpc)
29 (define (chant-dec-gold! knpc) (chant-set-gold! knpc
30 (- (chant-get-gold knpc)
33 ;; ----------------------------------------------------------------------------
36 ;; Chanticleer is a roaming bard who spends most of his time in Trigrave. He's
37 ;; a confident, easy-going fellow who is also an unstoppable showman. He
38 ;; possesses a great deal of knowledge about the region, loves rumours and
39 ;; gossip, has friends in low and high places (uncluding the reclusive
40 ;; Enchanter) and is probably a spy for *somebody* but it isn't clear who.
42 ;; ----------------------------------------------------------------------------
43 (define (chant-song knpc kpc)
45 (say knpc "All together now! Row, row, row your boat! [Hee hee hee!]")
47 (say knpc "A thousand songs wait caged behind the bars of my dry "
48 "throat! Perhaps a little coin to whet the pipes? [He looks at "
49 "you expectantly. Do you give him some gold?]")
50 (if (kern-conv-get-yes-no? kpc)
51 ;; yes - give chant some gold
52 (let ((amount (kern-conv-get-amount)))
53 (display "amount=")(display amount)(newline)
55 (say knpc "An imaginary song then, for your imaginary "
56 "gold! [He pretends to play his lute]"))
58 (say knpc "Yes... I see. Here goes:\n"
59 "There was a Wanderer oh so cheap\n"
60 "He wanted all his gold to keep\n"
61 "And when he mocked poor Chanticleer\n"
62 "The sound of discord filled his ear!\n"
63 " [He strikes a loud, brash, chord and bows]"))
65 (say knpc "That will fill my yearning mug! "
66 "Now, of what would you hear? Of Fen, Forest "
67 "or Forgotten places?")
68 (chant-set-gold! knpc amount))))
69 ;; no -- don't give him some gold
70 (say knpc "A sober bard doesn't do anybody any good!")))))
72 (define (chant-fen knpc kpc)
74 (say knpc "Nazzty place! [Hic]")
75 (if (not (chant-has-gold? knpc))
78 (chant-dec-gold! knpc)
83 " biting flies, and farting bogs,\n"
84 " dismal skies, man-sized frogs,\n"
85 " evil altars, muck-filled boots,\n"
86 " mislaid rangers (wary of strangers),\n"
87 " trackless wastes,\n"
89 " and skeletal warriors, too...\n"
91 " to the northern Fen!\n"
92 " For that's the place for you.\n")))))
94 (define (chant-forest knpc kpc)
96 (say knpc "Run, Forest, run! [Hee-hee]")
97 (if (not (chant-has-gold? knpc))
100 (chant-dec-gold! knpc)
102 "THE EASTERN WOODS\n"
104 "The woods are lovely, dark and deep\n"
105 "and always hungry, too!\n"
106 "They've eaten many travelers\n"
107 "and gulped a king or two.\n"
109 "There goblins lurk and bandits hide\n"
110 "and giant spiders drool,\n"
111 "So if you go there don't forget\n"
112 "to bring a slower fool!\n"
115 (define (chant-forgotten knpc kpc)
117 (say knpc "I don't remember! [he weeps with laughter]")
118 (if (not (chant-has-gold? knpc))
119 (chant-song knpc kpc)
121 (chant-dec-gold! knpc)
125 "Delving ever deeper,\n"
126 "They woke the ancient sleeper,\n"
127 "You know the tale\n"
128 "(The moral's stale)\n"
129 "So I won't bore you with detail!\n"
131 "[stops playing] If you simply MUST go investigate, "
132 "search the southern coast.")
133 (if (null? (quest-data-getvalue 'questentry-rune-l 'know-hall))
134 (quest-data-update-with 'questentry-rune-l 'approx-hall 1 (quest-notify nil))
138 (define (chant-thie knpc kpc)
141 "Hey diddle riddle,\n"
142 "You're in the middle!\n"
143 "When Kalcifax jumped through moon\n"
144 "The Necromage laughed to see such sport\n"
145 "And the Thief ran away with the Rune!")
146 (say knpc "So Enchy has you looking too? The thief must have avoided this "
147 "town, but travelers may have crossed his path. Ask Gwen.")))
149 (define (chant-man knpc kpc)
152 (say knpc "HEY! Can you keep a zecret?")
155 (say knpc "The MAN haz a zecret cave. You know where it iz?")
157 (say knpc "Me too! [Hee-hee!]")
158 (say knpc "The mountain at ["
159 (loc-x the-mans-hideout-loc) " "
160 (loc-y the-mans-hideout-loc)
161 "] izn't really a mountain! Go zurprize him!")))
162 (say knpc "Me neither! [He snorts]")))
163 (say knpc "The MAN? I don't know anything about the MAN. Why are you asking me?")))
167 ;; default if the only "keyword" which may (indeed must!) be longer than
168 ;; 4 characters. The 4-char limit arises from the kernel's practice of
169 ;; truncating all player queries to the first four characters. Default,
170 ;; on the other hand, is a feature of the ifc mechanism (see ifc.scm).
174 (say knpc "I's drunk... [hic]")
175 (say knpc "I am at a loss."))))
179 (say knpc "[Saluting drunkenly] Hail to the cheese!")
180 (say knpc "Well met, my fine fellow!"))))
184 (say knpc "Buhhhh-bye [snicker]")
185 (say knpc "May the road kiss your feet!"))))
189 (say knpc "[Overdramatically, he points to his eyes, "
190 "then his ears, then makes a zipping motion on his "
191 "mouth, nods sagely and winks]")
192 (say knpc "I am a very vessel of wit and song!"))))
196 (say knpc "Chantibard! [He tries to bow but falls down]")
197 (say knpc "Chanticleer the Bard, at your service "
198 "[He bows and flourishes]"))))
202 (say knpc "Join you for a drink? "
203 "I thought you'd never azzk!")
204 (say knpc "Some bards adventure, others are wise. "
205 "I am among the latter."))))
210 (say knpc "[Hic!] Whooze that maudlin, drunken fool,\n"
211 "Who plaize the tung like beast made man...")
214 " Who is that wise, enchanting bard,\n"
215 " Who plays the lute like song made flesh\n"
216 " And tells tales Fate herself would tell\n"
217 " If Fate could only lie so well?"))))
221 (say knpc "e's furgotten mor' 'an I'll ever know!")
223 "Our distinguished shopkeeper...\n"
225 " There once was a master of flame\n"
226 " As a warmage he gathered great fame\n"
227 " But as you can tell\n"
228 " He tried a bad spell\n"
229 " And now can't remember his name!\n"
235 (say knpc "Enchy! Sits in his comfy tower, giving "
236 "orders, while Chant has to make the rounds!")
238 "My travels sometimes take me to the "
239 "Enchanter's Tower."))))
243 (say knpc "[He leans in close and whispers loudly] "
244 "Ever seen a witch carry a sword?")
246 "Ah, our mysterious innkeeper...\n"
248 " When the gray dove is weeping\n"
249 " And the whole world is sleeping\n"
250 " When ghosts rise like mist from the sea\n"
251 " The owl in the moonlight\n"
252 " Inquires of the still night\n"
253 " The question we all ask of she!\n"))))
254 (method 'fen chant-fen)
255 (method 'fore chant-forest)
256 (method 'forg chant-forgotten)
260 (say knpc "A knight turned inside out! [Burp!]")
262 "Ha! Here's a bit of gossip!\n"
264 " Full fell and grim\n"
265 " the righteous Jim,\n"
266 " His armour slicked in gore,\n"
267 " Slew his master on the field,\n"
268 " Scratched the emblem from his shield\n"
269 " And fled that cursed shore."
274 (say knpc "Azzright! I watches the roads, "
275 "watching for them...")
276 (say knpc "What a strange thing to inquire about!"))))
277 (method 'song chant-song)
281 (say knpc "[Hissing] THEM! The Enemy of the Wise! Shhh!")
282 (say knpc "[Looking at you with mock suspicion] "
283 "Are you sure you're not paranoid?"))))
284 (method 'thie chant-thie)
289 (say knpc "Deprezzing place!")
291 "It watches the Fen to the north, "
292 "but if you're thinking of going there, "
293 "know that the Enchanter does not like visitors!"))))
297 (say knpc "Well, gossip really. Give me a name, I'll give "
301 (say knpc "Well, I wouldn't be a bard if I didn't know a song about the fabled Lost Halls!")))
302 (method 'man chant-man)
303 (method 'wrog chant-man)