mirror of
https://github.com/open-goal/jak-project
synced 2026-08-08 10:34:30 -04:00
cleanup pov camera
This commit is contained in:
@@ -40,7 +40,8 @@
|
||||
(suspend))
|
||||
(let ((camera-joint-index 0))
|
||||
(let ((camera-joint (lookup-art (-> self draw jgeo) "camera" (the-as type #f))))
|
||||
(if camera-joint (set! camera-joint-index (+ (-> camera-joint number) 1))))
|
||||
(if camera-joint
|
||||
(set! camera-joint-index (+ (-> camera-joint number) 1))))
|
||||
(let ((other-camera (process-spawn othercam self camera-joint-index #t #t :to self)))
|
||||
(send-event (ppointer->process other-camera) 'mask (-> self mask-to-clear))))
|
||||
(go-virtual pov-camera-playing)))
|
||||
@@ -68,14 +69,17 @@
|
||||
(('abort)
|
||||
(when (logtest? (-> self flags) (pov-camera-flag notify-of-abort))
|
||||
(logior! (-> self flags) (pov-camera-flag allow-abort))
|
||||
(if (= (-> self anim-name type) string) (go-virtual pov-camera-abort))))))
|
||||
(if (= (-> self anim-name type) string)
|
||||
(go-virtual pov-camera-abort))))))
|
||||
:enter
|
||||
(behavior ()
|
||||
(set-time! (-> self debounce-start-time))
|
||||
(if (= (-> self anim-name type) string) (backup-load-state-and-set-cmds *load-state* (-> self command-list))))
|
||||
(if (= (-> self anim-name type) string)
|
||||
(backup-load-state-and-set-cmds *load-state* (-> self command-list))))
|
||||
:exit
|
||||
(behavior ()
|
||||
(if (= (-> self anim-name type) string) (restore-load-state-and-cleanup *load-state*))
|
||||
(if (= (-> self anim-name type) string)
|
||||
(restore-load-state-and-cleanup *load-state*))
|
||||
(remove-setting! 'music-volume)
|
||||
(remove-setting! 'sfx-volume))
|
||||
:code
|
||||
@@ -83,7 +87,8 @@
|
||||
(add-setting! 'music-volume 'rel (-> self music-volume-movie) 0)
|
||||
(add-setting! 'sfx-volume 'rel (-> self sfx-volume-movie) 0)
|
||||
(cond
|
||||
((= (-> self anim-name type) string) (ja-play :group! (ja-group) :num! (seek!) :frame-num 0.0 (check-for-abort self)))
|
||||
((= (-> self anim-name type) string)
|
||||
(ja-play :group! (ja-group) :num! (seek!) :frame-num 0.0 (check-for-abort self)))
|
||||
((= (-> self anim-name type) spool-anim)
|
||||
(ja-play-spooled-anim (the-as spool-anim (-> self anim-name))
|
||||
(the-as art-joint-anim #f)
|
||||
@@ -92,7 +97,8 @@
|
||||
(go-virtual pov-camera-done-playing))
|
||||
:post
|
||||
(behavior ()
|
||||
(if (= (-> self anim-name type) string) (execute-commands-up-to *load-state* (ja-aframe-num 0)))
|
||||
(if (= (-> self anim-name type) string)
|
||||
(execute-commands-up-to *load-state* (ja-aframe-num 0)))
|
||||
(ja-post)))
|
||||
|
||||
(defstate pov-camera-abort (pov-camera)
|
||||
@@ -143,7 +149,9 @@
|
||||
(set! (-> self command-list) command-list)
|
||||
(set! (-> self music-volume-movie) 100.0)
|
||||
(set! (-> self sfx-volume-movie) 100.0)
|
||||
(if owner (set! (-> self notify-handle) (process->handle owner)) (set! (-> self notify-handle) (the-as handle #f)))
|
||||
(if owner
|
||||
(set! (-> self notify-handle) (process->handle owner))
|
||||
(set! (-> self notify-handle) (the-as handle #f)))
|
||||
(set-time! (-> self debounce-start-time))
|
||||
(logclear! (-> self mask) (process-mask actor-pause movie enemy platform projectile))
|
||||
(set! (-> self root) (new 'process 'trsqv))
|
||||
@@ -159,7 +167,8 @@
|
||||
((= (-> animation type) string)
|
||||
(logior! (-> self skel status) (janim-status spool))
|
||||
(let ((joint-animation (lookup-art (-> self draw art-group) (the-as string animation) art-joint-anim)))
|
||||
(if (not joint-animation) (go process-drawable-art-error (the-as string animation)))
|
||||
(if (not joint-animation)
|
||||
(go process-drawable-art-error (the-as string animation)))
|
||||
(ja-channel-set! 1)
|
||||
(set! (-> self skel root-channel 0 frame-group) (the-as art-joint-anim joint-animation))))
|
||||
((= (-> animation type) spool-anim)))
|
||||
@@ -171,8 +180,10 @@
|
||||
(let ((requested-mask (the-as number (-> block param 0))))
|
||||
(set! (-> self mask-to-clear) (the-as process-mask requested-mask))
|
||||
requested-mask))
|
||||
(('music-movie-volume) (set! (-> self music-volume-movie) (the-as float (-> block param 0))))
|
||||
(('sfx-movie-volume) (set! (-> self sfx-volume-movie) (the-as float (-> block param 0)))))))
|
||||
(('music-movie-volume)
|
||||
(set! (-> self music-volume-movie) (the-as float (-> block param 0))))
|
||||
(('sfx-movie-volume)
|
||||
(set! (-> self sfx-volume-movie) (the-as float (-> block param 0)))))))
|
||||
(pre-startup-callback self)
|
||||
(go-virtual pov-camera-startup)
|
||||
(none))
|
||||
|
||||
Reference in New Issue
Block a user