OSDN Git Service

Nazghul-0.7.1
[nazghul-jp/nazghul-jp.git] / worlds / haxima-1.002 / anaxes.scm
1 ;;----------------------------------------------------------------------------
2 ;; Constants
3 ;;----------------------------------------------------------------------------
4 (define anaxes-lvl 6)
5 (define anaxes-species sp_lich)
6 (define anaxes-occ oc_wizard)
7
8 ;;----------------------------------------------------------------------------
9 ;; Schedule
10 ;; 
11 ;; No schedule (Cave Shrine within Brundegart).
12 ;;----------------------------------------------------------------------------
13
14 ;;----------------------------------------------------------------------------
15 ;; Gob
16 ;;----------------------------------------------------------------------------
17 (define (anaxes-mk) nil)
18
19 ;;----------------------------------------------------------------------------
20 ;; Conv
21 ;; 
22 ;; Anaxes is the lich/shade of a long-dead wizard, who once served 
23 ;; Luximene and later rebelled against him.
24 ;; Anaxes abides in the Cave Shrine within the lost realm of Brundegart.
25 ;;----------------------------------------------------------------------------
26
27 ;; Basics...
28 (define (anaxes-hail knpc kpc)
29   (meet "[You meet the proud shade of a long-dead wizard]")
30   (say knpc "Art thou the agent of Luximene?")
31   (if (yes? kpc)
32       (say knpc "But who else? [He chuckles grimly] "
33            "Thou hast broken through the defenses, "
34            "but thy foul master will not find me toothless!")
35       (say knpc "Deny it not, I know he seeks to slay me for my rebellion!"))
36   (aside kpc 'ch_nate 
37          "[Whispering] Milord, Luximene has been dead for ages!")
38   )
39
40
41 (define (anaxes-default knpc kpc)
42   (say knpc "[He silently regards you]"))
43
44 (define (anaxes-name knpc kpc)
45   (say knpc "I am Anaxes, formerly of the Twelve."))
46
47 (define (anaxes-luxi knpc kpc)
48   (say knpc "Luximene is not a man, but a demon in a mask! "
49        "He hath sown dissent and conquered in its wake, "
50        "and now seeks to dethrone the gods.")
51   (prompt-for-key)
52   (say knpc "He hath ordered his own image to be erected in the shrines. "
53        "This is too much! Now his perfidy is made plain! ")
54   (prompt-for-key)
55   (say knpc "So long as I draw breath, the Shrine of Brune will not be defiled!")
56   (aside kpc 'ch_nate "Ah! The name of the god at last! I feared it was forgotten forever!")
57   (cond ((has? kpc t_lich_skull 1)
58          (say knpc "Wait! What have you there? [He points to Luximene's skull] What doth this mean? Is Luximene then dead?")
59          (yes? kpc)
60          (say knpc "[He ignores you. The light in his eyes begins to fade and his voice grows weak] It is over...")
61          (prompt-for-key kpc)
62          (say knpc "[He collapses in a heap] ...Isin! ...Isin...")
63          (aside kpc 'ch_nate "Dibs on his boots.")
64          (kern-conv-end)
65          (kern-char-kill knpc))))
66
67 (define (anaxes-gods knpc kpc)
68   (say knpc "The gods will take a terrible vengeance on the Shard for its "
69        "faithlessness! Luximene and his followers will be consumed by fire and "
70        "drowned in blood at the last battle! "
71        "Vigilance to the faithful!"))
72
73 (define (anaxes-brun knpc kpc)
74   (say knpc "This is the Shrine of Brune, god of vigilance. "
75        "I rebelled against Luximene's order to disgrace it with his image. "
76        "I ordered the entrace to Brune-Guard sealed, and awaited the siege. ")
77   )
78
79 (define (anaxes-vigi knpc kpc)
80   (say knpc "We have failed in our vigilance! "
81        "Luximene has deceived us all, and now we must pay the price for failure."))
82
83 (define (anaxes-fail knpc kpc)
84   (say knpc "We have failed the gods, it is no wonder they have forsaken us!"))
85
86 (define (anaxes-twel knpc kpc)
87   (say knpc "I was among the Twelve Counselors of Luximene. "
88        "To my shame I helped him achieve his empire. "
89        "I thought a strong ruler would bring order to the Shard, "
90        "and rein in the heresies of the Accursed. "
91        "Alas! We were all deceived!"))
92
93 (define (anaxes-accu knpc kpc)
94   (say knpc "In the years that followed the Sundering, "
95        "the priesthood became corrupted. "
96        "All manner of wretched men claimed to speak on behalf of the gods, "
97        "polluting the worship of the gods with their foul practices. ")
98   (prompt-for-key)
99   (say knpc "Under Luximene we waged war on the heretics. "
100        "We burned the false priests at the stake and put their "
101        "verminous followers to the sword. "))
102
103 (define (anaxes-bye knpc kpc)
104   (say knpc "On thy guard, defiler of the holy! I shall resist you; "
105        "and should I fall in battle, I will strike from beyond the grave!")
106   (aside kpc 'ch_nate "[Muttering] Methinks he is ahead of schedule.")
107   (kern-being-set-base-faction knpc faction-monster)
108   )
109
110 (define (anaxes-job knpc kpc)
111   (say knpc "I was one of Luximene's Twelve, trusted with the command of "
112        "this fortress and its watch-tower. "
113        "But Luximene has ordered the desecration of the shrines, "
114        "and I have rebelled!")
115   (aside kpc 'ch_nate 
116          "[Whispering] This lich thinks himself a wizard living in the time of Luximene. Can it be that he once was?")
117   )
118
119 (define (anaxes-fort knpc kpc)
120   (say knpc "This fortress is Brune-Guard, so-called for this Shrine of Brune, "
121        "and for the vigilance of the tower. It is virtually impregnable to siege."))
122
123 (define (anaxes-towe knpc kpc)
124   (say knpc "The watch-tower of Brune-Guard looks far over the sea, the forest, "
125        "the mountains, and deep into the sky. From time beyond memory, "
126        "from before the Sundering, the vigilant have kept lookout here for "
127        "danger below or signs from above."))
128
129 (define (anaxes-sund knpc kpc)
130   (say knpc "The Sundering is the cataclysm that nearly destroyed this world. "
131        "Surely thou dost know this! "
132        "Unless thou art a demon from beyond the void..."))
133
134 (define anaxes-conv
135   (ifc nil
136
137        ;; basics
138        (method 'accu anaxes-accu)
139        (method 'assa anaxes-luxi)
140        (method 'bye anaxes-bye)
141        (method 'brun anaxes-brun)
142        (method 'default anaxes-default)
143        (method 'defe anaxes-fort)
144        (method 'fail anaxes-fail)
145        (method 'fait anaxes-vigi)
146        (method 'fort anaxes-fort)
147        (method 'god  anaxes-gods)
148        (method 'gods anaxes-gods)
149        (method 'hail anaxes-hail)
150        (method 'job  anaxes-job)
151        (method 'luxi anaxes-luxi)
152        (method 'mast anaxes-luxi)
153        (method 'name anaxes-name)
154        (method 'rebe anaxes-luxi)
155        (method 'shri anaxes-vigi)
156        (method 'sund anaxes-sund)
157        (method 'towe anaxes-towe)
158        (method 'twel anaxes-twel)
159        (method 'vigi anaxes-vigi)
160        ))
161
162 (define (mk-anaxes)
163   (let ((kchar
164          (bind 
165           (kern-char-force-drop
166            (kern-mk-char 
167             'ch_lux          ; tag
168             "Anaxes"         ; name
169             anaxes-species   ; species
170             anaxes-occ       ; occ
171             s_lich           ; sprite
172             faction-men      ; starting alignment
173             0 0 0            ; str/int/dex
174             0 0              ; hp mod/mult
175             0 0              ; mp mod/mult
176             max-health       ; hp
177             -1               ; xp
178             max-health       ; mp
179             0
180             anaxes-lvl       ; level
181             #f               ; dead
182             'anaxes-conv     ; conv
183             nil              ; sched
184             'lich-ai         ; special ai
185             (mk-inventory
186              ;; hack: as the kernel is currently written, he won't drop his
187              ;; readied arms on death, and he won't ready arms from inventory
188              ;; (its all messed up), but he will drop his inventory. So put
189              ;; some decent arms in as loot.
190              (list (list 1 t_armor_chain)
191                    (list 1 t_chain_coif)
192                    (list 1 t_morning_star)
193                    (list 1 t_shield)
194                    (list 3 mandrake)
195                    (list 3 nightshade)
196                    (list 8 sulphorous_ash)
197                    (list 5 blood_moss)
198                    (list 5 black_pearl)
199                    (list 50 t_gold_coins)
200                    (list 1 t_anaxes_letter)
201                    (list 1 t_lichs_blood)
202                    ))
203             ;; readied
204             (list
205              t_armor_chain_4
206              t_chain_coif_4
207              t_morning_star_2
208              t_shield_4
209              )
210             ) ; kern-mk-char
211            #t) ; kern-char-force-drop
212           (anaxes-mk)) ; bind
213          ))
214     (map (lambda (eff) (kern-obj-add-effect kchar eff nil))
215          undead-effects)
216     kchar))