OSDN Git Service

Nazghul-0.7.1
[nazghul-jp/nazghul-jp.git] / worlds / haxima-1.002 / amy.scm
1 ;;----------------------------------------------------------------------------
2 ;; Constants
3 ;;----------------------------------------------------------------------------
4 (define amy-lvl 1)
5 (define amy-species sp_human)
6 (define amy-occ oc_wright)
7
8 ;;----------------------------------------------------------------------------
9 ;; Schedule
10 ;; 
11 ;; In the Poor House (at least until such time as she joins the Wanderer).
12 ;;----------------------------------------------------------------------------
13 (define amy-bed poorh-bed2)
14 (define amy-mealplace poorh-sup2)
15 (define amy-workplace poorh-pasture)
16 (define amy-leisureplace poorh-dining)
17 (kern-mk-sched 'sch_amy
18                (list 0  0 amy-bed          "sleeping")
19                (list 7  0 amy-mealplace    "eating")
20                (list 8  0 amy-workplace    "working")
21                (list 12 0 amy-mealplace    "eating")
22                (list 13 0 amy-workplace    "working")
23                (list 18 0 amy-mealplace    "eating")
24                (list 19 0 amy-leisureplace "idle")
25                (list 22 0 amy-bed          "sleeping")
26                )
27
28 ;;----------------------------------------------------------------------------
29 ;; Gob
30 ;;----------------------------------------------------------------------------
31 (define (amy-mk) nil)
32
33 ;;----------------------------------------------------------------------------
34 ;; Conv
35 ;; 
36 ;; Amy is a female tinker, fallen upon hard times.
37 ;; She currently dwells in the Poor House.
38 ;; Amy is a potential party member.
39 ;;----------------------------------------------------------------------------
40
41 ;; Basics...
42 (define (amy-hail knpc kpc)
43   (meet "You meet a practical-looking tinker woman.")
44   (say knpc "Hello.")
45   )
46
47 (define (amy-name knpc kpc)
48   (say knpc "You can call me Amy.")
49   )
50
51 (define (amy-join knpc kpc)
52   (if (is-player-party-member? knpc)
53       (say knpc "I already joined you!")
54       (begin
55         (say knpc "I thought you'd never ask!")
56         (join-player knpc)
57         (kern-conv-end)
58         )))
59
60 (define (amy-job knpc kpc)
61   (say knpc "Well, I'm a tinker by trade, "
62        "but I haven't had much luck finding work lately.")
63   )
64
65 (define (amy-bye knpc kpc)
66   (say knpc "So long.")
67   )
68
69 (define (amy-mean knpc kpc)
70   (say knpc "He's great. "
71        "I don't know where I'd go if it weren't for the poor house. "
72        "He doesn't even stare at my boobs all that much.")
73   )
74
75 (define (amy-tink knpc kpc)
76   (say knpc "A tinker is a wandering wright. "
77        "We travel from town to town, fixing things up for people.")
78   )
79
80 (define (amy-luck knpc kpc)
81   (say knpc "People are nervous of strangers now, "
82        "what with the Accursed and all.")
83   )
84   
85 (define (amy-accu knpc kpc)
86   (say knpc "The Accursed are a secret cult who "
87        "follow evil ways.")
88   )
89
90 ;; Quest-related
91
92 (define amy-conv
93   (ifc basic-conv
94
95        ;; basics
96        (method 'hail amy-hail)
97        (method 'bye amy-bye)
98        (method 'job amy-job)
99        (method 'name amy-name)
100        (method 'join amy-join)
101        
102
103        (method 'mean amy-mean)
104        (method 'tink amy-tink)
105        (method 'luck amy-luck)
106        (method 'accu amy-accu)
107        ))
108
109 (define (mk-amy)
110   (bind 
111    (kern-mk-char 
112     'ch_amy           ; tag
113     "Amy"             ; name
114     amy-species         ; species
115     amy-occ              ; occ
116     s_companion_tinker ; sprite
117     faction-men      ; starting alignment
118     2 4 4            ; str/int/dex
119     pc-hp-off  ; hp bonus
120     pc-hp-gain ; hp per-level bonus
121     1 ; mp off
122     1 ; mp gain
123     max-health ; hp
124     -1                   ; xp
125     max-health ; mp
126     0
127     amy-lvl
128     #f               ; dead
129     'amy-conv         ; conv
130     sch_amy           ; sched
131     'townsman-ai              ; special ai
132     nil              ; container
133     (list
134      t_armor_leather
135      t_leather_helm
136      t_sling
137      t_sword
138     ))
139    (amy-mk)))