1 ;; The Eye of Brune is a special mechanism that shows a map of the entire Shard
2 ;; when handled successfully.
4 (define (eye-of-brune-handle keye khandler)
5 (kern-obj-set-sprite keye s_eye_open)
6 (kern-log-msg "*** STENTORIAN VOICE ***")
7 (kern-log-msg "WHAT WOULDST THOU BE?")
8 (let ((answer (kern-conv-get-reply khandler)))
9 (cond ((eq? answer 'vigi)
10 (kern-log-msg "THEN SEE!")
11 (let ((kimage (kern-image-load "map.png")))
12 (kern-map-set-image kimage)
13 (kern-print "Hit a key when done gazing...\n")
15 (kern-map-set-image nil)
16 (kern-image-free kimage)))
18 (kern-log-msg "WOE TO THE CARELESS, THE FORGETFUL AND THE IMPIOUS!")
19 (apply-lightning khandler)
20 (kern-char-set-intelligence khandler
21 (- (kern-char-get-base-intelligence khandler)
23 (kern-log-msg (kern-obj-get-name khandler) " loses intelligence!")
25 (kern-obj-set-sprite keye s_eye_closed)
28 (define eye-of-brune-ifc
30 (method 'handle eye-of-brune-handle)
33 (mk-obj-type 't_eye_of_brune "Eye of Brune" s_eye_closed layer-mechanism eye-of-brune-ifc)