1 ;;----------------------------------------------------------------------------
4 ;; The schedule below is for the place "Trigrave"
5 ;;----------------------------------------------------------------------------
6 (kern-mk-sched 'sch_earl
7 (list 0 0 trigrave-earls-bed "sleeping")
8 (list 5 0 trigrave-tavern-table-3a "eating")
9 (list 6 0 trigrave-earls-counter "working")
10 (list 12 0 trigrave-tavern-table-3a "eating")
11 (list 13 0 trigrave-earls-counter "working")
12 (list 18 0 trigrave-tavern-table-3a "eating")
13 (list 19 0 trigrave-tavern-hall "idle")
14 (list 20 0 trigrave-earls-room "idle")
15 (list 21 0 trigrave-earls-bed "sleeping")
18 ;;----------------------------------------------------------------------------
21 ;; Quest flags, etc, go here.
22 ;;----------------------------------------------------------------------------
23 (define (earl-mk) nil)
25 ;;----------------------------------------------------------------------------
28 ;; Earl is a merchant, and will trade with the player if he's at work.
29 ;; ...(removed some text which seems to have come from Jim.scm)...
30 ;;----------------------------------------------------------------------------
31 (define earl-merch-msgs
32 (list "Come by my shop when I'm open. It's the Dry Goods store in the southwest corner, open from 6:00AM to 6:00PM."
33 "Here's what I have in stock right now."
34 "Well, ok, let me see what you have to offer."
35 "Step right up to the counter."
36 "Tell 'em you got it at Earl's."
37 "Just window-shopping? All right."
38 "I'll put this in the back and clean it up later."
39 "Come back later when you've got something else to offer, then."
40 "Finished already? Suit yourself."
41 "Let me know if there's anything else."
46 (list t_torch 5 "You don't want to run out of torches at the bottom of a dungeon.")
47 (list t_sling 50 "The sling is just the thing for cheapskates who don't want to buy ammo.")
48 (list t_staff 25 "A mage without a staff is like a dog without a bark.")
50 (list t_heal_potion 22 "You want to keep plenty of these in your emergency kit.")
51 (list t_cure_potion 22 "Headed north? You'll want some of these when travelling the Fens.")
52 (list t_mana_potion 22 "This is just the thing when you're in a spot where you can't camp and your mages are exhausted.")
54 (list t_arrow 1 "If you've got a bow then you can't have too many arrows.")
55 (list t_bolt 1 "I've got the least expensive bolts anywhere around.")
56 (list t_smoke_bomb 3 "Just throw these smoke bombs at enemy archers and they won't be able to see you.")
58 (list t_shovel 50 "When you find that buried treasure you'll want a shovel to dig it up.")
59 (list t_pick 50 "A pick is essential for busting up boulders that block your path.")
61 (list t_sextant 500 "You can figure your location anywhere in the wilderness with one of these without wasting any reagents or scrolls.")
62 (list t_chrono 300 "This little timepiece is invaluable when there aren't any clocks around.")
63 (list t_grease 23 "Wrogues seem to like this stuff. I'm afraid to ask why.")
66 (define (earl-trade knpc kpc) (conv-trade knpc kpc "trade" earl-merch-msgs earl-catalog))
70 ;; default if the only "keyword" which may (indeed must!) be longer than
71 ;; 4 characters. The 4-char limit arises from the kernel's practice of
72 ;; truncating all player queries to the first four characters. Default,
73 ;; on the other hand, is a feature of the ifc mechanism (see ifc.scm).
74 (method 'default (lambda (knpc kpc) (say knpc "I forgot.")))
75 (method 'hail (lambda (knpc kpc) (say knpc "Welcome, stranger.")))
76 (method 'bye (lambda (knpc kpc) (say knpc "Oh, were we talking? Bye.")))
77 (method 'job (lambda (knpc kpc) (say knpc "I keep the store. Need something?")
78 (if (kern-conv-get-yes-no? kpc)
81 (method 'name (lambda (knpc kpc) (say knpc "[He thinks for a minute] Earl! That's it!")))
82 (method 'buy (lambda (knpc kpc) (conv-trade knpc kpc "buy" earl-merch-msgs earl-catalog)))
83 (method 'sell (lambda (knpc kpc) (conv-trade knpc kpc "sell" earl-merch-msgs earl-catalog)))
84 (method 'trad earl-trade)
85 (method 'join (lambda (knpc kpc) (say knpc "You're too late! I forgot all my spells.")))
89 (say knpc "Yep. I fought with Lord Calvin against the "
93 (say knpc "Now there was a warlord! Calvin conquered "
94 "everything from the Gray Sea to the Northern Rim!")))
97 (say knpc "In those days the Goblins were united under one "
98 "chieftain, and threatened the whole Peninsula! By the "
99 "time Lord Calvin was done with them they were scattered "
100 "and hiding in the hills. They've never recovered!")))
103 (say knpc "I've forgotten all my magic. I even lost my wand! "
104 "I once knew spells that would slay whole armies.")))
107 (say knpc "I was a battle mage once. Long ago.")))
110 (say knpc "I saw a stranger fleeing west! No, south! No... Oh, drat, I can't remember.")))