;;-*-Lisp-*-
(in-package goal)
(bundles "ENGINE.CGO" "GAME.CGO")
(require "engine/math/quaternion-h.gc")
(require "engine/math/vector-h.gc")
(require "engine/level/level-h.gc")
(require "engine/game/game-info-h.gc")

;; DECOMP BEGINS

(define training
  (new 'static
       'level-load-info
       :index 1
       :name 'training
       :visname 'training-vis
       :nickname 'tra
       :packages '(training)
       :sound-banks '(training)
       :music-bank 'village1
       :ambient-sounds
       '()
       :mood '*training-mood*
       :mood-func 'update-mood-training
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "training-start"
             :level 'training
             :trans
             (new 'static 'vector :x -5393626.5 :y 28072.346 :z 4332472.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9995 :w 0.0297)
             :camera-trans
             (new 'static 'vector :x -5426915.0 :y 45930.906 :z 4353156.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.5571 0.0 -0.8304 0.1264 0.9883 -0.0848 0.8207 -0.1522 -0.5506)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t))
             :vis-nick 'tra
             :lev0 'training
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "training-warp"
             :level 'training
             :flags (continue-flags warp)
             :trans
             (new 'static 'vector :x -5383524.0 :y 28019.098 :z 4360302.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.084 :w 0.9964)
             :camera-trans
             (new 'static 'vector :x -5366765.0 :y 45646.234 :z 4325889.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9057 0.0 0.4238 -0.0666 0.9875 0.1424 -0.4186 -0.1572 0.8944)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t))
             :vis-nick 'tra
             :lev0 'training
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "game-start"
             :level 'training
             :flags (continue-flags warp game-start)
             :trans
             (new 'static 'vector :x -5393740.5 :y 28259.533 :z 4360945.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9993 :w 0.0359)
             :camera-trans
             (new 'static 'vector :x -5434444.5 :y 47050.344 :z 4372832.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.3536 0.0 -0.9353 0.1315 0.99 -0.0497 0.926 -0.1406 -0.35)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t))
             :vis-nick 'tra
             :lev0 'training
             :disp0 'display
             :lev1 'village1
             :disp1 'special))
       :tasks
       '(92 93 94 95)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x -5079040.0 :z 4055040.0 :w 1024000.0)
       :buzzer 95
       :bottom-height (meters -114)
       :run-packages
       '("common" "villagep")
       :wait-for-load #f))

