Files
jak-project/goal_src/jak3/engine/ui/progress/progress-h.gc
T
2024-02-15 11:16:07 +00:00

745 lines
14 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: progress-h.gc
;; name in dgo: progress-h
;; dgos: GAME
(declare-type progress process)
(declare-type progress-work structure)
(define-extern *progress-process* (pointer progress))
(define-extern activate-progress (function process symbol none))
(define-extern *progress-work* progress-work)
(define-extern progress-allowed? (function symbol))
;; +++progress-icon-flags
(defenum progress-icon-flags
:type uint32
:bitfield #t
(pi0 0)
(pi1 1)
(pi2 2)
(pi3 3)
(pi4 4)
(pi5 5)
(pi6 6)
(pi7 7)
(pi8 8)
(pi9 9)
(pi10 10)
(pi11 11)
(pi12 12)
(pi13 13)
(pi14 14)
(pi15 15)
(pi16 16)
(pi17 17)
(pi18 18)
(pi19 19)
(pi20 20)
(pi21 21)
(pi22 22)
(pi23 23)
(pi24 24)
(pi25 25)
(pi26 26)
(pi27 27)
(pi28 28)
(pi29 29)
(pi30 30)
(pi31 31)
)
;; ---progress-icon-flags
;; +++inventory-icon
(defenum inventory-icon
:type uint32
(icon0 0)
(icon1 1)
(icon2 2)
(icon3 3)
(icon4 4)
(icon5 5)
(icon6 6)
(icon7 7)
(icon8 8)
(icon9 9)
(icon10 10)
(icon11 11)
(icon12 12)
(icon13 13)
(icon14 14)
(icon15 15)
(v-turtle 16)
(v-snake 17)
(v-toad 18)
(v-scorpion 19)
(v-rhino 20)
(v-fox 21)
(v-mirage 22)
(v-x-ride 23)
(armor3 24)
(armor0 25)
(armor1 26)
(armor2 27)
(darkjak-bomb0 28)
(darkjak-bomb1 29)
(artifact-invis 30)
(darkjak-smack 31)
(lightjak-swoop 32)
(lightjak-regen 33)
(lightjak-shield 34)
(lightjak-freeze 35)
(gun-red-1 36)
(gun-red-2 37)
(gun-red-3 38)
(gun-yellow-1 39)
(gun-yellow-2 40)
(gun-yellow-3 41)
(gun-blue-1 42)
(gun-blue-2 43)
(gun-blue-3 44)
(gun-dark-1 45)
(gun-dark-2 46)
(gun-dark-3 47)
(pass-wascity 48)
(amulet2 49)
(amulet0 50)
(amulet1 51)
(seal-of-mar 52)
(board 53)
(pass-factory 54)
(artifact-holocube 55)
(artifact-beam-generator 56)
(artifact-prism 57)
(artifact-quantum-reflector 58)
(artifact-time-map 59)
(light-eco-crystal 60)
(dark-eco-crystal 61)
(eco-sphere 62)
(icon63 63)
)
;; ---inventory-icon
(declare-type menu-option-list basic)
;; +++secret-item-option-flags
(defenum secret-item-option-flags
:type uint8
:bitfield #t
(sf0)
(sf1)
(sf2)
(sf3)
(sf4)
(sf5)
(sf6)
(sf7)
)
;; ---secret-item-option-flags
;; DECOMP BEGINS
(deftype progress-list (basic)
()
(:methods
(progress-list-method-9 () none)
)
)
(deftype progress-list-level (progress-list)
((act int32)
(mode symbol)
)
)
(deftype progress-box (structure)
((aspect4x3 hud-box :inline)
(aspect16x9 hud-box :inline)
)
)
(deftype progress (process-drawable)
((scissor-stack vector 8 :inline)
(scissor-count int32)
(current-options menu-option-list)
(menu-transition float)
(option-index int32)
(current-index int32)
(want-option-index int32)
(next-option-index int32)
(graphic-index int32)
(selected-option symbol)
(current symbol)
(next symbol)
(ring-angle float)
(ring-want-angle float)
(init-quat quaternion :inline)
(pos-transition float)
(anim-frame float)
(swing float)
(main-menu symbol)
(state-array symbol 8)
(option-index-stack int32 8)
(state-pos int32)
(secret-buying basic)
(secret-buy-choice basic)
(scanlines-alpha float)
(start-time time-frame)
(which-slot int32)
(starting-state basic)
(yes-no-choice basic)
(time-out time-frame)
(last-sound time-frame)
(last-move time-frame)
(center-x-backup int32)
(center-y-backup int32)
(flip-horizontal basic)
(flip-vertical basic)
(progressive-scan basic)
(aspect-ratio basic)
(video-mode basic)
(stereo-mode-backup int32)
(vibrations basic)
(subtitles basic)
(languages int32 3)
(subtitle-language-index int32 :overlay-at (-> languages 0))
(language-index int32 :overlay-at (-> languages 1))
(audio-language-index int32 :overlay-at (-> languages 2))
(current-task-index int32)
(current-line-index int32)
(first-closed-line-index int32)
(extra-text-state int32)
(current-task game-task)
(num-open-tasks-found int32)
(num-closed-tasks-found int32)
(num-unlocked-secrets int32)
(total-num-tasks int32)
(missions-total-spacing float)
(clear-screen symbol)
(progress-id uint32)
(lock-tick-count int32)
)
(:methods
(progress-method-20 () none)
(progress-method-21 () none)
(progress-method-22 () none)
(progress-method-23 () none)
(progress-method-24 () none)
(progress-method-25 () none)
(progress-method-26 () none)
(progress-method-27 () none)
(progress-method-28 () none)
(progress-method-29 () none)
(progress-method-30 () none)
(progress-method-31 () none)
(progress-method-32 () none)
(progress-method-33 () none)
(progress-method-34 () none)
(progress-method-35 () none)
(progress-method-36 () none)
(progress-method-37 () none)
(progress-method-38 () none)
(progress-method-39 () none)
(progress-method-40 () none)
(progress-method-41 () none)
(progress-method-42 () none)
(progress-method-43 () none)
(progress-method-44 () none)
(progress-method-45 () none)
(progress-method-46 () none)
(progress-method-47 () none)
(progress-method-48 () none)
(progress-method-49 () none)
(progress-method-50 () none)
(progress-method-51 () none)
(progress-method-52 () none)
(progress-method-53 () none)
)
)
(deftype progress-work (structure)
((full-screen progress-box :inline)
(small-screen progress-box :inline)
(header progress-box :inline)
(body progress-box :inline)
(body-footer progress-box :inline)
(footer progress-box :inline)
(sub-header progress-box :inline)
(sub-body progress-box :inline)
(sub-body-footer progress-box :inline)
(highscore-0 progress-box :inline)
(highscore-1 progress-box :inline)
(highscore-body progress-box :inline)
(load-save-0a progress-box :inline)
(load-save-0b progress-box :inline)
(load-save-1a progress-box :inline)
(load-save-1b progress-box :inline)
(load-save-2a progress-box :inline)
(load-save-2b progress-box :inline)
(load-save-3a progress-box :inline)
(load-save-3b progress-box :inline)
(last-slot-saved int32)
(selected-num int32)
(secrets-unlocked basic)
(hero-mode-save symbol)
)
)
(deftype progress-icon-part (structure)
((offset vector2w :inline)
(tex-id texture-id)
(bucket bucket-id)
(flags progress-icon-flags)
)
)
(deftype progress-icon-array (array)
((icons progress-icon-part :dynamic :offset 16)
)
(:methods
(progress-icon-array-method-9 () none)
)
)
(deftype menu-option (basic)
((name text-id)
(menu-option-type uint32)
(offset-y float)
(box hud-box 1 :inline)
)
(:methods
(menu-option-method-9 () none)
(menu-option-method-10 () none)
(menu-option-method-11 () none)
)
)
(deftype menu-slider-option (menu-option)
((setting-offset uint32)
)
)
(deftype menu-sound-slider-option (menu-slider-option)
()
)
(deftype menu-picture-slider-option (menu-slider-option)
()
)
(deftype menu-sub-menu-option (menu-option)
((next-state symbol)
)
)
(deftype menu-stereo-mode-sound-option (menu-option)
()
)
(deftype menu-unlocked-sub-menu-option (menu-sub-menu-option)
((mask uint64)
(value int32)
)
)
(deftype menu-save-sub-menu-option (menu-sub-menu-option)
()
)
(deftype menu-main-menu-option (menu-option)
((next-state symbol)
)
)
(deftype menu-memcard-slot-option (menu-option)
((sprites hud-sprite 5 :inline)
(pad uint8 32)
)
)
(deftype menu-loading-option (menu-option)
()
)
(deftype menu-insufficient-space-option (menu-option)
()
)
(deftype menu-secrets-insufficient-space-option (menu-option)
()
)
(deftype menu-hero-mode-message-option (menu-option)
()
)
(deftype menu-insert-card-option (menu-option)
()
)
(deftype menu-error-loading-option (menu-option)
()
)
(deftype menu-error-auto-saving-option (menu-option)
()
)
(deftype menu-card-removed-option (menu-option)
()
)
(deftype menu-error-disc-removed-option (menu-option)
()
)
(deftype menu-error-reading-option (menu-option)
()
)
(deftype menu-icon-info-option (menu-option)
((sprites hud-sprite 2 :inline)
)
)
(deftype menu-format-card-option (menu-option)
()
)
(deftype menu-already-exists-option (menu-option)
()
)
(deftype menu-create-game-option (menu-option)
()
)
(deftype menu-video-mode-warning-option (menu-option)
()
)
(deftype menu-video-mode-ok-option (menu-option)
()
)
(deftype menu-progressive-mode-warning-option (menu-option)
()
)
(deftype menu-progressive-mode-ok-option (menu-option)
()
)
(deftype menu-select-start-option (menu-option)
((current-index float)
(target-index float)
(selected-index int32)
(scroll-speed float)
)
)
(deftype menu-select-scene-option (menu-option)
((current-index float)
(target-index float)
(selected-index int32)
(scroll-speed float)
)
)
(deftype menu-bigmap-option (menu-option)
()
)
(deftype paged-menu-option (menu-option)
((page-index int32)
(prev-page-index int32)
(num-pages int32)
(slide-dir float)
)
)
(deftype menu-missions-option (paged-menu-option)
((current-index float)
(target-index float)
(scroll-speed float)
(on-screen basic)
)
)
(deftype highscore-page-info (structure)
((text text-id)
(secret game-secrets)
(game-score uint8)
(icon uint32)
(icon-scalex float)
(icon-scaley float)
(icon-offsetx float)
(icon-offsety float)
)
(:methods
(highscore-page-info-method-9 () none)
(highscore-page-info-method-10 () none)
(highscore-page-info-method-11 () none)
(highscore-page-info-method-12 () none)
)
)
(deftype menu-highscores-option (menu-option)
((current-index float)
(target-index float)
(num-pages int32)
(pages highscore-page-info 16)
(info basic)
)
(:methods
(menu-highscores-option-method-12 () none)
)
)
(deftype controls-string-info (structure)
((button text-id)
(action text-id)
(feature game-feature)
(secret game-secrets)
(vehicle game-vehicles)
)
(:methods
(controls-string-info-method-9 () none)
)
)
(deftype controls-page-info (structure)
((title text-id)
(feature game-feature)
(secret game-secrets)
(vehicle game-vehicles)
(current-index float)
(target-index float)
(num-text int32)
(on-screen basic)
(text text-id 9)
(strings (array controls-string-info))
)
(:methods
(controls-page-info-method-9 () none)
(controls-page-info-method-10 () none)
(controls-page-info-method-11 () none)
)
)
(deftype menu-controls-option (paged-menu-option)
((current-index float)
(target-index float)
(pages controls-page-info 7 :offset 76)
(info basic)
)
(:methods
(menu-controls-option-method-12 () none)
)
)
(deftype secret-item-option (menu-option)
((cost int32)
(secret game-secrets)
(avail-after game-task-node)
(required-secrets game-secrets)
(mask-secrets game-secrets)
(flags secret-item-option-flags)
)
(:methods
(secret-item-option-method-12 () none)
(secret-item-option-method-13 () none)
)
)
(deftype menu-secret-option (menu-option)
((current-index float)
(target-index float)
(selected-index int32)
(buy-menu symbol)
(available-title symbol)
)
)
(deftype menu-option-list (basic)
((y-center int32)
(y-space int32)
(scale float)
(options (array menu-option))
)
)
(deftype menu-qr-option (menu-option)
()
)
(deftype menu-restart-mission-qr-option (menu-qr-option)
()
)
(deftype menu-quit-qr-option (menu-qr-option)
()
)
(deftype menu-graphic-option (menu-option)
((setting-offset uint32)
)
)
(deftype menu-on-off-progressive-scan-graphic-option (menu-graphic-option)
()
)
(deftype menu-aspect-ratio-option (menu-graphic-option)
()
)
(deftype menu-center-screen-graphic-option (menu-graphic-option)
((next-state symbol)
)
)
(deftype menu-video-mode-option (menu-graphic-option)
()
)
(deftype menu-camera-option (menu-option)
((setting-offset uint32)
)
)
(deftype menu-game-option (menu-option)
((setting-offset uint32)
)
)
(deftype menu-language-option (menu-option)
()
)
(deftype menu-on-off-game-vibrations-option (menu-game-option)
()
)
(deftype menu-on-off-game-subtitles-option (menu-game-option)
()
)
(deftype menu-language-game-option (menu-game-option)
()
)
(deftype inventory-item (structure)
((icon inventory-icon)
(icon-scale float)
(offset vector2 :offset 16)
(feature game-feature)
(vehicle game-vehicles)
(item game-items)
)
(:methods
(inventory-item-method-9 () none)
(inventory-item-method-10 () none)
)
)
(deftype inventory-item-group (structure)
((name text-id)
(index-left uint8)
(index-right uint8)
(index-up uint8)
(index-down uint8)
(items (array inventory-item))
)
(:methods
(inventory-item-group-method-9 () none)
(inventory-item-group-method-10 () none)
)
)
(deftype inventory-screen (structure)
((name text-id)
(current-index uint8)
(groups (array inventory-item-group))
)
(:methods
(inventory-screen-method-9 () none)
)
)
(deftype menu-inventory (menu-option)
((current-index float)
(target-index float)
(screens (array inventory-screen))
)
)