jak-project/goal_src/jak2/engine/collide/collide-cache-h.gc
Hat Kid 52bb1c4915
decomp: board-h, board-util, gun-util, darkjak-h (#1817)
* decomp: `board-util`, `gun-util`, `darkjak-h`

* address changes and decompile `board-h`

* fix `board-util`

* remove `_type_` from `projectile` method

* fix `gun-h.gc`

* Update gun-h.gc
2022-09-01 18:25:42 -04:00

146 lines
4.8 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: collide-cache-h.gc
;; name in dgo: collide-cache-h
;; dgos: ENGINE, GAME
(declare-type collide-query structure)
;; DECOMP BEGINS
(deftype collide-puss-sphere (structure)
((bsphere sphere :inline :offset-assert 0)
(bbox4w bounding-box4w :inline :offset-assert 16)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
(deftype collide-puss-work (structure)
((closest-pt vector :inline :offset-assert 0)
(tri-normal vector :inline :offset-assert 16)
(tri-bbox4w bounding-box4w :inline :offset-assert 32)
(spheres-bbox4w bounding-box4w :inline :offset-assert 64)
(spheres collide-puss-sphere 64 :inline :offset-assert 96)
)
:method-count-assert 11
:size-assert #xc60
:flag-assert #xb00000c60
(:methods
(collide-puss-work-method-9 () none 9)
(collide-puss-work-method-10 () none 10)
)
)
(deftype collide-cache-tri (structure)
((vertex vector 3 :inline :offset-assert 0)
(extra-quad uint8 16 :offset-assert 48)
(pat pat-surface :offset 48)
(collide-ptr basic :offset 52)
(prim-index uint16 :offset 56)
(user16 uint16 :offset 58)
(user32 uint32 :offset 60)
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
)
(deftype collide-cache-prim (structure)
((prim-core collide-prim-core :inline :offset-assert 0)
(extra-quad uint8 16 :offset-assert 32)
(ccache collide-cache :offset 32)
(prim collide-shape-prim :offset 36)
(first-tri uint16 :offset 40)
(num-tris uint16 :offset 42)
(unused uint8 4 :offset 44)
(world-sphere vector :inline :offset 0)
(collide-as collide-spec :offset 16)
(action collide-action :offset 24)
(prim-type prim-type :offset 28)
)
:method-count-assert 11
:size-assert #x30
:flag-assert #xb00000030
(:methods
(collide-cache-prim-method-9 () none 9)
(collide-cache-prim-method-10 () none 10)
)
)
(deftype collide-cache (basic)
((num-tris int32 :offset-assert 4)
(num-prims int32 :offset-assert 8)
(ignore-mask pat-surface :offset-assert 12)
(ignore-processes process 2 :offset-assert 16)
(collide-box bounding-box :inline :offset-assert 32)
(collide-box4w bounding-box4w :inline :offset-assert 64)
(collide-with collide-spec :offset-assert 96)
(unused uint32 :offset-assert 100)
(prims collide-cache-prim 100 :inline :offset-assert 112)
(tris collide-cache-tri 461 :inline :offset-assert 4912)
)
:method-count-assert 26
:size-assert #x8670
:flag-assert #x1a00008670
(:methods
(collide-cache-method-9 () none 9)
(fill-and-probe-using-line-sphere (_type_ vector vector float collide-spec process collide-tri-result pat-surface) float 10)
(fill-and-probe-using-spheres (_type_ collide-query) symbol 11)
(collide-cache-method-12 (_type_ collide-query) none 12)
(collide-cache-method-13 () none 13)
(fill-using-spheres (_type_ collide-query) none 14)
(collide-cache-method-15 () none 15)
(collide-cache-method-16 () none 16)
(probe-using-spheres (_type_ collide-query) symbol 17)
(collide-cache-method-18 () none 18)
(collide-cache-method-19 () none 19)
(collide-cache-method-20 () none 20)
(collide-cache-method-21 () none 21)
(collide-cache-method-22 () none 22)
(collide-cache-method-23 () none 23)
(collide-cache-method-24 () none 24)
(collide-cache-method-25 () none 25)
)
)
(deftype collide-list-item (structure)
((mesh collide-frag-mesh :offset-assert 0)
(inst basic :offset-assert 4)
)
:pack-me
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
(deftype collide-list (structure)
((num-items int32 :offset-assert 0)
(items collide-list-item 256 :inline :offset 16)
)
:method-count-assert 9
:size-assert #x810
:flag-assert #x900000810
)
(kmemopen global "collide-cache")
(define-perm *collide-cache* collide-cache (new 'global 'collide-cache))
(define-perm *collide-list* collide-list (new 'global 'collide-list))
(kmemclose)