mirror of
https://github.com/open-goal/jak-project
synced 2026-06-16 14:50:32 -04:00
25b0e1be7d
* decomp: `collectables` * fix types * `powerups` and fixes * fixes * Merge branch 'pr/929' into d/temp/collectables * fix collide stuff * update things... * update * update * temp bump global heap mem * fix `defstate` hooks wrong/unnecessary sets & collide stuff for collectables * dumb mistakes :) * stub out broken process-drawable stuff * update refs * add `:no-inspect` key and save some memory & remove birth logs * Update kmachine.h * clang * add citadel * fix no-inspect key * fix tests!! * fix stupid mistake in `collide-shape-prim-sphere` alloc * comment annoying print * feedback * fix edge-case probably * remove `:no-inspect`s
41 lines
877 B
Common Lisp
41 lines
877 B
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: collide-cache.gc
|
|
;; name in dgo: collide-cache
|
|
;; dgos: GAME, ENGINE
|
|
|
|
;; TODO this doesnt work properly due to qmfc2 bugs
|
|
(defun collide-cache-using-box-test ((arg0 vector))
|
|
(local-vars (v1-1 float))
|
|
(rlet ((acc :class vf)
|
|
(vf0 :class vf)
|
|
(vf1 :class vf)
|
|
(vf2 :class vf)
|
|
(vf3 :class vf)
|
|
)
|
|
(init-vf0-vector)
|
|
(nop!)
|
|
(.max.w.vf vf3 vf0 vf0)
|
|
(let ((v1-0 *collide-work*))
|
|
(nop!)
|
|
(.lvf vf1 (&-> arg0 quad))
|
|
(nop!)
|
|
(.lvf vf2 (&-> v1-0 collide-sphere-neg-r quad))
|
|
)
|
|
(.sub.vf vf1 vf1 vf2)
|
|
(nop!)
|
|
(.mul.vf vf1 vf1 vf1)
|
|
(nop!)
|
|
(.mul.x.vf acc vf3 vf1)
|
|
(nop!)
|
|
(.add.mul.y.vf acc vf3 vf1 acc)
|
|
(nop!)
|
|
(.add.mul.z.vf acc vf3 vf1 acc)
|
|
(nop!)
|
|
(.sub.mul.w.vf vf1 vf3 vf1 acc)
|
|
(nop!)
|
|
(.mov v1-1 vf1)
|
|
(<= (the-as int v1-1) 0)
|
|
)
|
|
) |