jak-project/goal_src/jak2/engine/collide/collide-h.gc
Tyler Wilding 84ef64398e
d/jak2: finish process-drawable, collide-reaction-target, target-anim, almost target-part and gun-part (#2012)
- target-part
- ;; ERROR: Failed to convert to atomic ops: Variable could not be
constructed from register r0 in `process-drawable-shock-wall-effect`
- gun-part
  - missing sparticle decompiling case it seems related to `L155`

This is pretty rough but...im excited to see it working :)
2022-11-12 11:19:04 -05:00

60 lines
3.1 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: collide-h.gc
;; name in dgo: collide-h
;; dgos: ENGINE, GAME
(declare-type collide-query-with-vec structure)
;; DECOMP BEGINS
(deftype collide-query (structure)
((best-other-tri collide-tri-result :inline :offset-assert 0)
(best-my-tri collide-tri-result :inline :offset 0)
(ignore-processes process-tree 2 :offset-assert 88)
(ignore-process0 process-tree :offset 88)
(ignore-process1 process-tree :offset 92)
(ignore-pat pat-surface :offset-assert 96)
(ignore-pat-s32 int32 :offset 96)
(collide-with collide-spec :offset-assert 100)
(collide-with-s32 int32 :offset 100)
(overlay-params uint32 3 :offset 112)
(bbox bounding-box :inline :offset-assert 128)
(bbox4w bounding-box4w :inline :offset-assert 160)
(bsphere sphere :inline :offset-assert 192)
(start-pos vector :inline :offset-assert 208)
(move-dist vector :inline :offset-assert 224)
(rlength vector :inline :offset-assert 240)
(exit-planes plane 2 :inline :offset-assert 256)
(radius float :offset 268)
(inv-mat matrix :inline :offset 288)
(spheres (inline-array sphere) :offset 112)
(num-spheres uint32 :offset 116)
(solid-only symbol :offset 120)
(best-dist float :offset 112)
(best-other-prim collide-shape-prim :offset 116)
(best-my-prim collide-shape-prim :offset 120)
(move-vec vector :inline :offset 224)
(best-u float :offset 112)
(action-mask collide-action :offset-assert 352)
(local-box4w bounding-box4w :inline :offset-assert 368)
(search-box bounding-box4w :inline :offset-assert 400)
(search-vector vector4w :inline :offset-assert 432)
(instance-mat matrix :inline :offset-assert 448)
(instance-ptr basic :offset-assert 512)
(x-addr uint32 :offset-assert 516)
(x-step uint32 :offset-assert 520)
(y-addr uint32 :offset-assert 524)
(y-step uint32 :offset-assert 528)
(z-addr uint32 :offset-assert 532)
(z-step uint32 :offset-assert 536)
)
:method-count-assert 9
:size-assert #x21c
:flag-assert #x90000021c
)
(define *collide-test-flag* #f)