diff --git a/goal_src/jak2/engine/gfx/blit-displays.gc b/goal_src/jak2/engine/gfx/blit-displays.gc index 22b60af0a7..9f13609793 100644 --- a/goal_src/jak2/engine/gfx/blit-displays.gc +++ b/goal_src/jak2/engine/gfx/blit-displays.gc @@ -144,7 +144,12 @@ (set! (-> gp-0 screen-copied) #t) (set! (-> gp-0 progress-interp) 0.0) (set! (-> gp-0 progress-interp-dest) 1.0) - (set! (-> gp-0 progress-interp-speed) 0.033333335) + (set! (-> gp-0 progress-interp-speed) (/ 1.0 30)) + (#when PC_PORT + (when (-> *pc-settings* fast-progress?) + (*! (-> gp-0 progress-interp-speed) *progress-speed*) + ) + ) ) ((and (not (-> gp-0 menu-mode)) (-> gp-0 screen-copied)) (set! (-> *display* vu1-enable-user-menu) (-> gp-0 vu1-enable-user-menu)) diff --git a/goal_src/jak2/engine/ui/progress/progress.gc b/goal_src/jak2/engine/ui/progress/progress.gc index d101771e19..be7e843193 100644 --- a/goal_src/jak2/engine/ui/progress/progress.gc +++ b/goal_src/jak2/engine/ui/progress/progress.gc @@ -1077,6 +1077,9 @@ ) (defbehavior progress-trans progress () + + ;; pc port note : added variable + (let ((speed-mod (if (-> *pc-settings* fast-progress?) *progress-speed* 1.0))) (cond ((and (= (-> self next) 'none) (or (= (-> *progress-state* starting-state) 'main) (= (-> self anim-frame) 1.0)) @@ -1085,7 +1088,7 @@ (seek-ease (-> self menu-transition) 0.0 - (* 0.1 (-> self clock time-adjust-ratio)) + (* speed-mod 0.1 (-> self clock time-adjust-ratio)) 0.4 (* 0.01 (-> self clock time-adjust-ratio)) ) @@ -1233,7 +1236,7 @@ ) ) ) - (seek! (-> self ring-angle) (-> self ring-want-angle) (* 455.1111 (-> self clock time-adjust-ratio))) + (seek! (-> self ring-angle) (-> self ring-want-angle) (* speed-mod 455.1111 (-> self clock time-adjust-ratio))) ) (let ((gp-4 (quaternion-vector-angle! (new 'stack-no-clear 'quaternion) @@ -1257,7 +1260,7 @@ ) 0 (none) - ) + )) (defun begin-scan ((arg0 hud-box) (arg1 progress)) (cond @@ -1409,13 +1412,15 @@ 0.2 ) ) + ;; pc port note : added variable + (speed-mod (if (-> *pc-settings* fast-progress?) *progress-speed* 1.0)) ) (when (hud-hidden?) (set! (-> *blit-displays-work* menu-mode) #t) (set! (-> self pos-transition) (seek-ease (-> self pos-transition) f30-0 - (* 0.03 (-> self clock time-adjust-ratio)) + (* speed-mod 0.03 (-> self clock time-adjust-ratio)) 0.4 (* 0.003 (-> self clock time-adjust-ratio)) ) @@ -1668,26 +1673,33 @@ (remove-setting-by-arg0 *setting-control* 'extra-bank) (let ((v1-2 *blit-displays-work*)) (set! (-> v1-2 progress-interp-dest) 0.0) - (set! (-> v1-2 progress-interp-speed) 0.022222223) + (set! (-> v1-2 progress-interp-speed) (/ 1.0 45)) + (#when PC_PORT + (when (-> *pc-settings* fast-progress?) + (*! (-> v1-2 progress-interp-speed) *progress-speed*) + ) + ) ) (none) ) :trans (behavior () - (seek! (-> self anim-frame) 0.0 (* 0.02 (-> self clock time-adjust-ratio))) + ;; pc port note : added variable + (let ((speed-mod (if (-> *pc-settings* fast-progress?) *progress-speed* 1.0))) + (seek! (-> self anim-frame) 0.0 (* speed-mod 0.02 (-> self clock time-adjust-ratio))) (cond ((= (-> self anim-frame) 0.0) - (seek! (-> self pos-transition) 1.0 (* 0.02 (-> self clock time-adjust-ratio))) + (seek! (-> self pos-transition) 1.0 (* speed-mod 0.02 (-> self clock time-adjust-ratio))) (if (= (-> self pos-transition) 1.0) (go-virtual gone) ) ) (else - (seek! (-> self pos-transition) 0.0 (* 0.02 (-> self clock time-adjust-ratio))) + (seek! (-> self pos-transition) 0.0 (* speed-mod 0.02 (-> self clock time-adjust-ratio))) ) ) (set-ring-position self) (none) - ) + )) :code (behavior () (let ((gp-0 #f)) (until #f diff --git a/goal_src/jak2/pc/debug/default-menu-pc.gc b/goal_src/jak2/pc/debug/default-menu-pc.gc index 9a6e7f6945..219089694e 100644 --- a/goal_src/jak2/pc/debug/default-menu-pc.gc +++ b/goal_src/jak2/pc/debug/default-menu-pc.gc @@ -845,6 +845,7 @@ ;(flag "PS2 Hints" #f ,(dm-lambda-boolean-flag (-> *pc-settings* ps2-hints?))) (flag "Faster airlocks" #f ,(dm-lambda-boolean-flag (-> *pc-settings* fast-airlock?))) (flag "Faster elevators" #f ,(dm-lambda-boolean-flag (-> *pc-settings* fast-elevator?))) + (flag "Faster progress" #f ,(dm-lambda-boolean-flag (-> *pc-settings* fast-progress?))) ) (menu "Level of detail" (flag "PS2 LOD " #f ,(dm-lambda-boolean-flag (-> *pc-settings* ps2-lod-dist?))) diff --git a/goal_src/jak2/pc/pckernel-impl.gc b/goal_src/jak2/pc/pckernel-impl.gc index 5d3e604577..fffb9b9931 100644 --- a/goal_src/jak2/pc/pckernel-impl.gc +++ b/goal_src/jak2/pc/pckernel-impl.gc @@ -49,8 +49,10 @@ ;; The Jak 2 version of the pc-settings object. (deftype pc-settings-jak2 (pc-settings) ( - (fast-airlock? symbol) + (fast-airlock? symbol) (fast-elevator? symbol) + (fast-progress? symbol) + (text-language pc-language) ;; language for game text ;; debug @@ -95,6 +97,7 @@ (set! (-> obj fast-airlock?) #t) (set! (-> obj fast-elevator?) #t) + (set! (-> obj fast-progress?) #f) 0) @@ -106,4 +109,9 @@ (defun get-video-params () *video-params*) +(define *progress-speed* 1.5) +(define *airlock-speed* 1.75) +(define *airlock-close-speed* 1.75) + + diff --git a/goal_src/jak2/pc/pckernel.gc b/goal_src/jak2/pc/pckernel.gc index 321df62172..c7a5727867 100644 --- a/goal_src/jak2/pc/pckernel.gc +++ b/goal_src/jak2/pc/pckernel.gc @@ -104,9 +104,6 @@ (string= (-> proc name) "drill-lift-2")))) ) -(define *airlock-speed* 1.75) -(define *airlock-close-speed* 1.75) - (defmethod get-airlock-speed pc-settings-jak2 ((obj pc-settings-jak2)) "return the current speed modifier for airlocks" (if (-> obj fast-airlock?) @@ -133,6 +130,7 @@ (("jetboard-trick-text?") (set! (-> obj jetboard-trick-text?) (file-stream-read-symbol file))) (("fast-airlock?") (set! (-> obj fast-airlock?) (file-stream-read-symbol file))) (("fast-elevator?") (set! (-> obj fast-elevator?) (file-stream-read-symbol file))) + (("fast-progress?") (set! (-> obj fast-progress?) (file-stream-read-symbol file))) (("text-language") (set! (-> obj text-language) (the-as pc-language (file-stream-read-int file)))) ) 0) @@ -144,6 +142,7 @@ (format file " (jetboard-trick-text? ~A)~%" (-> obj jetboard-trick-text?)) (format file " (fast-airlock? ~A)~%" (-> obj fast-airlock?)) (format file " (fast-elevator? ~A)~%" (-> obj fast-elevator?)) + (format file " (fast-progress? ~A)~%" (-> obj fast-progress?)) (format file " (text-language ~D)~%" (-> obj text-language)) 0)