d/jak2: add progress to gsrc

This commit is contained in:
Tyler Wilding
2022-09-26 00:15:47 -04:00
parent 5e9e3b2134
commit 77adbc580f
9 changed files with 3881 additions and 143 deletions
+1 -1
View File
@@ -390,7 +390,7 @@
(get-skeleton-origin (_type_) vector 9)
(draw-control-method-10 () none 10)
(draw-control-method-11 () none 11)
(draw-control-method-12 (_type_ int int) none 12)
(draw-control-method-12 (_type_ uint int) none 12)
(draw-control-method-13 () none 13)
(draw-control-method-14 (_type_ cspace-array joint-control) none 14)
)
+3 -7
View File
@@ -314,7 +314,7 @@
(letterbox-time time-frame :offset-assert 400)
(hint-play-time time-frame :offset-assert 408)
(display-text-time time-frame :offset-assert 416)
(display-text-handle uint64 :offset-assert 424)
(display-text-handle handle :offset-assert 424)
(death-movie-tick int32 :offset-assert 432)
(want-auto-save symbol :offset-assert 436)
(auto-save-proc handle :offset-assert 440)
@@ -322,8 +322,8 @@
(auto-save-card int32 :offset-assert 452)
(auto-save-which int32 :offset-assert 456)
(auto-save-count int32 :offset-assert 460)
(pov-camera-handle uint64 :offset-assert 464)
(other-camera-handle uint64 :offset-assert 472)
(pov-camera-handle handle :offset-assert 464)
(other-camera-handle handle :offset-assert 472)
(controller handle 2 :offset-assert 480)
(race-timer uint64 :offset-assert 496)
(race-current-lap-count int32 :offset-assert 504)
@@ -395,7 +395,3 @@
gp-0
)
)
@@ -176,6 +176,9 @@
(define-extern task-node-open? (function game-task symbol))
(define-extern play-task (function game-task symbol symbol string))
;; NOTE - for progress
(define-extern restart-mission (function int))
;; DECOMP BEGINS
(defun-debug game-task->string ((arg0 game-task))
+2 -97
View File
@@ -30,8 +30,6 @@
;; DECOMP BEGINS
;; definition for function build-conversions
;; INFO: Used lq/sq
(defbehavior build-conversions target ((arg0 vector))
(when (!= (-> self control unknown-surface02) (-> self control surf))
(set! (-> self control unknown-surface02) (-> self control surf))
@@ -86,8 +84,6 @@
)
)
;; definition for function vector-turn-to
;; INFO: Used lq/sq
(defbehavior vector-turn-to target ((arg0 vector))
(forward-up-nopitch->quaternion
(-> self control dir-targ)
@@ -98,7 +94,6 @@
(build-conversions (-> self control transv))
)
;; definition for function reverse-conversions
;; WARN: Return type mismatch cshape-moving-flags vs none.
(defbehavior reverse-conversions target ((arg0 vector))
(let ((v1-1 (-> self control unknown-vector00)))
@@ -109,7 +104,6 @@
(none)
)
;; definition (debug) for function draw-history
(defun-debug draw-history ((arg0 control-info))
(when (nonzero? *display-collide-history*)
(when (cpad-pressed? 0 l3)
@@ -148,11 +142,8 @@
(none)
)
;; definition (debug) for function target-history-print
;; ERROR: function was not converted to expressions. Cannot decompile.
;; definition (debug) for function target-print-stats
;; INFO: Used lq/sq
(defun-debug target-print-stats ((arg0 target) (arg1 symbol))
(local-vars
(sv-64 int)
@@ -536,8 +527,6 @@
)
)
;; definition for function read-pad
;; INFO: Used lq/sq
(defbehavior read-pad target ((arg0 vector))
(when (!= (-> self control unknown-dword01) (-> *display* real-clock frame-counter))
(set! (-> self control unknown-vector13 quad) (-> self control unknown-vector12 quad))
@@ -571,7 +560,6 @@
(vector-matrix*! arg0 arg0 (-> self control unknown-matrix03))
)
;; definition for function set-pad
(defbehavior set-pad target ((arg0 vector))
(set! (-> self control unknown-float12) (vector-length arg0))
(let ((s5-0 vector-matrix*!)
@@ -585,16 +573,12 @@
arg0
)
;; definition for function warp-vector-into-surface!
;; INFO: Used lq/sq
(defun warp-vector-into-surface! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 matrix))
(let ((a2-1 (matrix-from-two-vectors! (new-stack-matrix0) (-> arg3 vector 1) arg2)))
(vector-matrix*! arg0 arg1 a2-1)
)
)
;; definition for function vector<-pad-in-surface!
;; INFO: Used lq/sq
(defbehavior vector<-pad-in-surface! target ((arg0 vector) (arg1 symbol))
(let ((a1-1 (read-pad (new-stack-vector0))))
(warp-vector-into-surface! arg0 a1-1 (-> self control local-normal) (-> self control unknown-matrix03))
@@ -605,7 +589,6 @@
arg0
)
;; definition for function vector<-pad-in-matrix!
;; WARN: Return type mismatch vector vs none.
(defun vector<-pad-in-matrix! ((arg0 vector) (arg1 cpad-info) (arg2 matrix))
(let ((gp-0 (new 'stack-no-clear 'vector))
@@ -628,8 +611,6 @@
(none)
)
;; definition for function local-pad-angle
;; INFO: Used lq/sq
(defbehavior local-pad-angle target ()
(let ((a0-1 (vector<-pad-in-surface! (new-stack-vector0) #f)))
(vector-dot
@@ -639,8 +620,6 @@
)
)
;; definition for function turn-around?
;; INFO: Used lq/sq
(defbehavior turn-around? target ()
(let* ((a0-1 (vector<-pad-in-surface! (new-stack-vector0) #f))
(gp-0 (vector-normalize! a0-1 1.0))
@@ -689,8 +668,6 @@
)
)
;; definition for function wall-hide?
;; INFO: Used lq/sq
(defbehavior wall-hide? target ()
(when (and (< 0.7 (-> self control unknown-float12))
(< 0.7 (-> self control unknown-float27))
@@ -762,9 +739,6 @@
)
)
;; definition for function target-log-trans
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior target-log-trans target ()
(let ((v1-1 (-> self control unknown-word00)))
(set! (-> self control unknown-time-frame-array00 v1-1) (-> self clock frame-counter))
@@ -775,8 +749,6 @@
(none)
)
;; definition for function target-move-dist
;; INFO: Used lq/sq
(defbehavior target-move-dist target ((arg0 time-frame))
(let ((s5-0 (new-stack-vector0))
(f30-0 0.0)
@@ -807,8 +779,6 @@
)
)
;; definition for function turn-to-vector
;; INFO: Used lq/sq
(defbehavior turn-to-vector target ((arg0 vector) (arg1 float))
(let ((gp-0 (new-stack-vector0)))
(warp-vector-into-surface! gp-0 arg0 (-> self control local-normal) (-> self control unknown-matrix03))
@@ -856,7 +826,6 @@
)
)
;; definition for function target-bend-vel-turn
(defbehavior target-bend-vel-turn target ((arg0 vector))
(cond
((= (-> self control unknown-surface01 vel-turn) 0.0)
@@ -884,8 +853,6 @@
arg0
)
;; definition for function target-add-slide-factor
;; INFO: Used lq/sq
(defbehavior target-add-slide-factor target ((arg0 vector))
(rlet ((acc :class vf)
(vf0 :class vf)
@@ -973,8 +940,6 @@
)
)
;; definition for function add-thrust
;; INFO: Used lq/sq
(defbehavior add-thrust target ()
(let ((s5-0 (-> self control unknown-vector01))
(gp-0 (-> self control unknown-vector00))
@@ -1134,8 +1099,6 @@
)
)
;; definition for function add-gravity
;; INFO: Used lq/sq
(defbehavior add-gravity target ()
(let ((s5-0 (new-stack-vector0))
(gp-0 (new-stack-vector0))
@@ -1178,7 +1141,6 @@
)
)
;; definition for function target-compute-slopes
(defbehavior target-compute-slopes target ((arg0 vector))
(let ((gp-0 (new 'stack-no-clear 'vector))
(s4-0 (vector-y-quaternion! (new 'stack-no-clear 'vector) (-> self control unknown-quaternion00)))
@@ -1210,7 +1172,6 @@
0
)
;; definition for function do-rotations1
(defbehavior do-rotations1 target ()
(rotate-toward-orientation!
(-> self control)
@@ -1223,8 +1184,6 @@
)
)
;; definition for function do-rotations2
;; INFO: Used lq/sq
(defbehavior do-rotations2 target ()
(let ((gp-0 (vector-z-quaternion! (new-stack-vector0) (-> self control dir-targ)))
(s5-0
@@ -1339,8 +1298,6 @@
(target-compute-slopes (-> self control dynam gravity-normal))
)
;; definition for function leg-ik-callback
;; INFO: Used lq/sq
(defun leg-ik-callback ((arg0 joint-mod-ik) (arg1 object) (arg2 object) (arg3 vector))
(rlet ((acc :class vf)
(vf0 :class vf)
@@ -1439,9 +1396,6 @@
)
)
;; definition for function target-update-ik
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior target-update-ik target ()
(rlet ((acc :class vf)
(vf0 :class vf)
@@ -1614,9 +1568,6 @@
)
)
;; definition for function pre-collide-setup
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior pre-collide-setup target ()
(if (>= (-> self clock frame-counter) (-> self control unknown-time-frame04))
(vector-normalize!
@@ -1651,8 +1602,6 @@
(none)
)
;; definition for function level-setup
;; WARN: Return type mismatch int vs none.
(defbehavior level-setup target ()
(let ((gp-0 (-> self current-level)))
(set! (-> self current-level) (level-get-target-inside *level*))
@@ -1669,9 +1618,6 @@
(none)
)
;; definition for function flag-setup
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior flag-setup target ()
(cond
((= (-> *cpad-list* cpads (-> self control unknown-cpad-info00 number) stick0-speed) 0.0)
@@ -1928,11 +1874,11 @@
(when (!= (-> self beard?) v1-248)
(cond
(v1-248
(draw-control-method-12 (-> self draw) 2 0)
(draw-control-method-12 (-> self draw) (the-as uint 2) 0)
(set! (-> self beard?) #t)
)
(else
(draw-control-method-12 (-> self draw) 2 0)
(draw-control-method-12 (-> self draw) (the-as uint 0) 2)
(set! (-> self beard?) #f)
)
)
@@ -1942,8 +1888,6 @@
(none)
)
;; definition for function post-flag-setup
;; WARN: Return type mismatch int vs none.
(defbehavior post-flag-setup target ()
(if (logtest? (-> self control status) (cshape-moving-flags t-wall t-act))
(set! (-> self control unknown-time-frame07) (-> self clock frame-counter))
@@ -2032,8 +1976,6 @@
(none)
)
;; definition for function bend-gravity
;; INFO: Used lq/sq
(defbehavior bend-gravity target ()
(if (and (logtest? (-> self control root-prim prim-core action) (collide-action no-normal-reset))
(zero? (logand (-> self control status) (cshape-moving-flags on-surface)))
@@ -2137,8 +2079,6 @@
)
)
;; definition for function target-compute-edge
;; INFO: Used lq/sq
(defbehavior target-compute-edge target ()
(let ((s5-0 *edge-grab-info*))
(cond
@@ -2288,8 +2228,6 @@
(none)
)
;; definition for function target-compute-edge-rider
;; INFO: Used lq/sq
(defbehavior target-compute-edge-rider target ()
(let ((gp-0 *edge-grab-info*))
(cond
@@ -2354,8 +2292,6 @@
(none)
)
;; definition for function target-compute-pole
;; INFO: Used lq/sq
(defbehavior target-compute-pole target ()
(rlet ((acc :class vf)
(vf0 :class vf)
@@ -2483,9 +2419,6 @@
)
)
;; definition for function target-calc-camera-pos
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior target-calc-camera-pos target ()
(let ((s5-0 (new 'stack-no-clear 'vector))
(gp-0 (new 'stack-no-clear 'vector))
@@ -2576,9 +2509,6 @@
(none)
)
;; definition for function joint-points
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior joint-points target ()
(let ((f0-1 (* 0.00078125 (the float (-> self neck loock-at-count)))))
(if (!= f0-1 0.0)
@@ -2673,9 +2603,6 @@
(none)
)
;; definition for function do-target-gspot
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defbehavior do-target-gspot target ()
(cond
((and (logtest? (-> self control status) (cshape-moving-flags on-surface))
@@ -2707,8 +2634,6 @@
(none)
)
;; definition for function target-real-post
;; INFO: Used lq/sq
(defbehavior target-real-post target ()
(let ((f30-0 (-> self clock clock-ratio)))
(let ((gp-1 (max 1 (the int (-> self clock time-adjust-ratio)))))
@@ -2875,14 +2800,11 @@
(none)
)
;; definition for function target-post
(defbehavior target-post target ()
(target-real-post)
(none)
)
;; definition for function target-swim-post
;; INFO: Used lq/sq
(defbehavior target-swim-post target ()
(let ((f30-0 (-> self clock clock-ratio)))
(let ((gp-1 (max 1 (the int (-> self clock time-adjust-ratio)))))
@@ -3010,8 +2932,6 @@
(none)
)
;; definition for function target-no-stick-post
;; INFO: Used lq/sq
(defbehavior target-no-stick-post target ()
(let ((f30-0 (-> self clock clock-ratio)))
(let ((gp-1 (max 1 (the int (-> self clock time-adjust-ratio)))))
@@ -3140,8 +3060,6 @@
(none)
)
;; definition for function target-no-move-post
;; INFO: Used lq/sq
(defbehavior target-no-move-post target ()
(let ((f30-0 (-> self clock clock-ratio)))
(let ((gp-1 (max 1 (the int (-> self clock time-adjust-ratio)))))
@@ -3239,7 +3157,6 @@
(none)
)
;; definition for function target-no-ja-move-post
(defbehavior target-no-ja-move-post target ()
(vector-!
(-> self control unknown-vector05)
@@ -3259,8 +3176,6 @@
(none)
)
;; definition for function reset-target-state
;; INFO: Used lq/sq
(defbehavior reset-target-state target ((arg0 symbol))
(when arg0
(vector-identity! (-> self control scale))
@@ -3290,9 +3205,6 @@
self
)
;; definition for method 28 of type target
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defmethod init-target target ((obj target) (arg0 continue-point) (arg1 symbol))
(local-vars (s1-0 int) (s2-0 int) (s3-0 int) (s4-0 int) (sv-16 collide-shape-prim-group))
(set! (-> obj tobot?) arg1)
@@ -3527,7 +3439,6 @@
(none)
)
;; definition for function target-init
;; WARN: Return type mismatch object vs none.
(defbehavior target-init target ((arg0 continue-point))
(init-target self arg0 #f)
@@ -3537,7 +3448,6 @@
(none)
)
;; definition for function tobot-init
;; WARN: Return type mismatch object vs none.
(defbehavior tobot-init target ((arg0 symbol))
(init-target self (the-as continue-point #f) 'tobot)
@@ -3548,7 +3458,6 @@
(none)
)
;; definition for method 10 of type target
(defmethod deactivate target ((obj target))
(kill-persister *setting-control* (the-as engine-pers 'bg-a-speed) 'bg-a-speed)
(if (nonzero? (-> obj darkjak))
@@ -3560,7 +3469,6 @@
(none)
)
;; definition for function stop
(defun stop ((arg0 symbol))
(when *target*
(kill-by-name "target" *active-pool*)
@@ -3570,7 +3478,6 @@
0
)
;; definition for function start
(defun start ((arg0 symbol) (arg1 continue-point))
(let ((v1-0 arg0))
(set! (-> *level* play?) (if (= v1-0 'play)
@@ -3601,7 +3508,6 @@
*target*
)
;; definition for function tobot-start
;; WARN: Return type mismatch (pointer process) vs target.
(defun tobot-start ((arg0 symbol))
(the-as target (process-spawn
@@ -3615,7 +3521,6 @@
)
)
;; definition for function tobot-stop
(defun tobot-stop ()
(kill-by-name "tobot" *active-pool*)
0
+4
View File
@@ -10,6 +10,10 @@
:bitfield #t
)
;; NOTE - for progress
(define-extern hide-hud (function symbol none))
(define-extern hud-hidden? (function symbol))
;; DECOMP BEGINS
(deftype hud-string (basic)
+86 -24
View File
@@ -11,6 +11,16 @@
(declare-type menu-option basic)
(declare-type menu-option-list basic)
(declare-type progress process-drawable)
(define-extern *progress-process* (pointer progress))
(define-extern activate-progress (function process symbol none))
(define-extern memcard-unlocked-secrets? (function symbol symbol))
(define-extern progress-selected (function int none :behavior progress))
(define-extern get-num-highscores (function int))
(define-extern get-next-highscore (function int int))
(define-extern get-prev-highscore (function int int))
;; DECOMP BEGINS
(deftype progress (process-drawable)
@@ -50,7 +60,7 @@
(go-away () _type_ :state 22)
(gone () _type_ :state 23)
(init-defaults (_type_) connection 24)
(progress-method-25 (_type_) none 25)
(progress-method-25 (_type_ object object symbol) none 25)
(progress-method-26 (_type_) object 26)
(can-go-back? (_type_) symbol 27)
(progress-method-28 (_type_ symbol) symbol 28)
@@ -61,29 +71,34 @@
)
)
(deftype menu-option (basic)
((name uint32 :offset-assert 4)
(scale basic :offset-assert 8)
(box bounding-box 1 :inline :offset-assert 16)
((name uint32 :offset-assert 4)
(scale basic :offset-assert 8)
(unknown function :offset-assert 12)
(box menu-option 1 :offset-assert 16)
(unknown-options menu-option 7 :offset-assert 20)
)
:method-count-assert 12
:size-assert #x30
:flag-assert #xc00000030
(:methods
(respond-progress (_type_ progress object symbol) int 9)
(menu-option-method-10 () none 10)
(respond-progress (_type_ progress object) int :behavior progress 9)
(menu-option-method-10 (_type_ progress font-context int symbol) none 10)
(menu-option-method-11 () none 11)
)
)
(deftype menu-on-off-option (menu-option)
((value-to-modify pointer :offset-assert 48)
((value-to-modify (pointer symbol) :offset-assert 48)
)
:method-count-assert 12
:size-assert #x34
:flag-assert #xc00000034
)
(deftype menu-yes-no-option (menu-option)
((value-to-modify pointer :offset-assert 48)
)
@@ -92,17 +107,19 @@
:flag-assert #xc00000034
)
(deftype menu-language-option (menu-option)
((language-selection uint64 :offset-assert 48)
(language-direction basic :offset-assert 56)
(language-transition basic :offset-assert 60)
(language-x-offset int32 :offset-assert 64)
((language-selection language-enum :offset-assert 48)
(language-direction symbol :offset-assert 56)
(language-transition basic :offset-assert 60)
(language-x-offset int32 :offset-assert 64)
)
:method-count-assert 12
:size-assert #x44
:flag-assert #xc00000044
)
(deftype menu-quit-option (menu-option)
()
:method-count-assert 12
@@ -110,6 +127,7 @@
:flag-assert #xc00000030
)
(deftype menu-slider-option (menu-option)
((value-to-modify pointer :offset-assert 48)
(sprites hud-sprite 5 :inline :offset-assert 64)
@@ -119,6 +137,7 @@
:flag-assert #xc00000180
)
(deftype menu-sub-menu-option (menu-option)
((next-state basic :offset-assert 48)
(pad uint8 44 :offset-assert 52)
@@ -128,6 +147,7 @@
:flag-assert #xc00000060
)
(deftype menu-sub-menu-sound-option (menu-option)
((next-state basic :offset-assert 48)
)
@@ -136,6 +156,7 @@
:flag-assert #xc00000034
)
(deftype menu-stereo-mode-sound-option (menu-option)
()
:method-count-assert 12
@@ -143,6 +164,7 @@
:flag-assert #xc00000030
)
(deftype menu-sub-menu-graphic-option (menu-option)
((next-state basic :offset-assert 48)
)
@@ -151,6 +173,7 @@
:flag-assert #xc00000034
)
(deftype menu-unlocked-menu-option (menu-sub-menu-option)
()
:method-count-assert 12
@@ -158,6 +181,7 @@
:flag-assert #xc00000060
)
(deftype menu-main-menu-option (menu-option)
((next-state basic :offset-assert 48)
)
@@ -166,6 +190,7 @@
:flag-assert #xc00000034
)
(deftype menu-memcard-slot-option (menu-option)
((sprites hud-sprite 5 :inline :offset-assert 48)
(pad uint8 32 :offset-assert 368)
@@ -175,6 +200,7 @@
:flag-assert #xc00000190
)
(deftype menu-loading-option (menu-option)
()
:method-count-assert 12
@@ -182,6 +208,7 @@
:flag-assert #xc00000030
)
(deftype menu-insufficient-space-option (menu-option)
((last-move uint64 :offset-assert 48)
)
@@ -190,6 +217,7 @@
:flag-assert #xc00000038
)
(deftype menu-secrets-insufficient-space-option (menu-option)
()
:method-count-assert 12
@@ -197,6 +225,7 @@
:flag-assert #xc00000030
)
(deftype menu-insert-card-option (menu-option)
()
:method-count-assert 12
@@ -204,6 +233,7 @@
:flag-assert #xc00000030
)
(deftype menu-error-loading-option (menu-option)
()
:method-count-assert 12
@@ -211,6 +241,7 @@
:flag-assert #xc00000030
)
(deftype menu-error-auto-saving-option (menu-option)
()
:method-count-assert 12
@@ -218,6 +249,7 @@
:flag-assert #xc00000030
)
(deftype menu-card-removed-option (menu-option)
()
:method-count-assert 12
@@ -225,6 +257,7 @@
:flag-assert #xc00000030
)
(deftype menu-error-disc-removed-option (menu-option)
()
:method-count-assert 12
@@ -232,6 +265,7 @@
:flag-assert #xc00000030
)
(deftype menu-error-reading-option (menu-option)
()
:method-count-assert 12
@@ -239,6 +273,7 @@
:flag-assert #xc00000030
)
(deftype menu-icon-info-option (menu-option)
((sprites hud-sprite 2 :inline :offset-assert 48)
)
@@ -247,6 +282,7 @@
:flag-assert #xc000000b0
)
(deftype menu-format-card-option (menu-option)
()
:method-count-assert 12
@@ -254,6 +290,7 @@
:flag-assert #xc00000030
)
(deftype menu-already-exists-option (menu-option)
()
:method-count-assert 12
@@ -261,6 +298,7 @@
:flag-assert #xc00000030
)
(deftype menu-create-game-option (menu-option)
()
:method-count-assert 12
@@ -268,6 +306,7 @@
:flag-assert #xc00000030
)
(deftype menu-video-mode-warning-option (menu-option)
()
:method-count-assert 12
@@ -275,6 +314,7 @@
:flag-assert #xc00000030
)
(deftype menu-video-mode-ok-option (menu-option)
()
:method-count-assert 12
@@ -282,6 +322,7 @@
:flag-assert #xc00000030
)
(deftype menu-progressive-mode-warning-option (menu-option)
()
:method-count-assert 12
@@ -289,6 +330,7 @@
:flag-assert #xc00000030
)
(deftype menu-progressive-mode-ok-option (menu-option)
()
:method-count-assert 12
@@ -296,6 +338,7 @@
:flag-assert #xc00000030
)
(deftype menu-select-start-option (menu-option)
((task-index int32 :offset-assert 48)
(real-task-index int32 :offset-assert 52)
@@ -306,6 +349,7 @@
:flag-assert #xc00000040
)
(deftype menu-select-scene-option (menu-option)
((task-index int32 :offset-assert 48)
(last-move uint64 :offset-assert 56)
@@ -315,6 +359,7 @@
:flag-assert #xc00000040
)
(deftype menu-bigmap-option (menu-option)
()
:method-count-assert 12
@@ -322,6 +367,7 @@
:flag-assert #xc00000030
)
(deftype paged-menu-option (menu-option)
((page-index int32 :offset-assert 48)
(prev-page-index int32 :offset-assert 52)
@@ -333,6 +379,7 @@
:flag-assert #xc00000040
)
(deftype menu-missions-option (paged-menu-option)
((task-line-index int32 :offset-assert 64)
(last-move uint64 :offset-assert 72)
@@ -342,6 +389,7 @@
:flag-assert #xc00000050
)
(deftype menu-highscores-option (paged-menu-option)
((last-move uint64 :offset-assert 64)
(sprites hud-sprite 2 :inline :offset-assert 80)
@@ -351,6 +399,7 @@
:flag-assert #xc000000d0
)
(deftype secret-item-option (menu-option)
((cost int32 :offset-assert 48)
(can-toggle symbol :offset-assert 52)
@@ -362,20 +411,22 @@
:flag-assert #xc0000003e
)
(deftype menu-secret-option (menu-option)
((item-index int32 :offset-assert 48)
(prev-item-index int32 :offset-assert 52)
(num-items int32 :offset-assert 56)
(num-hero-items int32 :offset-assert 60)
(secret-items basic :offset-assert 64)
(last-move uint64 :offset-assert 72)
(sprites hud-sprite 2 :inline :offset-assert 80)
((item-index int32 :offset-assert 48)
(prev-item-index int32 :offset-assert 52)
(num-items int32 :offset-assert 56)
(num-hero-items int32 :offset-assert 60)
(secret-items (array secret-item-option) :offset-assert 64)
(last-move uint64 :offset-assert 72)
(sprites hud-sprite 2 :inline :offset-assert 80)
)
:method-count-assert 12
:size-assert #xd0
:flag-assert #xc000000d0
)
(deftype menu-option-list (basic)
((y-center int32 :offset-assert 4)
(y-space int32 :offset-assert 8)
@@ -387,15 +438,17 @@
:flag-assert #x900000010
)
(deftype menu-qr-option (menu-option)
((last-move uint64 :offset-assert 48)
(value-to-modify uint32 :offset 60)
((last-move uint64 :offset-assert 48)
(value-to-modify function :offset 60)
)
:method-count-assert 12
:size-assert #x40
:flag-assert #xc00000040
)
(deftype menu-restart-mission-qr-option (menu-qr-option)
((next-state basic :offset-assert 64)
)
@@ -404,6 +457,7 @@
:flag-assert #xc00000044
)
(deftype menu-quit-qr-option (menu-qr-option)
((next-state basic :offset-assert 64)
)
@@ -412,6 +466,7 @@
:flag-assert #xc00000044
)
(deftype menu-sub-menu-qr-option (menu-qr-option)
((next-state basic :offset-assert 64)
)
@@ -420,6 +475,7 @@
:flag-assert #xc00000044
)
(deftype menu-graphic-option (menu-option)
((last-move uint64 :offset-assert 48)
(value-to-modify pointer :offset 60)
@@ -429,6 +485,7 @@
:flag-assert #xc00000040
)
(deftype menu-on-off-progressive-scan-graphic-option (menu-graphic-option)
()
:method-count-assert 12
@@ -436,6 +493,7 @@
:flag-assert #xc00000040
)
(deftype menu-aspect-ratio-option (menu-graphic-option)
()
:method-count-assert 12
@@ -443,6 +501,7 @@
:flag-assert #xc00000040
)
(deftype menu-center-screen-graphic-option (menu-graphic-option)
((next-state basic :offset-assert 64)
)
@@ -451,6 +510,7 @@
:flag-assert #xc00000044
)
(deftype menu-video-mode-option (menu-graphic-option)
()
:method-count-assert 12
@@ -458,6 +518,7 @@
:flag-assert #xc00000040
)
(deftype menu-game-option (menu-option)
((last-move uint64 :offset-assert 48)
(value-to-modify pointer :offset 60)
@@ -467,6 +528,7 @@
:flag-assert #xc00000040
)
(deftype menu-on-off-game-vibrations-option (menu-game-option)
()
:method-count-assert 12
@@ -474,6 +536,7 @@
:flag-assert #xc00000040
)
(deftype menu-on-off-game-subtitles-option (menu-game-option)
()
:method-count-assert 12
@@ -481,6 +544,7 @@
:flag-assert #xc00000040
)
(deftype menu-sub-menu-game-option (menu-game-option)
((next-state basic :offset-assert 64)
)
@@ -489,6 +553,7 @@
:flag-assert #xc00000044
)
(deftype menu-language-game-option (menu-game-option)
((language-selection uint64 :offset-assert 64)
(language-direction basic :offset-assert 72)
@@ -500,6 +565,7 @@
:flag-assert #xc00000054
)
(deftype menu-subtitle-language-game-option (menu-game-option)
((language-selection uint64 :offset-assert 64)
(language-direction basic :offset-assert 72)
@@ -511,7 +577,3 @@
:flag-assert #xc00000054
)
;; DECOMP ENDS
(define-extern *progress-process* (pointer progress))
(define-extern activate-progress (function process symbol none))
@@ -113,15 +113,27 @@
(define *quit-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *select-start-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *select-start-options*
"List of [[menu-select-start-option]]"
(new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82)
)
(define *select-scene-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *select-scene-options*
"List of [[menu-select-scene-option]]"
(new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82)
)
(define *bigmap-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *missions-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *missions-options*
"List of [[menu-missions-option]]"
(new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82)
)
(define *highscores-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
(define *highscores-options*
"List of [[menu-highscores-option]]"
(new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82)
)
(define *secret-options* (new 'static 'menu-option-list :y-center #xc6 :y-space 30 :scale 0.82))
@@ -132,25 +144,19 @@
)
(define *stereo-mode-name-remap*
(the-as menu-option-list (new 'static 'boxed-array :type uint32 #x104 #x105 #x106))
(the-as (array uint64) (new 'static 'boxed-array :type uint32 #x104 #x105 #x106))
)
(define *hud-ring-graphic-remap*
(the-as menu-option-list
(new 'static 'boxed-array :type uint64 #x80 #x40 #x10 #x4 #x8 #x400 #x20 #x100 #x200 #x2)
)
(new 'static 'boxed-array :type uint64 #x80 #x40 #x10 #x4 #x8 #x400 #x20 #x100 #x200 #x2)
)
(define *hud-ring-kiosk-graphic-remap*
(the-as menu-option-list
(new 'static 'boxed-array :type uint64 #x40 #x80 #x2 #x200 #x200 #x200 #x200 #x200 #x200 #x200)
)
(new 'static 'boxed-array :type uint64 #x40 #x80 #x2 #x200 #x200 #x200 #x200 #x200 #x200 #x200)
)
(define *hud-ring-demo-graphic-remap*
(the-as menu-option-list
(new 'static 'boxed-array :type uint64 #x80 #x2 #x200 #x200 #x200 #x200 #x200 #x200 #x200 #x200)
)
(new 'static 'boxed-array :type uint64 #x80 #x2 #x200 #x200 #x200 #x200 #x200 #x200 #x200 #x200)
)
(deftype hud-scene-info (basic)
File diff suppressed because it is too large Load Diff
+9
View File
@@ -5,6 +5,15 @@
;; name in dgo: text-h
;; dgos: ENGINE, GAME
;; NOTE - for progress
(define-extern disable-level-text-file-loading "Disables [[*level-text-file-load-flag*]]" (function none))
(define-extern enable-level-text-file-loading "Disables [[*level-text-file-load-flag*]]" (function none))
(define-extern load-level-text-files
"Load the text files needed for level idx.
This function made more sense back when text files were split up, but in the end they put everything
in a single text group and file."
(function int none))
;; DECOMP BEGINS
(deftype game-text (structure)