mirror of
https://github.com/open-goal/jak-project
synced 2026-09-13 05:05:48 -04:00
[game] pc port progress menu (#1281)
* fix typo * more typo * shorten discord rpc text * allow expanding enums after the fact (untested) * make `game_text` work similar to subtitles * update progress decomp * update some types + `do-not-decompile` in bitfield * fixes and fall back to original progress code * update `progress` decomp with new enums * update config files * fix enums and debug menu * always allocate (but not use) a lot of particles * small rework to display mode options * revert resolution/aspect-ratio symbol mess * begin the override stuff * make `progress-draw` more readable * more fixes * codacy good boy points * first step overriding code * finish progress overrides, game options menu fully functional! * minor fixes * Update game.gp * Update sparticle-launcher.gc * clang * change camera controls text * oops * some cleanup * derp * nice job * implement menu scrolling lol * make scrollable menus less cramped, fix arrows * make some carousell things i guess * add msaa carousell to test * oops * Update progress-pc.gc * make `pc-get-screen-size` (untested) * resolution menu * input fixes * return when selecting resolution * scroll fixes * Update progress-pc.gc * add "fit to screen" button * bug * complete resolutions menu * aspect ratio menu * subtitles language * subtitle speaker * final adjustments * ref test * fix tests * fix ref! * reduce redundancy a bit * fix mem leaks? * save settings on progress exit * fix init reorder * remove unused code * rename goal project-like files to the project extension * sha display toggle * aspect ratio settings fixes * dont store text db's in compiler * properly save+load native aspect stuff
This commit is contained in:
+1
-1
@@ -499,7 +499,7 @@
|
||||
(goto cfg-4)
|
||||
)
|
||||
(set! (-> obj max-spheres) sphere-count)
|
||||
(set! (-> obj flags) (nav-control-flags bit8 bit13))
|
||||
(set! (-> obj flags) (nav-control-flags navcf8 navcf13))
|
||||
(set! (-> obj mesh) (nav-mesh-connect (-> shape process) shape obj))
|
||||
(let ((ent (-> shape process entity)))
|
||||
(set! (-> obj nearest-y-threshold)
|
||||
|
||||
+31
-31
@@ -1271,14 +1271,14 @@
|
||||
(let ((v1-1 (find-poly-fast obj arg0 arg1)))
|
||||
(when v1-1
|
||||
(if arg2
|
||||
(set! (-> arg2 0) (logior (nav-control-flags bit20) (-> arg2 0)))
|
||||
(set! (-> arg2 0) (logior (nav-control-flags navcf20) (-> arg2 0)))
|
||||
)
|
||||
(set! s3-1 v1-1)
|
||||
(goto cfg-14)
|
||||
)
|
||||
)
|
||||
(if arg2
|
||||
(logclear! (-> arg2 0) (nav-control-flags bit20))
|
||||
(logclear! (-> arg2 0) (nav-control-flags navcf20))
|
||||
)
|
||||
(let ((s2-0 (new 'stack-no-clear 'inline-array 'nav-vertex 3)))
|
||||
(set! s3-1 (the-as nav-poly #f))
|
||||
@@ -1750,7 +1750,7 @@
|
||||
(when #t
|
||||
(set! (-> s5-0 debug-time) (the-as uint (-> *display* actual-frame-counter)))
|
||||
(add-debug-sphere
|
||||
(logtest? (-> obj flags) (nav-control-flags bit1))
|
||||
(logtest? (-> obj flags) (nav-control-flags navcf1))
|
||||
(bucket-id debug-draw0)
|
||||
(-> s5-0 bounds)
|
||||
(-> s5-0 bounds w)
|
||||
@@ -1758,7 +1758,7 @@
|
||||
)
|
||||
(add-debug-vector #t (bucket-id debug-draw1) (-> s5-0 origin) *x-vector* (meters 1.0) *color-red*)
|
||||
(add-debug-vector #t (bucket-id debug-draw1) (-> s5-0 origin) *z-vector* (meters 1.0) *color-blue*)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit2))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf2))
|
||||
(dotimes (s3-0 (-> s5-0 vertex-count))
|
||||
(add-debug-x
|
||||
#t
|
||||
@@ -1813,7 +1813,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit3))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf3))
|
||||
(dotimes (s3-2 (-> s5-0 poly-count))
|
||||
(let ((s2-1 (-> s5-0 poly s3-2)))
|
||||
(debug-draw-poly s5-0 s2-1 (the-as rgba (cond
|
||||
@@ -1838,7 +1838,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit4))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf4))
|
||||
(let ((s1-1 add-debug-text-3d)
|
||||
(s0-1 #t)
|
||||
)
|
||||
@@ -1862,7 +1862,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit5))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf5))
|
||||
(if (-> obj next-poly)
|
||||
(debug-draw-poly s5-0 (-> obj next-poly) *color-cyan*)
|
||||
)
|
||||
@@ -1873,7 +1873,7 @@
|
||||
(debug-draw-poly s5-0 (-> obj current-poly) *color-red*)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit7))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf7))
|
||||
(dotimes (s3-3 (the-as int (-> s5-0 static-sphere-count)))
|
||||
(let ((s2-2 (-> s5-0 static-sphere s3-3)))
|
||||
(add-debug-sphere #t (bucket-id debug-draw0) (the-as vector s2-2) (-> s2-2 trans w) *color-blue*)
|
||||
@@ -1906,7 +1906,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit6))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf6))
|
||||
(when (and (-> obj portal 0) (-> obj portal 1))
|
||||
(let ((v1-80 (-> s5-0 origin))
|
||||
(a2-22 (new 'stack-no-clear 'vector))
|
||||
@@ -1946,7 +1946,7 @@
|
||||
(new 'static 'rgba :r #xff :g #xff :b #xff :a #x80)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit7))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf7))
|
||||
(add-debug-sphere
|
||||
#t
|
||||
(bucket-id debug-draw1)
|
||||
@@ -2012,7 +2012,7 @@
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defmethod set-current-poly! nav-control ((obj nav-control) (arg0 nav-poly))
|
||||
(set! (-> obj current-poly) arg0)
|
||||
(logior! (-> obj flags) (nav-control-flags bit9))
|
||||
(logior! (-> obj flags) (nav-control-flags navcf9))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
@@ -2066,7 +2066,7 @@
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
;; Used lq/sq
|
||||
(defun add-collide-shape-spheres ((arg0 nav-control) (arg1 collide-shape) (arg2 vector))
|
||||
(when (logtest? (-> arg1 nav-flags) 1)
|
||||
(when (logtest? (-> arg1 nav-flags) (nav-flags navf0))
|
||||
(set! (-> arg2 quad) (-> arg1 root-prim prim-core world-sphere quad))
|
||||
(set! (-> arg2 w) (-> arg1 nav-radius))
|
||||
(let ((s4-0 arg0)
|
||||
@@ -2088,7 +2088,7 @@
|
||||
)
|
||||
0
|
||||
)
|
||||
(when (logtest? (-> arg1 nav-flags) 2)
|
||||
(when (logtest? (-> arg1 nav-flags) (nav-flags navf1))
|
||||
(let ((s5-1 (-> arg1 process nav extra-nav-sphere)))
|
||||
(when (< (-> arg0 num-spheres) (-> arg0 max-spheres))
|
||||
(let* ((s4-1 (-> arg0 sphere (-> arg0 num-spheres)))
|
||||
@@ -2127,13 +2127,13 @@
|
||||
(s3-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
(when (and *target*
|
||||
(or (logtest? (-> obj flags) (nav-control-flags bit11)) (logtest? (-> *target* state-flags) #x80f8))
|
||||
(or (logtest? (-> obj flags) (nav-control-flags navcf11)) (logtest? (-> *target* state-flags) #x80f8))
|
||||
)
|
||||
(let ((s2-0 obj)
|
||||
(s1-0 (-> *target* control))
|
||||
)
|
||||
(let ((s0-0 s3-0))
|
||||
(when (logtest? (-> s1-0 nav-flags) 1)
|
||||
(when (logtest? (-> s1-0 nav-flags) (nav-flags navf0))
|
||||
(set! (-> s0-0 quad) (-> s1-0 root-prim prim-core world-sphere quad))
|
||||
(set! (-> s0-0 w) (-> s1-0 nav-radius))
|
||||
(set! sv-32 s2-0)
|
||||
@@ -2153,7 +2153,7 @@
|
||||
0
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> s1-0 nav-flags) 2)
|
||||
(when (logtest? (-> s1-0 nav-flags) (nav-flags navf1))
|
||||
(let ((s1-1 (-> s1-0 process nav extra-nav-sphere)))
|
||||
(when (< (-> s2-0 num-spheres) (-> s2-0 max-spheres))
|
||||
(let* ((s0-1 (-> s2-0 sphere (-> s2-0 num-spheres)))
|
||||
@@ -2173,7 +2173,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> obj flags) (nav-control-flags bit13))
|
||||
(when (logtest? (-> obj flags) (nav-control-flags navcf13))
|
||||
(countdown (s2-1 (-> obj mesh static-sphere-count))
|
||||
(let ((s1-2 obj)
|
||||
(s0-2 (-> obj mesh static-sphere s2-1))
|
||||
@@ -2203,7 +2203,7 @@
|
||||
(when (not (or (= s0-3 (-> obj shape)) (zero? (logand arg0 (-> s0-3 root-prim prim-core collide-as)))))
|
||||
(let ((s1-3 obj))
|
||||
(set! sv-112 s3-0)
|
||||
(when (logtest? (-> s0-3 nav-flags) 1)
|
||||
(when (logtest? (-> s0-3 nav-flags) (nav-flags navf0))
|
||||
(set! (-> sv-112 quad) (-> s0-3 root-prim prim-core world-sphere quad))
|
||||
(set! (-> sv-112 w) (-> s0-3 nav-radius))
|
||||
(set! sv-80 s1-3)
|
||||
@@ -2226,7 +2226,7 @@
|
||||
)
|
||||
0
|
||||
)
|
||||
(when (logtest? (-> s0-3 nav-flags) 2)
|
||||
(when (logtest? (-> s0-3 nav-flags) (nav-flags navf1))
|
||||
(let ((s0-4 (-> s0-3 process nav extra-nav-sphere)))
|
||||
(when (< (-> s1-3 num-spheres) (-> s1-3 max-spheres))
|
||||
(set! sv-128 (-> s1-3 sphere (-> s1-3 num-spheres)))
|
||||
@@ -2662,7 +2662,7 @@
|
||||
(set! (-> obj blocked-travel quad) (-> obj travel quad))
|
||||
(let ((f0-0 (vector-xz-length (-> obj travel))))
|
||||
(when (and (>= f30-0 f0-0) (< f0-0 204.8))
|
||||
(set! (-> obj flags) (logior (nav-control-flags bit17) (-> obj flags)))
|
||||
(set! (-> obj flags) (logior (nav-control-flags navcf17) (-> obj flags)))
|
||||
(set! (-> obj block-time) (-> *display* base-frame-counter))
|
||||
(set! (-> obj block-count) (+ 1.0 (-> obj block-count)))
|
||||
(if (-> obj block-event)
|
||||
@@ -2709,21 +2709,21 @@
|
||||
)
|
||||
(cond
|
||||
((or (vector= arg2 (-> obj target-pos)) (< (fabs f28-0) 364.0889))
|
||||
(set! (-> obj flags) (logior (nav-control-flags bit21) (-> obj flags)))
|
||||
(set! (-> obj flags) (logior (nav-control-flags navcf21) (-> obj flags)))
|
||||
(set! (-> arg0 quad) (-> arg2 quad))
|
||||
)
|
||||
(else
|
||||
(let ((s2-1 (vector-z-quaternion! (new 'stack-no-clear 'vector) (-> arg1 quat))))
|
||||
(vector-rotate-y! s2-1 s2-1 (fmax (fmin f28-0 f30-0) (- f30-0)))
|
||||
(vector-normalize! s2-1 819.2)
|
||||
(logclear! (-> obj flags) (nav-control-flags bit21))
|
||||
(logclear! (-> obj flags) (nav-control-flags navcf21))
|
||||
(vector+! arg0 (-> arg1 trans) s2-1)
|
||||
)
|
||||
(when (or (not (dummy-16 obj arg0))
|
||||
(logtest? (nav-control-flags bit17) (-> obj flags))
|
||||
(zero? (logand (-> obj flags) (nav-control-flags bit10)))
|
||||
(logtest? (nav-control-flags navcf17) (-> obj flags))
|
||||
(zero? (logand (-> obj flags) (nav-control-flags navcf10)))
|
||||
)
|
||||
(set! (-> obj flags) (logior (nav-control-flags bit21) (-> obj flags)))
|
||||
(set! (-> obj flags) (logior (nav-control-flags navcf21) (-> obj flags)))
|
||||
(vector-! (-> obj travel) arg2 (-> arg1 trans))
|
||||
(set! (-> arg0 quad) (-> arg2 quad))
|
||||
)
|
||||
@@ -2938,7 +2938,7 @@
|
||||
v1-0
|
||||
(-> obj current-poly)
|
||||
(-> obj travel)
|
||||
(zero? (logand (-> obj flags) (nav-control-flags bit12)))
|
||||
(zero? (logand (-> obj flags) (nav-control-flags navcf12)))
|
||||
arg0
|
||||
arg1
|
||||
)
|
||||
@@ -3149,7 +3149,7 @@
|
||||
sv-84
|
||||
sv-88
|
||||
(-> obj travel)
|
||||
(zero? (logand (-> obj flags) (nav-control-flags bit12)))
|
||||
(zero? (logand (-> obj flags) (nav-control-flags navcf12)))
|
||||
204.8
|
||||
s5-1
|
||||
)
|
||||
@@ -3254,9 +3254,9 @@
|
||||
(set! (-> obj old-travel quad) (-> obj travel quad))
|
||||
(-> obj block-count)
|
||||
(set! (-> obj block-count) (seek (-> obj block-count) 0.0 0.016666668))
|
||||
(logclear! (-> obj flags) (nav-control-flags bit9 bit17 bit18 bit19))
|
||||
(logclear! (-> obj flags) (nav-control-flags navcf9 navcf17 navcf18 navcf19))
|
||||
(TODO-RENAME-27 obj)
|
||||
(if (logtest? (-> obj flags) (nav-control-flags bit8))
|
||||
(if (logtest? (-> obj flags) (nav-control-flags navcf8))
|
||||
(TODO-RENAME-28 obj (collide-kind
|
||||
background
|
||||
cak-1
|
||||
@@ -3331,7 +3331,7 @@
|
||||
(let ((s5-1 (new 'stack-no-clear 'nav-gap-info)))
|
||||
(when (< (vector-xz-length (-> obj travel)) 204.8)
|
||||
(cond
|
||||
((logtest? (nav-control-flags bit17) (-> obj flags))
|
||||
((logtest? (nav-control-flags navcf17) (-> obj flags))
|
||||
)
|
||||
((-> obj next-poly)
|
||||
(cond
|
||||
@@ -3349,7 +3349,7 @@
|
||||
)
|
||||
)
|
||||
(else
|
||||
(set! (-> obj flags) (logior (nav-control-flags bit19) (-> obj flags)))
|
||||
(set! (-> obj flags) (logior (nav-control-flags navcf19) (-> obj flags)))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user