OSDN Git Service

652c6e5882f65e1e83ca5be25c80150f2dd39f2d
[nazghul-jp/nazghul-jp.git] / worlds / haxima-1.002 / thud.scm
1 ;;----------------------------------------------------------------------------
2 ;; Constants
3 ;;----------------------------------------------------------------------------
4 (define thud-start-lvl  6)
5
6 ;;----------------------------------------------------------------------------
7 ;; Schedule
8 ;; 
9 ;; In Bole
10 ;;----------------------------------------------------------------------------
11 (kern-mk-sched 'sch_thud
12                (list 0  0  bole-bedroom-thud "idle")
13                (list 9  0  bole-dining-hall  "idle")
14                (list 10 0  bole-courtyard   "idle")
15                (list 12 0  bole-dining-hall   "idle")
16                (list 23 0  bole-bedroom-thud "idle")
17                )
18
19 ;;----------------------------------------------------------------------------
20 ;; Gob
21 ;;
22 ;; Quest flags, etc, go here.
23 ;;----------------------------------------------------------------------------
24 (define (thud-mk) nil)
25
26 ;;----------------------------------------------------------------------------
27 ;; Conv
28 ;; 
29 ;; Thud is the bodyguard of Kathryn, and currently abides in Bole,
30 ;; where they seek a certain thief.  Various other NPCs suggest
31 ;; that Thud is at best half human, perhaps having ogre blood,
32 ;; or a sorcerous (summoned or vat-born) origin...
33 ;; 
34 ;; Thud is a potential party member (and an eventual betrayer).
35 ;; He accompanies Kathrun, and joins the party when and if she does.
36 ;;----------------------------------------------------------------------------
37 (define (thud-hail knpc kpc)
38   (say knpc "[You are certain that the figure before you is part ogre. "
39        "Three meters tall and smoldering with menace, he regards you with "
40        "half-lidded eyes.]"))
41
42 (define (thud-default knpc kpc)
43   (say knpc "[His threatening gaze does not waver]"))
44
45 (define (thud-name knpc kpc)
46   (say knpc "Thud no like you."))
47
48 (define (thud-join knpc kpc)
49   (if (is-player-party-member? ch_kathryn)
50       (begin
51         (say knpc "[Seeing Kathryn with you, he grunts his assent]")
52         (kern-char-join-player knpc)
53         (kern-conv-end))
54       (say knpc "[He sneers]")))
55
56 (define (thud-job knpc kpc)
57   (say knpc "Thud love kill."))
58
59 (define (thud-kathryn knpc kpc)
60   (say knpc "Thud no kill"))
61
62 (define (thud-thud knpc kpc)
63   (say knpc "You talk me? YOU TALK ME?! THUD PICK TEETH WITH YOU BONES!!"))
64
65 (define (thud-thief knpc kpc)
66   (say knpc "[He becomes enraged] THIEF TRICK THUD! THUD FIND THIEF! THUD KILL THIEF!"))
67
68 (define (thud-find knpc kpc)
69   (say knpc "[He calms down a bit] Red Lady find thief. He no can hide."))
70
71 (define (thud-red-lady knpc kpc)
72   (say knpc "[He gives you a murderous look] You stay away Red Lady."))
73
74 (define thud-conv
75   (ifc nil
76        (method 'default thud-default)
77        (method 'hail thud-hail)
78        (method 'bye 
79                (lambda (knpc kpc) 
80                  (say knpc "[His eyes bore into your back as you walk away]")))
81        (method 'job  thud-job)
82        (method 'name thud-name)
83        (method 'join thud-join)
84
85        (method 'find thud-find)
86        (method 'kath thud-kathryn)
87        (method 'kill thud-job)
88        (method 'lady thud-red-lady)
89        (method 'love thud-job)
90        (method 'red  thud-red-lady)
91        (method 'thie thud-thief)
92        (method 'thud thud-thud)
93        ))
94
95 ;;----------------------------------------------------------------------------
96 ;; First-time constructor
97 ;;----------------------------------------------------------------------------
98 (define (mk-thud)
99   (bind 
100     (kern-char-arm-self
101      (kern-mk-char 
102       'ch_thud ;;.....tag
103       "Thud" ;;.......name
104       sp_troll ;;.....species
105       oc_warrior ;;...occupation
106       s_troll ;;......sprite
107       faction-men ;;..faction
108       4 ;;............custom strength modifier
109       0 ;;............custom intelligence modifier
110       2 ;;............custom dexterity modifier
111       2 ;;............custom base hp modifier
112       1 ;;............custom hp multiplier (per-level)
113       0 ;;............custom base mp modifier
114       0 ;;............custom mp multiplier (per-level)
115       max-health;;..current hit points
116       -1  ;;...........current experience points
117       max-health ;;..current magic points
118       0
119       thud-start-lvl  ;;..current level
120       #f ;;...........dead?
121       'thud-conv ;;...conversation (optional)
122       sch_thud ;;.....schedule (optional)
123       'townsman-ai ;;..........custom ai (optional)
124       nil ;;..........container (and contents)
125       ;;.........readied arms (in addition to the container contents)
126       (list
127        t_2h_axe
128        t_iron_helm
129        t_armor_plate
130        )
131       nil ;;..........hooks in effect
132       ))
133    (thud-mk)))