OSDN Git Service

日本語版
[nazghul-jp/nazghul-jp.git] / worlds / haxima-1.002 / jorn.scm
1 ;;----------------------------------------------------------------------------
2 ;; Constants
3 ;;----------------------------------------------------------------------------
4 (define jorn-lvl 5)
5 (define jorn-species sp_human)
6 (define jorn-occ oc_wrogue)
7
8 ;;----------------------------------------------------------------------------
9 ;; Schedule
10 ;; 
11 ;; ÎФÎÅã
12 ;;----------------------------------------------------------------------------
13 (define jorn-bed gt-jorn-bed)
14 (define jorn-mealplace gt-ws-tbl1)
15 (define jorn-workplace gt-jorn-hut)
16 (define jorn-leisureplace gt-ws-hall)
17 (kern-mk-sched 'sch_jorn
18                (list 0  0 jorn-bed          "sleeping")
19                (list 11 0 jorn-mealplace    "eating")
20                (list 12 0 jorn-workplace    "working")
21                (list 18 0 jorn-mealplace    "eating")
22                (list 19 0 jorn-leisureplace "idle")
23                (list 24 0 jorn-workplace    "working")               
24                )
25
26 ;;----------------------------------------------------------------------------
27 ;; Gob
28 ;;----------------------------------------------------------------------------
29 (define (jorn-mk) nil)
30
31 (define (jorn-on-death knpc)
32         (kern-obj-put-at (kern-mk-obj t_skull_ring_j 1) (kern-obj-get-location knpc))
33         )
34
35 ;;----------------------------------------------------------------------------
36 ;; Conv
37 ;; 
38 ;; ¥¸¥ç¡¼¥ó¤Ï¸µ³¤Â±¤Î°­Åޤǡ¢º£¤ÏÎФÎÅã¤Ë¤¤¤ë¡£
39 ;; Èà¤Ï¤«¤Ä¤Æ»üÈῼ¤¤»à¹æ¤Î¾èÁÈ°÷¤Ç¡¢Ë´Îî¤È¤Ê¤Ã¤¿¥¬¡¼¥Æ¥£Á¥Ä¹¤ËÉü½²¤Î¤¿¤áÄɤï
40 ;; ¤ì¤Æ¤¤¤ë¡£
41 ;;----------------------------------------------------------------------------
42
43 ;; Basics...
44 (define (jorn-hail knpc kpc)
45   (say knpc "¡Î¤¢¤Ê¤¿¤ÏÍð˽¤½¤¦¤ÊÉÔµ¡·ù¤ÊÃˤȲñ¤Ã¤¿¡£¡Ï²¿¤À¡©"))
46
47 (define (jorn-default knpc kpc)
48   (say knpc "¾¤òÅö¤¿¤Ã¤Æ¤¯¤ì¡£"))
49
50 (define (jorn-name knpc kpc)
51   (say knpc "²¶¤Ï¥¸¥ç¡¼¥ó¤À¡£Ê¹¤¤¤¿¤³¤È¤¢¤ë¤«¡©")
52    (quest-data-update 'questentry-ghertie 'jorn-loc 1)
53   (if (yes? kpc)
54       (say knpc "¤½¤ê¤ã¤¤¤¤¡£·Ù¹ð¤µ¤ì¤¿¤À¤í¤¦¡©")
55       (say knpc "¤ªµ¤¤ÎÆǤˡ£²ø²æ¤·¤¿¤¯¤Ê¤¤¤À¤í¤¦¡©")))
56
57 (define (jorn-join knpc kpc)
58   (say knpc "¡ÎÈà¤ÏÎä¤ä¤ä¤«¤Ë¾Ð¤Ã¤¿¡£¡Ï"))
59
60 (define (jorn-job knpc kpc)
61   (say knpc "¤¢¤ó¤¿¤Ë¤Ï´Ø·¸¤Ê¤¤¤Í¡£"))
62
63 (define (jorn-bye knpc kpc)
64   (say knpc "¡ÎÈà¤Ï¤¢¤Ê¤¿¤ò̵»ë¤·¤¿¡£¡Ï"))
65
66
67 ;; Town & Townspeople
68
69 ;; Quest-related
70 (define (jorn-pira knpc kpc)
71   (say knpc "áû¤Ë¤µ¤ï¤ëÅÛ¤À¤Ê¡£"))
72
73 (define (jorn-ring knpc kpc)
74       (quest-data-update 'questentry-ghertie 'jorn-loc 1)
75         (say knpc "¡ÎÈà¤ÏÎ䤿¤¤ÌܤǤ¢¤Ê¤¿¤ò¸«¤¿¡£¡Ï¤Ê¤Ë¡©¤³¤ì¤¬Íߤ·¤¤¤Î¤«¡©")
76         (if (no? kpc)
77             (say knpc "¤Ê¤éÌÛ¤Ã¤Æ¤í¡£")
78             (begin
79               (say knpc "¤Ê¤é¤Ð¤³¤Î»Ø¤òÀÚ¤é¤Í¤Ð¤Ê¤é¤ó¤Ê¡£"
80                    "¤É¤¦¤À¡©ÀÚ¤ë½àÈ÷¤Ï¤Ç¤­¤¿¤«¡©")
81               (if (no? kpc)
82                   (say knpc "¡ÎÈà¤Ï¤¢¤¶¾Ð¤Ã¤¿¡£¡Ï¤½¤¦¤Ï»×¤ï¤Ê¤¤¤Í¡£")
83                   (begin
84                     (say knpc "¡Î¶«¤ÓÀ¼¤ò¾å¤²¤ë¤È¡¢Èà¤Ï¸«¤¨¤Ê¤¤¤Û¤É¤Î®¤µ¤Ç·õ¤òÈ´¤­¡¢¤¢¤Ê¤¿¤ÈƱ¤¸¤è¤¦¤ËÀÚ¤ê¤Ä¤±¤Æ¤­¤¿¡ª¡Ï")
85                     (kern-being-set-base-faction knpc faction-outlaw)
86                     (kern-conv-end))))))
87
88 (define jorn-conv
89   (ifc basic-conv
90
91        ;; basics
92        (method 'default jorn-default)
93        (method 'hail jorn-hail)
94        (method 'bye  jorn-bye)
95        (method 'job  jorn-job)
96        (method 'name jorn-name)
97        (method 'join jorn-join)
98        
99        ;; other responses
100        (method 'pira jorn-pira)
101        (method 'gher jorn-pira)
102        (method 'merc jorn-pira)
103        (method 'ring jorn-ring)
104
105        ))
106
107 (define (mk-jorn)
108         (let ((knpc
109                 (kern-mk-char 
110                         'ch_jorn           ; tag
111                         "¥¸¥ç¡¼¥ó"         ; name
112                         jorn-species     ; species
113                         jorn-occ         ; occ
114                         s_brigand        ; sprite
115                         faction-men      ; starting alignment
116                         2 0 1            ; str/int/dex
117                         0 0              ; hp mod/mult
118                         0 0              ; mp mod/mult
119                         max-health ; hp
120                         -1                ; xp
121                         max-health ; mp
122                         0
123                         jorn-lvl
124                         #f               ; dead
125                         'jorn-conv       ; conv
126                         sch_jorn           ; sched
127                         'spell-sword-ai  ; special ai
128
129                         ;; container
130                         (mk-inventory (list
131                                 (list 1 t_sword_2)
132                                 (list 1 t_dagger_4)
133                                 (list 1 t_armor_leather_2)
134                                 (list 1 t_leather_helm_2)
135                                 (list 67 t_gold_coins)
136                                 (list 3 t_picklock)
137                                 (list 3 t_heal_potion)
138                         ))
139                         nil              ; readied
140                 )))
141                 (bind knpc  (jorn-mk))
142                 (kern-char-force-drop knpc #t)
143                 (kern-char-arm-self knpc)
144                 (kern-obj-add-effect knpc 
145                         ef_generic_death
146                         'jorn-on-death)
147                 knpc
148         ))