1;;----------------------------------------------------------------------------
2;; Constants
3;;----------------------------------------------------------------------------
4
5;;----------------------------------------------------------------------------
6;; Schedule
7;;
8;; In Oparine.
9;;----------------------------------------------------------------------------
10(kern-mk-sched 'sch_fing
11               (list 0  0  sea-witch-bay        "idle")
12               (list 6  0  sea-witch-shore      "idle")
13               (list 8  0  sea-witch-bay        "idle")
14               (list 20 0  sea-witch-shore      "idle")
15               )
16
17;;----------------------------------------------------------------------------
18;; Gob
19;;----------------------------------------------------------------------------
20(define (fing-mk) nil)
21
22;;----------------------------------------------------------------------------
23;; Conv
24;;
25;; Fing is a male Nixie, who is a Prince among his people.
26;; He dwells in Oparine, to be close to his true love, the human woman Lia.
27;;----------------------------------------------------------------------------
28
29;; Basics...
30(define (fing-hail knpc kpc)
31  (say knpc "[You meet a nixie] Hail, Landman."))
32
33(define (fing-default knpc kpc)
34  (say knpc "Perhaps another Landman would know about that."))
35
36(define (fing-name knpc kpc)
37  (say knpc "I am Fing."))
38
39(define (fing-join knpc kpc)
40  (say knpc "I cannot stray far from these shores."))
41
42(define (fing-job knpc kpc)
43  (say knpc "I am a prince among the Seamen of this valley... er, bay."))
44
45(define (fing-bye knpc kpc)
46  (say knpc "Farewell, Landman."))
47
48;; Shores...
49(define (fing-shor knpc kpc)
50  (say knpc "I must stay by the shore so I can be near my love."))
51
52(define (fing-love knpc kpc)
53  (say knpc "Although my beloved cannot leave the land, "
54       "she is a princess among the Sea People. "
55       "She is kind and true, and has not despaired even with her curse."))
56
57(define (fing-sea knpc kpc)
58  (say knpc "There are many kingdoms under the sea, many ruins, and caves, "
59       "sunken ships and great treasures. There are magicians, "
60       "and warriors, and mighty beasts! No offense, but the dry land "
61       "must be very dull in comparison."
62       ))
63
64(define (fing-curs knpc kpc)
65  (say knpc "It is a matter for the Sea People."))
66
67;; Townspeople...
68(define (fing-opar knpc kpc)
69  (say knpc "It's okay for you Landman, I suppose."))
70
71(define (fing-gher knpc kpc)
72  (say knpc "We admired her from below! So quick, so brutal! "
73       "Like a tempest disguised as a woman. Her crew, it seems, came to "
74       "a bad end."))
75
76(define (fing-crew knpc kpc)
77  (say knpc "Ghertie's crew sailed east to an island, went ashore, and never "
78       "returned. Her ship is no more."))
79
80(define (fing-alch knpc kpc)
81  (say knpc "He speaks to my love but I am not jealous. "
82       "He is too old and fat for any love potion to decieve her eyes!"))
83
84(define (fing-osca knpc kpc)
85  (say knpc "I know him not."))
86
87(define (fing-henr knpc kpc)
88  (say knpc "A brave Landman, from what I hear."))
89
90(define (fing-bart knpc kpc)
91  (say knpc "I have not seen many goblins. I think they fear the sea. "
92       "He is an oddity among them."))
93
94
95(define fing-conv
96  (ifc nil
97
98       ;; basics
99       (method 'default fing-default)
100       (method 'hail fing-hail)
101       (method 'bye fing-bye)
102       (method 'job fing-job)
103       (method 'name fing-name)
104       (method 'join fing-join)
105
106       ;; Shores
107       (method 'shor fing-shor)
108       (method 'love fing-love)
109       (method 'sea fing-sea)
110       (method 'deep fing-sea)
111       (method 'bay  fing-sea)
112       (method 'curs fing-curs)
113
114       ;; town & people
115       (method 'opar fing-opar)
116       (method 'alch fing-alch)
117       (method 'gher fing-gher)
118       (method 'crew fing-crew)
119       (method 'osca fing-osca)
120       (method 'henr fing-henr)
121       (method 'bart fing-bart)
122       (method 'lia  fing-love)
123
124       ))
125
126(define (mk-fing)
127  (bind
128   (kern-mk-char 'ch_fing           ; tag
129                 "Fing"             ; name
130                 sp_nixie           ; species
131                 oc_warrior         ; occ
132                 s_nixie_civilian    ; sprite
133                 faction-men         ; starting alignment
134                 1 2 0               ; str/int/dex
135                 0 0                 ; hp mod/mult
136                 0 0                 ; mp mod/mult
137                 max-health -1 max-health 0 3  ; hp/xp/mp/AP_per_turn/lvl
138                 #f                  ; dead
139                 'fing-conv         ; conv
140                 sch_fing           ; sched
141                 'townsman-ai                 ; special ai
142                 (mk-inventory (list (list 10 t_spear)))                ; container
143                 nil                 ; readied
144                 )
145   (fing-mk)))
146