mirror of
https://github.com/open-goal/jak-project
synced 2026-09-06 19:21:00 -04:00
deftype and defmethod syntax major changes (#3094)
Major change to how `deftype` shows up in our code: - the decompiler will no longer emit the `offset-assert`, `method-count-assert`, `size-assert` and `flag-assert` parameters. There are extremely few cases where having this in the decompiled code is helpful, as the types there come from `all-types` which already has those parameters. This also doesn't break type consistency because: - the asserts aren't compared. - the first step of the test uses `all-types`, which has the asserts, which will throw an error if they're bad. - the decompiler won't emit the `heap-base` parameter unless necessary now. - the decompiler will try its hardest to turn a fixed-offset field into an `overlay-at` field. It falls back to the old offset if all else fails. - `overlay-at` now supports field "dereferencing" to specify the offset that's within a field that's a structure, e.g.: ```lisp (deftype foobar (structure) ((vec vector :inline) (flags int32 :overlay-at (-> vec w)) ) ) ``` in this structure, the offset of `flags` will be 12 because that is the final offset of `vec`'s `w` field within this structure. - **removed ID from all method declarations.** IDs are only ever automatically assigned now. Fixes #3068. - added an `:overlay` parameter to method declarations, in order to declare a new method that goes on top of a previously-defined method. Syntax is `:overlay <method-name>`. Please do not ever use this. - added `state-methods` list parameter. This lets you quickly specify a list of states to be put in the method table. Same syntax as the `states` list parameter. The decompiler will try to put as many states in this as it can without messing with the method ID order. Also changes `defmethod` to make the first type definition (before the arguments) optional. The type can now be inferred from the first argument. Fixes #3093. --------- Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
This commit is contained in:
+32
-41
@@ -3,15 +3,12 @@
|
||||
|
||||
;; definition of type chain-physics-setup
|
||||
(deftype chain-physics-setup (structure)
|
||||
((joint-index int32 :offset-assert 0)
|
||||
((joint-index int32)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x4
|
||||
:flag-assert #x900000004
|
||||
)
|
||||
|
||||
;; definition for method 3 of type chain-physics-setup
|
||||
(defmethod inspect chain-physics-setup ((this chain-physics-setup))
|
||||
(defmethod inspect ((this chain-physics-setup))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -24,18 +21,15 @@
|
||||
|
||||
;; definition of type chain-physics-joint
|
||||
(deftype chain-physics-joint (structure)
|
||||
((position vector :inline :offset-assert 0)
|
||||
(velocity vector :inline :offset-assert 16)
|
||||
(old-x vector :inline :offset-assert 32)
|
||||
(joint-mod joint-mod :offset-assert 48)
|
||||
((position vector :inline)
|
||||
(velocity vector :inline)
|
||||
(old-x vector :inline)
|
||||
(joint-mod joint-mod)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x34
|
||||
:flag-assert #x900000034
|
||||
)
|
||||
|
||||
;; definition for method 3 of type chain-physics-joint
|
||||
(defmethod inspect chain-physics-joint ((this chain-physics-joint))
|
||||
(defmethod inspect ((this chain-physics-joint))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -51,40 +45,37 @@
|
||||
|
||||
;; definition of type chain-physics
|
||||
(deftype chain-physics (basic)
|
||||
((chain-joints chain-physics-joint 20 :inline :offset-assert 16)
|
||||
(num-joints uint8 :offset-assert 1296)
|
||||
(root-joint-index uint8 :offset-assert 1297)
|
||||
(joint-length float :offset-assert 1300)
|
||||
(gravity vector :inline :offset-assert 1312)
|
||||
(gravity-target vector :inline :offset-assert 1328)
|
||||
(stretch-vel float :offset-assert 1344)
|
||||
(stretch-vel-parallel float :offset-assert 1348)
|
||||
(compress-vel float :offset-assert 1352)
|
||||
(compress-vel-parallel float :offset-assert 1356)
|
||||
(negate-y symbol :offset-assert 1360)
|
||||
(axial-slop float :offset-assert 1364)
|
||||
(maximum-stretch float :offset-assert 1368)
|
||||
(turn-off-start time-frame :offset-assert 1376)
|
||||
(turn-off-duration time-frame :offset-assert 1384)
|
||||
((chain-joints chain-physics-joint 20 :inline)
|
||||
(num-joints uint8)
|
||||
(root-joint-index uint8)
|
||||
(joint-length float)
|
||||
(gravity vector :inline)
|
||||
(gravity-target vector :inline)
|
||||
(stretch-vel float)
|
||||
(stretch-vel-parallel float)
|
||||
(compress-vel float)
|
||||
(compress-vel-parallel float)
|
||||
(negate-y symbol)
|
||||
(axial-slop float)
|
||||
(maximum-stretch float)
|
||||
(turn-off-start time-frame)
|
||||
(turn-off-duration time-frame)
|
||||
)
|
||||
:method-count-assert 18
|
||||
:size-assert #x570
|
||||
:flag-assert #x1200000570
|
||||
(:methods
|
||||
(initialize-chain-joints (_type_) symbol 9)
|
||||
(turn-off (_type_ time-frame) none :behavior process 10)
|
||||
(update (_type_ process-drawable) none :behavior process 11)
|
||||
(gravity-update (_type_ process-drawable) none 12)
|
||||
(apply-gravity (_type_ vector int process-drawable) none :behavior process 13)
|
||||
(chain-physics-method-14 (_type_ vector int) none 14)
|
||||
(clamp-length (_type_ vector vector object process-drawable) vector 15)
|
||||
(chain-physics-method-16 (_type_ int) float 16)
|
||||
(chain-physics-method-17 (_type_ vector int) none 17)
|
||||
(initialize-chain-joints (_type_) symbol)
|
||||
(turn-off (_type_ time-frame) none :behavior process)
|
||||
(update (_type_ process-drawable) none :behavior process)
|
||||
(gravity-update (_type_ process-drawable) none)
|
||||
(apply-gravity (_type_ vector int process-drawable) none :behavior process)
|
||||
(chain-physics-method-14 (_type_ vector int) none)
|
||||
(clamp-length (_type_ vector vector object process-drawable) vector)
|
||||
(chain-physics-method-16 (_type_ int) float)
|
||||
(chain-physics-method-17 (_type_ vector int) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type chain-physics
|
||||
(defmethod inspect chain-physics ((this chain-physics))
|
||||
(defmethod inspect ((this chain-physics))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
|
||||
+10
-10
@@ -3,7 +3,7 @@
|
||||
|
||||
;; definition for method 12 of type chain-physics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod gravity-update chain-physics ((this chain-physics) (arg0 process-drawable))
|
||||
(defmethod gravity-update ((this chain-physics) (arg0 process-drawable))
|
||||
(vector-seek-3d-smooth! (-> this gravity) (-> this gravity-target) 0.05 0.1)
|
||||
0
|
||||
(none)
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
;; definition for method 13 of type chain-physics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod apply-gravity chain-physics ((this chain-physics) (arg0 vector) (arg1 int) (arg2 process-drawable))
|
||||
(defmethod apply-gravity ((this chain-physics) (arg0 vector) (arg1 int) (arg2 process-drawable))
|
||||
(vector-float*!
|
||||
arg0
|
||||
(-> this gravity)
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
;; definition for method 14 of type chain-physics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod chain-physics-method-14 chain-physics ((this chain-physics) (arg0 vector) (arg1 int))
|
||||
(defmethod chain-physics-method-14 ((this chain-physics) (arg0 vector) (arg1 int))
|
||||
(vector-float*!
|
||||
arg0
|
||||
(the-as vector (+ (the-as uint (-> this chain-joints 0 velocity)) (* (+ arg1 1) 64)))
|
||||
@@ -34,7 +34,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 15 of type chain-physics
|
||||
(defmethod clamp-length chain-physics ((this chain-physics) (arg0 vector) (arg1 vector) (arg2 object) (arg3 process-drawable))
|
||||
(defmethod clamp-length ((this chain-physics) (arg0 vector) (arg1 vector) (arg2 object) (arg3 process-drawable))
|
||||
(let ((gp-0 (new 'stack-no-clear 'vector)))
|
||||
(vector-! gp-0 arg0 arg1)
|
||||
(vector-normalize! gp-0 (-> this joint-length))
|
||||
@@ -43,19 +43,19 @@
|
||||
)
|
||||
|
||||
;; definition for method 16 of type chain-physics
|
||||
(defmethod chain-physics-method-16 chain-physics ((this chain-physics) (arg0 int))
|
||||
(defmethod chain-physics-method-16 ((this chain-physics) (arg0 int))
|
||||
(lerp-scale 5461.3335 10922.667 (the float arg0) 0.0 8.0)
|
||||
)
|
||||
|
||||
;; definition for method 17 of type chain-physics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod chain-physics-method-17 chain-physics ((this chain-physics) (arg0 vector) (arg1 int))
|
||||
(defmethod chain-physics-method-17 ((this chain-physics) (arg0 vector) (arg1 int))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 9 of type chain-physics
|
||||
(defmethod initialize-chain-joints chain-physics ((this chain-physics))
|
||||
(defmethod initialize-chain-joints ((this chain-physics))
|
||||
(set! (-> this turn-off-start) 0)
|
||||
(dotimes (s5-0 (the-as int (-> this num-joints)))
|
||||
(let ((s4-0 (-> this chain-joints s5-0)))
|
||||
@@ -69,7 +69,7 @@
|
||||
|
||||
;; definition for method 10 of type chain-physics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod turn-off chain-physics ((this chain-physics) (arg0 time-frame))
|
||||
(defmethod turn-off ((this chain-physics) (arg0 time-frame))
|
||||
(set-time! (-> this turn-off-start))
|
||||
(set! (-> this turn-off-duration) arg0)
|
||||
0
|
||||
@@ -79,7 +79,7 @@
|
||||
;; definition for method 11 of type chain-physics
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod update chain-physics ((this chain-physics) (arg0 process-drawable))
|
||||
(defmethod update ((this chain-physics) (arg0 process-drawable))
|
||||
(local-vars
|
||||
(v1-78 float)
|
||||
(f0-11 float)
|
||||
@@ -356,7 +356,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 7 of type chain-physics
|
||||
(defmethod relocate chain-physics ((this chain-physics) (arg0 int))
|
||||
(defmethod relocate ((this chain-physics) (arg0 int))
|
||||
(dotimes (v1-0 (the-as int (-> this num-joints)))
|
||||
(if (nonzero? (-> this chain-joints v1-0 joint-mod))
|
||||
(&+! (-> this chain-joints v1-0 joint-mod) arg0)
|
||||
|
||||
+10
-13
@@ -3,24 +3,21 @@
|
||||
|
||||
;; definition of type dynamics
|
||||
(deftype dynamics (basic)
|
||||
((name symbol :offset-assert 4)
|
||||
(gravity-max meters :offset-assert 8)
|
||||
(gravity-length meters :offset-assert 12)
|
||||
(gravity vector :inline :offset-assert 16)
|
||||
(gravity-normal vector :inline :offset-assert 32)
|
||||
(walk-distance meters :offset-assert 48)
|
||||
(run-distance meters :offset-assert 52)
|
||||
((name symbol)
|
||||
(gravity-max meters)
|
||||
(gravity-length meters)
|
||||
(gravity vector :inline)
|
||||
(gravity-normal vector :inline)
|
||||
(walk-distance meters)
|
||||
(run-distance meters)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #x38
|
||||
:flag-assert #xa00000038
|
||||
(:methods
|
||||
(set-gravity-length (_type_ float) none 9)
|
||||
(set-gravity-length (_type_ float) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type dynamics
|
||||
(defmethod inspect dynamics ((this dynamics))
|
||||
(defmethod inspect ((this dynamics))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -39,7 +36,7 @@
|
||||
|
||||
;; definition for method 9 of type dynamics
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod set-gravity-length dynamics ((this dynamics) (arg0 float))
|
||||
(defmethod set-gravity-length ((this dynamics) (arg0 float))
|
||||
(set! (-> this gravity-length) arg0)
|
||||
(vector-float*! (-> this gravity) (-> this gravity-normal) arg0)
|
||||
0
|
||||
|
||||
+172
-195
@@ -3,29 +3,26 @@
|
||||
|
||||
;; definition of type rigid-body-info
|
||||
(deftype rigid-body-info (structure)
|
||||
((mass float :offset-assert 0)
|
||||
(inv-mass float :offset-assert 4)
|
||||
(linear-damping float :offset-assert 8)
|
||||
(angular-damping float :offset-assert 12)
|
||||
(bounce-factor float :offset-assert 16)
|
||||
(friction-factor float :offset-assert 20)
|
||||
(bounce-mult-factor float :offset-assert 24)
|
||||
(unknown-k1hbn23 float :offset-assert 28)
|
||||
(cm-offset-joint vector :inline :offset-assert 32)
|
||||
(inv-inertial-tensor matrix :inline :offset-assert 48)
|
||||
(inertial-tensor matrix :inline :offset-assert 112)
|
||||
(inertial-tensor-box meters 3 :offset-assert 176)
|
||||
((mass float)
|
||||
(inv-mass float)
|
||||
(linear-damping float)
|
||||
(angular-damping float)
|
||||
(bounce-factor float)
|
||||
(friction-factor float)
|
||||
(bounce-mult-factor float)
|
||||
(unknown-k1hbn23 float)
|
||||
(cm-offset-joint vector :inline)
|
||||
(inv-inertial-tensor matrix :inline)
|
||||
(inertial-tensor matrix :inline)
|
||||
(inertial-tensor-box meters 3)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #xbc
|
||||
:flag-assert #xa000000bc
|
||||
(:methods
|
||||
(rigid-body-info-method-9 (_type_) none 9)
|
||||
(rigid-body-info-method-9 (_type_) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-info
|
||||
(defmethod inspect rigid-body-info ((this rigid-body-info))
|
||||
(defmethod inspect ((this rigid-body-info))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -48,19 +45,16 @@
|
||||
|
||||
;; definition of type rigid-body-object-extra-info
|
||||
(deftype rigid-body-object-extra-info (structure)
|
||||
((max-time-step float :offset-assert 0)
|
||||
(gravity meters :offset-assert 4)
|
||||
(idle-distance meters :offset-assert 8)
|
||||
(attack-force-scale float :offset-assert 12)
|
||||
((max-time-step float)
|
||||
(gravity meters)
|
||||
(idle-distance meters)
|
||||
(attack-force-scale float)
|
||||
)
|
||||
:pack-me
|
||||
:method-count-assert 9
|
||||
:size-assert #x10
|
||||
:flag-assert #x900000010
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-object-extra-info
|
||||
(defmethod inspect rigid-body-object-extra-info ((this rigid-body-object-extra-info))
|
||||
(defmethod inspect ((this rigid-body-object-extra-info))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -76,29 +70,26 @@
|
||||
|
||||
;; definition of type rigid-body-object-constants
|
||||
(deftype rigid-body-object-constants (structure)
|
||||
((info rigid-body-info :inline :offset-assert 0)
|
||||
(cm-joint vector :inline :offset 32)
|
||||
(cm-joint-x meters :offset 32)
|
||||
(cm-joint-y meters :offset 36)
|
||||
(cm-joint-z meters :offset 40)
|
||||
(cm-joint-w meters :offset 44)
|
||||
(linear-damping float :offset 8)
|
||||
(angular-damping float :offset 12)
|
||||
(bounce-factor float :offset 16)
|
||||
(friction-factor float :offset 20)
|
||||
(inertial-tensor-x meters :offset 176)
|
||||
(inertial-tensor-y meters :offset 180)
|
||||
(inertial-tensor-z meters :offset 184)
|
||||
(extra rigid-body-object-extra-info :inline :offset-assert 188)
|
||||
(name symbol :offset-assert 204)
|
||||
((info rigid-body-info :inline)
|
||||
(cm-joint vector :inline :overlay-at (-> info cm-offset-joint))
|
||||
(cm-joint-x meters :overlay-at (-> info cm-offset-joint data 0))
|
||||
(cm-joint-y meters :overlay-at (-> info cm-offset-joint data 1))
|
||||
(cm-joint-z meters :overlay-at (-> info cm-offset-joint data 2))
|
||||
(cm-joint-w meters :overlay-at (-> info cm-offset-joint data 3))
|
||||
(linear-damping float :overlay-at (-> info linear-damping))
|
||||
(angular-damping float :overlay-at (-> info angular-damping))
|
||||
(bounce-factor float :overlay-at (-> info bounce-factor))
|
||||
(friction-factor float :overlay-at (-> info friction-factor))
|
||||
(inertial-tensor-x meters :overlay-at (-> info inertial-tensor-box 0))
|
||||
(inertial-tensor-y meters :overlay-at (-> info inertial-tensor-box 1))
|
||||
(inertial-tensor-z meters :overlay-at (-> info inertial-tensor-box 2))
|
||||
(extra rigid-body-object-extra-info :inline)
|
||||
(name symbol)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #xd0
|
||||
:flag-assert #x9000000d0
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-object-constants
|
||||
(defmethod inspect rigid-body-object-constants ((this rigid-body-object-constants))
|
||||
(defmethod inspect ((this rigid-body-object-constants))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -129,21 +120,18 @@
|
||||
|
||||
;; definition of type rigid-body-impact
|
||||
(deftype rigid-body-impact (structure)
|
||||
((point vector :inline :offset-assert 0)
|
||||
(normal vector :inline :offset-assert 16)
|
||||
(velocity vector :inline :offset-assert 32)
|
||||
(impulse float :offset-assert 48)
|
||||
(pat pat-surface :offset-assert 52)
|
||||
(rbody basic :offset-assert 56)
|
||||
(prim-id uint32 :offset-assert 60)
|
||||
((point vector :inline)
|
||||
(normal vector :inline)
|
||||
(velocity vector :inline)
|
||||
(impulse float)
|
||||
(pat pat-surface)
|
||||
(rbody basic)
|
||||
(prim-id uint32)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x40
|
||||
:flag-assert #x900000040
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-impact
|
||||
(defmethod inspect rigid-body-impact ((this rigid-body-impact))
|
||||
(defmethod inspect ((this rigid-body-impact))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -162,57 +150,54 @@
|
||||
|
||||
;; definition of type rigid-body
|
||||
(deftype rigid-body (structure)
|
||||
((work rigid-body-work :offset-assert 0)
|
||||
(info rigid-body-info :offset-assert 4)
|
||||
(flags rigid-body-flag :offset-assert 8)
|
||||
(force-callback (function object float none) :offset-assert 12)
|
||||
(blocked-by rigid-body-object :offset-assert 16)
|
||||
(time-remaining float :offset-assert 20)
|
||||
(step-count int16 :offset-assert 24)
|
||||
(position vector :inline :offset-assert 32)
|
||||
(rot vector :inline :offset-assert 48)
|
||||
(rotation quaternion :inline :offset 48)
|
||||
(lin-momentum vector :inline :offset-assert 64)
|
||||
(ang-momentum vector :inline :offset-assert 80)
|
||||
(force vector :inline :offset-assert 96)
|
||||
(torque vector :inline :offset-assert 112)
|
||||
(lin-velocity vector :inline :offset-assert 128)
|
||||
(ang-velocity vector :inline :offset-assert 144)
|
||||
(matrix matrix :inline :offset-assert 160)
|
||||
(inv-i-world matrix :inline :offset-assert 224)
|
||||
((work rigid-body-work)
|
||||
(info rigid-body-info)
|
||||
(flags rigid-body-flag)
|
||||
(force-callback (function object float none))
|
||||
(blocked-by rigid-body-object)
|
||||
(time-remaining float)
|
||||
(step-count int16)
|
||||
(position vector :inline)
|
||||
(rot vector :inline)
|
||||
(rotation quaternion :inline :overlay-at (-> rot data 0))
|
||||
(lin-momentum vector :inline)
|
||||
(ang-momentum vector :inline)
|
||||
(force vector :inline)
|
||||
(torque vector :inline)
|
||||
(lin-velocity vector :inline)
|
||||
(ang-velocity vector :inline)
|
||||
(matrix matrix :inline)
|
||||
(inv-i-world matrix :inline)
|
||||
)
|
||||
:method-count-assert 32
|
||||
:size-assert #x120
|
||||
:flag-assert #x2000000120
|
||||
(:methods
|
||||
(rigid-body-method-9 (_type_ collide-shape-moving float) none 9)
|
||||
(rigid-body-method-10 (_type_) none 10)
|
||||
(rigid-body-method-11 (_type_ collide-shape-moving) none 11)
|
||||
(rigid-body-method-12 (_type_ float) none 12)
|
||||
(rigid-body-method-13 (_type_) none 13)
|
||||
(rigid-body-method-14 (_type_ float) none 14)
|
||||
(rigid-body-method-15 (_type_ collide-shape-moving float) none 15)
|
||||
(clear-force-torque! (_type_) none 16)
|
||||
(clear-momentum! (_type_) none 17)
|
||||
(rigid-body-method-18 (_type_ vector vector) none 18)
|
||||
(rigid-body-method-19 (_type_ vector vector) none 19)
|
||||
(rigid-body-method-20 (_type_ vector) none 20)
|
||||
(rigid-body-method-21 (_type_ vector vector float) none 21)
|
||||
(rigid-body-method-22 (_type_ vector vector) vector 22)
|
||||
(rigid-body-method-23 (_type_ vector) vector 23)
|
||||
(rigid-body-method-24 (_type_) none 24)
|
||||
(rigid-body-method-25 (_type_ rigid-body-info vector quaternion function) none 25)
|
||||
(rigid-body-method-26 (_type_ vector quaternion) none 26)
|
||||
(print-physics (_type_ object) none 27)
|
||||
(print-force-torque (_type_ object) none 28)
|
||||
(print-position-rotation (_type_ object) none 29)
|
||||
(print-momentum (_type_ object) none 30)
|
||||
(print-velocity (_type_ object) none 31)
|
||||
(rigid-body-method-9 (_type_ collide-shape-moving float) none)
|
||||
(rigid-body-method-10 (_type_) none)
|
||||
(rigid-body-method-11 (_type_ collide-shape-moving) none)
|
||||
(rigid-body-method-12 (_type_ float) none)
|
||||
(rigid-body-method-13 (_type_) none)
|
||||
(rigid-body-method-14 (_type_ float) none)
|
||||
(rigid-body-method-15 (_type_ collide-shape-moving float) none)
|
||||
(clear-force-torque! (_type_) none)
|
||||
(clear-momentum! (_type_) none)
|
||||
(rigid-body-method-18 (_type_ vector vector) none)
|
||||
(rigid-body-method-19 (_type_ vector vector) none)
|
||||
(rigid-body-method-20 (_type_ vector) none)
|
||||
(rigid-body-method-21 (_type_ vector vector float) none)
|
||||
(rigid-body-method-22 (_type_ vector vector) vector)
|
||||
(rigid-body-method-23 (_type_ vector) vector)
|
||||
(rigid-body-method-24 (_type_) none)
|
||||
(rigid-body-method-25 (_type_ rigid-body-info vector quaternion function) none)
|
||||
(rigid-body-method-26 (_type_ vector quaternion) none)
|
||||
(print-physics (_type_ object) none)
|
||||
(print-force-torque (_type_ object) none)
|
||||
(print-position-rotation (_type_ object) none)
|
||||
(print-momentum (_type_ object) none)
|
||||
(print-velocity (_type_ object) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body
|
||||
(defmethod inspect rigid-body ((this rigid-body))
|
||||
(defmethod inspect ((this rigid-body))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-16)
|
||||
@@ -263,36 +248,33 @@
|
||||
|
||||
;; definition of type rigid-body-control
|
||||
(deftype rigid-body-control (basic)
|
||||
((process process :offset-assert 4)
|
||||
(state rigid-body :inline :offset-assert 16)
|
||||
((process process)
|
||||
(state rigid-body :inline)
|
||||
)
|
||||
:method-count-assert 26
|
||||
:size-assert #x130
|
||||
:flag-assert #x1a00000130
|
||||
(:methods
|
||||
(new (symbol type process) _type_ 0)
|
||||
(rigid-body-control-method-9 (_type_ collide-shape-moving float) none 9)
|
||||
(rigid-body-control-method-10 (_type_ rigid-body-object float float) object 10)
|
||||
(rigid-body-control-method-11 (_type_ collide-shape-moving) none 11)
|
||||
(rigid-body-control-method-12 (_type_ float) none 12)
|
||||
(rigid-body-control-method-13 (_type_) none 13)
|
||||
(rigid-body-control-method-14 (_type_ float) none 14)
|
||||
(clear-force-torque! (_type_) none 15)
|
||||
(clear-momentum! (_type_) none 16)
|
||||
(rigid-body-control-method-17 (_type_ vector vector) none 17)
|
||||
(rigid-body-control-method-18 (_type_ vector vector) none 18)
|
||||
(rigid-body-control-method-19 (_type_ vector) none 19)
|
||||
(rigid-body-control-method-20 (_type_ vector vector float) none 20)
|
||||
(rigid-body-control-method-21 (_type_ vector vector) vector 21)
|
||||
(rigid-body-control-method-22 (_type_ vector) vector 22)
|
||||
(rigid-body-control-method-23 (_type_) none 23)
|
||||
(rigid-body-control-method-24 (_type_ rigid-body-info vector quaternion basic) none 24)
|
||||
(rigid-body-control-method-25 (_type_ vector quaternion) none 25)
|
||||
(new (symbol type process) _type_)
|
||||
(rigid-body-control-method-9 (_type_ collide-shape-moving float) none)
|
||||
(rigid-body-control-method-10 (_type_ rigid-body-object float float) object)
|
||||
(rigid-body-control-method-11 (_type_ collide-shape-moving) none)
|
||||
(rigid-body-control-method-12 (_type_ float) none)
|
||||
(rigid-body-control-method-13 (_type_) none)
|
||||
(rigid-body-control-method-14 (_type_ float) none)
|
||||
(clear-force-torque! (_type_) none)
|
||||
(clear-momentum! (_type_) none)
|
||||
(rigid-body-control-method-17 (_type_ vector vector) none)
|
||||
(rigid-body-control-method-18 (_type_ vector vector) none)
|
||||
(rigid-body-control-method-19 (_type_ vector) none)
|
||||
(rigid-body-control-method-20 (_type_ vector vector float) none)
|
||||
(rigid-body-control-method-21 (_type_ vector vector) vector)
|
||||
(rigid-body-control-method-22 (_type_ vector) vector)
|
||||
(rigid-body-control-method-23 (_type_) none)
|
||||
(rigid-body-control-method-24 (_type_ rigid-body-info vector quaternion basic) none)
|
||||
(rigid-body-control-method-25 (_type_ vector quaternion) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-control
|
||||
(defmethod inspect rigid-body-control ((this rigid-body-control))
|
||||
(defmethod inspect ((this rigid-body-control))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-16)
|
||||
@@ -344,153 +326,151 @@
|
||||
)
|
||||
|
||||
;; definition for method 9 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-9 rigid-body-control ((this rigid-body-control) (arg0 collide-shape-moving) (arg1 float))
|
||||
(defmethod rigid-body-control-method-9 ((this rigid-body-control) (arg0 collide-shape-moving) (arg1 float))
|
||||
(rigid-body-method-9 (-> this state) arg0 arg1)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 10 of type rigid-body-control
|
||||
;; WARN: Return type mismatch none vs object.
|
||||
(defmethod rigid-body-control-method-10 rigid-body-control ((this rigid-body-control) (arg0 rigid-body-object) (arg1 float) (arg2 float))
|
||||
(defmethod rigid-body-control-method-10 ((this rigid-body-control) (arg0 rigid-body-object) (arg1 float) (arg2 float))
|
||||
(rigid-body-method-10 (-> this state))
|
||||
)
|
||||
|
||||
;; definition for method 11 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-11 rigid-body-control ((this rigid-body-control) (arg0 collide-shape-moving))
|
||||
(defmethod rigid-body-control-method-11 ((this rigid-body-control) (arg0 collide-shape-moving))
|
||||
(rigid-body-method-11 (-> this state) arg0)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 12 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-12 rigid-body-control ((this rigid-body-control) (arg0 float))
|
||||
(defmethod rigid-body-control-method-12 ((this rigid-body-control) (arg0 float))
|
||||
(rigid-body-method-12 (-> this state) arg0)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 13 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-13 rigid-body-control ((this rigid-body-control))
|
||||
(defmethod rigid-body-control-method-13 ((this rigid-body-control))
|
||||
(rigid-body-method-13 (-> this state))
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 14 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-14 rigid-body-control ((this rigid-body-control) (arg0 float))
|
||||
(defmethod rigid-body-control-method-14 ((this rigid-body-control) (arg0 float))
|
||||
(rigid-body-method-14 (-> this state) arg0)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 15 of type rigid-body-control
|
||||
(defmethod clear-force-torque! rigid-body-control ((this rigid-body-control))
|
||||
(defmethod clear-force-torque! ((this rigid-body-control))
|
||||
(clear-force-torque! (-> this state))
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 16 of type rigid-body-control
|
||||
(defmethod clear-momentum! rigid-body-control ((this rigid-body-control))
|
||||
(defmethod clear-momentum! ((this rigid-body-control))
|
||||
(clear-momentum! (-> this state))
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 17 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-17 rigid-body-control ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-control-method-17 ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(rigid-body-method-18 (-> this state) arg0 arg1)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 18 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-18 rigid-body-control ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-control-method-18 ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(rigid-body-method-19 (-> this state) arg0 arg1)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 19 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-19 rigid-body-control ((this rigid-body-control) (arg0 vector))
|
||||
(defmethod rigid-body-control-method-19 ((this rigid-body-control) (arg0 vector))
|
||||
(rigid-body-method-20 (-> this state) arg0)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 20 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-20 rigid-body-control ((this rigid-body-control) (arg0 vector) (arg1 vector) (arg2 float))
|
||||
(defmethod rigid-body-control-method-20 ((this rigid-body-control) (arg0 vector) (arg1 vector) (arg2 float))
|
||||
(rigid-body-method-21 (-> this state) arg0 arg1 arg2)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 21 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-21 rigid-body-control ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-control-method-21 ((this rigid-body-control) (arg0 vector) (arg1 vector))
|
||||
(rigid-body-method-22 (-> this state) arg0 arg1)
|
||||
)
|
||||
|
||||
;; definition for method 22 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-22 rigid-body-control ((this rigid-body-control) (arg0 vector))
|
||||
(defmethod rigid-body-control-method-22 ((this rigid-body-control) (arg0 vector))
|
||||
(rigid-body-method-23 (-> this state) arg0)
|
||||
)
|
||||
|
||||
;; definition for method 23 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-23 rigid-body-control ((this rigid-body-control))
|
||||
(defmethod rigid-body-control-method-23 ((this rigid-body-control))
|
||||
(rigid-body-method-24 (-> this state))
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 24 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-24 rigid-body-control ((this rigid-body-control) (arg0 rigid-body-info) (arg1 vector) (arg2 quaternion) (arg3 basic))
|
||||
(defmethod rigid-body-control-method-24 ((this rigid-body-control) (arg0 rigid-body-info) (arg1 vector) (arg2 quaternion) (arg3 basic))
|
||||
(rigid-body-method-25 (-> this state) arg0 arg1 arg2 (the-as function arg3))
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 25 of type rigid-body-control
|
||||
(defmethod rigid-body-control-method-25 rigid-body-control ((this rigid-body-control) (arg0 vector) (arg1 quaternion))
|
||||
(defmethod rigid-body-control-method-25 ((this rigid-body-control) (arg0 vector) (arg1 quaternion))
|
||||
(rigid-body-method-26 (-> this state) arg0 arg1)
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition of type rigid-body-object
|
||||
(deftype rigid-body-object (process-focusable)
|
||||
((root collide-shape-moving :override)
|
||||
(info rigid-body-object-constants :offset-assert 204)
|
||||
(flags rigid-body-object-flag :offset-assert 208)
|
||||
(max-time-step float :offset-assert 216)
|
||||
(incoming-attack-id uint32 :offset-assert 220)
|
||||
(player-touch-time time-frame :offset-assert 224)
|
||||
(disturbed-time time-frame :offset-assert 232)
|
||||
(player-force-position vector :inline :offset-assert 240)
|
||||
(player-force vector :inline :offset-assert 256)
|
||||
((root collide-shape-moving :override)
|
||||
(info rigid-body-object-constants)
|
||||
(flags rigid-body-object-flag)
|
||||
(max-time-step float)
|
||||
(incoming-attack-id uint32)
|
||||
(player-touch-time time-frame)
|
||||
(disturbed-time time-frame)
|
||||
(player-force-position vector :inline)
|
||||
(player-force vector :inline)
|
||||
)
|
||||
:heap-base #x90
|
||||
:method-count-assert 53
|
||||
:size-assert #x110
|
||||
:flag-assert #x3500900110
|
||||
(:state-methods
|
||||
idle
|
||||
active
|
||||
)
|
||||
(:methods
|
||||
(idle () _type_ :state 27)
|
||||
(active () _type_ :state 28)
|
||||
(rigid-body-object-method-29 (_type_ float) none 29)
|
||||
(rigid-body-object-method-30 (_type_) none 30)
|
||||
(alloc-and-init-rigid-body-control (_type_ rigid-body-object-constants) none 31)
|
||||
(allocate-and-init-cshape (_type_) none 32)
|
||||
(init-skel-and-rigid-body (_type_) none 33)
|
||||
(rigid-body-object-method-34 (_type_) none 34)
|
||||
(rigid-body-object-method-35 (_type_) none 35)
|
||||
(do-engine-sounds (_type_) none 36)
|
||||
(rigid-body-object-method-37 (_type_) none 37)
|
||||
(rigid-body-object-method-38 (_type_) none 38)
|
||||
(rigid-body-object-method-39 (_type_) none 39)
|
||||
(rigid-body-object-method-40 (_type_) none 40)
|
||||
(rigid-body-object-method-41 (_type_) none 41)
|
||||
(rigid-body-object-method-42 (_type_) none :behavior rigid-body-object 42)
|
||||
(rigid-body-object-method-43 (_type_) none 43)
|
||||
(apply-damage (_type_ float rigid-body-impact) none 44)
|
||||
(rigid-body-object-method-45 (_type_ rigid-body-impact) none 45)
|
||||
(rigid-body-object-method-46 (_type_ process-drawable int symbol event-message-block) object :behavior rigid-body-object 46)
|
||||
(rigid-body-object-method-47 (_type_ process-drawable attack-info touching-shapes-entry penetrate) symbol 47)
|
||||
(rigid-body-object-method-48 (_type_ process-focusable touching-shapes-entry) symbol 48)
|
||||
(rigid-body-object-method-49 (_type_ rigid-body-impact touching-shapes-entry) none 49)
|
||||
(rigid-body-object-method-50 (_type_ float) none 50)
|
||||
(rigid-body-object-method-51 (_type_) none 51)
|
||||
(rigid-body-object-method-52 (_type_) none 52)
|
||||
(rigid-body-object-method-29 (_type_ float) none)
|
||||
(rigid-body-object-method-30 (_type_) none)
|
||||
(alloc-and-init-rigid-body-control (_type_ rigid-body-object-constants) none)
|
||||
(allocate-and-init-cshape (_type_) none)
|
||||
(init-skel-and-rigid-body (_type_) none)
|
||||
(rigid-body-object-method-34 (_type_) none)
|
||||
(rigid-body-object-method-35 (_type_) none)
|
||||
(do-engine-sounds (_type_) none)
|
||||
(rigid-body-object-method-37 (_type_) none)
|
||||
(rigid-body-object-method-38 (_type_) none)
|
||||
(rigid-body-object-method-39 (_type_) none)
|
||||
(rigid-body-object-method-40 (_type_) none)
|
||||
(rigid-body-object-method-41 (_type_) none)
|
||||
(rigid-body-object-method-42 (_type_) none :behavior rigid-body-object)
|
||||
(rigid-body-object-method-43 (_type_) none)
|
||||
(apply-damage (_type_ float rigid-body-impact) none)
|
||||
(rigid-body-object-method-45 (_type_ rigid-body-impact) none)
|
||||
(rigid-body-object-method-46 (_type_ process-drawable int symbol event-message-block) object :behavior rigid-body-object)
|
||||
(rigid-body-object-method-47 (_type_ process-drawable attack-info touching-shapes-entry penetrate) symbol)
|
||||
(rigid-body-object-method-48 (_type_ process-focusable touching-shapes-entry) symbol)
|
||||
(rigid-body-object-method-49 (_type_ rigid-body-impact touching-shapes-entry) none)
|
||||
(rigid-body-object-method-50 (_type_ float) none)
|
||||
(rigid-body-object-method-51 (_type_) none)
|
||||
(rigid-body-object-method-52 (_type_) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-object
|
||||
(defmethod inspect rigid-body-object ((this rigid-body-object))
|
||||
(defmethod inspect ((this rigid-body-object))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-22)
|
||||
@@ -542,26 +522,23 @@
|
||||
|
||||
;; definition of type rigid-body-queue
|
||||
(deftype rigid-body-queue (structure)
|
||||
((count int8 :offset-assert 0)
|
||||
(array handle 128 :offset 8)
|
||||
((count int8)
|
||||
(array handle 128 :offset 8)
|
||||
)
|
||||
:method-count-assert 17
|
||||
:size-assert #x408
|
||||
:flag-assert #x1100000408
|
||||
(:methods
|
||||
(rigid-body-queue-method-9 (_type_) none 9)
|
||||
(rigid-body-queue-method-10 (_type_) none 10)
|
||||
(rigid-body-queue-method-11 (_type_ rigid-body-object) none 11)
|
||||
(rigid-body-queue-method-12 (_type_ int int) none 12)
|
||||
(rigid-body-queue-method-13 (_type_ int rigid-body-object) none 13)
|
||||
(rigid-body-queue-method-14 (_type_ int) none 14)
|
||||
(rigid-body-queue-method-15 (_type_ rigid-body-object) none 15)
|
||||
(validate (_type_) symbol 16)
|
||||
(rigid-body-queue-method-9 (_type_) none)
|
||||
(rigid-body-queue-method-10 (_type_) none)
|
||||
(rigid-body-queue-method-11 (_type_ rigid-body-object) none)
|
||||
(rigid-body-queue-method-12 (_type_ int int) none)
|
||||
(rigid-body-queue-method-13 (_type_ int rigid-body-object) none)
|
||||
(rigid-body-queue-method-14 (_type_ int) none)
|
||||
(rigid-body-queue-method-15 (_type_ rigid-body-object) none)
|
||||
(validate (_type_) symbol)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-queue
|
||||
(defmethod inspect rigid-body-queue ((this rigid-body-queue))
|
||||
(defmethod inspect ((this rigid-body-queue))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
|
||||
+12
-16
@@ -3,7 +3,7 @@
|
||||
|
||||
;; definition for method 9 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-9 rigid-body-queue ((this rigid-body-queue))
|
||||
(defmethod rigid-body-queue-method-9 ((this rigid-body-queue))
|
||||
(set! (-> this count) 0)
|
||||
(dotimes (v1-0 128)
|
||||
(set! (-> this array v1-0) (the-as handle #f))
|
||||
@@ -13,7 +13,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 16 of type rigid-body-queue
|
||||
(defmethod validate rigid-body-queue ((this rigid-body-queue))
|
||||
(defmethod validate ((this rigid-body-queue))
|
||||
(let ((gp-0 0))
|
||||
(dotimes (v1-0 (-> this count))
|
||||
(let ((a1-2 (-> this array v1-0))
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
;; definition for method 10 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-10 rigid-body-queue ((this rigid-body-queue))
|
||||
(defmethod rigid-body-queue-method-10 ((this rigid-body-queue))
|
||||
(local-vars (s4-0 process))
|
||||
(with-pp
|
||||
(let ((f0-0 (seconds-per-frame))
|
||||
@@ -117,7 +117,7 @@
|
||||
|
||||
;; definition for method 11 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-11 rigid-body-queue ((this rigid-body-queue) (arg0 rigid-body-object))
|
||||
(defmethod rigid-body-queue-method-11 ((this rigid-body-queue) (arg0 rigid-body-object))
|
||||
(let ((v1-0 -1))
|
||||
(let ((a2-0 0))
|
||||
(b! #t cfg-9 :delay (nop!))
|
||||
@@ -147,7 +147,7 @@
|
||||
|
||||
;; definition for method 12 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-12 rigid-body-queue ((this rigid-body-queue) (arg0 int) (arg1 int))
|
||||
(defmethod rigid-body-queue-method-12 ((this rigid-body-queue) (arg0 int) (arg1 int))
|
||||
(when (< arg0 arg1)
|
||||
(let ((v1-1 arg1)
|
||||
(a3-0 (+ arg1 -1))
|
||||
@@ -167,7 +167,7 @@
|
||||
|
||||
;; definition for method 13 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-13 rigid-body-queue ((this rigid-body-queue) (arg0 int) (arg1 rigid-body-object))
|
||||
(defmethod rigid-body-queue-method-13 ((this rigid-body-queue) (arg0 int) (arg1 rigid-body-object))
|
||||
(let ((v1-2 (process->handle arg1))
|
||||
(a2-4 (+ arg0 1))
|
||||
)
|
||||
@@ -189,7 +189,7 @@
|
||||
|
||||
;; definition for method 14 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-14 rigid-body-queue ((this rigid-body-queue) (arg0 int))
|
||||
(defmethod rigid-body-queue-method-14 ((this rigid-body-queue) (arg0 int))
|
||||
(let ((v1-0 arg0)
|
||||
(a1-1 (+ arg0 1))
|
||||
)
|
||||
@@ -206,7 +206,7 @@
|
||||
|
||||
;; definition for method 15 of type rigid-body-queue
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-queue-method-15 rigid-body-queue ((this rigid-body-queue) (arg0 rigid-body-object))
|
||||
(defmethod rigid-body-queue-method-15 ((this rigid-body-queue) (arg0 rigid-body-object))
|
||||
(let ((v1-2 (process->handle arg0))
|
||||
(a1-4 0)
|
||||
)
|
||||
@@ -228,19 +228,15 @@
|
||||
|
||||
;; definition of type rigid-body-queue-manager
|
||||
(deftype rigid-body-queue-manager (process)
|
||||
((queue rigid-body-queue :offset-assert 128)
|
||||
((queue rigid-body-queue)
|
||||
)
|
||||
:heap-base #x10
|
||||
:method-count-assert 15
|
||||
:size-assert #x84
|
||||
:flag-assert #xf00100084
|
||||
(:methods
|
||||
(idle () _type_ :state 14)
|
||||
(:state-methods
|
||||
idle
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-queue-manager
|
||||
(defmethod inspect rigid-body-queue-manager ((this rigid-body-queue-manager))
|
||||
(defmethod inspect ((this rigid-body-queue-manager))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
|
||||
+61
-64
@@ -3,16 +3,13 @@
|
||||
|
||||
;; definition of type rigid-body-work
|
||||
(deftype rigid-body-work (structure)
|
||||
((max-ang-momentum float :offset-assert 0)
|
||||
(max-ang-velocity float :offset-assert 4)
|
||||
((max-ang-momentum float)
|
||||
(max-ang-velocity float)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x8
|
||||
:flag-assert #x900000008
|
||||
)
|
||||
|
||||
;; definition for method 3 of type rigid-body-work
|
||||
(defmethod inspect rigid-body-work ((this rigid-body-work))
|
||||
(defmethod inspect ((this rigid-body-work))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -36,14 +33,14 @@
|
||||
)
|
||||
|
||||
;; definition for method 7 of type rigid-body-control
|
||||
(defmethod relocate rigid-body-control ((this rigid-body-control) (arg0 int))
|
||||
(defmethod relocate ((this rigid-body-control) (arg0 int))
|
||||
(&+! (-> this process) arg0)
|
||||
this
|
||||
)
|
||||
|
||||
;; definition for method 9 of type rigid-body-info
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-info-method-9 rigid-body-info ((this rigid-body-info))
|
||||
(defmethod rigid-body-info-method-9 ((this rigid-body-info))
|
||||
(let ((f24-0 (-> this mass))
|
||||
(f28-0 (-> this inertial-tensor-box 0))
|
||||
(f30-0 (-> this inertial-tensor-box 1))
|
||||
@@ -83,7 +80,7 @@
|
||||
;; definition for method 16 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod clear-force-torque! rigid-body ((this rigid-body))
|
||||
(defmethod clear-force-torque! ((this rigid-body))
|
||||
(set! (-> this force quad) (the-as uint128 0))
|
||||
(set! (-> this torque quad) (the-as uint128 0))
|
||||
0
|
||||
@@ -93,7 +90,7 @@
|
||||
;; definition for method 17 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod clear-momentum! rigid-body ((this rigid-body))
|
||||
(defmethod clear-momentum! ((this rigid-body))
|
||||
(set! (-> this lin-momentum quad) (the-as uint128 0))
|
||||
(set! (-> this ang-momentum quad) (the-as uint128 0))
|
||||
0
|
||||
@@ -102,7 +99,7 @@
|
||||
|
||||
;; definition for method 24 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-24 rigid-body ((this rigid-body))
|
||||
(defmethod rigid-body-method-24 ((this rigid-body))
|
||||
(when #t
|
||||
(quaternion->matrix (-> this matrix) (-> this rotation))
|
||||
(let ((s5-0 (new 'stack-no-clear 'vector)))
|
||||
@@ -116,7 +113,7 @@
|
||||
|
||||
;; definition for method 26 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-26 rigid-body ((this rigid-body) (arg0 vector) (arg1 quaternion))
|
||||
(defmethod rigid-body-method-26 ((this rigid-body) (arg0 vector) (arg1 quaternion))
|
||||
(let ((s3-0 (new 'stack-no-clear 'inline-array 'vector 8)))
|
||||
(quaternion->matrix (the-as matrix (-> s3-0 1)) arg1)
|
||||
(vector-rotate*! (-> s3-0 0) (-> this info cm-offset-joint) (the-as matrix (-> s3-0 1)))
|
||||
@@ -132,7 +129,7 @@
|
||||
;; definition for method 25 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-25 rigid-body ((this rigid-body) (arg0 rigid-body-info) (arg1 vector) (arg2 quaternion) (arg3 function))
|
||||
(defmethod rigid-body-method-25 ((this rigid-body) (arg0 rigid-body-info) (arg1 vector) (arg2 quaternion) (arg3 function))
|
||||
(set! (-> this work) *rigid-body-work*)
|
||||
(set! (-> this info) arg0)
|
||||
(set! (-> this force-callback) (the-as (function object float none) arg3))
|
||||
@@ -150,7 +147,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 22 of type rigid-body
|
||||
(defmethod rigid-body-method-22 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-method-22 ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(let ((v1-1 (vector-! (new 'stack-no-clear 'vector) arg0 (-> this position))))
|
||||
(vector-cross! arg1 (-> this ang-velocity) v1-1)
|
||||
)
|
||||
@@ -185,7 +182,7 @@
|
||||
;; definition for method 12 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-12 rigid-body ((this rigid-body) (arg0 float))
|
||||
(defmethod rigid-body-method-12 ((this rigid-body) (arg0 float))
|
||||
(local-vars (v1-6 float))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
@@ -252,7 +249,7 @@
|
||||
|
||||
;; definition for method 13 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-13 rigid-body ((this rigid-body))
|
||||
(defmethod rigid-body-method-13 ((this rigid-body))
|
||||
(let ((v1-0 (-> this info)))
|
||||
(vector-float*! (-> this lin-velocity) (-> this lin-momentum) (-> v1-0 inv-mass))
|
||||
(matrix-3x3-triple-transpose-product (-> this inv-i-world) (-> this matrix) (-> v1-0 inv-inertial-tensor))
|
||||
@@ -265,7 +262,7 @@
|
||||
;; definition for method 14 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-14 rigid-body ((this rigid-body) (arg0 float))
|
||||
(defmethod rigid-body-method-14 ((this rigid-body) (arg0 float))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf4 :class vf)
|
||||
@@ -319,7 +316,7 @@
|
||||
|
||||
;; definition for method 9 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-9 rigid-body ((this rigid-body) (arg0 collide-shape-moving) (arg1 float))
|
||||
(defmethod rigid-body-method-9 ((this rigid-body) (arg0 collide-shape-moving) (arg1 float))
|
||||
(rigid-body-method-12 this arg1)
|
||||
(let ((v1-2 (-> this info)))
|
||||
(let* ((a0-2 (-> this lin-momentum))
|
||||
@@ -356,7 +353,7 @@
|
||||
|
||||
;; definition for method 67 of type collide-shape-moving
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod collide-with-all-collide-cache-prims collide-shape-moving ((this collide-shape-moving) (arg0 matrix) (arg1 collide-query))
|
||||
(defmethod collide-with-all-collide-cache-prims ((this collide-shape-moving) (arg0 matrix) (arg1 collide-query))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
@@ -460,7 +457,7 @@
|
||||
;; definition for method 63 of type collide-shape-moving
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod collide-shape-moving-method-63 collide-shape-moving ((this collide-shape-moving) (arg0 rigid-body) (arg1 float))
|
||||
(defmethod collide-shape-moving-method-63 ((this collide-shape-moving) (arg0 rigid-body) (arg1 float))
|
||||
(local-vars (s3-0 rigid-body))
|
||||
(with-pp
|
||||
(rlet ((acc :class vf)
|
||||
@@ -665,7 +662,7 @@
|
||||
;; WARN: Stack slot offset 632 signed mismatch
|
||||
;; WARN: Stack slot offset 632 signed mismatch
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-15 rigid-body ((this rigid-body) (arg0 collide-shape-moving) (arg1 float))
|
||||
(defmethod rigid-body-method-15 ((this rigid-body) (arg0 collide-shape-moving) (arg1 float))
|
||||
(local-vars
|
||||
(sv-576 vector)
|
||||
(sv-624 vector)
|
||||
@@ -763,7 +760,7 @@
|
||||
|
||||
;; definition for method 18 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-18 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-method-18 ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(vector+! (-> this force) (-> this force) arg1)
|
||||
(let ((a3-1 (new 'stack-no-clear 'vector))
|
||||
(v1-1 (new 'stack-no-clear 'vector))
|
||||
@@ -778,7 +775,7 @@
|
||||
|
||||
;; definition for method 21 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-21 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector) (arg2 float))
|
||||
(defmethod rigid-body-method-21 ((this rigid-body) (arg0 vector) (arg1 vector) (arg2 float))
|
||||
(vector+! (-> this force) (-> this force) arg1)
|
||||
(let* ((t0-2 (vector-! (new 'stack-no-clear 'vector) arg0 (-> this position)))
|
||||
(v1-3 (vector-cross! (new 'stack-no-clear 'vector) t0-2 arg1))
|
||||
@@ -796,7 +793,7 @@
|
||||
|
||||
;; definition for method 19 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-19 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(defmethod rigid-body-method-19 ((this rigid-body) (arg0 vector) (arg1 vector))
|
||||
(let ((s5-0 (new 'stack-no-clear 'vector))
|
||||
(s4-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
@@ -812,14 +809,14 @@
|
||||
|
||||
;; definition for method 20 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-20 rigid-body ((this rigid-body) (arg0 vector))
|
||||
(defmethod rigid-body-method-20 ((this rigid-body) (arg0 vector))
|
||||
(vector+! (-> this force) (-> this force) arg0)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 23 of type rigid-body
|
||||
(defmethod rigid-body-method-23 rigid-body ((this rigid-body) (arg0 vector))
|
||||
(defmethod rigid-body-method-23 ((this rigid-body) (arg0 vector))
|
||||
(let ((gp-0 (new 'stack-no-clear 'vector)))
|
||||
(vector-rotate*! gp-0 (-> this info cm-offset-joint) (-> this matrix))
|
||||
(vector-! arg0 (-> this position) gp-0)
|
||||
@@ -829,7 +826,7 @@
|
||||
|
||||
;; definition for method 28 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod print-force-torque rigid-body ((this rigid-body) (arg0 object))
|
||||
(defmethod print-force-torque ((this rigid-body) (arg0 object))
|
||||
(format arg0 " force ~M ~M ~M" (-> this force x) (-> this force y) (-> this force z))
|
||||
(format arg0 " torque ~M ~M ~M~%" (-> this torque x) (-> this torque y) (-> this torque z))
|
||||
0
|
||||
@@ -838,7 +835,7 @@
|
||||
|
||||
;; definition for method 30 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod print-momentum rigid-body ((this rigid-body) (arg0 object))
|
||||
(defmethod print-momentum ((this rigid-body) (arg0 object))
|
||||
(format arg0 " lin-mom ~M ~M ~M" (-> this lin-momentum x) (-> this lin-momentum y) (-> this lin-momentum z))
|
||||
(format
|
||||
arg0
|
||||
@@ -853,7 +850,7 @@
|
||||
|
||||
;; definition for method 31 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod print-velocity rigid-body ((this rigid-body) (arg0 object))
|
||||
(defmethod print-velocity ((this rigid-body) (arg0 object))
|
||||
(format arg0 " lin-vel ~M ~M ~M" (-> this lin-velocity x) (-> this lin-velocity y) (-> this lin-velocity z))
|
||||
(format
|
||||
arg0
|
||||
@@ -868,7 +865,7 @@
|
||||
|
||||
;; definition for method 29 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod print-position-rotation rigid-body ((this rigid-body) (arg0 object))
|
||||
(defmethod print-position-rotation ((this rigid-body) (arg0 object))
|
||||
(format arg0 " position ~M ~M ~M" (-> this position x) (-> this position y) (-> this position z))
|
||||
(format
|
||||
arg0
|
||||
@@ -884,7 +881,7 @@
|
||||
|
||||
;; definition for method 27 of type rigid-body
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod print-physics rigid-body ((this rigid-body) (arg0 object))
|
||||
(defmethod print-physics ((this rigid-body) (arg0 object))
|
||||
(print-force-torque this arg0)
|
||||
(print-position-rotation this arg0)
|
||||
(print-momentum this arg0)
|
||||
@@ -895,7 +892,7 @@
|
||||
|
||||
;; definition for method 10 of type rigid-body-control
|
||||
;; WARN: Return type mismatch int vs object.
|
||||
(defmethod rigid-body-control-method-10 rigid-body-control ((this rigid-body-control) (arg0 rigid-body-object) (arg1 float) (arg2 float))
|
||||
(defmethod rigid-body-control-method-10 ((this rigid-body-control) (arg0 rigid-body-object) (arg1 float) (arg2 float))
|
||||
(let* ((s4-1 (max 1 (min 4 (+ (the int (* 0.9999 (/ arg1 arg2))) 1))))
|
||||
(f30-0 (/ arg1 (the float s4-1)))
|
||||
(s3-0 (-> this state force-callback))
|
||||
@@ -917,7 +914,7 @@
|
||||
;; definition for method 11 of type rigid-body
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-method-11 rigid-body ((this rigid-body) (arg0 collide-shape-moving))
|
||||
(defmethod rigid-body-method-11 ((this rigid-body) (arg0 collide-shape-moving))
|
||||
(quaternion-copy! (-> arg0 quat) (-> this rotation))
|
||||
(rigid-body-method-23 this (-> arg0 trans))
|
||||
(set! (-> arg0 transv quad) (-> this lin-velocity quad))
|
||||
@@ -926,13 +923,13 @@
|
||||
)
|
||||
|
||||
;; definition for method 26 of type rigid-body-object
|
||||
(defmethod get-inv-mass rigid-body-object ((this rigid-body-object))
|
||||
(defmethod get-inv-mass ((this rigid-body-object))
|
||||
(-> this info info inv-mass)
|
||||
)
|
||||
|
||||
;; definition for method 35 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-35 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-35 ((this rigid-body-object))
|
||||
(let ((a0-1 (-> this info name)))
|
||||
(when (nonzero? a0-1)
|
||||
(set! (-> this info) (the-as rigid-body-object-constants (-> a0-1 value)))
|
||||
@@ -947,7 +944,7 @@
|
||||
|
||||
;; definition for method 50 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-50 rigid-body-object ((this rigid-body-object) (arg0 float))
|
||||
(defmethod rigid-body-object-method-50 ((this rigid-body-object) (arg0 float))
|
||||
(when (logtest? (-> this flags) (rigid-body-object-flag player-impulse-force player-contact-force))
|
||||
(when (logtest? (-> this flags) (rigid-body-object-flag player-impulse-force))
|
||||
(logclear! (-> this flags) (rigid-body-object-flag player-impulse-force))
|
||||
@@ -966,7 +963,7 @@
|
||||
|
||||
;; definition for method 29 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-29 rigid-body-object ((this rigid-body-object) (arg0 float))
|
||||
(defmethod rigid-body-object-method-29 ((this rigid-body-object) (arg0 float))
|
||||
(let ((a1-1 (new 'stack-no-clear 'vector)))
|
||||
(vector-reset! a1-1)
|
||||
(set! (-> a1-1 y) (* -1.0 (-> this info extra gravity) (-> this rbody state info mass)))
|
||||
@@ -978,7 +975,7 @@
|
||||
|
||||
;; definition for method 30 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-30 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-30 ((this rigid-body-object))
|
||||
(rigid-body-control-method-10 (-> this rbody) this (seconds-per-frame) (-> this max-time-step))
|
||||
(logclear! (-> this flags) (rigid-body-object-flag player-impulse-force player-contact-force))
|
||||
0
|
||||
@@ -987,7 +984,7 @@
|
||||
|
||||
;; definition for method 51 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-51 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-51 ((this rigid-body-object))
|
||||
(rigid-body-control-method-10
|
||||
(-> this rbody)
|
||||
this
|
||||
@@ -1000,7 +997,7 @@
|
||||
|
||||
;; definition for method 52 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-52 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-52 ((this rigid-body-object))
|
||||
(logclear! (-> this flags) (rigid-body-object-flag player-impulse-force player-contact-force))
|
||||
0
|
||||
(none)
|
||||
@@ -1008,7 +1005,7 @@
|
||||
|
||||
;; definition for method 34 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-34 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-34 ((this rigid-body-object))
|
||||
(go (method-of-object this idle))
|
||||
0
|
||||
(none)
|
||||
@@ -1016,7 +1013,7 @@
|
||||
|
||||
;; definition for method 31 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod alloc-and-init-rigid-body-control rigid-body-object ((this rigid-body-object) (arg0 rigid-body-object-constants))
|
||||
(defmethod alloc-and-init-rigid-body-control ((this rigid-body-object) (arg0 rigid-body-object-constants))
|
||||
(set! (-> this info) arg0)
|
||||
(set! (-> this rbody) (new 'process 'rigid-body-control this))
|
||||
(update-transforms (-> this root))
|
||||
@@ -1040,7 +1037,7 @@
|
||||
|
||||
;; definition for method 32 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod allocate-and-init-cshape rigid-body-object ((this rigid-body-object))
|
||||
(defmethod allocate-and-init-cshape ((this rigid-body-object))
|
||||
(let ((s5-0 (new 'process 'collide-shape-moving this (collide-list-enum hit-by-player))))
|
||||
(set! (-> s5-0 dynam) (copy *standard-dynamics* 'process))
|
||||
(set! (-> s5-0 reaction) cshape-reaction-default)
|
||||
@@ -1092,7 +1089,7 @@
|
||||
|
||||
;; definition for method 33 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod init-skel-and-rigid-body rigid-body-object ((this rigid-body-object))
|
||||
(defmethod init-skel-and-rigid-body ((this rigid-body-object))
|
||||
(alloc-and-init-rigid-body-control this *rigid-body-object-constants*)
|
||||
0
|
||||
(none)
|
||||
@@ -1100,7 +1097,7 @@
|
||||
|
||||
;; definition for method 11 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod init-from-entity! rigid-body-object ((this rigid-body-object) (arg0 entity-actor))
|
||||
(defmethod init-from-entity! ((this rigid-body-object) (arg0 entity-actor))
|
||||
"Typically the method that does the initial setup on the process, potentially using the [[entity-actor]] provided as part of that.
|
||||
This commonly includes things such as:
|
||||
- stack size
|
||||
@@ -1117,14 +1114,14 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 36 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod do-engine-sounds rigid-body-object ((this rigid-body-object))
|
||||
(defmethod do-engine-sounds ((this rigid-body-object))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 37 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-37 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-37 ((this rigid-body-object))
|
||||
(rigid-body-object-method-30 this)
|
||||
(do-engine-sounds this)
|
||||
(let ((v1-4 (-> this rbody))
|
||||
@@ -1139,7 +1136,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 40 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-40 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-40 ((this rigid-body-object))
|
||||
(logior! (-> this flags) (rigid-body-object-flag enable-collision))
|
||||
(let ((v1-3 (-> this root root-prim)))
|
||||
(set! (-> v1-3 prim-core collide-as) (-> this root backup-collide-as))
|
||||
@@ -1151,7 +1148,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 41 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-41 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-41 ((this rigid-body-object))
|
||||
(logclear! (-> this flags) (rigid-body-object-flag enable-collision))
|
||||
(let ((v1-3 (-> this root root-prim)))
|
||||
(set! (-> v1-3 prim-core collide-as) (collide-spec))
|
||||
@@ -1164,7 +1161,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 38 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-38 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-38 ((this rigid-body-object))
|
||||
(when (not (logtest? (-> this rbody state flags) (rigid-body-flag enable-physics)))
|
||||
(logior! (-> this rbody state flags) (rigid-body-flag enable-physics))
|
||||
(rigid-body-method-26 (-> this rbody state) (-> this root trans) (-> this root quat))
|
||||
@@ -1177,7 +1174,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 39 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-39 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-39 ((this rigid-body-object))
|
||||
(logclear! (-> this rbody state flags) (rigid-body-flag enable-physics))
|
||||
0
|
||||
(none)
|
||||
@@ -1185,7 +1182,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 42 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-42 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-42 ((this rigid-body-object))
|
||||
(logior! (-> this flags) (rigid-body-object-flag disturbed))
|
||||
(set-time! (-> this disturbed-time))
|
||||
(if (not (logtest? (-> this rbody state flags) (rigid-body-flag enable-physics)))
|
||||
@@ -1197,7 +1194,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 43 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-43 rigid-body-object ((this rigid-body-object))
|
||||
(defmethod rigid-body-object-method-43 ((this rigid-body-object))
|
||||
(go (method-of-object this active))
|
||||
0
|
||||
(none)
|
||||
@@ -1205,14 +1202,14 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 44 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod apply-damage rigid-body-object ((this rigid-body-object) (arg0 float) (arg1 rigid-body-impact))
|
||||
(defmethod apply-damage ((this rigid-body-object) (arg0 float) (arg1 rigid-body-impact))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for method 45 of type rigid-body-object
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-45 rigid-body-object ((this rigid-body-object) (arg0 rigid-body-impact))
|
||||
(defmethod rigid-body-object-method-45 ((this rigid-body-object) (arg0 rigid-body-impact))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
@@ -1220,7 +1217,7 @@ This commonly includes things such as:
|
||||
;; definition for method 49 of type rigid-body-object
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod rigid-body-object-method-49 rigid-body-object ((this rigid-body-object) (arg0 rigid-body-impact) (arg1 touching-shapes-entry))
|
||||
(defmethod rigid-body-object-method-49 ((this rigid-body-object) (arg0 rigid-body-impact) (arg1 touching-shapes-entry))
|
||||
(set! (-> arg0 rbody) #f)
|
||||
(set! (-> arg0 prim-id) (the-as uint 0))
|
||||
(vector-reset! (-> arg0 normal))
|
||||
@@ -1252,12 +1249,12 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 47 of type rigid-body-object
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod rigid-body-object-method-47 rigid-body-object ((this rigid-body-object)
|
||||
(arg0 process-drawable)
|
||||
(arg1 attack-info)
|
||||
(arg2 touching-shapes-entry)
|
||||
(arg3 penetrate)
|
||||
)
|
||||
(defmethod rigid-body-object-method-47 ((this rigid-body-object)
|
||||
(arg0 process-drawable)
|
||||
(arg1 attack-info)
|
||||
(arg2 touching-shapes-entry)
|
||||
(arg3 penetrate)
|
||||
)
|
||||
(local-vars (f0-2 float))
|
||||
(when arg2
|
||||
(let ((s5-0 (new 'stack-no-clear 'rigid-body-impact)))
|
||||
@@ -1336,7 +1333,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 48 of type rigid-body-object
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod rigid-body-object-method-48 rigid-body-object ((this rigid-body-object) (arg0 process-focusable) (arg1 touching-shapes-entry))
|
||||
(defmethod rigid-body-object-method-48 ((this rigid-body-object) (arg0 process-focusable) (arg1 touching-shapes-entry))
|
||||
(local-vars (v1-2 symbol))
|
||||
(b! (not (logtest? (process-mask target crate enemy) (-> arg0 mask))) cfg-5 :likely-delay (set! v1-2 #t))
|
||||
(b! (not (logtest? (-> arg0 mask) (process-mask target))) cfg-5 :likely-delay (set! v1-2 #f))
|
||||
@@ -1409,7 +1406,7 @@ This commonly includes things such as:
|
||||
|
||||
;; definition for method 46 of type rigid-body-object
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod rigid-body-object-method-46 rigid-body-object ((this rigid-body-object) (arg0 process-drawable) (arg1 int) (arg2 symbol) (arg3 event-message-block))
|
||||
(defmethod rigid-body-object-method-46 ((this rigid-body-object) (arg0 process-drawable) (arg1 int) (arg2 symbol) (arg3 event-message-block))
|
||||
(case arg2
|
||||
(('impact-impulse)
|
||||
(let ((s5-1 (-> arg3 param 0)))
|
||||
|
||||
+60
-81
@@ -3,29 +3,26 @@
|
||||
|
||||
;; definition of type trajectory
|
||||
(deftype trajectory (structure)
|
||||
((initial-position vector :inline :offset-assert 0)
|
||||
(initial-velocity vector :inline :offset-assert 16)
|
||||
(time float :offset-assert 32)
|
||||
(gravity meters :offset-assert 36)
|
||||
((initial-position vector :inline)
|
||||
(initial-velocity vector :inline)
|
||||
(time float)
|
||||
(gravity meters)
|
||||
)
|
||||
:method-count-assert 18
|
||||
:size-assert #x28
|
||||
:flag-assert #x1200000028
|
||||
(:methods
|
||||
(compute-trans-at-time (_type_ float vector) vector 9)
|
||||
(compute-transv-at-time (_type_ float vector) vector 10)
|
||||
(compute-time-until-apex (_type_) float 11)
|
||||
(setup-from-to-duration! (_type_ vector vector float float) none 12)
|
||||
(setup-from-to-xz-vel! (_type_ vector vector float float) none 13)
|
||||
(setup-from-to-y-vel! (_type_ vector vector float float) none 14)
|
||||
(setup-from-to-height! (_type_ vector vector float float) none 15)
|
||||
(setup-from-to-duration-and-height! (_type_ vector vector float float) none 16)
|
||||
(debug-draw (_type_) none 17)
|
||||
(compute-trans-at-time (_type_ float vector) vector)
|
||||
(compute-transv-at-time (_type_ float vector) vector)
|
||||
(compute-time-until-apex (_type_) float)
|
||||
(setup-from-to-duration! (_type_ vector vector float float) none)
|
||||
(setup-from-to-xz-vel! (_type_ vector vector float float) none)
|
||||
(setup-from-to-y-vel! (_type_ vector vector float float) none)
|
||||
(setup-from-to-height! (_type_ vector vector float float) none)
|
||||
(setup-from-to-duration-and-height! (_type_ vector vector float float) none)
|
||||
(debug-draw (_type_) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type trajectory
|
||||
(defmethod inspect trajectory ((this trajectory))
|
||||
(defmethod inspect ((this trajectory))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -41,27 +38,24 @@
|
||||
|
||||
;; definition of type impact-control
|
||||
(deftype impact-control (structure)
|
||||
((process (pointer process-drawable) :offset-assert 0)
|
||||
(radius float :offset-assert 4)
|
||||
(joint int32 :offset-assert 8)
|
||||
(collide-with collide-spec :offset-assert 12)
|
||||
(start-time time-frame :offset-assert 16)
|
||||
(trans vector 2 :inline :offset-assert 32)
|
||||
(dir vector :inline :offset-assert 64)
|
||||
((process (pointer process-drawable))
|
||||
(radius float)
|
||||
(joint int32)
|
||||
(collide-with collide-spec)
|
||||
(start-time time-frame)
|
||||
(trans vector 2 :inline)
|
||||
(dir vector :inline)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x50
|
||||
:flag-assert #xc00000050
|
||||
(:methods
|
||||
(new (symbol type process-drawable int float collide-spec) _type_ 0)
|
||||
(initialize (_type_ process-drawable int float collide-spec) impact-control :behavior process 9)
|
||||
(update-from-cspace (_type_) none 10)
|
||||
(impact-control-method-11 (_type_ collide-query process pat-surface) float 11)
|
||||
(new (symbol type process-drawable int float collide-spec) _type_)
|
||||
(initialize (_type_ process-drawable int float collide-spec) impact-control :behavior process)
|
||||
(update-from-cspace (_type_) none)
|
||||
(impact-control-method-11 (_type_ collide-query process pat-surface) float)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type impact-control
|
||||
(defmethod inspect impact-control ((this impact-control))
|
||||
(defmethod inspect ((this impact-control))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-7)
|
||||
@@ -99,21 +93,18 @@
|
||||
|
||||
;; definition of type point-tracker
|
||||
(deftype point-tracker (structure)
|
||||
((trans vector 2 :inline :offset-assert 0)
|
||||
((trans vector 2 :inline)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x20
|
||||
:flag-assert #xc00000020
|
||||
(:methods
|
||||
(new (symbol type vector vector) _type_ 0)
|
||||
(initialize (_type_ vector vector) point-tracker 9)
|
||||
(point-tracker-method-10 (_type_ vector vector vector float) vector 10)
|
||||
(point-tracker-method-11 (_type_ vector vector vector float) vector 11)
|
||||
(new (symbol type vector vector) _type_)
|
||||
(initialize (_type_ vector vector) point-tracker)
|
||||
(point-tracker-method-10 (_type_ vector vector vector float) vector)
|
||||
(point-tracker-method-11 (_type_ vector vector vector float) vector)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type point-tracker
|
||||
(defmethod inspect point-tracker ((this point-tracker))
|
||||
(defmethod inspect ((this point-tracker))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-7)
|
||||
@@ -139,20 +130,17 @@
|
||||
|
||||
;; definition of type combo-tracker
|
||||
(deftype combo-tracker (point-tracker)
|
||||
((target handle :offset-assert 32)
|
||||
(move-start-time time-frame :offset-assert 40)
|
||||
((target handle)
|
||||
(move-start-time time-frame)
|
||||
)
|
||||
:method-count-assert 14
|
||||
:size-assert #x30
|
||||
:flag-assert #xe00000030
|
||||
(:methods
|
||||
(combo-tracker-method-12 (_type_ vector vector process time-frame) combo-tracker 12)
|
||||
(combo-tracker-method-13 (_type_ handle vector float vector float) basic 13)
|
||||
(combo-tracker-method-12 (_type_ vector vector process time-frame) combo-tracker)
|
||||
(combo-tracker-method-13 (_type_ handle vector float vector float) basic)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type combo-tracker
|
||||
(defmethod inspect combo-tracker ((this combo-tracker))
|
||||
(defmethod inspect ((this combo-tracker))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-7)
|
||||
@@ -170,20 +158,17 @@
|
||||
|
||||
;; definition of type traj2d-params
|
||||
(deftype traj2d-params (structure)
|
||||
((x float :offset-assert 0)
|
||||
(y float :offset-assert 4)
|
||||
(gravity float :offset-assert 8)
|
||||
(initial-tilt float :offset-assert 12)
|
||||
(initial-speed float :offset-assert 16)
|
||||
(time float :offset-assert 20)
|
||||
((x float)
|
||||
(y float)
|
||||
(gravity float)
|
||||
(initial-tilt float)
|
||||
(initial-speed float)
|
||||
(time float)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x18
|
||||
:flag-assert #x900000018
|
||||
)
|
||||
|
||||
;; definition for method 3 of type traj2d-params
|
||||
(defmethod inspect traj2d-params ((this traj2d-params))
|
||||
(defmethod inspect ((this traj2d-params))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -201,22 +186,19 @@
|
||||
|
||||
;; definition of type traj3d-params
|
||||
(deftype traj3d-params (structure)
|
||||
((gravity float :offset-assert 0)
|
||||
(initial-tilt float :offset-assert 4)
|
||||
(initial-speed float :offset-assert 8)
|
||||
(time float :offset-assert 12)
|
||||
(src vector :inline :offset-assert 16)
|
||||
(dest vector :inline :offset-assert 32)
|
||||
(diff vector :inline :offset-assert 48)
|
||||
(initial-velocity vector :inline :offset-assert 64)
|
||||
((gravity float)
|
||||
(initial-tilt float)
|
||||
(initial-speed float)
|
||||
(time float)
|
||||
(src vector :inline)
|
||||
(dest vector :inline)
|
||||
(diff vector :inline)
|
||||
(initial-velocity vector :inline)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x50
|
||||
:flag-assert #x900000050
|
||||
)
|
||||
|
||||
;; definition for method 3 of type traj3d-params
|
||||
(defmethod inspect traj3d-params ((this traj3d-params))
|
||||
(defmethod inspect ((this traj3d-params))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
@@ -236,22 +218,19 @@
|
||||
|
||||
;; definition of type cubic-curve
|
||||
(deftype cubic-curve (structure)
|
||||
((mat matrix :inline :offset-assert 0)
|
||||
((mat matrix :inline)
|
||||
)
|
||||
:method-count-assert 14
|
||||
:size-assert #x40
|
||||
:flag-assert #xe00000040
|
||||
(:methods
|
||||
(cubic-curve-method-9 (_type_ vector vector vector vector) none 9)
|
||||
(cubic-curve-method-10 (_type_ vector float) vector 10)
|
||||
(cubic-curve-method-11 (_type_ vector float) vector 11)
|
||||
(cubic-curve-method-12 (_type_ vector float) vector 12)
|
||||
(debug-draw-curve (_type_) none 13)
|
||||
(cubic-curve-method-9 (_type_ vector vector vector vector) none)
|
||||
(cubic-curve-method-10 (_type_ vector float) vector)
|
||||
(cubic-curve-method-11 (_type_ vector float) vector)
|
||||
(cubic-curve-method-12 (_type_ vector float) vector)
|
||||
(debug-draw-curve (_type_) none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type cubic-curve
|
||||
(defmethod inspect cubic-curve ((this cubic-curve))
|
||||
(defmethod inspect ((this cubic-curve))
|
||||
(when (not this)
|
||||
(set! this this)
|
||||
(goto cfg-4)
|
||||
|
||||
+23
-23
@@ -2,7 +2,7 @@
|
||||
(in-package goal)
|
||||
|
||||
;; definition for method 9 of type trajectory
|
||||
(defmethod compute-trans-at-time trajectory ((this trajectory) (arg0 float) (arg1 vector))
|
||||
(defmethod compute-trans-at-time ((this trajectory) (arg0 float) (arg1 vector))
|
||||
(vector+float*! arg1 (-> this initial-position) (-> this initial-velocity) arg0)
|
||||
(+! (-> arg1 y) (* 0.5 arg0 arg0 (-> this gravity)))
|
||||
arg1
|
||||
@@ -10,21 +10,21 @@
|
||||
|
||||
;; definition for method 10 of type trajectory
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod compute-transv-at-time trajectory ((this trajectory) (arg0 float) (arg1 vector))
|
||||
(defmethod compute-transv-at-time ((this trajectory) (arg0 float) (arg1 vector))
|
||||
(set! (-> arg1 quad) (-> this initial-velocity quad))
|
||||
(+! (-> arg1 y) (* arg0 (-> this gravity)))
|
||||
arg1
|
||||
)
|
||||
|
||||
;; definition for method 11 of type trajectory
|
||||
(defmethod compute-time-until-apex trajectory ((this trajectory))
|
||||
(defmethod compute-time-until-apex ((this trajectory))
|
||||
(/ (- (-> this initial-velocity y)) (-> this gravity))
|
||||
)
|
||||
|
||||
;; definition for method 12 of type trajectory
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod setup-from-to-duration! trajectory ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(defmethod setup-from-to-duration! ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(set! (-> this initial-position quad) (-> arg0 quad))
|
||||
(set! (-> this gravity) arg3)
|
||||
(set! (-> this time) arg2)
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
;; definition for method 13 of type trajectory
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod setup-from-to-xz-vel! trajectory ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(defmethod setup-from-to-xz-vel! ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(let ((f0-1 (/ (vector-vector-xz-distance arg1 arg0) arg2)))
|
||||
(setup-from-to-duration! this arg0 arg1 f0-1 arg3)
|
||||
)
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
;; definition for method 14 of type trajectory
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod setup-from-to-y-vel! trajectory ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(defmethod setup-from-to-y-vel! ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(let* ((f0-0 arg2)
|
||||
(f1-3 (- (* f0-0 f0-0) (* 2.0 (- (-> arg0 y) (-> arg1 y)) arg3)))
|
||||
(f0-3 900.0)
|
||||
@@ -67,7 +67,7 @@
|
||||
|
||||
;; definition for method 15 of type trajectory
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod setup-from-to-height! trajectory ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(defmethod setup-from-to-height! ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(let* ((f0-1 (+ arg2 (fmax (-> arg0 y) (-> arg1 y))))
|
||||
(f1-4 (* 2.0 (- (-> arg0 y) f0-1) arg3))
|
||||
(f0-4 4096.0)
|
||||
@@ -84,7 +84,7 @@
|
||||
;; definition for method 16 of type trajectory
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
;; WARN: Function (method 16 trajectory) has a return type of none, but the expression builder found a return statement.
|
||||
(defmethod setup-from-to-duration-and-height! trajectory ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(defmethod setup-from-to-duration-and-height! ((this trajectory) (arg0 vector) (arg1 vector) (arg2 float) (arg3 float))
|
||||
(let ((f0-1 (- (-> arg1 y) (-> arg0 y))))
|
||||
(cond
|
||||
((= f0-1 0.0)
|
||||
@@ -119,7 +119,7 @@
|
||||
;; definition for method 17 of type trajectory
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod debug-draw trajectory ((this trajectory))
|
||||
(defmethod debug-draw ((this trajectory))
|
||||
(let ((s5-0 (new 'stack-no-clear 'vector))
|
||||
(s4-0 (new 'stack-no-clear 'vector))
|
||||
(s3-0 10)
|
||||
@@ -147,7 +147,7 @@
|
||||
|
||||
;; definition for method 9 of type impact-control
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod initialize impact-control ((this impact-control) (arg0 process-drawable) (arg1 int) (arg2 float) (arg3 collide-spec))
|
||||
(defmethod initialize ((this impact-control) (arg0 process-drawable) (arg1 int) (arg2 float) (arg3 collide-spec))
|
||||
(set-time! (-> this start-time))
|
||||
(set! (-> this process) (the-as (pointer process-drawable) (process->ppointer arg0)))
|
||||
(set! (-> this joint) arg1)
|
||||
@@ -161,7 +161,7 @@
|
||||
;; definition for method 10 of type impact-control
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod update-from-cspace impact-control ((this impact-control))
|
||||
(defmethod update-from-cspace ((this impact-control))
|
||||
(when (>= (-> this joint) 0)
|
||||
(set! (-> this trans 1 quad) (-> this trans 0 quad))
|
||||
(vector<-cspace! (the-as vector (-> this trans)) (-> this process 0 node-list data (-> this joint)))
|
||||
@@ -173,7 +173,7 @@
|
||||
|
||||
;; definition for method 11 of type impact-control
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod impact-control-method-11 impact-control ((this impact-control) (arg0 collide-query) (arg1 process) (arg2 pat-surface))
|
||||
(defmethod impact-control-method-11 ((this impact-control) (arg0 collide-query) (arg1 process) (arg2 pat-surface))
|
||||
(set! (-> arg0 start-pos quad) (-> this trans 1 quad))
|
||||
(set! (-> arg0 move-dist quad) (-> this dir quad))
|
||||
(let ((v1-2 (ppointer->process (-> this process)))
|
||||
@@ -222,7 +222,7 @@
|
||||
|
||||
;; definition for method 9 of type point-tracker
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod initialize point-tracker ((this point-tracker) (arg0 vector) (arg1 vector))
|
||||
(defmethod initialize ((this point-tracker) (arg0 vector) (arg1 vector))
|
||||
(set! (-> this trans 0 quad) (-> arg0 quad))
|
||||
(set! (-> this trans 1 quad) (-> arg1 quad))
|
||||
this
|
||||
@@ -230,7 +230,7 @@
|
||||
|
||||
;; definition for method 10 of type point-tracker
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod point-tracker-method-10 point-tracker ((this point-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(defmethod point-tracker-method-10 ((this point-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(cond
|
||||
((>= 0.0 arg3)
|
||||
(set! (-> arg0 quad) (-> arg1 quad))
|
||||
@@ -248,7 +248,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 11 of type point-tracker
|
||||
(defmethod point-tracker-method-11 point-tracker ((this point-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(defmethod point-tracker-method-11 ((this point-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(with-pp
|
||||
(let ((v1-1 (point-tracker-method-10 this (new 'stack-no-clear 'vector) arg1 arg2 arg3)))
|
||||
(vector-! arg0 v1-1 arg1)
|
||||
@@ -259,7 +259,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 13 of type combo-tracker
|
||||
(defmethod combo-tracker-method-13 combo-tracker ((this combo-tracker) (arg0 handle) (arg1 vector) (arg2 float) (arg3 vector) (arg4 float))
|
||||
(defmethod combo-tracker-method-13 ((this combo-tracker) (arg0 handle) (arg1 vector) (arg2 float) (arg3 vector) (arg4 float))
|
||||
(cond
|
||||
((send-event (handle->process arg0) 'combo)
|
||||
(let ((gp-1 (handle->process arg0)))
|
||||
@@ -311,7 +311,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 12 of type combo-tracker
|
||||
(defmethod combo-tracker-method-12 combo-tracker ((this combo-tracker) (arg0 vector) (arg1 vector) (arg2 process) (arg3 time-frame))
|
||||
(defmethod combo-tracker-method-12 ((this combo-tracker) (arg0 vector) (arg1 vector) (arg2 process) (arg3 time-frame))
|
||||
(initialize this arg0 arg1)
|
||||
(set! (-> this target) (process->handle arg2))
|
||||
(set! (-> this move-start-time) arg3)
|
||||
@@ -320,7 +320,7 @@
|
||||
|
||||
;; definition for method 11 of type combo-tracker
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod point-tracker-method-11 combo-tracker ((this combo-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(defmethod point-tracker-method-11 ((this combo-tracker) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 float))
|
||||
(local-vars (at-0 int))
|
||||
(with-pp
|
||||
(rlet ((vf0 :class vf)
|
||||
@@ -431,7 +431,7 @@
|
||||
;; definition for method 9 of type cubic-curve
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod cubic-curve-method-9 cubic-curve ((this cubic-curve) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defmethod cubic-curve-method-9 ((this cubic-curve) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf4 :class vf)
|
||||
@@ -476,7 +476,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 10 of type cubic-curve
|
||||
(defmethod cubic-curve-method-10 cubic-curve ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(defmethod cubic-curve-method-10 ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(let ((v1-0 (new 'stack-no-clear 'trajectory)))
|
||||
(let ((f0-1 (* arg1 arg1)))
|
||||
(set-vector! (-> v1-0 initial-position) 1.0 arg1 f0-1 (* f0-1 arg1))
|
||||
@@ -488,7 +488,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 11 of type cubic-curve
|
||||
(defmethod cubic-curve-method-11 cubic-curve ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(defmethod cubic-curve-method-11 ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(let ((v1-0 (new 'stack-no-clear 'trajectory)))
|
||||
(set-vector! (-> v1-0 initial-position) 0.0 1.0 (* 2.0 arg1) (* 3.0 arg1 arg1))
|
||||
(vector-matrix*! arg0 (-> v1-0 initial-position) (-> this mat))
|
||||
@@ -498,7 +498,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 12 of type cubic-curve
|
||||
(defmethod cubic-curve-method-12 cubic-curve ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(defmethod cubic-curve-method-12 ((this cubic-curve) (arg0 vector) (arg1 float))
|
||||
(let ((v1-0 (new 'stack-no-clear 'trajectory)))
|
||||
(set-vector! (-> v1-0 initial-position) 0.0 0.0 2.0 (* 6.0 arg1))
|
||||
(vector-matrix*! arg0 (-> v1-0 initial-position) (-> this mat))
|
||||
@@ -510,7 +510,7 @@
|
||||
;; definition for method 13 of type cubic-curve
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod debug-draw-curve cubic-curve ((this cubic-curve))
|
||||
(defmethod debug-draw-curve ((this cubic-curve))
|
||||
(let ((s5-0 (new 'stack-no-clear 'trajectory))
|
||||
(s4-0 10)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user