mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
[speedrun] Show speedrun information at start of run (#1848)
This shows the current settings needed to help provide information when verifying a run, also it removes the two calls to show the version in main.gc and instead does it within the speedrun/auto splitting scope. - Shows Version - Shows if Speedrunner mode is on (technically pointless since the text only displays when it is enabled this more just serves to show that there IS a speedrunner mode to viewers and stuff (josh) So hopefully it may cut down on submissions with the mode off) - Shows if cutscene skips is enabled/disabled. Tested on 16x9 4x3 the really weird one and borderless/fullscreen [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/qDC-beEg5Es/0.jpg)](https://www.youtube.com/watch?v=qDC-beEg5Es) Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
This commit is contained in:
parent
22982d2750
commit
97c12ebaf4
|
@ -695,13 +695,9 @@
|
|||
|
||||
(with-profiler "menu"
|
||||
(with-pc
|
||||
(cond ((and (= (-> *pc-settings* speedrunner-mode?) #t)
|
||||
(< (-> *autosplit-info-jak1* num-power-cells) 1))
|
||||
;; display the revision before you collect your first powercell
|
||||
(draw-build-revision))
|
||||
((and (-> *pc-settings* display-sha) *debug-segment*)
|
||||
;; otherwise, only draw if we are in debug mode and the setting isn't enabled
|
||||
(draw-build-revision))))
|
||||
(if
|
||||
(and (-> *pc-settings* display-sha) *debug-segment*)
|
||||
(draw-build-revision)))
|
||||
(*menu-hook*)
|
||||
(add-ee-profile-frame 'draw :g #x40)
|
||||
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
(define-extern speedrun-mode-update (function none))
|
||||
(define-extern speedrun-start-run (function none))
|
||||
(define-extern speedrun-draw-settings (function none))
|
||||
|
||||
|
|
|
@ -1,6 +1,15 @@
|
|||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
(defun speedrun-mode-update ()
|
||||
"A per frame update for speedrunning related stuff"
|
||||
(when (-> *pc-settings* speedrunner-mode?)
|
||||
;; Update auto-splitter
|
||||
(update-autosplit-info-jak1)
|
||||
;; Draw info to the screen
|
||||
(speedrun-draw-settings))
|
||||
(none))
|
||||
|
||||
(defun speedrun-start-run ()
|
||||
;; randomize game id so the autosplitter knows to restart
|
||||
(update-autosplit-jak1-new-game)
|
||||
|
@ -17,3 +26,16 @@
|
|||
;; enable auto saving by default
|
||||
(set! (-> *setting-control* default auto-save) #t)
|
||||
(none))
|
||||
|
||||
(defun speedrun-draw-settings ()
|
||||
"Draw speedrun related settings in the bottom left corner"
|
||||
(when (and (-> *pc-settings* speedrunner-mode?)
|
||||
(< (-> *autosplit-info-jak1* num-power-cells) 1))
|
||||
(with-dma-buffer-add-bucket ((buf (-> (current-frame) global-buf))
|
||||
(bucket-id debug-no-zbuf))
|
||||
(draw-string-xy (string-format "OpenGOAL Version: ~S ~%Speedrun mode: ~A ~%Cutscene Skips ~A"
|
||||
*pc-settings-built-sha*
|
||||
(-> *pc-settings* speedrunner-mode?)
|
||||
(-> *pc-settings* cutscene-skips?))
|
||||
buf 0 (- 224 (* 8 4)) (font-color flat-yellow) (font-flags shadow kerning))))
|
||||
(none))
|
||||
|
|
|
@ -327,8 +327,8 @@
|
|||
|
||||
;; update auto-splitter info
|
||||
(when (-> *pc-settings* speedrunner-mode?)
|
||||
(with-profiler "autosplit-update-jak1"
|
||||
(update-autosplit-info-jak1)))
|
||||
(with-profiler "speedrun-update-jak1"
|
||||
(speedrun-mode-update)))
|
||||
|
||||
(when (not (-> obj use-vis?))
|
||||
(set! (-> *video-parms* relative-x-scale) (-> obj aspect-ratio-reciprocal))
|
||||
|
|
Loading…
Reference in a new issue