(define village1
  (new 'static
       'level-load-info
       :index 2
       :name 'village1
       :visname 'village1-vis
       :nickname 'vi1
       :packages '(village1)
       :sound-banks '(village1)
       :music-bank 'village1
       :ambient-sounds
       '()
       :mood '*village1-mood*
       :mood-func 'update-mood-village1
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "village1-hut"
             :level 'village1
             :trans
             (new 'static 'vector :x -638860.06 :y 139319.7 :z 769990.6 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9889 :w -0.148)
             :camera-trans
             (new 'static 'vector :x -668114.1 :y 164536.31 :z 828633.06 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.8947 0.0 -0.4464 0.1082 0.9701 -0.2169 0.4331 -0.2424 -0.868)
             :load-commands
             '()
             :vis-nick 'vi1
             :lev0 'village1
             :disp0 'display
             :lev1 'beach
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village1-intro"
             :level 'village1
             :flags (continue-flags warp sage-intro)
             :trans
             (new 'static 'vector :x -518468.8 :y 189424.03 :z 868568.7 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.591 :w 0.8066)
             :camera-trans
             (new 'static 'vector :x -559109.3 :y 200461.92 :z 826073.06 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7221 0.0 -0.6917 -0.0517 0.9972 -0.054 0.6897 0.0747 0.7201)
             :load-commands
             '()
             :vis-nick 'vi1
             :lev0 'village1
             :disp0 'display
             :lev1 #f
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village1-warp"
             :level 'village1
             :flags (continue-flags warp sage-ecorocks)
             :trans
             (new 'static 'vector :x -518468.8 :y 189424.03 :z 868568.7 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.591 :w 0.8066)
             :camera-trans
             (new 'static 'vector :x -559109.3 :y 200461.92 :z 826073.06 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7221 0.0 -0.6917 -0.0517 0.9972 -0.054 0.6897 0.0747 0.7201)
             :load-commands
             '()
             :vis-nick 'vi1
             :lev0 'village1
             :disp0 'display
             :lev1 'beach
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village1-demo-convo"
             :level 'village1
             :flags (continue-flags sage-demo-convo)
             :trans
             (new 'static 'vector :x -542529.1 :y 189424.03 :z 847101.94 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.1717 :w -0.9851)
             :camera-trans
             (new 'static 'vector :x -559085.2 :y 202996.53 :z 826054.25 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7868 0.0 -0.6171 0.0775 0.992 0.0989 0.6122 -0.1257 0.7806)
             :load-commands
             '()
             :vis-nick 'vi1
             :lev0 'village1
             :disp0 'display
             :lev1 'misty
             :disp1 #f)
        (new 'static
             'continue-point
             :name "intro-start"
             :level 'village1
             :flags (continue-flags intro)
             :trans
             (new 'static 'vector :x 164316.78 :y 15128.576 :z 3390588.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.2339 :w 0.9722)
             :camera-trans
             (new 'static 'vector :x 204089.34 :y 36257.793 :z 3358341.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.6381 0.0 0.7699 -0.0938 0.9925 0.0777 -0.7642 -0.1218 0.6333)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'vi1
             :lev0 'village1
             :disp0 'display
             :lev1 'misty
             :disp1 #f))
       :tasks
       '(10 11 12 13 14 75)
       :priority #xc8
       :load-commands
       '()
       :alt-load-commands
       '(((display village1) (load misty)) ((special village1) (display misty)) ((display village1) (load beach)))
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x -444416.0 :y 133120.0 :z 360448.0 :w 843776.0)
       :buzzer 75
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define beach
  (new 'static
       'level-load-info
       :index 3
       :name 'beach
       :visname 'beach-vis
       :nickname 'bea
       :packages '(beach)
       :sound-banks '(beach)
       :music-bank 'beach
       :ambient-sounds
       '()
       :mood '*beach-mood*
       :mood-func 'update-mood-village1
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "beach-start"
             :level 'beach
             :trans
             (new 'static 'vector :x -504960.22 :y 9477.325 :z -223513.81 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9486 :w -0.3163)
             :camera-trans
             (new 'static 'vector :x -487550.16 :y 28354.15 :z -184211.05 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9139 0.0 0.4058 -0.0551 0.9907 -0.1241 -0.4021 -0.1358 -0.9054)
             :load-commands
             '()
             :vis-nick 'bea
             :lev0 'beach
             :disp0 'display
             :lev1 'village1
             :disp1 'display))
       :tasks
       '(15 16 17 18 19 20 21 22)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x -819200.0 :z -1556480.0 :w 1474560.0)
       :buzzer 20
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define jungle
  (new 'static
       'level-load-info
       :index 4
       :name 'jungle
       :visname 'jungle-vis
       :nickname 'jun
       :packages '(jungle)
       :sound-banks '(jungle)
       :music-bank 'jungle
       :ambient-sounds
       '()
       :mood '*jungle-mood*
       :mood-func 'update-mood-jungle
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "jungle-start"
             :level 'jungle
             :trans
             (new 'static 'vector :x 1057631.9 :y 86404.305 :z -647140.56 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9009 :w -0.4339)
             :camera-trans
             (new 'static 'vector :x 1004424.8 :y 111181.82 :z -611527.9 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.5568 0.0 -0.8306 0.201 0.9702 -0.1347 0.8059 -0.2419 -0.5402)
             :load-commands
             '()
             :vis-nick 'jun
             :lev0 'jungle
             :disp0 'display
             :lev1 'village1
             :disp1 'display))
       :tasks
       '(2 3 4 5 7 8 9)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '(((display jungle) (display jungleb)) ((display jungle) (display village1)))
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 1474560.0 :y 2519040.0 :z -983040.0 :w 2457600.0)
       :buzzer 7
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define jungleb
  (new 'static
       'level-load-info
       :index 5
       :name 'jungleb
       :visname 'jungleb-vis
       :nickname 'jub
       :packages '(jungleb)
       :sound-banks '(jungleb)
       :music-bank 'jungleb
       :ambient-sounds
       '()
       :mood '*jungleb-mood*
       :mood-func 'update-mood-jungleb
       :ocean 'none
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "jungle-tower"
             :level 'jungleb
             :trans
             (new 'static 'vector :x 1469510.0 :y -204745.52 :z -959058.3 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.6194 :w -0.785)
             :camera-trans
             (new 'static 'vector :x 1485298.5 :y -189972.08 :z -936548.75 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.8614 0.0 0.5078 -0.1177 0.9727 -0.1997 -0.4939 -0.2318 -0.8379)
             :load-commands
             '()
             :vis-nick 'jub
             :lev0 'jungle
             :disp0 'display
             :lev1 'jungleb
             :disp1 'display))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsphere
       (new 'static 'sphere :x 1486848.0 :y -1269760.0 :z -1064960.0 :w 1228800.0)
       :buzzer 7
       :bottom-height (meters -80)
       :run-packages
       '("common" "jungle")
       :wait-for-load #f))

(define misty
  (new 'static
       'level-load-info
       :index 6
       :name 'misty
       :visname 'misty-vis
       :nickname 'mis
       :packages '(misty)
       :sound-banks '(misty)
       :music-bank 'misty
       :ambient-sounds
       '()
       :mood '*misty-mood*
       :mood-func 'update-mood-misty
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 0.25
       :continues
       '((new 'static
             'continue-point
             :name "misty-start"
             :level 'misty
             :trans
             (new 'static 'vector :x 164316.78 :y 15128.576 :z 3390588.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.2339 :w 0.9722)
             :camera-trans
             (new 'static 'vector :x 204089.34 :y 36257.793 :z 3358341.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.6381 0.0 0.7699 -0.0938 0.9925 0.0777 -0.7642 -0.1218 0.6333)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'mis
             :lev0 'misty
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "misty-silo"
             :level 'misty
             :trans
             (new 'static 'vector :x -672503.0 :y 82131.35 :z 3651465.8 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0878 :w 0.9961)
             :camera-trans
             (new 'static 'vector :x -675754.0 :y 102028.91 :z 3604800.8 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9975 0.0 -0.0704 0.0086 0.9924 0.1223 0.0698 -0.1226 0.9899)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'mis
             :lev0 'misty
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "misty-bike"
             :level 'misty
             :trans
             (new 'static 'vector :x 302533.44 :y 35901.848 :z 4138967.8 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.2809 :w 0.9597)
             :camera-trans
             (new 'static 'vector :x 338476.25 :y 55700.684 :z 4109729.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.6308 0.0 0.7759 -0.096 0.9923 0.078 -0.7699 -0.1237 0.6259)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'mis
             :lev0 'misty
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "misty-backside"
             :level 'misty
             :trans
             (new 'static 'vector :x -304192.72 :y 33270.99 :z 4646525.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.8443 :w -0.5357)
             :camera-trans
             (new 'static 'vector :x -346989.78 :y 54377.676 :z 4674685.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.5497 0.0 -0.8353 0.1009 0.9926 -0.0664 0.8291 -0.1208 -0.5457)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'mis
             :lev0 'misty
             :disp0 'display
             :lev1 'village1
             :disp1 'special)
        (new 'static
             'continue-point
             :name "misty-silo2"
             :level 'misty
             :trans
             (new 'static 'vector :x -898000.06 :y 98038.17 :z 4162091.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.1102 :w 0.9938)
             :camera-trans
             (new 'static 'vector :x -931459.9 :y 118198.68 :z 4196081.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.6605 0.0 -0.7508 0.1086 0.9894 -0.0955 0.7429 -0.1447 -0.6535)
             :load-commands
             '((special "med-res-level-1" #t)
              (special "med-res-level-2" #t)
              (special "med-res-level-4" #t)
              (special "med-res-level-6" #t)
              (special "med-res-level-7" #t)
              (special "med-res-level-8" #t)
              (special "med-res-level-9" #t)
              (special "med-res-level-11" #t)
              (special "med-res-level-14" #t)
              (special "med-res-level-22" #t)
              (special "med-res-level-23" #t)
              (special "fishermans-boat-2" #t))
             :vis-nick 'mis
             :lev0 'misty
             :disp0 'display
             :lev1 'village1
             :disp1 'special))
       :tasks
       '(23 24 25 26 27 28 29 30)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :z 4096000.0 :w 1269760.0)
       :buzzer 28
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #f))

(define firecanyon
  (new 'static
       'level-load-info
       :index 7
       :name 'firecanyon
       :visname 'firecanyon-vis
       :nickname 'fic
       :packages '(firecanyon)
       :sound-banks '(firecanyon)
       :music-bank 'firecanyon
       :ambient-sounds
       '()
       :mood '*firecanyon-mood*
       :mood-func 'update-mood-firecanyon
       :ocean 'none
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "firecanyon-start"
             :level 'firecanyon
             :trans
             (new 'static 'vector :x -87377.1 :y 126444.75 :z -681697.25 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9921 :w -0.1246)
             :camera-trans
             (new 'static 'vector :x -84559.055 :y 144685.47 :z -641194.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9976 0.0 0.0688 -0.01 0.9893 -0.1452 -0.068 -0.1456 -0.9869)
             :load-commands
             '()
             :vis-nick 'fic
             :lev0 'firecanyon
             :disp0 'display
             :lev1 'village1
             :disp1 'display)
        (new 'static
             'continue-point
             :name "firecanyon-end"
             :level 'firecanyon
             :trans
             (new 'static 'vector :x 1360576.1 :y 126976.0 :z -5839533.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.1666 :w 0.986)
             :camera-trans
             (new 'static 'vector :x 1378912.6 :y 144452.81 :z -5872527.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.8847 0.0 0.466 -0.0744 0.9871 0.1414 -0.46 -0.1598 0.8733)
             :load-commands
             '()
             :vis-nick 'fic
             :lev0 'village2
             :disp0 'display
             :lev1 'firecanyon
             :disp1 'display))
       :tasks
       '(68 69)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 419840.0 :y 151552.0 :z -3006464.0 :w 2048000.0)
       :buzzer 68
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define village2
  (new 'static
       'level-load-info
       :index 8
       :name 'village2
       :visname 'village2-vis
       :nickname 'vi2
       :packages '(village2)
       :sound-banks '(village2)
       :music-bank 'village2
       :ambient-sounds
       '()
       :mood '*village2-mood*
       :mood-func 'update-mood-village2
       :ocean '*ocean-map-village2*
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "village2-start"
             :level 'village2
             :trans
             (new 'static 'vector :x 1460961.2 :y 108562.02 :z -6161391.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9917 :w 0.1278)
             :camera-trans
             (new 'static 'vector :x 1468018.8 :y 133790.92 :z -6096227.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9941 0.0 0.1076 -0.0261 0.9699 -0.2418 -0.1044 -0.2432 -0.9643)
             :load-commands
             '()
             :vis-nick 'vi2
             :lev0 'village2
             :disp0 'display
             :lev1 'firecanyon
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village2-warp"
             :level 'village2
             :flags (continue-flags warp)
             :trans
             (new 'static 'vector :x 1592492.9 :y 91648.0 :z -6328677.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.7469 :w 0.6648)
             :camera-trans
             (new 'static 'vector :x 1555766.1 :y 103759.46 :z -6318964.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.2562 0.0 -0.9666 -0.0253 0.9996 0.0067 0.9662 0.0262 -0.2561)
             :load-commands
             '()
             :vis-nick 'vi2
             :lev0 'village2
             :disp0 'display
             :lev1 'firecanyon
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village2-dock"
             :level 'village2
             :trans
             (new 'static 'vector :x 1264346.8 :y 19451.494 :z -6833563.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0258 :w 0.9996)
             :camera-trans
             (new 'static 'vector :x 1265547.2 :y 34647.656 :z -6862636.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9991 0.0 0.0411 -0.0088 0.9764 0.2155 -0.0401 -0.2156 0.9756)
             :load-commands
             '()
             :vis-nick 'vi2
             :lev0 'village2
             :disp0 'display
             :lev1 'rolling
             :disp1 #f))
       :tasks
       '(31 32 34 35 76)
       :priority #xc8
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 1392640.0 :y 81920.0 :z -6770688.0 :w 696320.0)
       :buzzer 76
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define sunken
  (new 'static
       'level-load-info
       :index 9
       :name 'sunken
       :visname 'sunken-vis
       :nickname 'sun
       :packages '(sunken)
       :sound-banks '(sunken)
       :music-bank 'sunken
       :ambient-sounds
       '()
       :mood '*sunken-mood*
       :mood-func 'update-mood-sunken
       :ocean '*ocean-map-sunken*
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "sunken-start"
             :level 'sunken
             :trans
             (new 'static 'vector :x 2172095.2 :y -591749.94 :z -6721553.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.5083 :w 0.8611)
             :camera-trans
             (new 'static 'vector :x 2138871.5 :y -572296.4 :z -6751967.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7575 0.0 -0.6527 0.0858 0.9913 0.0995 0.647 -0.1314 0.7509)
             :load-commands
             '()
             :vis-nick 'sun
             :lev0 'sunken
             :disp0 'display
             :lev1 'village2
             :disp1 'display)
        (new 'static
             'continue-point
             :name "sunken1"
             :level 'sunken
             :trans
             (new 'static 'vector :x 3062988.5 :y -536575.56 :z -6527484.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.5304 :w 0.8477)
             :camera-trans
             (new 'static 'vector :x 3015461.2 :y -515480.38 :z -6546573.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.3725 0.0 -0.928 0.1121 0.9926 0.045 0.9212 -0.1208 0.3697)
             :load-commands
             '()
             :vis-nick 'sun
             :lev0 'sunken
             :disp0 'display
             :lev1 'sunkenb
             :disp1 #f)
        (new 'static
             'continue-point
             :name "sunken2"
             :level 'sunken
             :trans
             (new 'static 'vector :x 3133625.5 :y -569343.56 :z -6909587.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9512 :w 0.3083)
             :camera-trans
             (new 'static 'vector :x 3170833.2 :y -548244.25 :z -6874378.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.6872 0.0 0.7263 -0.0878 0.9926 -0.0831 -0.721 -0.1209 -0.6822)
             :load-commands
             '()
             :vis-nick 'sun
             :lev0 'sunken
             :disp0 'display
             :lev1 'sunkenb
             :disp1 #f)
        (new 'static
             'continue-point
             :name "sunken-tube1"
             :level 'sunken
             :trans
             (new 'static 'vector :x 2649601.8 :y -569343.56 :z -7132970.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9936 :w 0.1124)
             :camera-trans
             (new 'static 'vector :x 2636150.2 :y -555656.4 :z -7114732.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.8024 0.0 -0.5967 0.1721 0.9574 -0.2315 0.5713 -0.2885 -0.7683)
             :load-commands
             '()
             :vis-nick 'sun
             :lev0 'sunken
             :disp0 'display
             :lev1 'sunkenb
             :disp1 #f))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 2867200.0 :y -2048000.0 :z -6553600.0 :w 2048000.0)
       :buzzer 49
       :bottom-height (meters -500)
       :run-packages
       '("common")
       :wait-for-load #f))

(define sunkenb
  (new 'static
       'level-load-info
       :index 10
       :name 'sunkenb
       :visname 'sunkenb-vis
       :nickname 'sub
       :packages
       '()
       :sound-banks '(sunken)
       :music-bank 'sunken
       :ambient-sounds
       '()
       :mood '*sunkenb-mood*
       :mood-func 'update-mood-sunken
       :ocean '*ocean-map-sunken*
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "sunkenb-start"
             :level 'sunkenb
             :trans
             (new 'static 'vector :x 2229231.2 :y -1019912.2 :z -6788748.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.895 :w 0.446)
             :camera-trans
             (new 'static 'vector :x 2187840.0 :y -998915.7 :z -6759328.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.5786 0.0 -0.8155 0.0992 0.9925 -0.0704 0.8094 -0.1217 -0.5743)
             :load-commands
             '((alive "exit-chamber-1"))
             :vis-nick 'sub
             :lev0 'sunken
             :disp0 'display
             :lev1 'sunkenb
             :disp1 'display)
        (new 'static
             'continue-point
             :name "sunkenb-helix"
             :level 'sunkenb
             :trans
             (new 'static 'vector :x 2466572.8 :y -1838989.2 :z -7299582.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.8841 :w 0.4672)
             :camera-trans
             (new 'static 'vector :x 2515616.2 :y -1817888.4 :z -7284843.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.2889 0.0 0.9573 -0.1163 0.9925 -0.0351 -0.9502 -0.1214 -0.2867)
             :load-commands
             '()
             :vis-nick 'sub
             :lev0 'sunken
             :disp0 'display
             :lev1 'sunkenb
             :disp1 'display))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 2867200.0 :y -2048000.0 :z -6553600.0 :w 2048000.0)
       :buzzer 49
       :bottom-height (meters -500)
       :run-packages
       '("common" "sunken")
       :wait-for-load #f))

(define swamp
  (new 'static
       'level-load-info
       :index 11
       :name 'swamp
       :visname 'swamp-vis
       :nickname 'swa
       :packages '(swamp)
       :sound-banks '(swamp)
       :music-bank 'swamp
       :ambient-sounds
       '()
       :mood '*swamp-mood*
       :mood-func 'update-mood-swamp
       :ocean '*ocean-map-village2*
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "swamp-start"
             :level 'swamp
             :trans
             (new 'static 'vector :x 1842537.2 :y 21027.227 :z -7333297.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9933 :w 0.1153)
             :camera-trans
             (new 'static 'vector :x 1862529.9 :y 44371.56 :z -7277995.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9403 0.0 0.3402 -0.0814 0.9708 -0.2252 -0.3303 -0.2394 -0.9129)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'display)
        (new 'static
             'continue-point
             :name "swamp-dock1"
             :level 'swamp
             :trans
             (new 'static 'vector :x 1360386.9 :y 5823.693 :z -8218890.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.585 :w -0.811)
             :camera-trans
             (new 'static 'vector :x 1314475.6 :y 26164.838 :z -8234152.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.3154 0.0 -0.9489 0.1134 0.9928 0.0376 0.9421 -0.1195 0.3131)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis)
        (new 'static
             'continue-point
             :name "swamp-cave1"
             :level 'swamp
             :trans
             (new 'static 'vector :x 1553700.5 :y 1835.4176 :z -8258429.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9871 :w -0.1599)
             :camera-trans
             (new 'static 'vector :x 1556873.2 :y 22715.598 :z -8208106.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9982 0.0 0.0596 -0.0072 0.9926 -0.1209 -0.0592 -0.1211 -0.9908)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis)
        (new 'static
             'continue-point
             :name "swamp-dock2"
             :level 'swamp
             :trans
             (new 'static 'vector :x 1645872.4 :y 36495.77 :z -8427323.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.8294 :w -0.5586)
             :camera-trans
             (new 'static 'vector :x 1599338.9 :y 57590.168 :z -8405954.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.418 0.0 -0.9084 0.1106 0.9925 -0.0509 0.9016 -0.1218 -0.4149)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis)
        (new 'static
             'continue-point
             :name "swamp-cave2"
             :level 'swamp
             :trans
             (new 'static 'vector :x 2037539.2 :y 1103.872 :z -8560013.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0559 :w 0.9984)
             :camera-trans
             (new 'static 'vector :x 1995208.2 :y 21832.908 :z -8586304.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.5516 0.0 -0.834 0.097 0.9932 0.0641 0.8283 -0.1163 0.5479)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis)
        (new 'static
             'continue-point
             :name "swamp-game"
             :level 'swamp
             :trans
             (new 'static 'vector :x 2612289.2 :y -2047.5905 :z -8315907.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.6975 :w 0.7165)
             :camera-trans
             (new 'static 'vector :x 2661940.5 :y 20693.81 :z -8317980.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.0406 0.0 0.9991 -0.1452 0.9893 0.0059 -0.9885 -0.1453 0.0402)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis)
        (new 'static
             'continue-point
             :name "swamp-cave3"
             :level 'swamp
             :trans
             (new 'static 'vector :x 2011811.4 :y 3711.7952 :z -7923027.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.5269 :w 0.8499)
             :camera-trans
             (new 'static 'vector :x 2053120.4 :y 22242.51 :z -7927784.5 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.1145 0.0 0.9934 -0.1412 0.9898 0.0162 -0.9833 -0.1422 0.1134)
             :load-commands
             '((special "swamp-blimp-3" #t)
              (special "precursor-arm-3" #t)
              (special "swamp-tetherrock-13" #t)
              (special "swamp-tetherrock-14" #t)
              (special "swamp-tetherrock-15" #t)
              (special "swamp-tetherrock-16" #t))
             :vis-nick 'swa
             :lev0 'swamp
             :disp0 'display
             :lev1 'village2
             :disp1 'special-vis))
       :tasks
       '(36 37 38 39 40 41 42 43)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 1986560.0 :z -8417280.0 :w 1003520.0)
       :buzzer 43
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define rolling
  (new 'static
       'level-load-info
       :index 12
       :name 'rolling
       :visname 'rolling-vis
       :nickname 'rol
       :packages '(rolling)
       :sound-banks '(rolling)
       :music-bank 'rolling
       :ambient-sounds
       '()
       :mood '*rolling-mood*
       :mood-func 'update-mood-rolling
       :ocean 'none
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "rolling-start"
             :level 'rolling
             :trans
             (new 'static 'vector :x 432272.6 :y 42821.633 :z -6737529.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.545 :w 0.8383)
             :camera-trans
             (new 'static 'vector :x 494105.8 :y 67237.48 :z -6748524.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.1759 0.0 0.9843 -0.2371 0.9705 0.0423 -0.9553 -0.2409 0.1707)
             :load-commands
             '()
             :vis-nick 'rol
             :lev0 'rolling
             :disp0 'display
             :lev1 'village2
             :disp1 'display))
       :tasks
       '(52 53 54 55 56 57 58 59)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x -753664.0 :y 131072.0 :z -6569984.0 :w 974848.0)
       :buzzer 57
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define ogre
  (new 'static
       'level-load-info
       :index 13
       :name 'ogre
       :visname 'ogre-vis
       :nickname 'ogr
       :packages '(ogre)
       :sound-banks '(ogre)
       :music-bank 'ogre
       :ambient-sounds
       '()
       :mood '*ogre-mood*
       :mood-func 'update-mood-ogre
       :ocean 'none
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "ogre-start"
             :level 'ogre
             :trans
             (new 'static 'vector :x 849775.8 :y 163962.88 :z -7301166.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9931 :w 0.1166)
             :camera-trans
             (new 'static 'vector :x 848906.25 :y 185056.88 :z -7249962.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9998 0.0 -0.0159 0.0019 0.9925 -0.1215 0.0158 -0.1215 -0.9924)
             :load-commands
             '()
             :vis-nick 'ogr
             :lev0 'ogre
             :disp0 'display
             :lev1 'village2
             :disp1 'display)
        (new 'static
             'continue-point
             :name "ogre-race"
             :level 'ogre
             :trans
             (new 'static 'vector :x 841424.9 :y 163801.1 :z -8205419.5 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9857 :w 0.168)
             :camera-trans
             (new 'static 'vector :x 860479.9 :y 183815.38 :z -8162368.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9145 0.0 0.4045 -0.0497 0.9924 -0.1125 -0.4015 -0.123 -0.9075)
             :load-commands
             '()
             :vis-nick 'ogr
             :lev0 'ogre
             :disp0 'display
             :lev1 'village2
             :disp1 #f)
        (new 'static
             'continue-point
             :name "ogre-end"
             :level 'ogre
             :trans
             (new 'static 'vector :x 3971233.5 :y 141227.62 :z -13935735.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.8721 :w 0.4892)
             :camera-trans
             (new 'static 'vector :x 3997892.2 :y 159604.73 :z -13904449.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.7611 0.0 0.6485 -0.0932 0.9896 -0.1094 -0.6417 -0.1438 -0.7532)
             :load-commands
             '()
             :vis-nick 'ogr
             :lev0 'village3
             :disp0 'display
             :lev1 'ogre
             :disp1 'display))
       :tasks
       '(86 87 110 88)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 2334720.0 :y 180224.0 :z -10653696.0 :w 3653632.0)
       :buzzer 88
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #t))

(define village3
  (new 'static
       'level-load-info
       :index 14
       :name 'village3
       :visname 'village3-vis
       :nickname 'vi3
       :packages '(village3)
       :sound-banks '(village3)
       :music-bank 'village3
       :ambient-sounds
       '()
       :mood '*village3-mood*
       :mood-func 'update-mood-village3
       :ocean #f
       :sky #t
       :continues
       '((new 'static
             'continue-point
             :name "village3-start"
             :level 'village3
             :trans
             (new 'static 'vector :x 4468021.5 :y 186608.03 :z -14054268.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9999 :w 0.005)
             :camera-trans
             (new 'static 'vector :x 4469439.5 :y 207701.2 :z -14003077.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9996 0.0 0.0268 -0.0032 0.9925 -0.1216 -0.0266 -0.1216 -0.9922)
             :load-commands
             '()
             :vis-nick 'vi3
             :lev0 'village3
             :disp0 'display
             :lev1 'ogre
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village3-warp"
             :level 'village3
             :flags (continue-flags warp)
             :trans
             (new 'static 'vector :x 4549776.0 :y 215375.88 :z -14285922.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.681 :w 0.7322)
             :camera-trans
             (new 'static 'vector :x 4543255.0 :y 226776.67 :z -14313317.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.8563 0.0 -0.2763 0.0456 0.8875 0.1413 0.2725 -0.1485 0.8446)
             :load-commands
             '()
             :vis-nick 'vi3
             :lev0 'village3
             :disp0 'display
             :lev1 'ogre
             :disp1 #f)
        (new 'static
             'continue-point
             :name "village3-farside"
             :level 'village3
             :trans
             (new 'static 'vector :x 4423744.0 :y 198723.58 :z -14530641.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.6611 :w 0.7502)
             :camera-trans
             (new 'static 'vector :x 4381844.0 :y 218599.83 :z -14551361.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.442 0.0 -0.8969 0.1099 0.9924 0.0541 0.8902 -0.1225 0.4387)
             :load-commands
             '()
             :vis-nick 'vi3
             :lev0 'village3
             :disp0 'display
             :lev1 'snow
             :disp1 #f))
       :tasks
       '(96 97 98 99 100 101 74 77)
       :priority #xc8
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 4571136.0 :y 389120.0 :z -14323712.0 :w 409600.0)
       :buzzer 77
       :bottom-height (meters -20)
       :run-packages
       '("common")
       :wait-for-load #f))

(define snow
  (new 'static
       'level-load-info
       :index 15
       :name 'snow
       :visname 'snow-vis
       :nickname 'sno
       :packages '(snow)
       :sound-banks '(snow)
       :music-bank 'snow
       :ambient-sounds
       '()
       :mood '*snow-mood*
       :mood-func 'update-mood-snow
       :ocean #f
       :sky #t
       :sun-fade 0.5
       :continues
       '((new 'static
             'continue-point
             :name "snow-start"
             :level 'snow
             :trans
             (new 'static 'vector :x 4256260.0 :y 983713.8 :z -14182752.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.7906 :w -0.6122)
             :camera-trans
             (new 'static 'vector :x 4303859.5 :y 1012363.7 :z -14156672.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.4804 0.0 0.877 -0.2049 0.9723 -0.1122 -0.8527 -0.2336 -0.4671)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-fort"
             :level 'snow
             :trans
             (new 'static 'vector :x 3430875.2 :y 897149.3 :z -13397581.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0968 :w 0.9952)
             :camera-trans
             (new 'static 'vector :x 3428789.8 :y 918241.25 :z -13448724.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9991 0.0 -0.0419 0.0051 0.9925 0.1216 0.0415 -0.1217 0.9916)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-flut-flut"
             :level 'snow
             :trans
             (new 'static 'vector :x 2481850.0 :y 1054709.4 :z -13922438.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.8628 :w -0.5055)
             :camera-trans
             (new 'static 'vector :x 2497063.0 :y 1069339.9 :z -13900353.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.8224 0.0 0.5688 -0.135 0.9713 -0.1953 -0.5525 -0.2374 -0.7989)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-pass-to-fort"
             :level 'snow
             :trans
             (new 'static 'vector :x 3751044.8 :y 917612.1 :z -13828696.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.3387 :w -0.9408)
             :camera-trans
             (new 'static 'vector :x 3779776.0 :y 933972.8 :z -13845825.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.6061 0.0 0.7953 -0.1493 0.9822 0.1138 -0.7812 -0.1878 0.5953)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-by-ice-lake"
             :level 'snow
             :trans
             (new 'static 'vector :x 3151164.5 :y 1049638.1 :z -14246464.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.6226 :w 0.7824)
             :camera-trans
             (new 'static 'vector :x 3203905.2 :y 1080037.8 :z -14270850.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.4189 0.0 0.9079 -0.2169 0.971 0.1001 -0.8816 -0.2389 0.4068)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-by-ice-lake-alt"
             :level 'snow
             :trans
             (new 'static 'vector :x 3053335.0 :y 1048927.9 :z -14058945.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9997 :w 0.022)
             :camera-trans
             (new 'static 'vector :x 3045845.5 :y 1068868.0 :z -14012568.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.987 0.0 -0.1601 0.0195 0.9924 -0.1207 0.1589 -0.1223 -0.9796)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-outside-fort"
             :level 'snow
             :trans
             (new 'static 'vector :x 3431014.0 :y 901474.7 :z -13600187.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.0954 :w -0.9954)
             :camera-trans
             (new 'static 'vector :x 3429969.0 :y 922565.44 :z -13651353.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9998 0.0 -0.0196 0.0023 0.9926 0.1213 0.0195 -0.1213 0.9924)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-outside-cave"
             :level 'snow
             :trans
             (new 'static 'vector :x 3200864.2 :y 907400.4 :z -13676660.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.5867 :w -0.8097)
             :camera-trans
             (new 'static 'vector :x 3247600.8 :y 928464.06 :z -13697606.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.4062 0.0 0.9137 -0.1107 0.9926 0.0492 -0.907 -0.1211 0.4032)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "snow-across-from-flut"
             :level 'snow
             :trans
             (new 'static 'vector :x 2721898.5 :y 1049845.0 :z -13743428.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.7688 :w -0.6394)
             :camera-trans
             (new 'static 'vector :x 2712702.5 :y 1070288.5 :z -13791593.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9554 0.0 -0.2951 0.0343 0.9932 0.1111 0.2931 -0.1163 0.9489)
             :load-commands
             '()
             :vis-nick 'sno
             :lev0 'snow
             :disp0 'display
             :lev1 'village3
             :disp1 'display))
       :tasks
       '(60 61 62 63 64 66 67 65)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 3072000.0 :y 1142784.0 :z -14028800.0 :w 1290240.0)
       :buzzer 65
       :bottom-height (meters 128)
       :run-packages
       '("common")
       :wait-for-load #f))

(define maincave
  (new 'static
       'level-load-info
       :index 16
       :name 'maincave
       :visname 'maincave-vis
       :nickname 'mai
       :packages '(maincave)
       :sound-banks '(maincave)
       :music-bank 'maincave
       :ambient-sounds
       '()
       :mood '*maincave-mood*
       :mood-func 'update-mood-maincave
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "maincave-start"
             :level 'maincave
             :trans
             (new 'static 'vector :x 4420967.0 :y 33006.387 :z -13154230.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0174 :w -0.9998)
             :camera-trans
             (new 'static 'vector :x 4428164.5 :y 54074.164 :z -13204933.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.99 0.0 0.1405 -0.0169 0.9927 0.1192 -0.1395 -0.1204 0.9828)
             :load-commands
             '()
             :vis-nick 'mai
             :lev0 'maincave
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "maincave-to-darkcave"
             :level 'maincave
             :trans
             (new 'static 'vector :x 4172175.8 :y 154223.83 :z -12445165.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.2093 :w 0.9778)
             :camera-trans
             (new 'static 'vector :x 4193893.2 :y 175317.81 :z -12491520.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9052 0.0 0.4248 -0.0514 0.9926 0.1096 -0.4217 -0.1211 0.8986)
             :load-commands
             '()
             :vis-nick 'mai
             :lev0 'maincave
             :disp0 'display
             :lev1 'darkcave
             :disp1 #f)
        (new 'static
             'continue-point
             :name "maincave-to-robocave"
             :level 'maincave
             :trans
             (new 'static 'vector :x 4760896.5 :y 44221.234 :z -12409880.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.548 :w 0.8364)
             :camera-trans
             (new 'static 'vector :x 4745230.0 :y 57869.926 :z -12426885.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7343 0.0 -0.6788 0.1872 0.9611 0.2026 0.6524 -0.2759 0.7058)
             :load-commands
             '()
             :vis-nick 'mai
             :lev0 'maincave
             :disp0 'display
             :lev1 'robocave
             :disp1 #f))
       :tasks
       '(78 79 80 81 82 83 84 85)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 4517888.0 :y 114688.0 :z -12484608.0 :w 655360.0)
       :buzzer 85
       :bottom-height (meters -60)
       :run-packages
       '("common")
       :wait-for-load #f))

(define darkcave
  (new 'static
       'level-load-info
       :index 17
       :name 'darkcave
       :visname 'darkcave-vis
       :nickname 'dar
       :packages '(darkcave)
       :sound-banks '(darkcave)
       :music-bank 'maincave
       :ambient-sounds
       '()
       :mood '*darkcave-mood*
       :mood-func 'update-mood-darkcave
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "darkcave-start"
             :level 'darkcave
             :trans
             (new 'static 'vector :x 3813246.2 :y 129487.664 :z -12114304.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.1439 :w 0.9895)
             :camera-trans
             (new 'static 'vector :x 3793301.0 :y 145573.48 :z -12139847.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7892 0.0 -0.614 0.1178 0.9813 0.1515 0.6026 -0.1919 0.7745)
             :load-commands
             '()
             :vis-nick 'dar
             :lev0 'maincave
             :disp0 'display
             :lev1 'darkcave
             :disp1 'display))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 3620864.0 :y 266240.0 :z -11935744.0 :w 368640.0)
       :buzzer 85
       :bottom-height (meters -60)
       :run-packages
       '("common" "maincave")
       :wait-for-load #t))

(define robocave
  (new 'static
       'level-load-info
       :index 18
       :name 'robocave
       :visname 'robocave-vis
       :nickname 'rob
       :packages '(robocave)
       :sound-banks '(robocave)
       :music-bank 'maincave
       :ambient-sounds
       '()
       :mood '*robocave-mood*
       :mood-func 'update-mood-robocave
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "robocave-start"
             :level 'robocave
             :trans
             (new 'static 'vector :x 5208223.5 :y 69697.945 :z -11781496.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.3654 :w -0.9308)
             :camera-trans
             (new 'static 'vector :x 5171715.0 :y 90796.85 :z -11817413.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7006 0.0 -0.7134 0.0864 0.9926 0.0849 0.7082 -0.1212 0.6954)
             :load-commands
             '()
             :vis-nick 'rob
             :lev0 'maincave
             :disp0 'display
             :lev1 'robocave
             :disp1 'display)
        (new 'static
             'continue-point
             :name "robocave-bottom"
             :level 'robocave
             :trans
             (new 'static 'vector :x 5435461.5 :y -97111.24 :z -11588379.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.1086 :w 0.994)
             :camera-trans
             (new 'static 'vector :x 5409966.5 :y -76017.664 :z -11632764.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.8662 0.0 -0.4996 0.0605 0.9926 0.105 0.4959 -0.1212 0.8598)
             :load-commands
             '()
             :vis-nick 'rob
             :lev0 'maincave
             :disp0 'display
             :lev1 'robocave
             :disp1 'display))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 5529600.0 :y 81920.0 :z -11468800.0 :w 512000.0)
       :buzzer 85
       :bottom-height (meters -60)
       :run-packages
       '("common" "maincave")
       :wait-for-load #t))

(define lavatube
  (new 'static
       'level-load-info
       :index 19
       :name 'lavatube
       :visname 'lavatube-vis
       :nickname 'lav
       :packages '(lavatube)
       :sound-banks '(lavatube)
       :music-bank 'lavatube
       :ambient-sounds
       '()
       :mood '*lavatube-mood*
       :mood-func 'update-mood-lavatube
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "lavatube-start"
             :level 'lavatube
             :trans
             (new 'static 'vector :x 5511317.0 :y 159871.8 :z -14621239.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.3753 :w -0.9268)
             :camera-trans
             (new 'static 'vector :x 5510636.5 :y 197720.06 :z -14663128.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9992 0.0 -0.0386 0.0178 0.8875 0.4603 0.0343 -0.4606 0.8868)
             :load-commands
             '()
             :vis-nick 'lav
             :lev0 'lavatube
             :disp0 'display
             :lev1 'village3
             :disp1 'display)
        (new 'static
             'continue-point
             :name "lavatube-middle"
             :level 'lavatube
             :trans
             (new 'static 'vector :x 9081441.0 :y -3935.8464 :z -14056285.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.7002 :w -0.7139)
             :camera-trans
             (new 'static 'vector :x 9055362.0 :y 10606.592 :z -14050822.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.205 0.0 -0.9787 0.2321 0.9714 -0.0486 0.9508 -0.2371 -0.1991)
             :load-commands
             '()
             :vis-nick 'lav
             :lev0 'lavatube
             :disp0 'display
             :lev1 'village3
             :disp1 #f)
        (new 'static
             'continue-point
             :name "lavatube-after-ribbon"
             :level 'lavatube
             :trans
             (new 'static 'vector :x 9954895.0 :y 390513.06 :z -16548614.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.7485 :w -0.663)
             :camera-trans
             (new 'static 'vector :x 9923721.0 :y 406466.16 :z -16541633.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.2191 0.0 -0.9756 0.1906 0.9807 -0.0428 0.9568 -0.1953 -0.2149)
             :load-commands
             '()
             :vis-nick 'lav
             :lev0 'lavatube
             :disp0 'display
             :lev1 'citadel
             :disp1 #f)
        (new 'static
             'continue-point
             :name "lavatube-end"
             :level 'lavatube
             :trans
             (new 'static 'vector :x 11479892.0 :y -163656.5 :z -18266490.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9589 :w -0.2836)
             :camera-trans
             (new 'static 'vector :x 11526721.0 :y -143482.47 :z -18257412.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.3027 0.0 0.953 -0.1235 0.9915 -0.0392 -0.945 -0.1296 -0.3001)
             :load-commands
             '()
             :vis-nick 'lav
             :lev0 'lavatube
             :disp0 'display
             :lev1 'citadel
             :disp1 'display))
       :tasks
       '(89 90)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 8806400.0 :y 131072.0 :z -15564800.0 :w 3174400.0)
       :buzzer 90
       :bottom-height (meters -70)
       :run-packages
       '("common")
       :wait-for-load #t))

(define citadel
  (new 'static
       'level-load-info
       :index 20
       :name 'citadel
       :visname 'citadel-vis
       :nickname 'cit
       :packages '(citadel)
       :sound-banks '(citadel)
       :music-bank 'citadel
       :ambient-sounds
       '()
       :mood '*citadel-mood*
       :mood-func 'update-mood-citadel
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "citadel-start"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11442706.0 :y -142755.84 :z -18869044.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.9992 :w 0.0392)
             :camera-trans
             (new 'static 'vector :x 11441183.0 :y -122509.31 :z -18820882.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9991 0.0 -0.0411 0.005 0.9925 -0.122 0.0408 -0.1221 -0.9916)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'lavatube
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-entrance"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11443969.0 :y -154216.03 :z -18472782.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9728 :w 0.2314)
             :camera-trans
             (new 'static 'vector :x 11436929.0 :y -134244.36 :z -18426254.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9898 0.0 -0.1424 0.0173 0.9925 -0.1207 0.1413 -0.1219 -0.9824)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'lavatube
             :disp1 'display)
        (new 'static
             'continue-point
             :name "citadel-warp"
             :level 'citadel
             :flags (continue-flags warp)
             :trans
             (new 'static 'vector :x 11454895.0 :y -161791.6 :z -18204690.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.7511 :w 0.6601)
             :camera-trans
             (new 'static 'vector :x 11406872.0 :y -141278.0 :z -18194638.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.1989 0.0 -0.98 0.1179 0.9927 -0.0239 0.9728 -0.1203 -0.1974)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'lavatube
             :disp1 'display)
        (new 'static
             'continue-point
             :name "citadel-launch-start"
             :level 'citadel
             :trans
             (new 'static 'vector :x 10827551.0 :y -94047.02 :z -18946718.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.8377 :w -0.546)
             :camera-trans
             (new 'static 'vector :x 10862150.0 :y -75343.875 :z -18922316.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.5766 0.0 0.8169 -0.1125 0.9904 -0.0794 -0.8091 -0.1378 -0.5711)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'lavatube
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-launch-end"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11047507.0 :y -81514.086 :z -19495960.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.0292 :w 0.9995)
             :camera-trans
             (new 'static 'vector :x 11033498.0 :y -63027.2 :z -19534916.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9413 0.0 -0.3373 0.0481 0.9897 0.1343 0.3339 -0.1427 0.9317)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'finalboss
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-plat-start"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11443470.0 :y -120194.664 :z -19845628.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.9907 :w -0.1355)
             :camera-trans
             (new 'static 'vector :x 11443545.0 :y -99100.266 :z -19794374.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9999 0.0 0.0016 -0.0001 0.9926 -0.1207 -0.0015 -0.1207 -0.9926)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'finalboss
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-plat-end"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11269726.0 :y -12132.352 :z -19614712.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.0419 :w 0.9991)
             :camera-trans
             (new 'static 'vector :x 11264449.0 :y 7920.8447 :z -19661710.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.9938 0.0 -0.1103 0.0134 0.9924 0.1215 0.1095 -0.1223 0.9864)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'finalboss
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-generator-start"
             :level 'citadel
             :trans
             (new 'static 'vector :x 12138031.0 :y -36900.863 :z -18933304.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.7487 :w 0.6628)
             :camera-trans
             (new 'static 'vector :x 12101831.0 :y -19811.123 :z -18933632.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.0093 0.0 -0.9999 0.1678 0.9858 0.0015 0.9857 -0.1678 0.0092)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'finalboss
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-generator-end"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11837483.0 :y -20177.715 :z -19506848.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.3564 :w 0.9342)
             :camera-trans
             (new 'static 'vector :x 11872697.0 :y 887.6032 :z -19544198.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.7296 0.0 0.6838 -0.0851 0.9922 0.0908 -0.6785 -0.1245 0.7239)
             :load-commands
             '()
             :vis-nick #f
             :lev0 'citadel
             :disp0 'display
             :lev1 #f
             :disp1 #f)
        (new 'static
             'continue-point
             :name "citadel-elevator"
             :level 'citadel
             :trans
             (new 'static 'vector :x 11447961.0 :y 234055.27 :z -19169000.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.2351 :w 0.9719)
             :camera-trans
             (new 'static 'vector :x 11454465.0 :y 252947.66 :z -19126656.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.9932 0.0 0.1161 -0.017 0.9892 -0.1454 -0.1148 -0.1464 -0.9825)
             :load-commands
             '()
             :vis-nick 'cit
             :lev0 'citadel
             :disp0 'display
             :lev1 'finalboss
             :disp1 #f))
       :tasks
       '(70 71 72 73 91)
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 11436032.0 :y -462848.0 :z -19750912.0 :w 1228800.0)
       :buzzer 91
       :bottom-height (meters -114)
       :run-packages
       '("common")
       :wait-for-load #t))

(define finalboss
  (new 'static
       'level-load-info
       :index 21
       :name 'finalboss
       :visname 'finalboss-vis
       :nickname 'fin
       :packages '(finalboss)
       :sound-banks '(finalboss)
       :music-bank 'finalboss
       :ambient-sounds
       '()
       :mood '*finalboss-mood*
       :mood-func 'update-mood-finalboss
       :ocean #f
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "finalboss-start"
             :level 'finalboss
             :trans
             (new 'static 'vector :x 11548456.0 :y 2215872.0 :z -19409498.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.7325 :w 0.6807)
             :camera-trans
             (new 'static 'vector :x 11513311.0 :y 2234999.5 :z -19435708.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.5883 0.0 -0.8085 0.1074 0.9911 0.0781 0.8014 -0.1328 0.5831)
             :load-commands
             '((special "citb-exit-plat-4" #t))
             :vis-nick 'fin
             :lev0 'finalboss
             :disp0 'display
             :lev1 'citadel
             :disp1 'special)
        (new 'static
             'continue-point
             :name "finalboss-fight"
             :level 'finalboss
             :trans
             (new 'static 'vector :x 12288335.0 :y 1970461.9 :z -19848522.0 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.5359 :w -0.8442)
             :camera-trans
             (new 'static 'vector :x 12265366.0 :y 1984228.5 :z -19842574.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.243 0.0 -0.97 0.2594 0.9635 -0.065 0.9346 -0.2675 -0.2341)
             :load-commands
             '((special "citb-exit-plat-4" #t))
             :vis-nick 'fin
             :lev0 'finalboss
             :disp0 'display
             :lev1 'citadel
             :disp1 'special))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x 11837440.0 :y 2129920.0 :z -19578880.0 :w 778240.0)
       :buzzer 91
       :bottom-height (meters -114)
       :run-packages
       '("common")
       :wait-for-load #f))

(define intro
  (new 'static
       'level-load-info
       :index 22
       :name 'intro
       :visname 'intro-vis
       :nickname 'int
       :packages '(intro)
       :sound-banks
       '()
       :music-bank #f
       :ambient-sounds
       '()
       :mood '*default-mood*
       :mood-func 'update-mood-default
       :ocean #f
       :sky #f
       :continues
       '()
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere (new 'static 'sphere)
       :bottom-height (meters -10000000)
       :run-packages
       '("common")
       :wait-for-load #f))

(define demo
  (new 'static
       'level-load-info
       :index 23
       :name 'demo
       :visname 'demo-vis
       :nickname 'dem
       :packages
       '()
       :sound-banks '(village1)
       :music-bank 'village1
       :ambient-sounds
       '()
       :mood '*default-mood*
       :mood-func 'update-mood-default
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "demo-start"
             :level 'demo
             :flags (continue-flags demo)
             :trans
             (new 'static 'vector :x 66396.16 :y 29782.016 :z -919973.5 :w 1.0)
             :quat
             (new 'static 'quaternion :w 1.0)
             :camera-trans
             (new 'static 'vector :x 76871.68 :y 55061.707 :z -938752.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.8743 0.0 0.4852 -0.2117 0.8997 0.3816 -0.4365 -0.4364 0.7866)
             :load-commands
             '()
             :vis-nick 'dem
             :lev0 'demo
             :disp0 'special
             :lev1 #f
             :disp1 #f))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere (new 'static 'sphere)
       :bottom-height (meters -10000000)
       :run-packages
       '("common")
       :wait-for-load #f))

(define title
  (new 'static
       'level-load-info
       :index 24
       :name 'title
       :visname 'title-vis
       :nickname 'tit
       :packages
       '()
       :sound-banks
       '()
       :music-bank 'village1
       :ambient-sounds
       '()
       :mood '*village1-mood*
       :mood-func 'update-mood-village1
       :ocean #f
       :sky #f
       :continues
       '((new 'static
             'continue-point
             :name "title-start"
             :level 'title
             :flags (continue-flags title)
             :trans
             (new 'static 'vector :x -635598.9 :y 222551.66 :z 710496.25 :w 1.0)
             :quat
             (new 'static 'quaternion :y -0.3323 :w -0.9431)
             :camera-trans
             (new 'static 'vector :x -665644.25 :y 250803.0 :z 668470.9 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 0.8129 0.0 -0.5823 0.0958 0.9863 0.1337 0.5744 -0.1645 0.8018)
             :load-commands
             '()
             :vis-nick 'tit
             :lev0 'title
             :disp0 'special
             :lev1 'village1
             :disp1 #f))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :x -40960.0 :z 40960.0 :w 1126400.0)
       :bottom-height (meters -10000000)
       :run-packages
       '("common")
       :wait-for-load #f))

(define halfpipe
  (new 'static
       'level-load-info
       :index 25
       :name 'halfpipe
       :visname 'halfpipe-vis
       :nickname 'none
       :packages
       '()
       :sound-banks
       '()
       :music-bank #f
       :ambient-sounds
       '()
       :mood '*default-mood*
       :mood-func 'update-mood-default
       :ocean #f
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "halfpipe"
             :level 'halfpipe
             :trans
             (new 'static 'vector :x -1048.9856 :y -172047.97 :z -212555.78 :w 1.0)
             :quat
             (new 'static 'quaternion :y 0.061 :w 0.9981)
             :camera-trans
             (new 'static 'vector :x -9941.401 :y -150049.17 :z -159587.94 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 -0.979 0.0 -0.2037 0.0545 0.9634 -0.2622 0.1963 -0.2678 -0.9432)
             :load-commands
             '()
             :vis-nick #f
             :lev0 'halfpipe
             :disp0 'display
             :lev1 #f
             :disp1 #f))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :w 167772160000.0)
       :bottom-height (meters -10000000)
       :run-packages
       '()
       :wait-for-load #t))

(define default-level
  (new 'static
       'level-load-info
       :index 26
       :name 'default-level
       :visname 'default-level-vis
       :nickname 'none
       :packages
       '()
       :sound-banks
       '()
       :music-bank #f
       :ambient-sounds
       '()
       :mood '*default-mood*
       :mood-func 'update-mood-default
       :ocean #f
       :sky #t
       :continues
       '()
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :w 167772160000.0)
       :bottom-height (meters -20)
       :run-packages
       '()
       :wait-for-load #t))

(define *level-load-list*
  '(training village1
            beach
            jungle
            jungleb
            misty
            firecanyon
            village2
            sunken
            sunkenb
            swamp
            rolling
            ogre
            village3
            snow
            maincave
            darkcave
            robocave
            lavatube
            citadel
            finalboss
            intro
            demo
            title
            halfpipe
            default-level))

;;;;;;;;; CUSTOM LEVELS
(define test-zone
  (new 'static
       'level-load-info
       :index 26
       :name 'test-zone
       :visname 'test-zone-vis
       ;; name + -vis
       :nickname 'tsz
       ;; nickname
       :packages
       '()
       :sound-banks
       '()
       :music-bank #f
       :ambient-sounds
       '()
       :mood '*village1-mood*
       :mood-func 'update-mood-village1
       :ocean '*ocean-map-village1*
       :sky #t
       :sun-fade 1.0
       :continues
       '((new 'static
             'continue-point
             :name "test-zone-start"
             :level 'test-zone
             :trans
             (new 'static 'vector :x 0.0 :y (meters 10.) :z (meters 10.) :w 1.0)
             :quat
             (new 'static 'quaternion :w 1.0)
             :camera-trans
             (new 'static 'vector :x 0.0 :y 4096.0 :z 0.0 :w 1.0)
             :camera-rot
             (new 'static 'array float 9 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0)
             :load-commands
             '()
             :vis-nick 'none
             :lev0 'test-zone
             :disp0 'display
             :lev1 #f
             :disp1 #f))
       :tasks
       '()
       :priority 100
       :load-commands
       '()
       :alt-load-commands
       '()
       :bsp-mask #xffffffffffffffff
       :bsphere
       (new 'static 'sphere :w 167772160000.0)
       :bottom-height (meters -20)
       :run-packages
       '()
       :wait-for-load #t))

(cons! *level-load-list* 'test-zone)
