mirror of
https://github.com/open-goal/jak-project
synced 2026-06-07 20:11:39 -04:00
44c43610ce
* cmake: disable edit&continue flags * goos: make the build system work for alternate file paths nicely * vs: update vs config * vscode: extend terminal buffer! * vs: fix presets * debugger: fix exception handler * game: add logo to application * decomp: get `cam-master` to "work" -- manually changed return type * debugger: fix printing issue * game: get the camera actually working * game: neutralize the analog sticks * game: support analog sticks * tests: update ref tests * temp commit - inprogress stuff * fix `send-macro` * turn camera stuff back on, seems to work. Still kernel-dispatch problem though * address feedback * formatting
112 lines
3.9 KiB
Common Lisp
112 lines
3.9 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: joint-exploder.gc
|
|
;; name in dgo: joint-exploder
|
|
;; dgos: GAME, COMMON, L1
|
|
|
|
;; TODO - for racer-states
|
|
(deftype joint-exploder-tuning (structure)
|
|
((explosion uint64 :offset-assert 0)
|
|
(duration uint64 :offset-assert 8)
|
|
(gravity float :offset-assert 16)
|
|
(rot-speed float :offset-assert 20)
|
|
(fountain-rand-transv-lo vector :inline :offset-assert 32)
|
|
(fountain-rand-transv-hi vector :inline :offset-assert 48)
|
|
(away-from-focal-pt vector :inline :offset 32)
|
|
(away-from-rand-transv-xz-lo float :offset 48)
|
|
(away-from-rand-transv-xz-hi float :offset 52)
|
|
(away-from-rand-transv-y-lo float :offset 56)
|
|
(away-from-rand-transv-y-hi float :offset 60)
|
|
)
|
|
(:methods
|
|
(new (symbol type int) _type_ 0)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x40
|
|
:flag-assert #x900000040
|
|
)
|
|
|
|
(deftype joint-exploder-static-joint-params (structure)
|
|
((joint-index int16 :offset-assert 0)
|
|
(parent-joint-index int16 :offset-assert 2)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x4
|
|
:flag-assert #x900000004
|
|
)
|
|
|
|
(deftype joint-exploder-static-params (basic)
|
|
((joints array :offset-assert 4) ;; an array of...what?
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x8
|
|
:flag-assert #x900000008
|
|
)
|
|
|
|
(deftype joint-exploder-joint (structure)
|
|
((next int16 :offset-assert 0)
|
|
(prev int16 :offset-assert 2)
|
|
(joint-index int16 :offset-assert 4)
|
|
(rspeed float :offset-assert 8)
|
|
(mat matrix :inline :offset-assert 16)
|
|
(rmat matrix :inline :offset-assert 80)
|
|
(transv vector :inline :offset-assert 144)
|
|
(prev-pos vector :inline :offset-assert 160)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #xb0
|
|
:flag-assert #x9000000b0
|
|
)
|
|
|
|
(deftype joint-exploder-joints (basic)
|
|
((num-joints int32 :offset-assert 4)
|
|
(joint joint-exploder-joint :dynamic :offset 16)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x10
|
|
:flag-assert #x900000010
|
|
(:methods
|
|
(new (symbol _type_ int) _type_ 0))
|
|
)
|
|
|
|
(deftype joint-exploder-list (structure)
|
|
((head int32 :offset-assert 0)
|
|
(pre-moved? symbol :offset-assert 4)
|
|
(bbox-valid? symbol :offset-assert 8)
|
|
(bbox bounding-box :inline :offset-assert 16)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x30
|
|
:flag-assert #x900000030
|
|
)
|
|
|
|
(deftype joint-exploder (process-drawable)
|
|
((die-if-below-y float :offset-assert 176)
|
|
(die-if-beyond-xz-dist-sqrd float :offset-assert 180)
|
|
(joints joint-exploder-joints :offset-assert 184)
|
|
(static-params joint-exploder-static-params :offset-assert 188)
|
|
(anim art-joint-anim :offset-assert 192)
|
|
(scale-vector vector :inline :offset-assert 208)
|
|
(tuning joint-exploder-tuning :inline :offset-assert 224)
|
|
(lists joint-exploder-list 5 :inline :offset-assert 288)
|
|
)
|
|
:method-count-assert 29
|
|
:size-assert #x210
|
|
:heap-base #x1a0
|
|
:flag-assert #x1d01a00210
|
|
(:methods
|
|
(dummy-20 (_type_) none 20)
|
|
(dummy-21 (_type_) none 21)
|
|
(dummy-22 () none 22)
|
|
(dummy-23 () none 23)
|
|
(dummy-24 (_type_) none 24)
|
|
(dummy-25 () none 25)
|
|
(dummy-26 (_type_) none 26)
|
|
(dummy-27 (_type_) none 27)
|
|
(dummy-28 () none 28)
|
|
)
|
|
)
|
|
|
|
(define-extern joint-exploder-init-by-other (function skeleton-group int joint-exploder-static-params joint-exploder-tuning none :behavior joint-exploder))
|