jak-project/goal_src/jak2/engine/util/sync-info-h.gc
Tyler Wilding dd0a8a17b2
docs - first chunk of work documenting the files I glossed over (#2130)
- started documenting the files I glossed over, some are totally done,
others are just partially done
- I changed the decompiler to automatically initialize the
art-group-info from the json file. This makes updating gsrc, even a
single file at a time, have consistent naming
- Though I disabled this functionality for jak 1, as I have no idea if
using the ntsc art groups will cause a regression for different versions
- fix indentation for docstrings -- it still doesn't look great, but
this is now a formatting concern, rather than the docstring having a
bunch of happen-stance leading whitespace.
2023-01-15 11:33:39 -05:00

185 lines
5.1 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: sync-info-h.gc
;; name in dgo: sync-info-h
;; dgos: ENGINE, GAME
(defenum sync-flags
:type uint64
:bitfield #t
(pong 0)
)
;; DECOMP BEGINS
(deftype sync-info-params (structure)
((sync-type symbol :offset-assert 0)
(sync-flags sync-flags :offset-assert 8)
(entity basic :offset-assert 16)
(period uint32 :offset-assert 20)
(percent float :offset-assert 24)
(ease-in float :offset-assert 28)
(ease-out float :offset-assert 32)
(pause-in float :offset-assert 36)
(pause-out float :offset-assert 40)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
)
(deftype sync-info (structure)
((sync-flags sync-flags :offset-assert 0)
(offset float :offset-assert 8)
(period uint32 :offset-assert 12)
)
:method-count-assert 16
:size-assert #x10
:flag-assert #x1000000010
(:methods
(get-current-phase-no-mod (_type_) float 9)
(get-phase-offset (_type_) float 10)
(get-norm! (_type_ int) float 11)
(get-scaled-val! (_type_ float int) float 12)
(initialize! (_type_ sync-info-params) none 13)
(get-timeframe-offset! (_type_ time-frame) time-frame 14)
(sync-now! (_type_ float) none 15)
)
)
(deftype sync-linear (sync-info)
()
:pack-me
:method-count-assert 16
:size-assert #x10
:flag-assert #x1000000010
)
(deftype sync-eased (sync-info)
((tlo float :offset-assert 16)
(thi float :offset-assert 20)
(ylo float :offset-assert 24)
(m2 float :offset-assert 28)
(yend float :offset-assert 32)
(pause-in float :offset-assert 36)
(pause-out float :offset-assert 40)
)
:pack-me
:method-count-assert 16
:size-assert #x2c
:flag-assert #x100000002c
)
(deftype sync-paused (sync-info)
((pause-in float :offset-assert 16)
(pause-out float :offset-assert 20)
)
:method-count-assert 16
:size-assert #x18
:flag-assert #x1000000018
)
(deftype delayed-rand-float (structure)
((min-time int32 :offset-assert 0)
(max-time int32 :offset-assert 4)
(max-val float :offset-assert 8)
(timer int32 :offset-assert 12)
(start-time time-frame :offset-assert 16)
(value float :offset-assert 24)
)
:pack-me
:method-count-assert 13
:size-assert #x1c
:flag-assert #xd0000001c
(:methods
(set-params! (_type_ int int float) float 9)
(reset! (_type_) float 10)
(update! (_type_) float 11)
(update-and-clear! (_type_) none 12)
)
)
(deftype oscillating-float (structure)
((value float :offset-assert 0)
(target float :offset-assert 4)
(vel float :offset-assert 8)
(max-vel float :offset-assert 12)
(damping float :offset-assert 16)
(accel float :offset-assert 20)
)
:allow-misaligned
:method-count-assert 11
:size-assert #x18
:flag-assert #xb00000018
(:methods
(set-params! (_type_ float float float float) float 9)
(update! (_type_ float) float 10)
)
)
(deftype bouncing-float (structure)
((osc oscillating-float :inline :offset-assert 0)
(max-value float :offset-assert 24)
(min-value float :offset-assert 28)
(elasticity float :offset-assert 32)
(state int32 :offset-assert 36)
)
:allow-misaligned
:method-count-assert 13
:size-assert #x28
:flag-assert #xd00000028
(:methods
(set-params! (_type_ float float float float float float float) float 9)
(update! (_type_ float) float 10)
(at-min? (_type_) symbol 11)
(at-max? (_type_) symbol 12)
)
)
(deftype delayed-rand-vector (structure)
((min-time int32 :offset-assert 0)
(max-time int32 :offset-assert 4)
(xz-max float :offset-assert 8)
(y-max float :offset-assert 12)
(timer int32 :offset-assert 16)
(start-time time-frame :offset-assert 24)
(value vector :inline :offset-assert 32)
)
:method-count-assert 13
:size-assert #x30
:flag-assert #xd00000030
(:methods
(set-params! (_type_ int int float float) vector 9)
(update-now! (_type_) vector 10)
(update-with-delay! (_type_) vector 11)
(update-with-delay-or-reset! (_type_) vector 12)
)
)
(deftype oscillating-vector (structure)
((value vector :inline :offset-assert 0)
(target vector :inline :offset-assert 16)
(vel vector :inline :offset-assert 32)
(max-vel float :offset-assert 48)
(damping float :offset-assert 52)
(accel float :offset-assert 56)
)
:method-count-assert 11
:size-assert #x3c
:flag-assert #xb0000003c
(:methods
(set-params! (_type_ vector float float float) vector 9)
(update! (_type_ vector) vector 10)
)
)