diff --git a/.vs/launch.vs.json b/.vs/launch.vs.json index 0e60a8ff56..e8619ec15c 100644 --- a/.vs/launch.vs.json +++ b/.vs/launch.vs.json @@ -67,7 +67,7 @@ "--game", "jak2", "--file", - "progress-static" + "progress" ] }, { diff --git a/Taskfile.yml b/Taskfile.yml index 4beddd2ead..77d762cca7 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -137,4 +137,3 @@ tasks: type-test: cmds: - cmd: '{{.GOALCTEST_BIN_RELEASE_DIR}}/goalc-test --gtest_brief=0 --gtest_filter="*Jak2TypeConsistency*"' - ignore_error: true diff --git a/common/util/FontUtils.cpp b/common/util/FontUtils.cpp index 631b9dfaba..3a60f08d9b 100644 --- a/common/util/FontUtils.cpp +++ b/common/util/FontUtils.cpp @@ -978,10 +978,12 @@ static std::vector s_replace_info_jak2 = { ""}, {"~Y~1L~+8H\\c91~Z~6L~-8H\\c9e~Z~+24H~6L\\ca4~Z~+40H", ""}, {"~Y~1L\\c91~Z~6L~-15V\\c9c~Z~+13V~6L\\c98~Z~+26H", ""}, + + // icons + {"~Y~6L<~Z~Y~1L>~Z~Y~23L[~Z~+26H", ""}, + {"~Y~3L<~Z~Y~1L>~Z~Y~23L[~Z~+26H", ""}, // TODO // - ~Y~22L\ca1~Z~22L~+17H~-13V\ca2~Z~22L~+17H~+14V\ca0~Z~22L~+32H\ca3~Z~+56H - // - ~Y~6L<~Z~Y~1L>~Z~Y~23L[~Z~+26H - // - ~Y~3L<~Z~Y~1L>~Z~Y~23L[~Z~+26H // - ~Y~1L\c85~Z~3L\c8c~Z~7L\c8e~\c5d~-1H~Y~1L\c85~Z~3L\c8d~Z~7L\c8f~Z~+26H // - ~Y~3L<~Z~Y~1L>~Z~Y~23L[~Z~+26H // - ~Y~1L\c85~\c5d~-1H~Y~1L\c85~Z~-11H~3L\c86~Z~+26H @@ -989,11 +991,11 @@ static std::vector s_replace_info_jak2 = { // flags {"~Y~6L\\c81~Z~+15H~1L\\c81~Z~+30H~3L\\c81~Z~+45H", ""}, {"~Y~5L\\c85~Z~3L\\c8b~\\c5d~-1H~Y~5L\\c85~Z~3L\\c8b~Z~+26H", ""}, - {"~Y~39L~~~Z~3L\\c7f~Z~5L\\c80~\\c5d~-1H~Y~39L~~~Z~3L\\c7f~Z~5L\\c80~Z~+26H", - ""}, + {"~Y~39L~~~Z~3L\\c7f~Z~5L\\c80~\\c5d~-1H~Y~39L~~~Z~3L\\c7f~Z~5L\\c80~Z~+26H", ""}, {"~Y~7L\\c81~Z~+15H~1L\\c81~Z~+30H~3L\\c81~Z~+47H", ""}, {"~Y~1L\\c85~Z~3L\\c9a~Z~7L\\c9b~\\c5d~-1H~Y~1L\\c85~Z~3L\\c90~Z~+26H", ""}, - {"~Y~1L\\c85~Z~39L\\c87~\\c5d~-1H~Y~1L\\c85~Z~39L\\c88~Z~-11H~7L\\c8a~Z~-11H~3L\\c89~Z~+26H", ""}, + {"~Y~1L\\c85~Z~39L\\c87~\\c5d~-1H~Y~1L\\c85~Z~39L\\c88~Z~-11H~7L\\c8a~Z~-11H~3L\\c89~Z~+26H", + ""}, {"~Y~1L\\c85~\\c5d~-1H~Y~1L\\c85~Z~-11H~3L\\c86~Z~+26H", ""}, // weird stuff @@ -1010,14 +1012,14 @@ static std::vector s_replace_info_jak2 = { ""}, // used for the 4<__> place in spanish. the 5th uses the same // character but looks different...? {"~Y~-6Hº~Z~+10H", "°"}, - {"\\c5e", "œ"}, // ligature o+e + {"\\c5e", "œ"}, // ligature o+e // Color / Emphasis {"~[~1L", ""}, {"~[~32L", ""}}; static std::vector s_encode_info_jak2 = { - {"_", {0x03}}, // large space + {"_", {0x03}}, // large space {"ˇ", {0x10}}, // caron {"`", {0x11}}, // grave accent {"'", {0x12}}, // apostrophe diff --git a/decompiler/IR2/FormExpressionAnalysis.cpp b/decompiler/IR2/FormExpressionAnalysis.cpp index ab0364a0f7..39f67c642b 100644 --- a/decompiler/IR2/FormExpressionAnalysis.cpp +++ b/decompiler/IR2/FormExpressionAnalysis.cpp @@ -1359,23 +1359,41 @@ void SimpleExpressionElement::update_from_stack_mult_si(const Env& env, FormStack& stack, std::vector* result, bool allow_side_effects) { - auto arg0_i = is_int_type(env, m_my_idx, m_expr.get_arg(0).var()); - auto arg1_i = is_int_type(env, m_my_idx, m_expr.get_arg(1).var()); + if (m_expr.get_arg(0).is_int()) { + // annoyingly there's a mult3 v1, r0, v1 in jak 2. + auto arg1_i = is_int_type(env, m_my_idx, m_expr.get_arg(1).var()); - auto args = pop_to_forms({m_expr.get_arg(0).var(), m_expr.get_arg(1).var()}, env, pool, stack, - allow_side_effects); + auto args = pop_to_forms({m_expr.get_arg(1).var()}, env, pool, stack, allow_side_effects); - if (!arg0_i) { - args.at(0) = pool.form(TypeSpec("int"), args.at(0)); + if (!arg1_i) { + args.at(0) = pool.form(TypeSpec("int"), args.at(1)); + } + + auto new_form = pool.alloc_element( + GenericOperator::make_fixed(FixedOperatorKind::MULTIPLICATION), + pool.form(SimpleAtom::make_int_constant(m_expr.get_arg(0).get_int())), + args.at(0)); + + result->push_back(new_form); + } else { + auto arg0_i = is_int_type(env, m_my_idx, m_expr.get_arg(0).var()); + auto arg1_i = is_int_type(env, m_my_idx, m_expr.get_arg(1).var()); + + auto args = pop_to_forms({m_expr.get_arg(0).var(), m_expr.get_arg(1).var()}, env, pool, stack, + allow_side_effects); + + if (!arg0_i) { + args.at(0) = pool.form(TypeSpec("int"), args.at(0)); + } + + if (!arg1_i) { + args.at(1) = pool.form(TypeSpec("int"), args.at(1)); + } + + auto new_form = pool.alloc_element( + GenericOperator::make_fixed(FixedOperatorKind::MULTIPLICATION), args.at(0), args.at(1)); + result->push_back(new_form); } - - if (!arg1_i) { - args.at(1) = pool.form(TypeSpec("int"), args.at(1)); - } - - auto new_form = pool.alloc_element( - GenericOperator::make_fixed(FixedOperatorKind::MULTIPLICATION), args.at(0), args.at(1)); - result->push_back(new_form); } void SimpleExpressionElement::update_from_stack_force_si_2(const Env& env, diff --git a/decompiler/config/jak2/all-types.gc b/decompiler/config/jak2/all-types.gc index af03fe0496..21f9376192 100644 --- a/decompiler/config/jak2/all-types.gc +++ b/decompiler/config/jak2/all-types.gc @@ -5050,7 +5050,7 @@ (deftype texture-page-translate-item (structure) ((bucket bucket-id :offset-assert 0) - (level-index uint32 :offset-assert 4) + (level-index uint32 :offset-assert 4) ;; TODO - this is an enum (level-texture-page tpage-category-u32 :offset-assert 8) (texture-user texture-enable-mask-u32 :offset-assert 12) ) @@ -6580,99 +6580,121 @@ :type uint32 :bitfield #f (pause 257) - (progress-on-off-1TODO 270) - (progress-on-off-2TODO 271) - (progress-1k2jn1kj2n3 272) - (progress-kj1231nj23 286) - (progress-12434g343v 287) - (progress-video-asda 288) - (progress-video-j1n2 289) - (progress-draw-yes-or-no-1-TODO 292) - (progress-draw-yes-or-no-2-TODO 293) - (progress-1kj2n3kj1n23 296) - (progress-n2jk3n45234 298) - (progress-1ikjhb231hjik2b31ihb231 303) - (progress-kj1n23123 308) - (progress-k1jnb231kjhnb23 311) - (progress-loj1n23 312) - (progress-2k3jn4234 313) - (progress-2kj3n24kn 314) - (progress-2kjn34 315) - (progress-2klj342n43 316) - (progress-l2jm342m34 317) - (progress-2m342kmj34 318) - (progress-kj1bn23kj1n23 339) - (progress-1l2jnm31lk2m3 340) - (progress-unlocked-oj1n23jn1 345) - (progress-unlocked-k1231kkj 346) - (progress-unlocked-jn12j 347) - (progress-unlocked-m12312 348) - (progress-unlocked-1231h2bn 349) - (progress-unlocked-akjisndaj 350) - (progress-unlocked-iwudnq 351) - (progress-unlocked-n51i51n 352) - (progress-1k2ijn1jkn3 360) - (progress-1kjn2jn31kj3 361) - (progress-1kj2n31j23 367) - (progress-iko1jn231kjhn23 368) - (progress-1klj2n31j2n3 369) - (progress-i1un23i12b341 370) - (progress-2kj3n2kji3n42 377) - (progress-draw-continue-retry-1-TODO 382) - (progress-1klj2n31j23 383) - (progress-j1n23j1kn23kjn12 395) - (progress-2j021j394j 396) - (progress-kj6n324i63n 397) - (progress-3iou4n3i45n3 398) - (progress-39u4n359n45 399) - (progress-iun34593n45 400) - (progress-on2394234n 401) - (progress-l1jkn231jkn23 402) - (progress-kj1n231kjn2 403) - (progress-1lkjn231jnk2 404) - (progress-n12n211n1n 405) - (progress-2iu3bn4289u34n 406) - (progress-oj1n23kj1n23123 409) - (progress-1kjn231kjn23 410) - (progress-1kj2b31k2b3 411) - (progress-j1nb23kj1hbn2 412) - (progress-1kj2bkoij1231 413) - (progress-1nmn1221n21n12n 414) - (progress-busy-loading-TODO 416) - (progress-1jib12o3nj12j3 419) - (progress-1m23n1n23n21 420) - (progress-1jk2n31jkn23n1j 421) - (progress-1n23kjn12nk3j12 422) - (progress-draw-continue-retry-2-TODO 423) - (progress-kj12k3j1n23n 424) - (progress-1kj2bn31kjhnb2 426) - (progress-jk1n23kj1n2 429) - (progress-k1jn23k1h23b 430) - (progress-k1jn23kj1n23 431) - (progress-1kjn231j2 432) - (progress-1kj2n31kjn231 433) - (progress-1kj2n31jkn23 434) - (progress-1kjn2123919 435) - (progress-jn12n3j1n2 436) - (progress-n12jin313 437) - (progress-main-23jn42 531) - (progress-main-63j46j3n4 532) - (progress-main-m123j1m 533) - (progress-main-634jn6 534) - (progress-main-52o352nm 535) - (progress-main-63jk46n3 536) - (progress-main-j324nm3 537) - (progress-main-k1j2n3n1 538) - (progress-main-6mn346mn 539) - (progress-main-63jn463jn 540) - (progress-main-63j46n3j 541) - (progress-main-52kj3n52 542) - (progress-main-52jn35j2 543) - (progress-main-3643m6m 544) - (progress-main-36j46jn 545) - (progress-main-63mn46nm 546) - (progress-main-364jn6n 547) - (progress-ikj123i1khb231 784) + (progress-sound-music-volume 264) + (progress-sound-speech-volume 265) + (progress-on 270) + (progress-off 271) + (progress-move-dpad 272) + (progress-aspect-ratio 280) + (progress-progressive-scan 281) + (progress-video-mode 282) + (progress-root-game-options 283) + (progress-root-graphic-options 284) + (progress-root-sound-options 285) + (progress-aspect-4x3 286) + (progress-aspect-16x9 287) + (progress-refresh-60hz 288) + (progress-refresh-50hz 289) + (progress-demo-exit 291) + (progress-yes 292) + (progress-no 293) + (progress-back 294) + (progress-ok 295) + (progress-next 296) + (progress-previous 297) + (progress-continue-without-saving 298) + (progress-select-file-to-save 299) + (progress-select-file-to-load 300) + (progress-load-game 301) + (progress-save-game 302) + (progress-slot-empty 303) + (progress-title-options 304) + (progress-title-new-game 305) + (progress-title-prompt 306) + (progress-quit 307) + (progress-root-show-map 308) + (progress-root-highscores 310) + (progress-highscores-1st 311) + (progress-highscores-2nd 312) + (progress-highscores-3rd 313) + (progress-highscores-4th 314) + (progress-highscores-5th 315) + (progress-highscores-6th 316) + (progress-highscores-7th 317) + (progress-highscores-8th 318) + (progress-root-secrets 339) + (progress-secrets-unlocked 340) + (progress-main-secrets-hero-mode 345) + (progress-main-secrets-sceneplayer-1 346) + (progress-main-secrets-sceneplayer-2 347) + (progress-main-secrets-sceneplayer-3 348) + (progress-main-secrets-scrapbook 349) + (progress-main-secrets-mega-scrapbook 350) + (progress-main-secrets-scrapbook-3 351) + (progress-main-secrets-levelselect 352) + (progress-secrets-orb-label 360) + (progress-root-missions 361) + (progress-root-restart-mission 366) + (progress-missions-icon-todo 367) + (progress-missions-icon-completed 368) + (progress-missions-none 369) + (progress-unknown-game 370) + (progress-unknown-square-to-reset 377) + (progress-unknown-retry? 382) + (progress-secrets-go-to-title-screen 383) + (progress-graphics-60hz-change-notice 395) + (progress-graphics-progressivescan-change-notice 396) + (progress-graphics-progressivescan-warning-1 397) + (progress-graphics-progressivescan-warning-2 398) + (progress-graphics-60hz-change-complete 399) + (progress-graphics-progressivescan-change-complete 400) + (progress-graphics-mode-revert? 401) + (progress-disc-removed-notice 402) + (progress-disc-removed-prompt 403) + (progress-disc-read-error 404) + (progress-disc-read-error-prompt 405) + (progress-quit-game-confirm 406) + (progress-memcard-not-found 409) + (progress-memcard-unformatted 410) + (progress-memcard-space-requirement 411) + (progress-memcard-insert-card-with-jak2 412) + (progress-memcard-insert-card-with-space-to-save 413) + (progress-memcard-formatting-required-notice 414) + (progress-memcard-loading-data 416) + (progress-memcard-dont-remove 419) + (progress-memcard-overwrite-warning 420) + (progress-memcard-overwrite-confirm 421) + (progress-memcard-format-prompt 422) + (progress-memcard-continue? 423) + (progress-memcard-go-back? 424) + (progress-memcard-error-while-saving 426) + (progress-memcard-check 429) + (progress-memcard-check-and-try-again 430) + (progress-memcard-was-removed 431) + (progress-autosave-disabled 432) + (progress-autosave-reenabling-info 433) + (progress-memcard-no-jak2-found 434) + (progress-memcard-create-jak2-file? 435) + (progress-autosave-explanation 436) + (progress-autosave-dont-remove 437) + (progress-locations-haven-city 531) + (progress-locations-fortress 532) + (progress-locations-landing-pad 533) + (progress-locations-palace-roof 534) + (progress-locations-palace 535) + (progress-locations-weapons-factory 536) + (progress-locations-dead-town 537) + (progress-locations-pumping-station 538) + (progress-locations-sewer 539) + (progress-locations-strip-mine 540) + (progress-locations-mountain-temple 541) + (progress-locations-haven-forest 542) + (progress-locations-drill-platform 543) + (progress-locations-mars-tomb 544) + (progress-locations-dig 545) + (progress-locations-underport 546) + (progress-locations-nest 547) + (progress-unknown-continue 784) ) ;; ---text-id-h:game-text-id @@ -7281,7 +7303,7 @@ (new (symbol type) _type_ 0) (initialize (_type_) none 9) ;; some sort of init? (update (_type_) none 10) - (bigmap-method-11 () none 11) + (bigmap-method-11 (_type_ int int int int) none 11) (bigmap-method-12 () none 12) (bigmap-method-13 () none 13) (bigmap-method-14 (_type_) none 14) @@ -11771,7 +11793,7 @@ :size-assert #x10 :flag-assert #xa00000010 (:methods - (highscore-info-method-9 () none 9) + (highscore-info-method-9 (_type_ float) int 9) ) ) @@ -11879,27 +11901,29 @@ ) ) +;; +++memcard-h:mc-status-code (defenum mc-status-code :type uint32 - ;; (busy 0) + (busy 0) (ok 1) - ; (bad-handle 2) - ; (format-failed 3) - ; (internal-error 4) - ; (write-error 5) - ; (read-error 6) - ; (new-game 7) - ; (no-memory 8) - ; (no-card 9) - ; (no-last 10) - ; (no-format 11) - ; (no-file 12) - ; (no-save 13) - ; (no-space 14) - ; (bad-version 15) - ; (no-process 16) - ; (no-auto-save 17) + (bad-handle 2) + (format-failed 3) + (internal-error 4) + (write-error 5) + (read-error 6) + (new-game 7) + (no-memory 8) + (no-card 9) + (no-last 10) + (no-format 11) + (no-file 12) + (no-save 13) + (no-space 14) + (bad-version 15) + (no-process 16) + (no-auto-save 17) ) +;; ---memcard-h:mc-status-code (declare-type entity-perm-array inline-array-class) (declare-type continue-point basic) @@ -19702,8 +19726,8 @@ (hud-box-method-11 () none 11) (hud-box-method-12 () none 12) (hud-box-method-13 (_type_ dma-buffer float) int 13) - (hud-box-method-14 () none 14) - (hud-box-method-15 () none 15) + (hud-box-method-14 (_type_) none 14) + (hud-box-method-15 (_type_) none 15) ) ) @@ -20241,7 +20265,7 @@ (go-away () _type_ :state 22) ;; (adjust-icons (_type_) none 22) (gone () _type_ :state 23) ;; (adjust-ratios (_type_ symbol symbol) none 23) (init-defaults "Initialize default menu settings." (_type_) connection 24) ;; (draw-fuel-cell-screen (_type_ int) none 24) - (progress-method-25 (_type_ object object symbol) none 25) ;; (draw-money-screen (_type_ int) none 25) + (progress-method-25 (_type_) none 25) ;; (draw-money-screen (_type_ int) none 25) (progress-method-26 (_type_) object 26) ;; (draw-buzzer-screen (_type_ int) none 26) (can-go-back? (_type_) symbol 27) ;; (draw-notice-screen (_type_) none 27) (progress-method-28 (_type_ symbol) symbol 28) ;; (draw-options (_type_ int int float) none 28) @@ -20256,11 +20280,12 @@ ((name game-text-id :offset-assert 4) (scale float :offset-assert 8) (unknown function :offset-assert 12) - ;; No idea what is going on here.... - ;; but i believe they are all `menu-options` -- look at `(method 24 progress)` - ;; i think it might just be that each menu "page" can have 8 menu-options on it, and maybe printing "box" was just to make inspects nicer? - (box menu-option 1 :offset-assert 16) - (unknown-options menu-option 7 :offset-assert 20) + ;; This is gross if im correct + ;; this HAS to have a bunch of `menu-option`s -- look at `(method 24 progress)` and `(method 25 progress)` + ;; - i think it might just be that each menu "page" can have 8 menu-options on it? + ;; but the drawing code also heavily implies it can also be a `hud-box` (finally the `box` name makes sense) + (box hud-box 1 :inline :offset-assert 16) + (options menu-option 8 :offset 16) ) :method-count-assert 12 :size-assert #x30 @@ -29338,7 +29363,7 @@ (define-extern hide-progress-screen (function none)) (define-extern progress-allowed? (function symbol)) (define-extern menu-update-purchase-secrets (function menu-secret-option none)) -(define-extern progress-trans (function none :behavior progress)) ;; TODO - assertion hit when defining behavior +(define-extern progress-trans (function none :behavior progress)) (define-extern begin-scan (function hud-box progress int)) (define-extern end-scan (function hud-box float int)) (define-extern progress-post (function none :behavior progress)) @@ -29373,40 +29398,43 @@ (define-extern draw-up-down (function font-context none)) (define-extern draw-missions-up-down (function font-context none)) (define-extern draw-scene-up-down (function font-context none)) -(define-extern begin-scissor (function vector progress none)) -(define-extern end-scissor (function none)) -(define-extern begin-scissor-secret (function vector none)) -(define-extern end-scissor-secret (function none)) -(define-extern begin-scissor-missions (function vector float none)) -(define-extern end-scissor-missions (function vector none)) -(define-extern begin-scissor-scene (function vector none)) -(define-extern end-scissor-scene (function none)) -(define-extern begin-scissor-level (function vector none)) -(define-extern end-scissor-level (function none)) +(define-extern begin-scissor (function hud-box progress none)) +(define-extern end-scissor (function hud-box float none)) +(define-extern begin-scissor-secret (function hud-box none)) +(define-extern end-scissor-secret (function hud-box float none)) +(define-extern begin-scissor-missions (function hud-box float none)) +(define-extern end-scissor-missions (function hud-box none)) +(define-extern begin-scissor-scene (function hud-box none)) +(define-extern end-scissor-scene (function hud-box float none)) +(define-extern begin-scissor-level (function hud-box none)) +(define-extern end-scissor-level (function hud-box none)) (define-extern print-language-name (function game-text-id font-context int symbol none)) -(define-extern unlocked-secret-menu? (function symbol)) ;; a bit field of some kind! probably task related - HANG! -(define-extern memcard-unlocked-secrets? "TODO - cleanup bitfields / arg passing" (function symbol symbol)) -(define-extern num-unlocked-secret? "@returns The number of secrets currently unlocked" (function int int)) ;; a bit field of some kind! probably task related -(define-extern print-menu-text (function game-text-id float font-context progress none)) -(define-extern draw-yes-no (function progress float none)) -(define-extern draw-continue-retry (function progress float none)) -(define-extern draw-savegame-box (function menu-memcard-slot-option float float float float none)) -(define-extern get-level-icon-id-01 "TODO - Icon id enum perhaps?" (function int uint)) -(define-extern get-level-icon-id-02 "TODO - Icon id enum perhaps?" (function int uint)) -(define-extern get-level-icon-id-03 "TODO - Icon id enum perhaps?" (function int uint)) -(define-extern get-level-icon-id-04 "TODO - Icon id enum perhaps?" (function int uint)) -(define-extern draw-decoration (function menu-quit-qr-option font-context float int symbol float none)) -(define-extern draw-missions-decoration (function menu-missions-option font-context float game-text-id none)) -(define-extern draw-sound-options-decoration (function menu-slider-option font-context float symbol game-text-id none)) -(define-extern draw-decoration-secrets (function menu-secret-option font-context float game-text-id pointer)) -(define-extern draw-decoration-load-save (function menu-memcard-slot-option font-context float int none)) +(define-extern unlocked-secret-menu? (function int)) +(define-extern memcard-unlocked-secrets? "TODO - returns a bitfield" (function symbol int)) +(define-extern num-unlocked-secret? + "TODO - bitfield + @returns The number of secrets currently unlocked" + (function int int)) +(define-extern print-menu-text (function string float font-context progress none)) +(define-extern draw-yes-no (function progress font-context pointer)) +(define-extern draw-continue-retry (function progress font-context pointer)) +(define-extern draw-savegame-box (function menu-option float float float float pointer)) +(define-extern get-level-icon-id-01 "TODO - Icon id enum perhaps?" (function int texture-id)) +(define-extern get-level-icon-id-02 "TODO - Icon id enum perhaps?" (function int texture-id)) +(define-extern get-level-icon-id-03 "TODO - Icon id enum perhaps?" (function int texture-id)) +(define-extern get-level-icon-id-04 "TODO - Icon id enum perhaps?" (function int texture-id)) +(define-extern draw-decoration (function menu-option font-context float int symbol float pointer)) +(define-extern draw-missions-decoration (function menu-missions-option font-context float game-text-id pointer)) +(define-extern draw-sound-options-decoration (function menu-slider-option font-context float symbol game-text-id pointer)) +(define-extern draw-decoration-secrets (function menu-option font-context float game-text-id pointer)) +(define-extern draw-decoration-load-save (function menu-option font-context float int pointer)) (define-extern sort-task-node-result (function int none)) (define-extern find-mission-text-at-index (function int game-task-node-info)) -(define-extern draw-secret-list (function secret-item-option progress font-context int symbol float none)) +(define-extern draw-secret-list (function secret-item-option progress font-context int symbol float pointer)) (define-extern draw-highscore-icon (function menu-highscores-option uint int int float pointer)) -(define-extern draw-highscore-cup (function texture-page object int int float float pointer)) +(define-extern draw-highscore-cup "First int is an enum" (function texture-page int int int float float pointer)) (define-extern get-highscore-score "TODO - takes and returns an enum?" (function int int)) -(define-extern eval-highscore (function print-highscore-obj none)) +(define-extern eval-highscore (function print-highscore-obj int)) (define-extern str-print-time (function float string)) (define-extern print-highscore (function print-highscore-obj float)) (define-extern get-highscore-text "TODO - takes an enum?" (function int game-text-id)) diff --git a/decompiler/config/jak2/stack_structures.jsonc b/decompiler/config/jak2/stack_structures.jsonc index 7171462cd0..3343148c30 100644 --- a/decompiler/config/jak2/stack_structures.jsonc +++ b/decompiler/config/jak2/stack_structures.jsonc @@ -3127,19 +3127,19 @@ "(method 10 menu-missions-option)": [ [ 224, - "vector" + "hud-box" ] ], "(method 10 menu-secret-option)": [ [ 64, - "vector" + "hud-box" ] ], "(method 10 menu-highscores-option)": [ [ 16, - "vector" + "hud-box" ] ] -} \ No newline at end of file +} diff --git a/decompiler/config/jak2/type_casts.jsonc b/decompiler/config/jak2/type_casts.jsonc index 223d39d64b..759d54565c 100644 --- a/decompiler/config/jak2/type_casts.jsonc +++ b/decompiler/config/jak2/type_casts.jsonc @@ -13352,173 +13352,215 @@ ], "(method 25 progress)": [ [ - 19, - "v1", + [ + 19, + 31 + ], + "a0", "menu-option" ] ], "(method 24 progress)": [ [ - [ - 70, - 72 - ], + 70, + "a0", + "(array menu-option)" + ], + [ + 71, "a0", "menu-on-off-game-vibrations-option" ], [ - [ - 76, - 78 - ], + 76, + "a0", + "(array menu-option)" + ], + [ + 77, "a0", "menu-on-off-game-subtitles-option" ], [ - [ - 82, - 84 - ], + 82, + "a0", + "(array menu-option)" + ], + [ + 83, "a0", "menu-language-option" ], [ - [ - 87, - 89 - ], + 87, + "a0", + "(array menu-option)" + ], + [ + 88, "a0", "menu-language-option" ], [ - [ - 91, - 93 - ], + 91, + "v1", + "(array menu-option)" + ], + [ + 92, "v1", "menu-language-option" ], [ - [ - 95, - 97 - ], + 95, + "v1", + "(array menu-option)" + ], + [ + 96, "v1", "menu-language-option" ], [ - [ - 101, - 103 - ], + 101, + "a0", + "(array menu-option)" + ], + [ + 102, "a0", "menu-on-off-option" ], [ - [ - 107, - 109 - ], + 107, + "a0", + "(array menu-option)" + ], + [ + 108, "a0", "menu-on-off-option" ], [ - [ - 113, - 115 - ], + 113, + "a0", + "(array menu-option)" + ], + [ + 114, "a0", "menu-on-off-option" ], [ - [ - 119, - 121 - ], + 119, + "a0", + "(array menu-option)" + ], + [ + 120, "a0", "menu-on-off-option" ], [ - [ - 125, - 127 - ], + 125, + "a0", + "(array menu-option)" + ], + [ + 126, "a0", "menu-slider-option" ], [ - [ - 131, - 133 - ], + 131, + "a0", + "(array menu-option)" + ], + [ + 132, "a0", "menu-slider-option" ], [ - [ - 137, - 139 - ], + 137, + "a0", + "(array menu-option)" + ], + [ + 138, "a0", "menu-slider-option" ], [ - [ - 141, - 143 - ], + 141, + "v1", + "(array menu-option)" + ], + [ + 142, "v1", "menu-missions-option" ] ], "(method 31 progress)": [ [ - [ - 61, - 63 - ], + 61, "v1", "(array menu-option)" + ], + + [ + 62, "v1", "menu-missions-option" ] ], "(method 32 progress)": [ [ - [ - 296, - 298 - ], + 296, + "v1", + "(array menu-option)" + ], + [ + 297, "v1", "menu-select-start-option" ], [ - [ - 306, - 308 - ], + 306, + "v1", + "(array menu-option)" + ], + [ + 307, "v1", "menu-select-scene-option" ], [ - [ - 371, - 373 - ], + 371, + "v1", + "(array menu-option)" + ], + [ + 372, "v1", "menu-missions-option" ], [ - [ - 380, - 382 - ], + 380, + "v1", + "(array menu-option)" + ], + [ + 381, "v1", "menu-highscores-option" ], [ - [ - 384, - 386 - ], + 384, + "v1", + "(array menu-option)" + ], + [ + 385, "v1", "menu-highscores-option" ] @@ -13887,5 +13929,30 @@ "v1", "dma-packet" ] + ], + "(event idle progress)": [ + [ + [ + 10, + 80 + ], + "v1", + "mc-status-code" + ], + [ + [ + 147, + 217 + ], + "v1", + "mc-status-code" + ] + ], + "memcard-unlocked-secrets?": [ + [ + 50, + "s5", + "int" + ] ] } diff --git a/decompiler/config/jak2_ntsc_v1.jsonc b/decompiler/config/jak2_ntsc_v1.jsonc index 4b91318a1d..ad42a3b90e 100644 --- a/decompiler/config/jak2_ntsc_v1.jsonc +++ b/decompiler/config/jak2_ntsc_v1.jsonc @@ -7,7 +7,7 @@ // if you want to filter to only some object names. // it will make the decompiler much faster. - "allowed_objects": ["progress"], + "allowed_objects": [], "banned_objects": ["effect-control", "time-of-day"], //////////////////////////// diff --git a/goal_src/jak2/engine/game/game-info-h.gc b/goal_src/jak2/engine/game/game-info-h.gc index 97eca8b259..750c492f11 100644 --- a/goal_src/jak2/engine/game/game-info-h.gc +++ b/goal_src/jak2/engine/game/game-info-h.gc @@ -9,29 +9,6 @@ (declare-type continue-point basic) (declare-type game-save basic) - -(defenum mc-status-code - :type uint32 - ; (busy 0) - (ok 1) - ; (bad-handle 2) - ; (format-failed 3) - ; (internal-error 4) - ; (write-error 5) - ; (read-error 6) - ; (new-game 7) - ; (no-memory 8) - ; (no-card 9) - ; (no-last 10) - ; (no-format 11) - ; (no-file 12) - ; (no-save 13) - ; (no-space 14) - ; (bad-version 15) - ; (no-process 16) - ; (no-auto-save 17) - ) - (defenum continue-flags :type uint32 :bitfield #t @@ -178,7 +155,7 @@ :size-assert #x10 :flag-assert #xa00000010 (:methods - (highscore-info-method-9 () none 9) + (highscore-info-method-9 (_type_ float) int 9) ) ) diff --git a/goal_src/jak2/engine/ps2/memcard-h.gc b/goal_src/jak2/engine/ps2/memcard-h.gc index 2a283c4f23..ce21f43145 100644 --- a/goal_src/jak2/engine/ps2/memcard-h.gc +++ b/goal_src/jak2/engine/ps2/memcard-h.gc @@ -5,6 +5,31 @@ ;; name in dgo: memcard-h ;; dgos: ENGINE, GAME +;; +++mc-status-code +(defenum mc-status-code + :type uint32 + (busy 0) + (ok 1) + (bad-handle 2) + (format-failed 3) + (internal-error 4) + (write-error 5) + (read-error 6) + (new-game 7) + (no-memory 8) + (no-card 9) + (no-last 10) + (no-format 11) + (no-file 12) + (no-save 13) + (no-space 14) + (bad-version 15) + (no-process 16) + (no-auto-save 17) + ) +;; ---mc-status-code + + ;; DECOMP BEGINS (deftype mc-handle (int32) diff --git a/goal_src/jak2/engine/ui/bigmap-h.gc b/goal_src/jak2/engine/ui/bigmap-h.gc index 5d20be9164..29b6dd88b7 100644 --- a/goal_src/jak2/engine/ui/bigmap-h.gc +++ b/goal_src/jak2/engine/ui/bigmap-h.gc @@ -5,8 +5,13 @@ ;; name in dgo: bigmap-h ;; dgos: ENGINE, GAME -;; DECOMP BEGINS +(declare-type bigmap-compressed-layers structure) +(define-extern *bigmap-compressed-layers* bigmap-compressed-layers) +(declare-type bigmap basic) +(define-extern *bigmap* bigmap) + +;; DECOMP BEGINS (deftype bigmap-bit-mask (structure) ((data uint8 6656 :offset-assert 0) @@ -16,6 +21,7 @@ :flag-assert #x900001a00 ) + (deftype bigmap-layer-mask (structure) ((data uint8 26624 :offset-assert 0) ) @@ -24,6 +30,7 @@ :flag-assert #x900006800 ) + (deftype bigmap-image (structure) ((clut-offset uint32 :offset-assert 0) (image-offset uint32 :offset-assert 4) @@ -35,6 +42,7 @@ :flag-assert #x900000011 ) + (deftype bigmap-info (vector) ((scale float :offset 8) (inv-scale float :offset 12) @@ -44,6 +52,7 @@ :flag-assert #x900000010 ) + (deftype bigmap-info-array (structure) ((data bigmap-info 21 :inline :offset-assert 0) ) @@ -52,6 +61,7 @@ :flag-assert #x900000150 ) + (deftype bigmap-compressed-layers (structure) ((data uint32 20 :offset-assert 0) (layer0 uint32 :offset 0) @@ -79,7 +89,6 @@ :size-assert #x50 :flag-assert #x900000050 ) -(define-extern *bigmap-compressed-layers* bigmap-compressed-layers) (deftype bigmap (basic) @@ -130,7 +139,7 @@ (new (symbol type) _type_ 0) (initialize (_type_) none 9) (update (_type_) none 10) - (bigmap-method-11 () none 11) + (bigmap-method-11 (_type_ int int int int) none 11) (bigmap-method-12 () none 12) (bigmap-method-13 () none 13) (bigmap-method-14 (_type_) none 14) @@ -150,6 +159,7 @@ ) ) + (defmethod new bigmap ((allocation symbol) (type-to-make type)) (let ((gp-0 (object-new allocation type-to-make (the-as int (-> type-to-make size))))) (set! (-> gp-0 bigmap-image) @@ -199,57 +209,18 @@ (set! (-> gp-0 sprite-tmpl dma-vif dma) (new 'static 'dma-tag :qwc #x6 :id (dma-tag-id cnt))) (set! (-> gp-0 sprite-tmpl dma-vif vif0) (new 'static 'vif-tag)) (set! (-> gp-0 sprite-tmpl dma-vif vif1) (new 'static 'vif-tag :imm #x6 :cmd (vif-cmd direct) :msk #x1)) - (set! (-> gp-0 sprite-tmpl gif0) - (the uint64 (new 'static 'gif-tag64 - :nloop #x1 - :eop #x1 - :pre #x1 - :prim (new 'static 'gs-prim :prim (gs-prim-type sprite) :tme #x1 :abe #x1 :fst #x1) - :nreg #x5 - ) - ) - ) - (set! (-> gp-0 sprite-tmpl gif1) - (the uint64 (new 'static 'gif-tag-regs - :regs0 (gif-reg-id rgbaq) - :regs1 (gif-reg-id uv) - :regs2 (gif-reg-id xyz2) - :regs3 (gif-reg-id uv) - :regs4 (gif-reg-id xyz2) - ) - ) - ) + (set! (-> gp-0 sprite-tmpl gif0) (the-as uint #x50ab400000008001)) + (set! (-> gp-0 sprite-tmpl gif1) (the-as uint #x53531)) (set! (-> gp-0 draw-tmpl dma-vif dma) (new 'static 'dma-tag :qwc #xa :id (dma-tag-id cnt))) (set! (-> gp-0 draw-tmpl dma-vif vif0) (new 'static 'vif-tag)) (set! (-> gp-0 draw-tmpl dma-vif vif1) (new 'static 'vif-tag :imm #xa :cmd (vif-cmd direct) :msk #x1)) - (set! (-> gp-0 draw-tmpl gif0) - (the uint64 (new 'static 'gif-tag64 - :nloop #x1 - :eop #x1 - :pre #x1 - :prim (new 'static 'gs-prim :prim (gs-prim-type tri-strip) :tme #x1 :abe #x1 :fst #x1) - :nreg #x9 - ) - ) - ) - (set! (-> gp-0 draw-tmpl gif1) (the uint64 (new 'static 'gif-tag-regs - :regs0 (gif-reg-id rgbaq) - :regs1 (gif-reg-id uv) - :regs2 (gif-reg-id xyz2) - :regs3 (gif-reg-id uv) - :regs4 (gif-reg-id xyz2) - :regs5 (gif-reg-id uv) - :regs6 (gif-reg-id xyz2) - :regs7 (gif-reg-id uv) - :regs8 (gif-reg-id xyz2) - ) - ) - ) + (set! (-> gp-0 draw-tmpl gif0) (the-as uint #x90aa400000008001)) + (set! (-> gp-0 draw-tmpl gif1) (the-as uint #x535353531)) (set! (-> gp-0 adgif-tmpl dma-vif dma) (new 'static 'dma-tag :qwc #x6 :id (dma-tag-id cnt))) (set! (-> gp-0 adgif-tmpl dma-vif vif0) (new 'static 'vif-tag)) (set! (-> gp-0 adgif-tmpl dma-vif vif1) (new 'static 'vif-tag :imm #x6 :cmd (vif-cmd direct) :msk #x1)) - (set! (-> gp-0 adgif-tmpl gif0) (the uint64 (new 'static 'gif-tag64 :nloop #x5 :eop #x1 :nreg #x1))) - (set! (-> gp-0 adgif-tmpl gif1) (the uint64 (new 'static 'gif-tag-regs :regs0 (gif-reg-id a+d)))) + (set! (-> gp-0 adgif-tmpl gif0) (the-as uint #x1000000000008005)) + (set! (-> gp-0 adgif-tmpl gif1) (the-as uint 14)) (set-vector! (-> gp-0 offset) 0.0 0.0 0.0 0.0) (set-vector! (-> gp-0 scroll) 0.0 0.0 0.0 0.0) (set-vector! (-> gp-0 pos) 0 0 0 0) @@ -292,8 +263,3 @@ ) ) ) - - -(define-extern *bigmap* bigmap) - - diff --git a/goal_src/jak2/engine/ui/hud-h.gc b/goal_src/jak2/engine/ui/hud-h.gc index 956f36fe12..a06d9a3984 100644 --- a/goal_src/jak2/engine/ui/hud-h.gc +++ b/goal_src/jak2/engine/ui/hud-h.gc @@ -29,6 +29,7 @@ :flag-assert #x900000030 ) + (deftype hud-sprite (structure) ((pos vector4w :inline :offset-assert 0) (color vector4w :inline :offset-assert 16) @@ -47,6 +48,7 @@ ) ) + (deftype hud-box (structure) ((min vector2 :inline :offset-assert 0) (max vector2 :inline :offset-assert 8) @@ -61,11 +63,12 @@ (hud-box-method-11 () none 11) (hud-box-method-12 () none 12) (hud-box-method-13 (_type_ dma-buffer float) int 13) - (hud-box-method-14 () none 14) - (hud-box-method-15 () none 15) + (hud-box-method-14 (_type_) none 14) + (hud-box-method-15 (_type_) none 15) ) ) + (deftype hud-icon (basic) ((icon (pointer manipy) :offset-assert 4) (pos vector4w :inline :offset-assert 16) @@ -77,6 +80,7 @@ :flag-assert #x900000028 ) + (deftype hud-value (basic) ((current int32 :offset-assert 4) (target int32 :offset-assert 8) @@ -89,6 +93,7 @@ :flag-assert #x900000010 ) + (deftype hud (process) ((trigger-time time-frame :offset-assert 128) (last-hide-time time-frame :offset-assert 136) @@ -121,6 +126,7 @@ ) ) + (deftype hud-ashelin (hud) () :heap-base #xb30 @@ -129,6 +135,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-cargo (hud) () :heap-base #xb30 @@ -137,6 +144,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-citizen (hud) () :heap-base #xb30 @@ -145,6 +153,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-cpanel (hud) () :heap-base #xb30 @@ -153,6 +162,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-dig-clasp (hud) () :heap-base #xb30 @@ -161,6 +171,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-gun (hud) () :heap-base #xb30 @@ -169,6 +180,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-health (hud) () :heap-base #xb30 @@ -177,6 +189,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-dark-eco-symbol (hud) () :heap-base #xb30 @@ -185,6 +198,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-helldog (hud) () :heap-base #xb30 @@ -193,6 +207,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-lurker (hud) () :heap-base #xb30 @@ -201,6 +216,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-map (hud) () :heap-base #xb30 @@ -209,6 +225,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-moneybag (hud) () :heap-base #xb30 @@ -217,6 +234,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-pegasus (hud) () :heap-base #xb30 @@ -225,6 +243,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-plasmite (hud) () :heap-base #xb30 @@ -233,6 +252,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-dig-button (hud) () :heap-base #xb30 @@ -241,6 +261,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-predator (hud) () :heap-base #xb30 @@ -249,6 +270,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-heatmeter (hud) () :heap-base #xb30 @@ -257,6 +279,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-progress (hud) () :heap-base #xb30 @@ -265,6 +288,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-rocketsensor (hud) () :heap-base #xb30 @@ -273,6 +297,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-ruffians (hud) () :heap-base #xb30 @@ -281,6 +306,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-score (hud) () :heap-base #xb30 @@ -289,6 +315,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-sig (hud) () :heap-base #xb30 @@ -297,6 +324,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-skill (hud) () :heap-base #xb30 @@ -305,6 +333,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-skullgem (hud) () :heap-base #xb30 @@ -313,6 +342,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-timer (hud) () :heap-base #xb30 @@ -321,6 +351,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-turret (hud) () :heap-base #xb30 @@ -329,6 +360,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-squid (hud) () :heap-base #xb30 @@ -337,6 +369,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-gunturret (hud) () :heap-base #xb30 @@ -345,6 +378,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-gruntegg (hud) () :heap-base #xb30 @@ -353,6 +387,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-crimsonhover (hud) () :heap-base #xb30 @@ -361,6 +396,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-metalkor (hud) () :heap-base #xb30 @@ -369,6 +405,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-big-score (hud) () :heap-base #xb30 @@ -377,6 +414,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-goal (hud) () :heap-base #xb30 @@ -385,6 +423,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-miss (hud) () :heap-base #xb30 @@ -393,6 +432,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-timer (hud) () :heap-base #xb30 @@ -401,6 +441,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-lap-counter (hud) () :heap-base #xb30 @@ -409,6 +450,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-turbo-counter (hud) () :heap-base #xb30 @@ -417,6 +459,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-position (hud) () :heap-base #xb30 @@ -425,6 +468,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-map (hud) () :heap-base #xb30 @@ -433,6 +477,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-samos-old (hud) () :heap-base #xb30 @@ -441,6 +486,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-samos-young (hud) () :heap-base #xb30 @@ -449,6 +495,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-lurker-button (hud) () :heap-base #xb30 @@ -457,6 +504,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-widow (hud) () :heap-base #xb30 @@ -465,6 +513,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-race-final-stats (hud) () :heap-base #xb30 @@ -473,6 +522,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-mech-air-tank (hud) () :heap-base #xb30 @@ -481,6 +531,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-homing-beacon (hud) () :heap-base #xb30 @@ -489,6 +540,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-dark-eco-pickup (hud) () :heap-base #xb30 @@ -497,6 +549,7 @@ :flag-assert #x1b0b300ba4 ) + (deftype hud-green-eco-pickup (hud) () :heap-base #xb30 diff --git a/goal_src/jak2/engine/ui/progress/progress-draw.gc b/goal_src/jak2/engine/ui/progress/progress-draw.gc index 14275bac33..6046d763eb 100644 --- a/goal_src/jak2/engine/ui/progress/progress-draw.gc +++ b/goal_src/jak2/engine/ui/progress/progress-draw.gc @@ -118,7 +118,7 @@ (set! (-> a0-5 flags) (font-flags kerning middle large)) ) (if (< (mod (-> self clock frame-counter) 300) 210) - (print-game-text (lookup-text! *common-text* (game-text-id progress-busy-loading-TODO) #f) arg0 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-loading-data) #f) arg0 #f 44 320) ) ) @@ -156,7 +156,7 @@ ) (set! sv-16 "~C~S") (set! sv-32 163) - (let ((a3-0 (lookup-text! *common-text* (game-text-id progress-1kj2n3kj1n23) #f))) + (let ((a3-0 (lookup-text! *common-text* (game-text-id progress-next) #f))) (s1-0 s0-0 sv-16 sv-32 a3-0) ) ) @@ -170,7 +170,7 @@ ) (+! (-> arg1 origin x) (the float s3-0)) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) "~S~C" (lookup-text! *common-text* (game-text-id progress-1kj2n3kj1n23) #f) 161) + (format (clear *temp-string*) "~S~C" (lookup-text! *common-text* (game-text-id progress-next) #f) 161) (s5-1 *temp-string* arg1 #f 44 320) ) ) @@ -268,31 +268,31 @@ (none) ) -(defun begin-scissor ((arg0 vector) (arg1 progress)) +(defun begin-scissor ((arg0 hud-box) (arg1 progress)) (cond ((or (= (-> arg1 current) 'bigmap) (= (-> arg1 next) 'bigmap)) - (set! (-> arg0 x) 0.0) - (set! (-> arg0 y) 0.0) - (set! (-> arg0 z) 512.0) - (set! (-> arg0 w) 416.0) + (set! (-> arg0 min x) 0.0) + (set! (-> arg0 min y) 0.0) + (set! (-> arg0 max x) 512.0) + (set! (-> arg0 max y) 416.0) ) ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 38.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 362.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 38.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 362.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 70.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 329.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 70.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 329.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-23 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-23) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -312,11 +312,11 @@ (none) ) -(defun end-scissor () +(defun end-scissor ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -336,25 +336,25 @@ (none) ) -(defun begin-scissor-secret ((arg0 vector)) +(defun begin-scissor-secret ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 190.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 315.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 190.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 315.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 173.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 304.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 173.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 304.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -374,11 +374,11 @@ (none) ) -(defun end-scissor-secret () +(defun end-scissor-secret ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -398,25 +398,25 @@ (none) ) -(defun begin-scissor-missions ((arg0 vector) (arg1 float)) +(defun begin-scissor-missions ((arg0 hud-box) (arg1 float)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 130.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 305.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 130.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 305.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 130.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 305.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 130.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 305.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -436,11 +436,11 @@ (none) ) -(defun end-scissor-missions ((arg0 vector)) +(defun end-scissor-missions ((arg0 hud-box)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -460,25 +460,25 @@ (none) ) -(defun begin-scissor-scene ((arg0 vector)) +(defun begin-scissor-scene ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 118.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 294.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 118.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 294.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 116.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 295.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 116.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 295.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -498,11 +498,11 @@ (none) ) -(defun end-scissor-scene () +(defun end-scissor-scene ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -522,25 +522,25 @@ (none) ) -(defun begin-scissor-level ((arg0 vector)) +(defun begin-scissor-level ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 118.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 294.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 118.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 294.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 116.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 295.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 116.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 295.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -560,11 +560,11 @@ (none) ) -(defun end-scissor-level () +(defun end-scissor-level ((arg0 hud-box)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -603,30 +603,31 @@ (none) ) +;; WARN: Return type mismatch symbol vs int. ;; ERROR: Function may read a register that is not set: a0 (defun unlocked-secret-menu? () (local-vars (a0-0 none)) - (or (logtest? (the-as int a0-0) 32) - (logtest? (the-as int a0-0) 64) - (logtest? (the-as int a0-0) 128) - (logtest? (the-as int a0-0) 256) - (logtest? (the-as int a0-0) 512) - (logtest? (the-as int a0-0) 1024) - (logtest? (the-as int a0-0) 2048) - (logtest? (the-as int a0-0) #x8000) - ) + (the-as int (or (logtest? (the-as int a0-0) 32) + (logtest? (the-as int a0-0) 64) + (logtest? (the-as int a0-0) 128) + (logtest? (the-as int a0-0) 256) + (logtest? (the-as int a0-0) 512) + (logtest? (the-as int a0-0) 1024) + (logtest? (the-as int a0-0) 2048) + (logtest? (the-as int a0-0) #x8000) + ) + ) ) -;; WARN: Return type mismatch object vs symbol. (defun memcard-unlocked-secrets? ((arg0 symbol)) - "TODO - cleanup bitfields / arg passing" + "TODO - returns a bitfield" (let ((v1-0 *progress-save-info*) - (s5-0 (the-as object 0)) + (s5-0 0) ) (let ((a0-1 4)) (when (and v1-0 (= (-> v1-0 formatted) 1) (= (-> v1-0 inited) 1)) (dotimes (a1-5 a0-1) - (set! s5-0 (logior (the-as int s5-0) (the-as int (-> v1-0 file a1-5 secrets)))) + (set! s5-0 (logior s5-0 (-> v1-0 file a1-5 secrets))) ) ) ) @@ -636,23 +637,23 @@ ) (when *cheat-mode* (set! (-> *progress-state* secrets-unlocked) #t) - (set! s5-0 (logior (the-as int s5-0) #x8fe0)) + (set! s5-0 (logior s5-0 #x8fe0)) + ) + (cond + (arg0 + (empty) + s5-0 + ) + (else + (unlocked-secret-menu?) + ) ) - (the-as symbol (cond - (arg0 - (empty) - s5-0 - ) - (else - (unlocked-secret-menu?) - ) - ) - ) ) ) (defun num-unlocked-secret? ((arg0 int)) - "@returns The number of secrets currently unlocked" + "TODO - bitfield + @returns The number of secrets currently unlocked" (let ((v0-0 0)) (if (logtest? arg0 32) (+! v0-0 1) @@ -682,19 +683,20 @@ ) ) -(defun print-menu-text ((arg0 game-text-id) (arg1 float) (arg2 font-context) (arg3 progress)) +(defun print-menu-text ((arg0 string) (arg1 float) (arg2 font-context) (arg3 progress)) (let ((f0-1 (- 1.0 (-> arg3 menu-transition)))) (let ((v1-1 arg2)) (set! (-> v1-1 scale) 0.5) ) (set! (-> arg2 alpha) f0-1) ) - (print-game-text (the-as string arg0) arg2 #f 44 320) + (print-game-text arg0 arg2 #f 44 320) 0 (none) ) -(defun draw-yes-no ((arg0 progress) (arg1 float)) +;; WARN: Return type mismatch int vs pointer. +(defun draw-yes-no ((arg0 progress) (arg1 font-context)) (local-vars (a0-5 string)) (- 1.0 (-> arg0 menu-transition)) (cond @@ -702,8 +704,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-5 *temp-string*) ) @@ -711,18 +713,18 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-5 *temp-string*) ) ) - (print-game-text a0-5 (the-as font-context arg1) #f 44 320) - 0 - (none) + (print-game-text a0-5 arg1 #f 44 320) + (the-as pointer 0) ) -(defun draw-continue-retry ((arg0 progress) (arg1 float)) +;; WARN: Return type mismatch int vs pointer. +(defun draw-continue-retry ((arg0 progress) (arg1 font-context)) (local-vars (a0-5 string)) (- 1.0 (-> arg0 menu-transition)) (cond @@ -730,8 +732,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-1-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) + (lookup-text! *common-text* (game-text-id progress-unknown-retry?) #f) ) (set! a0-5 *temp-string*) ) @@ -739,15 +741,14 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-1-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) + (lookup-text! *common-text* (game-text-id progress-unknown-retry?) #f) ) (set! a0-5 *temp-string*) ) ) - (print-game-text a0-5 (the-as font-context arg1) #f 44 320) - 0 - (none) + (print-game-text a0-5 arg1 #f 44 320) + (the-as pointer 0) ) (defmethod menu-option-method-10 menu-option ((obj menu-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) @@ -776,8 +777,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-8 *temp-string*) ) @@ -785,8 +786,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-8 *temp-string*) ) @@ -800,8 +801,8 @@ ) (set! sv-16 (lookup-text! *common-text* (-> obj name) #f)) (let ((a3-4 (if (-> s3-0 0) - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) ) ) @@ -813,7 +814,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-8) (-> obj scale) arg1 arg0) + (print-menu-text a0-8 (-> obj scale) arg1 arg0) 0 (none) ) @@ -834,8 +835,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-8 *temp-string*) ) @@ -843,8 +844,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-8 *temp-string*) ) @@ -858,7 +859,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-8) (-> obj scale) arg1 arg0) + (print-menu-text a0-8 (-> obj scale) arg1 arg0) 0 (none) ) @@ -900,8 +901,8 @@ (format (clear *temp-string*) "~33L~S ~35L~S~1L" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -909,8 +910,8 @@ (format (clear *temp-string*) "~35L~S~33L ~S" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -942,8 +943,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -951,8 +952,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -964,7 +965,7 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id s2-0) (-> obj scale) arg1 arg0) + (print-menu-text s2-0 (-> obj scale) arg1 arg0) ) ) (set! (-> arg1 origin y) f30-0) @@ -995,10 +996,16 @@ ) (set! (-> arg1 origin y) (+ 8.0 (-> arg1 origin y))) (cond - ((= (-> obj name) (game-text-id progress-unlocked-1231h2bn)) + ((= (-> obj name) (game-text-id progress-main-secrets-scrapbook)) (cond - ((logtest? (the-as int s5-0) 512) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-1231h2bn) #f) arg1 #f 44 320) + ((logtest? s5-0 512) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-scrapbook) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-2 print-game-text)) @@ -1008,10 +1015,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-akjisndaj)) + ((= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook)) (cond - ((logtest? (the-as int s5-0) 1024) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-akjisndaj) #f) arg1 #f 44 320) + ((logtest? s5-0 1024) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-mega-scrapbook) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-4 print-game-text)) @@ -1021,10 +1034,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-iwudnq)) + ((= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3)) (cond - ((logtest? (the-as int s5-0) 2048) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-iwudnq) #f) arg1 #f 44 320) + ((logtest? s5-0 2048) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-scrapbook-3) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-6 print-game-text)) @@ -1034,10 +1053,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-k1231kkj)) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) (cond - ((logtest? (the-as int s5-0) 32) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-k1231kkj) #f) arg1 #f 44 320) + ((logtest? s5-0 32) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-1) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-8 print-game-text)) @@ -1047,10 +1072,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-jn12j)) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) (cond - ((logtest? (the-as int s5-0) 64) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-jn12j) #f) arg1 #f 44 320) + ((logtest? s5-0 64) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-2) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-10 print-game-text)) @@ -1060,10 +1091,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-m12312)) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) (cond - ((logtest? (the-as int s5-0) 128) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-m12312) #f) arg1 #f 44 320) + ((logtest? s5-0 128) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-3) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-12 print-game-text)) @@ -1073,10 +1110,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-oj1n23jn1)) + ((= (-> obj name) (game-text-id progress-main-secrets-hero-mode)) (cond - ((logtest? (the-as int s5-0) #x8000) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-oj1n23jn1) #f) arg1 #f 44 320) + ((logtest? s5-0 #x8000) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-hero-mode) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-14 print-game-text)) @@ -1086,10 +1129,16 @@ ) ) ) - ((= (-> obj name) (game-text-id progress-unlocked-n51i51n)) + ((= (-> obj name) (game-text-id progress-main-secrets-levelselect)) (cond - ((logtest? (the-as int s5-0) 256) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-n51i51n) #f) arg1 #f 44 320) + ((logtest? s5-0 256) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-levelselect) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-16 print-game-text)) @@ -1148,7 +1197,7 @@ ) ) (cond - ((= (-> obj name) (game-text-id progress-kj1n23123)) + ((= (-> obj name) (game-text-id progress-root-show-map)) (when (= (-> *setting-control* user-default language) (language-enum french)) (let ((v1-18 arg1)) (set! (-> v1-18 scale) 0.7) @@ -1167,64 +1216,94 @@ (let ((v1-23 (-> *bigmap* bigmap-index))) (cond ((zero? v1-23) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-k1j2n3n1) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-pumping-station) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 1) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-m123j1m) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-landing-pad) #f) arg1 #f 44 320) ) ((= v1-23 2) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63jk46n3) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-weapons-factory) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 3) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-36j46jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dig) #f) arg1 #f 44 320) ) ((= v1-23 4) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-36j46jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dig) #f) arg1 #f 44 320) ) ((= v1-23 5) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52jn35j2) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-drill-platform) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 6) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52kj3n52) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-haven-forest) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 7) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63j46j3n4) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-fortress) #f) arg1 #f 44 320) ) ((= v1-23 8) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63j46n3j) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-mountain-temple) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 9) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-364jn6n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-nest) #f) arg1 #f 44 320) ) ((= v1-23 11) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-634jn6) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-palace-roof) #f) arg1 #f 44 320) ) ((= v1-23 12) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52o352nm) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-palace) #f) arg1 #f 44 320) ) ((= v1-23 13) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-j324nm3) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dead-town) #f) arg1 #f 44 320) ) ((= v1-23 14) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 15) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 16) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 17) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63jn463jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-strip-mine) #f) arg1 #f 44 320) ) ((= v1-23 18) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-3643m6m) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-mars-tomb) #f) arg1 #f 44 320) ) ((= v1-23 19) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63mn46nm) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-underport) #f) arg1 #f 44 320) ) ((= v1-23 20) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-23jn42) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-haven-city) #f) arg1 #f 44 320) ) ) ) @@ -1238,12 +1317,11 @@ (none) ) -;; WARN: Return type mismatch pointer vs none. -(defun draw-savegame-box ((arg0 menu-memcard-slot-option) (arg1 float) (arg2 float) (arg3 float) (arg4 float)) - (set! (-> arg0 box 0) (the-as menu-option arg1)) - (set! (-> arg0 unknown-options 1) (the-as menu-option arg2)) - (set! (-> arg0 unknown-options 0) (the-as menu-option arg3)) - (set! (-> arg0 unknown-options 2) (the-as menu-option arg4)) +(defun draw-savegame-box ((arg0 menu-option) (arg1 float) (arg2 float) (arg3 float) (arg4 float)) + (set! (-> arg0 box 0 min x) arg1) + (set! (-> arg0 box 0 max x) arg2) + (set! (-> arg0 box 0 min y) arg3) + (set! (-> arg0 box 0 max y) arg4) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) @@ -1264,9 +1342,9 @@ ) ) ) - (none) ) +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-01 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303600))) @@ -1326,10 +1404,11 @@ (set! v0-0 (the-as uint #xc9306000)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-02 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303700))) @@ -1389,10 +1468,11 @@ (set! v0-0 (the-as uint #xc9306100)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-03 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303800))) @@ -1452,10 +1532,11 @@ (set! v0-0 (the-as uint #xc9306200)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-04 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303900))) @@ -1515,12 +1596,11 @@ (set! v0-0 (the-as uint #xc9306300)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) -;; WARN: Return type mismatch pointer vs none. -(defun draw-decoration ((arg0 menu-quit-qr-option) (arg1 font-context) (arg2 float) (arg3 int) (arg4 symbol) (arg5 float)) +(defun draw-decoration ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 int) (arg4 symbol) (arg5 float)) (local-vars (sv-16 symbol) (sv-32 float) @@ -1603,23 +1683,12 @@ ) (sv-80 a0-4 a1-2 a2-2 a3-1 t0-1) ) - (let ((v1-27 (&-> arg0 unknown-options 3))) - (set! (-> v1-27 0) (the-as menu-option 64)) - (set! (-> v1-27 1) (the-as menu-option 128)) - (set! (-> v1-27 2) (the-as menu-option 128)) - (set! (-> v1-27 3) (the-as menu-option (the int (* 128.0 arg2)))) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s3-0)) - (the float s5-0) - (the float s5-0) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 arg2))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s3-0)) (the float s5-0) (the float s5-0)) (when sv-16 (+! (-> arg1 origin y) (the float sv-64)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s3-0)) (the float (+ s5-0 s2-0)) @@ -1654,10 +1723,8 @@ ) ) ) - (none) ) -;; WARN: Return type mismatch pointer vs none. (defun draw-missions-decoration ((arg0 menu-missions-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) (local-vars (sv-16 int) (sv-32 (function string font-context symbol int int float)) (sv-48 font-context)) (set! sv-48 arg1) @@ -1702,21 +1769,10 @@ ) (sv-32 a0-4 sv-48 a2-2 a3-1 t0-0) ) - (let ((v1-17 (&-> arg0 unknown-options 3))) - (set! (-> v1-17 0) (the-as menu-option 64)) - (set! (-> v1-17 1) (the-as menu-option 128)) - (set! (-> v1-17 2) (the-as menu-option 128)) - (set! (-> v1-17 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -1750,10 +1806,8 @@ ) ) ) - (none) ) -;; WARN: Return type mismatch pointer vs none. (defun draw-sound-options-decoration ((arg0 menu-slider-option) (arg1 font-context) (arg2 float) (arg3 symbol) (arg4 game-text-id)) (local-vars (sv-16 font-context) @@ -1813,22 +1867,11 @@ (sv-48 a0-5 a1-2 a2-2 a3-1 t0-1) ) (set! (-> sv-16 origin x) (the float (+ gp-0 65))) - (let ((v1-22 (&-> arg0 unknown-options 3))) - (set! (-> v1-22 0) (the-as menu-option 64)) - (set! (-> v1-22 1) (the-as menu-option 128)) - (set! (-> v1-22 2) (the-as menu-option 128)) - (set! (-> v1-22 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (if s0-0 (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -1864,10 +1907,9 @@ ) ) ) - (none) ) -(defun draw-decoration-secrets ((arg0 menu-secret-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) +(defun draw-decoration-secrets ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) (local-vars (sv-16 int) (sv-32 (function string font-context symbol int int float)) (sv-48 font-context)) (set! sv-48 arg1) (let ((s2-0 arg2) @@ -1913,21 +1955,10 @@ ) (sv-32 a0-4 sv-48 a2-2 a3-1 t0-0) ) - (let ((v1-19 (&-> arg0 unknown-options 3))) - (set! (-> v1-19 0) (the-as menu-option 64)) - (set! (-> v1-19 1) (the-as menu-option 128)) - (set! (-> v1-19 2) (the-as menu-option 128)) - (set! (-> v1-19 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -1963,8 +1994,7 @@ ) ) -;; WARN: Return type mismatch pointer vs none. -(defun draw-decoration-load-save ((arg0 menu-memcard-slot-option) (arg1 font-context) (arg2 float) (arg3 int)) +(defun draw-decoration-load-save ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 int)) (local-vars (sv-16 int) (sv-32 int) @@ -2035,12 +2065,7 @@ ) (sv-48 a0-9 sv-80 a2-2 a3-1 t0-0) ) - (let ((v1-32 (&-> arg0 unknown-options 3))) - (set! (-> v1-32 0) (the-as menu-option 64)) - (set! (-> v1-32 1) (the-as menu-option 128)) - (set! (-> v1-32 2) (the-as menu-option 128)) - (set! (-> v1-32 3) (the-as menu-option (the int (* 128.0 s4-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s4-0))) (draw-savegame-box arg0 (the float s0-0) (the float (+ s0-0 sv-32)) (the float s5-0) (the float s5-0)) (draw-savegame-box arg0 @@ -2078,7 +2103,6 @@ ) ) ) - (none) ) ;; WARN: Stack slot offset 16 signed mismatch @@ -2173,7 +2197,7 @@ ;; WARN: Stack slot offset 16 signed mismatch (defmethod menu-option-method-10 menu-memcard-slot-option ((obj menu-memcard-slot-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) (local-vars - (v0-74 none) + (v0-74 pointer) (sv-16 float) (sv-20 int) (sv-24 float) @@ -2257,12 +2281,7 @@ ) ) ) - (let ((v1-41 (&-> obj unknown-options 3))) - (set! (-> v1-41 0) (the-as menu-option 64)) - (set! (-> v1-41 1) (the-as menu-option 128)) - (set! (-> v1-41 2) (the-as menu-option 128)) - (set! (-> v1-41 3) (the-as menu-option (the int (* 128.0 sv-16)))) - ) + (set-vector! (-> obj box 0 color) 64 128 128 (the int (* 128.0 sv-16))) (when (= arg2 sv-20) (cond ((!= *save-options-title* (-> arg0 current-options)) @@ -2439,7 +2458,7 @@ (s0-0 (clear *temp-string*)) ) (set! sv-96 "~S ~D") - (let ((a2-28 (lookup-text! *common-text* (game-text-id progress-i1un23i12b341) #f)) + (let ((a2-28 (lookup-text! *common-text* (game-text-id progress-unknown-game) #f)) (a3-33 (+ arg2 1)) ) (s1-2 s0-0 sv-96 a2-28 a3-33) @@ -2460,36 +2479,28 @@ (set-vector! (-> obj sprites 1 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 1 pos z) #xffffff) (set! (-> obj sprites 1 pos w) 1) - (set! (-> obj sprites 1 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-01 (the-as int s2-8)))) - ) + (set! (-> obj sprites 1 tex) (lookup-texture-by-id (get-level-icon-id-01 (the-as int s2-8)))) (set! (-> obj sprites 1 scale-x) 1.0) (set! (-> obj sprites 1 scale-y) 1.0) (set-hud-piece-position! (the-as basic (&-> obj something-hud-related)) sv-40 sv-48) (set-vector! (-> obj sprites 2 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 2 pos z) #xffffff) (set! (-> obj sprites 2 pos w) 1) - (set! (-> obj sprites 2 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-02 (the-as int s2-8)))) - ) + (set! (-> obj sprites 2 tex) (lookup-texture-by-id (get-level-icon-id-02 (the-as int s2-8)))) (set! (-> obj sprites 2 scale-x) 1.0) (set! (-> obj sprites 2 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 2)) (+ sv-40 sv-56) sv-48) (set-vector! (-> obj sprites 3 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 3 pos z) #xffffff) (set! (-> obj sprites 3 pos w) 1) - (set! (-> obj sprites 3 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-03 (the-as int s2-8)))) - ) + (set! (-> obj sprites 3 tex) (lookup-texture-by-id (get-level-icon-id-03 (the-as int s2-8)))) (set! (-> obj sprites 3 scale-x) 1.0) (set! (-> obj sprites 3 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 3)) sv-40 (+ sv-48 64)) (set-vector! (-> obj sprites 4 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 4 pos z) #xffffff) (set! (-> obj sprites 4 pos w) 1) - (set! (-> obj sprites 4 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-04 (the-as int s2-8)))) - ) + (set! (-> obj sprites 4 tex) (lookup-texture-by-id (get-level-icon-id-04 (the-as int s2-8)))) (set! (-> obj sprites 4 scale-x) 1.0) (set! (-> obj sprites 4 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 4)) (+ sv-40 sv-56) (+ sv-48 64)) @@ -2698,13 +2709,7 @@ ) ) ) - (print-game-text - (lookup-text! *common-text* (game-text-id progress-1ikjhb231hjik2b31ihb231) #f) - arg1 - #f - 44 - 320 - ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-slot-empty) #f) arg1 #f 44 320) ) ) (set! (-> arg1 origin x) sv-24) @@ -2774,7 +2779,7 @@ (set! (-> a0-16 color) (font-color #7efbfb)) ) (let ((s5-2 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1jib12o3nj12j3) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-dont-remove) #f) 1) (s5-2 *temp-string* arg1 #f 44 320) ) 0 @@ -2823,7 +2828,7 @@ (let ((s4-1 print-game-text)) (format (clear *temp-string*) - (lookup-text! *common-text* (game-text-id progress-1kj2b31k2b3) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-space-requirement) #f) (if *progress-save-info* (-> *progress-save-info* mem-required) 0 @@ -2839,13 +2844,19 @@ ((and (!= (-> *progress-state* starting-state) 'insufficient-space) (!= (-> *progress-state* starting-state) 'no-memory-card) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2bkoij1231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-insert-card-with-space-to-save) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (let ((s5-2 arg1)) (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 30.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) ) (else (let ((s4-2 arg1)) @@ -2853,7 +2864,7 @@ ) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (draw-highlight (the int (+ 30.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-continue-retry arg0 (the-as float arg1)) + (draw-continue-retry arg0 arg1) ) ) ) @@ -2895,7 +2906,7 @@ (set! (-> s5-1 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -2920,7 +2931,11 @@ (set! (-> v1-7 height) (the float (the-as float #x5f))) ) (let ((s5-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-j1nb23kj1hbn2) #f) 1) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id progress-memcard-insert-card-with-jak2) #f) + 1 + ) (s5-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) @@ -2931,7 +2946,7 @@ (set! (-> s5-1 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 17.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj12k3j1n23n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-go-back?) #f) arg1 #f 44 320) 0 (none) ) @@ -2977,7 +2992,11 @@ (set! (-> v1-16 height) (the float (the-as float #x69))) ) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-k1jn23k1h23b) #f) 1) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id progress-memcard-check-and-try-again) #f) + 1 + ) (s5-1 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) @@ -2988,7 +3007,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 9.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3012,25 +3031,37 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x19))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2bn31kjhnb2) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-error-while-saving) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x3c))) ) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-jk1n23kj1n2) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-check) #f) 1) (s5-1 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn231j2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-disabled) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (let ((v1-16 arg1)) (set! (-> v1-16 height) (the float (the-as float #x5f))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2n31kjn231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-autosave-reenabling-info) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 90.0 (-> arg1 origin y))) (let ((v1-19 arg1)) (set! (-> v1-19 height) (the float (the-as float #x19))) @@ -3039,7 +3070,7 @@ (set! (-> s5-4 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (-> arg1 origin y)) 22 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3064,16 +3095,22 @@ (set! (-> v1-7 height) (the float (the-as float #x46))) ) (let ((s5-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-k1jn23kj1n23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-was-removed) #f) 1) (s5-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 65.0 (-> arg1 origin y))) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn231j2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-disabled) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 65.0 (-> arg1 origin y))) (let ((v1-12 arg1)) (set! (-> v1-12 height) (the float (the-as float #x5a))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2n31kjn231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-autosave-reenabling-info) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) (let ((v1-15 arg1)) (set! (-> v1-15 height) (the float (the-as float #x23))) @@ -3082,7 +3119,7 @@ (set! (-> s5-3 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 5.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3106,12 +3143,12 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x23))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-l1jkn231jkn23) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-removed-notice) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj1n231kjn2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-removed-prompt) #f) arg1 #f 44 320) (when (is-cd-in?) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-14 arg1)) @@ -3121,7 +3158,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) ) 0 (none) @@ -3146,12 +3183,18 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x23))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1lkjn231jnk2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-read-error) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 55.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-n12n211n1n) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-disc-read-error-prompt) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 105.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x32))) @@ -3160,7 +3203,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3215,12 +3258,12 @@ (let ((v1-28 arg1)) (set! (-> v1-28 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-jn12n3j1n2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-explanation) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) (let ((v1-31 arg1)) (set! (-> v1-31 height) (the float (the-as float #x5f))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-n12jin313) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-dont-remove) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 90.0 (-> arg1 origin y))) (let ((v1-34 arg1)) (set! (-> v1-34 height) (the float (the-as float #x32))) @@ -3229,7 +3272,7 @@ (set! (-> s5-3 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3254,22 +3297,28 @@ (set! (-> v1-7 height) (the float (the-as float #x55))) ) (let ((s4-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1kjn231kjn23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-unformatted) #f) 1) (s4-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1nmn1221n21n12n) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-formatting-required-notice) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x19))) ) (draw-highlight (the int (-> arg1 origin y)) 44 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1n23kjn12nk3j12) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-format-prompt) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3293,15 +3342,27 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1m23n1n23n21) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-overwrite-warning) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 105.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1jk2n31jkn23n1j) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-overwrite-confirm) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (draw-highlight (the int (+ 8.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3326,17 +3387,23 @@ (set! (-> v1-7 height) (the float (the-as float #x5a))) ) (let ((s4-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1kj2n31jkn23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-no-jak2-found) #f) 1) (s4-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x3c))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn2123919) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-create-jak2-file?) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (draw-highlight (the int (+ 18.0 (-> arg1 origin y))) 22 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3360,31 +3427,43 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-j1n23j1kn23kjn12) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) - (let ((v1-10 arg1)) - (set! (-> v1-10 height) (the float (the-as float #x5f))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj6n324i63n) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) - (let ((v1-13 arg1)) - (set! (-> v1-13 height) (the float (the-as float #x37))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-3iou4n3i45n3) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) - (let ((v1-16 arg1)) - (set! (-> v1-16 height) (the float (the-as float #x1e))) - ) (print-game-text - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-graphics-60hz-change-notice) #f) arg1 #f 44 320 ) + (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) + (let ((v1-10 arg1)) + (set! (-> v1-10 height) (the float (the-as float #x5f))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-1) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) + (let ((v1-13 arg1)) + (set! (-> v1-13 height) (the float (the-as float #x37))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-2) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) + (let ((v1-16 arg1)) + (set! (-> v1-16 height) (the float (the-as float #x1e))) + ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3408,15 +3487,21 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-39u4n359n45) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-60hz-change-complete) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-on2394234n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-graphics-mode-revert?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3440,31 +3525,43 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2j021j394j) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) - (let ((v1-10 arg1)) - (set! (-> v1-10 height) (the float (the-as float #x5a))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj6n324i63n) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) - (let ((v1-13 arg1)) - (set! (-> v1-13 height) (the float (the-as float #x4b))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-3iou4n3i45n3) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) - (let ((v1-16 arg1)) - (set! (-> v1-16 height) (the float (the-as float #x1e))) - ) (print-game-text - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-change-notice) #f) arg1 #f 44 320 ) + (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) + (let ((v1-10 arg1)) + (set! (-> v1-10 height) (the float (the-as float #x5a))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-1) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) + (let ((v1-13 arg1)) + (set! (-> v1-13 height) (the float (the-as float #x4b))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-2) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) + (let ((v1-16 arg1)) + (set! (-> v1-16 height) (the float (the-as float #x1e))) + ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3488,15 +3585,21 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x50))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-iun34593n45) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-change-complete) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 100.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x4b))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-on2394234n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-graphics-mode-revert?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (draw-highlight (the int (+ 20.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3520,10 +3623,10 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x46))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2iu3bn4289u34n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-quit-game-confirm) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (draw-highlight (the int (+ 17.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3583,11 +3686,11 @@ (if (or (= (-> *setting-control* user-default language) (language-enum french)) (= (-> *setting-control* user-default language) (language-enum spanish)) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 a3-1 #t 0.7) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 a3-1 #t 0.95) + (draw-decoration obj arg1 f30-0 a3-1 #t 0.7) + (draw-decoration obj arg1 f30-0 a3-1 #t 0.95) ) ) - (begin-scissor-level (the-as vector sv-128)) + (begin-scissor-level sv-128) (set! (-> arg1 origin x) 80.0) (let ((v1-20 arg1)) (set! (-> v1-20 scale) 0.5) @@ -3687,8 +3790,7 @@ ) (let ((t9-10 end-scissor-level)) #x3f800000 - sv-128 - (t9-10) + (t9-10 sv-128) ) (draw-scene-up-down arg1) 0 @@ -3719,156 +3821,154 @@ (* (-> arg0 sliding-height) (the float v1-2)) ) (let ((s0-0 120) - (s1-0 (new 'stack-no-clear 'vector)) - (f28-0 0.0) + (s1-0 (new 'stack-no-clear 'hud-box)) ) - 0.0 - (if (< f30-0 0.0) - (set! f30-0 0.0) + (let ((f28-0 0.0)) + 0.0 + (if (< f30-0 0.0) + (set! f30-0 0.0) + ) + (case (-> *progress-state* scene-player-act) + ((1) + (set! s2-0 *hud-select-scene-act1*) + ) + ((2) + (set! s2-0 *hud-select-scene-act2*) + ) + ((3) + (set! s2-0 *hud-select-scene-act3*) + ) ) - (case (-> *progress-state* scene-player-act) - ((1) - (set! s2-0 *hud-select-scene-act1*) - ) - ((2) - (set! s2-0 *hud-select-scene-act2*) - ) - ((3) - (set! s2-0 *hud-select-scene-act3*) - ) - ) - (set! (-> arg1 alpha) f30-0) - (let ((a1-6 arg1)) - (set! (-> a1-6 flags) (font-flags kerning middle large)) - ) - (set! (-> arg1 origin x) 90.0) - (set! (-> arg1 origin y) 100.0) - (let ((v1-14 arg1)) - (set! (-> v1-14 width) (the float (the-as float #x14f))) - ) - (let ((v1-15 arg1)) - (set! (-> v1-15 height) (the float (the-as float #xd2))) - ) - (let ((a1-9 arg1)) - (set! (-> a1-9 color) (font-color #7efbfb)) - ) - (if (or (= (-> *setting-control* user-default language) (language-enum french)) - (= (-> *setting-control* user-default language) (language-enum spanish)) + (set! (-> arg1 alpha) f30-0) + (let ((a1-6 arg1)) + (set! (-> a1-6 flags) (font-flags kerning middle large)) + ) + (set! (-> arg1 origin x) 90.0) + (set! (-> arg1 origin y) 100.0) + (let ((v1-14 arg1)) + (set! (-> v1-14 width) (the float (the-as float #x14f))) + ) + (let ((v1-15 arg1)) + (set! (-> v1-15 height) (the float (the-as float #xd2))) + ) + (let ((a1-9 arg1)) + (set! (-> a1-9 color) (font-color #7efbfb)) + ) + (if (or (= (-> *setting-control* user-default language) (language-enum french)) + (= (-> *setting-control* user-default language) (language-enum spanish)) + ) + (draw-decoration obj arg1 f30-0 364 #t 0.7) + (draw-decoration obj arg1 f30-0 364 #t 0.95) + ) + (begin-scissor-scene s1-0) + (let ((v1-23 arg1)) + (set! (-> v1-23 scale) 0.5) + ) + (set! sv-48 0) + (while (< sv-48 s4-0) + (set! sv-64 print-game-text) + (let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options sv-48 box 0 min x)) #f)) + (a1-16 arg1) + (a2-4 #t) + (a3-3 44) + (t0-3 320) + ) + (+! f28-0 (sv-64 a0-4 a1-16 a2-4 a3-3 t0-3)) + ) + (set! sv-48 (+ sv-48 1)) + ) + (let ((s0-1 (- s0-0 (the int f28-0))) + (f28-1 + (cond + ((< (-> arg0 sliding-height) 0.0) + (set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s4-0 box 0 min x)) #f)) + 0.0 + (set! sv-80 print-game-text) + (set! sv-96 format) + (let ((a0-7 (clear *temp-string*)) + (a1-18 "~S") + ) + (sv-96 a0-7 a1-18 sv-112) + ) + (let* ((a0-8 *temp-string*) + (a1-19 arg1) + (a2-7 #t) + (a3-4 44) + (t0-4 320) + (f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4)) + ) + (* (-> arg0 sliding-height) f0-16) + ) + ) + (else + (set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options (+ s4-0 -1) box 0 min x)) #f)) + 0.0 + (set! sv-128 print-game-text) + (set! sv-144 format) + (let ((a0-11 (clear *temp-string*)) + (a1-21 "~S") + ) + (sv-144 a0-11 a1-21 sv-160) + ) + (let* ((a0-12 *temp-string*) + (a1-22 arg1) + (a2-10 #t) + (a3-5 44) + (t0-5 320) + (f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5)) + ) + (* (-> arg0 sliding-height) f0-18) + ) + ) + ) + ) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 364 #t 0.7) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 364 #t 0.95) - ) - (begin-scissor-scene s1-0) - (let ((v1-23 arg1)) - (set! (-> v1-23 scale) 0.5) - ) - (set! sv-48 0) - (while (< sv-48 s4-0) - (set! sv-64 print-game-text) - (let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options sv-48 box 0)) #f)) - (a1-16 arg1) - (a2-4 #t) - (a3-3 44) - (t0-3 320) - ) - (+! f28-0 (sv-64 a0-4 a1-16 a2-4 a3-3 t0-3)) - ) - (set! sv-48 (+ sv-48 1)) - ) - (let ((s0-1 (- s0-0 (the int f28-0))) - (f28-1 + (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) + (while (< s3-0 (length s2-0)) + (set! sv-176 print-game-text) + (let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f)) + (a1-24 arg1) + (a2-12 #t) + (a3-6 44) + (t0-6 320) + (f26-0 (sv-176 a0-14 a1-24 a2-12 a3-6 t0-6)) + ) + (set! (-> arg1 flags) (font-flags kerning large)) (cond - ((< (-> arg0 sliding-height) 0.0) - (set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s4-0 box 0)) #f)) - 0.0 - (set! sv-80 print-game-text) - (set! sv-96 format) - (let ((a0-7 (clear *temp-string*)) - (a1-18 "~S") - ) - (sv-96 a0-7 a1-18 sv-112) - ) - (let* ((a0-8 *temp-string*) - (a1-19 arg1) - (a2-7 #t) - (a3-4 44) - (t0-4 320) - (f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4)) - ) - (* (-> arg0 sliding-height) f0-16) - ) + ((and (< s3-0 s4-0) (!= (-> arg0 sliding-height) 0.0)) + (set! sv-192 arg1) + (set! (-> sv-192 color) (the-as font-color (progress-selected 0))) + (draw-highlight (+ (the int f26-0) -2 s0-1) (the int f26-0) f30-0) + ) + ((or (and (= s3-0 s4-0) (= (fabs (-> arg0 sliding-height)) 0.0)) (zero? s3-0)) + (set! sv-208 arg1) + (set! (-> sv-208 color) (the-as font-color (progress-selected 0))) + (draw-highlight (+ s0-1 -2) (the int f26-0) f30-0) ) (else - (set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options (+ s4-0 -1) box 0)) #f)) - 0.0 - (set! sv-128 print-game-text) - (set! sv-144 format) - (let ((a0-11 (clear *temp-string*)) - (a1-21 "~S") - ) - (sv-144 a0-11 a1-21 sv-160) - ) - (let* ((a0-12 *temp-string*) - (a1-22 arg1) - (a2-10 #t) - (a3-5 44) - (t0-5 320) - (f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5)) - ) - (* (-> arg0 sliding-height) f0-18) + (let ((a0-21 arg1)) + (set! (-> a0-21 color) (font-color #7efbfb)) ) ) ) ) - ) - (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) - (while (< s3-0 (length s2-0)) - (set! sv-176 print-game-text) - (let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0)) #f)) - (a1-24 arg1) - (a2-12 #t) - (a3-6 44) - (t0-6 320) - (f26-0 (sv-176 a0-14 a1-24 a2-12 a3-6 t0-6)) - ) - (set! (-> arg1 flags) (font-flags kerning large)) - (cond - ((and (< s3-0 s4-0) (!= (-> arg0 sliding-height) 0.0)) - (set! sv-192 arg1) - (set! (-> sv-192 color) (the-as font-color (progress-selected 0))) - (draw-highlight (+ (the int f26-0) -2 s0-1) (the int f26-0) f30-0) - ) - ((or (and (= s3-0 s4-0) (= (fabs (-> arg0 sliding-height)) 0.0)) (zero? s3-0)) - (set! sv-208 arg1) - (set! (-> sv-208 color) (the-as font-color (progress-selected 0))) - (draw-highlight (+ s0-1 -2) (the int f26-0) f30-0) - ) - (else - (let ((a0-21 arg1)) - (set! (-> a0-21 color) (font-color #7efbfb)) + (set! sv-224 print-game-text) + (let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f)) + (a1-28 arg1) + (a2-16 #f) + (a3-7 44) + (t0-7 320) ) - ) + (+! s0-1 (the int (sv-224 a0-23 a1-28 a2-16 a3-7 t0-7))) ) + (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) + (+! s3-0 1) ) - (set! sv-224 print-game-text) - (let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0)) #f)) - (a1-28 arg1) - (a2-16 #f) - (a3-7 44) - (t0-7 320) - ) - (+! s0-1 (the int (sv-224 a0-23 a1-28 a2-16 a3-7 t0-7))) - ) - (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) - (+! s3-0 1) ) ) + (end-scissor-scene s1-0 1.0) ) ) - (let ((t9-22 end-scissor-scene)) - #x3f800000 - (t9-22) - ) (draw-scene-up-down arg1) 0 (none) @@ -4104,7 +4204,7 @@ (sv-264 game-task-node-info) (sv-268 game-task-node-info) (sv-272 symbol) - (sv-276 vector) + (sv-276 hud-box) (sv-280 float) (sv-284 float) ) @@ -4120,7 +4220,7 @@ (set! sv-264 (new 'stack 'game-task-node-info)) (set! sv-268 (new 'stack 'game-task-node-info)) (set! sv-272 #t) - (set! sv-276 (new 'stack-no-clear 'vector)) + (set! sv-276 (new 'stack-no-clear 'hud-box)) (set! sv-280 (-> arg1 origin y)) (set! sv-284 (-> arg1 scale)) (set! (-> *progress-state* current-task-index) (length (-> *game-info* sub-task-list))) @@ -4167,10 +4267,10 @@ (let ((v1-40 (-> obj page-index))) (cond ((zero? v1-40) - (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-1kjn2jn31kj3)) + (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-root-missions)) ) ((= v1-40 1) - (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-1kjn2jn31kj3)) + (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-root-missions)) ) ) ) @@ -4285,8 +4385,8 @@ (format (clear *temp-string*) "~S" (lookup-text! *common-text* (if (logtest? (-> s4-6 flags) (game-task-node-flag closed)) - (game-text-id progress-iko1jn231kjhn23) - (game-text-id progress-1kj2n31j23) + (game-text-id progress-missions-icon-completed) + (game-text-id progress-missions-icon-todo) ) #f ) @@ -4322,7 +4422,7 @@ (set! sv-20 (+ sv-20 1)) ) (if (zero? (-> *progress-state* total-num-tasks)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1klj2n31j2n3) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-missions-none) #f) arg1 #f 44 320) ) ) (let ((t9-39 end-scissor-missions) @@ -4336,7 +4436,7 @@ (none) ) -;; WARN: Return type mismatch object vs none. +;; WARN: Return type mismatch object vs pointer. (defun draw-secret-list ((arg0 secret-item-option) (arg1 progress) (arg2 font-context) (arg3 int) (arg4 symbol) (arg5 float)) (let ((s4-0 (and arg4 (= arg3 1)))) 380.0 @@ -4361,7 +4461,13 @@ (set! (-> v1-19 scale) 0.43) ) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1klj2n31j23) #f) arg2 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-secrets-go-to-title-screen) #f) + arg2 + #f + 44 + 320 + ) ) ((and (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) (set! (-> arg1 selected-option) #f) @@ -4407,74 +4513,77 @@ ) ) ) - (cond - ((and (not s4-0) (zero? (logand (-> *game-info* purchase-secrets) (-> arg0 flag)))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s4-2 print-game-text)) - (format (clear *temp-string*) "~D" (-> arg0 cost)) - (s4-2 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s5-2 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f)) - (s5-2 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (= (-> arg0 can-toggle) #t) (zero? (logand (-> *game-info* secrets) (-> arg0 flag)))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s5-4 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f)) - (s5-4 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (!= (-> arg0 can-toggle) #t)) - (let ((s3-8 80) - (s5-5 70) - (f30-3 (-> arg2 origin x)) + (the-as + pointer + (cond + ((and (not s4-0) (zero? (logand (-> *game-info* purchase-secrets) (-> arg0 flag)))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) ) - (set! s3-8 (cond - ((= (get-aspect-ratio) 'aspect4x3) - (empty) - s3-8 - ) - (else - s5-5 - ) - ) + (let ((s4-2 print-game-text)) + (format (clear *temp-string*) "~D" (-> arg0 cost)) + (s4-2 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) + ) + (let ((s5-2 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on) #f)) + (s5-2 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (= (-> arg0 can-toggle) #t) (zero? (logand (-> *game-info* secrets) (-> arg0 flag)))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) + ) + (let ((s5-4 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-off) #f)) + (s5-4 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (!= (-> arg0 can-toggle) #t)) + (let ((s3-8 80) + (s5-5 70) + (f30-3 (-> arg2 origin x)) ) - (set! (-> arg2 origin x) (+ f30-3 (the float s3-8))) + (set! s3-8 (cond + ((= (get-aspect-ratio) 'aspect4x3) + (empty) + s3-8 + ) + (else + s5-5 + ) + ) + ) + (set! (-> arg2 origin x) (+ f30-3 (the float s3-8))) + ) + (let ((a0-61 arg2)) + (set! (-> a0-61 flags) (font-flags kerning right large)) + ) + (let ((s5-6 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-secrets-unlocked) #f)) + (s5-6 *temp-string* arg2 #f 44 320) + ) + (let ((v0-15 (the-as object arg2))) + (set! (-> (the-as font-context v0-15) flags) (font-flags kerning large)) + v0-15 + ) ) - (let ((a0-61 arg2)) - (set! (-> a0-61 flags) (font-flags kerning right large)) - ) - (let ((s5-6 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-1l2jnm31lk2m3) #f)) - (s5-6 *temp-string* arg2 #f 44 320) - ) - (let ((v0-32 arg2)) - (set! (-> v0-32 flags) (font-flags kerning large)) - ) - ) + ) ) ) - (none) ) ;; WARN: Stack slot offset 36 signed mismatch @@ -4792,7 +4901,7 @@ (sv-108 float) (sv-112 int) (sv-116 int) - (sv-120 vector) + (sv-120 hud-box) (sv-128 int) ) (set! sv-16 (* 2.0 (- 0.5 (-> arg0 menu-transition)))) @@ -4816,7 +4925,7 @@ (set! sv-108 (* (-> sv-48 sliding) sv-36)) (set! sv-112 (-> obj item-index)) (set! sv-116 (-> obj prev-item-index)) - (set! sv-120 (new 'stack-no-clear 'vector)) + (set! sv-120 (new 'stack-no-clear 'hud-box)) (set! sv-128 205) (if (< sv-16 0.0) (set! sv-16 (the-as float 0.0)) @@ -4916,7 +5025,7 @@ (clear *temp-string*) "x~D ~S" sv-24 - (lookup-text! *common-text* (game-text-id progress-1k2ijn1jkn3) #f) + (lookup-text! *common-text* (game-text-id progress-secrets-orb-label) #f) ) (s4-1 *temp-string* arg1 #f 44 320) ) @@ -4997,11 +5106,7 @@ ) ) ) - (let ((t9-31 end-scissor-secret)) - sv-120 - #x3f800000 - (t9-31) - ) + (end-scissor-secret sv-120 1.0) (draw-up-down arg1) ) ) @@ -5056,7 +5161,8 @@ ) ) -(defun draw-highscore-cup ((arg0 texture-page) (arg1 object) (arg2 int) (arg3 int) (arg4 float) (arg5 float)) +(defun draw-highscore-cup ((arg0 texture-page) (arg1 int) (arg2 int) (arg3 int) (arg4 float) (arg5 float)) + "First int is an enum" (let ((a0-1 (the-as uint #xc9300300))) (case arg1 ((3) @@ -5167,12 +5273,7 @@ ) (defun eval-highscore ((arg0 print-highscore-obj)) - (-> *highscore-info-array* (get-highscore-score (-> arg0 index))) - (let ((t9-1 (method-of-type highscore-info highscore-info-method-9))) - (-> arg0 score) - (t9-1) - ) - (none) + (highscore-info-method-9 (-> *highscore-info-array* (get-highscore-score (-> arg0 index))) (-> arg0 score)) ) (defun str-print-time ((arg0 float)) @@ -5241,13 +5342,13 @@ (cond ((zero? v1-8) (let ((gp-1 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-k1jnb231kjhnb23) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-1st) #f)) (gp-1 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 112) 174 0.25 @@ -5261,13 +5362,13 @@ ) (set! (-> sv-16 origin y) (+ 23.0 (-> sv-16 origin y))) (let ((gp-3 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-loj1n23) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-2nd) #f)) (gp-3 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 111) 197 0.22 @@ -5281,13 +5382,13 @@ ) (set! (-> sv-16 origin y) (+ 20.0 (-> sv-16 origin y))) (let ((gp-5 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2k3jn4234) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-3rd) #f)) (gp-5 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 110) 217 0.2 @@ -5301,13 +5402,13 @@ ) (set! (-> sv-16 origin y) (+ 15.0 (-> sv-16 origin y))) (let ((gp-7 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2kj3n24kn) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-4th) #f)) (gp-7 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 232 0.15 @@ -5318,13 +5419,13 @@ ((= v1-8 4) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-9 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2kjn34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-5th) #f)) (gp-9 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 244 0.15 @@ -5335,13 +5436,13 @@ ((= v1-8 5) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-11 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2klj342n43) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-6th) #f)) (gp-11 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 256 0.15 @@ -5352,13 +5453,13 @@ ((= v1-8 6) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-13 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-l2jm342m34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-7th) #f)) (gp-13 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 268 0.15 @@ -5369,13 +5470,13 @@ ((= v1-8 7) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-15 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2m342kmj34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-8th) #f)) (gp-15 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 280 0.15 @@ -5954,7 +6055,7 @@ (sv-100 float) (sv-104 float) (sv-108 float) - (sv-112 vector) + (sv-112 hud-box) (sv-116 print-highscore-obj) (sv-120 float) (sv-124 float) @@ -5968,7 +6069,7 @@ (set! sv-100 0.22) (set! sv-104 395.0) (set! sv-108 (-> arg1 origin x)) - (set! sv-112 (new 'stack-no-clear 'vector)) + (set! sv-112 (new 'stack-no-clear 'hud-box)) (set! sv-116 (new 'stack 'print-highscore-obj)) (set! sv-120 (* (-> arg0 sliding) sv-104)) (set! sv-124 (* (-> arg0 sliding-off) (-> obj slide-dir) sv-104)) @@ -6012,8 +6113,8 @@ (set! (-> sv-144 sprites 0 pos z) #xfffff0) (set! (-> sv-144 sprites 0 pos w) 0) (if (= (-> *setting-control* user-default language) (language-enum spanish)) - (draw-decoration (the-as menu-quit-qr-option sv-144) sv-140 sv-96 310 #t 0.8) - (draw-decoration (the-as menu-quit-qr-option sv-144) sv-140 sv-96 310 #t 0.95) + (draw-decoration sv-144 sv-140 sv-96 310 #t 0.8) + (draw-decoration sv-144 sv-140 sv-96 310 #t 0.95) ) (let ((v1-39 sv-140)) (set! (-> v1-39 scale) 0.6) @@ -6253,11 +6354,7 @@ (if (< 1 (get-num-highscores)) (draw-previous-next sv-144 sv-140 #t) ) - (let ((t9-47 end-scissor)) - sv-112 - #x3f800000 - (t9-47) - ) + (end-scissor sv-112 1.0) ) ) 0 @@ -6290,8 +6387,8 @@ (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6299,8 +6396,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6328,8 +6425,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6337,8 +6434,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6347,7 +6444,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-10) (-> obj scale) arg1 arg0) + (print-menu-text a0-10 (-> obj scale) arg1 arg0) 0 (none) ) @@ -6378,8 +6475,8 @@ (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6387,8 +6484,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6416,8 +6513,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6425,8 +6522,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6435,7 +6532,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-11) (-> obj scale) arg1 arg0) + (print-menu-text a0-11 (-> obj scale) arg1 arg0) 0 (none) ) @@ -6703,8 +6800,8 @@ (set! (-> a1-1 flags) (font-flags kerning middle large)) ) (if (= (-> *setting-control* user-default language) (language-enum spanish)) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f0-1 283 #f 0.85) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f0-1 283 #f 0.95) + (draw-decoration obj arg1 f0-1 283 #f 0.85) + (draw-decoration obj arg1 f0-1 283 #f 0.95) ) ) 0 @@ -6743,8 +6840,8 @@ (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6752,8 +6849,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6786,8 +6883,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6795,8 +6892,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6808,9 +6905,9 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id a0-12) (-> obj scale) arg1 arg0) + (print-menu-text a0-12 (-> obj scale) arg1 arg0) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 284 #f 0.95) + (draw-decoration obj arg1 f30-0 284 #f 0.95) ) 0 (none) @@ -6850,8 +6947,8 @@ (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6859,8 +6956,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6893,8 +6990,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6902,8 +6999,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6916,7 +7013,7 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id a0-11) (-> obj scale) arg1 arg0) + (print-menu-text a0-11 (-> obj scale) arg1 arg0) ) 0 (none) @@ -6968,7 +7065,7 @@ (clear *temp-string*) "~33L~C~34L~S~33L~C" 163 - (lookup-text! *common-text* (game-text-id progress-1k2jn1kj2n3) #f) + (lookup-text! *common-text* (game-text-id progress-move-dpad) #f) 161 ) (s5-2 *temp-string* arg1 #f 44 320) @@ -6996,7 +7093,13 @@ (let ((v1-37 arg1)) (set! (-> v1-37 scale) 0.5) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2kj3n2kji3n42) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-unknown-square-to-reset) #f) + arg1 + #f + 44 + 320 + ) ) (else (set! (-> arg1 origin y) (+ 5.0 (-> arg1 origin y))) @@ -7051,8 +7154,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-11 *temp-string*) ) @@ -7060,8 +7163,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-11 *temp-string*) ) @@ -7114,8 +7217,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-12 *temp-string*) ) @@ -7123,8 +7226,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-12 *temp-string*) ) @@ -7160,7 +7263,7 @@ (defmethod menu-option-method-10 menu-slider-option ((obj menu-slider-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) (local-vars - (v0-42 none) + (v0-42 pointer) (sv-16 progress) (sv-32 symbol) (sv-48 int) @@ -7690,7 +7793,7 @@ ) ) (if (and (and (= arg2 (-> arg0 option-index)) (!= 298 (-> obj name))) - (not (and (= (-> obj name) (game-text-id progress-kj1bn23kj1n23)) + (not (and (= (-> obj name) (game-text-id progress-root-secrets)) (= *title* (-> arg0 current-options)) (not (memcard-unlocked-secrets? #f)) (= (-> arg0 option-index) 3) @@ -7702,7 +7805,7 @@ (cond ((= *save-options-title* (-> arg0 current-options)) (cond - ((= (-> obj name) (game-text-id progress-n2jk3n45234)) + ((= (-> obj name) (game-text-id progress-continue-without-saving)) (cond ((= arg2 (-> arg0 option-index)) (let ((v1-39 arg1)) @@ -7770,21 +7873,16 @@ ) ) ) - (let ((v1-70 (&-> obj unknown-options 3))) - (set! (-> v1-70 0) (the-as menu-option 64)) - (set! (-> v1-70 1) (the-as menu-option 128)) - (set! (-> v1-70 2) (the-as menu-option 128)) - (set! (-> v1-70 3) (the-as menu-option (the int (* 128.0 f30-0)))) - ) + (set-vector! (-> obj box 0 color) 64 128 128 (the int (* 128.0 f30-0))) (draw-savegame-box - (the-as menu-memcard-slot-option obj) + obj (the float s4-1) (the float (+ s4-1 s3-1)) (the float (+ s2-4 (* s1-1 arg2))) (the float (+ s2-4 (* s1-1 arg2))) ) (draw-savegame-box - (the-as menu-memcard-slot-option obj) + obj (the float (+ s4-1 s3-1)) (the float (+ s4-1 s3-1)) (the float s2-4) @@ -7828,12 +7926,12 @@ ((= *load-save-options* (-> arg0 current-options)) (set! (-> arg1 origin x) (+ -100.0 (-> arg1 origin x))) (set! (-> arg1 origin y) (+ -25.0 (-> arg1 origin y))) - (print-menu-text (the-as game-text-id (lookup-text! *common-text* (-> obj name) #f)) (-> obj scale) arg1 arg0) + (print-menu-text (lookup-text! *common-text* (-> obj name) #f) (-> obj scale) arg1 arg0) ) ((and (= *title* (-> arg0 current-options)) (= 339 (-> obj name)) (memcard-unlocked-secrets? #f)) (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) - ((!= (-> obj name) (game-text-id progress-kj1bn23kj1n23)) + ((!= (-> obj name) (game-text-id progress-root-secrets)) (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) ) diff --git a/goal_src/jak2/engine/ui/progress/progress-h.gc b/goal_src/jak2/engine/ui/progress/progress-h.gc index f0ac909a9f..db6c776e10 100644 --- a/goal_src/jak2/engine/ui/progress/progress-h.gc +++ b/goal_src/jak2/engine/ui/progress/progress-h.gc @@ -15,7 +15,7 @@ (define-extern *progress-process* (pointer progress)) (define-extern activate-progress (function process symbol none)) -(define-extern memcard-unlocked-secrets? (function symbol symbol)) +(define-extern memcard-unlocked-secrets? "TODO - returns a bitfield" (function symbol int)) (define-extern progress-selected (function int int :behavior progress)) (define-extern get-num-highscores (function int)) (define-extern get-next-highscore (function int int)) @@ -60,7 +60,7 @@ (go-away () _type_ :state 22) (gone () _type_ :state 23) (init-defaults (_type_) connection 24) - (progress-method-25 (_type_ object object symbol) none 25) + (progress-method-25 (_type_) none 25) (progress-method-26 (_type_) object 26) (can-go-back? (_type_) symbol 27) (progress-method-28 (_type_ symbol) symbol 28) @@ -73,11 +73,11 @@ (deftype menu-option (basic) - ((name game-text-id :offset-assert 4) - (scale float :offset-assert 8) - (unknown function :offset-assert 12) - (box menu-option 1 :offset-assert 16) - (unknown-options menu-option 7 :offset-assert 20) + ((name game-text-id :offset-assert 4) + (scale float :offset-assert 8) + (unknown function :offset-assert 12) + (box hud-box 1 :inline :offset-assert 16) + (options menu-option 8 :offset 16) ) :method-count-assert 12 :size-assert #x30 diff --git a/goal_src/jak2/engine/ui/progress/progress.gc b/goal_src/jak2/engine/ui/progress/progress.gc index 028ac9a9e8..af0e727056 100644 --- a/goal_src/jak2/engine/ui/progress/progress.gc +++ b/goal_src/jak2/engine/ui/progress/progress.gc @@ -7,8 +7,6 @@ (set! *progress-process* #f) -;; og:ignore-form:progress-trans - ;; DECOMP BEGINS (deftype progress-global-state (basic) @@ -132,96 +130,72 @@ (set! (-> obj sliding-height) 0.0) (set! (-> obj sliding-off) 1.0) (set! (-> obj scanlines-alpha) 0.0) - (set! (-> (the-as - menu-on-off-game-vibrations-option - (-> (the-as menu-on-off-game-vibrations-option (-> *game-options* options 0)) box 0) - ) + (set! (-> (the-as menu-on-off-game-vibrations-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 0)) value-to-modify ) (&-> *setting-control* user-default vibration) ) - (set! (-> (the-as - menu-on-off-game-subtitles-option - (-> (the-as menu-on-off-game-subtitles-option (-> *game-options* options 0)) unknown-options 0) - ) + (set! (-> (the-as menu-on-off-game-subtitles-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 1)) value-to-modify ) (&-> *setting-control* user-default subtitle) ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 2)) language-selection ) (-> *setting-control* user-current language) ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 2)) language-direction ) #t ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 2)) language-transition ) #f ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as (array menu-option) (-> *game-options* options 0)) 2)) language-x-offset ) 0 ) - (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-japan* options 0)) box 0)) + (set! (-> (the-as menu-on-off-option (-> (the-as (array menu-option) (-> *game-options-japan* options 0)) 0)) value-to-modify ) (&-> *setting-control* user-default vibration) ) - (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-demo* options 0)) box 0)) + (set! (-> (the-as menu-on-off-option (-> (the-as (array menu-option) (-> *game-options-demo* options 0)) 0)) value-to-modify ) (&-> *setting-control* user-default vibration) ) - (set! (-> (the-as - menu-on-off-option - (-> (the-as menu-on-off-option (-> *graphic-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-on-off-option (-> (the-as (array menu-option) (-> *graphic-options* options 0)) 2)) value-to-modify ) (&-> *setting-control* user-default use-progressive-scan) ) - (set! (-> (the-as - menu-on-off-option - (-> (the-as menu-on-off-option (-> *graphic-title-options-pal* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-on-off-option (-> (the-as (array menu-option) (-> *graphic-title-options-pal* options 0)) 2)) value-to-modify ) (&-> *setting-control* user-default use-progressive-scan) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) box 0)) + (set! (-> (the-as menu-slider-option (-> (the-as (array menu-option) (-> *sound-options* options 0)) 0)) value-to-modify ) (&-> *setting-control* user-default sfx-volume) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) unknown-options 0)) + (set! (-> (the-as menu-slider-option (-> (the-as (array menu-option) (-> *sound-options* options 0)) 1)) value-to-modify ) (&-> *setting-control* user-default music-volume) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) unknown-options 1)) + (set! (-> (the-as menu-slider-option (-> (the-as (array menu-option) (-> *sound-options* options 0)) 2)) value-to-modify ) (&-> *setting-control* user-default dialog-volume) ) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as (array menu-option) (-> *missions-options* options 0)) 0)) task-line-index ) 0 @@ -781,7 +755,7 @@ (('loading) (set! (-> *progress-state* last-slot-saved) (-> *progress-state* which-slot)) (auto-save-command 'restore 0 (-> *progress-state* which-slot) obj #f) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as (array menu-option) (-> *missions-options* options 0)) 0)) task-line-index ) 0 @@ -933,10 +907,7 @@ ) (('select-start 'select-pre-start 'select-kiosk-start) (set! (-> obj current-options) *select-start-options*) - (set! (-> (the-as - menu-select-start-option - (-> (the-as menu-select-start-option (-> *select-start-options* options 0)) box 0) - ) + (set! (-> (the-as menu-select-start-option (-> (the-as (array menu-option) (-> *select-start-options* options 0)) 0)) task-index ) 0 @@ -945,10 +916,7 @@ ) (('select-scene) (set! (-> obj current-options) *select-scene-options*) - (set! (-> (the-as - menu-select-scene-option - (-> (the-as menu-select-scene-option (-> *select-scene-options* options 0)) box 0) - ) + (set! (-> (the-as menu-select-scene-option (-> (the-as (array menu-option) (-> *select-scene-options* options 0)) 0)) task-index ) 0 @@ -982,7 +950,7 @@ ) (('missions) (set! (-> *progress-state* missions-total-spacing) 0.0) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as (array menu-option) (-> *missions-options* options 0)) 0)) task-line-index ) 0 @@ -990,12 +958,12 @@ (set! (-> obj current-options) *missions-options*) ) (('highscores) - (set! (-> (the-as menu-highscores-option (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0)) + (set! (-> (the-as menu-highscores-option (-> (the-as (array menu-option) (-> *highscores-options* options 0)) 0)) page-index ) 0 ) - (set! (-> (the-as menu-highscores-option (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0)) + (set! (-> (the-as menu-highscores-option (-> (the-as (array menu-option) (-> *highscores-options* options 0)) 0)) prev-page-index ) 0 @@ -1020,13 +988,13 @@ 0 ) -(defmethod progress-method-25 progress ((obj progress) (arg0 object) (arg1 object) (arg2 symbol)) +(defmethod progress-method-25 progress ((obj progress)) (mc-get-slot-info 0 *progress-save-info*) (when (-> obj current-options) (let ((s5-0 (-> obj current-options options 0))) (when (and s5-0 (= (-> obj menu-transition) 0.0)) (respond-progress - (-> (the-as menu-option (+ (* (-> obj option-index) 4) (the-as int s5-0))) box 0) + (the-as menu-option (-> s5-0 options (-> obj option-index))) obj (and (= (-> obj menu-transition) 0.0) (-> obj selected-option)) ) @@ -1115,7 +1083,188 @@ (none) ) -;; ERROR: failed type prop at 0: Could not figure out load: (set! v1 (l.wu (+ s6 228))) +(defbehavior progress-trans progress () + (cond + ((and (= (-> self next) 'none) + (or (= (-> *progress-state* starting-state) 'main) (= (-> self anim-frame) 1.0)) + ) + (set! (-> self menu-transition) + (seek-ease + (-> self menu-transition) + 0.0 + (* 0.1 (-> self clock time-adjust-ratio)) + 0.4 + (* 0.01 (-> self clock time-adjust-ratio)) + ) + ) + ) + (else + (seek! (-> self menu-transition) 1.0 (* 0.1 (-> self clock time-adjust-ratio))) + (when (and (= (-> self menu-transition) 1.0) + (or (and (nonzero? (-> self state-pos)) (= (-> self anim-frame) 1.0)) + (or (and (zero? (-> self state-pos)) (= (-> self anim-frame) 0.0)) + (and (!= (-> *progress-state* starting-state) 'main) (!= (-> self next) 'none)) + ) + ) + ) + (set! (-> self current) (-> self next)) + (set! (-> self next) 'none) + (set! (-> self option-index) (-> self next-option-index)) + (set! (-> self want-option-index) 0) + (set-menu-options self (-> self current)) + (set! (-> self scanlines-alpha) 0.0) + ) + ) + ) + (set! (-> self main-menu) + (and (zero? (-> self state-pos)) (and (= (-> self menu-transition) 0.0) + (= (-> self next) 'none) + (or (= (-> self state-stack 0) 'main) (= (-> self current) 'main)) + ) + ) + ) + (when *cheat-mode* + (when (zero? (-> self state-pos)) + (cond + ((and (cpad-hold? 0 l2) (cpad-hold? 0 r1)) + (if (= (-> self current-options) *main-options*) + (set! (-> self current-options) *main-options-debug*) + ) + ) + ((= (-> self current-options) *main-options-debug*) + (set! (-> self current-options) *main-options*) + ) + ) + ) + ) + (if (= (-> self ring-angle) (-> self ring-want-angle)) + (progress-method-25 self) + ) + (let ((f30-0 (* 0.005 (-> self clock time-adjust-ratio)))) + (cond + ((= (-> self menu-transition) 1.0) + (if (and (zero? (-> self state-pos)) (= (-> *progress-state* starting-state) 'main)) + (seek! (-> self anim-frame) 0.0 (* 0.02 (-> self clock time-adjust-ratio))) + (seek! (-> self anim-frame) 1.0 (* 0.02 (-> self clock time-adjust-ratio))) + ) + (let ((f0-27 (if (and (zero? (-> self state-pos)) (!= (-> *progress-state* starting-state) 'title)) + 0.0 + 0.2 + ) + ) + ) + (when (= (-> self next) 'bigmap) + (set! f0-27 0.4) + (set! f30-0 (* 0.008 (-> self clock time-adjust-ratio))) + ) + (seek! (-> self pos-transition) f0-27 f30-0) + ) + ) + ((zero? (-> self state-pos)) + (if (= (-> self current) 'bigmap) + (set! f30-0 (* 0.05 (-> self clock time-adjust-ratio))) + ) + (if (!= (-> *progress-state* starting-state) 'title) + (seek! (-> self pos-transition) 0.0 f30-0) + ) + ) + ) + ) + (if (!= (-> *progress-state* starting-state) 'main) + (set! (-> self pos-transition) 0.2) + ) + (set-ring-position self) + (when (= (-> self ring-angle) (-> self ring-want-angle)) + (cond + ((< (-> self want-option-index) 0) + (cond + ((and (= *cheat-mode* #f) (= *kernel-boot-message* 'kiosk)) + (if (> (-> self option-index) 0) + (+! (-> self option-index) -1) + ) + ) + (else + (set! (-> self option-index) + (min-max-wrap-around (+ (-> self option-index) -1) 0 (+ (length (-> self current-options options 0)) -1)) + ) + ) + ) + (set! (-> self graphic-index) (-> self option-index)) + (+! (-> self want-option-index) 1) + ) + ((> (-> self want-option-index) 0) + (cond + ((and (= *cheat-mode* #f) (= *kernel-boot-message* 'kiosk)) + (if (< (-> self option-index) (+ (length (-> self current-options options 0)) -1)) + (+! (-> self option-index) 1) + ) + ) + (else + (set! (-> self option-index) + (min-max-wrap-around (+ (-> self option-index) 1) 0 (+ (length (-> self current-options options 0)) -1)) + ) + ) + ) + (+! (-> self want-option-index) -1) + ) + ) + ) + (if (= (-> self anim-frame) 0.0) + (set! (-> self swing) (seek-ease + (-> self swing) + 4.0 + (* 0.05 (-> self clock time-adjust-ratio)) + 0.5 + (* 0.005 (-> self clock time-adjust-ratio)) + ) + ) + (set! (-> self swing) (seek-ease + (-> self swing) + 0.0 + (* 0.07 (-> self clock time-adjust-ratio)) + 0.5 + (* 0.007 (-> self clock time-adjust-ratio)) + ) + ) + ) + (when (-> self main-menu) + (set! (-> self ring-want-angle) (ceil (* 182.04445 (* 36.0 (the float (-> self option-index)))))) + (if (and (= (-> self ring-want-angle) 0.0) (< 32768.0 (-> self ring-angle))) + (set! (-> self ring-want-angle) 65536.0) + ) + (let ((f0-54 (- (-> self ring-want-angle) (-> self ring-angle)))) + (when (< 32768.0 (fabs f0-54)) + (if (< 0.0 f0-54) + (set! (-> self ring-angle) (+ 65536.0 (-> self ring-angle))) + (set! (-> self ring-angle) (+ -65536.0 (-> self ring-angle))) + ) + ) + ) + (seek! (-> self ring-angle) (-> self ring-want-angle) (* 455.1111 (-> self clock time-adjust-ratio))) + ) + (let ((gp-4 (quaternion-vector-angle! + (new 'stack-no-clear 'quaternion) + *x-vector* + (* 182.04445 (* (-> self swing) (sin (the float (* 40 (-> self clock frame-counter)))))) + ) + ) + (s5-4 (quaternion-vector-angle! + (new 'stack-no-clear 'quaternion) + *y-vector* + (* 182.04445 (* (-> self swing) (sin (the float (* 0 (-> self clock frame-counter)))))) + ) + ) + ) + (quaternion*! (-> self root quat) (-> self init-quat) gp-4) + (quaternion*! (-> self root quat) (-> self root quat) s5-4) + ) + (quaternion-normalize! (-> self root quat)) + (if (= (-> self ring-angle) (-> self ring-want-angle)) + (set! (-> self graphic-index) (-> self option-index)) + ) + 0 + (none) + ) (defun begin-scan ((arg0 hud-box) (arg1 progress)) (cond @@ -1241,7 +1390,7 @@ ) ) (menu-option-method-10 - (-> gp-0 box s4-1) + (-> gp-0 options s4-1) self sv-144 s4-1 @@ -1268,13 +1417,7 @@ (when (and (< 0.8 (-> self anim-frame)) (or (= (-> self current) 'bigmap) (= (-> self next) 'bigmap))) (cond ((>= (-> self pos-transition) 0.38) - (let ((t9-8 (method-of-object *bigmap* bigmap-method-11))) - 1792 - 1840 - 2304 - 2256 - (t9-8) - ) + (bigmap-method-11 *bigmap* 1792 1840 2304 2256) ) (else (let ((s4-2 (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data 21))) @@ -1284,15 +1427,15 @@ (set! (-> gp-1 quad) (the-as uint128 0)) (let ((s5-1 (new 'stack-no-clear 'vector4w))) (set! (-> s5-1 quad) (the-as uint128 0)) - (when (and (transform-point-qword! gp-1 s4-2) (transform-point-qword! s5-1 s3-1)) - (let ((t9-13 (method-of-object *bigmap* bigmap-method-11))) - (/ (the-as int (-> s5-1 x)) 16) - (/ (the-as int (-> s5-1 y)) 16) - (/ (the-as int (-> gp-1 x)) 16) - (/ (the-as int (-> gp-1 y)) 16) - (t9-13) + (if (and (transform-point-qword! gp-1 s4-2) (transform-point-qword! s5-1 s3-1)) + (bigmap-method-11 + *bigmap* + (the-as int (/ (the-as int (-> s5-1 x)) 16)) + (the-as int (/ (the-as int (-> s5-1 y)) 16)) + (the-as int (/ (the-as int (-> gp-1 x)) 16)) + (the-as int (/ (the-as int (-> gp-1 y)) 16)) + ) ) - ) ) ) ) @@ -1359,64 +1502,64 @@ (let ((t9-0 format) (a0-3 #t) (a1-1 "DONE NOTIFY: ~S ~S~%") - (v1-3 (-> arg3 param 1)) + (v1-3 (the-as mc-status-code (-> arg3 param 1))) ) (t9-0 a0-3 a1-1 (cond - ((= v1-3 15) + ((= v1-3 (mc-status-code bad-version)) "bad-version" ) - ((= v1-3 13) + ((= v1-3 (mc-status-code no-save)) "no-save" ) - ((= v1-3 10) + ((= v1-3 (mc-status-code no-last)) "no-last" ) - ((= v1-3 14) + ((= v1-3 (mc-status-code no-space)) "no-space" ) - ((= v1-3 4) + ((= v1-3 (mc-status-code internal-error)) "internal-error" ) - ((= v1-3 8) + ((= v1-3 (mc-status-code no-memory)) "no-memory" ) - ((= v1-3 2) + ((= v1-3 (mc-status-code bad-handle)) "bad-handle" ) - ((zero? v1-3) + ((= v1-3 (mc-status-code busy)) "busy" ) - ((= v1-3 5) + ((= v1-3 (mc-status-code write-error)) "write-error" ) - ((= v1-3 6) + ((= v1-3 (mc-status-code read-error)) "read-error" ) - ((= v1-3 9) + ((= v1-3 (mc-status-code no-card)) "no-card" ) - ((= v1-3 11) + ((= v1-3 (mc-status-code no-format)) "no-format" ) - ((= v1-3 1) + ((= v1-3 (mc-status-code ok)) "ok" ) - ((= v1-3 16) + ((= v1-3 (mc-status-code no-process)) "no-process" ) - ((= v1-3 17) + ((= v1-3 (mc-status-code no-auto-save)) "no-auto-save" ) - ((= v1-3 12) + ((= v1-3 (mc-status-code no-file)) "no-file" ) - ((= v1-3 3) + ((= v1-3 (mc-status-code format-failed)) "format-failed" ) - ((= v1-3 7) + ((= v1-3 (mc-status-code new-game)) "new-game" ) (else @@ -1458,64 +1601,64 @@ (let ((t9-7 format) (a0-18 #t) (a1-5 "ERROR NOTIFY: ~S ~S ~S~%") - (v1-19 (-> arg3 param 1)) + (v1-19 (the-as mc-status-code (-> arg3 param 1))) ) (t9-7 a0-18 a1-5 (cond - ((= v1-19 15) + ((= v1-19 (mc-status-code bad-version)) "bad-version" ) - ((= v1-19 13) + ((= v1-19 (mc-status-code no-save)) "no-save" ) - ((= v1-19 10) + ((= v1-19 (mc-status-code no-last)) "no-last" ) - ((= v1-19 14) + ((= v1-19 (mc-status-code no-space)) "no-space" ) - ((= v1-19 4) + ((= v1-19 (mc-status-code internal-error)) "internal-error" ) - ((= v1-19 8) + ((= v1-19 (mc-status-code no-memory)) "no-memory" ) - ((= v1-19 2) + ((= v1-19 (mc-status-code bad-handle)) "bad-handle" ) - ((zero? v1-19) + ((= v1-19 (mc-status-code busy)) "busy" ) - ((= v1-19 5) + ((= v1-19 (mc-status-code write-error)) "write-error" ) - ((= v1-19 6) + ((= v1-19 (mc-status-code read-error)) "read-error" ) - ((= v1-19 9) + ((= v1-19 (mc-status-code no-card)) "no-card" ) - ((= v1-19 11) + ((= v1-19 (mc-status-code no-format)) "no-format" ) - ((= v1-19 1) + ((= v1-19 (mc-status-code ok)) "ok" ) - ((= v1-19 16) + ((= v1-19 (mc-status-code no-process)) "no-process" ) - ((= v1-19 17) + ((= v1-19 (mc-status-code no-auto-save)) "no-auto-save" ) - ((= v1-19 12) + ((= v1-19 (mc-status-code no-file)) "no-file" ) - ((= v1-19 3) + ((= v1-19 (mc-status-code format-failed)) "format-failed" ) - ((= v1-19 7) + ((= v1-19 (mc-status-code new-game)) "new-game" ) (else @@ -1557,9 +1700,7 @@ (set! (-> self menu-transition) 1.0) (none) ) - :trans (the-as (function none :behavior progress) - ;; TODO call to progress-trans! - 0) + :trans progress-trans :code (behavior () (until #f (ja :num-func num-func-identity :frame-num (* 12.0 (-> self anim-frame))) @@ -1705,13 +1846,13 @@ ) ((logtest? (pad-buttons pb24) (-> *cpad-list* cpads 0 button0-rel 0)) (cond - ((and (-> v1-1 0) (= (-> obj name) 366)) + ((and (-> v1-1 0) (= (-> obj name) (game-text-id progress-root-restart-mission))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (restart-mission) (set-next-state arg0 'go-away 0) ) - ((and (-> v1-1 0) (= (-> obj name) 307)) + ((and (-> v1-1 0) (= (-> obj name) (game-text-id progress-quit))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (initialize! *game-info* 'game (the-as game-save #f) "title-restart") @@ -1786,7 +1927,7 @@ (when s4-0 (let ((f30-0 1.0)) (case (-> obj name) - ((264 265) + (((game-text-id progress-sound-music-volume) (game-text-id progress-sound-speech-volume)) (set! f30-0 (-> (the-as (pointer float) gp-0))) ) ) @@ -1859,7 +2000,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle)) (when (and (= (-> arg0 ring-angle) (-> arg0 ring-want-angle)) #t) (cond - ((= (-> obj name) 291) + ((= (-> obj name) (game-text-id progress-demo-exit)) (case *kernel-boot-message* (('demo-shared) (set! *master-exit* 'force) @@ -1871,12 +2012,15 @@ ) ) ) - ((or (= (-> obj name) 346) (= (-> obj name) 347) (= (-> obj name) 348)) + ((or (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) + (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) + (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) + ) (case (-> obj name) - ((347) + (((game-text-id progress-main-secrets-sceneplayer-2)) (set! (-> *progress-state* scene-player-act) 2) ) - ((348) + (((game-text-id progress-main-secrets-sceneplayer-3)) (set! (-> *progress-state* scene-player-act) 3) ) (else @@ -1954,12 +2098,12 @@ (set! (-> arg0 state-pos) 0) (set-next-state arg0 'secrets-insufficient-space 0) ) - (when (= (-> obj name) 298) + (when (= (-> obj name) (game-text-id progress-continue-without-saving)) (let ((a1-3 (progress-method-28 arg0 (-> arg0 current)))) (set-next-state arg0 a1-3 0) ) ) - (when (and (= (-> obj name) 339) + (when (and (= (-> obj name) (game-text-id progress-root-secrets)) (= *title* (-> arg0 current-options)) (not (memcard-unlocked-secrets? #f)) (= (-> arg0 option-index) 3) @@ -1971,7 +2115,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (cond - ((= (-> obj name) 291) + ((= (-> obj name) (game-text-id progress-demo-exit)) (case *kernel-boot-message* (('demo-shared) (set! *master-exit* 'force) @@ -1983,7 +2127,7 @@ ) ) ) - ((= (-> obj name) 298) + ((= (-> obj name) (game-text-id progress-continue-without-saving)) (progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000)) ) ((= (-> obj next-state) 'back) @@ -2014,7 +2158,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (cond - ((and (= (-> obj name) 349) (logtest? (the-as int s4-0) 512)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook)) (logtest? s4-0 512)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 1) @@ -2028,7 +2172,7 @@ ) ) ) - ((and (= (-> obj name) 350) (logtest? (the-as int s4-0) 1024)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook)) (logtest? s4-0 1024)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 2) @@ -2042,7 +2186,7 @@ ) ) ) - ((and (= (-> obj name) 351) (logtest? (the-as int s4-0) 2048)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3)) (logtest? s4-0 2048)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 3) @@ -2056,30 +2200,30 @@ ) ) ) - ((and (= (-> obj name) 346) (logtest? (the-as int s4-0) 32)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) (logtest? s4-0 32)) (set! (-> *progress-state* scene-player-act) 1) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 347) (logtest? (the-as int s4-0) 64)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) (logtest? s4-0 64)) (set! (-> *progress-state* scene-player-act) 2) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 348) (logtest? (the-as int s4-0) 128)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) (logtest? s4-0 128)) (set! (-> *progress-state* scene-player-act) 3) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 345) (logtest? (the-as int s4-0) #x8000)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-hero-mode)) (logtest? s4-0 #x8000)) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-save-title-hero 0) ) - ((and (= (-> obj name) 352) (logtest? (the-as int s4-0) 256)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-levelselect)) (logtest? s4-0 256)) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-start 0) @@ -2150,12 +2294,12 @@ ) ((= (-> *progress-save-info* file (-> *progress-state* which-slot) present) 1) (set! s5-0 #t) - (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0))) + (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0 min x))) (set-next-state arg0 'already-exists 0) ) (else (set! s5-0 #t) - (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0))) + (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0 min x))) (set-next-state arg0 'saving 0) ) ) @@ -3602,13 +3746,13 @@ ) ((logtest? (pad-buttons pb24) (-> *cpad-list* cpads 0 button0-rel 0)) (cond - ((and (-> v1-1 0) (= (-> arg0 name) 366)) + ((and (-> v1-1 0) (= (-> arg0 name) (game-text-id progress-root-restart-mission))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (restart-mission) (set-next-state arg1 'go-away 0) ) - ((and (-> v1-1 0) (= (-> arg0 name) 307)) + ((and (-> v1-1 0) (= (-> arg0 name) (game-text-id progress-quit))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (initialize! *game-info* 'game (the-as game-save #f) "title-restart") diff --git a/goal_src/jak2/engine/ui/text-id-h.gc b/goal_src/jak2/engine/ui/text-id-h.gc index c2cb97eade..f5cabfe53a 100644 --- a/goal_src/jak2/engine/ui/text-id-h.gc +++ b/goal_src/jak2/engine/ui/text-id-h.gc @@ -10,99 +10,121 @@ :type uint32 :bitfield #f (pause 257) - (progress-on-off-1TODO 270) - (progress-on-off-2TODO 271) - (progress-1k2jn1kj2n3 272) - (progress-kj1231nj23 286) - (progress-12434g343v 287) - (progress-video-asda 288) - (progress-video-j1n2 289) - (progress-draw-yes-or-no-1-TODO 292) - (progress-draw-yes-or-no-2-TODO 293) - (progress-1kj2n3kj1n23 296) - (progress-n2jk3n45234 298) - (progress-1ikjhb231hjik2b31ihb231 303) - (progress-kj1n23123 308) - (progress-k1jnb231kjhnb23 311) - (progress-loj1n23 312) - (progress-2k3jn4234 313) - (progress-2kj3n24kn 314) - (progress-2kjn34 315) - (progress-2klj342n43 316) - (progress-l2jm342m34 317) - (progress-2m342kmj34 318) - (progress-kj1bn23kj1n23 339) - (progress-1l2jnm31lk2m3 340) - (progress-unlocked-oj1n23jn1 345) - (progress-unlocked-k1231kkj 346) - (progress-unlocked-jn12j 347) - (progress-unlocked-m12312 348) - (progress-unlocked-1231h2bn 349) - (progress-unlocked-akjisndaj 350) - (progress-unlocked-iwudnq 351) - (progress-unlocked-n51i51n 352) - (progress-1k2ijn1jkn3 360) - (progress-1kjn2jn31kj3 361) - (progress-1kj2n31j23 367) - (progress-iko1jn231kjhn23 368) - (progress-1klj2n31j2n3 369) - (progress-i1un23i12b341 370) - (progress-2kj3n2kji3n42 377) - (progress-draw-continue-retry-1-TODO 382) - (progress-1klj2n31j23 383) - (progress-j1n23j1kn23kjn12 395) - (progress-2j021j394j 396) - (progress-kj6n324i63n 397) - (progress-3iou4n3i45n3 398) - (progress-39u4n359n45 399) - (progress-iun34593n45 400) - (progress-on2394234n 401) - (progress-l1jkn231jkn23 402) - (progress-kj1n231kjn2 403) - (progress-1lkjn231jnk2 404) - (progress-n12n211n1n 405) - (progress-2iu3bn4289u34n 406) - (progress-oj1n23kj1n23123 409) - (progress-1kjn231kjn23 410) - (progress-1kj2b31k2b3 411) - (progress-j1nb23kj1hbn2 412) - (progress-1kj2bkoij1231 413) - (progress-1nmn1221n21n12n 414) - (progress-busy-loading-TODO 416) - (progress-1jib12o3nj12j3 419) - (progress-1m23n1n23n21 420) - (progress-1jk2n31jkn23n1j 421) - (progress-1n23kjn12nk3j12 422) - (progress-draw-continue-retry-2-TODO 423) - (progress-kj12k3j1n23n 424) - (progress-1kj2bn31kjhnb2 426) - (progress-jk1n23kj1n2 429) - (progress-k1jn23k1h23b 430) - (progress-k1jn23kj1n23 431) - (progress-1kjn231j2 432) - (progress-1kj2n31kjn231 433) - (progress-1kj2n31jkn23 434) - (progress-1kjn2123919 435) - (progress-jn12n3j1n2 436) - (progress-n12jin313 437) - (progress-main-23jn42 531) - (progress-main-63j46j3n4 532) - (progress-main-m123j1m 533) - (progress-main-634jn6 534) - (progress-main-52o352nm 535) - (progress-main-63jk46n3 536) - (progress-main-j324nm3 537) - (progress-main-k1j2n3n1 538) - (progress-main-6mn346mn 539) - (progress-main-63jn463jn 540) - (progress-main-63j46n3j 541) - (progress-main-52kj3n52 542) - (progress-main-52jn35j2 543) - (progress-main-3643m6m 544) - (progress-main-36j46jn 545) - (progress-main-63mn46nm 546) - (progress-main-364jn6n 547) - (progress-ikj123i1khb231 784) + (progress-sound-music-volume 264) + (progress-sound-speech-volume 265) + (progress-on 270) + (progress-off 271) + (progress-move-dpad 272) + (progress-aspect-ratio 280) + (progress-progressive-scan 281) + (progress-video-mode 282) + (progress-root-game-options 283) + (progress-root-graphic-options 284) + (progress-root-sound-options 285) + (progress-aspect-4x3 286) + (progress-aspect-16x9 287) + (progress-refresh-60hz 288) + (progress-refresh-50hz 289) + (progress-demo-exit 291) + (progress-yes 292) + (progress-no 293) + (progress-back 294) + (progress-ok 295) + (progress-next 296) + (progress-previous 297) + (progress-continue-without-saving 298) + (progress-select-file-to-save 299) + (progress-select-file-to-load 300) + (progress-load-game 301) + (progress-save-game 302) + (progress-slot-empty 303) + (progress-title-options 304) + (progress-title-new-game 305) + (progress-title-prompt 306) + (progress-quit 307) + (progress-root-show-map 308) + (progress-root-highscores 310) + (progress-highscores-1st 311) + (progress-highscores-2nd 312) + (progress-highscores-3rd 313) + (progress-highscores-4th 314) + (progress-highscores-5th 315) + (progress-highscores-6th 316) + (progress-highscores-7th 317) + (progress-highscores-8th 318) + (progress-root-secrets 339) + (progress-secrets-unlocked 340) + (progress-main-secrets-hero-mode 345) + (progress-main-secrets-sceneplayer-1 346) + (progress-main-secrets-sceneplayer-2 347) + (progress-main-secrets-sceneplayer-3 348) + (progress-main-secrets-scrapbook 349) + (progress-main-secrets-mega-scrapbook 350) + (progress-main-secrets-scrapbook-3 351) + (progress-main-secrets-levelselect 352) + (progress-secrets-orb-label 360) + (progress-root-missions 361) + (progress-root-restart-mission 366) + (progress-missions-icon-todo 367) + (progress-missions-icon-completed 368) + (progress-missions-none 369) + (progress-unknown-game 370) + (progress-unknown-square-to-reset 377) + (progress-unknown-retry? 382) + (progress-secrets-go-to-title-screen 383) + (progress-graphics-60hz-change-notice 395) + (progress-graphics-progressivescan-change-notice 396) + (progress-graphics-progressivescan-warning-1 397) + (progress-graphics-progressivescan-warning-2 398) + (progress-graphics-60hz-change-complete 399) + (progress-graphics-progressivescan-change-complete 400) + (progress-graphics-mode-revert? 401) + (progress-disc-removed-notice 402) + (progress-disc-removed-prompt 403) + (progress-disc-read-error 404) + (progress-disc-read-error-prompt 405) + (progress-quit-game-confirm 406) + (progress-memcard-not-found 409) + (progress-memcard-unformatted 410) + (progress-memcard-space-requirement 411) + (progress-memcard-insert-card-with-jak2 412) + (progress-memcard-insert-card-with-space-to-save 413) + (progress-memcard-formatting-required-notice 414) + (progress-memcard-loading-data 416) + (progress-memcard-dont-remove 419) + (progress-memcard-overwrite-warning 420) + (progress-memcard-overwrite-confirm 421) + (progress-memcard-format-prompt 422) + (progress-memcard-continue? 423) + (progress-memcard-go-back? 424) + (progress-memcard-error-while-saving 426) + (progress-memcard-check 429) + (progress-memcard-check-and-try-again 430) + (progress-memcard-was-removed 431) + (progress-autosave-disabled 432) + (progress-autosave-reenabling-info 433) + (progress-memcard-no-jak2-found 434) + (progress-memcard-create-jak2-file? 435) + (progress-autosave-explanation 436) + (progress-autosave-dont-remove 437) + (progress-locations-haven-city 531) + (progress-locations-fortress 532) + (progress-locations-landing-pad 533) + (progress-locations-palace-roof 534) + (progress-locations-palace 535) + (progress-locations-weapons-factory 536) + (progress-locations-dead-town 537) + (progress-locations-pumping-station 538) + (progress-locations-sewer 539) + (progress-locations-strip-mine 540) + (progress-locations-mountain-temple 541) + (progress-locations-haven-forest 542) + (progress-locations-drill-platform 543) + (progress-locations-mars-tomb 544) + (progress-locations-dig 545) + (progress-locations-underport 546) + (progress-locations-nest 547) + (progress-unknown-continue 784) ) ;; ---game-text-id diff --git a/test/decompiler/reference/jak2/engine/game/game-info-h_REF.gc b/test/decompiler/reference/jak2/engine/game/game-info-h_REF.gc index 689eaef7a2..3994375890 100644 --- a/test/decompiler/reference/jak2/engine/game/game-info-h_REF.gc +++ b/test/decompiler/reference/jak2/engine/game/game-info-h_REF.gc @@ -62,7 +62,7 @@ :size-assert #x10 :flag-assert #xa00000010 (:methods - (highscore-info-method-9 () none 9) + (highscore-info-method-9 (_type_ float) int 9) ) ) @@ -343,7 +343,7 @@ (game-info-method-26 () none 26) (get-next-attack-id (_type_) uint 27) (game-info-method-28 () none 28) - (game-info-method-29 () none 29) + (get-game-score-ref (_type_ int) (pointer float) 29) (game-info-method-30 () none 30) ) ) diff --git a/test/decompiler/reference/jak2/engine/task/task-control-h_REF.gc b/test/decompiler/reference/jak2/engine/task/task-control-h_REF.gc deleted file mode 100644 index 7a1e5fcec0..0000000000 --- a/test/decompiler/reference/jak2/engine/task/task-control-h_REF.gc +++ /dev/null @@ -1,1528 +0,0 @@ -;;-*-Lisp-*- -(in-package goal) - -;; definition (debug) for function game-task->string -(defun-debug game-task->string ((arg0 game-task)) - (case arg0 - (((game-task forest-protect)) - "forest-protect" - ) - (((game-task strip-drop)) - "strip-drop" - ) - (((game-task fortress-dump)) - "fortress-dump" - ) - (((game-task ruins-tower)) - "ruins-tower" - ) - (((game-task city-burning-bush-race-errol)) - "city-burning-bush-race-errol" - ) - (((game-task canyon-insert-items)) - "canyon-insert-items" - ) - (((game-task city-win)) - "city-win" - ) - (((game-task city-burning-bush-get-to-5)) - "city-burning-bush-get-to-5" - ) - (((game-task tomb-water)) - "tomb-water" - ) - (((game-task stadium-race-class3)) - "stadium-race-class3" - ) - (((game-task city-burning-bush-ring-2)) - "city-burning-bush-ring-2" - ) - (((game-task eco-blue-button)) - "eco-blue-button" - ) - (((game-task stadium-burning-bush-race-class1-r)) - "stadium-burning-bush-race-class1-r" - ) - (((game-task ruins-enemy)) - "ruins-enemy" - ) - (((game-task city-burning-bush-shuttle-1)) - "city-burning-bush-shuttle-1" - ) - (((game-task eco-red-button)) - "eco-red-button" - ) - (((game-task city-burning-bush-ring-1)) - "city-burning-bush-ring-1" - ) - (((game-task city-krew-delivery)) - "city-krew-delivery" - ) - (((game-task stadium-burning-bush-race-class3-r)) - "stadium-burning-bush-race-class3-r" - ) - (((game-task stadium-burning-bush-race-class3)) - "stadium-burning-bush-race-class3" - ) - (((game-task city-burning-bush-get-to-15)) - "city-burning-bush-get-to-15" - ) - (((game-task city-help-kid)) - "city-help-kid" - ) - (((game-task under-mech)) - "under-mech" - ) - (((game-task city-escort-kid)) - "city-escort-kid" - ) - (((game-task mountain-gear)) - "mountain-gear" - ) - (((game-task max)) - "max" - ) - (((game-task city-defend-stadium)) - "city-defend-stadium" - ) - (((game-task city-burning-bush-get-to-12)) - "city-burning-bush-get-to-12" - ) - (((game-task city-burning-bush-bombbot-1)) - "city-burning-bush-bombbot-1" - ) - (((game-task drill-ship)) - "drill-ship" - ) - (((game-task city-yellow-gun-training)) - "city-yellow-gun-training" - ) - (((game-task sewer-enemy)) - "sewer-enemy" - ) - (((game-task palace-cable)) - "palace-cable" - ) - (((game-task city-burning-bush-get-to-10)) - "city-burning-bush-get-to-10" - ) - (((game-task castle-break-in)) - "castle-break-in" - ) - (((game-task tomb-poles)) - "tomb-poles" - ) - (((game-task city-vehicle-training)) - "city-vehicle-training" - ) - (((game-task sewer-escort)) - "sewer-escort" - ) - (((game-task city-errol-challenge)) - "city-errol-challenge" - ) - (((game-task strip-grenade)) - "strip-grenade" - ) - (((game-task atoll-sig)) - "atoll-sig" - ) - (((game-task stadium-burning-bush-race-class1)) - "stadium-burning-bush-race-class1" - ) - (((game-task nest-boss)) - "nest-boss" - ) - (((game-task forest-hunt)) - "forest-hunt" - ) - (((game-task stadium-race-class2)) - "stadium-race-class2" - ) - (((game-task city-play-onin-game)) - "city-play-onin-game" - ) - (((game-task city-burning-bush-collection-2)) - "city-burning-bush-collection-2" - ) - (((game-task none)) - "none" - ) - (((game-task eco-yellow-button)) - "eco-yellow-button" - ) - (((game-task drill-eggs)) - "drill-eggs" - ) - (((game-task city-burning-bush-get-to-2)) - "city-burning-bush-get-to-2" - ) - (((game-task city-burning-bush-racepoint-1)) - "city-burning-bush-racepoint-1" - ) - (((game-task city-burning-bush-get-to-11)) - "city-burning-bush-get-to-11" - ) - (((game-task under-sig)) - "under-sig" - ) - (((game-task stadium-burning-bush-race-class2)) - "stadium-burning-bush-race-class2" - ) - (((game-task stadium-burning-bush-race-board)) - "stadium-burning-bush-race-board" - ) - (((game-task city-burning-bush-race-port)) - "city-burning-bush-race-port" - ) - (((game-task city-burning-bush-get-to-7)) - "city-burning-bush-get-to-7" - ) - (((game-task atoll-battle)) - "atoll-battle" - ) - (((game-task drill-mech)) - "drill-mech" - ) - (((game-task ruins-mech)) - "ruins-mech" - ) - (((game-task city-burning-bush-get-to-13)) - "city-burning-bush-get-to-13" - ) - (((game-task city-destroy-guard-vehicles)) - "city-destroy-guard-vehicles" - ) - (((game-task tomb-boss)) - "tomb-boss" - ) - (((game-task dummy0)) - "dummy0" - ) - (((game-task dig-find-totem)) - "dig-find-totem" - ) - (((game-task dig-knock-down)) - "dig-knock-down" - ) - (((game-task city-protect-water-slums)) - "city-protect-water-slums" - ) - (((game-task city-whack)) - "city-whack" - ) - (((game-task city-burning-bush-ring-3)) - "city-burning-bush-ring-3" - ) - (((game-task city-shuttle)) - "city-shuttle" - ) - (((game-task fortress-save-friends)) - "fortress-save-friends" - ) - (((game-task city-intercept-tanker)) - "city-intercept-tanker" - ) - (((game-task forest-scouts)) - "forest-scouts" - ) - (((game-task nest-get-to-gun)) - "nest-get-to-gun" - ) - (((game-task stadium-race-class)) - "stadium-race-class1" - ) - (((game-task stadium-burning-bush-race-class2-r)) - "stadium-burning-bush-race-class2-r" - ) - (((game-task palace-sneak-in)) - "palace-sneak-in" - ) - (((game-task strip-rescue)) - "strip-rescue" - ) - (((game-task city-burning-bush-get-to-1)) - "city-burning-bush-get-to-1" - ) - (((game-task consite-find-baron)) - "consite-find-baron" - ) - (((game-task city-burning-bush-get-to-3)) - "city-burning-bush-get-to-3" - ) - (((game-task stadium-board1)) - "stadium-board1" - ) - (((game-task city-burning-bush-get-to-4)) - "city-burning-bush-get-to-4" - ) - (((game-task city-burning-bush-collection-3)) - "city-burning-bush-collection-3" - ) - (((game-task city-port-run)) - "city-port-run" - ) - (((game-task sewer-board)) - "sewer-board" - ) - (((game-task city-dark-gun-training)) - "city-dark-gun-training" - ) - (((game-task city-oracle)) - "city-oracle" - ) - (((game-task city-burning-bush-collection-1)) - "city-burning-bush-collection-1" - ) - (((game-task city-keira-delivery)) - "city-keira-delivery" - ) - (((game-task city-burning-bush-get-to-6)) - "city-burning-bush-get-to-6" - ) - (((game-task mountain-lens)) - "mountain-lens" - ) - (((game-task atoll-water)) - "atoll-water" - ) - (((game-task city-stop-bomb-bots)) - "city-stop-bomb-bots" - ) - (((game-task mountain-collection)) - "mountain-collection" - ) - (((game-task nest-enter)) - "nest-enter" - ) - (((game-task city-burning-bush-get-to-9)) - "city-burning-bush-get-to-9" - ) - (((game-task mountain-shard)) - "mountain-shard" - ) - (((game-task city-power)) - "city-power" - ) - (((game-task complete)) - "complete" - ) - (((game-task palace-boss)) - "palace-boss" - ) - (((game-task castle-boss)) - "castle-boss" - ) - (((game-task city-burning-bush-get-to-8)) - "city-burning-bush-get-to-8" - ) - (((game-task city-blue-gun-training)) - "city-blue-gun-training" - ) - (((game-task fortress-escape)) - "fortress-escape" - ) - (((game-task city-red-gun-training)) - "city-red-gun-training" - ) - (((game-task city-save-lurkers)) - "city-save-lurkers" - ) - (((game-task city-krew-collection)) - "city-krew-collection" - ) - (((game-task city-burning-bush-get-to-14)) - "city-burning-bush-get-to-14" - ) - (((game-task city-meet-brutter)) - "city-meet-brutter" - ) - (else - "*unknown*" - ) - ) - ) - -;; definition for function c-string->game-task -;; WARN: Return type mismatch int vs game-task. -(defun c-string->game-task ((arg0 string)) - (the-as game-task (cond - ((string= arg0 "GAME_TASK_FOREST_PROTECT") - 60 - ) - ((string= arg0 "GAME_TASK_STRIP_DROP") - 58 - ) - ((string= arg0 "GAME_TASK_FORTRESS_DUMP") - 11 - ) - ((string= arg0 "GAME_TASK_RUINS_TOWER") - 9 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RACE_ERROL") - 101 - ) - ((string= arg0 "GAME_TASK_CANYON_INSERT_ITEMS") - 48 - ) - ((string= arg0 "GAME_TASK_CITY_WIN") - 75 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_5") - 85 - ) - ((string= arg0 "GAME_TASK_TOMB_WATER") - 50 - ) - ((string= arg0 "GAME_TASK_STADIUM_RACE_CLASS3") - 43 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RING_2") - 84 - ) - ((string= arg0 "GAME_TASK_ECO_BLUE_BUTTON") - 3 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS1_R") - 109 - ) - ((string= arg0 "GAME_TASK_RUINS_ENEMY") - 31 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_SHUTTLE_1") - 87 - ) - ((string= arg0 "GAME_TASK_ECO_RED_BUTTON") - 5 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RING_1") - 77 - ) - ((string= arg0 "GAME_TASK_CITY_KREW_DELIVERY") - 12 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS3_R") - 107 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS3") - 104 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_15") - 99 - ) - ((string= arg0 "GAME_TASK_CITY_HELP_KID") - 7 - ) - ((string= arg0 "GAME_TASK_UNDER_MECH") - 68 - ) - ((string= arg0 "GAME_TASK_CITY_ESCORT_KID") - 34 - ) - ((string= arg0 "GAME_TASK_MOUNTAIN_GEAR") - 19 - ) - ((string= arg0 "GAME_TASK_MAX") - 110 - ) - ((string= arg0 "GAME_TASK_CITY_DEFEND_STADIUM") - 70 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_12") - 95 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_BOMBBOT_1") - 96 - ) - ((string= arg0 "GAME_TASK_DRILL_SHIP") - 37 - ) - ((string= arg0 "GAME_TASK_CITY_YELLOW_GUN_TRAINING") - 25 - ) - ((string= arg0 "GAME_TASK_SEWER_ENEMY") - 15 - ) - ((string= arg0 "GAME_TASK_PALACE_CABLE") - 28 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_10") - 92 - ) - ((string= arg0 "GAME_TASK_CASTLE_BREAK_IN") - 65 - ) - ((string= arg0 "GAME_TASK_TOMB_POLES") - 49 - ) - ((string= arg0 "GAME_TASK_CITY_VEHICLE_TRAINING") - 8 - ) - ((string= arg0 "GAME_TASK_SEWER_ESCORT") - 53 - ) - ((string= arg0 "GAME_TASK_CITY_ERROL_CHALLENGE") - 57 - ) - ((string= arg0 "GAME_TASK_STRIP_GRENADE") - 36 - ) - ((string= arg0 "GAME_TASK_ATOLL_SIG") - 14 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS1") - 106 - ) - ((string= arg0 "GAME_TASK_NEST_BOSS") - 74 - ) - ((string= arg0 "GAME_TASK_FOREST_HUNT") - 41 - ) - ((string= arg0 "GAME_TASK_STADIUM_RACE_CLASS2") - 55 - ) - ((string= arg0 "GAME_TASK_CITY_PLAY_ONIN_GAME") - 47 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_COLLECTION_2") - 91 - ) - ((string= arg0 "GAME_TASK_NONE") - 0 - ) - ((string= arg0 "GAME_TASK_ECO_YELLOW_BUTTON") - 4 - ) - ((string= arg0 "GAME_TASK_DRILL_EGGS") - 26 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_2") - 79 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RACEPOINT_1") - 83 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_11") - 93 - ) - ((string= arg0 "GAME_TASK_UNDER_SIG") - 69 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS2") - 105 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_BOARD") - 103 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RACE_PORT") - 102 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_7") - 88 - ) - ((string= arg0 "GAME_TASK_ATOLL_BATTLE") - 17 - ) - ((string= arg0 "GAME_TASK_DRILL_MECH") - 61 - ) - ((string= arg0 "GAME_TASK_RUINS_MECH") - 59 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_13") - 97 - ) - ((string= arg0 "GAME_TASK_CITY_DESTROY_GUARD_VEHICLES") - 46 - ) - ((string= arg0 "GAME_TASK_TOMB_BOSS") - 51 - ) - ((string= arg0 "GAME_TASK_DUMMY0") - 2 - ) - ((string= arg0 "GAME_TASK_DIG_FIND_TOTEM") - 45 - ) - ((string= arg0 "GAME_TASK_DIG_KNOCK_DOWN") - 35 - ) - ((string= arg0 "GAME_TASK_CITY_PROTECT_WATER_SLUMS") - 44 - ) - ((string= arg0 "GAME_TASK_CITY_WHACK") - 67 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_RING_3") - 94 - ) - ((string= arg0 "GAME_TASK_CITY_SHUTTLE") - 30 - ) - ((string= arg0 "GAME_TASK_FORTRESS_SAVE_FRIENDS") - 52 - ) - ((string= arg0 "GAME_TASK_CITY_INTERCEPT_TANKER") - 42 - ) - ((string= arg0 "GAME_TASK_FOREST_SCOUTS") - 33 - ) - ((string= arg0 "GAME_TASK_NEST_GET_TO_GUN") - 72 - ) - ((string= arg0 "GAME_TASK_STADIUM_RACE_CLASS1") - 63 - ) - ((string= arg0 "GAME_TASK_STADIUM_BURNING_BUSH_RACE_CLASS2_R") - 108 - ) - ((string= arg0 "GAME_TASK_PALACE_SNEAK_IN") - 64 - ) - ((string= arg0 "GAME_TASK_STRIP_RESCUE") - 16 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_1") - 78 - ) - ((string= arg0 "GAME_TASK_CONSITE_FIND_BARON") - 71 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_3") - 80 - ) - ((string= arg0 "GAME_TASK_STADIUM_BOARD1") - 23 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_4") - 81 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_COLLECTION_3") - 100 - ) - ((string= arg0 "GAME_TASK_CITY_PORT_RUN") - 38 - ) - ((string= arg0 "GAME_TASK_SEWER_BOARD") - 40 - ) - ((string= arg0 "GAME_TASK_CITY_DARK_GUN_TRAINING") - 54 - ) - ((string= arg0 "GAME_TASK_CITY_ORACLE") - 76 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_COLLECTION_1") - 82 - ) - ((string= arg0 "GAME_TASK_CITY_KEIRA_DELIVERY") - 22 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_6") - 86 - ) - ((string= arg0 "GAME_TASK_MOUNTAIN_LENS") - 18 - ) - ((string= arg0 "GAME_TASK_ATOLL_WATER") - 10 - ) - ((string= arg0 "GAME_TASK_CITY_STOP_BOMB_BOTS") - 56 - ) - ((string= arg0 "GAME_TASK_MOUNTAIN_COLLECTION") - 21 - ) - ((string= arg0 "GAME_TASK_NEST_ENTER") - 73 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_9") - 90 - ) - ((string= arg0 "GAME_TASK_MOUNTAIN_SHARD") - 20 - ) - ((string= arg0 "GAME_TASK_CITY_POWER") - 27 - ) - ((string= arg0 "GAME_TASK_COMPLETE") - 1 - ) - ((string= arg0 "GAME_TASK_PALACE_BOSS") - 29 - ) - ((string= arg0 "GAME_TASK_CASTLE_BOSS") - 66 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_8") - 89 - ) - ((string= arg0 "GAME_TASK_CITY_BLUE_GUN_TRAINING") - 32 - ) - ((string= arg0 "GAME_TASK_FORTRESS_ESCAPE") - 6 - ) - ((string= arg0 "GAME_TASK_CITY_RED_GUN_TRAINING") - 13 - ) - ((string= arg0 "GAME_TASK_CITY_SAVE_LURKERS") - 62 - ) - ((string= arg0 "GAME_TASK_CITY_KREW_COLLECTION") - 24 - ) - ((string= arg0 "GAME_TASK_CITY_BURNING_BUSH_GET_TO_14") - 98 - ) - ((string= arg0 "GAME_TASK_CITY_MEET_BRUTTER") - 39 - ) - (else - -1 - ) - ) - ) - ) - -;; definition (debug) for function game-task-actor->string -(defun-debug game-task-actor->string ((arg0 game-task-actor)) - (case arg0 - (((game-task-actor burning-bush-genc)) - "burning-bush-genc" - ) - (((game-task-actor minimap)) - "minimap" - ) - (((game-task-actor youngsamos-tomb)) - "youngsamos-tomb" - ) - (((game-task-actor youngsamos-onintent)) - "youngsamos-onintent" - ) - (((game-task-actor baron-consite)) - "baron-consite" - ) - (((game-task-actor burning-bush-markb)) - "burning-bush-markb" - ) - (((game-task-actor keira-garage)) - "keira-garage" - ) - (((game-task-actor burning-bush-genc-2)) - "burning-bush-genc-2" - ) - (((game-task-actor samos-garage)) - "samos-garage" - ) - (((game-task-actor kid-hideout)) - "kid-hideout" - ) - (((game-task-actor krew-hiphog)) - "krew-hiphog" - ) - (((game-task-actor burning-bush-port-2)) - "burning-bush-port-2" - ) - (((game-task-actor none)) - "none" - ) - (((game-task-actor burning-bush-port-3)) - "burning-bush-port-3" - ) - (((game-task-actor brutter-kiosk)) - "brutter-kiosk" - ) - (((game-task-actor tess-alley)) - "tess-alley" - ) - (((game-task-actor whack-a-metal-hiphog)) - "whack-a-metal-hiphog" - ) - (((game-task-actor burning-bush-gena)) - "burning-bush-gena" - ) - (((game-task-actor vin-vinroom)) - "vin-vinroom" - ) - (((game-task-actor kor-hideout)) - "kor-hideout" - ) - (((game-task-actor burning-bush-pal-2)) - "burning-bush-pal-2" - ) - (((game-task-actor kid-alley)) - "kid-alley" - ) - (((game-task-actor burning-bush-stadium)) - "burning-bush-stadium" - ) - (((game-task-actor ashelin-market)) - "ashelin-market" - ) - (((game-task-actor kid-tomb)) - "kid-tomb" - ) - (((game-task-actor burning-bush-farma)) - "burning-bush-farma" - ) - (((game-task-actor baron-tomb)) - "baron-tomb" - ) - (((game-task-actor burning-bush-slumc)) - "burning-bush-slumc" - ) - (((game-task-actor burning-bush-slumb-2)) - "burning-bush-slumb-2" - ) - (((game-task-actor baron-palace)) - "baron-palace" - ) - (((game-task-actor crocadog-alley)) - "crocadog-alley" - ) - (((game-task-actor baron-castle)) - "baron-castle" - ) - (((game-task-actor crocadog-vinroom)) - "crocadog-vinroom" - ) - (((game-task-actor burning-bush-gena-2)) - "burning-bush-gena-2" - ) - (((game-task-actor daxter-tomb)) - "daxter-tomb" - ) - (((game-task-actor burning-bush-port)) - "burning-bush-port" - ) - (((game-task-actor burning-bush-marka)) - "burning-bush-marka" - ) - (((game-task-actor crocadog-tomb)) - "crocadog-tomb" - ) - (((game-task-actor keira-stadium)) - "keira-stadium" - ) - (((game-task-actor sig-hiphog)) - "sig-hiphog" - ) - (((game-task-actor youngsamos-hideout)) - "youngsamos-hideout" - ) - (((game-task-actor burning-bush-genb-2)) - "burning-bush-genb-2" - ) - (((game-task-actor burning-bush-inda)) - "burning-bush-inda" - ) - (((game-task-actor kor-tomb)) - "kor-tomb" - ) - (((game-task-actor kor-consite)) - "kor-consite" - ) - (((game-task-actor torn-hideout)) - "torn-hideout" - ) - (((game-task-actor onin-onintent)) - "onin-onintent" - ) - (((game-task-actor kor-alley)) - "kor-alley" - ) - (((game-task-actor kid-vinroom)) - "kid-vinroom" - ) - (((game-task-actor ashelin-atoll)) - "ashelin-atoll" - ) - (((game-task-actor burning-bush-sluma)) - "burning-bush-sluma" - ) - (((game-task-actor burning-bush-slumb)) - "burning-bush-slumb" - ) - (((game-task-actor youngsamos-alley)) - "youngsamos-alley" - ) - (((game-task-actor youngsamos-forest)) - "youngsamos-forest" - ) - (((game-task-actor samos-hideout)) - "samos-hideout" - ) - (((game-task-actor burning-bush-genb)) - "burning-bush-genb" - ) - (((game-task-actor oracle-oracle)) - "oracle-oracle" - ) - (((game-task-actor torn-alley)) - "torn-alley" - ) - (((game-task-actor kor-onintent)) - "kor-onintent" - ) - (((game-task-actor tess-hiphog)) - "tess-hiphog" - ) - (((game-task-actor burning-bush-markb-2)) - "burning-bush-markb-2" - ) - (((game-task-actor ashelin-throne)) - "ashelin-throne" - ) - (((game-task-actor burning-bush-indb)) - "burning-bush-indb" - ) - (((game-task-actor pecker-onintent)) - "pecker-onintent" - ) - (((game-task-actor kor-vinroom)) - "kor-vinroom" - ) - (((game-task-actor sig-atoll)) - "sig-atoll" - ) - (((game-task-actor burning-bush-pal)) - "burning-bush-pal" - ) - (((game-task-actor burning-bush-farmb)) - "burning-bush-farmb" - ) - (else - "*unknown*" - ) - ) - ) - -;; definition (debug) for function game-task-action->string -(defun-debug game-task-action->string ((arg0 game-task-action)) - (case arg0 - (((game-task-action idle)) - "idle" - ) - (((game-task-action play)) - "play" - ) - (((game-task-action show)) - "show" - ) - (((game-task-action talk)) - "talk" - ) - (((game-task-action hide)) - "hide" - ) - (((game-task-action say)) - "say" - ) - (((game-task-action shade)) - "trade" - ) - (((game-task-action menu)) - "menu" - ) - (else - "*unknown*" - ) - ) - ) - -;; definition of type game-task-event -(deftype game-task-event (basic) - ((actor game-task-actor :offset-assert 4) - (action game-task-action :offset-assert 5) - (icon game-task-icon :offset 6) - (flags game-task-flags :offset 7) - (scene basic :offset 8) - (distance meters :offset-assert 12) - ) - :method-count-assert 9 - :size-assert #x10 - :flag-assert #x900000010 - ) - -;; definition for method 3 of type game-task-event -(defmethod inspect game-task-event ((obj game-task-event)) - (when (not obj) - (set! obj obj) - (goto cfg-4) - ) - (format #t "[~8x] ~A~%" obj (-> obj type)) - (format #t "~1Tactor: #x~X : ~S~%" (-> obj actor) (game-task-actor->string (-> obj actor))) - (format #t "~1Taction: #x~X : ~S~%" (-> obj action) (game-task-action->string (-> obj action))) - (format #t "~1Tflags: ~D~%" (-> obj flags)) - (format #t "~1Ticon: ~D~%" (-> obj icon)) - (format #t "~1Tscene: ~A~%" (-> obj scene)) - (format #t "~1Tdistance: (meters ~m)~%" (-> obj distance)) - (label cfg-4) - obj - ) - -;; definition of type task-manager-info -(deftype task-manager-info (structure) - ((mask task-manager-mask :offset-assert 0) - (level basic :offset-assert 4) - (manager handle :offset-assert 8) - (fail-message uint32 :offset-assert 16) - (retry-message uint32 :offset-assert 20) - (intro-scene basic :offset-assert 24) - (resolution-scene basic :offset-assert 28) - (resolution-scene-continue basic :offset-assert 32) - (retry-continue basic :offset-assert 36) - (fail-continue basic :offset-assert 40) - (init-hook basic :offset-assert 44) - (cleanup-hook basic :offset-assert 48) - (update-hook basic :offset-assert 52) - (code-hook basic :offset-assert 56) - (complete-hook basic :offset-assert 60) - (fail-hook basic :offset-assert 64) - (event-hook basic :offset-assert 68) - (final-node uint16 :offset-assert 72) - (time-limit int32 :offset-assert 76) - (sphere-count int8 :offset-assert 80) - (index int8 :offset-assert 81) - (intro-delay uint16 :offset-assert 82) - (sphere-array uint32 :offset-assert 84) - (on-complete basic :offset-assert 88) - (on-fail basic :offset-assert 92) - (begin-sphere sphere :inline :offset-assert 96) - (end-sphere sphere :inline :offset-assert 112) - ) - :method-count-assert 9 - :size-assert #x80 - :flag-assert #x900000080 - ) - -;; definition for method 3 of type task-manager-info -(defmethod inspect task-manager-info ((obj task-manager-info)) - (when (not obj) - (set! obj obj) - (goto cfg-16) - ) - (format #t "[~8x] ~A~%" obj 'task-manager-info) - (format #t "~1Tmask: #x~X : (task-manager-mask " (-> obj mask)) - (let ((s5-0 (-> obj mask))) - (if (= (logand s5-0 (task-manager-mask intro-scene)) (task-manager-mask intro-scene)) - (format #t "intro-scene ") - ) - (if (= (logand s5-0 (task-manager-mask resolution-scene)) (task-manager-mask resolution-scene)) - (format #t "resolution-scene ") - ) - (if (= (logand s5-0 (task-manager-mask fail-message)) (task-manager-mask fail-message)) - (format #t "fail-message ") - ) - (if (= (logand s5-0 (task-manager-mask begin-sphere)) (task-manager-mask begin-sphere)) - (format #t "begin-sphere ") - ) - (if (= (logand s5-0 (task-manager-mask retry-message)) (task-manager-mask retry-message)) - (format #t "retry-message ") - ) - (if (= (logand s5-0 (task-manager-mask end-sphere)) (task-manager-mask end-sphere)) - (format #t "end-sphere ") - ) - ) - (format #t ")~%") - (format #t "~1Tlevel: ~A~%" (-> obj level)) - (format #t "~1Tmanager: ~`handle`P~%" (-> obj manager)) - (format #t "~1Tfail-message: ~D~%" (-> obj fail-message)) - (format #t "~1Tretry-message: ~D~%" (-> obj retry-message)) - (format #t "~1Tintro-scene: ~A~%" (-> obj intro-scene)) - (format #t "~1Tresolution-scene: ~A~%" (-> obj resolution-scene)) - (format #t "~1Tresolution-scene-continue: ~A~%" (-> obj resolution-scene-continue)) - (format #t "~1Tretry-continue: ~A~%" (-> obj retry-continue)) - (format #t "~1Tfail-continue: ~A~%" (-> obj fail-continue)) - (format #t "~1Tinit-hook: ~A~%" (-> obj init-hook)) - (format #t "~1Tcleanup-hook: ~A~%" (-> obj cleanup-hook)) - (format #t "~1Tupdate-hook: ~A~%" (-> obj update-hook)) - (format #t "~1Tcode-hook: ~A~%" (-> obj code-hook)) - (format #t "~1Tcomplete-hook: ~A~%" (-> obj complete-hook)) - (format #t "~1Tfail-hook: ~A~%" (-> obj fail-hook)) - (format #t "~1Tevent-hook: ~A~%" (-> obj event-hook)) - (format #t "~1Tfinal-node: ~D~%" (-> obj final-node)) - (format #t "~1Ttime-limit: ~D~%" (-> obj time-limit)) - (format #t "~1Tsphere-count: ~D~%" (-> obj sphere-count)) - (format #t "~1Tindex: ~D~%" (-> obj index)) - (format #t "~1Tintro-delay: ~D~%" (-> obj intro-delay)) - (format #t "~1Tsphere-array: #x~X~%" (-> obj sphere-array)) - (format #t "~1Ton-complete: ~A~%" (-> obj on-complete)) - (format #t "~1Ton-fail: ~A~%" (-> obj on-fail)) - (format #t "~1Tbegin-sphere: #~%" (-> obj begin-sphere)) - (format #t "~1Tend-sphere: #~%" (-> obj end-sphere)) - (label cfg-16) - obj - ) - -;; definition (debug) for function game-task-node-flag->string -;; WARN: Return type mismatch object vs none. -(defun-debug game-task-node-flag->string ((arg0 game-task-node-flag)) - (if (= (logand arg0 (game-task-node-flag clear-task-mask)) (game-task-node-flag clear-task-mask)) - (format #t "clear-task-mask ") - ) - (if (= (logand arg0 (game-task-node-flag city-wait)) (game-task-node-flag city-wait)) - (format #t "city-wait ") - ) - (if (= (logand arg0 (game-task-node-flag intro-wait)) (game-task-node-flag intro-wait)) - (format #t "intro-wait ") - ) - (if (= (logand arg0 (game-task-node-flag task-manager)) (game-task-node-flag task-manager)) - (format #t "task-manager ") - ) - (if (= (logand arg0 (game-task-node-flag task-retry)) (game-task-node-flag task-retry)) - (format #t "task-retry ") - ) - (if (= (logand arg0 (game-task-node-flag reset-on-try)) (game-task-node-flag reset-on-try)) - (format #t "reset-on-try ") - ) - (if (= (logand arg0 (game-task-node-flag exclusive)) (game-task-node-flag exclusive)) - (format #t "exclusive ") - ) - (if (= (logand (game-task-node-flag utility-node) arg0) (game-task-node-flag utility-node)) - (format #t "utility-node ") - ) - (if (= (logand arg0 (game-task-node-flag set-task-mask)) (game-task-node-flag set-task-mask)) - (format #t "set-task-mask ") - ) - (if (= (logand arg0 (game-task-node-flag closed)) (game-task-node-flag closed)) - (format #t "closed ") - ) - (if (= (logand arg0 (game-task-node-flag no-fail-on-death)) (game-task-node-flag no-fail-on-death)) - (format #t "no-fail-on-death ") - ) - (if (= (logand arg0 (game-task-node-flag data)) (game-task-node-flag data)) - (format #t "data ") - ) - (if (= (logand arg0 (game-task-node-flag save-on-life)) (game-task-node-flag save-on-life)) - (format #t "save-on-life ") - ) - (if (= (logand arg0 (game-task-node-flag close-task)) (game-task-node-flag close-task)) - (format #t "close-task ") - ) - (if (= (logand arg0 (game-task-node-flag save-on-try)) (game-task-node-flag save-on-try)) - (format #t "save-on-try ") - ) - (if (= (logand arg0 (game-task-node-flag auto-close)) (game-task-node-flag auto-close)) - (format #t "auto-close ") - ) - (if (= (logand (game-task-node-flag no-slow-down) arg0) (game-task-node-flag no-slow-down)) - (format #t "no-slow-down ") - ) - (if (= (logand arg0 (game-task-node-flag abs-task-mask)) (game-task-node-flag abs-task-mask)) - (format #t "abs-task-mask ") - ) - (if (= (logand (game-task-node-flag no-restart) arg0) (game-task-node-flag no-restart)) - (format #t "no-restart ") - ) - (if (= (logand (game-task-node-flag no-audio) arg0) (game-task-node-flag no-audio)) - (format #t "no-audio ") - ) - (none) - ) - -;; definition (debug) for function game-task-node-command->string -(defun-debug game-task-node-command->string ((arg0 game-task-node-command)) - (case arg0 - (((game-task-node-command add-gun-up-1)) - "add-gun-up-1" - ) - (((game-task-node-command add-darkjak-1)) - "add-darkjak-1" - ) - (((game-task-node-command add-pass-yellow)) - "add-pass-yellow" - ) - (((game-task-node-command add-pass-red)) - "add-pass-red" - ) - (((game-task-node-command sub-board)) - "sub-board" - ) - (((game-task-node-command add-board)) - "add-board" - ) - (((game-task-node-command add-darkjak)) - "add-darkjak" - ) - (((game-task-node-command add-darkjak-2)) - "add-darkjak-2" - ) - (((game-task-node-command add-gun-up-3)) - "add-gun-up-3" - ) - (((game-task-node-command add-gun-up-2)) - "add-gun-up-2" - ) - (((game-task-node-command add-darkjak-3)) - "add-darkjak-3" - ) - (((game-task-node-command add-darkjak-0)) - "add-darkjak-0" - ) - (((game-task-node-command add-gun-blue)) - "add-gun-blue" - ) - (((game-task-node-command add-gun-yellow)) - "add-gun-yellow" - ) - (((game-task-node-command none)) - "none" - ) - (((game-task-node-command add-gun-dark)) - "add-gun-dark" - ) - (((game-task-node-command add-pass-green)) - "add-pass-green" - ) - (((game-task-node-command add-board-training)) - "add-board-training" - ) - (((game-task-node-command add-gun-up-4)) - "add-gun-up-4" - ) - (((game-task-node-command add-gun-red)) - "add-gun-red" - ) - (((game-task-node-command add-pass-blue)) - "add-pass-blue" - ) - (((game-task-node-command sub-sidekick)) - "sub-sidekick" - ) - (((game-task-node-command add-sidekick)) - "add-sidekick" - ) - (else - "*unknown*" - ) - ) - ) - -;; definition of type game-task-node-info -(deftype game-task-node-info (basic) - ((level basic :offset-assert 4) - (task game-task :offset-assert 8) - (name string :offset-assert 12) - (when-open array :offset-assert 16) - (flags game-task-node-flag :offset-assert 20) - (parent-node uint16 4 :offset-assert 24) - (task-mask task-mask :offset-assert 32) - (on-open basic :offset-assert 36) - (info task-manager-info :offset-assert 40) - (borrow basic :offset-assert 44) - (open? symbol :offset-assert 48) - (on-close basic :offset-assert 52) - (close-time time-frame :offset-assert 56) - (death-count uint16 :offset-assert 64) - (gem-count uint16 :offset-assert 66) - (skill-count uint16 :offset-assert 68) - (suck-death-count uint8 :offset-assert 70) - (add game-task-node-command :offset-assert 71) - (description uint32 :offset-assert 72) - ) - :method-count-assert 14 - :size-assert #x4c - :flag-assert #xe0000004c - (:methods - (dummy-9 () none 9) - (dummy-10 () none 10) - (dummy-11 () none 11) - (dummy-12 () none 12) - (dummy-13 () none 13) - ) - ) - -;; definition for method 3 of type game-task-node-info -(defmethod inspect game-task-node-info ((obj game-task-node-info)) - (when (not obj) - (set! obj obj) - (goto cfg-45) - ) - (format #t "[~8x] ~A~%" obj (-> obj type)) - (format #t "~1Tlevel: ~A~%" (-> obj level)) - (format #t "~1Ttask: #x~X : ~S~%" (-> obj task) (game-task->string (-> obj task))) - (format #t "~1Tname: ~A~%" (-> obj name)) - (format #t "~1Twhen-open: ~A~%" (-> obj when-open)) - (format #t "~1Tflags: #x~X : (game-task-node-flag " (-> obj flags)) - (game-task-node-flag->string (-> obj flags)) - (format #t ")~%") - (format #t "~1Tparent-node[4] @ #x~X~%" (-> obj parent-node)) - (dotimes (s5-1 4) - (format #t "~T [~D]~1Tparent-node: ~D~%" s5-1 (-> obj parent-node s5-1)) - ) - (format #t "~1Ttask-mask: #x~X : (task-mask " (-> obj task-mask)) - (let ((s5-2 (-> obj task-mask))) - (if (= (logand s5-2 (task-mask task0)) (task-mask task0)) - (format #t "task0 ") - ) - (if (= (logand s5-2 (task-mask task2)) (task-mask task2)) - (format #t "task2 ") - ) - (if (= (logand s5-2 (task-mask task4)) (task-mask task4)) - (format #t "task4 ") - ) - (if (= (logand s5-2 (task-mask task6)) (task-mask task6)) - (format #t "task6 ") - ) - (if (= (logand s5-2 (task-mask ctywide)) (task-mask ctywide)) - (format #t "ctywide ") - ) - (if (= (logand s5-2 (task-mask never)) (task-mask never)) - (format #t "never ") - ) - (if (= (logand (task-mask movie1) s5-2) (task-mask movie1)) - (format #t "movie1 ") - ) - (if (= (logand s5-2 (task-mask dummy1)) (task-mask dummy1)) - (format #t "dummy1 ") - ) - (if (= (logand s5-2 (task-mask primary0)) (task-mask primary0)) - (format #t "primary0 ") - ) - (if (= (logand s5-2 (task-mask task1)) (task-mask task1)) - (format #t "task1 ") - ) - (if (= (logand s5-2 (task-mask task3)) (task-mask task3)) - (format #t "task3 ") - ) - (if (= (logand s5-2 (task-mask task5)) (task-mask task5)) - (format #t "task5 ") - ) - (if (= (logand s5-2 (task-mask task7)) (task-mask task7)) - (format #t "task7 ") - ) - (if (= (logand (task-mask movie2) s5-2) (task-mask movie2)) - (format #t "movie2 ") - ) - (if (= (logand s5-2 (task-mask dummy2)) (task-mask dummy2)) - (format #t "dummy2 ") - ) - (if (= (logand s5-2 (task-mask done)) (task-mask done)) - (format #t "done ") - ) - (if (= (logand s5-2 (task-mask special)) (task-mask special)) - (format #t "special ") - ) - (if (= (logand (task-mask movie0) s5-2) (task-mask movie0)) - (format #t "movie0 ") - ) - (if (= (logand s5-2 (task-mask dummy0)) (task-mask dummy0)) - (format #t "dummy0 ") - ) - ) - (format #t ")~%") - (format #t "~1Ton-open: ~A~%" (-> obj on-open)) - (format #t "~1Tinfo: #~%" (-> obj info)) - (format #t "~1Tborrow: ~A~%" (-> obj borrow)) - (format #t "~1Topen?: ~A~%" (-> obj open?)) - (format #t "~1Ton-close: ~A~%" (-> obj on-close)) - (format #t "~1Tclose-time: ~D~%" (-> obj close-time)) - (format #t "~1Tdeath-count: ~D~%" (-> obj death-count)) - (format #t "~1Tgem-count: ~D~%" (-> obj gem-count)) - (format #t "~1Tskill-count: ~D~%" (-> obj skill-count)) - (format #t "~1Tsuck-death-count: ~D~%" (-> obj suck-death-count)) - (format #t "~1Tadd: #x~X : ~S~%" (-> obj add) (game-task-node-command->string (-> obj add))) - (format #t "~1Tdescription: ~D~%" (-> obj description)) - (label cfg-45) - obj - ) - -;; definition of type game-task-info -(deftype game-task-info (basic) - ((name string :offset-assert 4) - (text-name uint32 :offset-assert 8) - (pre-play-node uint16 :offset-assert 12) - (kiosk-play-node uint16 :offset-assert 14) - (pre-play-continue string :offset-assert 16) - (play-node uint16 :offset-assert 20) - (play-continue string :offset-assert 24) - (kiosk-play-continue string :offset-assert 28) - ) - :method-count-assert 9 - :size-assert #x20 - :flag-assert #x900000020 - ) - -;; definition for method 3 of type game-task-info -(defmethod inspect game-task-info ((obj game-task-info)) - (when (not obj) - (set! obj obj) - (goto cfg-4) - ) - (format #t "[~8x] ~A~%" obj (-> obj type)) - (format #t "~1Tname: ~A~%" (-> obj name)) - (format #t "~1Ttext-name: ~D~%" (-> obj text-name)) - (format #t "~1Tpre-play-node: ~D~%" (-> obj pre-play-node)) - (format #t "~1Tkiosk-play-node: ~D~%" (-> obj kiosk-play-node)) - (format #t "~1Tpre-play-continue: ~A~%" (-> obj pre-play-continue)) - (format #t "~1Tplay-node: ~D~%" (-> obj play-node)) - (format #t "~1Tplay-continue: ~A~%" (-> obj play-continue)) - (format #t "~1Tkiosk-play-continue: ~A~%" (-> obj kiosk-play-continue)) - (label cfg-4) - obj - ) - -;; definition of type game-task-control -(deftype game-task-control (basic) - ((counter uint32 :offset-assert 4) - (actor game-task-actor :offset-assert 8) - (current-node uint16 :offset-assert 10) - (current-event uint32 :offset-assert 12) - ) - :method-count-assert 10 - :size-assert #x10 - :flag-assert #xa00000010 - (:methods - (dummy-9 () none 9) - ) - ) - -;; definition for method 3 of type game-task-control -(defmethod inspect game-task-control ((obj game-task-control)) - (when (not obj) - (set! obj obj) - (goto cfg-4) - ) - (format #t "[~8x] ~A~%" obj (-> obj type)) - (format #t "~1Tcounter: ~D~%" (-> obj counter)) - (format #t "~1Tactor: #x~X : ~S~%" (-> obj actor) (game-task-actor->string (-> obj actor))) - (format #t "~1Tcurrent-node: ~D~%" (-> obj current-node)) - (format #t "~1Tcurrent-event: ~A~%" (-> obj current-event)) - (label cfg-4) - obj - ) - -;; definition of type task-manager -(deftype task-manager (process) - ((node-info basic :offset-assert 128) - (info task-manager-info :offset-assert 132) - (lev-name basic :offset-assert 136) - (fail-on-death? symbol :offset-assert 140) - (fail-now basic :offset-assert 144) - (retry-now basic :offset-assert 148) - (allow-fail basic :offset-assert 152) - (state-time time-frame :offset-assert 160) - (count int16 :offset-assert 168) - (max-count int16 :offset-assert 170) - (sub-state uint32 :offset-assert 172) - (slave uint64 32 :offset-assert 176) - (arrow uint64 :offset-assert 432) - (link uint32 :offset-assert 440) - (start-time time-frame :offset-assert 448) - (total-time time-frame :offset-assert 456) - (beep-time time-frame :offset-assert 464) - (time-limit time-frame :offset-assert 472) - (begin-pos vector :inline :offset-assert 480) - (end-pos vector :inline :offset-assert 496) - (data-int8 int8 32 :offset-assert 512) - (data-int32 int32 32 :offset-assert 544) - (data-float float 32 :offset-assert 672) - (data-vector vector 32 :inline :offset-assert 800) - (actor-group uint32 4 :offset-assert 1312) - (minimap uint32 8 :offset-assert 1328) - (hud uint64 4 :offset-assert 1360) - (hud-timer time-frame :offset 1360) - (hud-counter int64 :offset 1368) - (sound-id uint32 4 :offset-assert 1392) - (intro-time time-frame :offset-assert 1408) - ) - :heap-base #x510 - :method-count-assert 23 - :size-assert #x588 - :flag-assert #x1705100588 - (:methods - (dummy-14 () none 14) - (dummy-15 () none 15) - (dummy-16 () none 16) - (dummy-17 () none 17) - (dummy-18 () none 18) - (dummy-19 () none 19) - (dummy-20 () none 20) - (dummy-21 () none 21) - (dummy-22 () none 22) - ) - ) - -;; definition for method 3 of type task-manager -(defmethod inspect task-manager ((obj task-manager)) - (when (not obj) - (set! obj obj) - (goto cfg-4) - ) - (let ((t9-0 (method-of-type process inspect))) - (t9-0 obj) - ) - (format #t "~2Tnode-info: ~A~%" (-> obj node-info)) - (format #t "~2Tinfo: #~%" (-> obj info)) - (format #t "~2Tlev-name: ~A~%" (-> obj lev-name)) - (format #t "~2Tfail-on-death?: ~A~%" (-> obj fail-on-death?)) - (format #t "~2Tfail-now: ~A~%" (-> obj fail-now)) - (format #t "~2Tretry-now: ~A~%" (-> obj retry-now)) - (format #t "~2Tallow-fail: ~A~%" (-> obj allow-fail)) - (format #t "~2Tstate-time: ~D~%" (-> obj state-time)) - (format #t "~2Tcount: ~D~%" (-> obj count)) - (format #t "~2Tmax-count: ~D~%" (-> obj max-count)) - (format #t "~2Tsub-state: ~D~%" (-> obj sub-state)) - (format #t "~2Tslave[32] @ #x~X~%" (-> obj slave)) - (format #t "~2Tarrow: ~D~%" (-> obj arrow)) - (format #t "~2Tlink: ~A~%" (-> obj link)) - (format #t "~2Tstart-time: ~D~%" (-> obj start-time)) - (format #t "~2Ttotal-time: ~D~%" (-> obj total-time)) - (format #t "~2Tbeep-time: ~D~%" (-> obj beep-time)) - (format #t "~2Ttime-limit: ~D~%" (-> obj time-limit)) - (format #t "~2Tbegin-pos: #~%" (-> obj begin-pos)) - (format #t "~2Tend-pos: #~%" (-> obj end-pos)) - (format #t "~2Tdata-int8[32] @ #x~X~%" (-> obj data-int8)) - (format #t "~2Tdata-int32[32] @ #x~X~%" (-> obj data-int32)) - (format #t "~2Tdata-float[32] @ #x~X~%" (-> obj data-float)) - (format #t "~2Tdata-vector[32] @ #x~X~%" (-> obj data-vector)) - (format #t "~2Tactor-group[4] @ #x~X~%" (-> obj actor-group)) - (format #t "~2Tminimap[8] @ #x~X~%" (-> obj minimap)) - (format #t "~2Thud[4] @ #x~X~%" (-> obj hud)) - (format #t "~2Thud-timer: ~D~%" (-> obj hud-timer)) - (format #t "~2Thud-counter: ~D~%" (-> obj hud-counter)) - (format #t "~2Tsound-id[4] @ #x~X~%" (-> obj sound-id)) - (format #t "~2Tintro-time: ~D~%" (-> obj intro-time)) - (label cfg-4) - obj - ) - -;; definition of type ambient-control -(deftype ambient-control (structure) - ((last-ambient-time time-frame :offset-assert 0) - (last-ambient string :offset-assert 8) - (last-ambient-id sound-id :offset-assert 12) - ) - :method-count-assert 12 - :size-assert #x10 - :flag-assert #xc00000010 - (:methods - (dummy-9 () none 9) - (dummy-10 () none 10) - (dummy-11 () none 11) - ) - ) - -;; definition for method 3 of type ambient-control -(defmethod inspect ambient-control ((obj ambient-control)) - (when (not obj) - (set! obj obj) - (goto cfg-4) - ) - (format #t "[~8x] ~A~%" obj 'ambient-control) - (format #t "~1Tlast-ambient-time: ~D~%" (-> obj last-ambient-time)) - (format #t "~1Tlast-ambient: ~A~%" (-> obj last-ambient)) - (format #t "~1Tlast-ambient-id: ~D~%" (-> obj last-ambient-id)) - (label cfg-4) - obj - ) - -;; definition for symbol *traffic-engine*, type object -(define *traffic-engine* (the-as object #f)) - -;; failed to figure out what this is: -0 diff --git a/test/decompiler/reference/jak2/engine/ui/bigmap-h_REF.gc b/test/decompiler/reference/jak2/engine/ui/bigmap-h_REF.gc index 8e8fabe5c5..85e176f5c5 100644 --- a/test/decompiler/reference/jak2/engine/ui/bigmap-h_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/bigmap-h_REF.gc @@ -231,7 +231,7 @@ (new (symbol type) _type_ 0) (initialize (_type_) none 9) (update (_type_) none 10) - (bigmap-method-11 () none 11) + (bigmap-method-11 (_type_ int int int int) none 11) (bigmap-method-12 () none 12) (bigmap-method-13 () none 13) (bigmap-method-14 (_type_) none 14) diff --git a/test/decompiler/reference/jak2/engine/ui/hud-h_REF.gc b/test/decompiler/reference/jak2/engine/ui/hud-h_REF.gc index 2a6ce56b92..fb4bd0e486 100644 --- a/test/decompiler/reference/jak2/engine/ui/hud-h_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/hud-h_REF.gc @@ -82,8 +82,8 @@ (hud-box-method-11 () none 11) (hud-box-method-12 () none 12) (hud-box-method-13 (_type_ dma-buffer float) int 13) - (hud-box-method-14 () none 14) - (hud-box-method-15 () none 15) + (hud-box-method-14 (_type_) none 14) + (hud-box-method-15 (_type_) none 15) ) ) diff --git a/test/decompiler/reference/jak2/engine/ui/progress/progress-draw_REF.gc b/test/decompiler/reference/jak2/engine/ui/progress/progress-draw_REF.gc index 7e6019e1e9..3a24cc360a 100644 --- a/test/decompiler/reference/jak2/engine/ui/progress/progress-draw_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/progress/progress-draw_REF.gc @@ -117,7 +117,7 @@ (set! (-> a0-5 flags) (font-flags kerning middle large)) ) (if (< (mod (-> self clock frame-counter) 300) 210) - (print-game-text (lookup-text! *common-text* (game-text-id progress-busy-loading-TODO) #f) arg0 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-loading-data) #f) arg0 #f 44 320) ) ) @@ -158,7 +158,7 @@ ) (set! sv-16 "~C~S") (set! sv-32 163) - (let ((a3-0 (lookup-text! *common-text* (game-text-id progress-1kj2n3kj1n23) #f))) + (let ((a3-0 (lookup-text! *common-text* (game-text-id progress-next) #f))) (s1-0 s0-0 sv-16 sv-32 a3-0) ) ) @@ -172,7 +172,7 @@ ) (+! (-> arg1 origin x) (the float s3-0)) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) "~S~C" (lookup-text! *common-text* (game-text-id progress-1kj2n3kj1n23) #f) 161) + (format (clear *temp-string*) "~S~C" (lookup-text! *common-text* (game-text-id progress-next) #f) 161) (s5-1 *temp-string* arg1 #f 44 320) ) ) @@ -275,31 +275,31 @@ ;; definition for function begin-scissor ;; WARN: Return type mismatch int vs none. -(defun begin-scissor ((arg0 vector) (arg1 progress)) +(defun begin-scissor ((arg0 hud-box) (arg1 progress)) (cond ((or (= (-> arg1 current) 'bigmap) (= (-> arg1 next) 'bigmap)) - (set! (-> arg0 x) 0.0) - (set! (-> arg0 y) 0.0) - (set! (-> arg0 z) 512.0) - (set! (-> arg0 w) 416.0) + (set! (-> arg0 min x) 0.0) + (set! (-> arg0 min y) 0.0) + (set! (-> arg0 max x) 512.0) + (set! (-> arg0 max y) 416.0) ) ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 38.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 362.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 38.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 362.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 70.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 329.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 70.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 329.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-23 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-23) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -321,11 +321,11 @@ ;; definition for function end-scissor ;; WARN: Return type mismatch int vs none. -(defun end-scissor () +(defun end-scissor ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -347,25 +347,25 @@ ;; definition for function begin-scissor-secret ;; WARN: Return type mismatch int vs none. -(defun begin-scissor-secret ((arg0 vector)) +(defun begin-scissor-secret ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 190.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 315.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 190.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 315.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 173.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 304.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 173.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 304.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -387,11 +387,11 @@ ;; definition for function end-scissor-secret ;; WARN: Return type mismatch int vs none. -(defun end-scissor-secret () +(defun end-scissor-secret ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -413,25 +413,25 @@ ;; definition for function begin-scissor-missions ;; WARN: Return type mismatch int vs none. -(defun begin-scissor-missions ((arg0 vector) (arg1 float)) +(defun begin-scissor-missions ((arg0 hud-box) (arg1 float)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 130.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 305.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 130.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 305.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 130.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 305.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 130.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 305.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -453,11 +453,11 @@ ;; definition for function end-scissor-missions ;; WARN: Return type mismatch int vs none. -(defun end-scissor-missions ((arg0 vector)) +(defun end-scissor-missions ((arg0 hud-box)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -479,25 +479,25 @@ ;; definition for function begin-scissor-scene ;; WARN: Return type mismatch int vs none. -(defun begin-scissor-scene ((arg0 vector)) +(defun begin-scissor-scene ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 118.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 294.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 118.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 294.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 116.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 295.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 116.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 295.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -519,11 +519,11 @@ ;; definition for function end-scissor-scene ;; WARN: Return type mismatch int vs none. -(defun end-scissor-scene () +(defun end-scissor-scene ((arg0 hud-box) (arg1 float)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -545,25 +545,25 @@ ;; definition for function begin-scissor-level ;; WARN: Return type mismatch int vs none. -(defun begin-scissor-level ((arg0 vector)) +(defun begin-scissor-level ((arg0 hud-box)) (cond ((= (get-aspect-ratio) 'aspect16x9) - (set! (-> arg0 x) 79.0) - (set! (-> arg0 y) 118.0) - (set! (-> arg0 z) 434.0) - (set! (-> arg0 w) 294.0) + (set! (-> arg0 min x) 79.0) + (set! (-> arg0 min y) 118.0) + (set! (-> arg0 max x) 434.0) + (set! (-> arg0 max y) 294.0) ) (else - (set! (-> arg0 x) 70.0) - (set! (-> arg0 y) 116.0) - (set! (-> arg0 z) 444.0) - (set! (-> arg0 w) 295.0) + (set! (-> arg0 min x) 70.0) + (set! (-> arg0 min y) 116.0) + (set! (-> arg0 max x) 444.0) + (set! (-> arg0 max y) 295.0) ) ) (let* ((s4-0 (-> *display* frames (-> *display* on-screen) global-buf)) (s5-1 (-> s4-0 base)) ) - ((method-of-type hud-box hud-box-method-14)) + (hud-box-method-14 arg0) (let ((a3-0 (-> s4-0 base))) (let ((v1-17 (the-as object (-> s4-0 base)))) (set! (-> (the-as dma-packet v1-17) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -585,11 +585,11 @@ ;; definition for function end-scissor-level ;; WARN: Return type mismatch int vs none. -(defun end-scissor-level () +(defun end-scissor-level ((arg0 hud-box)) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) - ((method-of-type hud-box hud-box-method-15)) + (hud-box-method-15 arg0) (let ((a3-0 (-> s5-0 base))) (let ((v1-7 (the-as object (-> s5-0 base)))) (set! (-> (the-as dma-packet v1-7) dma) (new 'static 'dma-tag :id (dma-tag-id next))) @@ -631,31 +631,32 @@ ) ;; definition for function unlocked-secret-menu? +;; WARN: Return type mismatch symbol vs int. ;; ERROR: Function may read a register that is not set: a0 (defun unlocked-secret-menu? () (local-vars (a0-0 none)) - (or (logtest? (the-as int a0-0) 32) - (logtest? (the-as int a0-0) 64) - (logtest? (the-as int a0-0) 128) - (logtest? (the-as int a0-0) 256) - (logtest? (the-as int a0-0) 512) - (logtest? (the-as int a0-0) 1024) - (logtest? (the-as int a0-0) 2048) - (logtest? (the-as int a0-0) #x8000) - ) + (the-as int (or (logtest? (the-as int a0-0) 32) + (logtest? (the-as int a0-0) 64) + (logtest? (the-as int a0-0) 128) + (logtest? (the-as int a0-0) 256) + (logtest? (the-as int a0-0) 512) + (logtest? (the-as int a0-0) 1024) + (logtest? (the-as int a0-0) 2048) + (logtest? (the-as int a0-0) #x8000) + ) + ) ) ;; definition for function memcard-unlocked-secrets? -;; WARN: Return type mismatch object vs symbol. (defun memcard-unlocked-secrets? ((arg0 symbol)) - "TODO - cleanup bitfields / arg passing" + "TODO - returns a bitfield" (let ((v1-0 *progress-save-info*) - (s5-0 (the-as object 0)) + (s5-0 0) ) (let ((a0-1 4)) (when (and v1-0 (= (-> v1-0 formatted) 1) (= (-> v1-0 inited) 1)) (dotimes (a1-5 a0-1) - (set! s5-0 (logior (the-as int s5-0) (the-as int (-> v1-0 file a1-5 secrets)))) + (set! s5-0 (logior s5-0 (-> v1-0 file a1-5 secrets))) ) ) ) @@ -665,24 +666,24 @@ ) (when *cheat-mode* (set! (-> *progress-state* secrets-unlocked) #t) - (set! s5-0 (logior (the-as int s5-0) #x8fe0)) + (set! s5-0 (logior s5-0 #x8fe0)) + ) + (cond + (arg0 + (empty) + s5-0 + ) + (else + (unlocked-secret-menu?) + ) ) - (the-as symbol (cond - (arg0 - (empty) - s5-0 - ) - (else - (unlocked-secret-menu?) - ) - ) - ) ) ) ;; definition for function num-unlocked-secret? (defun num-unlocked-secret? ((arg0 int)) - "@returns The number of secrets currently unlocked" + "TODO - bitfield + @returns The number of secrets currently unlocked" (let ((v0-0 0)) (if (logtest? arg0 32) (+! v0-0 1) @@ -714,21 +715,21 @@ ;; definition for function print-menu-text ;; WARN: Return type mismatch int vs none. -(defun print-menu-text ((arg0 game-text-id) (arg1 float) (arg2 font-context) (arg3 progress)) +(defun print-menu-text ((arg0 string) (arg1 float) (arg2 font-context) (arg3 progress)) (let ((f0-1 (- 1.0 (-> arg3 menu-transition)))) (let ((v1-1 arg2)) (set! (-> v1-1 scale) 0.5) ) (set! (-> arg2 alpha) f0-1) ) - (print-game-text (the-as string arg0) arg2 #f 44 320) + (print-game-text arg0 arg2 #f 44 320) 0 (none) ) ;; definition for function draw-yes-no -;; WARN: Return type mismatch int vs none. -(defun draw-yes-no ((arg0 progress) (arg1 float)) +;; WARN: Return type mismatch int vs pointer. +(defun draw-yes-no ((arg0 progress) (arg1 font-context)) (local-vars (a0-5 string)) (- 1.0 (-> arg0 menu-transition)) (cond @@ -736,8 +737,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-5 *temp-string*) ) @@ -745,20 +746,19 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-5 *temp-string*) ) ) - (print-game-text a0-5 (the-as font-context arg1) #f 44 320) - 0 - (none) + (print-game-text a0-5 arg1 #f 44 320) + (the-as pointer 0) ) ;; definition for function draw-continue-retry -;; WARN: Return type mismatch int vs none. -(defun draw-continue-retry ((arg0 progress) (arg1 float)) +;; WARN: Return type mismatch int vs pointer. +(defun draw-continue-retry ((arg0 progress) (arg1 font-context)) (local-vars (a0-5 string)) (- 1.0 (-> arg0 menu-transition)) (cond @@ -766,8 +766,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-1-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) + (lookup-text! *common-text* (game-text-id progress-unknown-retry?) #f) ) (set! a0-5 *temp-string*) ) @@ -775,15 +775,14 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-1-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) + (lookup-text! *common-text* (game-text-id progress-unknown-retry?) #f) ) (set! a0-5 *temp-string*) ) ) - (print-game-text a0-5 (the-as font-context arg1) #f 44 320) - 0 - (none) + (print-game-text a0-5 arg1 #f 44 320) + (the-as pointer 0) ) ;; definition for method 10 of type menu-option @@ -804,58 +803,57 @@ ) ) ) - (set! a0-8 - (cond - (arg3 - (set! (-> arg1 origin y) (+ -8.0 (-> arg1 origin y))) - (let ((a0-1 arg1)) - (set! (-> a0-1 color) (font-color #f9f9f9)) - ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) - (cond - ((-> s3-0 0) - (format - (clear *temp-string*) - "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) - ) - (set! a0-8 *temp-string*) - ) - (else - (format - (clear *temp-string*) - "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) - ) - (set! a0-8 *temp-string*) - ) - ) - a0-8 - ) - (else - (let ((s2-3 format) - (s1-2 (clear *temp-string*)) - (s0-2 "~S: ~S") - ) - (set! sv-16 (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) - (let ((a3-4 (if (-> s3-0 0) - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) - ) - ) + (set! a0-8 (cond + (arg3 + (set! (-> arg1 origin y) (+ -8.0 (-> arg1 origin y))) + (let ((a0-1 arg1)) + (set! (-> a0-1 color) (font-color #f9f9f9)) + ) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) + (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) + (cond + ((-> s3-0 0) + (format + (clear *temp-string*) + "~33L~S~32L ~S" + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) + ) + (set! a0-8 *temp-string*) ) - (s2-3 s1-2 s0-2 sv-16 a3-4) - ) - ) - *temp-string* - ) - ) + (else + (format + (clear *temp-string*) + "~32L~S ~33L~S~1L" + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) + ) + (set! a0-8 *temp-string*) + ) + ) + a0-8 + ) + (else + (let ((s2-3 format) + (s1-2 (clear *temp-string*)) + (s0-2 "~S: ~S") + ) + (set! sv-16 (lookup-text! *common-text* (-> obj name) #f)) + (let ((a3-4 (if (-> s3-0 0) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) + ) + ) + ) + (s2-3 s1-2 s0-2 sv-16 a3-4) + ) + ) + *temp-string* + ) + ) ) ) - (print-menu-text (the-as game-text-id a0-8) (-> obj scale) arg1 arg0) + (print-menu-text a0-8 (-> obj scale) arg1 arg0) 0 (none) ) @@ -865,45 +863,44 @@ (defmethod menu-option-method-10 menu-yes-no-option ((obj menu-yes-no-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) (local-vars (a0-8 string)) (let ((s3-0 (&-> *progress-state* yes-no-choice))) - (set! a0-8 - (cond - (arg3 - (set! (-> arg1 origin y) (+ -8.0 (-> arg1 origin y))) - (let ((a0-1 arg1)) - (set! (-> a0-1 color) (font-color #f9f9f9)) - ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) - (cond - ((-> s3-0 0) - (format - (clear *temp-string*) - "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (set! a0-8 (cond + (arg3 + (set! (-> arg1 origin y) (+ -8.0 (-> arg1 origin y))) + (let ((a0-1 arg1)) + (set! (-> a0-1 color) (font-color #f9f9f9)) + ) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) + (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) + (cond + ((-> s3-0 0) + (format + (clear *temp-string*) + "~33L~S~32L ~S" + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) + ) + (set! a0-8 *temp-string*) + ) + (else + (format + (clear *temp-string*) + "~32L~S ~33L~S~1L" + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) + ) + (set! a0-8 *temp-string*) + ) + ) + a0-8 + ) + (else + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) + *temp-string* ) - (set! a0-8 *temp-string*) ) - (else - (format - (clear *temp-string*) - "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) - ) - (set! a0-8 *temp-string*) - ) - ) - a0-8 - ) - (else - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) - *temp-string* - ) - ) ) ) - (print-menu-text (the-as game-text-id a0-8) (-> obj scale) arg1 arg0) + (print-menu-text a0-8 (-> obj scale) arg1 arg0) 0 (none) ) @@ -940,15 +937,15 @@ (set! (-> a0-6 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 44 f28-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (cond ((= (-> s3-0 0) 'pal) (format (clear *temp-string*) "~33L~S ~35L~S~1L" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -956,8 +953,8 @@ (format (clear *temp-string*) "~35L~S~33L ~S" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -982,15 +979,15 @@ ) ) (set! (-> arg1 origin y) (+ -8.0 (-> arg1 origin y))) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (cond ((= (-> s3-0 0) 'pal) (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -998,8 +995,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-video-j1n2) #f) - (lookup-text! *common-text* (game-text-id progress-video-asda) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-50hz) #f) + (lookup-text! *common-text* (game-text-id progress-refresh-60hz) #f) ) (set! s2-0 *temp-string*) ) @@ -1011,7 +1008,7 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id s2-0) (-> obj scale) arg1 arg0) + (print-menu-text s2-0 (-> obj scale) arg1 arg0) ) ) (set! (-> arg1 origin y) f30-0) @@ -1044,10 +1041,16 @@ ) (set! (-> arg1 origin y) (+ 8.0 (-> arg1 origin y))) (cond - ((= (-> obj name) 349) + ((= (-> obj name) (game-text-id progress-main-secrets-scrapbook)) (cond - ((logtest? (the-as int s5-0) 512) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-1231h2bn) #f) arg1 #f 44 320) + ((logtest? s5-0 512) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-scrapbook) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-2 print-game-text)) @@ -1057,10 +1060,16 @@ ) ) ) - ((= (-> obj name) 350) + ((= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook)) (cond - ((logtest? (the-as int s5-0) 1024) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-akjisndaj) #f) arg1 #f 44 320) + ((logtest? s5-0 1024) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-mega-scrapbook) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-4 print-game-text)) @@ -1070,10 +1079,16 @@ ) ) ) - ((= (-> obj name) 351) + ((= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3)) (cond - ((logtest? (the-as int s5-0) 2048) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-iwudnq) #f) arg1 #f 44 320) + ((logtest? s5-0 2048) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-scrapbook-3) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-6 print-game-text)) @@ -1083,10 +1098,16 @@ ) ) ) - ((= (-> obj name) 346) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) (cond - ((logtest? (the-as int s5-0) 32) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-k1231kkj) #f) arg1 #f 44 320) + ((logtest? s5-0 32) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-1) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-8 print-game-text)) @@ -1096,10 +1117,16 @@ ) ) ) - ((= (-> obj name) 347) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) (cond - ((logtest? (the-as int s5-0) 64) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-jn12j) #f) arg1 #f 44 320) + ((logtest? s5-0 64) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-2) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-10 print-game-text)) @@ -1109,10 +1136,16 @@ ) ) ) - ((= (-> obj name) 348) + ((= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) (cond - ((logtest? (the-as int s5-0) 128) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-m12312) #f) arg1 #f 44 320) + ((logtest? s5-0 128) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-sceneplayer-3) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-12 print-game-text)) @@ -1122,10 +1155,16 @@ ) ) ) - ((= (-> obj name) 345) + ((= (-> obj name) (game-text-id progress-main-secrets-hero-mode)) (cond - ((logtest? (the-as int s5-0) #x8000) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-oj1n23jn1) #f) arg1 #f 44 320) + ((logtest? s5-0 #x8000) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-hero-mode) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-14 print-game-text)) @@ -1135,10 +1174,16 @@ ) ) ) - ((= (-> obj name) 352) + ((= (-> obj name) (game-text-id progress-main-secrets-levelselect)) (cond - ((logtest? (the-as int s5-0) 256) - (print-game-text (lookup-text! *common-text* (game-text-id progress-unlocked-n51i51n) #f) arg1 #f 44 320) + ((logtest? s5-0 256) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-main-secrets-levelselect) #f) + arg1 + #f + 44 + 320 + ) ) (else (let ((s5-16 print-game-text)) @@ -1199,13 +1244,13 @@ ) ) (cond - ((= (-> obj name) 308) + ((= (-> obj name) (game-text-id progress-root-show-map)) (when (= (-> *setting-control* user-default language) (language-enum french)) (let ((v1-18 arg1)) (set! (-> v1-18 scale) 0.7) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (the float (if (= (get-aspect-ratio) 'aspect4x3) 210 200 @@ -1218,70 +1263,100 @@ (let ((v1-23 (-> *bigmap* bigmap-index))) (cond ((zero? v1-23) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-k1j2n3n1) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-pumping-station) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 1) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-m123j1m) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-landing-pad) #f) arg1 #f 44 320) ) ((= v1-23 2) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63jk46n3) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-weapons-factory) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 3) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-36j46jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dig) #f) arg1 #f 44 320) ) ((= v1-23 4) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-36j46jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dig) #f) arg1 #f 44 320) ) ((= v1-23 5) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52jn35j2) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-drill-platform) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 6) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52kj3n52) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-haven-forest) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 7) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63j46j3n4) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-fortress) #f) arg1 #f 44 320) ) ((= v1-23 8) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63j46n3j) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-locations-mountain-temple) #f) + arg1 + #f + 44 + 320 + ) ) ((= v1-23 9) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-364jn6n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-nest) #f) arg1 #f 44 320) ) ((= v1-23 11) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-634jn6) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-palace-roof) #f) arg1 #f 44 320) ) ((= v1-23 12) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-52o352nm) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-palace) #f) arg1 #f 44 320) ) ((= v1-23 13) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-j324nm3) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-dead-town) #f) arg1 #f 44 320) ) ((= v1-23 14) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 15) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 16) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-6mn346mn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-sewer) #f) arg1 #f 44 320) ) ((= v1-23 17) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63jn463jn) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-strip-mine) #f) arg1 #f 44 320) ) ((= v1-23 18) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-3643m6m) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-mars-tomb) #f) arg1 #f 44 320) ) ((= v1-23 19) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-63mn46nm) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-underport) #f) arg1 #f 44 320) ) ((= v1-23 20) - (print-game-text (lookup-text! *common-text* (game-text-id progress-main-23jn42) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-locations-haven-city) #f) arg1 #f 44 320) ) ) ) ) (else - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) ) ) @@ -1290,12 +1365,11 @@ ) ;; definition for function draw-savegame-box -;; WARN: Return type mismatch pointer vs none. -(defun draw-savegame-box ((arg0 menu-memcard-slot-option) (arg1 float) (arg2 float) (arg3 float) (arg4 float)) - (set! (-> arg0 box 0) (the-as menu-option arg1)) - (set! (-> arg0 unknown-options 1) (the-as menu-option arg2)) - (set! (-> arg0 unknown-options 0) (the-as menu-option arg3)) - (set! (-> arg0 unknown-options 2) (the-as menu-option arg4)) +(defun draw-savegame-box ((arg0 menu-option) (arg1 float) (arg2 float) (arg3 float) (arg4 float)) + (set! (-> arg0 box 0 min x) arg1) + (set! (-> arg0 box 0 max x) arg2) + (set! (-> arg0 box 0 min y) arg3) + (set! (-> arg0 box 0 max y) arg4) (let* ((s5-0 (-> *display* frames (-> *display* on-screen) global-buf)) (gp-0 (-> s5-0 base)) ) @@ -1316,10 +1390,10 @@ ) ) ) - (none) ) ;; definition for function get-level-icon-id-01 +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-01 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303600))) @@ -1379,11 +1453,12 @@ (set! v0-0 (the-as uint #xc9306000)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) ;; definition for function get-level-icon-id-02 +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-02 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303700))) @@ -1443,11 +1518,12 @@ (set! v0-0 (the-as uint #xc9306100)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) ;; definition for function get-level-icon-id-03 +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-03 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303800))) @@ -1507,11 +1583,12 @@ (set! v0-0 (the-as uint #xc9306200)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) ;; definition for function get-level-icon-id-04 +;; WARN: Return type mismatch uint vs texture-id. (defun get-level-icon-id-04 ((arg0 int)) "TODO - Icon id enum perhaps?" (let ((v0-0 (the-as uint #xc9303900))) @@ -1571,14 +1648,13 @@ (set! v0-0 (the-as uint #xc9306300)) ) ) - v0-0 + (the-as texture-id v0-0) ) ) ;; definition for function draw-decoration ;; INFO: Used lq/sq -;; WARN: Return type mismatch pointer vs none. -(defun draw-decoration ((arg0 menu-quit-qr-option) (arg1 font-context) (arg2 float) (arg3 int) (arg4 symbol) (arg5 float)) +(defun draw-decoration ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 int) (arg4 symbol) (arg5 float)) (local-vars (sv-16 symbol) (sv-32 float) @@ -1661,23 +1737,12 @@ ) (sv-80 a0-4 a1-2 a2-2 a3-1 t0-1) ) - (let ((v1-27 (&-> arg0 unknown-options 3))) - (set! (-> v1-27 0) (the-as menu-option 64)) - (set! (-> v1-27 1) (the-as menu-option 128)) - (set! (-> v1-27 2) (the-as menu-option 128)) - (set! (-> v1-27 3) (the-as menu-option (the int (* 128.0 arg2)))) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s3-0)) - (the float s5-0) - (the float s5-0) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 arg2))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s3-0)) (the float s5-0) (the float s5-0)) (when sv-16 (+! (-> arg1 origin y) (the float sv-64)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s3-0)) (the float (+ s5-0 s2-0)) @@ -1712,12 +1777,10 @@ ) ) ) - (none) ) ;; definition for function draw-missions-decoration ;; INFO: Used lq/sq -;; WARN: Return type mismatch pointer vs none. (defun draw-missions-decoration ((arg0 menu-missions-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) (local-vars (sv-16 int) (sv-32 (function string font-context symbol int int float)) (sv-48 font-context)) (set! sv-48 arg1) @@ -1762,21 +1825,10 @@ ) (sv-32 a0-4 sv-48 a2-2 a3-1 t0-0) ) - (let ((v1-17 (&-> arg0 unknown-options 3))) - (set! (-> v1-17 0) (the-as menu-option 64)) - (set! (-> v1-17 1) (the-as menu-option 128)) - (set! (-> v1-17 2) (the-as menu-option 128)) - (set! (-> v1-17 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -1810,12 +1862,10 @@ ) ) ) - (none) ) ;; definition for function draw-sound-options-decoration ;; INFO: Used lq/sq -;; WARN: Return type mismatch pointer vs none. (defun draw-sound-options-decoration ((arg0 menu-slider-option) (arg1 font-context) (arg2 float) (arg3 symbol) (arg4 game-text-id)) (local-vars (sv-16 font-context) @@ -1875,22 +1925,11 @@ (sv-48 a0-5 a1-2 a2-2 a3-1 t0-1) ) (set! (-> sv-16 origin x) (the float (+ gp-0 65))) - (let ((v1-22 (&-> arg0 unknown-options 3))) - (set! (-> v1-22 0) (the-as menu-option 64)) - (set! (-> v1-22 1) (the-as menu-option 128)) - (set! (-> v1-22 2) (the-as menu-option 128)) - (set! (-> v1-22 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (if s0-0 (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -1926,12 +1965,11 @@ ) ) ) - (none) ) ;; definition for function draw-decoration-secrets ;; INFO: Used lq/sq -(defun draw-decoration-secrets ((arg0 menu-secret-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) +(defun draw-decoration-secrets ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 game-text-id)) (local-vars (sv-16 int) (sv-32 (function string font-context symbol int int float)) (sv-48 font-context)) (set! sv-48 arg1) (let ((s2-0 arg2) @@ -1977,21 +2015,10 @@ ) (sv-32 a0-4 sv-48 a2-2 a3-1 t0-0) ) - (let ((v1-19 (&-> arg0 unknown-options 3))) - (set! (-> v1-19 0) (the-as menu-option 64)) - (set! (-> v1-19 1) (the-as menu-option 128)) - (set! (-> v1-19 2) (the-as menu-option 128)) - (set! (-> v1-19 3) (the-as menu-option (the int (* 128.0 s2-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s2-0))) + (draw-savegame-box arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float s5-0) (the float s5-0)) (draw-savegame-box - (the-as menu-memcard-slot-option arg0) - (the float gp-0) - (the float (+ gp-0 s4-0)) - (the float s5-0) - (the float s5-0) - ) - (draw-savegame-box - (the-as menu-memcard-slot-option arg0) + arg0 (the float gp-0) (the float (+ gp-0 s4-0)) (the float (+ s5-0 s3-0)) @@ -2029,8 +2056,7 @@ ;; definition for function draw-decoration-load-save ;; INFO: Used lq/sq -;; WARN: Return type mismatch pointer vs none. -(defun draw-decoration-load-save ((arg0 menu-memcard-slot-option) (arg1 font-context) (arg2 float) (arg3 int)) +(defun draw-decoration-load-save ((arg0 menu-option) (arg1 font-context) (arg2 float) (arg3 int)) (local-vars (sv-16 int) (sv-32 int) @@ -2101,12 +2127,7 @@ ) (sv-48 a0-9 sv-80 a2-2 a3-1 t0-0) ) - (let ((v1-32 (&-> arg0 unknown-options 3))) - (set! (-> v1-32 0) (the-as menu-option 64)) - (set! (-> v1-32 1) (the-as menu-option 128)) - (set! (-> v1-32 2) (the-as menu-option 128)) - (set! (-> v1-32 3) (the-as menu-option (the int (* 128.0 s4-0)))) - ) + (set-vector! (-> arg0 box 0 color) 64 128 128 (the int (* 128.0 s4-0))) (draw-savegame-box arg0 (the float s0-0) (the float (+ s0-0 sv-32)) (the float s5-0) (the float s5-0)) (draw-savegame-box arg0 @@ -2144,7 +2165,6 @@ ) ) ) - (none) ) ;; definition for method 10 of type menu-memcard-slot-option @@ -2242,7 +2262,7 @@ ;; WARN: Return type mismatch int vs none. (defmethod menu-option-method-10 menu-memcard-slot-option ((obj menu-memcard-slot-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) (local-vars - (v0-74 none) + (v0-74 pointer) (sv-16 float) (sv-20 int) (sv-24 float) @@ -2326,12 +2346,7 @@ ) ) ) - (let ((v1-41 (&-> obj unknown-options 3))) - (set! (-> v1-41 0) (the-as menu-option 64)) - (set! (-> v1-41 1) (the-as menu-option 128)) - (set! (-> v1-41 2) (the-as menu-option 128)) - (set! (-> v1-41 3) (the-as menu-option (the int (* 128.0 sv-16)))) - ) + (set-vector! (-> obj box 0 color) 64 128 128 (the int (* 128.0 sv-16))) (when (= arg2 sv-20) (cond ((!= *save-options-title* (-> arg0 current-options)) @@ -2508,7 +2523,7 @@ (s0-0 (clear *temp-string*)) ) (set! sv-96 "~S ~D") - (let ((a2-28 (lookup-text! *common-text* (game-text-id progress-i1un23i12b341) #f)) + (let ((a2-28 (lookup-text! *common-text* (game-text-id progress-unknown-game) #f)) (a3-33 (+ arg2 1)) ) (s1-2 s0-0 sv-96 a2-28 a3-33) @@ -2529,36 +2544,28 @@ (set-vector! (-> obj sprites 1 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 1 pos z) #xffffff) (set! (-> obj sprites 1 pos w) 1) - (set! (-> obj sprites 1 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-01 (the-as int s2-8)))) - ) + (set! (-> obj sprites 1 tex) (lookup-texture-by-id (get-level-icon-id-01 (the-as int s2-8)))) (set! (-> obj sprites 1 scale-x) 1.0) (set! (-> obj sprites 1 scale-y) 1.0) (set-hud-piece-position! (the-as basic (&-> obj something-hud-related)) sv-40 sv-48) (set-vector! (-> obj sprites 2 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 2 pos z) #xffffff) (set! (-> obj sprites 2 pos w) 1) - (set! (-> obj sprites 2 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-02 (the-as int s2-8)))) - ) + (set! (-> obj sprites 2 tex) (lookup-texture-by-id (get-level-icon-id-02 (the-as int s2-8)))) (set! (-> obj sprites 2 scale-x) 1.0) (set! (-> obj sprites 2 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 2)) (+ sv-40 sv-56) sv-48) (set-vector! (-> obj sprites 3 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 3 pos z) #xffffff) (set! (-> obj sprites 3 pos w) 1) - (set! (-> obj sprites 3 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-03 (the-as int s2-8)))) - ) + (set! (-> obj sprites 3 tex) (lookup-texture-by-id (get-level-icon-id-03 (the-as int s2-8)))) (set! (-> obj sprites 3 scale-x) 1.0) (set! (-> obj sprites 3 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 3)) sv-40 (+ sv-48 64)) (set-vector! (-> obj sprites 4 color) 128 128 128 (the int (* 128.0 sv-16))) (set! (-> obj sprites 4 pos z) #xffffff) (set! (-> obj sprites 4 pos w) 1) - (set! (-> obj sprites 4 tex) - (lookup-texture-by-id (the-as texture-id (get-level-icon-id-04 (the-as int s2-8)))) - ) + (set! (-> obj sprites 4 tex) (lookup-texture-by-id (get-level-icon-id-04 (the-as int s2-8)))) (set! (-> obj sprites 4 scale-x) 1.0) (set! (-> obj sprites 4 scale-y) 1.0) (set-hud-piece-position! (the-as basic (-> obj sprites 4)) (+ sv-40 sv-56) (+ sv-48 64)) @@ -2767,13 +2774,7 @@ ) ) ) - (print-game-text - (lookup-text! *common-text* (game-text-id progress-1ikjhb231hjik2b31ihb231) #f) - arg1 - #f - 44 - 320 - ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-slot-empty) #f) arg1 #f 44 320) ) ) (set! (-> arg1 origin x) sv-24) @@ -2845,7 +2846,7 @@ (set! (-> a0-16 color) (font-color #7efbfb)) ) (let ((s5-2 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1jib12o3nj12j3) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-dont-remove) #f) 1) (s5-2 *temp-string* arg1 #f 44 320) ) 0 @@ -2896,7 +2897,7 @@ (let ((s4-1 print-game-text)) (format (clear *temp-string*) - (lookup-text! *common-text* (game-text-id progress-1kj2b31k2b3) #f) + (lookup-text! *common-text* (game-text-id progress-memcard-space-requirement) #f) (if *progress-save-info* (-> *progress-save-info* mem-required) 0 @@ -2912,13 +2913,19 @@ ((and (!= (-> *progress-state* starting-state) 'insufficient-space) (!= (-> *progress-state* starting-state) 'no-memory-card) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2bkoij1231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-insert-card-with-space-to-save) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (let ((s5-2 arg1)) (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 30.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) ) (else (let ((s4-2 arg1)) @@ -2926,7 +2933,7 @@ ) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (draw-highlight (the int (+ 30.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-continue-retry arg0 (the-as float arg1)) + (draw-continue-retry arg0 arg1) ) ) ) @@ -2970,7 +2977,7 @@ (set! (-> s5-1 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -2997,7 +3004,11 @@ (set! (-> v1-7 height) (the float (the-as float #x5f))) ) (let ((s5-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-j1nb23kj1hbn2) #f) 1) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id progress-memcard-insert-card-with-jak2) #f) + 1 + ) (s5-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) @@ -3008,7 +3019,7 @@ (set! (-> s5-1 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 17.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj12k3j1n23n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-go-back?) #f) arg1 #f 44 320) 0 (none) ) @@ -3056,7 +3067,11 @@ (set! (-> v1-16 height) (the float (the-as float #x69))) ) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-k1jn23k1h23b) #f) 1) + (format + (clear *temp-string*) + (lookup-text! *common-text* (game-text-id progress-memcard-check-and-try-again) #f) + 1 + ) (s5-1 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) @@ -3067,7 +3082,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 9.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3093,25 +3108,37 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x19))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2bn31kjhnb2) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-error-while-saving) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x3c))) ) (let ((s5-1 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-jk1n23kj1n2) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-check) #f) 1) (s5-1 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn231j2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-disabled) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (let ((v1-16 arg1)) (set! (-> v1-16 height) (the float (the-as float #x5f))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2n31kjn231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-autosave-reenabling-info) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 90.0 (-> arg1 origin y))) (let ((v1-19 arg1)) (set! (-> v1-19 height) (the float (the-as float #x19))) @@ -3120,7 +3147,7 @@ (set! (-> s5-4 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (-> arg1 origin y)) 22 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3147,16 +3174,22 @@ (set! (-> v1-7 height) (the float (the-as float #x46))) ) (let ((s5-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-k1jn23kj1n23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-was-removed) #f) 1) (s5-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 65.0 (-> arg1 origin y))) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn231j2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-disabled) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 65.0 (-> arg1 origin y))) (let ((v1-12 arg1)) (set! (-> v1-12 height) (the float (the-as float #x5a))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kj2n31kjn231) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-autosave-reenabling-info) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) (let ((v1-15 arg1)) (set! (-> v1-15 height) (the float (the-as float #x23))) @@ -3165,7 +3198,7 @@ (set! (-> s5-3 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 5.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3191,12 +3224,12 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x23))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-l1jkn231jkn23) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-removed-notice) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj1n231kjn2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-removed-prompt) #f) arg1 #f 44 320) (when (is-cd-in?) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-14 arg1)) @@ -3206,7 +3239,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) ) 0 (none) @@ -3233,12 +3266,18 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x23))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1lkjn231jnk2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-disc-read-error) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 55.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-n12n211n1n) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-disc-read-error-prompt) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 105.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x32))) @@ -3247,7 +3286,7 @@ (set! (-> s5-2 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3304,12 +3343,12 @@ (let ((v1-28 arg1)) (set! (-> v1-28 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-jn12n3j1n2) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-explanation) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 115.0 (-> arg1 origin y))) (let ((v1-31 arg1)) (set! (-> v1-31 height) (the float (the-as float #x5f))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-n12jin313) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-autosave-dont-remove) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 90.0 (-> arg1 origin y))) (let ((v1-34 arg1)) (set! (-> v1-34 height) (the float (the-as float #x32))) @@ -3318,7 +3357,7 @@ (set! (-> s5-3 color) (the-as font-color (progress-selected 0))) ) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-ikj123i1khb231) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-unknown-continue) #f) arg1 #f 44 320) 0 (none) ) @@ -3345,22 +3384,28 @@ (set! (-> v1-7 height) (the float (the-as float #x55))) ) (let ((s4-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1kjn231kjn23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-unformatted) #f) 1) (s4-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1nmn1221n21n12n) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-formatting-required-notice) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-13 arg1)) (set! (-> v1-13 height) (the float (the-as float #x19))) ) (draw-highlight (the int (-> arg1 origin y)) 44 (-> arg1 alpha)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1n23kjn12nk3j12) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-format-prompt) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3386,15 +3431,27 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x55))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1m23n1n23n21) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-overwrite-warning) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 105.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1jk2n31jkn23n1j) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-overwrite-confirm) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 45.0 (-> arg1 origin y))) (draw-highlight (the int (+ 8.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3421,17 +3478,23 @@ (set! (-> v1-7 height) (the float (the-as float #x5a))) ) (let ((s4-0 print-game-text)) - (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-1kj2n31jkn23) #f) 1) + (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id progress-memcard-no-jak2-found) #f) 1) (s4-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 95.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x3c))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1kjn2123919) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-memcard-create-jak2-file?) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (draw-highlight (the int (+ 18.0 (-> arg1 origin y))) 22 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3457,31 +3520,43 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x2d))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-j1n23j1kn23kjn12) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) - (let ((v1-10 arg1)) - (set! (-> v1-10 height) (the float (the-as float #x5f))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj6n324i63n) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) - (let ((v1-13 arg1)) - (set! (-> v1-13 height) (the float (the-as float #x37))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-3iou4n3i45n3) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) - (let ((v1-16 arg1)) - (set! (-> v1-16 height) (the float (the-as float #x1e))) - ) (print-game-text - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-graphics-60hz-change-notice) #f) arg1 #f 44 320 ) + (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) + (let ((v1-10 arg1)) + (set! (-> v1-10 height) (the float (the-as float #x5f))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-1) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) + (let ((v1-13 arg1)) + (set! (-> v1-13 height) (the float (the-as float #x37))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-2) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) + (let ((v1-16 arg1)) + (set! (-> v1-16 height) (the float (the-as float #x1e))) + ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 20.0 (-> arg1 origin y))) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3507,15 +3582,21 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-39u4n359n45) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-60hz-change-complete) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-on2394234n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-graphics-mode-revert?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) (draw-highlight (the int (+ 12.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3541,31 +3622,43 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x32))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2j021j394j) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) - (let ((v1-10 arg1)) - (set! (-> v1-10 height) (the float (the-as float #x5a))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-kj6n324i63n) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) - (let ((v1-13 arg1)) - (set! (-> v1-13 height) (the float (the-as float #x4b))) - ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-3iou4n3i45n3) #f) arg1 #f 44 320) - (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) - (let ((v1-16 arg1)) - (set! (-> v1-16 height) (the float (the-as float #x1e))) - ) (print-game-text - (lookup-text! *common-text* (game-text-id progress-draw-continue-retry-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-change-notice) #f) arg1 #f 44 320 ) + (set! (-> arg1 origin y) (+ 50.0 (-> arg1 origin y))) + (let ((v1-10 arg1)) + (set! (-> v1-10 height) (the float (the-as float #x5a))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-1) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 85.0 (-> arg1 origin y))) + (let ((v1-13 arg1)) + (set! (-> v1-13 height) (the float (the-as float #x4b))) + ) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-warning-2) #f) + arg1 + #f + 44 + 320 + ) + (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) + (let ((v1-16 arg1)) + (set! (-> v1-16 height) (the float (the-as float #x1e))) + ) + (print-game-text (lookup-text! *common-text* (game-text-id progress-memcard-continue?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (draw-highlight (the int (-> arg1 origin y)) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3591,15 +3684,21 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x50))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-iun34593n45) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-graphics-progressivescan-change-complete) #f) + arg1 + #f + 44 + 320 + ) (set! (-> arg1 origin y) (+ 100.0 (-> arg1 origin y))) (let ((v1-10 arg1)) (set! (-> v1-10 height) (the float (the-as float #x4b))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-on2394234n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-graphics-mode-revert?) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 70.0 (-> arg1 origin y))) (draw-highlight (the int (+ 20.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3625,10 +3724,10 @@ (let ((v1-7 arg1)) (set! (-> v1-7 height) (the float (the-as float #x46))) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2iu3bn4289u34n) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-quit-game-confirm) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 60.0 (-> arg1 origin y))) (draw-highlight (the int (+ 17.0 (-> arg1 origin y))) 24 (-> arg1 alpha)) - (draw-yes-no arg0 (the-as float arg1)) + (draw-yes-no arg0 arg1) 0 (none) ) @@ -3691,11 +3790,11 @@ (if (or (= (-> *setting-control* user-default language) (language-enum french)) (= (-> *setting-control* user-default language) (language-enum spanish)) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 a3-1 #t 0.7) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 a3-1 #t 0.95) + (draw-decoration obj arg1 f30-0 a3-1 #t 0.7) + (draw-decoration obj arg1 f30-0 a3-1 #t 0.95) ) ) - (begin-scissor-level (the-as vector sv-128)) + (begin-scissor-level sv-128) (set! (-> arg1 origin x) 80.0) (let ((v1-20 arg1)) (set! (-> v1-20 scale) 0.5) @@ -3795,8 +3894,7 @@ ) (let ((t9-10 end-scissor-level)) #x3f800000 - sv-128 - (t9-10) + (t9-10 sv-128) ) (draw-scene-up-down arg1) 0 @@ -3830,156 +3928,154 @@ (* (-> arg0 sliding-height) (the float v1-2)) ) (let ((s0-0 120) - (s1-0 (new 'stack-no-clear 'vector)) - (f28-0 0.0) + (s1-0 (new 'stack-no-clear 'hud-box)) ) - 0.0 - (if (< f30-0 0.0) - (set! f30-0 0.0) + (let ((f28-0 0.0)) + 0.0 + (if (< f30-0 0.0) + (set! f30-0 0.0) + ) + (case (-> *progress-state* scene-player-act) + ((1) + (set! s2-0 *hud-select-scene-act1*) + ) + ((2) + (set! s2-0 *hud-select-scene-act2*) + ) + ((3) + (set! s2-0 *hud-select-scene-act3*) + ) ) - (case (-> *progress-state* scene-player-act) - ((1) - (set! s2-0 *hud-select-scene-act1*) - ) - ((2) - (set! s2-0 *hud-select-scene-act2*) - ) - ((3) - (set! s2-0 *hud-select-scene-act3*) - ) - ) - (set! (-> arg1 alpha) f30-0) - (let ((a1-6 arg1)) - (set! (-> a1-6 flags) (font-flags kerning middle large)) - ) - (set! (-> arg1 origin x) 90.0) - (set! (-> arg1 origin y) 100.0) - (let ((v1-14 arg1)) - (set! (-> v1-14 width) (the float (the-as float #x14f))) - ) - (let ((v1-15 arg1)) - (set! (-> v1-15 height) (the float (the-as float #xd2))) - ) - (let ((a1-9 arg1)) - (set! (-> a1-9 color) (font-color #7efbfb)) - ) - (if (or (= (-> *setting-control* user-default language) (language-enum french)) - (= (-> *setting-control* user-default language) (language-enum spanish)) + (set! (-> arg1 alpha) f30-0) + (let ((a1-6 arg1)) + (set! (-> a1-6 flags) (font-flags kerning middle large)) + ) + (set! (-> arg1 origin x) 90.0) + (set! (-> arg1 origin y) 100.0) + (let ((v1-14 arg1)) + (set! (-> v1-14 width) (the float (the-as float #x14f))) + ) + (let ((v1-15 arg1)) + (set! (-> v1-15 height) (the float (the-as float #xd2))) + ) + (let ((a1-9 arg1)) + (set! (-> a1-9 color) (font-color #7efbfb)) + ) + (if (or (= (-> *setting-control* user-default language) (language-enum french)) + (= (-> *setting-control* user-default language) (language-enum spanish)) + ) + (draw-decoration obj arg1 f30-0 364 #t 0.7) + (draw-decoration obj arg1 f30-0 364 #t 0.95) + ) + (begin-scissor-scene s1-0) + (let ((v1-23 arg1)) + (set! (-> v1-23 scale) 0.5) + ) + (set! sv-48 0) + (while (< sv-48 s4-0) + (set! sv-64 print-game-text) + (let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options sv-48 box 0 min x)) #f)) + (a1-16 arg1) + (a2-4 #t) + (a3-3 44) + (t0-3 320) + ) + (+! f28-0 (sv-64 a0-4 a1-16 a2-4 a3-3 t0-3)) + ) + (set! sv-48 (+ sv-48 1)) + ) + (let ((s0-1 (- s0-0 (the int f28-0))) + (f28-1 + (cond + ((< (-> arg0 sliding-height) 0.0) + (set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s4-0 box 0 min x)) #f)) + 0.0 + (set! sv-80 print-game-text) + (set! sv-96 format) + (let ((a0-7 (clear *temp-string*)) + (a1-18 "~S") + ) + (sv-96 a0-7 a1-18 sv-112) + ) + (let* ((a0-8 *temp-string*) + (a1-19 arg1) + (a2-7 #t) + (a3-4 44) + (t0-4 320) + (f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4)) + ) + (* (-> arg0 sliding-height) f0-16) + ) + ) + (else + (set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options (+ s4-0 -1) box 0 min x)) #f)) + 0.0 + (set! sv-128 print-game-text) + (set! sv-144 format) + (let ((a0-11 (clear *temp-string*)) + (a1-21 "~S") + ) + (sv-144 a0-11 a1-21 sv-160) + ) + (let* ((a0-12 *temp-string*) + (a1-22 arg1) + (a2-10 #t) + (a3-5 44) + (t0-5 320) + (f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5)) + ) + (* (-> arg0 sliding-height) f0-18) + ) + ) + ) + ) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 364 #t 0.7) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 364 #t 0.95) - ) - (begin-scissor-scene s1-0) - (let ((v1-23 arg1)) - (set! (-> v1-23 scale) 0.5) - ) - (set! sv-48 0) - (while (< sv-48 s4-0) - (set! sv-64 print-game-text) - (let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options sv-48 box 0)) #f)) - (a1-16 arg1) - (a2-4 #t) - (a3-3 44) - (t0-3 320) - ) - (+! f28-0 (sv-64 a0-4 a1-16 a2-4 a3-3 t0-3)) - ) - (set! sv-48 (+ sv-48 1)) - ) - (let ((s0-1 (- s0-0 (the int f28-0))) - (f28-1 + (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) + (while (< s3-0 (length s2-0)) + (set! sv-176 print-game-text) + (let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f)) + (a1-24 arg1) + (a2-12 #t) + (a3-6 44) + (t0-6 320) + (f26-0 (sv-176 a0-14 a1-24 a2-12 a3-6 t0-6)) + ) + (set! (-> arg1 flags) (font-flags kerning large)) (cond - ((< (-> arg0 sliding-height) 0.0) - (set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s4-0 box 0)) #f)) - 0.0 - (set! sv-80 print-game-text) - (set! sv-96 format) - (let ((a0-7 (clear *temp-string*)) - (a1-18 "~S") - ) - (sv-96 a0-7 a1-18 sv-112) - ) - (let* ((a0-8 *temp-string*) - (a1-19 arg1) - (a2-7 #t) - (a3-4 44) - (t0-4 320) - (f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4)) - ) - (* (-> arg0 sliding-height) f0-16) - ) + ((and (< s3-0 s4-0) (!= (-> arg0 sliding-height) 0.0)) + (set! sv-192 arg1) + (set! (-> sv-192 color) (the-as font-color (progress-selected 0))) + (draw-highlight (+ (the int f26-0) -2 s0-1) (the int f26-0) f30-0) + ) + ((or (and (= s3-0 s4-0) (= (fabs (-> arg0 sliding-height)) 0.0)) (zero? s3-0)) + (set! sv-208 arg1) + (set! (-> sv-208 color) (the-as font-color (progress-selected 0))) + (draw-highlight (+ s0-1 -2) (the int f26-0) f30-0) ) (else - (set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options (+ s4-0 -1) box 0)) #f)) - 0.0 - (set! sv-128 print-game-text) - (set! sv-144 format) - (let ((a0-11 (clear *temp-string*)) - (a1-21 "~S") - ) - (sv-144 a0-11 a1-21 sv-160) - ) - (let* ((a0-12 *temp-string*) - (a1-22 arg1) - (a2-10 #t) - (a3-5 44) - (t0-5 320) - (f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5)) - ) - (* (-> arg0 sliding-height) f0-18) + (let ((a0-21 arg1)) + (set! (-> a0-21 color) (font-color #7efbfb)) ) ) ) ) - ) - (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) - (while (< s3-0 (length s2-0)) - (set! sv-176 print-game-text) - (let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0)) #f)) - (a1-24 arg1) - (a2-12 #t) - (a3-6 44) - (t0-6 320) - (f26-0 (sv-176 a0-14 a1-24 a2-12 a3-6 t0-6)) - ) - (set! (-> arg1 flags) (font-flags kerning large)) - (cond - ((and (< s3-0 s4-0) (!= (-> arg0 sliding-height) 0.0)) - (set! sv-192 arg1) - (set! (-> sv-192 color) (the-as font-color (progress-selected 0))) - (draw-highlight (+ (the int f26-0) -2 s0-1) (the int f26-0) f30-0) - ) - ((or (and (= s3-0 s4-0) (= (fabs (-> arg0 sliding-height)) 0.0)) (zero? s3-0)) - (set! sv-208 arg1) - (set! (-> sv-208 color) (the-as font-color (progress-selected 0))) - (draw-highlight (+ s0-1 -2) (the int f26-0) f30-0) - ) - (else - (let ((a0-21 arg1)) - (set! (-> a0-21 color) (font-color #7efbfb)) + (set! sv-224 print-game-text) + (let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f)) + (a1-28 arg1) + (a2-16 #f) + (a3-7 44) + (t0-7 320) ) - ) + (+! s0-1 (the int (sv-224 a0-23 a1-28 a2-16 a3-7 t0-7))) ) + (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) + (+! s3-0 1) ) - (set! sv-224 print-game-text) - (let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0)) #f)) - (a1-28 arg1) - (a2-16 #f) - (a3-7 44) - (t0-7 320) - ) - (+! s0-1 (the int (sv-224 a0-23 a1-28 a2-16 a3-7 t0-7))) - ) - (set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1)))) - (+! s3-0 1) ) ) + (end-scissor-scene s1-0 1.0) ) ) - (let ((t9-22 end-scissor-scene)) - #x3f800000 - (t9-22) - ) (draw-scene-up-down arg1) 0 (none) @@ -4221,7 +4317,7 @@ (sv-264 game-task-node-info) (sv-268 game-task-node-info) (sv-272 symbol) - (sv-276 vector) + (sv-276 hud-box) (sv-280 float) (sv-284 float) ) @@ -4237,7 +4333,7 @@ (set! sv-264 (new 'stack 'game-task-node-info)) (set! sv-268 (new 'stack 'game-task-node-info)) (set! sv-272 #t) - (set! sv-276 (new 'stack-no-clear 'vector)) + (set! sv-276 (new 'stack-no-clear 'hud-box)) (set! sv-280 (-> arg1 origin y)) (set! sv-284 (-> arg1 scale)) (set! (-> *progress-state* current-task-index) (length (-> *game-info* sub-task-list))) @@ -4284,10 +4380,10 @@ (let ((v1-40 (-> obj page-index))) (cond ((zero? v1-40) - (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-1kjn2jn31kj3)) + (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-root-missions)) ) ((= v1-40 1) - (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-1kjn2jn31kj3)) + (draw-missions-decoration obj arg1 sv-16 (game-text-id progress-root-missions)) ) ) ) @@ -4402,8 +4498,8 @@ (format (clear *temp-string*) "~S" (lookup-text! *common-text* (if (logtest? (-> s4-6 flags) (game-task-node-flag closed)) - (game-text-id progress-iko1jn231kjhn23) - (game-text-id progress-1kj2n31j23) + (game-text-id progress-missions-icon-completed) + (game-text-id progress-missions-icon-todo) ) #f ) @@ -4439,7 +4535,7 @@ (set! sv-20 (+ sv-20 1)) ) (if (zero? (-> *progress-state* total-num-tasks)) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1klj2n31j2n3) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (game-text-id progress-missions-none) #f) arg1 #f 44 320) ) ) (let ((t9-39 end-scissor-missions) @@ -4454,7 +4550,7 @@ ) ;; definition for function draw-secret-list -;; WARN: Return type mismatch object vs none. +;; WARN: Return type mismatch object vs pointer. (defun draw-secret-list ((arg0 secret-item-option) (arg1 progress) (arg2 font-context) (arg3 int) (arg4 symbol) (arg5 float)) (let ((s4-0 (and arg4 (= arg3 1)))) 380.0 @@ -4479,7 +4575,13 @@ (set! (-> v1-19 scale) 0.43) ) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-1klj2n31j23) #f) arg2 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-secrets-go-to-title-screen) #f) + arg2 + #f + 44 + 320 + ) ) ((and (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) (set! (-> arg1 selected-option) #f) @@ -4508,7 +4610,7 @@ (cond ((logtest? (-> *game-info* sub-task-list (-> arg0 avail-after) flags) (game-task-node-flag closed)) (let ((s3-3 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> arg0 name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> arg0 name) #f)) (s3-3 *temp-string* arg2 #f 44 320) ) ) @@ -4525,74 +4627,77 @@ ) ) ) - (cond - ((and (not s4-0) (zero? (logand (-> *game-info* purchase-secrets) (-> arg0 flag)))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s4-2 print-game-text)) - (format (clear *temp-string*) "~D" (-> arg0 cost)) - (s4-2 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s5-2 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f)) - (s5-2 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (= (-> arg0 can-toggle) #t) (zero? (logand (-> *game-info* secrets) (-> arg0 flag)))) - (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) - 50 - 45 - ) - ) - ) - (let ((s5-4 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f)) - (s5-4 *temp-string* arg2 #f 44 320) - ) - ) - ((and (not s4-0) (!= (-> arg0 can-toggle) #t)) - (let ((s3-8 80) - (s5-5 70) - (f30-3 (-> arg2 origin x)) + (the-as + pointer + (cond + ((and (not s4-0) (zero? (logand (-> *game-info* purchase-secrets) (-> arg0 flag)))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) ) - (set! s3-8 (cond - ((= (get-aspect-ratio) 'aspect4x3) - (empty) - s3-8 - ) - (else - s5-5 - ) - ) + (let ((s4-2 print-game-text)) + (format (clear *temp-string*) "~D" (-> arg0 cost)) + (s4-2 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (= (-> arg0 can-toggle) #t) (logtest? (-> *game-info* secrets) (-> arg0 flag))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) + ) + (let ((s5-2 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-on) #f)) + (s5-2 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (= (-> arg0 can-toggle) #t) (zero? (logand (-> *game-info* secrets) (-> arg0 flag)))) + (+! (-> arg2 origin x) (the float (if (= (get-aspect-ratio) 'aspect4x3) + 50 + 45 + ) + ) + ) + (let ((s5-4 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-off) #f)) + (s5-4 *temp-string* arg2 #f 44 320) + ) + ) + ((and (not s4-0) (!= (-> arg0 can-toggle) #t)) + (let ((s3-8 80) + (s5-5 70) + (f30-3 (-> arg2 origin x)) ) - (set! (-> arg2 origin x) (+ f30-3 (the float s3-8))) + (set! s3-8 (cond + ((= (get-aspect-ratio) 'aspect4x3) + (empty) + s3-8 + ) + (else + s5-5 + ) + ) + ) + (set! (-> arg2 origin x) (+ f30-3 (the float s3-8))) + ) + (let ((a0-61 arg2)) + (set! (-> a0-61 flags) (font-flags kerning right large)) + ) + (let ((s5-6 print-game-text)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-secrets-unlocked) #f)) + (s5-6 *temp-string* arg2 #f 44 320) + ) + (let ((v0-15 (the-as object arg2))) + (set! (-> (the-as font-context v0-15) flags) (font-flags kerning large)) + v0-15 + ) ) - (let ((a0-61 arg2)) - (set! (-> a0-61 flags) (font-flags kerning right large)) - ) - (let ((s5-6 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-1l2jnm31lk2m3) #f)) - (s5-6 *temp-string* arg2 #f 44 320) - ) - (let ((v0-32 arg2)) - (set! (-> v0-32 flags) (font-flags kerning large)) - ) - ) + ) ) ) - (none) ) ;; definition for method 10 of type menu-secret-option @@ -4912,7 +5017,7 @@ (sv-108 float) (sv-112 int) (sv-116 int) - (sv-120 vector) + (sv-120 hud-box) (sv-128 int) ) (set! sv-16 (* 2.0 (- 0.5 (-> arg0 menu-transition)))) @@ -4936,7 +5041,7 @@ (set! sv-108 (* (-> sv-48 sliding) sv-36)) (set! sv-112 (-> obj item-index)) (set! sv-116 (-> obj prev-item-index)) - (set! sv-120 (new 'stack-no-clear 'vector)) + (set! sv-120 (new 'stack-no-clear 'hud-box)) (set! sv-128 205) (if (< sv-16 0.0) (set! sv-16 (the-as float 0.0)) @@ -5036,7 +5141,7 @@ (clear *temp-string*) "x~D ~S" sv-24 - (lookup-text! *common-text* (game-text-id progress-1k2ijn1jkn3) #f) + (lookup-text! *common-text* (game-text-id progress-secrets-orb-label) #f) ) (s4-1 *temp-string* arg1 #f 44 320) ) @@ -5117,11 +5222,7 @@ ) ) ) - (let ((t9-31 end-scissor-secret)) - sv-120 - #x3f800000 - (t9-31) - ) + (end-scissor-secret sv-120 1.0) (draw-up-down arg1) ) ) @@ -5198,7 +5299,8 @@ ) ;; definition for function draw-highscore-cup -(defun draw-highscore-cup ((arg0 texture-page) (arg1 object) (arg2 int) (arg3 int) (arg4 float) (arg5 float)) +(defun draw-highscore-cup ((arg0 texture-page) (arg1 int) (arg2 int) (arg3 int) (arg4 float) (arg5 float)) + "First int is an enum" (let ((a0-1 (the-as uint #xc9300300))) (case arg1 ((3) @@ -5311,12 +5413,7 @@ ;; definition for function eval-highscore (defun eval-highscore ((arg0 print-highscore-obj)) - (-> *highscore-info-array* (get-highscore-score (-> arg0 index))) - (let ((t9-1 (method-of-type highscore-info highscore-info-method-9))) - (-> arg0 score) - (t9-1) - ) - (none) + (highscore-info-method-9 (-> *highscore-info-array* (get-highscore-score (-> arg0 index))) (-> arg0 score)) ) ;; definition for function str-print-time @@ -5387,13 +5484,13 @@ (cond ((zero? v1-8) (let ((gp-1 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-k1jnb231kjhnb23) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-1st) #f)) (gp-1 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 112) 174 0.25 @@ -5407,13 +5504,13 @@ ) (set! (-> sv-16 origin y) (+ 23.0 (-> sv-16 origin y))) (let ((gp-3 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-loj1n23) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-2nd) #f)) (gp-3 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 111) 197 0.22 @@ -5427,13 +5524,13 @@ ) (set! (-> sv-16 origin y) (+ 20.0 (-> sv-16 origin y))) (let ((gp-5 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2k3jn4234) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-3rd) #f)) (gp-5 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 110) 217 0.2 @@ -5447,13 +5544,13 @@ ) (set! (-> sv-16 origin y) (+ 15.0 (-> sv-16 origin y))) (let ((gp-7 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2kj3n24kn) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-4th) #f)) (gp-7 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 232 0.15 @@ -5464,13 +5561,13 @@ ((= v1-8 4) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-9 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2kjn34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-5th) #f)) (gp-9 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 244 0.15 @@ -5481,13 +5578,13 @@ ((= v1-8 5) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-11 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2klj342n43) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-6th) #f)) (gp-11 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 256 0.15 @@ -5498,13 +5595,13 @@ ((= v1-8 6) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-13 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-l2jm342m34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-7th) #f)) (gp-13 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 268 0.15 @@ -5515,13 +5612,13 @@ ((= v1-8 7) (set! (-> sv-16 origin y) (+ 12.0 (-> sv-16 origin y))) (let ((gp-15 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-2m342kmj34) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (game-text-id progress-highscores-8th) #f)) (gp-15 *temp-string* sv-16 #f 44 320) ) (if (not (-> sv-40 previous)) (draw-highscore-cup (-> sv-40 self) - (the-as object (eval-highscore sv-40)) + (eval-highscore sv-40) (+ (the int sv-20) 109) 280 0.15 @@ -6113,7 +6210,7 @@ (sv-100 float) (sv-104 float) (sv-108 float) - (sv-112 vector) + (sv-112 hud-box) (sv-116 print-highscore-obj) (sv-120 float) (sv-124 float) @@ -6127,7 +6224,7 @@ (set! sv-100 0.22) (set! sv-104 395.0) (set! sv-108 (-> arg1 origin x)) - (set! sv-112 (new 'stack-no-clear 'vector)) + (set! sv-112 (new 'stack-no-clear 'hud-box)) (set! sv-116 (new 'stack 'print-highscore-obj)) (set! sv-120 (* (-> arg0 sliding) sv-104)) (set! sv-124 (* (-> arg0 sliding-off) (-> obj slide-dir) sv-104)) @@ -6171,8 +6268,8 @@ (set! (-> sv-144 sprites 0 pos z) #xfffff0) (set! (-> sv-144 sprites 0 pos w) 0) (if (= (-> *setting-control* user-default language) (language-enum spanish)) - (draw-decoration (the-as menu-quit-qr-option sv-144) sv-140 sv-96 310 #t 0.8) - (draw-decoration (the-as menu-quit-qr-option sv-144) sv-140 sv-96 310 #t 0.95) + (draw-decoration sv-144 sv-140 sv-96 310 #t 0.8) + (draw-decoration sv-144 sv-140 sv-96 310 #t 0.95) ) (let ((v1-39 sv-140)) (set! (-> v1-39 scale) 0.6) @@ -6412,11 +6509,7 @@ (if (< 1 (get-num-highscores)) (draw-previous-next sv-144 sv-140 #t) ) - (let ((t9-47 end-scissor)) - sv-112 - #x3f800000 - (t9-47) - ) + (end-scissor sv-112 1.0) ) ) 0 @@ -6444,15 +6537,15 @@ (set! (-> a0-2 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -1.0 (-> arg1 origin y))) 41 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond (s3-0 (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6460,8 +6553,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6482,15 +6575,15 @@ ) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond (s3-0 (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6498,8 +6591,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-10 *temp-string*) ) @@ -6508,7 +6601,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-10) (-> obj scale) arg1 arg0) + (print-menu-text a0-10 (-> obj scale) arg1 arg0) 0 (none) ) @@ -6534,15 +6627,15 @@ (set! (-> a0-3 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -1.0 (-> arg1 origin y))) 41 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond (s3-0 (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6550,8 +6643,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6572,15 +6665,15 @@ ) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond (s3-0 (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6588,8 +6681,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -6598,7 +6691,7 @@ ) ) ) - (print-menu-text (the-as game-text-id a0-11) (-> obj scale) arg1 arg0) + (print-menu-text a0-11 (-> obj scale) arg1 arg0) 0 (none) ) @@ -6633,7 +6726,7 @@ (set! (-> a0-7 color) (font-color #f9f9f9)) ) (draw-highlight (the int (-> arg1 origin y)) 44 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 24.0 (-> arg1 origin y))) (-> obj language-selection) (let ((s4-1 (-> s4-0 0))) @@ -6698,7 +6791,7 @@ (let ((v1-52 arg1)) (set! (-> v1-52 scale) 0.65) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (let ((v1-54 arg1)) (set! (-> v1-54 scale) 0.5) ) @@ -6757,7 +6850,7 @@ ) (draw-highlight (the int (-> arg1 origin y)) 44 f30-0) (let ((s3-0 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) (s3-0 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 24.0 (-> arg1 origin y))) @@ -6825,7 +6918,7 @@ (set! (-> v1-52 scale) 0.65) ) (let ((s3-2 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) (s3-2 *temp-string* arg1 #f 44 320) ) (let ((v1-54 arg1)) @@ -6872,8 +6965,8 @@ (set! (-> a1-1 flags) (font-flags kerning middle large)) ) (if (= (-> *setting-control* user-default language) (language-enum spanish)) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f0-1 283 #f 0.85) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f0-1 283 #f 0.95) + (draw-decoration obj arg1 f0-1 283 #f 0.85) + (draw-decoration obj arg1 f0-1 283 #f 0.95) ) ) 0 @@ -6907,15 +7000,15 @@ (set! (-> a0-4 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 42 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 23.0 (-> arg1 origin y))) (cond ((= s3-0 'aspect4x3) (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6923,8 +7016,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6949,7 +7042,7 @@ ) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 23.0 (-> arg1 origin y))) (cond @@ -6957,8 +7050,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6966,8 +7059,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-kj1231nj23) #f) - (lookup-text! *common-text* (game-text-id progress-12434g343v) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-4x3) #f) + (lookup-text! *common-text* (game-text-id progress-aspect-16x9) #f) ) (set! a0-12 *temp-string*) ) @@ -6979,9 +7072,9 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id a0-12) (-> obj scale) arg1 arg0) + (print-menu-text a0-12 (-> obj scale) arg1 arg0) ) - (draw-decoration (the-as menu-quit-qr-option obj) arg1 f30-0 284 #f 0.95) + (draw-decoration obj arg1 f30-0 284 #f 0.95) ) 0 (none) @@ -7016,15 +7109,15 @@ (set! (-> a0-3 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 42 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond (s3-0 (format (clear *temp-string*) "~33L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -7032,8 +7125,8 @@ (format (clear *temp-string*) "~35L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -7058,7 +7151,7 @@ ) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 18.0 (-> arg1 origin y))) (cond @@ -7066,8 +7159,8 @@ (format (clear *temp-string*) "~1L~S~35L ~S" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -7075,8 +7168,8 @@ (format (clear *temp-string*) "~35L~S ~1L~S~1L" - (lookup-text! *common-text* (game-text-id progress-on-off-1TODO) #f) - (lookup-text! *common-text* (game-text-id progress-on-off-2TODO) #f) + (lookup-text! *common-text* (game-text-id progress-on) #f) + (lookup-text! *common-text* (game-text-id progress-off) #f) ) (set! a0-11 *temp-string*) ) @@ -7089,7 +7182,7 @@ (-> *progress-state* graphic-options-item-picked) ) ) - (print-menu-text (the-as game-text-id a0-11) (-> obj scale) arg1 arg0) + (print-menu-text a0-11 (-> obj scale) arg1 arg0) ) 0 (none) @@ -7143,7 +7236,7 @@ (clear *temp-string*) "~33L~C~34L~S~33L~C" 163 - (lookup-text! *common-text* (game-text-id progress-1k2jn1kj2n3) #f) + (lookup-text! *common-text* (game-text-id progress-move-dpad) #f) 161 ) (s5-2 *temp-string* arg1 #f 44 320) @@ -7171,7 +7264,13 @@ (let ((v1-37 arg1)) (set! (-> v1-37 scale) 0.5) ) - (print-game-text (lookup-text! *common-text* (game-text-id progress-2kj3n2kji3n42) #f) arg1 #f 44 320) + (print-game-text + (lookup-text! *common-text* (game-text-id progress-unknown-square-to-reset) #f) + arg1 + #f + 44 + 320 + ) ) (else (set! (-> arg1 origin y) (+ 5.0 (-> arg1 origin y))) @@ -7188,7 +7287,7 @@ ) ) ) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) ) ) @@ -7218,7 +7317,7 @@ (set! (-> a0-2 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 50 f0-1) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (let ((v1-17 arg1)) (set! (-> v1-17 scale) 0.6) @@ -7228,8 +7327,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-11 *temp-string*) ) @@ -7237,8 +7336,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-11 *temp-string*) ) @@ -7249,7 +7348,7 @@ (if (and (= (-> arg0 option-index) arg2) (zero? (-> *progress-state* qr-options-item-selected))) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 26 f0-1) ) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) *temp-string* ) ) @@ -7283,7 +7382,7 @@ (set! (-> a0-3 color) (font-color #f9f9f9)) ) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 50 f30-0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (set! (-> arg1 origin y) (+ 25.0 (-> arg1 origin y))) (let ((v1-18 arg1)) (set! (-> v1-18 scale) 0.6) @@ -7293,8 +7392,8 @@ (format (clear *temp-string*) "~33L~S~32L ~S" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-12 *temp-string*) ) @@ -7302,8 +7401,8 @@ (format (clear *temp-string*) "~32L~S ~33L~S~1L" - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-1-TODO) #f) - (lookup-text! *common-text* (game-text-id progress-draw-yes-or-no-2-TODO) #f) + (lookup-text! *common-text* (game-text-id progress-yes) #f) + (lookup-text! *common-text* (game-text-id progress-no) #f) ) (set! a0-12 *temp-string*) ) @@ -7314,7 +7413,7 @@ (if (and (= (-> arg0 option-index) arg2) (= (-> *progress-state* qr-options-item-selected) 1)) (draw-highlight (the int (+ -2.0 (-> arg1 origin y))) 26 f30-0) ) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) *temp-string* ) ) @@ -7342,7 +7441,7 @@ ;; WARN: Return type mismatch int vs none. (defmethod menu-option-method-10 menu-slider-option ((obj menu-slider-option) (arg0 progress) (arg1 font-context) (arg2 int) (arg3 symbol)) (local-vars - (v0-42 none) + (v0-42 pointer) (sv-16 progress) (sv-32 symbol) (sv-48 int) @@ -7449,7 +7548,7 @@ ) (draw-highlight (the int (+ -2.0 (-> s5-0 origin y))) 52 f30-0) (set! sv-144 print-game-text) - (let ((a0-15 (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (let ((a0-15 (lookup-text! *common-text* (-> obj name) #f)) (a1-3 s5-0) (a2-3 #f) (a3-1 44) @@ -7580,7 +7679,7 @@ (draw-highlight (the int (+ -2.0 (-> s5-0 origin y))) 24 f30-0) ) (set! sv-224 print-game-text) - (let ((a0-81 (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (let ((a0-81 (lookup-text! *common-text* (-> obj name) #f)) (a1-21 s5-0) (a2-18 #f) (a3-8 44) @@ -7747,7 +7846,7 @@ ) (draw-highlight (the int (+ -1.0 (-> arg1 origin y))) 42 f30-0) (let ((s3-1 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) (s3-1 *temp-string* arg1 #f 44 320) ) (set! (-> arg1 origin y) (+ 22.0 (-> arg1 origin y))) @@ -7788,7 +7887,7 @@ (set! (-> v1-37 scale) 0.65) ) (let ((s3-4 print-game-text)) - (format (clear *temp-string*) "~S" (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) + (format (clear *temp-string*) "~S" (lookup-text! *common-text* (-> obj name) #f)) (s3-4 *temp-string* arg1 #f 44 320) ) (let ((v1-39 arg1)) @@ -7877,7 +7976,7 @@ ) ) (if (and (and (= arg2 (-> arg0 option-index)) (!= 298 (-> obj name))) - (not (and (= (-> obj name) 339) + (not (and (= (-> obj name) (game-text-id progress-root-secrets)) (= *title* (-> arg0 current-options)) (not (memcard-unlocked-secrets? #f)) (= (-> arg0 option-index) 3) @@ -7889,7 +7988,7 @@ (cond ((= *save-options-title* (-> arg0 current-options)) (cond - ((= (-> obj name) 298) + ((= (-> obj name) (game-text-id progress-continue-without-saving)) (cond ((= arg2 (-> arg0 option-index)) (let ((v1-39 arg1)) @@ -7917,7 +8016,7 @@ ) ) (set! (-> arg1 height) 260.0) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) (when (= arg2 (-> arg0 option-index)) (let ((s4-1 69) (s2-4 110) @@ -7957,21 +8056,16 @@ ) ) ) - (let ((v1-70 (&-> obj unknown-options 3))) - (set! (-> v1-70 0) (the-as menu-option 64)) - (set! (-> v1-70 1) (the-as menu-option 128)) - (set! (-> v1-70 2) (the-as menu-option 128)) - (set! (-> v1-70 3) (the-as menu-option (the int (* 128.0 f30-0)))) - ) + (set-vector! (-> obj box 0 color) 64 128 128 (the int (* 128.0 f30-0))) (draw-savegame-box - (the-as menu-memcard-slot-option obj) + obj (the float s4-1) (the float (+ s4-1 s3-1)) (the float (+ s2-4 (* s1-1 arg2))) (the float (+ s2-4 (* s1-1 arg2))) ) (draw-savegame-box - (the-as menu-memcard-slot-option obj) + obj (the float (+ s4-1 s3-1)) (the float (+ s4-1 s3-1)) (the float s2-4) @@ -8015,18 +8109,13 @@ ((= *load-save-options* (-> arg0 current-options)) (set! (-> arg1 origin x) (+ -100.0 (-> arg1 origin x))) (set! (-> arg1 origin y) (+ -25.0 (-> arg1 origin y))) - (print-menu-text - (the-as game-text-id (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f)) - (-> obj scale) - arg1 - arg0 - ) + (print-menu-text (lookup-text! *common-text* (-> obj name) #f) (-> obj scale) arg1 arg0) ) ((and (= *title* (-> arg0 current-options)) (= 339 (-> obj name)) (memcard-unlocked-secrets? #f)) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) - ((!= (-> obj name) 339) - (print-game-text (lookup-text! *common-text* (the-as game-text-id (-> obj name)) #f) arg1 #f 44 320) + ((!= (-> obj name) (game-text-id progress-root-secrets)) + (print-game-text (lookup-text! *common-text* (-> obj name) #f) arg1 #f 44 320) ) ) ) diff --git a/test/decompiler/reference/jak2/engine/ui/progress/progress-h_REF.gc b/test/decompiler/reference/jak2/engine/ui/progress/progress-h_REF.gc index 2bfb7d5ae1..fb16c612d5 100644 --- a/test/decompiler/reference/jak2/engine/ui/progress/progress-h_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/progress/progress-h_REF.gc @@ -39,7 +39,7 @@ (go-away () _type_ :state 22) (gone () _type_ :state 23) (init-defaults (_type_) connection 24) - (progress-method-25 (_type_ object object symbol) none 25) + (progress-method-25 (_type_) none 25) (progress-method-26 (_type_) object 26) (can-go-back? (_type_) symbol 27) (progress-method-28 (_type_ symbol) symbol 28) @@ -90,11 +90,11 @@ ;; definition of type menu-option (deftype menu-option (basic) - ((name uint32 :offset-assert 4) - (scale float :offset-assert 8) - (unknown function :offset-assert 12) - (box menu-option 1 :offset-assert 16) - (unknown-options menu-option 7 :offset-assert 20) + ((name game-text-id :offset-assert 4) + (scale float :offset-assert 8) + (unknown function :offset-assert 12) + (box hud-box 1 :inline :offset-assert 16) + (unknown-options menu-option 8 :offset 16) ) :method-count-assert 12 :size-assert #x30 diff --git a/test/decompiler/reference/jak2/engine/ui/progress/progress-static_REF.gc b/test/decompiler/reference/jak2/engine/ui/progress/progress-static_REF.gc index 41394a9c86..23637e575f 100644 --- a/test/decompiler/reference/jak2/engine/ui/progress/progress-static_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/progress/progress-static_REF.gc @@ -180,9 +180,9 @@ ) ) -;; definition for symbol *stereo-mode-name-remap*, type (array uint64) +;; definition for symbol *stereo-mode-name-remap*, type (array game-text-id) (define *stereo-mode-name-remap* - (the-as (array uint64) (new 'static 'boxed-array :type uint32 #x104 #x105 #x106)) + (the-as (array game-text-id) (new 'static 'boxed-array :type uint32 #x104 #x105 #x106)) ) ;; definition for symbol *hud-ring-graphic-remap*, type (array uint64) diff --git a/test/decompiler/reference/jak2/engine/ui/progress/progress_REF.gc b/test/decompiler/reference/jak2/engine/ui/progress/progress_REF.gc index 143ec8fc93..dba5722fd6 100644 --- a/test/decompiler/reference/jak2/engine/ui/progress/progress_REF.gc +++ b/test/decompiler/reference/jak2/engine/ui/progress/progress_REF.gc @@ -191,7 +191,7 @@ (set! (-> obj scanlines-alpha) 0.0) (set! (-> (the-as menu-on-off-game-vibrations-option - (-> (the-as menu-on-off-game-vibrations-option (-> *game-options* options 0)) box 0) + (-> (the-as menu-on-off-game-vibrations-option (-> *game-options* options 0)) box 0 min x) ) value-to-modify ) @@ -199,86 +199,71 @@ ) (set! (-> (the-as menu-on-off-game-subtitles-option - (-> (the-as menu-on-off-game-subtitles-option (-> *game-options* options 0)) unknown-options 0) + (-> (the-as menu-on-off-game-subtitles-option (-> *game-options* options 0)) box 0 min y) ) value-to-modify ) (&-> *setting-control* user-default subtitle) ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as menu-language-option (-> *game-options* options 0)) box 0 max x)) language-selection ) (-> *setting-control* user-current language) ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as menu-language-option (-> *game-options* options 0)) box 0 max x)) language-direction ) #t ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as menu-language-option (-> *game-options* options 0)) box 0 max x)) language-transition ) #f ) - (set! (-> (the-as - menu-language-option - (-> (the-as menu-language-option (-> *game-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-language-option (-> (the-as menu-language-option (-> *game-options* options 0)) box 0 max x)) language-x-offset ) 0 ) - (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-japan* options 0)) box 0)) + (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-japan* options 0)) box 0 min x)) value-to-modify ) (&-> *setting-control* user-default vibration) ) - (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-demo* options 0)) box 0)) + (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *game-options-demo* options 0)) box 0 min x)) value-to-modify ) (&-> *setting-control* user-default vibration) ) - (set! (-> (the-as - menu-on-off-option - (-> (the-as menu-on-off-option (-> *graphic-options* options 0)) unknown-options 1) - ) + (set! (-> (the-as menu-on-off-option (-> (the-as menu-on-off-option (-> *graphic-options* options 0)) box 0 max x)) value-to-modify ) (&-> *setting-control* user-default use-progressive-scan) ) (set! (-> (the-as menu-on-off-option - (-> (the-as menu-on-off-option (-> *graphic-title-options-pal* options 0)) unknown-options 1) + (-> (the-as menu-on-off-option (-> *graphic-title-options-pal* options 0)) box 0 max x) ) value-to-modify ) (&-> *setting-control* user-default use-progressive-scan) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) box 0)) + (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) box 0 min x)) value-to-modify ) (&-> *setting-control* user-default sfx-volume) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) unknown-options 0)) + (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) box 0 min y)) value-to-modify ) (&-> *setting-control* user-default music-volume) ) - (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) unknown-options 1)) + (set! (-> (the-as menu-slider-option (-> (the-as menu-slider-option (-> *sound-options* options 0)) box 0 max x)) value-to-modify ) (&-> *setting-control* user-default dialog-volume) ) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0 min x)) task-line-index ) 0 @@ -875,7 +860,7 @@ (('loading) (set! (-> *progress-state* last-slot-saved) (-> *progress-state* which-slot)) (auto-save-command 'restore 0 (-> *progress-state* which-slot) obj #f) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0 min x)) task-line-index ) 0 @@ -1030,7 +1015,7 @@ (set! (-> obj current-options) *select-start-options*) (set! (-> (the-as menu-select-start-option - (-> (the-as menu-select-start-option (-> *select-start-options* options 0)) box 0) + (-> (the-as menu-select-start-option (-> *select-start-options* options 0)) box 0 min x) ) task-index ) @@ -1042,7 +1027,7 @@ (set! (-> obj current-options) *select-scene-options*) (set! (-> (the-as menu-select-scene-option - (-> (the-as menu-select-scene-option (-> *select-scene-options* options 0)) box 0) + (-> (the-as menu-select-scene-option (-> *select-scene-options* options 0)) box 0 min x) ) task-index ) @@ -1077,7 +1062,7 @@ ) (('missions) (set! (-> *progress-state* missions-total-spacing) 0.0) - (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0)) + (set! (-> (the-as menu-missions-option (-> (the-as menu-missions-option (-> *missions-options* options 0)) box 0 min x)) task-line-index ) 0 @@ -1085,12 +1070,18 @@ (set! (-> obj current-options) *missions-options*) ) (('highscores) - (set! (-> (the-as menu-highscores-option (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0)) + (set! (-> (the-as + menu-highscores-option + (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0 min x) + ) page-index ) 0 ) - (set! (-> (the-as menu-highscores-option (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0)) + (set! (-> (the-as + menu-highscores-option + (-> (the-as menu-highscores-option (-> *highscores-options* options 0)) box 0 min x) + ) prev-page-index ) 0 @@ -1117,13 +1108,13 @@ ;; definition for method 25 of type progress ;; WARN: Return type mismatch int vs none. -(defmethod progress-method-25 progress ((obj progress) (arg0 object) (arg1 object) (arg2 symbol)) +(defmethod progress-method-25 progress ((obj progress)) (mc-get-slot-info 0 *progress-save-info*) (when (-> obj current-options) (let ((s5-0 (-> obj current-options options 0))) (when (and s5-0 (= (-> obj menu-transition) 0.0)) (respond-progress - (-> (the-as menu-option (+ (* (-> obj option-index) 4) (the-as int s5-0))) box 0) + (the-as menu-option (-> s5-0 unknown-options (-> obj option-index))) obj (and (= (-> obj menu-transition) 0.0) (-> obj selected-option)) ) @@ -1213,1041 +1204,188 @@ ) ;; definition for function progress-trans -;; ERROR: failed type prop at 0: Could not figure out load: (set! v1 (l.wu (+ s6 228))) -(defun progress-trans () - (local-vars - (v0-0 none) - (v0-1 none) - (v0-2 none) - (v0-3 none) - (v0-4 none) - (v0-5 none) - (v0-6 none) - (v0-7 none) - (v0-8 none) - (v0-9 none) - (v0-10 none) - (v0-11 none) - (v0-12 none) - (v0-13 none) - (v0-14 none) - (v0-15 none) - (v0-16 none) - (v0-17 none) - (v0-18 none) - (v0-19 none) - (v0-20 none) - (v0-21 none) - (v0-22 none) - (v0-23 none) - (v0-24 none) - (v0-25 none) - (v1-0 none) - (v1-1 none) - (v1-2 none) - (v1-3 none) - (v1-4 none) - (v1-5 none) - (v1-6 none) - (v1-7 none) - (v1-8 none) - (v1-10 none) - (v1-11 none) - (v1-12 none) - (v1-13 none) - (v1-14 none) - (v1-15 none) - (v1-16 none) - (v1-17 none) - (v1-18 none) - (v1-19 none) - (v1-20 none) - (v1-21 none) - (v1-22 none) - (v1-24 none) - (v1-25 none) - (v1-26 none) - (v1-27 none) - (v1-30 none) - (v1-31 none) - (v1-32 none) - (v1-33 none) - (v1-34 none) - (v1-35 none) - (v1-36 none) - (v1-38 none) - (v1-40 none) - (v1-41 none) - (v1-42 none) - (v1-43 none) - (v1-44 none) - (v1-45 none) - (v1-47 none) - (v1-49 none) - (v1-50 none) - (v1-52 none) - (v1-54 none) - (v1-56 none) - (v1-57 none) - (v1-58 none) - (v1-60 none) - (v1-61 none) - (v1-62 none) - (v1-63 none) - (v1-64 none) - (v1-65 none) - (v1-67 none) - (v1-68 none) - (v1-70 none) - (v1-71 none) - (v1-72 none) - (v1-73 none) - (v1-74 none) - (v1-75 none) - (v1-77 none) - (v1-78 none) - (v1-79 none) - (v1-82 none) - (v1-84 none) - (v1-86 none) - (v1-87 none) - (v1-89 none) - (v1-92 none) - (v1-94 none) - (v1-97 none) - (v1-99 none) - (v1-100 none) - (v1-101 none) - (v1-102 none) - (v1-104 none) - (v1-105 none) - (v1-106 none) - (v1-107 none) - (v1-108 none) - (v1-109 none) - (v1-111 none) - (v1-112 none) - (v1-113 none) - (v1-114 none) - (v1-116 none) - (v1-117 none) - (v1-118 none) - (v1-119 none) - (v1-120 none) - (v1-121 none) - (v1-122 none) - (v1-124 none) - (v1-125 none) - (v1-126 none) - (v1-127 none) - (v1-128 none) - (v1-129 none) - (v1-131 none) - (v1-132 none) - (v1-133 none) - (v1-134 none) - (v1-135 none) - (v1-136 none) - (v1-138 none) - (v1-139 none) - (v1-140 none) - (v1-141 none) - (v1-143 none) - (v1-145 none) - (v1-146 none) - (v1-147 none) - (v1-148 none) - (v1-149 none) - (v1-150 none) - (v1-152 none) - (v1-154 none) - (v1-156 none) - (v1-158 none) - (v1-160 none) - (v1-161 none) - (v1-163 none) - (v1-164 none) - (v1-165 none) - (v1-166 none) - (v1-167 none) - (v1-168 none) - (v1-169 none) - (v1-170 none) - (v1-171 none) - (v1-172 none) - (v1-173 none) - (v1-176 none) - (a0-0 none) - (a0-1 none) - (a0-2 none) - (a0-3 none) - (a0-6 none) - (a0-7 none) - (a0-8 none) - (a0-9 none) - (a0-10 none) - (a0-11 none) - (a0-12 none) - (a0-13 none) - (a0-14 none) - (a0-15 none) - (a0-16 none) - (a0-17 none) - (a0-18 none) - (a0-19 none) - (a0-20 none) - (a0-21 none) - (a0-22 none) - (a0-25 none) - (a0-26 none) - (a0-28 none) - (a0-29 none) - (a0-30 none) - (a0-32 none) - (a0-33 none) - (a0-34 none) - (a0-35 none) - (a0-36 none) - (a0-37 none) - (a0-39 none) - (a0-40 none) - (a0-41 none) - (a0-42 none) - (a0-48 none) - (a0-49 none) - (a0-54 none) - (a0-55 none) - (a0-56 none) - (a1-0 none) - (a1-1 none) - (a1-2 none) - (a1-3 none) - (a1-4 none) - (a1-6 none) - (a1-9 none) - (a1-10 none) - (a1-14 none) - (a1-15 none) - (a2-6 none) - (a2-7 none) - (a3-0 none) - (a3-1 none) - (a3-2 none) - (s3-0 none) - (s4-0 none) - (s4-1 none) - (s4-2 none) - (s4-3 none) - (s5-0 none) - (s5-1 none) - (s5-2 none) - (s5-3 none) - (t9-0 none) - (t9-1 none) - (t9-2 none) - (t9-3 none) - (t9-4 none) - (t9-5 none) - (t9-6 none) - (t9-7 none) - (t9-8 none) - (t9-9 none) - (t9-10 none) - (t9-11 none) - (t9-12 none) - (t9-13 none) - (t9-14 none) - (t9-15 none) - (t9-16 none) - (t9-17 none) - (t9-18 none) - (t9-19 none) - (t9-20 none) - (t9-21 none) - (t9-22 none) - (t9-23 none) - (t9-24 none) - (gp-0 none) - (gp-1 none) - (gp-2 none) - (gp-3 none) - (sp-0 none) - (f0-0 none) - (f0-1 none) - (f0-2 none) - (f0-3 none) - (f0-4 none) - (f0-5 none) - (f0-6 none) - (f0-7 none) - (f0-8 none) - (f0-9 none) - (f0-10 none) - (f0-11 none) - (f0-12 none) - (f0-13 none) - (f0-14 none) - (f0-15 none) - (f0-16 none) - (f0-17 none) - (f0-18 none) - (f0-19 none) - (f0-20 none) - (f0-21 none) - (f0-22 none) - (f0-23 none) - (f0-24 none) - (f0-25 none) - (f0-26 none) - (f0-27 none) - (f0-28 none) - (f0-29 none) - (f0-30 none) - (f0-31 none) - (f0-32 none) - (f0-33 none) - (f0-34 none) - (f0-35 none) - (f0-36 none) - (f0-37 none) - (f0-38 none) - (f0-39 none) - (f0-40 none) - (f0-41 none) - (f0-42 none) - (f0-43 none) - (f0-44 none) - (f0-45 none) - (f0-46 none) - (f0-47 none) - (f0-48 none) - (f0-49 none) - (f0-50 none) - (f0-51 none) - (f0-52 none) - (f0-53 none) - (f0-54 none) - (f0-55 none) - (f0-56 none) - (f0-57 none) - (f0-58 none) - (f0-59 none) - (f0-60 none) - (f0-61 none) - (f0-62 none) - (f0-63 none) - (f0-64 none) - (f0-65 none) - (f0-66 none) - (f0-67 none) - (f0-68 none) - (f0-69 none) - (f0-70 none) - (f0-71 none) - (f0-72 none) - (f0-73 none) - (f0-74 none) - (f1-0 none) - (f1-1 none) - (f1-2 none) - (f1-3 none) - (f1-4 none) - (f1-5 none) - (f1-6 none) - (f1-7 none) - (f1-8 none) - (f1-9 none) - (f1-10 none) - (f1-11 none) - (f1-12 none) - (f1-13 none) - (f1-14 none) - (f1-15 none) - (f1-16 none) - (f1-17 none) - (f1-18 none) - (f1-19 none) - (f1-20 none) - (f1-21 none) - (f1-22 none) - (f1-23 none) - (f1-24 none) - (f1-25 none) - (f1-26 none) - (f1-27 none) - (f1-28 none) - (f1-29 none) - (f1-30 none) - (f1-31 none) - (f1-32 none) - (f2-0 none) - (f2-1 none) - (f2-2 none) - (f2-3 none) - (f28-0 none) - (f28-1 none) - (f30-0 none) - (f30-1 none) - (f30-2 none) - ) - (with-pp - (when (begin - (when (begin - (cond - ((begin - (when (begin - (cond - ((begin - (and (begin - (set! v1-0 (the-as none (l.wu (+ s6-0 228)))) - (set! a0-0 (the-as none 'none)) - (set! a0-1 (the-as none (= v1-0 a0-0))) - a0-1 - ) - (or (begin - (set! v1-2 (the-as none *progress-state*)) - (set! v1-3 (the-as none (l.wu (+ v1-2 20)))) - (set! a0-2 (the-as none 'main)) - (set! a0-3 (the-as none (= v1-3 a0-2))) - a0-3 - ) - (begin - (set! f0-0 (the-as none (l.f (+ s6-0 272)))) - (set! v1-4 (the-as none #x3f800000)) - (set! f1-0 (the-as none (gpr->fpr v1-4))) - (set! v1-1 (the-as none (=.s f0-0 f1-0))) - ) - ) - ) - v1-1 - ) - (set! t9-0 (the-as none seek-ease)) - (set! f0-1 (the-as none (l.f (+ s6-0 200)))) - (set! a0-4 (the-as none (fpr->gpr f0-1))) - (set! a1-0 (the-as none 0)) - (set! v1-5 (the-as none #x3dcccccd)) - (set! f0-2 (the-as none (gpr->fpr v1-5))) - (set! v1-6 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-1 (the-as none (l.f (+ v1-6 84)))) - (set! f0-3 (the-as none (*.s f0-2 f1-1))) - (set! a2-0 (the-as none (fpr->gpr f0-3))) - (set! a3-0 (the-as none #x3ecccccd)) - (set! v1-7 (the-as none #x3c23d70a)) - (set! f0-4 (the-as none (gpr->fpr v1-7))) - (set! v1-8 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-2 (the-as none (l.f (+ v1-8 84)))) - (set! f0-5 (the-as none (*.s f0-4 f1-2))) - (set! t0-0 (the-as none (fpr->gpr f0-5))) - (set! v0-0 (the-as none (call!))) - (set! f0-6 (the-as none (gpr->fpr v0-0))) - (s.f! (+ s6-0 200) f0-6) - (set! v1-9 (the-as none (fpr->gpr f0-6))) - ) - (else - (when (begin - (and (begin - (set! t9-1 (the-as none seek)) - (set! f0-7 (the-as none (l.f (+ s6-0 200)))) - (set! a0-5 (the-as none (fpr->gpr f0-7))) - (set! a1-1 (the-as none #x3f800000)) - (set! v1-10 (the-as none #x3dcccccd)) - (set! f0-8 (the-as none (gpr->fpr v1-10))) - (set! v1-11 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-3 (the-as none (l.f (+ v1-11 84)))) - (set! f0-9 (the-as none (*.s f0-8 f1-3))) - (set! a2-1 (the-as none (fpr->gpr f0-9))) - (set! v0-1 (the-as none (call!))) - (set! f0-10 (the-as none (gpr->fpr v0-1))) - (s.f! (+ s6-0 200) f0-10) - (set! f0-11 (the-as none (l.f (+ s6-0 200)))) - (set! v1-12 (the-as none #x3f800000)) - (set! f1-4 (the-as none (gpr->fpr v1-12))) - (set! v1-13 (the-as none (=.s f0-11 f1-4))) - v1-13 - ) - (or (begin - (and (begin (set! v1-15 (the-as none (l.w (+ s6-0 324)))) (nonzero? v1-15)) - (begin - (set! f0-12 (the-as none (l.f (+ s6-0 272)))) - (set! v1-17 (the-as none #x3f800000)) - (set! f1-5 (the-as none (gpr->fpr v1-17))) - (set! v1-16 (the-as none (=.s f0-12 f1-5))) - ) - ) - v1-16 - ) - (begin - (and (begin (set! v1-18 (the-as none (l.w (+ s6-0 324)))) (zero? v1-18)) - (begin - (set! f0-13 (the-as none (l.f (+ s6-0 272)))) - (set! f1-6 (the-as none 0)) - (set! v1-19 (the-as none (=.s f0-13 f1-6))) - ) - ) - (or v1-19 - (and (begin - (set! v1-20 (the-as none *progress-state*)) - (set! v1-21 (the-as none (l.wu (+ v1-20 20)))) - (set! a0-6 (the-as none 'main)) - (set! a0-7 (the-as none (!= v1-21 a0-6))) - a0-7 - ) - (begin - (set! v1-22 (the-as none (l.wu (+ s6-0 228)))) - (set! a0-8 (the-as none 'none)) - (set! v1-14 (the-as none (!= v1-22 a0-8))) - ) - ) - ) - ) - ) - ) - v1-14 - ) - (set! v1-24 (the-as none (l.wu (+ s6-0 228)))) - (s.w! (+ s6-0 224) v1-24) - (set! v1-25 (the-as none 'none)) - (s.w! (+ s6-0 228) v1-25) - (set! v1-26 (the-as none (l.w (+ s6-0 212)))) - (s.w! (+ s6-0 204) v1-26) - (s.w! (+ s6-0 208) 0) - (set! a0-9 (the-as none s6-0)) - (set! v1-27 (the-as none (l.wu (+ a0-9 -4)))) - (set! t9-2 (the-as none (l.wu (+ v1-27 144)))) - (set! a1-2 (the-as none (l.wu (+ s6-0 224)))) - (call!) - (set! v1-28 (the-as none v0-2)) - (set! f0-14 (the-as none 0)) - (s.f! (+ s6-0 344) f0-14) - (set! v1-29 (the-as none (fpr->gpr f0-14))) - ) - ) - ) - (and (begin (set! v1-30 (the-as none (l.w (+ s6-0 324)))) (zero? v1-30)) - (begin - (set! f0-15 (the-as none (l.f (+ s6-0 200)))) - (set! f1-7 (the-as none 0)) - (set! v1-32 (the-as none (=.s f0-15 f1-7))) - (and v1-32 - (begin - (set! v1-33 (the-as none (l.wu (+ s6-0 228)))) - (set! a0-10 (the-as none 'none)) - (set! a0-11 (the-as none (= v1-33 a0-10))) - a0-11 - ) - (or (begin - (set! v1-34 (the-as none (l.wu (+ s6-0 284)))) - (set! a0-12 (the-as none 'main)) - (set! a0-13 (the-as none (= v1-34 a0-12))) - a0-13 - ) - (begin - (set! v1-35 (the-as none (l.wu (+ s6-0 224)))) - (set! a0-14 (the-as none 'main)) - (set! v1-31 (the-as none (= v1-35 a0-14))) - ) - ) - ) - ) - ) - (s.w! (+ s6-0 280) v1-31) - (set! v1-36 (the-as none *cheat-mode*)) - v1-36 - ) - (when (begin (set! v1-38 (the-as none (l.w (+ s6-0 324)))) (zero? v1-38)) - (cond - ((begin - (and (begin - (set! v1-40 (the-as none *cpad-list*)) - (set! v1-41 (the-as none (l.wu (+ v1-40 4)))) - (set! v1-42 (the-as none (l.wu (+ v1-41 40)))) - (set! v1-43 (the-as none (logand v1-42 256))) - (nonzero? v1-43) - ) - (begin - (set! v1-45 (the-as none #t)) - (set! a0-15 (the-as none *cpad-list*)) - (set! a0-16 (the-as none (l.wu (+ a0-15 4)))) - (set! a0-17 (the-as none (l.wu (+ a0-16 40)))) - (set! a0-18 (the-as none (logand a0-17 2048))) - (cmove-#f-zero v1-44 a0-18 v1-45) - ) - ) - v1-44 - ) - (when (begin - (set! v1-47 (the-as none *main-options*)) - (set! a0-19 (the-as none (l.wu (+ s6-0 196)))) - (= a0-19 v1-47) - ) - (set! v1-49 (the-as none *main-options-debug*)) - (s.w! (+ s6-0 196) v1-49) - ) - ) - ((begin - (set! v1-50 (the-as none *main-options-debug*)) - (set! a0-20 (the-as none (l.wu (+ s6-0 196)))) - (= a0-20 v1-50) - ) - (set! v1-52 (the-as none *main-options*)) - (s.w! (+ s6-0 196) v1-52) - ) - ) - ) - ) - (when (begin - (set! f0-16 (the-as none (l.f (+ s6-0 232)))) - (set! f1-8 (the-as none (l.f (+ s6-0 236)))) - (=.s f0-16 f1-8) - ) - (set! a0-21 (the-as none s6-0)) - (set! v1-54 (the-as none (l.wu (+ a0-21 -4)))) - (set! t9-3 (the-as none (l.wu (+ v1-54 116)))) - (call!) - (set! v1-55 (the-as none v0-3)) - ) - (set! v1-56 (the-as none #x3ba3d70a)) - (set! f0-17 (the-as none (gpr->fpr v1-56))) - (set! v1-57 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-9 (the-as none (l.f (+ v1-57 84)))) - (set! f30-0 (the-as none (*.s f0-17 f1-9))) - (set! f0-18 (the-as none (l.f (+ s6-0 200)))) - (set! v1-58 (the-as none #x3f800000)) - (set! f1-10 (the-as none (gpr->fpr v1-58))) - (=.s f0-18 f1-10) - ) - (when (begin - (and (begin - (and (begin (set! v1-60 (the-as none (l.w (+ s6-0 324)))) (zero? v1-60)) - (begin - (set! v1-62 (the-as none *progress-state*)) - (set! v1-63 (the-as none (l.wu (+ v1-62 20)))) - (set! a0-22 (the-as none 'main)) - (set! v1-61 (the-as none (= v1-63 a0-22))) - ) - ) - (cond - (v1-61 - (set! t9-4 (the-as none seek)) - (set! f0-19 (the-as none (l.f (+ s6-0 272)))) - (set! a0-23 (the-as none (fpr->gpr f0-19))) - (set! a1-3 (the-as none 0)) - (set! v1-64 (the-as none #x3ca3d70a)) - (set! f0-20 (the-as none (gpr->fpr v1-64))) - (set! v1-65 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-11 (the-as none (l.f (+ v1-65 84)))) - (set! f0-21 (the-as none (*.s f0-20 f1-11))) - (set! a2-2 (the-as none (fpr->gpr f0-21))) - (set! v0-4 (the-as none (call!))) - (set! f0-22 (the-as none (gpr->fpr v0-4))) - (s.f! (+ s6-0 272) f0-22) - (set! v1-66 (the-as none (fpr->gpr f0-22))) - ) - (else - (set! t9-5 (the-as none seek)) - (set! f0-23 (the-as none (l.f (+ s6-0 272)))) - (set! a0-24 (the-as none (fpr->gpr f0-23))) - (set! a1-4 (the-as none #x3f800000)) - (set! v1-67 (the-as none #x3ca3d70a)) - (set! f0-24 (the-as none (gpr->fpr v1-67))) - (set! v1-68 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-12 (the-as none (l.f (+ v1-68 84)))) - (set! f0-25 (the-as none (*.s f0-24 f1-12))) - (set! a2-3 (the-as none (fpr->gpr f0-25))) - (set! v0-5 (the-as none (call!))) - (set! f0-26 (the-as none (gpr->fpr v0-5))) - (s.f! (+ s6-0 272) f0-26) - (set! v1-69 (the-as none (fpr->gpr f0-26))) - ) - ) - (set! v1-70 (the-as none (l.w (+ s6-0 324)))) - (zero? v1-70) - ) - (begin - (set! v1-72 (the-as none *progress-state*)) - (set! v1-73 (the-as none (l.wu (+ v1-72 20)))) - (set! a0-25 (the-as none 'title)) - (set! v1-71 (the-as none (!= v1-73 a0-25))) - ) - ) - (if v1-71 - (set! v1-74 (the-as none 0)) - (set! v1-74 (the-as none #x3e4ccccd)) - ) - (set! f0-27 (the-as none (gpr->fpr v1-74))) - (set! v1-75 (the-as none 'bigmap)) - (set! a0-26 (the-as none (l.wu (+ s6-0 228)))) - (= a0-26 v1-75) - ) - (set! v1-77 (the-as none #x3ecccccd)) - (set! f0-27 (the-as none (gpr->fpr v1-77))) - (set! v1-78 (the-as none #x3c03126f)) - (set! f1-13 (the-as none (gpr->fpr v1-78))) - (set! v1-79 (the-as none (l.wu (+ s6-0 8)))) - (set! f2-0 (the-as none (l.f (+ v1-79 84)))) - (set! f30-0 (the-as none (*.s f1-13 f2-0))) - (set! v1-80 (the-as none (fpr->gpr f30-0))) - ) - (set! t9-6 (the-as none seek)) - (set! f1-14 (the-as none (l.f (+ s6-0 268)))) - (set! a0-27 (the-as none (fpr->gpr f1-14))) - (set! a1-5 (the-as none (fpr->gpr f0-27))) - (set! a2-4 (the-as none (fpr->gpr f30-0))) - (set! v0-6 (the-as none (call!))) - (set! f0-28 (the-as none (gpr->fpr v0-6))) - (s.f! (+ s6-0 268) f0-28) - (set! v1-81 (the-as none (fpr->gpr f0-28))) - ) - ((begin (set! v1-82 (the-as none (l.w (+ s6-0 324)))) (zero? v1-82)) - (when (begin - (when (begin (set! v1-84 (the-as none 'bigmap)) (set! a0-28 (the-as none (l.wu (+ s6-0 224)))) (= a0-28 v1-84)) - (set! v1-86 (the-as none #x3d4ccccd)) - (set! f0-29 (the-as none (gpr->fpr v1-86))) - (set! v1-87 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-15 (the-as none (l.f (+ v1-87 84)))) - (set! f30-0 (the-as none (*.s f0-29 f1-15))) - (set! v1-88 (the-as none (fpr->gpr f30-0))) - ) - (set! v1-89 (the-as none 'title)) - (set! a0-29 (the-as none *progress-state*)) - (set! a0-30 (the-as none (l.wu (+ a0-29 20)))) - (!= a0-30 v1-89) - ) - (set! t9-7 (the-as none seek)) - (set! f0-30 (the-as none (l.f (+ s6-0 268)))) - (set! a0-31 (the-as none (fpr->gpr f0-30))) - (set! a1-6 (the-as none 0)) - (set! a2-5 (the-as none (fpr->gpr f30-0))) - (set! v0-7 (the-as none (call!))) - (set! f0-31 (the-as none (gpr->fpr v0-7))) - (s.f! (+ s6-0 268) f0-31) - (set! v1-91 (the-as none (fpr->gpr f0-31))) - ) - ) - ) - (when (begin - (set! v1-92 (the-as none 'main)) - (set! a0-32 (the-as none *progress-state*)) - (set! a0-33 (the-as none (l.wu (+ a0-32 20)))) - (!= a0-33 v1-92) - ) - (set! v1-94 (the-as none #x3e4ccccd)) - (set! f0-32 (the-as none (gpr->fpr v1-94))) - (s.f! (+ s6-0 268) f0-32) - (set! v1-95 (the-as none (fpr->gpr f0-32))) - ) - (set! t9-8 (the-as none set-ring-position)) - (set! a0-34 (the-as none s6-0)) - (call!) - (set! f0-33 (the-as none (l.f (+ s6-0 232)))) - (set! f1-16 (the-as none (l.f (+ s6-0 236)))) - (=.s f0-33 f1-16) - ) - (cond - ((begin (set! v1-97 (the-as none (l.w (+ s6-0 208)))) (<0.si v1-97)) - (cond - ((begin - (and (begin (set! v1-99 (the-as none *cheat-mode*)) (set! a0-35 (the-as none (= v1-99 #f))) a0-35) - (begin - (set! v1-101 (the-as none *kernel-boot-message*)) - (set! a0-36 (the-as none 'kiosk)) - (set! v1-100 (the-as none (= v1-101 a0-36))) - ) - ) - v1-100 - ) - (when (begin (set! v1-102 (the-as none (l.w (+ s6-0 204)))) (>0.si v1-102)) - (set! v1-104 (the-as none (l.w (+ s6-0 204)))) - (set! v1-105 (the-as none (+ v1-104 -1))) - (s.w! (+ s6-0 204) v1-105) - ) - ) - (else - (set! gp-0 (the-as none min-max-wrap-around)) - (set! v1-106 (the-as none (l.w (+ s6-0 204)))) - (set! s5-0 (the-as none (+ v1-106 -1))) - (set! s4-0 (the-as none 0)) - (set! v1-107 (the-as none (l.wu (+ s6-0 196)))) - (set! a0-37 (the-as none (l.wu (+ v1-107 12)))) - (set! v1-108 (the-as none (l.wu (+ a0-37 -4)))) - (set! t9-9 (the-as none (l.wu (+ v1-108 32)))) - (set! v0-9 (the-as none (call!))) - (set! v1-109 (the-as none v0-9)) - (set! a2-6 (the-as none (+ v1-109 -1))) - (set! t9-10 (the-as none gp-0)) - (set! a0-38 (the-as none s5-0)) - (set! a1-7 (the-as none s4-0)) - (set! v0-10 (the-as none (call!))) - (s.w! (+ s6-0 204) v0-10) - (set! v1-110 (the-as none v0-10)) - ) - ) - (set! v1-111 (the-as none (l.w (+ s6-0 204)))) - (s.w! (+ s6-0 216) v1-111) - (set! v1-112 (the-as none (l.w (+ s6-0 208)))) - (set! v1-113 (the-as none (+ v1-112 1))) - (s.w! (+ s6-0 208) v1-113) - ) - ((begin (set! v1-114 (the-as none (l.w (+ s6-0 208)))) (>0.si v1-114)) - (cond - ((begin - (and (begin (set! v1-116 (the-as none *cheat-mode*)) (set! a0-39 (the-as none (= v1-116 #f))) a0-39) - (begin - (set! v1-118 (the-as none *kernel-boot-message*)) - (set! a0-40 (the-as none 'kiosk)) - (set! v1-117 (the-as none (= v1-118 a0-40))) - ) - ) - v1-117 - ) - (when (begin - (set! gp-1 (the-as none (l.w (+ s6-0 204)))) - (set! v1-119 (the-as none (l.wu (+ s6-0 196)))) - (set! a0-41 (the-as none (l.wu (+ v1-119 12)))) - (set! v1-120 (the-as none (l.wu (+ a0-41 -4)))) - (set! t9-11 (the-as none (l.wu (+ v1-120 32)))) - (set! v0-11 (the-as none (call!))) - (set! v1-121 (the-as none v0-11)) - (set! v1-122 (the-as none (+ v1-121 -1))) - (<.si gp-1 v1-122) - ) - (set! v1-124 (the-as none (l.w (+ s6-0 204)))) - (set! v1-125 (the-as none (+ v1-124 1))) - (s.w! (+ s6-0 204) v1-125) - ) - ) - (else - (set! gp-2 (the-as none min-max-wrap-around)) - (set! v1-126 (the-as none (l.w (+ s6-0 204)))) - (set! s5-1 (the-as none (+ v1-126 1))) - (set! s4-1 (the-as none 0)) - (set! v1-127 (the-as none (l.wu (+ s6-0 196)))) - (set! a0-42 (the-as none (l.wu (+ v1-127 12)))) - (set! v1-128 (the-as none (l.wu (+ a0-42 -4)))) - (set! t9-12 (the-as none (l.wu (+ v1-128 32)))) - (set! v0-12 (the-as none (call!))) - (set! v1-129 (the-as none v0-12)) - (set! a2-7 (the-as none (+ v1-129 -1))) - (set! t9-13 (the-as none gp-2)) - (set! a0-43 (the-as none s5-1)) - (set! a1-8 (the-as none s4-1)) - (set! v0-13 (the-as none (call!))) - (s.w! (+ s6-0 204) v0-13) - (set! v1-130 (the-as none v0-13)) - ) - ) - (set! v1-131 (the-as none (l.w (+ s6-0 208)))) - (set! v1-132 (the-as none (+ v1-131 -1))) - (s.w! (+ s6-0 208) v1-132) - ) - ) - ) - (cond - ((begin (set! f0-34 (the-as none (l.f (+ s6-0 272)))) (set! f1-17 (the-as none 0)) (=.s f0-34 f1-17)) - (set! t9-14 (the-as none seek-ease)) - (set! f0-35 (the-as none (l.f (+ s6-0 276)))) - (set! a0-44 (the-as none (fpr->gpr f0-35))) - (set! a1-9 (the-as none #x40800000)) - (set! v1-133 (the-as none #x3d4ccccd)) - (set! f0-36 (the-as none (gpr->fpr v1-133))) - (set! v1-134 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-18 (the-as none (l.f (+ v1-134 84)))) - (set! f0-37 (the-as none (*.s f0-36 f1-18))) - (set! a2-8 (the-as none (fpr->gpr f0-37))) - (set! a3-1 (the-as none #x3f000000)) - (set! v1-135 (the-as none #x3ba3d70a)) - (set! f0-38 (the-as none (gpr->fpr v1-135))) - (set! v1-136 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-19 (the-as none (l.f (+ v1-136 84)))) - (set! f0-39 (the-as none (*.s f0-38 f1-19))) - (set! t0-1 (the-as none (fpr->gpr f0-39))) - (set! v0-14 (the-as none (call!))) - (set! f0-40 (the-as none (gpr->fpr v0-14))) - (s.f! (+ s6-0 276) f0-40) - (set! v1-137 (the-as none (fpr->gpr f0-40))) - ) - (else - (set! t9-15 (the-as none seek-ease)) - (set! f0-41 (the-as none (l.f (+ s6-0 276)))) - (set! a0-45 (the-as none (fpr->gpr f0-41))) - (set! a1-10 (the-as none 0)) - (set! v1-138 (the-as none #x3d8f5c29)) - (set! f0-42 (the-as none (gpr->fpr v1-138))) - (set! v1-139 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-20 (the-as none (l.f (+ v1-139 84)))) - (set! f0-43 (the-as none (*.s f0-42 f1-20))) - (set! a2-9 (the-as none (fpr->gpr f0-43))) - (set! a3-2 (the-as none #x3f000000)) - (set! v1-140 (the-as none #x3be56042)) - (set! f0-44 (the-as none (gpr->fpr v1-140))) - (set! v1-141 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-21 (the-as none (l.f (+ v1-141 84)))) - (set! f0-45 (the-as none (*.s f0-44 f1-21))) - (set! t0-2 (the-as none (fpr->gpr f0-45))) - (set! v0-15 (the-as none (call!))) - (set! f0-46 (the-as none (gpr->fpr v0-15))) - (s.f! (+ s6-0 276) f0-46) - (set! v1-142 (the-as none (fpr->gpr f0-46))) - ) - ) - (set! v1-143 (the-as none (l.wu (+ s6-0 280)))) - v1-143 - ) - (when (begin - (and (begin - (set! t9-16 (the-as none ceil)) - (set! v1-145 (the-as none #x43360b61)) - (set! f0-47 (the-as none (gpr->fpr v1-145))) - (set! v1-146 (the-as none #x42100000)) - (set! f1-22 (the-as none (gpr->fpr v1-146))) - (set! v1-147 (the-as none (l.w (+ s6-0 204)))) - (set! f2-1 (the-as none (gpr->fpr v1-147))) - (set! f2-2 (the-as none (i2f f2-1))) - (set! f1-23 (the-as none (*.s f1-22 f2-2))) - (set! f0-48 (the-as none (*.s f0-47 f1-23))) - (set! a0-46 (the-as none (fpr->gpr f0-48))) - (set! v0-16 (the-as none (call!))) - (set! f0-49 (the-as none (gpr->fpr v0-16))) - (s.f! (+ s6-0 236) f0-49) - (set! f0-50 (the-as none (l.f (+ s6-0 236)))) - (set! f1-24 (the-as none 0)) - (set! v1-148 (the-as none (=.s f0-50 f1-24))) - v1-148 - ) - (begin - (set! v1-150 (the-as none #x47000000)) - (set! f0-51 (the-as none (gpr->fpr v1-150))) - (set! f1-25 (the-as none (l.f (+ s6-0 232)))) - (set! v1-149 (the-as none (<.s f0-51 f1-25))) - ) - ) - v1-149 - ) - (set! v1-152 (the-as none #x47800000)) - (set! f0-52 (the-as none (gpr->fpr v1-152))) - (s.f! (+ s6-0 236) f0-52) - (set! v1-153 (the-as none (fpr->gpr f0-52))) - ) - (when (begin - (set! f0-53 (the-as none (l.f (+ s6-0 236)))) - (set! f1-26 (the-as none (l.f (+ s6-0 232)))) - (set! f0-54 (the-as none (-.s f0-53 f1-26))) - (set! v1-154 (the-as none #x47000000)) - (set! f1-27 (the-as none (gpr->fpr v1-154))) - (set! f2-3 (the-as none (abs.s f0-54))) - (<.s f1-27 f2-3) - ) - (cond - ((begin (set! f1-28 (the-as none 0)) (<.s f1-28 f0-54)) - (set! v1-156 (the-as none #x47800000)) - (set! f0-55 (the-as none (gpr->fpr v1-156))) - (set! f1-29 (the-as none (l.f (+ s6-0 232)))) - (set! f0-56 (the-as none (+.s f0-55 f1-29))) - (s.f! (+ s6-0 232) f0-56) - (set! v1-157 (the-as none (fpr->gpr f0-56))) - ) - (else - (set! v1-158 (the-as none -947912704)) - (set! f0-57 (the-as none (gpr->fpr v1-158))) - (set! f1-30 (the-as none (l.f (+ s6-0 232)))) - (set! f0-58 (the-as none (+.s f0-57 f1-30))) - (s.f! (+ s6-0 232) f0-58) - (set! v1-159 (the-as none (fpr->gpr f0-58))) - ) +;; WARN: Return type mismatch int vs none. +(defbehavior progress-trans progress () + (cond + ((and (= (-> self next) 'none) + (or (= (-> *progress-state* starting-state) 'main) (= (-> self anim-frame) 1.0)) ) + (set! (-> self menu-transition) + (seek-ease + (-> self menu-transition) + 0.0 + (* 0.1 (-> self clock time-adjust-ratio)) + 0.4 + (* 0.01 (-> self clock time-adjust-ratio)) + ) + ) + ) + (else + (seek! (-> self menu-transition) 1.0 (* 0.1 (-> self clock time-adjust-ratio))) + (when (and (= (-> self menu-transition) 1.0) + (or (and (nonzero? (-> self state-pos)) (= (-> self anim-frame) 1.0)) + (or (and (zero? (-> self state-pos)) (= (-> self anim-frame) 0.0)) + (and (!= (-> *progress-state* starting-state) 'main) (!= (-> self next) 'none)) + ) + ) + ) + (set! (-> self current) (-> self next)) + (set! (-> self next) 'none) + (set! (-> self option-index) (-> self next-option-index)) + (set! (-> self want-option-index) 0) + (set-menu-options self (-> self current)) + (set! (-> self scanlines-alpha) 0.0) ) - (set! t9-17 (the-as none seek)) - (set! f0-59 (the-as none (l.f (+ s6-0 232)))) - (set! a0-47 (the-as none (fpr->gpr f0-59))) - (set! f0-60 (the-as none (l.f (+ s6-0 236)))) - (set! a1-11 (the-as none (fpr->gpr f0-60))) - (set! v1-160 (the-as none #x43e38e39)) - (set! f0-61 (the-as none (gpr->fpr v1-160))) - (set! v1-161 (the-as none (l.wu (+ s6-0 8)))) - (set! f1-31 (the-as none (l.f (+ v1-161 84)))) - (set! f0-62 (the-as none (*.s f0-61 f1-31))) - (set! a2-10 (the-as none (fpr->gpr f0-62))) - (set! v0-17 (the-as none (call!))) - (set! f0-63 (the-as none (gpr->fpr v0-17))) - (s.f! (+ s6-0 232) f0-63) - (set! v1-162 (the-as none (fpr->gpr f0-63))) ) - (when (begin - (set! gp-3 (the-as none quaternion-vector-angle!)) - (set! s5-2 (the-as none (+ sp-0 16))) - (set! s4-2 (the-as none *x-vector*)) - (set! v1-163 (the-as none #x43360b61)) - (set! f30-1 (the-as none (gpr->fpr v1-163))) - (set! f28-0 (the-as none (l.f (+ s6-0 276)))) - (set! t9-18 (the-as none sin)) - (set! v1-164 (the-as none 40)) - (set! a0-48 (the-as none (l.wu (+ s6-0 8)))) - (set! a0-49 (the-as none (l.d (+ a0-48 20)))) - (set! v1-165 (the-as none (*.si v1-164 a0-49))) - (set! f0-64 (the-as none (gpr->fpr v1-165))) - (set! f0-65 (the-as none (i2f f0-64))) - (set! a0-50 (the-as none (fpr->gpr f0-65))) - (set! v0-18 (the-as none (call!))) - (set! f0-66 (the-as none (gpr->fpr v0-18))) - (set! f0-67 (the-as none (*.s f28-0 f0-66))) - (set! f0-68 (the-as none (*.s f30-1 f0-67))) - (set! a2-11 (the-as none (fpr->gpr f0-68))) - (set! t9-19 (the-as none gp-3)) - (set! a0-51 (the-as none s5-2)) - (set! a1-12 (the-as none s4-2)) - (set! v0-19 (the-as none (call!))) - (set! gp-4 (the-as none v0-19)) - (set! s5-3 (the-as none quaternion-vector-angle!)) - (set! s4-3 (the-as none (+ sp-0 32))) - (set! s3-0 (the-as none *y-vector*)) - (set! v1-166 (the-as none #x43360b61)) - (set! f30-2 (the-as none (gpr->fpr v1-166))) - (set! f28-1 (the-as none (l.f (+ s6-0 276)))) - (set! t9-20 (the-as none sin)) - (set! v1-167 (the-as none (l.wu (+ s6-0 8)))) - (set! v1-168 (the-as none (l.d (+ v1-167 20)))) - (set! v1-169 (the-as none (*.si 0 v1-168))) - (set! f0-69 (the-as none (gpr->fpr v1-169))) - (set! f0-70 (the-as none (i2f f0-69))) - (set! a0-52 (the-as none (fpr->gpr f0-70))) - (set! v0-20 (the-as none (call!))) - (set! f0-71 (the-as none (gpr->fpr v0-20))) - (set! f0-72 (the-as none (*.s f28-1 f0-71))) - (set! f0-73 (the-as none (*.s f30-2 f0-72))) - (set! a2-12 (the-as none (fpr->gpr f0-73))) - (set! t9-21 (the-as none s5-3)) - (set! a0-53 (the-as none s4-3)) - (set! a1-13 (the-as none s3-0)) - (set! v0-21 (the-as none (call!))) - (set! s5-4 (the-as none v0-21)) - (set! t9-22 (the-as none quaternion*!)) - (set! v1-170 (the-as none (l.wu (+ s6-0 124)))) - (set! a0-54 (the-as none (+ v1-170 28))) - (set! a1-14 (the-as none (+ s6-0 252))) - (set! a2-13 (the-as none gp-4)) - (call!) - (set! t9-23 (the-as none quaternion*!)) - (set! v1-171 (the-as none (l.wu (+ s6-0 124)))) - (set! a0-55 (the-as none (+ v1-171 28))) - (set! v1-172 (the-as none (l.wu (+ s6-0 124)))) - (set! a1-15 (the-as none (+ v1-172 28))) - (set! a2-14 (the-as none s5-4)) - (call!) - (set! t9-24 (the-as none quaternion-normalize!)) - (set! v1-173 (the-as none (l.wu (+ s6-0 124)))) - (set! a0-56 (the-as none (+ v1-173 28))) - (call!) - (set! v1-174 (the-as none v0-24)) - (set! f0-74 (the-as none (l.f (+ s6-0 232)))) - (set! f1-32 (the-as none (l.f (+ s6-0 236)))) - (=.s f0-74 f1-32) - ) - (set! v1-176 (the-as none (l.w (+ s6-0 204)))) - (s.w! (+ s6-0 216) v1-176) - ) - (set! v0-25 (the-as none 0)) - (ret-none) ) + (set! (-> self main-menu) + (and (zero? (-> self state-pos)) (and (= (-> self menu-transition) 0.0) + (= (-> self next) 'none) + (or (= (-> self state-stack 0) 'main) (= (-> self current) 'main)) + ) + ) + ) + (when *cheat-mode* + (when (zero? (-> self state-pos)) + (cond + ((and (cpad-hold? 0 l2) (cpad-hold? 0 r1)) + (if (= (-> self current-options) *main-options*) + (set! (-> self current-options) *main-options-debug*) + ) + ) + ((= (-> self current-options) *main-options-debug*) + (set! (-> self current-options) *main-options*) + ) + ) + ) + ) + (if (= (-> self ring-angle) (-> self ring-want-angle)) + (progress-method-25 self) + ) + (let ((f30-0 (* 0.005 (-> self clock time-adjust-ratio)))) + (cond + ((= (-> self menu-transition) 1.0) + (if (and (zero? (-> self state-pos)) (= (-> *progress-state* starting-state) 'main)) + (seek! (-> self anim-frame) 0.0 (* 0.02 (-> self clock time-adjust-ratio))) + (seek! (-> self anim-frame) 1.0 (* 0.02 (-> self clock time-adjust-ratio))) + ) + (let ((f0-27 (if (and (zero? (-> self state-pos)) (!= (-> *progress-state* starting-state) 'title)) + 0.0 + 0.2 + ) + ) + ) + (when (= (-> self next) 'bigmap) + (set! f0-27 0.4) + (set! f30-0 (* 0.008 (-> self clock time-adjust-ratio))) + ) + (seek! (-> self pos-transition) f0-27 f30-0) + ) + ) + ((zero? (-> self state-pos)) + (if (= (-> self current) 'bigmap) + (set! f30-0 (* 0.05 (-> self clock time-adjust-ratio))) + ) + (if (!= (-> *progress-state* starting-state) 'title) + (seek! (-> self pos-transition) 0.0 f30-0) + ) + ) + ) + ) + (if (!= (-> *progress-state* starting-state) 'main) + (set! (-> self pos-transition) 0.2) + ) + (set-ring-position self) + (when (= (-> self ring-angle) (-> self ring-want-angle)) + (cond + ((< (-> self want-option-index) 0) + (cond + ((and (= *cheat-mode* #f) (= *kernel-boot-message* 'kiosk)) + (if (> (-> self option-index) 0) + (+! (-> self option-index) -1) + ) + ) + (else + (set! (-> self option-index) + (min-max-wrap-around (+ (-> self option-index) -1) 0 (+ (length (-> self current-options options 0)) -1)) + ) + ) + ) + (set! (-> self graphic-index) (-> self option-index)) + (+! (-> self want-option-index) 1) + ) + ((> (-> self want-option-index) 0) + (cond + ((and (= *cheat-mode* #f) (= *kernel-boot-message* 'kiosk)) + (if (< (-> self option-index) (+ (length (-> self current-options options 0)) -1)) + (+! (-> self option-index) 1) + ) + ) + (else + (set! (-> self option-index) + (min-max-wrap-around (+ (-> self option-index) 1) 0 (+ (length (-> self current-options options 0)) -1)) + ) + ) + ) + (+! (-> self want-option-index) -1) + ) + ) + ) + (if (= (-> self anim-frame) 0.0) + (set! (-> self swing) (seek-ease + (-> self swing) + 4.0 + (* 0.05 (-> self clock time-adjust-ratio)) + 0.5 + (* 0.005 (-> self clock time-adjust-ratio)) + ) + ) + (set! (-> self swing) (seek-ease + (-> self swing) + 0.0 + (* 0.07 (-> self clock time-adjust-ratio)) + 0.5 + (* 0.007 (-> self clock time-adjust-ratio)) + ) + ) + ) + (when (-> self main-menu) + (set! (-> self ring-want-angle) (ceil (* 182.04445 (* 36.0 (the float (-> self option-index)))))) + (if (and (= (-> self ring-want-angle) 0.0) (< 32768.0 (-> self ring-angle))) + (set! (-> self ring-want-angle) 65536.0) + ) + (let ((f0-54 (- (-> self ring-want-angle) (-> self ring-angle)))) + (when (< 32768.0 (fabs f0-54)) + (if (< 0.0 f0-54) + (set! (-> self ring-angle) (+ 65536.0 (-> self ring-angle))) + (set! (-> self ring-angle) (+ -65536.0 (-> self ring-angle))) + ) + ) + ) + (seek! (-> self ring-angle) (-> self ring-want-angle) (* 455.1111 (-> self clock time-adjust-ratio))) + ) + (let ((gp-4 (quaternion-vector-angle! + (new 'stack-no-clear 'quaternion) + *x-vector* + (* 182.04445 (* (-> self swing) (sin (the float (* 40 (-> self clock frame-counter)))))) + ) + ) + (s5-4 (quaternion-vector-angle! + (new 'stack-no-clear 'quaternion) + *y-vector* + (* 182.04445 (* (-> self swing) (sin (the float (* 0 (-> self clock frame-counter)))))) + ) + ) + ) + (quaternion*! (-> self root quat) (-> self init-quat) gp-4) + (quaternion*! (-> self root quat) (-> self root quat) s5-4) + ) + (quaternion-normalize! (-> self root quat)) + (if (= (-> self ring-angle) (-> self ring-want-angle)) + (set! (-> self graphic-index) (-> self option-index)) + ) + 0 + (none) ) ;; definition for function begin-scan @@ -2379,7 +1517,7 @@ ) ) (menu-option-method-10 - (-> gp-0 box s4-1) + (-> gp-0 unknown-options s4-1) self sv-144 s4-1 @@ -2406,13 +1544,7 @@ (when (and (< 0.8 (-> self anim-frame)) (or (= (-> self current) 'bigmap) (= (-> self next) 'bigmap))) (cond ((>= (-> self pos-transition) 0.38) - (let ((t9-8 (method-of-object *bigmap* bigmap-method-11))) - 1792 - 1840 - 2304 - 2256 - (t9-8) - ) + (bigmap-method-11 *bigmap* 1792 1840 2304 2256) ) (else (let ((s4-2 (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data 21))) @@ -2422,15 +1554,15 @@ (set! (-> gp-1 quad) (the-as uint128 0)) (let ((s5-1 (new 'stack-no-clear 'vector4w))) (set! (-> s5-1 quad) (the-as uint128 0)) - (when (and (transform-point-qword! gp-1 s4-2) (transform-point-qword! s5-1 s3-1)) - (let ((t9-13 (method-of-object *bigmap* bigmap-method-11))) - (/ (the-as int (-> s5-1 x)) 16) - (/ (the-as int (-> s5-1 y)) 16) - (/ (the-as int (-> gp-1 x)) 16) - (/ (the-as int (-> gp-1 y)) 16) - (t9-13) + (if (and (transform-point-qword! gp-1 s4-2) (transform-point-qword! s5-1 s3-1)) + (bigmap-method-11 + *bigmap* + (the-as int (/ (the-as int (-> s5-1 x)) 16)) + (the-as int (/ (the-as int (-> s5-1 y)) 16)) + (the-as int (/ (the-as int (-> gp-1 x)) 16)) + (the-as int (/ (the-as int (-> gp-1 y)) 16)) + ) ) - ) ) ) ) @@ -2499,64 +1631,64 @@ (let ((t9-0 format) (a0-3 #t) (a1-1 "DONE NOTIFY: ~S ~S~%") - (v1-3 (-> arg3 param 1)) + (v1-3 (the-as mc-status-code (-> arg3 param 1))) ) (t9-0 a0-3 a1-1 (cond - ((= v1-3 15) + ((= v1-3 (mc-status-code bad-version)) "bad-version" ) - ((= v1-3 13) + ((= v1-3 (mc-status-code no-save)) "no-save" ) - ((= v1-3 10) + ((= v1-3 (mc-status-code no-last)) "no-last" ) - ((= v1-3 14) + ((= v1-3 (mc-status-code no-space)) "no-space" ) - ((= v1-3 4) + ((= v1-3 (mc-status-code internal-error)) "internal-error" ) - ((= v1-3 8) + ((= v1-3 (mc-status-code no-memory)) "no-memory" ) - ((= v1-3 2) + ((= v1-3 (mc-status-code bad-handle)) "bad-handle" ) - ((zero? v1-3) + ((= v1-3 (mc-status-code busy)) "busy" ) - ((= v1-3 5) + ((= v1-3 (mc-status-code write-error)) "write-error" ) - ((= v1-3 6) + ((= v1-3 (mc-status-code read-error)) "read-error" ) - ((= v1-3 9) + ((= v1-3 (mc-status-code no-card)) "no-card" ) - ((= v1-3 11) + ((= v1-3 (mc-status-code no-format)) "no-format" ) - ((= v1-3 1) + ((= v1-3 (mc-status-code ok)) "ok" ) - ((= v1-3 16) + ((= v1-3 (mc-status-code no-process)) "no-process" ) - ((= v1-3 17) + ((= v1-3 (mc-status-code no-auto-save)) "no-auto-save" ) - ((= v1-3 12) + ((= v1-3 (mc-status-code no-file)) "no-file" ) - ((= v1-3 3) + ((= v1-3 (mc-status-code format-failed)) "format-failed" ) - ((= v1-3 7) + ((= v1-3 (mc-status-code new-game)) "new-game" ) (else @@ -2598,64 +1730,64 @@ (let ((t9-7 format) (a0-18 #t) (a1-5 "ERROR NOTIFY: ~S ~S ~S~%") - (v1-19 (-> arg3 param 1)) + (v1-19 (the-as mc-status-code (-> arg3 param 1))) ) (t9-7 a0-18 a1-5 (cond - ((= v1-19 15) + ((= v1-19 (mc-status-code bad-version)) "bad-version" ) - ((= v1-19 13) + ((= v1-19 (mc-status-code no-save)) "no-save" ) - ((= v1-19 10) + ((= v1-19 (mc-status-code no-last)) "no-last" ) - ((= v1-19 14) + ((= v1-19 (mc-status-code no-space)) "no-space" ) - ((= v1-19 4) + ((= v1-19 (mc-status-code internal-error)) "internal-error" ) - ((= v1-19 8) + ((= v1-19 (mc-status-code no-memory)) "no-memory" ) - ((= v1-19 2) + ((= v1-19 (mc-status-code bad-handle)) "bad-handle" ) - ((zero? v1-19) + ((= v1-19 (mc-status-code busy)) "busy" ) - ((= v1-19 5) + ((= v1-19 (mc-status-code write-error)) "write-error" ) - ((= v1-19 6) + ((= v1-19 (mc-status-code read-error)) "read-error" ) - ((= v1-19 9) + ((= v1-19 (mc-status-code no-card)) "no-card" ) - ((= v1-19 11) + ((= v1-19 (mc-status-code no-format)) "no-format" ) - ((= v1-19 1) + ((= v1-19 (mc-status-code ok)) "ok" ) - ((= v1-19 16) + ((= v1-19 (mc-status-code no-process)) "no-process" ) - ((= v1-19 17) + ((= v1-19 (mc-status-code no-auto-save)) "no-auto-save" ) - ((= v1-19 12) + ((= v1-19 (mc-status-code no-file)) "no-file" ) - ((= v1-19 3) + ((= v1-19 (mc-status-code format-failed)) "format-failed" ) - ((= v1-19 7) + ((= v1-19 (mc-status-code new-game)) "new-game" ) (else @@ -2697,7 +1829,7 @@ (set! (-> self menu-transition) 1.0) (none) ) - :trans (the-as (function none :behavior progress) progress-trans) + :trans progress-trans :code (behavior () (until #f (ja :num-func num-func-identity :frame-num (* 12.0 (-> self anim-frame))) @@ -2848,13 +1980,13 @@ ) ((logtest? (pad-buttons pb24) (-> *cpad-list* cpads 0 button0-rel 0)) (cond - ((and (-> v1-1 0) (= (-> obj name) 366)) + ((and (-> v1-1 0) (= (-> obj name) (game-text-id progress-TODO-ASDNMAMSDNMAS))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (restart-mission) (set-next-state arg0 'go-away 0) ) - ((and (-> v1-1 0) (= (-> obj name) 307)) + ((and (-> v1-1 0) (= (-> obj name) (game-text-id progress-quit))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (initialize! *game-info* 'game (the-as game-save #f) "title-restart") @@ -2930,7 +2062,7 @@ (when s4-0 (let ((f30-0 1.0)) (case (-> obj name) - ((264 265) + (((game-text-id progress-TODO-kjh12n1h2) (game-text-id progress-TODO-kjh12dn1h2)) (set! f30-0 (-> (the-as (pointer float) gp-0))) ) ) @@ -3005,7 +2137,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons triangle)) (when (and (= (-> arg0 ring-angle) (-> arg0 ring-want-angle)) #t) (cond - ((= (-> obj name) 291) + ((= (-> obj name) (game-text-id progress-TODO-1jn23j1n23)) (case *kernel-boot-message* (('demo-shared) (set! *master-exit* 'force) @@ -3017,12 +2149,15 @@ ) ) ) - ((or (= (-> obj name) 346) (= (-> obj name) 347) (= (-> obj name) 348)) + ((or (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) + (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) + (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) + ) (case (-> obj name) - ((347) + (((game-text-id progress-main-secrets-sceneplayer-2)) (set! (-> *progress-state* scene-player-act) 2) ) - ((348) + (((game-text-id progress-main-secrets-sceneplayer-3)) (set! (-> *progress-state* scene-player-act) 3) ) (else @@ -3101,12 +2236,12 @@ (set! (-> arg0 state-pos) 0) (set-next-state arg0 'secrets-insufficient-space 0) ) - (when (= (-> obj name) 298) + (when (= (-> obj name) (game-text-id progress-continue-without-saving)) (let ((a1-3 (progress-method-28 arg0 (-> arg0 current)))) (set-next-state arg0 a1-3 0) ) ) - (when (and (= (-> obj name) 339) + (when (and (= (-> obj name) (game-text-id progress-root-secrets)) (= *title* (-> arg0 current-options)) (not (memcard-unlocked-secrets? #f)) (= (-> arg0 option-index) 3) @@ -3118,7 +2253,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (cond - ((= (-> obj name) 291) + ((= (-> obj name) (game-text-id progress-TODO-1jn23j1n23)) (case *kernel-boot-message* (('demo-shared) (set! *master-exit* 'force) @@ -3130,7 +2265,7 @@ ) ) ) - ((= (-> obj name) 298) + ((= (-> obj name) (game-text-id progress-continue-without-saving)) (progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000)) ) ((= (-> obj next-state) 'back) @@ -3162,7 +2297,7 @@ (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (cond - ((and (= (-> obj name) 349) (logtest? (the-as int s4-0) 512)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook)) (logtest? s4-0 512)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 1) @@ -3176,7 +2311,7 @@ ) ) ) - ((and (= (-> obj name) 350) (logtest? (the-as int s4-0) 1024)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook)) (logtest? s4-0 1024)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 2) @@ -3190,7 +2325,7 @@ ) ) ) - ((and (= (-> obj name) 351) (logtest? (the-as int s4-0) 2048)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3)) (logtest? s4-0 2048)) (sound-play "generic-beep") (cond ((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 3) @@ -3204,30 +2339,30 @@ ) ) ) - ((and (= (-> obj name) 346) (logtest? (the-as int s4-0) 32)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) (logtest? s4-0 32)) (set! (-> *progress-state* scene-player-act) 1) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 347) (logtest? (the-as int s4-0) 64)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) (logtest? s4-0 64)) (set! (-> *progress-state* scene-player-act) 2) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 348) (logtest? (the-as int s4-0) 128)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) (logtest? s4-0 128)) (set! (-> *progress-state* scene-player-act) 3) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-scene 0) ) - ((and (= (-> obj name) 345) (logtest? (the-as int s4-0) #x8000)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-hero-mode)) (logtest? s4-0 #x8000)) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-save-title-hero 0) ) - ((and (= (-> obj name) 352) (logtest? (the-as int s4-0) 256)) + ((and (= (-> obj name) (game-text-id progress-main-secrets-levelselect)) (logtest? s4-0 256)) (sound-play "generic-beep") (progress-method-29 arg0) (set-next-state arg0 'select-start 0) @@ -3299,12 +2434,12 @@ ) ((= (-> *progress-save-info* file (-> *progress-state* which-slot) present) 1) (set! s5-0 #t) - (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0))) + (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0 min x))) (set-next-state arg0 'already-exists 0) ) (else (set! s5-0 #t) - (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0))) + (menu-update-purchase-secrets (the-as menu-secret-option (-> *secret-options* options 0 box 0 min x))) (set-next-state arg0 'saving 0) ) ) @@ -4778,13 +3913,13 @@ ) ((logtest? (pad-buttons pb24) (-> *cpad-list* cpads 0 button0-rel 0)) (cond - ((and (-> v1-1 0) (= (-> arg0 name) 366)) + ((and (-> v1-1 0) (= (-> arg0 name) (game-text-id progress-TODO-ASDNMAMSDNMAS))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (restart-mission) (set-next-state arg1 'go-away 0) ) - ((and (-> v1-1 0) (= (-> arg0 name) 307)) + ((and (-> v1-1 0) (= (-> arg0 name) (game-text-id progress-quit))) (logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons pb24)) (logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons pb24)) (initialize! *game-info* 'game (the-as game-save #f) "title-restart") diff --git a/test/offline/config/jak2/config.jsonc b/test/offline/config/jak2/config.jsonc index 0a02d6b29f..5f5ce550f6 100644 --- a/test/offline/config/jak2/config.jsonc +++ b/test/offline/config/jak2/config.jsonc @@ -150,8 +150,6 @@ // aligner - never fixed in jak 1 "(method 9 align-control)", - "progress-trans", // TODO - hits an assertion related to the stack? - "bsp-camera-asm", "build-masks",