Files
jak-project/goal_src/jak1/engine/ui/progress/progress-static.gc
T

1400 lines
64 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: progress-static.gc
;; name in dgo: progress-static
;; dgos: GAME, ENGINE
;; This file contains the layouts for all of the menus.
;; options in the start menu options
(define *main-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id game-options) :scale #t :param3 (game-option-menu game-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id graphic-options) :scale #t :param3 (game-option-menu graphic-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id sound-options) :scale #t :param3 (game-option-menu sound-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id load-game) :scale #t :param3 (game-option-menu load-game))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id save-game) :scale #t :param3 (game-option-menu save-game))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id quit-game) :scale #t :param3 (game-option-menu quit))
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *title*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id new-game) :scale #t :param3 (game-option-menu save-game-title))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id load-game) :scale #t :param3 (game-option-menu load-game))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id options) :scale #t :param3 (game-option-menu settings-title))
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id game-options) :scale #t :param3 (game-option-menu game-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id graphic-options) :scale #t :param3 (game-option-menu graphic-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id sound-options) :scale #t :param3 (game-option-menu sound-settings))
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *main-options-demo*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id game-options) :scale #t :param3 (game-option-menu game-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id graphic-options) :scale #t :param3 (game-option-menu graphic-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id sound-options) :scale #t :param3 (game-option-menu sound-settings))
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *main-options-demo-shared*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id game-options) :scale #t :param3 (game-option-menu game-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id graphic-options) :scale #t :param3 (game-option-menu graphic-settings))
(new 'static 'game-option :option-type (game-option-type menu) :name (game-text-id sound-options) :scale #t :param3 (game-option-menu sound-settings))
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id exit-demo) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *game-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id vibrations) :scale #t)
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id play-hints) :scale #t)
(new 'static 'game-option :option-type (game-option-type language) :name (game-text-id language) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *game-options-japan*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id vibrations) :scale #t)
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id play-hints) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *game-options-demo*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id vibrations) :scale #t)
(new 'static 'game-option :option-type (game-option-type on-off) :name (game-text-id play-hints) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *graphic-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type center-screen) :name (game-text-id center-screen) :scale #t)
(new 'static 'game-option :option-type (game-option-type aspect-ratio) :name (game-text-id aspect-ratio) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *graphic-title-options-pal*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type center-screen) :name (game-text-id center-screen) :scale #t)
(new 'static 'game-option :option-type (game-option-type video-mode) :name (game-text-id video-mode) :scale #t)
(new 'static 'game-option :option-type (game-option-type aspect-ratio) :name (game-text-id aspect-ratio) :scale #t)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *sound-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :name (game-text-id sfx-volume) :scale #t :param2 100.0)
(new 'static 'game-option :name (game-text-id music-volume) :scale #t :param2 100.0)
(new 'static 'game-option :name (game-text-id speech-volume) :scale #t :param2 100.0)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #t)
)
)
(define *yes-no-options* (new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type yes-no) :scale #f)
)
)
(define *ok-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id ok) :scale #f)
)
)
(define *load-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #f)
)
)
(define *save-options*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #f)
)
)
(define *save-options-title*
(new 'static 'boxed-array :type game-option
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id continue-without-saving) :scale #f)
(new 'static 'game-option :option-type (game-option-type button) :name (game-text-id back) :scale #f)
)
)
;; maps options to a progress screen
(define *options-remap* (new 'static 'boxed-array :type (array game-option) :length 0 :allocated-length (#if (not PC_PORT) 35 60)))
;; added in PC port
(defenum level-task-data-index
:type int32
(training 0)
(village1 1)
(beach 2)
(jungle 3)
(misty 4)
(firecanyon 5)
(village2 6)
(sunken 7)
(swamp 8)
(rolling 9)
(ogre 10)
(village3 11)
(snow 12)
(cave 13)
(lavatube 14)
(citadel 15)
(max 16)
)
;; maps level-info indices to the appropriate offset in *level-task-data*
(define *level-task-data-remap*
(new 'static 'boxed-array :type int32
(level-task-data-index training)
(level-task-data-index village1)
(level-task-data-index beach)
(level-task-data-index jungle) ;; jungle?
(level-task-data-index jungle) ;; jungleb?
(level-task-data-index misty)
(level-task-data-index firecanyon)
(level-task-data-index village2)
(level-task-data-index sunken) ;; sunken?
(level-task-data-index sunken) ;; sunkenb?
(level-task-data-index swamp)
(level-task-data-index rolling)
(level-task-data-index ogre)
(level-task-data-index village3)
(level-task-data-index snow)
(level-task-data-index cave) ;; maincave?
(level-task-data-index cave) ;; robocave?
(level-task-data-index cave) ;; darkcave?
(level-task-data-index lavatube)
(level-task-data-index citadel) ;; citadel?
(level-task-data-index citadel) ;; finalboss?
(level-task-data-index misty) ;; demo?
(level-task-data-index misty) ;; intro?
)
)
;; maps goal language ID to its name string ID
(define *language-name-remap*
(new 'static 'boxed-array :type game-text-id
(game-text-id english)
(game-text-id french)
(game-text-id german)
(game-text-id spanish)
(game-text-id italian)
(game-text-id japanese)
)
)
;; all level tasks
(define *level-task-data*
(new 'static 'boxed-array :type level-tasks-info
(new 'static 'level-tasks-info
:level-name-id (game-text-id training-level-name)
:text-group-index 1
:nb-of-tasks 4
:buzzer-task-index 3
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task training-gimmie)
:task-name
(new 'static 'array game-text-id 4
(game-text-id training-gimmie-task-name)
(game-text-id training-gimmie-task-name)
(game-text-id training-gimmie-task-name)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task training-door)
:task-name
(new 'static 'array game-text-id 4
(game-text-id training-door-task-name)
(game-text-id training-door-task-name)
(game-text-id training-door-task-name)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task training-climb)
:task-name
(new 'static 'array game-text-id 4
(game-text-id training-climb-task-name)
(game-text-id training-climb-task-name)
(game-text-id training-climb-task-name)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task training-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id training-buzzer-task-name)
(game-text-id training-buzzer-task-name)
(game-text-id training-buzzer-task-name)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id village1-level-name)
:text-group-index 1
:nb-of-tasks 6
:buzzer-task-index 5
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task village1-mayor-money)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village1-mayor-money)
(game-text-id village1-mayor-money)
(game-text-id village1-mayor-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village1-uncle-money)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village1-uncle-money)
(game-text-id village1-uncle-money)
(game-text-id village1-uncle-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village1-yakow)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village1-yakow-herd)
(game-text-id village1-yakow-herd)
(game-text-id village1-yakow-return)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village1-oracle-money1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village1-oracle)
(game-text-id village1-oracle)
(game-text-id village1-oracle)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village1-oracle-money2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village1-oracle)
(game-text-id village1-oracle)
(game-text-id village1-oracle)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village1-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id beach-level-name)
:text-group-index 1
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task beach-ecorocks)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-ecorocks)
(game-text-id beach-ecorocks)
(game-text-id beach-ecorocks)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-flutflut)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-flutflut-push)
(game-text-id beach-flutflut-push)
(game-text-id beach-flutflut-meet)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-pelican)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-pelican)
(game-text-id beach-pelican)
(game-text-id beach-pelican)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-seagull)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-seagull)
(game-text-id beach-seagull)
(game-text-id beach-seagull-get)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-cannon)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-cannon)
(game-text-id beach-cannon)
(game-text-id beach-cannon)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-gimmie)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-gimmie)
(game-text-id beach-gimmie)
(game-text-id beach-gimmie)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-sentinel)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-sentinel)
(game-text-id beach-sentinel)
(game-text-id beach-sentinel)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task beach-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id jungle-level-name)
:text-group-index 1
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task jungle-lurkerm)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-lurkerm-unblock)
(game-text-id jungle-lurkerm-connect)
(game-text-id jungle-lurkerm-return)
(game-text-id zero)
)
:text-index-when-resolved 1
)
(new 'static 'task-info-data
:task-id (game-task jungle-tower)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-tower)
(game-text-id jungle-tower)
(game-text-id jungle-tower)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-eggtop)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-eggtop)
(game-text-id jungle-eggtop)
(game-text-id jungle-eggtop)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-plant)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-plant)
(game-text-id jungle-plant)
(game-text-id jungle-plant)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-fishgame)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-fishgame)
(game-text-id jungle-fishgame)
(game-text-id jungle-fishgame)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-canyon-end)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-canyon-end)
(game-text-id jungle-canyon-end)
(game-text-id jungle-canyon-end)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-temple-door)
:task-name
(new 'static 'array game-text-id 4
(game-text-id jungle-temple-door)
(game-text-id jungle-temple-door)
(game-text-id jungle-temple-door)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task jungle-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id misty-level-name)
:text-group-index 1
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task misty-muse)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-muse-catch)
(game-text-id misty-muse-catch)
(game-text-id misty-muse-return)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-boat)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-boat)
(game-text-id misty-boat)
(game-text-id misty-boat)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-cannon)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-cannon)
(game-text-id misty-cannon)
(game-text-id misty-cannon)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-warehouse)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-return-to-pool)
(game-text-id misty-return-to-pool)
(game-text-id misty-return-to-pool)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-bike)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-find-transpad)
(game-text-id misty-balloon-lurkers)
(game-text-id misty-find-transpad)
(game-text-id zero)
)
:text-index-when-resolved 1
)
(new 'static 'task-info-data
:task-id (game-task misty-bike-jump)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-bike-jump)
(game-text-id misty-bike-jump)
(game-text-id misty-bike-jump)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-eco-challenge)
:task-name
(new 'static 'array game-text-id 4
(game-text-id misty-eco-challenge)
(game-text-id misty-eco-challenge)
(game-text-id misty-eco-challenge)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task misty-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id beach-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id firecanyon-level-name)
:text-group-index 5
:nb-of-tasks 2
:buzzer-task-index 1
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task firecanyon-end)
:task-name
(new 'static 'array game-text-id 4
(game-text-id firecanyon-end)
(game-text-id firecanyon-end)
(game-text-id firecanyon-end)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task firecanyon-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id firecanyon-buzzer)
(game-text-id firecanyon-buzzer)
(game-text-id firecanyon-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id village2-level-name)
:text-group-index 2
:nb-of-tasks 6
:buzzer-task-index 5
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task village2-gambler-money)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village2-gambler-money)
(game-text-id village2-gambler-money)
(game-text-id village2-gambler-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village2-geologist-money)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village2-geologist-money)
(game-text-id village2-geologist-money)
(game-text-id village2-geologist-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village2-warrior-money)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village2-warrior-money)
(game-text-id village2-warrior-money)
(game-text-id village2-warrior-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village2-oracle-money1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village2-oracle-money)
(game-text-id village2-oracle-money)
(game-text-id village2-oracle-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village2-oracle-money2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village2-oracle-money)
(game-text-id village2-oracle-money)
(game-text-id village2-oracle-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village2-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id sunken-level-name)
:text-group-index 2
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task sunken-room)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-elevator-raise)
(game-text-id sunken-elevator-raise)
(game-text-id sunken-elevator-get-to-roof)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-pipe)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-pipe)
(game-text-id sunken-pipe)
(game-text-id sunken-pipe)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-slide)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-slide)
(game-text-id sunken-slide)
(game-text-id sunken-slide)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-sharks)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-pool)
(game-text-id sunken-pool)
(game-text-id sunken-pool)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-platforms)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-platforms)
(game-text-id sunken-platforms)
(game-text-id sunken-platforms)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-top-of-helix)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-climb-tube)
(game-text-id sunken-climb-tube)
(game-text-id sunken-climb-tube)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-spinning-room)
:task-name
(new 'static 'array game-text-id 4
(game-text-id sunken-spinning-room)
(game-text-id sunken-spinning-room)
(game-text-id sunken-spinning-room)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task sunken-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id swamp-level-name)
:text-group-index 2
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task swamp-flutflut)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-flutflut)
(game-text-id swamp-flutflut)
(game-text-id swamp-flutflut)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-billy)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-billy)
(game-text-id swamp-billy)
(game-text-id swamp-billy)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-battle)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-battle)
(game-text-id swamp-battle)
(game-text-id swamp-battle)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-tether-4)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-tether-1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-tether-2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-tether-3)
:task-name
(new 'static 'array game-text-id 4
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id swamp-tether)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task swamp-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id rolling-level-name)
:text-group-index 2
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task rolling-moles)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-moles)
(game-text-id rolling-moles)
(game-text-id rolling-moles-return)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-robbers)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-robbers)
(game-text-id rolling-robbers)
(game-text-id rolling-robbers)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-race)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-race)
(game-text-id rolling-race)
(game-text-id rolling-race-return)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-lake)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-lake)
(game-text-id rolling-lake)
(game-text-id rolling-lake)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-plants)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-plants)
(game-text-id rolling-plants)
(game-text-id rolling-plants)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-ring-chase-1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-ring-chase-1)
(game-text-id rolling-ring-chase-1)
(game-text-id rolling-ring-chase-1)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-ring-chase-2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id rolling-ring-chase-2)
(game-text-id rolling-ring-chase-2)
(game-text-id rolling-ring-chase-2)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task rolling-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id generic-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id ogre-level-name)
:text-group-index 6
:nb-of-tasks 4
:buzzer-task-index 3
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task ogre-boss)
:task-name
(new 'static 'array game-text-id 4
(game-text-id ogre-boss)
(game-text-id ogre-boss)
(game-text-id ogre-boss)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task ogre-end)
:task-name
(new 'static 'array game-text-id 4
(game-text-id ogre-end)
(game-text-id ogre-end)
(game-text-id ogre-end)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task ogre-secret)
:task-name
(new 'static 'array game-text-id 4
(game-text-id hidden-power-cell)
(game-text-id hidden-power-cell)
(game-text-id hidden-power-cell)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task ogre-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id ogre-buzzer)
(game-text-id ogre-buzzer)
(game-text-id ogre-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id village3-level-name)
:text-group-index 3
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task village3-miner-money1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-miner-money2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-miner-money3)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-miner-money4)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id village3-miner-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-oracle-money1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-oracle-money)
(game-text-id village3-oracle-money)
(game-text-id village3-oracle-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-oracle-money2)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-oracle-money)
(game-text-id village3-oracle-money)
(game-text-id village3-oracle-money)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-extra1)
:task-name
(new 'static 'array game-text-id 4
(game-text-id hidden-power-cell)
(game-text-id hidden-power-cell)
(game-text-id hidden-power-cell)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task village3-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id snow-level-name)
:text-group-index 3
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task snow-eggtop)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-eggtop)
(game-text-id snow-eggtop)
(game-text-id snow-eggtop)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-ram)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-ram-3-left)
(game-text-id snow-ram-2-left)
(game-text-id snow-ram-1-left)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-bumpers)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-bumpers)
(game-text-id snow-bumpers)
(game-text-id snow-bumpers)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-cage)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-cage)
(game-text-id snow-cage)
(game-text-id snow-cage)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-fort)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-fort)
(game-text-id snow-fort)
(game-text-id snow-fort)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-ball)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-ball)
(game-text-id snow-ball)
(game-text-id snow-ball)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-bunnies)
:task-name
(new 'static 'array game-text-id 4
(game-text-id snow-bunnies)
(game-text-id snow-bunnies)
(game-text-id snow-bunnies)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task snow-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id cave-level-name)
:text-group-index 3
:nb-of-tasks 8
:buzzer-task-index 7
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task cave-gnawers)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-gnawers)
(game-text-id cave-gnawers)
(game-text-id cave-gnawers)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-dark-crystals)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-dark-crystals)
(game-text-id cave-dark-crystals)
(game-text-id cave-dark-crystals)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-dark-climb)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-dark-climb)
(game-text-id cave-dark-climb)
(game-text-id cave-dark-climb)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-robot-climb)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-robot-climb)
(game-text-id cave-robot-climb)
(game-text-id cave-robot-climb)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-swing-poles)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-swing-poles)
(game-text-id cave-swing-poles)
(game-text-id cave-swing-poles)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-spider-tunnel)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-spider-tunnel)
(game-text-id cave-spider-tunnel)
(game-text-id cave-spider-tunnel)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-platforms)
:task-name
(new 'static 'array game-text-id 4
(game-text-id cave-platforms)
(game-text-id cave-platforms)
(game-text-id cave-platforms)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task cave-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id village3-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id lavatube-level-name)
:text-group-index 3
:nb-of-tasks 2
:buzzer-task-index 1
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task lavatube-end)
:task-name
(new 'static 'array game-text-id 4
(game-text-id lavatube-end)
(game-text-id lavatube-end)
(game-text-id lavatube-end)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task lavatube-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id lavatube-buzzer)
(game-text-id lavatube-buzzer)
(game-text-id lavatube-buzzer)
(game-text-id zero)
)
)
)
)
(new 'static 'level-tasks-info
:level-name-id (game-text-id citadel-level-name)
:text-group-index 4
:nb-of-tasks 5
:buzzer-task-index 4
:task-info
(new 'static 'array task-info-data 8
(new 'static 'task-info-data
:task-id (game-task citadel-sage-blue)
:task-name
(new 'static 'array game-text-id 4
(game-text-id citadel-sage-blue)
(game-text-id citadel-sage-blue)
(game-text-id citadel-sage-blue)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task citadel-sage-red)
:task-name
(new 'static 'array game-text-id 4
(game-text-id citadel-sage-red)
(game-text-id citadel-sage-red)
(game-text-id citadel-sage-red)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task citadel-sage-yellow)
:task-name
(new 'static 'array game-text-id 4
(game-text-id citadel-sage-yellow)
(game-text-id citadel-sage-yellow)
(game-text-id citadel-sage-yellow)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task citadel-sage-green)
:task-name
(new 'static 'array game-text-id 4
(game-text-id citadel-sage-green)
(game-text-id citadel-sage-green)
(game-text-id citadel-sage-green)
(game-text-id zero)
)
)
(new 'static 'task-info-data
:task-id (game-task citadel-buzzer)
:task-name
(new 'static 'array game-text-id 4
(game-text-id citadel-buzzer)
(game-text-id citadel-buzzer)
(game-text-id citadel-buzzer)
(game-text-id zero)
)
)
)
)
)
)
;; goes down by 24 or 23 every time
(define *task-egg-starting-x*
(new 'static 'boxed-array :type int32
218
194
171
147
124
100
77
53
30
)
)
(define *game-counts* (the-as game-count-info #f))