1;;---------------------------------------------------------------------------- 2;; Constants 3;;---------------------------------------------------------------------------- 4(define joel-lvl 3) 5(define joel-species sp_human) 6(define joel-occ nil) 7 8;;---------------------------------------------------------------------------- 9;; Schedule 10;; 11;; In front of the Gate to Absalot. 12;;---------------------------------------------------------------------------- 13(define joel-bed (list 'p_gate_to_absalot 8 9 1 1)) 14(define joel-mealplace joel-bed) 15(define joel-workplace (list 'p_gate_to_absalot 7 10 5 5)) 16(define joel-leisureplace joel-workplace) 17(kern-mk-sched 'sch_joel 18 (list 0 0 joel-bed "sleeping") 19 (list 5 0 joel-mealplace "eating") 20 (list 6 0 joel-workplace "working") 21 (list 12 0 joel-mealplace "eating") 22 (list 13 0 joel-workplace "working") 23 (list 18 0 joel-mealplace "eating") 24 (list 19 0 joel-leisureplace "idle") 25 (list 21 0 joel-bed "sleeping") 26 ) 27 28;;---------------------------------------------------------------------------- 29;; Gob 30;;---------------------------------------------------------------------------- 31(define (joel-mk) nil) 32 33;;---------------------------------------------------------------------------- 34;; Conv 35;; 36;; Joel is a simple cowherd, whose stock is grazing in front of 37;; the gates to the destroyed city of Absalot. 38;;---------------------------------------------------------------------------- 39 40;; Basics... 41(define (joel-hail knpc kpc) 42 (kern-log-msg "You meet a laconic herder.") 43 (say knpc "Hi") 44 ) 45 46(define (joel-default knpc kpc) 47 (say knpc "Don't know, pardner.")) 48 49(define (joel-name knpc kpc) 50 (say knpc "Joel.")) 51 52(define (joel-join knpc kpc) 53 (say knpc "Nope.")) 54 55(define (joel-job knpc kpc) 56 (say knpc "I herd my cows here. Nice and peaceful.")) 57 58(define (joel-peac knpc kpc) 59 (say knpc "Yep. This is the old gate to Absalot.")) 60 61(define (joel-absa knpc kpc) 62 (say knpc "You're not thinking of going in there, are you?") 63 (if (yes? kpc) 64 (say knpc "Crazy. Theres nasty stuff down there.") 65 (say knpc "Don't blame you."))) 66 67(define (joel-nast knpc kpc) 68 (say knpc "Gazers? Undead? Who knows what else? The place was bad enough before " 69 "the paladins sealed it up and left it to fester.")) 70 71(define (joel-fest knpc kpc) 72 (say knpc "Paladins from Glasdrin destroyed Absalot. And when humans get out of the way, " 73 "monsters move in.")) 74 75(define (joel-gaze knpc kpc) 76 (say knpc "Mind-slavers. And whatever they're controlling. " 77 "If you dont watch out you'll wind up their slaves too.")) 78 79(define (joel-unde knpc kpc) 80 (say knpc "Ghosts, skeletons, and I'd rather not know what else.")) 81 82(define (joel-bye knpc kpc) 83 (say knpc "So long")) 84 85(define joel-conv 86 (ifc basic-conv 87 88 ;; basics 89 (method 'default joel-default) 90 (method 'hail joel-hail) 91 (method 'bye joel-bye) 92 (method 'job joel-job) 93 (method 'name joel-name) 94 (method 'join joel-join) 95 96 (method 'peac joel-peac) 97 (method 'nice joel-peac) 98 (method 'absa joel-absa) 99 (method 'nast joel-nast) 100 (method 'stuf joel-nast) 101 (method 'mons joel-nast) 102 (method 'fest joel-fest) 103 (method 'pala joel-fest) 104 (method 'unde joel-unde) 105 (method 'gaze joel-gaze) 106 )) 107 108(define (mk-joel) 109 (bind 110 (kern-mk-char 111 'ch_joel ; tag 112 "Joel" ; name 113 joel-species ; species 114 joel-occ ; occ 115 s_companion_shepherd ; sprite 116 faction-men ; starting alignment 117 1 0 1 ; str/int/dex 118 0 0 ; hp mod/mult 119 0 0 ; mp mod/mult 120 max-health ; hp 121 -1 ; xp 122 max-health ; mp 123 0 124 joel-lvl 125 #f ; dead 126 'joel-conv ; conv 127 sch_joel ; sched 128 'townsman-ai ; special ai 129 nil ; container 130 (list t_staff 131 ) ; readied 132 ) 133 (joel-mk))) 134