diff --git a/goal_src/jak2/pc/pckernel-impl.gc b/goal_src/jak2/pc/pckernel-impl.gc index 9a349e27ee..72abe4d514 100644 --- a/goal_src/jak2/pc/pckernel-impl.gc +++ b/goal_src/jak2/pc/pckernel-impl.gc @@ -106,6 +106,7 @@ (memcard-subtitles? symbol) (text-language pc-language) ;; language for game text + (subtitle-language pc-language) ) (:methods @@ -155,12 +156,15 @@ (cond ((and (= *default-territory* GAME_TERRITORY_SCEE) (= (-> obj text-language) (pc-language english))) (set! (-> obj text-language) (pc-language uk-english)) + (set! (-> obj subtitle-language) (pc-language uk-english)) ) ((= *default-territory* GAME_TERRITORY_SCEI) (set! (-> obj text-language) (pc-language japanese)) + (set! (-> obj subtitle-language) (pc-language japanese)) ) ((= *default-territory* GAME_TERRITORY_SCEK) (set! (-> obj text-language) (pc-language korean)) + (set! (-> obj subtitle-language) (pc-language korean)) ) (else )) diff --git a/goal_src/jak2/pc/pckernel.gc b/goal_src/jak2/pc/pckernel.gc index 3567e771b5..37b53acd5e 100644 --- a/goal_src/jak2/pc/pckernel.gc +++ b/goal_src/jak2/pc/pckernel.gc @@ -760,6 +760,7 @@ (("minimap-force-north") (set! (-> obj minimap-force-north) (file-stream-read-symbol file))) (("hires-clouds?") (set! (-> obj hires-clouds?) (file-stream-read-symbol file))) (("text-language") (set! (-> obj text-language) (the-as pc-language (file-stream-read-int file)))) + (("subtitle-language") (set! (-> obj subtitle-language) (the-as pc-language (file-stream-read-int file)))) (("controller-led-status?") (set! (-> obj controller-led-status?) (file-stream-read-symbol file))) (("speedrunner-mode-custom-bind") (set! (-> obj speedrunner-mode-custom-bind) (file-stream-read-int file))) (("cheats") (set! (-> obj cheats) (the-as pc-cheats (file-stream-read-int file)))) @@ -814,6 +815,7 @@ (format file " (minimap-force-north ~A)~%" (-> obj minimap-force-north)) (format file " (hires-clouds? ~A)~%" (-> obj hires-clouds?)) (format file " (text-language ~D)~%" (-> obj text-language)) + (format file " (subtitle-language ~D)~%" (-> obj text-language)) (format file " (controller-led-status? ~A)~%" (-> obj controller-led-status?)) (format file " (speedrunner-mode-custom-bind ~D)~%" (-> obj speedrunner-mode-custom-bind)) (format file " (cheats #x~x)~%" (-> obj cheats)) diff --git a/goal_src/jak2/pc/progress/progress-static-pc.gc b/goal_src/jak2/pc/progress/progress-static-pc.gc index 1a3bdd9cb7..ab7b17c6d3 100644 --- a/goal_src/jak2/pc/progress/progress-static-pc.gc +++ b/goal_src/jak2/pc/progress/progress-static-pc.gc @@ -373,9 +373,10 @@ This gives us more freedom to write code how we want. (text-id language-name-czech) (text-id language-name-croatian) (text-id language-name-galician)) - :get-item-index-fn (lambda () (-> *setting-control* user-default subtitle-language)) + :get-item-index-fn (lambda () (-> *pc-settings* subtitle-language)) :on-confirm (lambda ((index int) (the-progress progress)) - (set! (-> *setting-control* user-default subtitle-language) (the-as language-enum index))))) + (set! (-> *pc-settings* subtitle-language) (the-as pc-language index)) + (pc-settings-save)))) (defmacro game-options-pc-sound-language () `(new 'static 'menu-generic-carousel-option diff --git a/goal_src/jak2/pc/subtitle2.gc b/goal_src/jak2/pc/subtitle2.gc index 0f13aef3ab..0389f89ab2 100644 --- a/goal_src/jak2/pc/subtitle2.gc +++ b/goal_src/jak2/pc/subtitle2.gc @@ -106,7 +106,7 @@ heap = the text heap to load the file onto" (let ((heap-sym-heap (the-as subtitle2-text-info (-> curr-text value))) - (lang (-> *setting-control* user-current subtitle-language)) + (lang (-> *pc-settings* subtitle-language)) (load-status 0) (heap-free (&- (-> heap top) (the-as uint (-> heap base))))) @@ -358,7 +358,7 @@ "setup a font and parameters for the subtitle2 subtitles." ;; set font settings. - (if (!= (language-enum japanese) (-> *setting-control* user-current subtitle-language)) + (if (!= (pc-language japanese) (-> *pc-settings* subtitle-language)) (set-scale! font (* 0.5 (-> *SUBTITLE2-bank* scale))) (set-scale! font (* 0.5 (-> *SUBTITLE2-bank* scale) 1.2))) (set-width! font (the int (* (-> *SUBTITLE2-bank* width) 0.91 512))) @@ -591,7 +591,7 @@ (set-height! (-> self font) 70) (set-scale! (-> self font) 0.5) - (when (= (-> *setting-control* user-current subtitle-language) (language-enum korean)) + (when (= (-> *pc-settings* subtitle-language) (pc-language korean)) (set-scale! (-> self font) 0.6)) ) #t)