Files
jak-project/goal_src/engine/collide/collide-cache.gc
T
ManDude 25b0e1be7d [decomp] collectables + works ingame! (#971)
* 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
2021-11-23 18:25:57 -05:00

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)
)
)