mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
123 lines
5.3 KiB
Common Lisp
123 lines
5.3 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: scene-h.gc
|
|
;; name in dgo: scene-h
|
|
;; dgos: ENGINE, GAME
|
|
|
|
;; NOTE - for default-menu
|
|
(declare-type scene-player process-drawable)
|
|
(define-extern scene-player-init (function object symbol string none :behavior scene-player))
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
(deftype scene-actor (basic)
|
|
((name string :offset-assert 4)
|
|
(level symbol :offset-assert 8)
|
|
(art-group string :offset-assert 12)
|
|
(prefix string :offset-assert 16)
|
|
(draw-frames pair :offset-assert 20)
|
|
(scissor-frames pair :offset-assert 24)
|
|
(camera int16 :offset-assert 28)
|
|
(light-index uint8 :offset-assert 30)
|
|
(shadow-mask uint8 :offset-assert 31)
|
|
(shadow-values uint32 :offset-assert 32)
|
|
(flags uint32 :offset-assert 36)
|
|
(command-list basic :offset-assert 40)
|
|
(shadow-flags int32 :offset-assert 44)
|
|
(shadow-volume-joint basic :offset-assert 48)
|
|
(draw-seg uint64 :offset-assert 56)
|
|
(no-draw-seg uint64 :offset-assert 64)
|
|
(process handle :offset-assert 72)
|
|
)
|
|
:method-count-assert 10
|
|
:size-assert #x50
|
|
:flag-assert #xa00000050
|
|
(:methods
|
|
(scene-actor-method-9 (_type_ scene-player) (pointer process) 9)
|
|
)
|
|
)
|
|
|
|
|
|
(deftype scene (art-group)
|
|
((mask-to-clear uint32 :offset-assert 32)
|
|
(entity string :offset-assert 36)
|
|
(art-group string :offset-assert 40)
|
|
(anim string :offset-assert 44)
|
|
(parts int32 :offset-assert 48)
|
|
(command-list pair :offset-assert 52)
|
|
(cut-list pair :offset-assert 56)
|
|
(wait-max-time time-frame :offset-assert 64)
|
|
(wait-air-time time-frame :offset-assert 72)
|
|
(wait-ground-time time-frame :offset-assert 80)
|
|
(draw-target symbol :offset-assert 88)
|
|
(abort symbol :offset-assert 92)
|
|
(actor (array scene-actor) :offset-assert 96)
|
|
(load-point-obj object :offset-assert 100)
|
|
(load-point continue-point :offset 100)
|
|
(load-point-name string :offset 100)
|
|
(end-point-obj object :offset-assert 104)
|
|
(end-point continue-point :offset 104)
|
|
(end-point-name string :offset 104)
|
|
(borrow pair :offset-assert 108)
|
|
(sfx-volume float :offset-assert 112)
|
|
(ambient-volume float :offset-assert 116)
|
|
(music-volume float :offset-assert 120)
|
|
(blackout-end symbol :offset-assert 124)
|
|
(peaceful symbol :offset-assert 128)
|
|
(music-delay float :offset-assert 132)
|
|
(save symbol :offset-assert 136)
|
|
(scene-task uint16 :offset-assert 140)
|
|
)
|
|
:method-count-assert 17
|
|
:size-assert #x8e
|
|
:flag-assert #x110000008e
|
|
(:methods
|
|
(scene-method-15 (_type_ spool-anim) none 15)
|
|
(scene-method-16 (_type_) _type_ 16)
|
|
)
|
|
)
|
|
|
|
|
|
(deftype scene-player (process-drawable)
|
|
((scene-list (array scene) :offset-assert 200)
|
|
(scene scene :offset-assert 204)
|
|
(scene-index int32 :offset-assert 208)
|
|
(anim spool-anim :offset-assert 212)
|
|
(next-anim spool-anim :offset-assert 216)
|
|
(camera handle :offset-assert 224)
|
|
(main-entity entity-actor :offset-assert 232)
|
|
(wait symbol :offset-assert 236)
|
|
(old-target-pos transformq :inline :offset-assert 240)
|
|
(pre-cut-frame basic :offset-assert 288)
|
|
(preload-continue string :offset-assert 292)
|
|
(dma-max uint32 :offset-assert 296)
|
|
(gui-id uint32 :offset-assert 300)
|
|
(aborted? symbol :offset-assert 304)
|
|
(scene-start-time time-frame :offset-assert 312)
|
|
(targ-speed float :offset-assert 320)
|
|
(cur-speed float :offset-assert 324)
|
|
(speed-change-time time-frame :offset-assert 328)
|
|
(speed-press-time time-frame :offset-assert 336)
|
|
(speed-change-speed float :offset-assert 344)
|
|
(unknown-time time-frame :offset 344)
|
|
(subtitle-change-time time-frame :offset-assert 352)
|
|
(user-sound sound-id 4 :offset-assert 360)
|
|
)
|
|
:heap-base #x100
|
|
:method-count-assert 26
|
|
:size-assert #x178
|
|
:flag-assert #x1a01000178
|
|
(:methods
|
|
(wait (symbol) _type_ :state 20)
|
|
(release () _type_ :state 21)
|
|
(play-anim () _type_ :state 22)
|
|
(scene-player-method-23 (_type_ string symbol) none 23)
|
|
(scene-player-method-24 (_type_ basic symbol) scene 24)
|
|
(scene-player-method-25 (_type_ float) none 25)
|
|
)
|
|
)
|
|
|
|
|
|
(define *scene-player* (the-as (pointer scene-player) #f))
|