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:
ManDude
2023-10-30 03:20:02 +00:00
committed by GitHub
parent 09536c68ac
commit cd68cb671e
2079 changed files with 94384 additions and 117066 deletions
+18 -21
View File
@@ -3,31 +3,28 @@
;; definition of type align-control
(deftype align-control (basic)
((flags align-flags :offset-assert 4)
(process process-drawable :offset-assert 8)
(frame-group art-joint-anim :offset-assert 12)
(frame-num float :offset-assert 16)
(matrix matrix 2 :inline :offset-assert 32)
(transform transform 2 :inline :offset-assert 160)
(delta transformq :inline :offset-assert 256)
(last-speed meters :offset-assert 304)
(align transformq :inline :offset 160)
((flags align-flags)
(process process-drawable)
(frame-group art-joint-anim)
(frame-num float)
(matrix matrix 2 :inline)
(transform transform 2 :inline)
(delta transformq :inline)
(last-speed meters)
(align transformq :inline :overlay-at (-> transform 0 trans x))
)
:method-count-assert 14
:size-assert #x134
:flag-assert #xe00000134
(:methods
(new (symbol type process) _type_ :behavior process-drawable 0)
(compute-alignment! (_type_) transformq 9)
(align! (_type_ align-opts float float float) trsqv 10)
(align-vel-and-quat-only! (_type_ align-opts vector int float float) trsqv 11)
(first-transform (_type_) transform 12)
(snd-transform (_type_) transform 13)
(new (symbol type process-drawable) _type_)
(compute-alignment! (_type_) transformq)
(align! (_type_ align-opts float float float) trsqv)
(align-vel-and-quat-only! (_type_ align-opts vector int float float) trsqv)
(first-transform (_type_) transform)
(snd-transform (_type_) transform)
)
)
;; definition for method 3 of type align-control
(defmethod inspect align-control ((this align-control))
(defmethod inspect ((this align-control))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tflags: #x~X~%" (-> this flags))
(format #t "~Tprocess: ~A~%" (-> this process))
@@ -43,13 +40,13 @@
;; definition for method 0 of type align-control
;; INFO: Return type mismatch object vs align-control.
(defmethod new align-control ((allocation symbol) (type-to-make type) (arg0 process))
(defmethod new align-control ((allocation symbol) (type-to-make type) (arg0 process-drawable))
(let ((this (object-new allocation type-to-make (the-as int (-> type-to-make size)))))
(when (zero? this)
(go process-drawable-art-error "memory")
(return (the-as align-control 0))
)
(set! (-> this process) (the-as process-drawable arg0))
(set! (-> this process) arg0)
this
)
)
+6 -6
View File
@@ -5,7 +5,7 @@
;; INFO: Used lq/sq
;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)]
;; ERROR: Unsupported inline assembly instruction kind - [jr ra]
(defmethod compute-alignment! align-control ((this align-control))
(defmethod compute-alignment! ((this align-control))
(local-vars (a0-9 symbol) (s7-0 none) (ra-0 int))
(with-pp
(let ((s5-0 (-> this process skel active-channels)))
@@ -119,17 +119,17 @@
;; definition for method 12 of type align-control
;; INFO: Return type mismatch (inline-array transform) vs transform.
(defmethod first-transform align-control ((this align-control))
(defmethod first-transform ((this align-control))
(the-as transform (-> this transform))
)
;; definition for method 13 of type align-control
(defmethod snd-transform align-control ((this align-control))
(defmethod snd-transform ((this align-control))
(-> this transform 1)
)
;; definition for method 10 of type align-control
(defmethod align! align-control ((this align-control) (arg0 align-opts) (arg1 float) (arg2 float) (arg3 float))
(defmethod align! ((this align-control) (arg0 align-opts) (arg1 float) (arg2 float) (arg3 float))
(when (not (logtest? (-> this flags) (align-flags disabled)))
(let* ((a0-1 (-> this process))
(t9-0 (method-of-object a0-1 apply-alignment))
@@ -147,7 +147,7 @@
)
;; definition for method 26 of type trsqv
(defmethod set-and-limit-velocity trsqv ((this trsqv) (arg0 int) (arg1 vector) (arg2 float))
(defmethod set-and-limit-velocity ((this trsqv) (arg0 int) (arg1 vector) (arg2 float))
(let ((gp-0 (-> this transv)))
(when (logtest? arg0 4)
(set! (-> gp-0 x) (-> arg1 x))
@@ -161,7 +161,7 @@
)
;; definition for method 11 of type align-control
(defmethod align-vel-and-quat-only! align-control ((this align-control) (arg0 align-opts) (arg1 vector) (arg2 int) (arg3 float) (arg4 float))
(defmethod align-vel-and-quat-only! ((this align-control) (arg0 align-opts) (arg1 vector) (arg2 int) (arg3 float) (arg4 float))
(when (not (logtest? (-> this flags) (align-flags disabled)))
(let ((s5-0 (-> this delta)))
(let ((s3-0 (-> this process root transv)))
+66 -88
View File
@@ -3,28 +3,25 @@
;; definition of type joint-exploder-tuning
(deftype joint-exploder-tuning (structure)
((explosion uint64 :offset-assert 0)
(duration time-frame :offset-assert 8)
(gravity float :offset-assert 16)
(rot-speed float :offset-assert 20)
(fountain-rand-transv-lo vector :inline :offset-assert 32)
(fountain-rand-transv-hi vector :inline :offset-assert 48)
(away-from-focal-pt vector :inline :offset 32)
(away-from-rand-transv-xz-lo float :offset 48)
(away-from-rand-transv-xz-hi float :offset 52)
(away-from-rand-transv-y-lo float :offset 56)
(away-from-rand-transv-y-hi float :offset 60)
((explosion uint64)
(duration time-frame)
(gravity float)
(rot-speed float)
(fountain-rand-transv-lo vector :inline)
(fountain-rand-transv-hi vector :inline)
(away-from-focal-pt vector :inline :overlay-at fountain-rand-transv-lo)
(away-from-rand-transv-xz-lo float :overlay-at (-> fountain-rand-transv-hi x))
(away-from-rand-transv-xz-hi float :overlay-at (-> fountain-rand-transv-hi y))
(away-from-rand-transv-y-lo float :overlay-at (-> fountain-rand-transv-hi z))
(away-from-rand-transv-y-hi float :overlay-at (-> fountain-rand-transv-hi w))
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
(:methods
(new (symbol type int) _type_ 0)
(new (symbol type int) _type_)
)
)
;; definition for method 3 of type joint-exploder-tuning
(defmethod inspect joint-exploder-tuning ((this joint-exploder-tuning))
(defmethod inspect ((this joint-exploder-tuning))
(format #t "[~8x] ~A~%" this 'joint-exploder-tuning)
(format #t "~Texplosion: ~D~%" (-> this explosion))
(format #t "~Tduration: ~D~%" (-> this duration))
@@ -42,16 +39,13 @@
;; definition of type joint-exploder-static-joint-params
(deftype joint-exploder-static-joint-params (structure)
((joint-index int16 :offset-assert 0)
(parent-joint-index int16 :offset-assert 2)
((joint-index int16)
(parent-joint-index int16)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type joint-exploder-static-joint-params
(defmethod inspect joint-exploder-static-joint-params ((this joint-exploder-static-joint-params))
(defmethod inspect ((this joint-exploder-static-joint-params))
(format #t "[~8x] ~A~%" this 'joint-exploder-static-joint-params)
(format #t "~Tjoint-index: ~D~%" (-> this joint-index))
(format #t "~Tparent-joint-index: ~D~%" (-> this parent-joint-index))
@@ -60,15 +54,12 @@
;; definition of type joint-exploder-static-params
(deftype joint-exploder-static-params (basic)
((joints (array joint-exploder-static-joint-params) :offset-assert 4)
((joints (array joint-exploder-static-joint-params))
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type joint-exploder-static-params
(defmethod inspect joint-exploder-static-params ((this joint-exploder-static-params))
(defmethod inspect ((this joint-exploder-static-params))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tjoints: ~A~%" (-> this joints))
this
@@ -76,22 +67,19 @@
;; definition of type joint-exploder-joint
(deftype joint-exploder-joint (structure)
((next int16 :offset-assert 0)
(prev int16 :offset-assert 2)
(joint-index int16 :offset-assert 4)
(rspeed float :offset-assert 8)
(mat matrix :inline :offset-assert 16)
(rmat matrix :inline :offset-assert 80)
(transv vector :inline :offset-assert 144)
(prev-pos vector :inline :offset-assert 160)
((next int16)
(prev int16)
(joint-index int16)
(rspeed float)
(mat matrix :inline)
(rmat matrix :inline)
(transv vector :inline)
(prev-pos vector :inline)
)
:method-count-assert 9
:size-assert #xb0
:flag-assert #x9000000b0
)
;; definition for method 3 of type joint-exploder-joint
(defmethod inspect joint-exploder-joint ((this joint-exploder-joint))
(defmethod inspect ((this joint-exploder-joint))
(format #t "[~8x] ~A~%" this 'joint-exploder-joint)
(format #t "~Tnext: ~D~%" (-> this next))
(format #t "~Tprev: ~D~%" (-> this prev))
@@ -106,19 +94,16 @@
;; definition of type joint-exploder-joints
(deftype joint-exploder-joints (basic)
((num-joints int32 :offset-assert 4)
(joint joint-exploder-joint :inline :dynamic :offset 16)
((num-joints int32)
(joint joint-exploder-joint :inline :dynamic :offset 16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
(:methods
(new (symbol type joint-exploder-static-params) _type_ 0)
(new (symbol type joint-exploder-static-params) _type_)
)
)
;; definition for method 3 of type joint-exploder-joints
(defmethod inspect joint-exploder-joints ((this joint-exploder-joints))
(defmethod inspect ((this joint-exploder-joints))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tnum-joints: ~D~%" (-> this num-joints))
(format #t "~Tjoint[0] @ #x~X~%" (-> this joint))
@@ -127,18 +112,15 @@
;; definition of type joint-exploder-list
(deftype joint-exploder-list (structure)
((head int32 :offset-assert 0)
(pre-moved? symbol :offset-assert 4)
(bbox-valid? symbol :offset-assert 8)
(bbox bounding-box :inline :offset-assert 16)
((head int32)
(pre-moved? symbol)
(bbox-valid? symbol)
(bbox bounding-box :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type joint-exploder-list
(defmethod inspect joint-exploder-list ((this joint-exploder-list))
(defmethod inspect ((this joint-exploder-list))
(format #t "[~8x] ~A~%" this 'joint-exploder-list)
(format #t "~Thead: ~D~%" (-> this head))
(format #t "~Tpre-moved?: ~A~%" (-> this pre-moved?))
@@ -149,30 +131,26 @@
;; definition of type joint-exploder
(deftype joint-exploder (process-drawable)
((parent-override (pointer process-drawable) :offset 12)
(die-if-below-y float :offset-assert 176)
(die-if-beyond-xz-dist-sqrd float :offset-assert 180)
(joints joint-exploder-joints :offset-assert 184)
(static-params joint-exploder-static-params :offset-assert 188)
(anim art-joint-anim :offset-assert 192)
(scale-vector vector :inline :offset-assert 208)
(tuning joint-exploder-tuning :inline :offset-assert 224)
(lists joint-exploder-list 5 :inline :offset-assert 288)
((parent-override (pointer process-drawable) :overlay-at parent)
(die-if-below-y float)
(die-if-beyond-xz-dist-sqrd float)
(joints joint-exploder-joints)
(static-params joint-exploder-static-params)
(anim art-joint-anim)
(scale-vector vector :inline)
(tuning joint-exploder-tuning :inline)
(lists joint-exploder-list 5 :inline)
)
:heap-base #x1a0
:method-count-assert 29
:size-assert #x210
:flag-assert #x1d01a00210
(:methods
(joint-exploder-method-20 (_type_ joint-exploder-list int) int 20)
(joint-exploder-method-21 (_type_ joint-exploder-list joint-exploder-joint) none 21)
(joint-exploder-method-22 (_type_ joint-exploder-list) symbol 22)
(joint-exploder-method-23 (_type_) symbol 23)
(joint-exploder-method-24 (_type_ joint-exploder-list int) int 24)
(joint-exploder-method-25 (_type_ joint-exploder-list) symbol 25)
(joint-exploder-method-26 (_type_ joint-exploder-list int) int 26)
(joint-exploder-method-27 (_type_ joint-exploder-list int) joint-exploder-list 27)
(joint-exploder-method-28 (_type_ joint-exploder-list) none 28)
(joint-exploder-method-20 (_type_ joint-exploder-list int) int)
(joint-exploder-method-21 (_type_ joint-exploder-list joint-exploder-joint) none)
(joint-exploder-method-22 (_type_ joint-exploder-list) symbol)
(joint-exploder-method-23 (_type_) symbol)
(joint-exploder-method-24 (_type_ joint-exploder-list int) int)
(joint-exploder-method-25 (_type_ joint-exploder-list) symbol)
(joint-exploder-method-26 (_type_ joint-exploder-list int) int)
(joint-exploder-method-27 (_type_ joint-exploder-list int) joint-exploder-list)
(joint-exploder-method-28 (_type_ joint-exploder-list) none)
)
(:states
joint-exploder-shatter
@@ -180,7 +158,7 @@
)
;; definition for method 3 of type joint-exploder
(defmethod inspect joint-exploder ((this joint-exploder))
(defmethod inspect ((this joint-exploder))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -197,7 +175,7 @@
;; definition for method 5 of type joint-exploder-joints
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of joint-exploder-joints ((this joint-exploder-joints))
(defmethod asize-of ((this joint-exploder-joints))
(the-as int (+ (-> this type size) (* 176 (-> this num-joints))))
)
@@ -238,7 +216,7 @@
;; definition for method 24 of type joint-exploder
;; INFO: Used lq/sq
(defmethod joint-exploder-method-24 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(defmethod joint-exploder-method-24 ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(let ((v0-0 (joint-exploder-method-26 this arg0 arg1)))
(let* ((v1-1 (-> this joints))
(v1-2 (-> v1-1 joint arg1))
@@ -253,7 +231,7 @@
)
;; definition for method 26 of type joint-exploder
(defmethod joint-exploder-method-26 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(defmethod joint-exploder-method-26 ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(let* ((v1-0 (-> this joints))
(a2-1 (-> v1-0 joint arg1))
(a0-4 (-> a2-1 prev))
@@ -285,7 +263,7 @@
)
;; definition for method 20 of type joint-exploder
(defmethod joint-exploder-method-20 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(defmethod joint-exploder-method-20 ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(let* ((v1-0 (-> this joints))
(a3-0 (-> v1-0 joint arg1))
(a0-4 (-> arg0 head))
@@ -303,7 +281,7 @@
;; definition for method 21 of type joint-exploder
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod joint-exploder-method-21 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list) (arg1 joint-exploder-joint))
(defmethod joint-exploder-method-21 ((this joint-exploder) (arg0 joint-exploder-list) (arg1 joint-exploder-joint))
(let ((a1-1 (-> arg1 mat vector 3)))
(cond
((-> arg0 bbox-valid?)
@@ -322,7 +300,7 @@
;; definition for method 27 of type joint-exploder
;; INFO: Used lq/sq
(defmethod joint-exploder-method-27 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(defmethod joint-exploder-method-27 ((this joint-exploder) (arg0 joint-exploder-list) (arg1 int))
(local-vars (sv-16 int) (sv-32 int) (sv-48 int))
(let ((s4-0 (the-as joint-exploder-list #f)))
(let ((v1-0 1))
@@ -420,7 +398,7 @@
)
;; definition for method 28 of type joint-exploder
(defmethod joint-exploder-method-28 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list))
(defmethod joint-exploder-method-28 ((this joint-exploder) (arg0 joint-exploder-list))
(when (and (-> arg0 bbox-valid?) (>= (-> arg0 head) 0))
(cond
((< 20480.0 (- (-> arg0 bbox max x) (-> arg0 bbox min x)))
@@ -454,7 +432,7 @@
;; definition for method 25 of type joint-exploder
;; INFO: Used lq/sq
(defmethod joint-exploder-method-25 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list))
(defmethod joint-exploder-method-25 ((this joint-exploder) (arg0 joint-exploder-list))
(set! (-> arg0 bbox-valid?) #f)
(set! (-> arg0 pre-moved?) #t)
(let ((s4-0 (-> this joints))
@@ -499,7 +477,7 @@
;; definition for method 22 of type joint-exploder
;; INFO: Used lq/sq
(defmethod joint-exploder-method-22 joint-exploder ((this joint-exploder) (arg0 joint-exploder-list))
(defmethod joint-exploder-method-22 ((this joint-exploder) (arg0 joint-exploder-list))
(fill-using-bounding-box
*collide-cache*
(-> arg0 bbox)
@@ -622,7 +600,7 @@
;; definition for method 23 of type joint-exploder
;; INFO: Used lq/sq
(defmethod joint-exploder-method-23 joint-exploder ((this joint-exploder))
(defmethod joint-exploder-method-23 ((this joint-exploder))
(let ((gp-0 (-> this joints)))
(dotimes (s4-0 (-> gp-0 num-joints))
(let ((v1-2 (-> this static-params joints s4-0))
@@ -720,7 +698,7 @@
;; definition for method 7 of type joint-exploder
;; INFO: Return type mismatch process-drawable vs joint-exploder.
(defmethod relocate joint-exploder ((this joint-exploder) (arg0 int))
(defmethod relocate ((this joint-exploder) (arg0 int))
(if (nonzero? (-> this joints))
(&+! (-> this joints) arg0)
)
+62 -77
View File
@@ -3,29 +3,26 @@
;; definition of type joint-control-channel
(deftype joint-control-channel (structure)
((parent joint-control :offset-assert 0)
(command symbol :offset-assert 4)
(frame-interp float :offset-assert 8)
(frame-group art-joint-anim :offset-assert 12)
(frame-num float :offset-assert 16)
(num-func (function joint-control-channel float float float) :offset-assert 20)
(param float 2 :offset-assert 24)
(group-sub-index int16 :offset-assert 32)
(group-size int16 :offset-assert 34)
(dist meters :offset-assert 36)
(eval-time uint32 :offset-assert 40)
(inspector-amount float :offset-assert 44)
((parent joint-control)
(command symbol)
(frame-interp float)
(frame-group art-joint-anim)
(frame-num float)
(num-func (function joint-control-channel float float float))
(param float 2)
(group-sub-index int16)
(group-size int16)
(dist meters)
(eval-time uint32)
(inspector-amount float)
)
:method-count-assert 10
:size-assert #x30
:flag-assert #xa00000030
(:methods
(debug-print-frames (_type_) _type_ 9)
(debug-print-frames (_type_) _type_)
)
)
;; definition for method 3 of type joint-control-channel
(defmethod inspect joint-control-channel ((this joint-control-channel))
(defmethod inspect ((this joint-control-channel))
(format #t "[~8x] ~A~%" this 'joint-control-channel)
(format #t "~Tparent: ~A~%" (-> this parent))
(format #t "~Tcommand: ~A~%" (-> this command))
@@ -44,38 +41,35 @@
;; definition of type joint-control
(deftype joint-control (basic)
((status janim-status :offset-assert 4)
(allocated-length int16 :offset-assert 6)
(root-channel (inline-array joint-control-channel) :offset 16)
(blend-index int32 :offset-assert 20)
(active-channels int32 :offset-assert 24)
(generate-frame-function (function (inline-array vector) int process-drawable int) :offset-assert 28)
(prebind-function (function pointer int process-drawable none) :offset-assert 32)
(postbind-function (function process-drawable none) :offset-assert 36)
(effect effect-control :offset-assert 40)
(channel joint-control-channel 3 :inline :offset-assert 48)
(frame-group0 art-joint-anim :offset 60)
(frame-num0 float :offset 64)
(frame-interp0 float :offset 56)
(frame-group1 art-joint-anim :offset 108)
(frame-num1 float :offset 112)
(frame-interp1 float :offset 104)
(frame-group2 art-joint-anim :offset 156)
(frame-num2 float :offset 160)
(frame-interp2 float :offset 152)
((status janim-status)
(allocated-length int16)
(root-channel (inline-array joint-control-channel) :offset 16)
(blend-index int32)
(active-channels int32)
(generate-frame-function (function (inline-array vector) int process-drawable int))
(prebind-function (function pointer int process-drawable none))
(postbind-function (function process-drawable none))
(effect effect-control)
(channel joint-control-channel 3 :inline)
(frame-group0 art-joint-anim :overlay-at (-> channel 0 frame-group))
(frame-num0 float :overlay-at (-> channel 0 frame-num))
(frame-interp0 float :overlay-at (-> channel 0 frame-interp))
(frame-group1 art-joint-anim :offset 108)
(frame-num1 float :offset 112)
(frame-interp1 float :offset 104)
(frame-group2 art-joint-anim :offset 156)
(frame-num2 float :offset 160)
(frame-interp2 float :offset 152)
)
:method-count-assert 11
:size-assert #xc0
:flag-assert #xb000000c0
(:methods
(new (symbol type int) _type_ 0)
(current-cycle-distance (_type_) float 9)
(debug-print-channels (_type_ symbol) int 10)
(new (symbol type int) _type_)
(current-cycle-distance (_type_) float)
(debug-print-channels (_type_ symbol) int)
)
)
;; definition for method 3 of type joint-control
(defmethod inspect joint-control ((this joint-control))
(defmethod inspect ((this joint-control))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tstatus: ~D~%" (-> this status))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -101,16 +95,13 @@
;; definition of type matrix-stack
(deftype matrix-stack (structure)
((top matrix :offset-assert 0)
(data matrix 24 :inline :offset-assert 16)
((top matrix)
(data matrix 24 :inline)
)
:method-count-assert 9
:size-assert #x610
:flag-assert #x900000610
)
;; definition for method 3 of type matrix-stack
(defmethod inspect matrix-stack ((this matrix-stack))
(defmethod inspect ((this matrix-stack))
(format #t "[~8x] ~A~%" this 'matrix-stack)
(format #t "~Ttop: #<matrix @ #x~X>~%" (-> this top))
(format #t "~Tdata[24] @ #x~X~%" (-> this data))
@@ -119,21 +110,18 @@
;; definition of type channel-upload-info
(deftype channel-upload-info (structure)
((fixed joint-anim-compressed-fixed :offset-assert 0)
(fixed-qwc int32 :offset-assert 4)
(frame joint-anim-compressed-frame :offset-assert 8)
(frame-qwc int32 :offset-assert 12)
(amount float :offset-assert 16)
(interp float :offset-assert 20)
((fixed joint-anim-compressed-fixed)
(fixed-qwc int32)
(frame joint-anim-compressed-frame)
(frame-qwc int32)
(amount float)
(interp float)
)
:pack-me
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type channel-upload-info
(defmethod inspect channel-upload-info ((this channel-upload-info))
(defmethod inspect ((this channel-upload-info))
(format #t "[~8x] ~A~%" this 'channel-upload-info)
(format #t "~Tfixed: #<joint-anim-compressed-fixed @ #x~X>~%" (-> this fixed))
(format #t "~Tfixed-qwc: ~D~%" (-> this fixed-qwc))
@@ -146,28 +134,25 @@
;; definition of type joint-work
(deftype joint-work (structure)
((temp-mtx matrix :inline :offset-assert 0)
(joint-stack matrix-stack :inline :offset-assert 64)
(fix-jmp-table (function none) 16 :offset-assert 1616)
(frm-jmp-table (function none) 16 :offset-assert 1680)
(pair-jmp-table (function none) 16 :offset-assert 1744)
(uploads channel-upload-info 24 :inline :offset-assert 1808)
(num-uploads int32 :offset-assert 2384)
(mtx-acc matrix 2 :inline :offset-assert 2400)
(tq-acc transformq 100 :inline :offset-assert 2528)
(jacp-hdr joint-anim-compressed-hdr :inline :offset-assert 7328)
(fixed-data joint-anim-compressed-fixed :inline :offset-assert 7392)
(frame-data joint-anim-compressed-frame 2 :inline :offset-assert 9600)
(flatten-array float 576 :offset 2400)
(flattened vector 24 :inline :offset 2400)
((temp-mtx matrix :inline)
(joint-stack matrix-stack :inline)
(fix-jmp-table (function none) 16)
(frm-jmp-table (function none) 16)
(pair-jmp-table (function none) 16)
(uploads channel-upload-info 24 :inline)
(num-uploads int32)
(mtx-acc matrix 2 :inline)
(tq-acc transformq 100 :inline)
(jacp-hdr joint-anim-compressed-hdr :inline)
(fixed-data joint-anim-compressed-fixed :inline)
(frame-data joint-anim-compressed-frame 2 :inline)
(flatten-array float 576 :overlay-at mtx-acc)
(flattened vector 24 :inline :overlay-at mtx-acc)
)
:method-count-assert 9
:size-assert #x3640
:flag-assert #x900003640
)
;; definition for method 3 of type joint-work
(defmethod inspect joint-work ((this joint-work))
(defmethod inspect ((this joint-work))
(format #t "[~8x] ~A~%" this 'joint-work)
(format #t "~Ttemp-mtx: #<matrix @ #x~X>~%" (-> this temp-mtx))
(format #t "~Tjoint-stack: #<matrix-stack @ #x~X>~%" (-> this joint-stack))
+71 -92
View File
@@ -3,43 +3,40 @@
;; definition of type joint-mod
(deftype joint-mod (basic)
((mode joint-mod-handler-mode :offset-assert 4)
(process process-drawable :offset-assert 8)
(joint cspace :offset-assert 12)
(target vector :inline :offset-assert 16)
(twist vector :inline :offset-assert 32)
(twist-max vector :inline :offset-assert 48)
(trans vector :inline :offset-assert 64)
(quat quaternion :inline :offset-assert 80)
(scale vector :inline :offset-assert 96)
(notice-time time-frame :offset-assert 112)
(flex-blend float :offset-assert 120)
(blend float :offset-assert 124)
(max-dist meters :offset-assert 128)
(ignore-angle degrees :offset-assert 132)
(up uint8 :offset-assert 136)
(nose uint8 :offset-assert 137)
(ear uint8 :offset-assert 138)
(shutting-down? symbol :offset-assert 140)
(parented-scale? symbol :offset 128)
((mode joint-mod-handler-mode)
(process process-drawable)
(joint cspace)
(target vector :inline)
(twist vector :inline)
(twist-max vector :inline)
(trans vector :inline)
(quat quaternion :inline)
(scale vector :inline)
(notice-time time-frame)
(flex-blend float)
(blend float)
(max-dist meters)
(ignore-angle degrees)
(up uint8)
(nose uint8)
(ear uint8)
(shutting-down? symbol)
(parented-scale? symbol :overlay-at max-dist)
)
:method-count-assert 16
:size-assert #x90
:flag-assert #x1000000090
(:methods
(new (symbol type joint-mod-handler-mode process-drawable int) _type_ 0)
(set-mode! (_type_ joint-mod-handler-mode) _type_ 9)
(set-target! (_type_ vector) none 10)
(look-at-enemy! (_type_ vector symbol process) none 11)
(reset-blend! (_type_) _type_ 12)
(set-twist! (_type_ float float float) vector 13)
(set-trs! (_type_ vector quaternion vector) none 14)
(shut-down! (_type_) none 15)
(new (symbol type joint-mod-handler-mode process-drawable int) _type_)
(set-mode! (_type_ joint-mod-handler-mode) _type_)
(set-target! (_type_ vector) none)
(look-at-enemy! (_type_ vector symbol process) none)
(reset-blend! (_type_) _type_)
(set-twist! (_type_ float float float) vector)
(set-trs! (_type_ vector quaternion vector) none)
(shut-down! (_type_) none)
)
)
;; definition for method 3 of type joint-mod
(defmethod inspect joint-mod ((this joint-mod))
(defmethod inspect ((this joint-mod))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tmode: ~D~%" (-> this mode))
(format #t "~Tprocess: ~A~%" (-> this process))
@@ -95,7 +92,7 @@
)
;; definition for method 9 of type joint-mod
(defmethod set-mode! joint-mod ((this joint-mod) (handler-mode joint-mod-handler-mode))
(defmethod set-mode! ((this joint-mod) (handler-mode joint-mod-handler-mode))
(set! (-> this mode) handler-mode)
(let ((joint (-> this joint)))
(case handler-mode
@@ -153,21 +150,21 @@
)
;; definition for method 12 of type joint-mod
(defmethod reset-blend! joint-mod ((this joint-mod))
(defmethod reset-blend! ((this joint-mod))
(set! (-> this blend) 0.0)
this
)
;; definition for method 15 of type joint-mod
;; INFO: Return type mismatch float vs none.
(defmethod shut-down! joint-mod ((this joint-mod))
(defmethod shut-down! ((this joint-mod))
(set! (-> this shutting-down?) #t)
(set! (-> this blend) 0.0)
(none)
)
;; definition for method 13 of type joint-mod
(defmethod set-twist! joint-mod ((this joint-mod) (x float) (y float) (z float))
(defmethod set-twist! ((this joint-mod) (x float) (y float) (z float))
(if x
(set! (-> this twist x) x)
)
@@ -183,7 +180,7 @@
;; definition for method 14 of type joint-mod
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod set-trs! joint-mod ((this joint-mod) (trans vector) (rot quaternion) (scale vector))
(defmethod set-trs! ((this joint-mod) (trans vector) (rot quaternion) (scale vector))
(if trans
(set! (-> this trans quad) (-> trans quad))
)
@@ -200,7 +197,7 @@
;; definition for method 10 of type joint-mod
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod set-target! joint-mod ((this joint-mod) (target-trans vector))
(defmethod set-target! ((this joint-mod) (target-trans vector))
(if (= (-> this mode) (joint-mod-handler-mode reset))
(set-mode! this (joint-mod-handler-mode look-at))
)
@@ -218,17 +215,14 @@
;; definition of type try-to-look-at-info
(deftype try-to-look-at-info (basic)
((who handle :offset-assert 8)
(horz float :offset-assert 16)
(vert float :offset-assert 20)
((who handle)
(horz float)
(vert float)
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type try-to-look-at-info
(defmethod inspect try-to-look-at-info ((this try-to-look-at-info))
(defmethod inspect ((this try-to-look-at-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Twho: ~D~%" (-> this who))
(format #t "~Thorz: ~f~%" (-> this horz))
@@ -242,7 +236,7 @@
;; definition for method 11 of type joint-mod
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod look-at-enemy! joint-mod ((this joint-mod) (target-trans vector) (option symbol) (proc process))
(defmethod look-at-enemy! ((this joint-mod) (target-trans vector) (option symbol) (proc process))
(when (= option 'attacking)
(let* ((s3-0 proc)
(proc-drawable (if (and (nonzero? s3-0) (type-type? (-> s3-0 type) process-drawable))
@@ -593,22 +587,19 @@
;; definition of type joint-mod-wheel
(deftype joint-mod-wheel (basic)
((last-position vector :inline :offset-assert 16)
(angle float :offset-assert 32)
(process process-drawable :offset-assert 36)
(wheel-radius float :offset-assert 40)
(wheel-axis int8 :offset-assert 44)
((last-position vector :inline)
(angle float)
(process process-drawable)
(wheel-radius float)
(wheel-axis int8)
)
:method-count-assert 9
:size-assert #x2d
:flag-assert #x90000002d
(:methods
(new (symbol type process-drawable int float int) _type_ 0)
(new (symbol type process-drawable int float int) _type_)
)
)
;; definition for method 3 of type joint-mod-wheel
(defmethod inspect joint-mod-wheel ((this joint-mod-wheel))
(defmethod inspect ((this joint-mod-wheel))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlast-position: #<vector @ #x~X>~%" (-> this last-position))
(format #t "~Tangle: ~f~%" (-> this angle))
@@ -665,22 +656,19 @@
;; definition of type joint-mod-set-local
(deftype joint-mod-set-local (basic)
((transform transformq :inline :offset-assert 16)
(set-rotation symbol :offset-assert 64)
(set-scale symbol :offset-assert 68)
(set-translation symbol :offset-assert 72)
(enable symbol :offset-assert 76)
((transform transformq :inline)
(set-rotation symbol)
(set-scale symbol)
(set-translation symbol)
(enable symbol)
)
:method-count-assert 9
:size-assert #x50
:flag-assert #x900000050
(:methods
(new (symbol type process-drawable int symbol symbol symbol) _type_ 0)
(new (symbol type process-drawable int symbol symbol symbol) _type_)
)
)
;; definition for method 3 of type joint-mod-set-local
(defmethod inspect joint-mod-set-local ((this joint-mod-set-local))
(defmethod inspect ((this joint-mod-set-local))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttransform: #<transformq @ #x~X>~%" (-> this transform))
(format #t "~Tset-rotation: ~A~%" (-> this set-rotation))
@@ -743,20 +731,17 @@
;; definition of type joint-mod-set-world
(deftype joint-mod-set-world (basic)
((transform transformq :inline :offset-assert 16)
(node-index int32 :offset-assert 64)
(enable basic :offset-assert 68)
((transform transformq :inline)
(node-index int32)
(enable basic)
)
:method-count-assert 9
:size-assert #x48
:flag-assert #x900000048
(:methods
(new (symbol type process-drawable int basic) _type_ 0)
(new (symbol type process-drawable int basic) _type_)
)
)
;; definition for method 3 of type joint-mod-set-world
(defmethod inspect joint-mod-set-world ((this joint-mod-set-world))
(defmethod inspect ((this joint-mod-set-world))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttransform: #<transformq @ #x~X>~%" (-> this transform))
(format #t "~Tnode-index: ~D~%" (-> this node-index))
@@ -795,22 +780,19 @@
;; definition of type joint-mod-blend-local
(deftype joint-mod-blend-local (basic)
((transform transformq :inline :offset-assert 16)
(blend-transform transformq :inline :offset-assert 64)
(node-index int32 :offset-assert 112)
(blend float :offset-assert 116)
(enable basic :offset-assert 120)
((transform transformq :inline)
(blend-transform transformq :inline)
(node-index int32)
(blend float)
(enable basic)
)
:method-count-assert 9
:size-assert #x7c
:flag-assert #x90000007c
(:methods
(new (symbol type process-drawable int basic) _type_ 0)
(new (symbol type process-drawable int basic) _type_)
)
)
;; definition for method 3 of type joint-mod-blend-local
(defmethod inspect joint-mod-blend-local ((this joint-mod-blend-local))
(defmethod inspect ((this joint-mod-blend-local))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttransform: #<transformq @ #x~X>~%" (-> this transform))
(format #t "~Tblend-transform: #<transformq @ #x~X>~%" (-> this blend-transform))
@@ -863,21 +845,18 @@
;; definition of type joint-mod-spinner
(deftype joint-mod-spinner (basic)
((spin-axis vector :inline :offset-assert 16)
(angle float :offset-assert 32)
(spin-rate float :offset-assert 36)
(enable basic :offset-assert 40)
((spin-axis vector :inline)
(angle float)
(spin-rate float)
(enable basic)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
(:methods
(new (symbol type process-drawable int vector float) _type_ 0)
(new (symbol type process-drawable int vector float) _type_)
)
)
;; definition for method 3 of type joint-mod-spinner
(defmethod inspect joint-mod-spinner ((this joint-mod-spinner))
(defmethod inspect ((this joint-mod-spinner))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tspin-axis: #<vector @ #x~X>~%" (-> this spin-axis))
(format #t "~Tangle: ~f~%" (-> this angle))
+41 -41
View File
@@ -2,13 +2,13 @@
(in-package goal)
;; definition for method 2 of type joint
(defmethod print joint ((this joint))
(defmethod print ((this joint))
(format #t "#<~A ~S ~D @ #x~X>" (-> this type) (-> this name) (-> this number) this)
this
)
;; definition for method 8 of type joint
(defmethod mem-usage joint ((this joint) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this joint) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 66 (-> arg0 length)))
(set! (-> arg0 data 65 name) "joint")
(+! (-> arg0 data 65 count) 1)
@@ -20,18 +20,18 @@
)
;; definition for method 2 of type joint-anim
(defmethod print joint-anim ((this joint-anim))
(defmethod print ((this joint-anim))
(format #t "#<~A ~S ~D [~D] @ #x~X>" (-> this type) (-> this name) (-> this number) (-> this length) this)
this
)
;; definition for method 4 of type joint-anim
(defmethod length joint-anim ((this joint-anim))
(defmethod length ((this joint-anim))
(-> this length)
)
;; definition for method 3 of type joint-anim-matrix
(defmethod inspect joint-anim-matrix ((this joint-anim-matrix))
(defmethod inspect ((this joint-anim-matrix))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -41,12 +41,12 @@
;; definition for method 5 of type joint-anim-matrix
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of joint-anim-matrix ((this joint-anim-matrix))
(defmethod asize-of ((this joint-anim-matrix))
(the-as int (+ (-> joint-anim-matrix size) (* (-> this length) 64)))
)
;; definition for method 3 of type joint-anim-transformq
(defmethod inspect joint-anim-transformq ((this joint-anim-transformq))
(defmethod inspect ((this joint-anim-transformq))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -59,13 +59,13 @@
;; definition for method 5 of type joint-anim-transformq
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of joint-anim-transformq ((this joint-anim-transformq))
(defmethod asize-of ((this joint-anim-transformq))
(the-as int (+ (-> joint-anim-transformq size) (* 48 (-> this length))))
)
;; definition for method 5 of type joint-anim-drawable
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of joint-anim-drawable ((this joint-anim-drawable))
(defmethod asize-of ((this joint-anim-drawable))
(the-as int (+ (-> joint-anim-drawable size) (* (-> this length) 4)))
)
@@ -95,7 +95,7 @@
)
;; definition for method 8 of type joint-anim-drawable
(defmethod mem-usage joint-anim-drawable ((this joint-anim-drawable) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this joint-anim-drawable) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 77 (-> arg0 length)))
(set! (-> arg0 data 76 name) "joint-anim-drawable")
(+! (-> arg0 data 76 count) 1)
@@ -138,7 +138,7 @@
)
;; definition for method 2 of type joint-control-channel
(defmethod print joint-control-channel ((this joint-control-channel))
(defmethod print ((this joint-control-channel))
(format
#t
"#<joint-control-channel ~A ~A ~F @ #x~X>"
@@ -152,7 +152,7 @@
;; definition for method 5 of type joint-control
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of joint-control ((this joint-control))
(defmethod asize-of ((this joint-control))
(the-as int (+ (-> this type size) (* 48 (-> this allocated-length))))
)
@@ -175,7 +175,7 @@
)
;; definition for method 9 of type joint-control-channel
(defmethod debug-print-frames joint-control-channel ((this joint-control-channel))
(defmethod debug-print-frames ((this joint-control-channel))
(let ((s5-0 (-> this frame-group))
(f30-0 (-> this frame-num))
)
@@ -188,7 +188,7 @@
)
;; definition for method 10 of type joint-control
(defmethod debug-print-channels joint-control ((this joint-control) (arg0 symbol))
(defmethod debug-print-channels ((this joint-control) (arg0 symbol))
(dotimes (s4-0 (-> this active-channels))
(let* ((v1-6 (if (and (-> this channel s4-0 frame-group) (nonzero? (-> this channel s4-0 frame-group)))
(-> this channel s4-0 frame-group)
@@ -246,35 +246,35 @@
)
;; definition for method 12 of type art
(defmethod needs-link? art ((this art))
(defmethod needs-link? ((this art))
#f
)
;; definition for method 10 of type art
;; INFO: Return type mismatch symbol vs joint.
(defmethod lookup-art art ((this art) (arg0 string) (arg1 type))
(defmethod lookup-art ((this art) (arg0 string) (arg1 type))
(the-as joint #f)
)
;; definition for method 11 of type art
;; INFO: Return type mismatch symbol vs int.
(defmethod lookup-idx-of-art art ((this art) (arg0 string) (arg1 type))
(defmethod lookup-idx-of-art ((this art) (arg0 string) (arg1 type))
(the-as int #f)
)
;; definition for method 2 of type art
(defmethod print art ((this art))
(defmethod print ((this art))
(format #t "#<~A ~S :length ~D @ #x~X>" (-> this type) (-> this name) (-> this length) this)
this
)
;; definition for method 4 of type art
(defmethod length art ((this art))
(defmethod length ((this art))
(-> this length)
)
;; definition for method 9 of type art
(defmethod login art ((this art))
(defmethod login ((this art))
(if (and (-> this extra) (zero? (-> this extra tag)))
(set! (-> this extra tag) (&+ (the-as (pointer res-tag) (-> this extra)) 28))
)
@@ -282,7 +282,7 @@
)
;; definition for method 8 of type art-mesh-anim
(defmethod mem-usage art-mesh-anim ((this art-mesh-anim) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this art-mesh-anim) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 72 (-> arg0 length)))
(set! (-> arg0 data 71 name) "art-mesh-anim")
(+! (-> arg0 data 71 count) 1)
@@ -302,12 +302,12 @@
;; definition for method 5 of type art-joint-anim
;; INFO: this function exists in multiple non-identical object files
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of art-joint-anim ((this art-joint-anim))
(defmethod asize-of ((this art-joint-anim))
(the-as int (+ (-> art size) (* (-> this length) 4)))
)
;; definition for method 3 of type art-joint-anim
(defmethod inspect art-joint-anim ((this art-joint-anim))
(defmethod inspect ((this art-joint-anim))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tname: ~A~%" (-> this name))
@@ -326,7 +326,7 @@
)
;; definition for method 8 of type art-joint-anim
(defmethod mem-usage art-joint-anim ((this art-joint-anim) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this art-joint-anim) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 75 (-> arg0 length)))
(set! (-> arg0 data 74 name) "art-joint-anim")
(+! (-> arg0 data 74 count) 1)
@@ -362,12 +362,12 @@
;; definition for method 5 of type art-joint-anim
;; INFO: this function exists in multiple non-identical object files
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of art-joint-anim ((this art-joint-anim))
(defmethod asize-of ((this art-joint-anim))
(the-as int (+ (-> art size) (* (-> this length) 4)))
)
;; definition for method 3 of type art-group
(defmethod inspect art-group ((this art-group))
(defmethod inspect ((this art-group))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tinfo: ~A~%" (-> this info))
(format #t "~Tlength: ~D~%" (-> this length))
@@ -385,7 +385,7 @@
;; definition for method 12 of type art-group
;; INFO: Return type mismatch object vs symbol.
(defmethod needs-link? art-group ((this art-group))
(defmethod needs-link? ((this art-group))
(the-as symbol (and (-> this length)
(type-type? (-> this data 0 type) art-joint-anim)
(!= (-> this name) (-> (the-as art-joint-anim (-> this data 0)) master-art-group-name))
@@ -395,7 +395,7 @@
;; definition for method 10 of type art-group
;; INFO: Return type mismatch art-element vs joint.
(defmethod lookup-art art-group ((this art-group) (arg0 string) (arg1 type))
(defmethod lookup-art ((this art-group) (arg0 string) (arg1 type))
(the-as
joint
(cond
@@ -425,7 +425,7 @@
)
;; definition for method 11 of type art-group
(defmethod lookup-idx-of-art art-group ((this art-group) (arg0 string) (arg1 type))
(defmethod lookup-idx-of-art ((this art-group) (arg0 string) (arg1 type))
(cond
(arg1
(let ((s3-0 (+ (length (-> this name)) 1)))
@@ -452,7 +452,7 @@
)
;; definition for method 9 of type art-group
(defmethod login art-group ((this art-group))
(defmethod login ((this art-group))
(dotimes (s5-0 (-> this length))
(if (-> this data s5-0)
(set! (-> this data s5-0) (login (-> this data s5-0)))
@@ -462,7 +462,7 @@
)
;; definition for method 8 of type art-group
(defmethod mem-usage art-group ((this art-group) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this art-group) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 71 (-> arg0 length)))
(set! (-> arg0 data 70 name) "art-group")
(+! (-> arg0 data 70 count) 1)
@@ -483,7 +483,7 @@
;; definition for method 7 of type art-group
;; INFO: Return type mismatch art-group vs none.
(defmethod relocate art-group ((this art-group) (arg0 kheap) (arg1 (pointer uint8)))
(defmethod relocate ((this art-group) (arg0 kheap) (arg1 (pointer uint8)))
(let ((s4-0 (clear *temp-string*)))
(string<-charp s4-0 arg1)
(set! this (cond
@@ -517,12 +517,12 @@
;; definition for method 5 of type art-mesh-geo
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of art-mesh-geo ((this art-mesh-geo))
(defmethod asize-of ((this art-mesh-geo))
(the-as int (+ (-> art size) (* (-> this length) 4)))
)
;; definition for method 8 of type art-mesh-geo
(defmethod mem-usage art-mesh-geo ((this art-mesh-geo) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this art-mesh-geo) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 73 (-> arg0 length)))
(set! (-> arg0 data 72 name) "art-mesh-geo")
(+! (-> arg0 data 72 count) 1)
@@ -542,7 +542,7 @@
;; definition for method 9 of type art-mesh-geo
;; ERROR: Type Propagation failed: Failed type prop at op 20 ((set! v1 (l.h (+ s4 6)))): Could not get type of load: (set! v1 (l.h (+ s4 6))).
;; ERROR: Type analysis failed
(defmethod login art-mesh-geo ((a0-0 art-mesh-geo))
(defmethod login ((a0-0 art-mesh-geo))
(local-vars
(v0-0 none)
(v0-1 art-mesh-geo)
@@ -592,7 +592,7 @@
)
;; definition for method 9 of type art-joint-anim
(defmethod login art-joint-anim ((this art-joint-anim))
(defmethod login ((this art-joint-anim))
(if (and (-> this extra) (zero? (-> this extra tag)))
(set! (-> this extra tag) (&+ (the-as (pointer res-tag) (-> this extra)) 28))
)
@@ -601,12 +601,12 @@
;; definition for method 5 of type art-joint-geo
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of art-joint-geo ((this art-joint-geo))
(defmethod asize-of ((this art-joint-geo))
(the-as int (+ (-> art size) (* (-> this length) 4)))
)
;; definition for method 10 of type art-joint-geo
(defmethod lookup-art art-joint-geo ((this art-joint-geo) (arg0 string) (arg1 type))
(defmethod lookup-art ((this art-joint-geo) (arg0 string) (arg1 type))
(cond
(arg1
(dotimes (s3-0 (-> this length))
@@ -628,7 +628,7 @@
)
;; definition for method 11 of type art-joint-geo
(defmethod lookup-idx-of-art art-joint-geo ((this art-joint-geo) (arg0 string) (arg1 type))
(defmethod lookup-idx-of-art ((this art-joint-geo) (arg0 string) (arg1 type))
(cond
(arg1
(dotimes (s3-0 (-> this length))
@@ -650,7 +650,7 @@
)
;; definition for method 8 of type art-joint-geo
(defmethod mem-usage art-joint-geo ((this art-joint-geo) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this art-joint-geo) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 74 (-> arg0 length)))
(set! (-> arg0 data 73 name) "art-joint-geo")
(+! (-> arg0 data 73 count) 1)
@@ -1128,7 +1128,7 @@
)
;; definition for method 9 of type cspace
(defmethod reset-and-assign-geo! cspace ((this cspace) (arg0 basic))
(defmethod reset-and-assign-geo! ((this cspace) (arg0 basic))
(set! (-> this parent) #f)
(set! (-> this joint) #f)
(set! (-> this geo) arg0)
+31 -49
View File
@@ -3,18 +3,15 @@
;; definition of type joint
(deftype joint (basic)
((name string :offset-assert 4)
(number int32 :offset-assert 8)
(parent joint :offset-assert 12)
(bind-pose matrix :inline :offset-assert 16)
((name string)
(number int32)
(parent joint)
(bind-pose matrix :inline)
)
:method-count-assert 9
:size-assert #x50
:flag-assert #x900000050
)
;; definition for method 3 of type joint
(defmethod inspect joint ((this joint))
(defmethod inspect ((this joint))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -25,18 +22,15 @@
;; definition of type bone-cache
(deftype bone-cache (structure)
((bone-matrix uint32 :offset-assert 0)
(parent-matrix uint32 :offset-assert 4)
(dummy uint32 :offset-assert 8)
(frame uint32 :offset-assert 12)
((bone-matrix uint32)
(parent-matrix uint32)
(dummy uint32)
(frame uint32)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type bone-cache
(defmethod inspect bone-cache ((this bone-cache))
(defmethod inspect ((this bone-cache))
(format #t "[~8x] ~A~%" this 'bone-cache)
(format #t "~Tbone-matrix: ~D~%" (-> this bone-matrix))
(format #t "~Tparent-matrix: ~D~%" (-> this parent-matrix))
@@ -47,18 +41,15 @@
;; definition of type bone
(deftype bone (structure)
((transform matrix :inline :offset-assert 0)
(position vector :inline :offset 48)
(scale vector :inline :offset-assert 64)
(cache bone-cache :inline :offset-assert 80)
((transform matrix :inline)
(position vector :inline :overlay-at (-> transform vector 3))
(scale vector :inline)
(cache bone-cache :inline)
)
:method-count-assert 9
:size-assert #x60
:flag-assert #x900000060
)
;; definition for method 3 of type bone
(defmethod inspect bone ((this bone))
(defmethod inspect ((this bone))
(format #t "[~8x] ~A~%" this 'bone)
(format #t "~Ttransform: #<matrix @ #x~X>~%" (-> this transform))
(format #t "~Tposition: #<vector @ #x~X>~%" (-> this transform vector 3))
@@ -69,15 +60,12 @@
;; definition of type skeleton
(deftype skeleton (inline-array-class)
((bones bone :inline :dynamic :offset-assert 16)
((bones bone :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type skeleton
(defmethod inspect skeleton ((this skeleton))
(defmethod inspect ((this skeleton))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -90,26 +78,23 @@
;; definition of type cspace
(deftype cspace (structure)
((parent cspace :offset-assert 0)
(joint joint :offset-assert 4)
(joint-num int16 :offset-assert 8)
(geo basic :offset-assert 12)
(bone bone :offset-assert 16)
(param0 function :offset-assert 20)
(param1 basic :offset-assert 24)
(param2 basic :offset-assert 28)
((parent cspace)
(joint joint)
(joint-num int16)
(geo basic)
(bone bone)
(param0 function)
(param1 basic)
(param2 basic)
)
:method-count-assert 10
:size-assert #x20
:flag-assert #xa00000020
(:methods
(new (symbol type basic) _type_ 0)
(reset-and-assign-geo! (_type_ basic) _type_ 9)
(new (symbol type basic) _type_)
(reset-and-assign-geo! (_type_ basic) _type_)
)
)
;; definition for method 3 of type cspace
(defmethod inspect cspace ((this cspace))
(defmethod inspect ((this cspace))
(format #t "[~8x] ~A~%" this 'cspace)
(format #t "~Tparent: #<cspace @ #x~X>~%" (-> this parent))
(format #t "~Tjoint: ~A~%" (-> this joint))
@@ -124,15 +109,12 @@
;; definition of type cspace-array
(deftype cspace-array (inline-array-class)
((data cspace :inline :dynamic :offset-assert 16)
((data cspace :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type cspace-array
(defmethod inspect cspace-array ((this cspace-array))
(defmethod inspect ((this cspace-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -144,7 +126,7 @@
(set! (-> cspace-array heap-base) (the-as uint 32))
;; definition for method 2 of type cspace
(defmethod print cspace ((this cspace))
(defmethod print ((this cspace))
(format
#t
"#<cspace ~S @ #x~X>"
+58 -91
View File
@@ -9,20 +9,17 @@
;; definition of type cam-layout-bank
(deftype cam-layout-bank (basic)
((spline-t float :offset-assert 4)
(spline-step float :offset-assert 8)
(intro-t float :offset-assert 12)
(intro-step float :offset-assert 16)
(debug-t float :offset-assert 20)
(debug-step float :offset-assert 24)
((spline-t float)
(spline-step float)
(intro-t float)
(intro-step float)
(debug-t float)
(debug-step float)
)
:method-count-assert 9
:size-assert #x1c
:flag-assert #x90000001c
)
;; definition for method 3 of type cam-layout-bank
(defmethod inspect cam-layout-bank ((this cam-layout-bank))
(defmethod inspect ((this cam-layout-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tspline-t: ~f~%" (-> this spline-t))
(format #t "~Tspline-step: ~f~%" (-> this spline-step))
@@ -50,34 +47,28 @@
;; definition of type clm-basic
(deftype clm-basic (basic)
()
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type clm-basic
(defmethod inspect clm-basic ((this clm-basic))
(defmethod inspect ((this clm-basic))
(format #t "[~8x] ~A~%" this (-> this type))
this
)
;; definition of type clm-item-action
(deftype clm-item-action (structure)
((button uint64 :offset-assert 0)
(options uint64 :offset-assert 8)
(func symbol :offset-assert 16)
(parm0 int32 :offset 20)
(parm0-basic basic :offset 20)
(parm1-basic basic :offset 24)
(parm1 symbol :offset 24)
((button uint64)
(options uint64)
(func symbol)
(parm0 int32 :offset 20)
(parm0-basic basic :overlay-at parm0)
(parm1-basic basic :offset 24)
(parm1 symbol :overlay-at parm1-basic)
)
:method-count-assert 9
:size-assert #x1c
:flag-assert #x90000001c
)
;; definition for method 3 of type clm-item-action
(defmethod inspect clm-item-action ((this clm-item-action))
(defmethod inspect ((this clm-item-action))
(format #t "[~8x] ~A~%" this 'clm-item-action)
(format #t "~Tbutton: ~D~%" (-> this button))
(format #t "~Toptions: ~D~%" (-> this options))
@@ -89,17 +80,14 @@
;; definition of type clm-item
(deftype clm-item (clm-basic)
((description string :offset-assert 4)
(button-symbol symbol :offset-assert 8)
(action clm-item-action :inline :offset-assert 16)
((description string)
(button-symbol symbol)
(action clm-item-action :inline)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
)
;; definition for method 3 of type clm-item
(defmethod inspect clm-item ((this clm-item))
(defmethod inspect ((this clm-item))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tdescription: ~A~%" (-> this description))
(format #t "~Tbutton-symbol: ~A~%" (-> this button-symbol))
@@ -109,22 +97,19 @@
;; definition of type clm-list-item
(deftype clm-list-item (basic)
((description string :offset-assert 4)
(track-val symbol :offset-assert 8)
(val-func symbol :offset-assert 12)
(val-parm0 int32 :offset 16)
(val-parm0-basic basic :offset 16)
(val-parm1-basic basic :offset 20)
(val-parm1 symbol :offset 20)
(actions (array clm-item-action) :offset-assert 24)
((description string)
(track-val symbol)
(val-func symbol)
(val-parm0 int32 :offset 16)
(val-parm0-basic basic :overlay-at val-parm0)
(val-parm1-basic basic :offset 20)
(val-parm1 symbol :overlay-at val-parm1-basic)
(actions (array clm-item-action))
)
:method-count-assert 9
:size-assert #x1c
:flag-assert #x90000001c
)
;; definition for method 3 of type clm-list-item
(defmethod inspect clm-list-item ((this clm-list-item))
(defmethod inspect ((this clm-list-item))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tdescription: ~A~%" (-> this description))
(format #t "~Ttrack-val: ~A~%" (-> this track-val))
@@ -137,17 +122,14 @@
;; definition of type clm-list
(deftype clm-list (clm-basic)
((tracker symbol :offset-assert 4)
(cur-list-item int32 :offset-assert 8)
(items (array clm-list-item) :offset-assert 12)
((tracker symbol)
(cur-list-item int32)
(items (array clm-list-item))
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type clm-list
(defmethod inspect clm-list ((this clm-list))
(defmethod inspect ((this clm-list))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttracker: ~A~%" (-> this tracker))
(format #t "~Tcur-list-item: ~D~%" (-> this cur-list-item))
@@ -157,16 +139,13 @@
;; definition of type clm
(deftype clm (basic)
((title string :offset-assert 4)
(items (array clm-basic) :offset-assert 8)
((title string)
(items (array clm-basic))
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type clm
(defmethod inspect clm ((this clm))
(defmethod inspect ((this clm))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttitle: ~A~%" (-> this title))
(format #t "~Titems: ~A~%" (-> this items))
@@ -187,15 +166,12 @@
;; definition of type volume-descriptor-array
(deftype volume-descriptor-array (inline-array-class)
((data plane-volume :inline :dynamic :offset 16)
((data plane-volume :inline :dynamic :offset 16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type volume-descriptor-array
(defmethod inspect volume-descriptor-array ((this volume-descriptor-array))
(defmethod inspect ((this volume-descriptor-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -214,26 +190,23 @@
;; definition of type cam-layout
(deftype cam-layout (process)
((cam-entity entity-camera :offset-assert 112)
(num-entities int32 :offset-assert 116)
(cur-entity int32 :offset-assert 120)
(num-volumes int32 :offset-assert 124)
(cur-volume int32 :offset-assert 128)
(first-pvol int32 :offset-assert 132)
(first-cutoutvol int32 :offset-assert 136)
(res-key float :offset-assert 140)
((cam-entity entity-camera)
(num-entities int32)
(cur-entity int32)
(num-volumes int32)
(cur-volume int32)
(first-pvol int32)
(first-cutoutvol int32)
(res-key float)
)
:heap-base #x200
:method-count-assert 14
:size-assert #x90
:flag-assert #xe02000090
(:states
cam-layout-active
)
)
;; definition for method 3 of type cam-layout
(defmethod inspect cam-layout ((this cam-layout))
(defmethod inspect ((this cam-layout))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -553,20 +526,17 @@
;; definition of type interp-test-info
(deftype interp-test-info (structure)
((from vector :inline :offset-assert 0)
(to vector :inline :offset-assert 16)
(origin vector :inline :offset-assert 32)
(color vector4w :offset-assert 48)
(axis vector :offset-assert 52)
(disp string :offset-assert 56)
((from vector :inline)
(to vector :inline)
(origin vector :inline)
(color vector4w)
(axis vector)
(disp string)
)
:method-count-assert 9
:size-assert #x3c
:flag-assert #x90000003c
)
;; definition for method 3 of type interp-test-info
(defmethod inspect interp-test-info ((this interp-test-info))
(defmethod inspect ((this interp-test-info))
(format #t "[~8x] ~A~%" this 'interp-test-info)
(format #t "~Tfrom: #<vector @ #x~X>~%" (-> this from))
(format #t "~Tto: #<vector @ #x~X>~%" (-> this to))
@@ -2416,17 +2386,14 @@
;; definition of type clmf-cam-flag-toggle-info
(deftype clmf-cam-flag-toggle-info (structure)
((key float :offset-assert 0)
(force-on int32 :offset-assert 4)
(force-off int32 :offset-assert 8)
((key float)
(force-on int32)
(force-off int32)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type clmf-cam-flag-toggle-info
(defmethod inspect clmf-cam-flag-toggle-info ((this clmf-cam-flag-toggle-info))
(defmethod inspect ((this clmf-cam-flag-toggle-info))
(format #t "[~8x] ~A~%" this 'clmf-cam-flag-toggle-info)
(format #t "~Tkey: ~f~%" (-> this key))
(format #t "~Tforce-on: ~D~%" (-> this force-on))
+11 -18
View File
@@ -3,22 +3,19 @@
;; definition of type camera-master-bank
(deftype camera-master-bank (basic)
((onscreen-head-height meters :offset-assert 4)
(onscreen-foot-height meters :offset-assert 8)
(target-height meters :offset-assert 12)
(up-move-to-pitch-ratio-in-air float :offset-assert 16)
(down-move-to-pitch-ratio-in-air float :offset-assert 20)
(up-move-to-pitch-on-ground float :offset-assert 24)
(down-move-to-pitch-on-ground float :offset-assert 28)
(pitch-off-blend float :offset-assert 32)
((onscreen-head-height meters)
(onscreen-foot-height meters)
(target-height meters)
(up-move-to-pitch-ratio-in-air float)
(down-move-to-pitch-ratio-in-air float)
(up-move-to-pitch-on-ground float)
(down-move-to-pitch-on-ground float)
(pitch-off-blend float)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
;; definition for method 3 of type camera-master-bank
(defmethod inspect camera-master-bank ((this camera-master-bank))
(defmethod inspect ((this camera-master-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tonscreen-head-height: (meters ~m)~%" (-> this onscreen-head-height))
(format #t "~Tonscreen-foot-height: (meters ~m)~%" (-> this onscreen-foot-height))
@@ -915,16 +912,12 @@
;; definition of type list-keeper
(deftype list-keeper (process)
((dummy float :offset-assert 112)
((dummy float)
)
:heap-base #x10
:method-count-assert 14
:size-assert #x74
:flag-assert #xe00100074
)
;; definition for method 3 of type list-keeper
(defmethod inspect list-keeper ((this list-keeper))
(defmethod inspect ((this list-keeper))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
+22 -37
View File
@@ -3,16 +3,13 @@
;; definition of type cam-point-watch-bank
(deftype cam-point-watch-bank (basic)
((speed float :offset-assert 4)
(rot-speed degrees :offset-assert 8)
((speed float)
(rot-speed degrees)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type cam-point-watch-bank
(defmethod inspect cam-point-watch-bank ((this cam-point-watch-bank))
(defmethod inspect ((this cam-point-watch-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tspeed: ~f~%" (-> this speed))
(format #t "~Trot-speed: (deg ~r)~%" (-> this rot-speed))
@@ -92,16 +89,13 @@
;; definition of type cam-free-bank
(deftype cam-free-bank (basic)
((speed float :offset-assert 4)
(rot-speed degrees :offset-assert 8)
((speed float)
(rot-speed degrees)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type cam-free-bank
(defmethod inspect cam-free-bank ((this cam-free-bank))
(defmethod inspect ((this cam-free-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tspeed: ~f~%" (-> this speed))
(format #t "~Trot-speed: (deg ~r)~%" (-> this rot-speed))
@@ -354,18 +348,15 @@
;; definition of type camera-free-floating-move-info
(deftype camera-free-floating-move-info (structure)
((rv vector :inline :offset-assert 0)
(tv vector :inline :offset-assert 16)
(up vector :inline :offset-assert 32)
(tm matrix :inline :offset-assert 48)
((rv vector :inline)
(tv vector :inline)
(up vector :inline)
(tm matrix :inline)
)
:method-count-assert 9
:size-assert #x70
:flag-assert #x900000070
)
;; definition for method 3 of type camera-free-floating-move-info
(defmethod inspect camera-free-floating-move-info ((this camera-free-floating-move-info))
(defmethod inspect ((this camera-free-floating-move-info))
(format #t "[~8x] ~A~%" this 'camera-free-floating-move-info)
(format #t "~Trv: #<vector @ #x~X>~%" (-> this rv))
(format #t "~Ttv: #<vector @ #x~X>~%" (-> this tv))
@@ -451,19 +442,16 @@
;; definition of type camera-orbit-info
(deftype camera-orbit-info (structure)
((radius float :offset-assert 0)
(rot float :offset-assert 4)
(target-off vector :inline :offset-assert 16)
(orbit-off vector :inline :offset-assert 32)
(radius-lerp float :offset-assert 48)
((radius float)
(rot float)
(target-off vector :inline)
(orbit-off vector :inline)
(radius-lerp float)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
)
;; definition for method 3 of type camera-orbit-info
(defmethod inspect camera-orbit-info ((this camera-orbit-info))
(defmethod inspect ((this camera-orbit-info))
(format #t "[~8x] ~A~%" this 'camera-orbit-info)
(format #t "~Tradius: ~f~%" (-> this radius))
(format #t "~Trot: ~f~%" (-> this rot))
@@ -475,18 +463,15 @@
;; definition of type CAM_ORBIT-bank
(deftype CAM_ORBIT-bank (basic)
((RADIUS_MAX float :offset-assert 4)
(RADIUS_MIN float :offset-assert 8)
(TARGET_OFF_ADJUST float :offset-assert 12)
(ORBIT_OFF_ADJUST float :offset-assert 16)
((RADIUS_MAX float)
(RADIUS_MIN float)
(TARGET_OFF_ADJUST float)
(ORBIT_OFF_ADJUST float)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type CAM_ORBIT-bank
(defmethod inspect CAM_ORBIT-bank ((this CAM_ORBIT-bank))
(defmethod inspect ((this CAM_ORBIT-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~TRADIUS_MAX: ~f~%" (-> this RADIUS_MAX))
(format #t "~TRADIUS_MIN: ~f~%" (-> this RADIUS_MIN))
+41 -65
View File
@@ -377,18 +377,15 @@
;; definition of type cam-eye-bank
(deftype cam-eye-bank (basic)
((rot-speed float :offset-assert 4)
(max-degrees float :offset-assert 8)
(max-fov float :offset-assert 12)
(min-fov float :offset-assert 16)
((rot-speed float)
(max-degrees float)
(max-fov float)
(min-fov float)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type cam-eye-bank
(defmethod inspect cam-eye-bank ((this cam-eye-bank))
(defmethod inspect ((this cam-eye-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Trot-speed: ~f~%" (-> this rot-speed))
(format #t "~Tmax-degrees: ~f~%" (-> this max-degrees))
@@ -558,16 +555,13 @@
;; definition of type cam-billy-bank
(deftype cam-billy-bank (basic)
((rot-speed float :offset-assert 4)
(tilt-degrees float :offset-assert 8)
((rot-speed float)
(tilt-degrees float)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type cam-billy-bank
(defmethod inspect cam-billy-bank ((this cam-billy-bank))
(defmethod inspect ((this cam-billy-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Trot-speed: ~f~%" (-> this rot-speed))
(format #t "~Ttilt-degrees: ~f~%" (-> this tilt-degrees))
@@ -1199,16 +1193,13 @@
;; definition of type cam-string-bank
(deftype cam-string-bank (basic)
((los-coll-rad meters :offset-assert 4)
(los-coll-rad2 meters :offset-assert 8)
((los-coll-rad meters)
(los-coll-rad2 meters)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type cam-string-bank
(defmethod inspect cam-string-bank ((this cam-string-bank))
(defmethod inspect ((this cam-string-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlos-coll-rad: (meters ~m)~%" (-> this los-coll-rad))
(format #t "~Tlos-coll-rad2: (meters ~m)~%" (-> this los-coll-rad2))
@@ -1317,17 +1308,14 @@
;; definition of type los-dist
(deftype los-dist (structure)
((par-dist float :offset-assert 0)
(lat-dist float :offset-assert 4)
(vert-dist float :offset-assert 8)
((par-dist float)
(lat-dist float)
(vert-dist float)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type los-dist
(defmethod inspect los-dist ((this los-dist))
(defmethod inspect ((this los-dist))
(format #t "[~8x] ~A~%" this 'los-dist)
(format #t "~Tpar-dist: ~f~%" (-> this par-dist))
(format #t "~Tlat-dist: ~f~%" (-> this lat-dist))
@@ -1337,23 +1325,20 @@
;; definition of type collide-los-dist-info
(deftype collide-los-dist-info (structure)
((min-par float :offset-assert 0)
(max-par float :offset-assert 4)
(min-lat float :offset-assert 8)
(max-lat float :offset-assert 12)
(min-vp float :offset-assert 16)
(max-vp float :offset-assert 20)
(min-vn float :offset-assert 24)
(max-vn float :offset-assert 28)
(count int32 :offset-assert 32)
((min-par float)
(max-par float)
(min-lat float)
(max-lat float)
(min-vp float)
(max-vp float)
(min-vn float)
(max-vn float)
(count int32)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
;; definition for method 3 of type collide-los-dist-info
(defmethod inspect collide-los-dist-info ((this collide-los-dist-info))
(defmethod inspect ((this collide-los-dist-info))
(format #t "[~8x] ~A~%" this 'collide-los-dist-info)
(format #t "~Tmin-par: ~f~%" (-> this min-par))
(format #t "~Tmax-par: ~f~%" (-> this max-par))
@@ -1474,19 +1459,16 @@
;; definition of type collide-los-result
(deftype collide-los-result (structure)
((lateral vector :inline :offset-assert 0)
(cw collide-los-dist-info :inline :offset-assert 16)
(ccw collide-los-dist-info :inline :offset-assert 64)
(straddle collide-los-dist-info :inline :offset-assert 112)
(lateral-valid symbol :offset-assert 148)
((lateral vector :inline)
(cw collide-los-dist-info :inline)
(ccw collide-los-dist-info :inline)
(straddle collide-los-dist-info :inline)
(lateral-valid symbol)
)
:method-count-assert 9
:size-assert #x98
:flag-assert #x900000098
)
;; definition for method 3 of type collide-los-result
(defmethod inspect collide-los-result ((this collide-los-result))
(defmethod inspect ((this collide-los-result))
(format #t "[~8x] ~A~%" this 'collide-los-result)
(format #t "~Tlateral: ~`vector`P~%" (-> this lateral))
(format #t "~Tcw: #<collide-los-dist-info @ #x~X>~%" (-> this cw))
@@ -3013,18 +2995,15 @@
;; definition of type cam-stick-bank
(deftype cam-stick-bank (basic)
((max-z meters :offset-assert 4)
(min-z meters :offset-assert 8)
(max-y meters :offset-assert 12)
(min-y meters :offset-assert 16)
((max-z meters)
(min-z meters)
(max-y meters)
(min-y meters)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type cam-stick-bank
(defmethod inspect cam-stick-bank ((this cam-stick-bank))
(defmethod inspect ((this cam-stick-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tmax-z: (meters ~m)~%" (-> this max-z))
(format #t "~Tmin-z: (meters ~m)~%" (-> this min-z))
@@ -3252,18 +3231,15 @@
;; definition of type cam-bike-bank
(deftype cam-bike-bank (basic)
((max-z meters :offset-assert 4)
(min-z meters :offset-assert 8)
(max-y meters :offset-assert 12)
(min-y meters :offset-assert 16)
((max-z meters)
(min-z meters)
(max-y meters)
(min-y meters)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type cam-bike-bank
(defmethod inspect cam-bike-bank ((this cam-bike-bank))
(defmethod inspect ((this cam-bike-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tmin-z: (meters ~m)~%" (-> this max-z))
(format #t "~Tmax-z: (meters ~m)~%" (-> this min-z))
+211 -247
View File
@@ -3,24 +3,21 @@
;; definition of type camera-bank
(deftype camera-bank (basic)
((collide-move-rad float :offset-assert 4)
(joypad uint32 :offset-assert 8)
(min-detectable-velocity float :offset-assert 12)
(attack-timeout time-frame :offset-assert 16)
(default-string-max-y meters :offset-assert 24)
(default-string-min-y meters :offset-assert 28)
(default-string-max-z meters :offset-assert 32)
(default-string-min-z meters :offset-assert 36)
(default-string-push-z meters :offset-assert 40)
(default-tilt-adjust degrees :offset-assert 44)
((collide-move-rad float)
(joypad uint32)
(min-detectable-velocity float)
(attack-timeout time-frame)
(default-string-max-y meters)
(default-string-min-y meters)
(default-string-max-z meters)
(default-string-min-z meters)
(default-string-push-z meters)
(default-tilt-adjust degrees)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type camera-bank
(defmethod inspect camera-bank ((this camera-bank))
(defmethod inspect ((this camera-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tcollide-move-rad: ~f~%" (-> this collide-move-rad))
(format #t "~Tjoypad: ~D~%" (-> this joypad))
@@ -51,20 +48,17 @@
;; definition of type cam-index
(deftype cam-index (structure)
((flags cam-index-options :offset-assert 0)
(vec vector 2 :inline :offset 16)
((flags cam-index-options)
(vec vector 2 :inline :offset 16)
)
:method-count-assert 11
:size-assert #x30
:flag-assert #xb00000030
(:methods
(cam-index-method-9 (_type_ symbol entity vector curve) symbol 9)
(cam-index-method-10 (_type_ vector) float 10)
(cam-index-method-9 (_type_ symbol entity vector curve) symbol)
(cam-index-method-10 (_type_ vector) float)
)
)
;; definition for method 3 of type cam-index
(defmethod inspect cam-index ((this cam-index))
(defmethod inspect ((this cam-index))
(format #t "[~8x] ~A~%" this 'cam-index)
(format #t "~Tflags: ~D~%" (-> this flags))
(format #t "~Tvec[2] @ #x~X~%" (-> this vec))
@@ -73,19 +67,16 @@
;; definition of type tracking-point
(deftype tracking-point (structure)
((position vector :inline :offset-assert 0)
(direction vector :inline :offset-assert 16)
(tp-length float :offset-assert 32)
(next int32 :offset-assert 36)
(incarnation int32 :offset-assert 40)
((position vector :inline)
(direction vector :inline)
(tp-length float)
(next int32)
(incarnation int32)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
)
;; definition for method 3 of type tracking-point
(defmethod inspect tracking-point ((this tracking-point))
(defmethod inspect ((this tracking-point))
(format #t "[~8x] ~A~%" this 'tracking-point)
(format #t "~Tposition: #<vector @ #x~X>~%" (-> this position))
(format #t "~Tdirection: #<vector @ #x~X>~%" (-> this direction))
@@ -97,16 +88,13 @@
;; definition of type tracking-spline-sampler
(deftype tracking-spline-sampler (structure)
((cur-pt int32 :offset-assert 0)
(partial-pt float :offset-assert 4)
((cur-pt int32)
(partial-pt float)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type tracking-spline-sampler
(defmethod inspect tracking-spline-sampler ((this tracking-spline-sampler))
(defmethod inspect ((this tracking-spline-sampler))
(format #t "[~8x] ~A~%" this 'tracking-spline-sampler)
(format #t "~Tcur-pt: ~D~%" (-> this cur-pt))
(format #t "~Tpartial-pt: ~f~%" (-> this partial-pt))
@@ -115,45 +103,42 @@
;; definition of type tracking-spline
(deftype tracking-spline (structure)
((point tracking-point 32 :inline :offset-assert 0)
(summed-len float :offset-assert 1536)
(free-point int32 :offset-assert 1540)
(used-point int32 :offset-assert 1544)
(partial-point float :offset-assert 1548)
(end-point int32 :offset-assert 1552)
(next-to-last-point int32 :offset-assert 1556)
(max-move float :offset-assert 1560)
(sample-len float :offset-assert 1564)
(used-count int32 :offset-assert 1568)
(old-position vector :inline :offset-assert 1584)
(debug-old-position vector :inline :offset-assert 1600)
(debug-out-position vector :inline :offset-assert 1616)
(debug-last-point int32 :offset-assert 1632)
((point tracking-point 32 :inline)
(summed-len float)
(free-point int32)
(used-point int32)
(partial-point float)
(end-point int32)
(next-to-last-point int32)
(max-move float)
(sample-len float)
(used-count int32)
(old-position vector :inline)
(debug-old-position vector :inline)
(debug-out-position vector :inline)
(debug-last-point int32)
)
:method-count-assert 24
:size-assert #x664
:flag-assert #x1800000664
(:methods
(tracking-spline-method-9 (_type_) none 9)
(tracking-spline-method-10 (_type_ vector) none 10)
(print-nth-point (_type_ int) none 11)
(tracking-spline-method-12 (_type_) none 12)
(tracking-spline-method-13 (_type_ int) none 13)
(tracking-spline-method-14 (_type_ tracking-spline-sampler) none 14)
(tracking-spline-method-15 (_type_) none 15)
(tracking-spline-method-16 (_type_ float) none 16)
(tracking-spline-method-17 (_type_ vector float float symbol) int 17)
(tracking-spline-method-18 (_type_ float vector tracking-spline-sampler) vector 18)
(tracking-spline-method-19 (_type_ float vector tracking-spline-sampler) vector 19)
(tracking-spline-method-20 (_type_ vector int) none 20)
(tracking-spline-method-21 (_type_ vector float float) vector 21)
(tracking-spline-method-22 (_type_ float) none 22)
(tracking-spline-method-23 (_type_) none 23)
(tracking-spline-method-9 (_type_) none)
(tracking-spline-method-10 (_type_ vector) none)
(print-nth-point (_type_ int) none)
(tracking-spline-method-12 (_type_) none)
(tracking-spline-method-13 (_type_ int) none)
(tracking-spline-method-14 (_type_ tracking-spline-sampler) none)
(tracking-spline-method-15 (_type_) none)
(tracking-spline-method-16 (_type_ float) none)
(tracking-spline-method-17 (_type_ vector float float symbol) int)
(tracking-spline-method-18 (_type_ float vector tracking-spline-sampler) vector)
(tracking-spline-method-19 (_type_ float vector tracking-spline-sampler) vector)
(tracking-spline-method-20 (_type_ vector int) none)
(tracking-spline-method-21 (_type_ vector float float) vector)
(tracking-spline-method-22 (_type_ float) none)
(tracking-spline-method-23 (_type_) none)
)
)
;; definition for method 3 of type tracking-spline
(defmethod inspect tracking-spline ((this tracking-spline))
(defmethod inspect ((this tracking-spline))
(format #t "[~8x] ~A~%" this 'tracking-spline)
(format #t "~Tpoint[32] @ #x~X~%" (-> this point))
(format #t "~Tsummed-len: ~f~%" (-> this summed-len))
@@ -174,27 +159,24 @@
;; definition of type cam-float-seeker
(deftype cam-float-seeker (structure)
((target float :offset-assert 0)
(value float :offset-assert 4)
(vel float :offset-assert 8)
(accel float :offset-assert 12)
(max-vel float :offset-assert 16)
(max-partial float :offset-assert 20)
((target float)
(value float)
(vel float)
(accel float)
(max-vel float)
(max-partial float)
)
:pack-me
:method-count-assert 13
:size-assert #x18
:flag-assert #xd00000018
(:methods
(init-cam-float-seeker (_type_ float float float float) none 9)
(copy-cam-float-seeker (_type_ _type_) none 10)
(update! (_type_ float) none 11)
(jump-to-target! (_type_ float) float 12)
(init-cam-float-seeker (_type_ float float float float) none)
(copy-cam-float-seeker (_type_ _type_) none)
(update! (_type_ float) none)
(jump-to-target! (_type_ float) float)
)
)
;; definition for method 3 of type cam-float-seeker
(defmethod inspect cam-float-seeker ((this cam-float-seeker))
(defmethod inspect ((this cam-float-seeker))
(format #t "[~8x] ~A~%" this 'cam-float-seeker)
(format #t "~Ttarget: ~f~%" (-> this target))
(format #t "~Tvalue: ~f~%" (-> this value))
@@ -207,7 +189,7 @@
;; definition for method 9 of type cam-float-seeker
;; INFO: Return type mismatch int vs none.
(defmethod init-cam-float-seeker cam-float-seeker ((this cam-float-seeker) (arg0 float) (arg1 float) (arg2 float) (arg3 float))
(defmethod init-cam-float-seeker ((this cam-float-seeker) (arg0 float) (arg1 float) (arg2 float) (arg3 float))
(set! (-> this target) arg0)
(set! (-> this value) arg0)
(set! (-> this vel) 0.0)
@@ -220,7 +202,7 @@
;; definition for method 10 of type cam-float-seeker
;; INFO: Return type mismatch int vs none.
(defmethod copy-cam-float-seeker cam-float-seeker ((this cam-float-seeker) (arg0 cam-float-seeker))
(defmethod copy-cam-float-seeker ((this cam-float-seeker) (arg0 cam-float-seeker))
(set! (-> this target) (-> arg0 target))
(set! (-> this value) (-> arg0 value))
(set! (-> this vel) (-> arg0 vel))
@@ -233,7 +215,7 @@
;; definition for method 11 of type cam-float-seeker
;; INFO: Return type mismatch int vs none.
(defmethod update! cam-float-seeker ((this cam-float-seeker) (offset float))
(defmethod update! ((this cam-float-seeker) (offset float))
0.0
0.0
(let* ((pos-error (- (+ (-> this target) offset) (-> this value)))
@@ -258,31 +240,28 @@
)
;; definition for method 12 of type cam-float-seeker
(defmethod jump-to-target! cam-float-seeker ((this cam-float-seeker) (arg0 float))
(defmethod jump-to-target! ((this cam-float-seeker) (arg0 float))
(set! (-> this value) (+ (-> this target) arg0))
(set! (-> this vel) 0.0)
)
;; definition of type cam-vector-seeker
(deftype cam-vector-seeker (structure)
((target vector :inline :offset-assert 0)
(value vector :inline :offset-assert 16)
(vel vector :inline :offset-assert 32)
(accel float :offset-assert 48)
(max-vel float :offset-assert 52)
(max-partial float :offset-assert 56)
((target vector :inline)
(value vector :inline)
(vel vector :inline)
(accel float)
(max-vel float)
(max-partial float)
)
:method-count-assert 11
:size-assert #x3c
:flag-assert #xb0000003c
(:methods
(init! (_type_ vector float float float) none 9)
(update! (_type_ vector) none 10)
(init! (_type_ vector float float float) none)
(update! (_type_ vector) none)
)
)
;; definition for method 3 of type cam-vector-seeker
(defmethod inspect cam-vector-seeker ((this cam-vector-seeker))
(defmethod inspect ((this cam-vector-seeker))
(format #t "[~8x] ~A~%" this 'cam-vector-seeker)
(format #t "~Ttarget: #<vector @ #x~X>~%" (-> this target))
(format #t "~Tvalue: #<vector @ #x~X>~%" (-> this value))
@@ -296,7 +275,7 @@
;; definition for method 9 of type cam-vector-seeker
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod init! cam-vector-seeker ((this cam-vector-seeker) (arg0 vector) (arg1 float) (arg2 float) (arg3 float))
(defmethod init! ((this cam-vector-seeker) (arg0 vector) (arg1 float) (arg2 float) (arg3 float))
(cond
(arg0
(set! (-> this target quad) (-> arg0 quad))
@@ -317,7 +296,7 @@
;; definition for method 10 of type cam-vector-seeker
;; INFO: Return type mismatch int vs none.
(defmethod update! cam-vector-seeker ((this cam-vector-seeker) (arg0 vector))
(defmethod update! ((this cam-vector-seeker) (arg0 vector))
(let ((gp-0 (new 'stack-no-clear 'vector)))
0.0
(cond
@@ -349,24 +328,21 @@
;; definition of type cam-rotation-tracker
(deftype cam-rotation-tracker (structure)
((inv-mat matrix :inline :offset-assert 0)
(no-follow basic :offset-assert 64)
(follow-pt vector :inline :offset-assert 80)
(follow-off vector :inline :offset-assert 96)
(follow-blend float :offset-assert 112)
(tilt-adjust cam-float-seeker :inline :offset-assert 116)
(use-point-of-interest basic :offset-assert 140)
(point-of-interest vector :inline :offset-assert 144)
(point-of-interest-blend cam-float-seeker :inline :offset-assert 160)
(underwater-blend cam-float-seeker :inline :offset-assert 184)
((inv-mat matrix :inline)
(no-follow basic)
(follow-pt vector :inline)
(follow-off vector :inline)
(follow-blend float)
(tilt-adjust cam-float-seeker :inline)
(use-point-of-interest basic)
(point-of-interest vector :inline)
(point-of-interest-blend cam-float-seeker :inline)
(underwater-blend cam-float-seeker :inline)
)
:method-count-assert 9
:size-assert #xd0
:flag-assert #x9000000d0
)
;; definition for method 3 of type cam-rotation-tracker
(defmethod inspect cam-rotation-tracker ((this cam-rotation-tracker))
(defmethod inspect ((this cam-rotation-tracker))
(format #t "[~8x] ~A~%" this 'cam-rotation-tracker)
(format #t "~Tinv-mat: ~`matrix`P~%" (-> this inv-mat))
(format #t "~Tno-follow: ~A~%" (-> this no-follow))
@@ -383,30 +359,26 @@
;; definition of type camera-combiner
(deftype camera-combiner (process)
((trans vector :inline :offset-assert 112)
(inv-camera-rot matrix :inline :offset-assert 128)
(fov float :offset-assert 192)
(interp-val float :offset-assert 196)
(interp-step float :offset-assert 200)
(dist-from-src float :offset-assert 204)
(dist-from-dest float :offset-assert 208)
(flip-control-axis vector :inline :offset-assert 224)
(velocity vector :inline :offset-assert 240)
(tracking-status uint64 :offset-assert 256)
(tracking-options int32 :offset-assert 264)
(tracking cam-rotation-tracker :inline :offset-assert 272)
((trans vector :inline)
(inv-camera-rot matrix :inline)
(fov float)
(interp-val float)
(interp-step float)
(dist-from-src float)
(dist-from-dest float)
(flip-control-axis vector :inline)
(velocity vector :inline)
(tracking-status uint64)
(tracking-options int32)
(tracking cam-rotation-tracker :inline)
)
:heap-base #x170
:method-count-assert 14
:size-assert #x1e0
:flag-assert #xe017001e0
(:states
cam-combiner-active
)
)
;; definition for method 3 of type camera-combiner
(defmethod inspect camera-combiner ((this camera-combiner))
(defmethod inspect ((this camera-combiner))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -427,62 +399,58 @@
;; definition of type camera-slave
(deftype camera-slave (process)
((trans vector :inline :offset-assert 112)
(fov float :offset-assert 128)
(fov0 float :offset-assert 132)
(fov1 float :offset-assert 136)
(fov-index cam-index :inline :offset-assert 144)
(tracking cam-rotation-tracker :inline :offset-assert 192)
(view-off-param float :offset-assert 400)
(unknown-symbol symbol :offset 412)
(view-off vector :inline :offset-assert 416)
(min-z-override float :offset-assert 432)
(view-flat vector :inline :offset-assert 448)
(string-vel-dir uint32 :offset-assert 464)
(string-trans vector :inline :offset-assert 480)
(position-spline tracking-spline :inline :offset-assert 496)
(pivot-pt vector :inline :offset-assert 2144)
(pivot-rad float :offset-assert 2160)
(circular-follow vector :inline :offset-assert 2176)
(max-angle-offset float :offset-assert 2192)
(max-angle-curr float :offset-assert 2196)
(options uint32 :offset-assert 2200)
(cam-entity entity :offset-assert 2204)
(velocity vector :inline :offset-assert 2208)
(desired-pos vector :inline :offset-assert 2224)
(time-dist-too-far uint32 :offset-assert 2240)
(los-state slave-los-state :offset-assert 2244)
(good-point vector :inline :offset-assert 2256)
(los-tgt-spline-pt int32 :offset-assert 2272)
(los-tgt-spline-pt-incarnation int32 :offset-assert 2276)
(los-last-pos vector :inline :offset-assert 2288)
(intro-curve curve :inline :offset-assert 2304)
(intro-offset vector :inline :offset-assert 2336)
(intro-t float :offset-assert 2352)
(intro-t-step float :offset-assert 2356)
(outro-exit-value float :offset-assert 2360)
(spline-exists basic :offset-assert 2364)
(spline-curve curve :inline :offset-assert 2368)
(spline-offset vector :inline :offset-assert 2400)
(index cam-index :inline :offset-assert 2416)
(saved-pt vector :inline :offset-assert 2464)
(spline-tt float :offset-assert 2480)
(spline-follow-dist float :offset-assert 2484)
(change-event-from (pointer process-drawable) :offset-assert 2488)
(enter-has-run symbol :offset-assert 2492)
(blend-from-type uint64 :offset-assert 2496)
(blend-to-type uint64 :offset-assert 2504)
(have-phony-joystick basic :offset-assert 2512)
(phony-joystick-x float :offset-assert 2516)
(phony-joystick-y float :offset-assert 2520)
(string-min-val vector :inline :offset-assert 2528)
(string-max-val vector :inline :offset-assert 2544)
(string-val-locked basic :offset-assert 2560)
((trans vector :inline)
(fov float)
(fov0 float)
(fov1 float)
(fov-index cam-index :inline)
(tracking cam-rotation-tracker :inline)
(view-off-param float)
(unknown-symbol symbol :offset 412)
(view-off vector :inline)
(min-z-override float)
(view-flat vector :inline)
(string-vel-dir uint32)
(string-trans vector :inline)
(position-spline tracking-spline :inline)
(pivot-pt vector :inline)
(pivot-rad float)
(circular-follow vector :inline)
(max-angle-offset float)
(max-angle-curr float)
(options uint32)
(cam-entity entity)
(velocity vector :inline)
(desired-pos vector :inline)
(time-dist-too-far uint32)
(los-state slave-los-state)
(good-point vector :inline)
(los-tgt-spline-pt int32)
(los-tgt-spline-pt-incarnation int32)
(los-last-pos vector :inline)
(intro-curve curve :inline)
(intro-offset vector :inline)
(intro-t float)
(intro-t-step float)
(outro-exit-value float)
(spline-exists basic)
(spline-curve curve :inline)
(spline-offset vector :inline)
(index cam-index :inline)
(saved-pt vector :inline)
(spline-tt float)
(spline-follow-dist float)
(change-event-from (pointer process-drawable))
(enter-has-run symbol)
(blend-from-type uint64)
(blend-to-type uint64)
(have-phony-joystick basic)
(phony-joystick-x float)
(phony-joystick-y float)
(string-min-val vector :inline)
(string-max-val vector :inline)
(string-val-locked basic)
)
:heap-base #x9a0
:method-count-assert 14
:size-assert #xa04
:flag-assert #xe09a00a04
(:states
*camera-base-mode*
cam-bike
@@ -514,7 +482,7 @@
)
;; definition for method 3 of type camera-slave
(defmethod inspect camera-slave ((this camera-slave))
(defmethod inspect ((this camera-slave))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -573,64 +541,60 @@
;; definition of type camera-master
(deftype camera-master (process)
((master-options uint32 :offset-assert 112)
(num-slaves int32 :offset-assert 116)
(slave (pointer camera-slave) 2 :offset-assert 120)
(slave-options uint32 :offset-assert 128)
(view-off-param-save float :offset-assert 132)
(changer uint32 :offset-assert 136)
(cam-entity entity :offset-assert 140)
(stringMinLength float :offset-assert 144)
(stringMaxLength float :offset-assert 148)
(stringMinHeight float :offset-assert 152)
(stringMaxHeight float :offset-assert 156)
(string-min cam-vector-seeker :inline :offset-assert 160)
(string-max cam-vector-seeker :inline :offset-assert 224)
(string-push-z float :offset-assert 284)
(stringCliffHeight float :offset-assert 288)
(no-intro uint32 :offset-assert 292)
(force-blend uint32 :offset-assert 296)
(force-blend-time uint32 :offset-assert 300)
(local-down vector :inline :offset-assert 304)
(drawable-target handle :offset-assert 320)
(which-bone int32 :offset-assert 328)
(pov-handle handle :offset-assert 336)
(pov-bone int32 :offset-assert 344)
(being-attacked symbol :offset-assert 348)
(attack-start time-frame :offset-assert 352)
(on-ground symbol :offset-assert 360)
(under-water int32 :offset-assert 364)
(on-pole symbol :offset-assert 368)
(tgt-rot-mat matrix :inline :offset-assert 384)
(tgt-face-mat matrix :inline :offset-assert 448)
(tpos-old vector :inline :offset-assert 512)
(tpos-curr vector :inline :offset-assert 528)
(target-height float :offset-assert 544)
(tpos-old-adj vector :inline :offset-assert 560)
(tpos-curr-adj vector :inline :offset-assert 576)
(tpos-tgt vector :inline :offset-assert 592)
(upspeed float :offset-assert 608)
(pitch-off vector :inline :offset-assert 624)
(foot-offset float :offset-assert 640)
(head-offset float :offset-assert 644)
(target-spline tracking-spline :inline :offset-assert 656)
(ease-from vector :inline :offset-assert 2304)
(ease-t float :offset-assert 2320)
(ease-step float :offset-assert 2324)
(ease-to vector :inline :offset-assert 2336)
(outro-curve curve :inline :offset-assert 2352)
(outro-t float :offset-assert 2372)
(outro-t-step float :offset-assert 2376)
(outro-exit-value float :offset-assert 2380)
(water-drip-time time-frame :offset-assert 2384)
(water-drip sparticle-launch-control :offset-assert 2392)
(water-drip-mult float :offset-assert 2396)
(water-drip-speed float :offset-assert 2400)
((master-options uint32)
(num-slaves int32)
(slave (pointer camera-slave) 2)
(slave-options uint32)
(view-off-param-save float)
(changer uint32)
(cam-entity entity)
(stringMinLength float)
(stringMaxLength float)
(stringMinHeight float)
(stringMaxHeight float)
(string-min cam-vector-seeker :inline)
(string-max cam-vector-seeker :inline)
(string-push-z float)
(stringCliffHeight float)
(no-intro uint32)
(force-blend uint32)
(force-blend-time uint32)
(local-down vector :inline)
(drawable-target handle)
(which-bone int32)
(pov-handle handle)
(pov-bone int32)
(being-attacked symbol)
(attack-start time-frame)
(on-ground symbol)
(under-water int32)
(on-pole symbol)
(tgt-rot-mat matrix :inline)
(tgt-face-mat matrix :inline)
(tpos-old vector :inline)
(tpos-curr vector :inline)
(target-height float)
(tpos-old-adj vector :inline)
(tpos-curr-adj vector :inline)
(tpos-tgt vector :inline)
(upspeed float)
(pitch-off vector :inline)
(foot-offset float)
(head-offset float)
(target-spline tracking-spline :inline)
(ease-from vector :inline)
(ease-t float)
(ease-step float)
(ease-to vector :inline)
(outro-curve curve :inline)
(outro-t float)
(outro-t-step float)
(outro-exit-value float)
(water-drip-time time-frame)
(water-drip sparticle-launch-control)
(water-drip-mult float)
(water-drip-speed float)
)
:heap-base #x900
:method-count-assert 14
:size-assert #x964
:flag-assert #xe09000964
(:states
cam-master-active
list-keeper-active
@@ -638,7 +602,7 @@
)
;; definition for method 3 of type camera-master
(defmethod inspect camera-master ((this camera-master))
(defmethod inspect ((this camera-master))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
+14 -14
View File
@@ -357,7 +357,7 @@
;; definition for method 9 of type cam-index
;; INFO: Used lq/sq
(defmethod cam-index-method-9 cam-index ((this cam-index) (arg0 symbol) (arg1 entity) (arg2 vector) (arg3 curve))
(defmethod cam-index-method-9 ((this cam-index) (arg0 symbol) (arg1 entity) (arg2 vector) (arg3 curve))
(local-vars (sv-32 (function _varargs_ object)))
(format (clear *cam-res-string*) "~S-flags" arg0)
(set! (-> this flags) (the-as cam-index-options (cam-slave-get-flags arg1 (string->symbol *res-key-string*))))
@@ -435,7 +435,7 @@
;; definition for method 10 of type cam-index
;; INFO: Used lq/sq
(defmethod cam-index-method-10 cam-index ((this cam-index) (arg0 vector))
(defmethod cam-index-method-10 ((this cam-index) (arg0 vector))
(let ((s5-0 (new-stack-vector0)))
0.0
(vector-! s5-0 arg0 (the-as vector (-> this vec)))
@@ -457,7 +457,7 @@
;; definition for method 10 of type tracking-spline
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-10 tracking-spline ((this tracking-spline) (arg0 vector))
(defmethod tracking-spline-method-10 ((this tracking-spline) (arg0 vector))
(set! (-> this point 0 position quad) (-> arg0 quad))
(set! (-> this point 0 next) -134250495)
(set! (-> this summed-len) 0.0)
@@ -483,7 +483,7 @@
;; definition for method 13 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-13 tracking-spline ((this tracking-spline) (arg0 int))
(defmethod tracking-spline-method-13 ((this tracking-spline) (arg0 int))
(let ((v1-3 (-> this point arg0 next)))
(cond
((= v1-3 -134250495)
@@ -518,7 +518,7 @@
;; definition for method 14 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-14 tracking-spline ((this tracking-spline) (arg0 tracking-spline-sampler))
(defmethod tracking-spline-method-14 ((this tracking-spline) (arg0 tracking-spline-sampler))
(let ((v1-0 (-> this used-point)))
(set! (-> this partial-point) (-> arg0 partial-pt))
(when (= (-> this next-to-last-point) v1-0)
@@ -559,7 +559,7 @@
;; definition for method 15 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-15 tracking-spline ((this tracking-spline))
(defmethod tracking-spline-method-15 ((this tracking-spline))
(let ((s5-0 (new 'stack-no-clear 'tracking-spline-sampler)))
(let ((a2-0 (new 'stack-no-clear 'tracking-point)))
(set! (-> s5-0 cur-pt) (-> this used-point))
@@ -607,7 +607,7 @@
;; definition for method 16 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-16 tracking-spline ((this tracking-spline) (arg0 float))
(defmethod tracking-spline-method-16 ((this tracking-spline) (arg0 float))
(let ((s4-0 (new 'stack-no-clear 'tracking-spline-sampler)))
(let ((a2-0 (new 'stack-no-clear 'vector)))
(set! (-> s4-0 cur-pt) (-> this used-point))
@@ -647,7 +647,7 @@
;; definition for method 17 of type tracking-spline
;; INFO: Used lq/sq
(defmethod tracking-spline-method-17 tracking-spline ((this tracking-spline) (arg0 vector) (arg1 float) (arg2 float) (arg3 symbol))
(defmethod tracking-spline-method-17 ((this tracking-spline) (arg0 vector) (arg1 float) (arg2 float) (arg3 symbol))
(let ((s3-0 (-> this free-point))
(s2-0 (-> this end-point))
)
@@ -689,7 +689,7 @@
)
;; definition for method 18 of type tracking-spline
(defmethod tracking-spline-method-18 tracking-spline ((this tracking-spline) (arg0 float) (arg1 vector) (arg2 tracking-spline-sampler))
(defmethod tracking-spline-method-18 ((this tracking-spline) (arg0 float) (arg1 vector) (arg2 tracking-spline-sampler))
(local-vars (f0-4 float))
(when (not arg2)
(set! arg2 (new 'stack-no-clear 'tracking-spline-sampler))
@@ -732,7 +732,7 @@
)
;; definition for method 19 of type tracking-spline
(defmethod tracking-spline-method-19 tracking-spline ((this tracking-spline) (arg0 float) (arg1 vector) (arg2 tracking-spline-sampler))
(defmethod tracking-spline-method-19 ((this tracking-spline) (arg0 float) (arg1 vector) (arg2 tracking-spline-sampler))
(vector-reset! arg1)
(tracking-spline-method-18 this arg0 arg1 arg2)
arg1
@@ -740,7 +740,7 @@
;; definition for method 20 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-20 tracking-spline ((this tracking-spline) (arg0 vector) (arg1 int))
(defmethod tracking-spline-method-20 ((this tracking-spline) (arg0 vector) (arg1 int))
(let ((s3-0 (new 'stack-no-clear 'vector)))
(vector-!
s3-0
@@ -830,7 +830,7 @@
;; definition for method 21 of type tracking-spline
;; INFO: Used lq/sq
(defmethod tracking-spline-method-21 tracking-spline ((this tracking-spline) (arg0 vector) (arg1 float) (arg2 float))
(defmethod tracking-spline-method-21 ((this tracking-spline) (arg0 vector) (arg1 float) (arg2 float))
(let ((v1-0 (-> this used-point))
(f0-0 (-> this partial-point))
)
@@ -880,7 +880,7 @@
;; definition for method 22 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-22 tracking-spline ((this tracking-spline) (arg0 float))
(defmethod tracking-spline-method-22 ((this tracking-spline) (arg0 float))
(when (< arg0 (-> this summed-len))
(let ((s5-0 (new 'stack-no-clear 'tracking-spline-sampler)))
(let ((a2-0 (new 'stack-no-clear 'vector)))
@@ -897,7 +897,7 @@
;; definition for method 9 of type tracking-spline
;; INFO: Return type mismatch int vs none.
(defmethod tracking-spline-method-9 tracking-spline ((this tracking-spline))
(defmethod tracking-spline-method-9 ((this tracking-spline))
(let ((v1-0 (-> this used-point))
(s4-0 0)
(s5-0 0)
+22 -24
View File
@@ -3,36 +3,34 @@
;; definition of type pov-camera
(deftype pov-camera (process-drawable)
((cspace-array cspace-array :offset 112)
(flags pov-camera-flag :offset-assert 176)
(debounce-start-time time-frame :offset-assert 184)
(notify-handle handle :offset-assert 192)
(anim-name string :offset-assert 200)
(command-list pair :offset-assert 204)
(mask-to-clear process-mask :offset-assert 208)
(music-volume-movie float :offset-assert 212)
(sfx-volume-movie float :offset-assert 216)
((cspace-array cspace-array :overlay-at root)
(flags pov-camera-flag)
(debounce-start-time time-frame)
(notify-handle handle)
(anim-name string)
(command-list pair)
(mask-to-clear process-mask)
(music-volume-movie float)
(sfx-volume-movie float)
)
:heap-base #x70
:method-count-assert 30
:size-assert #xdc
:flag-assert #x1e007000dc
(:state-methods
pov-camera-abort
pov-camera-done-playing
pov-camera-playing
pov-camera-start-playing
pov-camera-startup
)
(:methods
(pov-camera-abort () _type_ :state 20)
(pov-camera-done-playing () _type_ :state 21)
(pov-camera-playing () _type_ :state 22)
(pov-camera-start-playing () _type_ :state 23)
(pov-camera-startup () _type_ :state 24)
(check-for-abort (_type_) symbol 25)
(target-grabbed? (_type_) symbol 26)
(pre-startup-callback (_type_) none 27)
(target-released? () symbol 28)
(set-stack-size! (_type_) none 29)
(check-for-abort (_type_) symbol)
(target-grabbed? (_type_) symbol)
(pre-startup-callback (_type_) none)
(target-released? (_type_) symbol)
(set-stack-size! (_type_) none)
)
)
;; definition for method 3 of type pov-camera
(defmethod inspect pov-camera ((this pov-camera))
(defmethod inspect ((this pov-camera))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
+6 -6
View File
@@ -2,7 +2,7 @@
(in-package goal)
;; definition for method 25 of type pov-camera
(defmethod check-for-abort pov-camera ((this pov-camera))
(defmethod check-for-abort ((this pov-camera))
(when (or (and (time-elapsed? (-> this debounce-start-time) (seconds 0.2)) (cpad-pressed? 0 triangle))
(logtest? (-> this flags) (pov-camera-flag allow-abort))
)
@@ -16,12 +16,12 @@
)
;; definition for method 26 of type pov-camera
(defmethod target-grabbed? pov-camera ((this pov-camera))
(defmethod target-grabbed? ((this pov-camera))
(or (not *target*) (process-grab? *target*))
)
;; definition for method 28 of type pov-camera
(defmethod target-released? pov-camera ()
(defmethod target-released? ((this pov-camera))
(or (not *target*) (process-release? *target*))
)
@@ -152,7 +152,7 @@
(defstate pov-camera-done-playing (pov-camera)
:virtual #t
:code (behavior ()
(while (begin self (not ((method-of-object self target-released?))))
(while (not (target-released? self))
(suspend)
)
(send-event (handle->process (-> self notify-handle)) 'notify 'die)
@@ -165,14 +165,14 @@
;; definition for method 27 of type pov-camera
;; INFO: Return type mismatch int vs none.
(defmethod pre-startup-callback pov-camera ((this pov-camera))
(defmethod pre-startup-callback ((this pov-camera))
0
(none)
)
;; definition for method 29 of type pov-camera
;; INFO: Return type mismatch symbol vs none.
(defmethod set-stack-size! pov-camera ((this pov-camera))
(defmethod set-stack-size! ((this pov-camera))
(none)
)
+91 -121
View File
@@ -3,20 +3,17 @@
;; definition of type collide-using-spheres-params
(deftype collide-using-spheres-params (structure)
((spheres (inline-array sphere) :offset-assert 0)
(num-spheres uint32 :offset-assert 4)
(collide-with collide-kind :offset-assert 8)
(proc process-drawable :offset-assert 16)
(ignore-pat pat-surface :offset-assert 20)
(solid-only basic :offset-assert 24)
((spheres (inline-array sphere))
(num-spheres uint32)
(collide-with collide-kind)
(proc process-drawable)
(ignore-pat pat-surface)
(solid-only basic)
)
:method-count-assert 9
:size-assert #x1c
:flag-assert #x90000001c
)
;; definition for method 3 of type collide-using-spheres-params
(defmethod inspect collide-using-spheres-params ((this collide-using-spheres-params))
(defmethod inspect ((this collide-using-spheres-params))
(format #t "[~8x] ~A~%" this 'collide-using-spheres-params)
(format #t "~Tspheres: #x~X~%" (-> this spheres))
(format #t "~Tnum-spheres: ~D~%" (-> this num-spheres))
@@ -29,16 +26,13 @@
;; definition of type collide-puss-sphere
(deftype collide-puss-sphere (structure)
((bsphere sphere :inline :offset-assert 0)
(bbox4w bounding-box4w :inline :offset-assert 16)
((bsphere sphere :inline)
(bbox4w bounding-box4w :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type collide-puss-sphere
(defmethod inspect collide-puss-sphere ((this collide-puss-sphere))
(defmethod inspect ((this collide-puss-sphere))
(format #t "[~8x] ~A~%" this 'collide-puss-sphere)
(format #t "~Tbsphere: #<sphere @ #x~X>~%" (-> this bsphere))
(format #t "~Tbbox4w: #<bounding-box4w @ #x~X>~%" (-> this bbox4w))
@@ -47,23 +41,20 @@
;; definition of type collide-puss-work
(deftype collide-puss-work (structure)
((closest-pt vector :inline :offset-assert 0)
(tri-normal vector :inline :offset-assert 16)
(tri-bbox4w bounding-box4w :inline :offset-assert 32)
(spheres-bbox4w bounding-box4w :inline :offset-assert 64)
(spheres collide-puss-sphere 64 :inline :offset-assert 96)
((closest-pt vector :inline)
(tri-normal vector :inline)
(tri-bbox4w bounding-box4w :inline)
(spheres-bbox4w bounding-box4w :inline)
(spheres collide-puss-sphere 64 :inline)
)
:method-count-assert 11
:size-assert #xc60
:flag-assert #xb00000c60
(:methods
(collide-puss-work-method-9 (_type_ object object) symbol 9)
(collide-puss-work-method-10 (_type_ object object) symbol 10)
(collide-puss-work-method-9 (_type_ object object) symbol)
(collide-puss-work-method-10 (_type_ object object) symbol)
)
)
;; definition for method 3 of type collide-puss-work
(defmethod inspect collide-puss-work ((this collide-puss-work))
(defmethod inspect ((this collide-puss-work))
(format #t "[~8x] ~A~%" this 'collide-puss-work)
(format #t "~Tclosest-pt: #<vector @ #x~X>~%" (-> this closest-pt))
(format #t "~Ttri-normal: #<vector @ #x~X>~%" (-> this tri-normal))
@@ -75,19 +66,16 @@
;; definition of type collide-puyp-work
(deftype collide-puyp-work (structure)
((best-u float :offset-assert 0)
(ignore-pat pat-surface :offset-assert 4)
(tri-out collide-tri-result :offset-assert 8)
(start-pos vector :inline :offset-assert 16)
(move-dist vector :inline :offset-assert 32)
((best-u float)
(ignore-pat pat-surface)
(tri-out collide-tri-result)
(start-pos vector :inline)
(move-dist vector :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type collide-puyp-work
(defmethod inspect collide-puyp-work ((this collide-puyp-work))
(defmethod inspect ((this collide-puyp-work))
(format #t "[~8x] ~A~%" this 'collide-puyp-work)
(format #t "~Tbest-u: ~f~%" (-> this best-u))
(format #t "~Tignore-pat: ~D~%" (-> this ignore-pat))
@@ -99,20 +87,17 @@
;; definition of type collide-cache-tri
(deftype collide-cache-tri (structure)
((vertex vector 3 :inline :offset-assert 0)
(extra-quad uint128 :offset 48)
(pat pat-surface :offset 48)
(prim-index uint16 :offset 52)
(user16 uint16 :offset 54)
(user32 uint32 2 :offset 56)
((vertex vector 3 :inline)
(extra-quad uint128 :offset 48)
(pat pat-surface :overlay-at extra-quad)
(prim-index uint16 :offset 52)
(user16 uint16 :offset 54)
(user32 uint32 2 :offset 56)
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
)
;; definition for method 3 of type collide-cache-tri
(defmethod inspect collide-cache-tri ((this collide-cache-tri))
(defmethod inspect ((this collide-cache-tri))
(format #t "[~8x] ~A~%" this 'collide-cache-tri)
(format #t "~Tvertex[3] @ #x~X~%" (-> this vertex))
(format #t "~Textra-quad[16] @ #x~X~%" (&-> this extra-quad))
@@ -125,30 +110,27 @@
;; definition of type collide-cache-prim
(deftype collide-cache-prim (structure)
((prim-core collide-prim-core :inline :offset-assert 0)
(extra-quad uint128 :offset-assert 32)
(ccache collide-cache :offset 32)
(prim collide-shape-prim :offset 36)
(first-tri uint16 :offset 40)
(num-tris uint16 :offset 42)
(unused uint8 4 :offset 44)
(world-sphere vector :inline :offset 0)
(collide-as collide-kind :offset 16)
(action collide-action :offset 24)
(offense collide-offense :offset 28)
(prim-type int8 :offset 29)
((prim-core collide-prim-core :inline)
(extra-quad uint128)
(ccache collide-cache :overlay-at extra-quad)
(prim collide-shape-prim :offset 36)
(first-tri uint16 :offset 40)
(num-tris uint16 :offset 42)
(unused uint8 4 :offset 44)
(world-sphere vector :inline :overlay-at (-> prim-core world-sphere))
(collide-as collide-kind :overlay-at (-> prim-core collide-as))
(action collide-action :overlay-at (-> prim-core action))
(offense collide-offense :overlay-at (-> prim-core offense))
(prim-type int8 :overlay-at (-> prim-core prim-type))
)
:method-count-assert 11
:size-assert #x30
:flag-assert #xb00000030
(:methods
(resolve-moving-sphere-tri (_type_ collide-tri-result collide-prim-core vector float collide-action) float 9)
(resolve-moving-sphere-sphere (_type_ collide-tri-result collide-prim-core vector float collide-action) float 10)
(resolve-moving-sphere-tri (_type_ collide-tri-result collide-prim-core vector float collide-action) float)
(resolve-moving-sphere-sphere (_type_ collide-tri-result collide-prim-core vector float collide-action) float)
)
)
;; definition for method 3 of type collide-cache-prim
(defmethod inspect collide-cache-prim ((this collide-cache-prim))
(defmethod inspect ((this collide-cache-prim))
(format #t "[~8x] ~A~%" this 'collide-cache-prim)
(format #t "~Tprim-core: #<collide-prim-core @ #x~X>~%" (-> this prim-core))
(format #t "~Textra-quad[16] @ #x~X~%" (&-> this extra-quad))
@@ -167,50 +149,47 @@
;; definition of type collide-cache
(deftype collide-cache (basic)
((num-tris int32 :offset-assert 4)
(num-prims int32 :offset-assert 8)
(num-prims-u uint32 :offset 8)
(ignore-mask pat-surface :offset-assert 12)
(proc process-drawable :offset-assert 16)
(collide-box bounding-box :inline :offset-assert 32)
(collide-box4w bounding-box4w :inline :offset-assert 64)
(collide-with collide-kind :offset-assert 96)
(prims collide-cache-prim 100 :inline :offset-assert 112)
(tris collide-cache-tri 461 :inline :offset-assert 4912)
((num-tris int32)
(num-prims int32)
(num-prims-u uint32 :overlay-at num-prims)
(ignore-mask pat-surface)
(proc process-drawable)
(collide-box bounding-box :inline)
(collide-box4w bounding-box4w :inline)
(collide-with collide-kind)
(prims collide-cache-prim 100 :inline)
(tris collide-cache-tri 461 :inline)
)
:method-count-assert 33
:size-assert #x8670
:flag-assert #x2100008670
(:methods
(debug-draw (_type_) none 9)
(fill-and-probe-using-line-sphere (_type_ vector vector float collide-kind process collide-tri-result pat-surface) float 10)
(fill-and-probe-using-spheres (_type_ collide-using-spheres-params) symbol 11)
(fill-and-probe-using-y-probe (_type_ vector float collide-kind process-drawable collide-tri-result pat-surface) float 12)
(fill-using-bounding-box (_type_ bounding-box collide-kind process-drawable pat-surface) none 13)
(fill-using-line-sphere (_type_ vector vector float collide-kind process-drawable pat-surface) none 14)
(fill-using-spheres (_type_ collide-using-spheres-params) none 15)
(fill-using-y-probe (_type_ vector float collide-kind process-drawable pat-surface) none 16)
(initialize (_type_) none 17)
(probe-using-line-sphere (_type_ vector vector float collide-kind collide-tri-result pat-surface) float 18)
(probe-using-spheres (_type_ collide-using-spheres-params) symbol 19)
(probe-using-y-probe (_type_ vector float collide-kind collide-tri-result pat-surface) float 20)
(fill-from-background (_type_ (function bsp-header int collide-list none) (function collide-cache object none)) none 21)
(fill-from-foreground-using-box (_type_) none 22)
(fill-from-foreground-using-line-sphere (_type_) none 23)
(fill-from-foreground-using-y-probe (_type_) none 24)
(fill-from-water (_type_ water-control) none 25)
(load-mesh-from-spad-in-box (_type_ collide-frag-mesh) none 26)
(collide-cache-method-27 (_type_) none 27)
(collide-cache-method-28 (_type_) none 28)
(collide-cache-method-29 (_type_ collide-frag-mesh) none 29)
(puyp-mesh (_type_ collide-puyp-work collide-cache-prim) none 30)
(puyp-sphere (_type_ collide-puyp-work collide-cache-prim) vector 31)
(unpack-background-collide-mesh (_type_ object object object) none 32)
(debug-draw (_type_) none)
(fill-and-probe-using-line-sphere (_type_ vector vector float collide-kind process collide-tri-result pat-surface) float)
(fill-and-probe-using-spheres (_type_ collide-using-spheres-params) symbol)
(fill-and-probe-using-y-probe (_type_ vector float collide-kind process-drawable collide-tri-result pat-surface) float)
(fill-using-bounding-box (_type_ bounding-box collide-kind process-drawable pat-surface) none)
(fill-using-line-sphere (_type_ vector vector float collide-kind process-drawable pat-surface) none)
(fill-using-spheres (_type_ collide-using-spheres-params) none)
(fill-using-y-probe (_type_ vector float collide-kind process-drawable pat-surface) none)
(initialize (_type_) none)
(probe-using-line-sphere (_type_ vector vector float collide-kind collide-tri-result pat-surface) float)
(probe-using-spheres (_type_ collide-using-spheres-params) symbol)
(probe-using-y-probe (_type_ vector float collide-kind collide-tri-result pat-surface) float)
(fill-from-background (_type_ (function bsp-header int collide-list none) (function collide-cache object none)) none)
(fill-from-foreground-using-box (_type_) none)
(fill-from-foreground-using-line-sphere (_type_) none)
(fill-from-foreground-using-y-probe (_type_) none)
(fill-from-water (_type_ water-control) none)
(load-mesh-from-spad-in-box (_type_ collide-frag-mesh) none)
(collide-cache-method-27 (_type_) none)
(collide-cache-method-28 (_type_) none)
(collide-cache-method-29 (_type_ collide-frag-mesh) none)
(puyp-mesh (_type_ collide-puyp-work collide-cache-prim) none)
(puyp-sphere (_type_ collide-puyp-work collide-cache-prim) vector)
(unpack-background-collide-mesh (_type_ object object object) none)
)
)
;; definition for method 3 of type collide-cache
(defmethod inspect collide-cache ((this collide-cache))
(defmethod inspect ((this collide-cache))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tnum-tris: ~D~%" (-> this num-tris))
(format #t "~Tnum-prims: ~D~%" (-> this num-prims))
@@ -226,16 +205,13 @@
;; definition of type collide-list-item
(deftype collide-list-item (structure)
((mesh collide-frag-mesh :offset-assert 0)
(inst basic :offset-assert 4)
((mesh collide-frag-mesh)
(inst basic)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type collide-list-item
(defmethod inspect collide-list-item ((this collide-list-item))
(defmethod inspect ((this collide-list-item))
(format #t "[~8x] ~A~%" this 'collide-list-item)
(format #t "~Tmesh: ~A~%" (-> this mesh))
(format #t "~Tinst: ~A~%" (-> this inst))
@@ -244,16 +220,13 @@
;; definition of type collide-list
(deftype collide-list (structure)
((num-items int32 :offset-assert 0)
(items collide-list-item 256 :inline :offset-assert 16)
((num-items int32)
(items collide-list-item 256 :inline)
)
:method-count-assert 9
:size-assert #x1010
:flag-assert #x900001010
)
;; definition for method 3 of type collide-list
(defmethod inspect collide-list ((this collide-list))
(defmethod inspect ((this collide-list))
(format #t "[~8x] ~A~%" this 'collide-list)
(format #t "~Tnum-items: ~D~%" (-> this num-items))
(format #t "~Titems[256] @ #x~X~%" (-> this items))
@@ -262,17 +235,14 @@
;; definition of type collide-work
(deftype collide-work (structure)
((collide-sphere-neg-r sphere :inline :offset-assert 0)
(collide-box4w bounding-box4w :inline :offset-assert 16)
(inv-mat matrix :inline :offset-assert 48)
((collide-sphere-neg-r sphere :inline)
(collide-box4w bounding-box4w :inline)
(inv-mat matrix :inline)
)
:method-count-assert 9
:size-assert #x70
:flag-assert #x900000070
)
;; definition for method 3 of type collide-work
(defmethod inspect collide-work ((this collide-work))
(defmethod inspect ((this collide-work))
(format #t "[~8x] ~A~%" this 'collide-work)
(format #t "~Tcollide-sphere-neg-r: #<sphere @ #x~X>~%" (-> this collide-sphere-neg-r))
(format #t "~Tcollide-box4w: #<bounding-box4w @ #x~X>~%" (-> this collide-box4w))
+77 -95
View File
@@ -3,30 +3,27 @@
;; definition of type edge-grab-info
(deftype edge-grab-info (structure)
((world-vertex vector 6 :inline :offset-assert 0)
(local-vertex vector 6 :inline :offset-assert 96)
(actor-cshape-prim-offset int32 :offset-assert 192)
(actor-handle handle :offset-assert 200)
(hanging-matrix matrix :inline :offset-assert 208)
(edge-vertex vector 2 :inline :offset 0)
(center-hold vector :inline :offset 32)
(tri-vertex vector 3 :inline :offset 48)
(left-hand-hold vector :inline :offset-assert 272)
(right-hand-hold vector :inline :offset-assert 288)
(center-hold-old vector :inline :offset-assert 304)
(edge-tri-pat uint32 :offset-assert 320)
((world-vertex vector 6 :inline)
(local-vertex vector 6 :inline)
(actor-cshape-prim-offset int32)
(actor-handle handle)
(hanging-matrix matrix :inline)
(edge-vertex vector 2 :inline :overlay-at (-> world-vertex 0))
(center-hold vector :inline :overlay-at (-> world-vertex 2))
(tri-vertex vector 3 :inline :overlay-at (-> world-vertex 3))
(left-hand-hold vector :inline)
(right-hand-hold vector :inline)
(center-hold-old vector :inline)
(edge-tri-pat uint32)
)
:method-count-assert 11
:size-assert #x144
:flag-assert #xb00000144
(:methods
(edge-grab-info-method-9 (_type_) symbol 9)
(debug-draw (_type_) symbol 10)
(edge-grab-info-method-9 (_type_) symbol)
(debug-draw (_type_) symbol)
)
)
;; definition for method 3 of type edge-grab-info
(defmethod inspect edge-grab-info ((this edge-grab-info))
(defmethod inspect ((this edge-grab-info))
(format #t "[~8x] ~A~%" this 'edge-grab-info)
(format #t "~Tworld-vertex[6] @ #x~X~%" (-> this world-vertex))
(format #t "~Tlocal-vertex[6] @ #x~X~%" (-> this local-vertex))
@@ -45,16 +42,13 @@
;; definition of type collide-edge-tri
(deftype collide-edge-tri (structure)
((ctri collide-cache-tri :offset-assert 0)
(normal vector :inline :offset-assert 16)
((ctri collide-cache-tri)
(normal vector :inline)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type collide-edge-tri
(defmethod inspect collide-edge-tri ((this collide-edge-tri))
(defmethod inspect ((this collide-edge-tri))
(format #t "[~8x] ~A~%" this 'collide-edge-tri)
(format #t "~Tctri: #<collide-cache-tri @ #x~X>~%" (-> this ctri))
(format #t "~Tnormal: #<vector @ #x~X>~%" (-> this normal))
@@ -63,19 +57,16 @@
;; definition of type collide-edge-edge
(deftype collide-edge-edge (structure)
((ignore basic :offset-assert 0)
(etri collide-edge-tri :offset-assert 4)
(vertex-ptr (inline-array vector) 2 :offset-assert 8)
(outward vector :inline :offset-assert 16)
(edge-vec-norm vector :inline :offset-assert 32)
((ignore basic)
(etri collide-edge-tri)
(vertex-ptr (inline-array vector) 2)
(outward vector :inline)
(edge-vec-norm vector :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type collide-edge-edge
(defmethod inspect collide-edge-edge ((this collide-edge-edge))
(defmethod inspect ((this collide-edge-edge))
(format #t "[~8x] ~A~%" this 'collide-edge-edge)
(format #t "~Tignore: ~A~%" (-> this ignore))
(format #t "~Tetri: #<collide-edge-tri @ #x~X>~%" (-> this etri))
@@ -87,20 +78,17 @@
;; definition of type collide-edge-hold-item
(deftype collide-edge-hold-item (structure)
((next collide-edge-hold-item :offset-assert 0)
(rating float :offset-assert 4)
(split int8 :offset-assert 8)
(edge collide-edge-edge :offset-assert 12)
(center-pt vector :inline :offset-assert 16)
(outward-pt vector :inline :offset-assert 32)
((next collide-edge-hold-item)
(rating float)
(split int8)
(edge collide-edge-edge)
(center-pt vector :inline)
(outward-pt vector :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type collide-edge-hold-item
(defmethod inspect collide-edge-hold-item ((this collide-edge-hold-item))
(defmethod inspect ((this collide-edge-hold-item))
(format #t "[~8x] ~A~%" this 'collide-edge-hold-item)
(format #t "~Tnext: #<collide-edge-hold-item @ #x~X>~%" (-> this next))
(format #t "~Trating: ~f~%" (-> this rating))
@@ -113,23 +101,20 @@
;; definition of type collide-edge-hold-list
(deftype collide-edge-hold-list (structure)
((num-allocs uint32 :offset-assert 0)
(num-attempts uint32 :offset-assert 4)
(head collide-edge-hold-item :offset-assert 8)
(items collide-edge-hold-item 32 :inline :offset-assert 16)
(attempts qword 32 :inline :offset-assert 1552)
((num-allocs uint32)
(num-attempts uint32)
(head collide-edge-hold-item)
(items collide-edge-hold-item 32 :inline)
(attempts qword 32 :inline)
)
:method-count-assert 11
:size-assert #x810
:flag-assert #xb00000810
(:methods
(debug-draw (_type_) object 9)
(add-to-list! (_type_ collide-edge-hold-item) none 10)
(debug-draw (_type_) object)
(add-to-list! (_type_ collide-edge-hold-item) none)
)
)
;; definition for method 3 of type collide-edge-hold-list
(defmethod inspect collide-edge-hold-list ((this collide-edge-hold-list))
(defmethod inspect ((this collide-edge-hold-list))
(format #t "[~8x] ~A~%" this 'collide-edge-hold-list)
(format #t "~Tnum-allocs: ~D~%" (-> this num-allocs))
(format #t "~Tnum-attempts: ~D~%" (-> this num-attempts))
@@ -141,53 +126,50 @@
;; definition of type collide-edge-work
(deftype collide-edge-work (structure)
((ccache collide-cache :offset-assert 0)
(cshape collide-shape :offset-assert 4)
(num-verts uint32 :offset-assert 8)
(num-edges uint32 :offset-assert 12)
(num-tris uint32 :offset-assert 16)
(cache-fill-box bounding-box :inline :offset-assert 32)
(within-reach-box bounding-box :inline :offset-assert 64)
(within-reach-box4w bounding-box4w :inline :offset-assert 96)
(search-pt vector :inline :offset-assert 128)
(search-dir-vec vector :inline :offset-assert 144)
(max-dist-sqrd-to-outward-pt float :offset-assert 160)
(max-dir-cosa-delta float :offset-assert 164)
(split-dists float 2 :offset-assert 168)
(outward-offset vector :inline :offset-assert 176)
(local-cache-fill-box bounding-box :inline :offset-assert 192)
(local-within-reach-box bounding-box :inline :offset-assert 224)
(local-player-spheres sphere 12 :inline :offset-assert 256)
(world-player-spheres sphere 12 :inline :offset-assert 448)
(local-player-hanging-spheres sphere 6 :inline :offset 256)
(world-player-hanging-spheres sphere 6 :inline :offset 448)
(local-player-leap-up-spheres sphere 6 :inline :offset 352)
(world-player-leap-up-spheres sphere 6 :inline :offset 544)
(verts vector 64 :inline :offset-assert 640)
(edges collide-edge-edge 96 :inline :offset-assert 1664)
(tris collide-edge-tri 48 :inline :offset-assert 6272)
(hold-list collide-edge-hold-list :inline :offset-assert 7808)
((ccache collide-cache)
(cshape collide-shape)
(num-verts uint32)
(num-edges uint32)
(num-tris uint32)
(cache-fill-box bounding-box :inline)
(within-reach-box bounding-box :inline)
(within-reach-box4w bounding-box4w :inline)
(search-pt vector :inline)
(search-dir-vec vector :inline)
(max-dist-sqrd-to-outward-pt float)
(max-dir-cosa-delta float)
(split-dists float 2)
(outward-offset vector :inline)
(local-cache-fill-box bounding-box :inline)
(local-within-reach-box bounding-box :inline)
(local-player-spheres sphere 12 :inline)
(world-player-spheres sphere 12 :inline)
(local-player-hanging-spheres sphere 6 :inline :overlay-at (-> local-player-spheres 0))
(world-player-hanging-spheres sphere 6 :inline :overlay-at (-> world-player-spheres 0))
(local-player-leap-up-spheres sphere 6 :inline :overlay-at (-> local-player-spheres 6))
(world-player-leap-up-spheres sphere 6 :inline :overlay-at (-> world-player-spheres 6))
(verts vector 64 :inline)
(edges collide-edge-edge 96 :inline)
(tris collide-edge-tri 48 :inline)
(hold-list collide-edge-hold-list :inline)
)
:method-count-assert 20
:size-assert #x2690
:flag-assert #x1400002690
(:methods
(search-for-edges (_type_ collide-edge-hold-list) symbol 9)
(debug-draw-edges (_type_) object 10)
(debug-draw-tris (_type_) none 11)
(debug-draw-sphere (_type_) symbol 12)
(compute-center-point! (_type_ collide-edge-edge vector) float 13)
(collide-edge-work-method-14 (_type_ vector vector int) float 14)
(find-grabbable-edges! (_type_) none 15)
(find-grabbable-tris! (_type_) none 16)
(should-add-to-list? (_type_ collide-edge-hold-item collide-edge-edge) symbol 17)
(find-best-grab! (_type_ collide-edge-hold-list edge-grab-info) symbol 18)
(check-grab-for-collisions (_type_ collide-edge-hold-item edge-grab-info) symbol 19)
(search-for-edges (_type_ collide-edge-hold-list) symbol)
(debug-draw-edges (_type_) object)
(debug-draw-tris (_type_) none)
(debug-draw-sphere (_type_) symbol)
(compute-center-point! (_type_ collide-edge-edge vector) float)
(collide-edge-work-method-14 (_type_ vector vector int) float)
(find-grabbable-edges! (_type_) none)
(find-grabbable-tris! (_type_) none)
(should-add-to-list? (_type_ collide-edge-hold-item collide-edge-edge) symbol)
(find-best-grab! (_type_ collide-edge-hold-list edge-grab-info) symbol)
(check-grab-for-collisions (_type_ collide-edge-hold-item edge-grab-info) symbol)
)
)
;; definition for method 3 of type collide-edge-work
(defmethod inspect collide-edge-work ((this collide-edge-work))
(defmethod inspect ((this collide-edge-work))
(format #t "[~8x] ~A~%" this 'collide-edge-work)
(format #t "~Tccache: ~A~%" (-> this ccache))
(format #t "~Tcshape: ~A~%" (-> this cshape))
+17 -20
View File
@@ -4,7 +4,7 @@
;; definition for method 20 of type target
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs object.
(defmethod find-edge-grabs! target ((this target) (arg0 collide-cache))
(defmethod find-edge-grabs! ((this target) (arg0 collide-cache))
(rlet ((vf1 :class vf)
(vf2 :class vf)
(vf3 :class vf)
@@ -72,7 +72,7 @@
)
;; definition for method 9 of type collide-edge-work
(defmethod search-for-edges collide-edge-work ((this collide-edge-work) (arg0 collide-edge-hold-list))
(defmethod search-for-edges ((this collide-edge-work) (arg0 collide-edge-hold-list))
(set! (-> arg0 num-allocs) (the-as uint 0))
(set! (-> arg0 num-attempts) (the-as uint 0))
(set! (-> arg0 head) #f)
@@ -104,18 +104,15 @@
;; definition of type pbhp-stack-vars
(deftype pbhp-stack-vars (structure)
((edge collide-edge-edge :offset-assert 0)
(allocated basic :offset-assert 4)
(neg-hold-pt vector :inline :offset-assert 16)
(split-vec vector :inline :offset-assert 32)
((edge collide-edge-edge)
(allocated basic)
(neg-hold-pt vector :inline)
(split-vec vector :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type pbhp-stack-vars
(defmethod inspect pbhp-stack-vars ((this pbhp-stack-vars))
(defmethod inspect ((this pbhp-stack-vars))
(format #t "[~8x] ~A~%" this 'pbhp-stack-vars)
(format #t "~Tedge: #<collide-edge-edge @ #x~X>~%" (-> this edge))
(format #t "~Tallocated: ~A~%" (-> this allocated))
@@ -130,7 +127,7 @@
;; definition for method 19 of type collide-edge-work
;; INFO: Used lq/sq
(defmethod check-grab-for-collisions collide-edge-work ((this collide-edge-work) (arg0 collide-edge-hold-item) (arg1 edge-grab-info))
(defmethod check-grab-for-collisions ((this collide-edge-work) (arg0 collide-edge-hold-item) (arg1 edge-grab-info))
(local-vars (sv-144 (function vector vector vector float vector)) (sv-160 vector) (sv-176 vector))
(let* ((s3-0 (-> arg0 edge))
(s1-0 (-> s3-0 etri ctri))
@@ -225,7 +222,7 @@
;; definition for method 9 of type edge-grab-info
;; INFO: Used lq/sq
(defmethod edge-grab-info-method-9 edge-grab-info ((this edge-grab-info))
(defmethod edge-grab-info-method-9 ((this edge-grab-info))
(local-vars (v0-0 symbol) (v1-14 float))
(rlet ((acc :class vf)
(Q :class vf)
@@ -366,7 +363,7 @@
;; definition for method 14 of type collide-edge-work
;; INFO: Used lq/sq
(defmethod collide-edge-work-method-14 collide-edge-work ((this collide-edge-work) (arg0 vector) (arg1 vector) (arg2 int))
(defmethod collide-edge-work-method-14 ((this collide-edge-work) (arg0 vector) (arg1 vector) (arg2 int))
(let ((f30-0 -1.0))
(let ((s2-0 (new 'stack-no-clear 'vector)))
(dotimes (s1-0 (the-as int (-> this num-edges)))
@@ -390,7 +387,7 @@
;; definition for method 17 of type collide-edge-work
;; INFO: Used lq/sq
(defmethod should-add-to-list? collide-edge-work ((this collide-edge-work) (arg0 collide-edge-hold-item) (arg1 collide-edge-edge))
(defmethod should-add-to-list? ((this collide-edge-work) (arg0 collide-edge-hold-item) (arg1 collide-edge-edge))
(local-vars
(v1-1 uint128)
(v1-2 uint128)
@@ -483,7 +480,7 @@
)
;; definition for method 13 of type collide-edge-work
(defmethod compute-center-point! collide-edge-work ((this collide-edge-work) (arg0 collide-edge-edge) (arg1 vector))
(defmethod compute-center-point! ((this collide-edge-work) (arg0 collide-edge-edge) (arg1 vector))
(local-vars (v0-0 float) (v1-1 float) (v1-2 float) (v1-3 float))
(rlet ((Q :class vf)
(vf0 :class vf)
@@ -552,7 +549,7 @@
;; definition for method 10 of type edge-grab-info
;; INFO: Return type mismatch object vs symbol.
(defmethod debug-draw edge-grab-info ((this edge-grab-info))
(defmethod debug-draw ((this edge-grab-info))
(add-debug-line
#t
(bucket-id debug-no-zbuf)
@@ -606,7 +603,7 @@
)
;; definition for method 10 of type collide-edge-work
(defmethod debug-draw-edges collide-edge-work ((this collide-edge-work))
(defmethod debug-draw-edges ((this collide-edge-work))
(let ((gp-0 0))
(dotimes (s4-0 (the-as int (-> this num-edges)))
(let* ((s3-0 (-> this edges s4-0))
@@ -656,7 +653,7 @@
)
;; definition for method 12 of type collide-edge-work
(defmethod debug-draw-sphere collide-edge-work ((this collide-edge-work))
(defmethod debug-draw-sphere ((this collide-edge-work))
(dotimes (s5-0 (the-as int (-> this num-verts)))
(let ((a2-0 (-> this verts s5-0)))
(add-debug-sphere #t (bucket-id debug-no-zbuf) a2-0 819.2 (new 'static 'rgba :r #xff :g #xff :a #x80))
@@ -667,7 +664,7 @@
;; definition for method 9 of type collide-edge-hold-list
;; INFO: Used lq/sq
(defmethod debug-draw collide-edge-hold-list ((this collide-edge-hold-list))
(defmethod debug-draw ((this collide-edge-hold-list))
(let ((s4-0 (-> this head))
(s5-0 0)
)
@@ -721,7 +718,7 @@
;; definition for method 11 of type collide-edge-work
;; INFO: Return type mismatch symbol vs none.
(defmethod debug-draw-tris collide-edge-work ((this collide-edge-work))
(defmethod debug-draw-tris ((this collide-edge-work))
(dotimes (s5-0 (the-as int (-> this num-tris)))
(let* ((v1-3 (-> this tris s5-0 ctri))
(t1-0 (copy-and-set-field (-> *pat-mode-info* (-> v1-3 pat mode) color) a 64))
+17 -32
View File
@@ -4,14 +4,11 @@
;; definition of type collide-frag-vertex
(deftype collide-frag-vertex (vector)
()
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type collide-frag-vertex
;; INFO: Used lq/sq
(defmethod inspect collide-frag-vertex ((this collide-frag-vertex))
(defmethod inspect ((this collide-frag-vertex))
(format #t "[~8x] ~A~%" this 'collide-frag-vertex)
(format #t "~Tdata[4] @ #x~X~%" (&-> this x))
(format #t "~Tx: ~f~%" (-> this x))
@@ -24,23 +21,20 @@
;; definition of type collide-frag-mesh
(deftype collide-frag-mesh (basic)
((packed-data uint32 :offset-assert 4)
(pat-array uint32 :offset-assert 8)
(strip-data-len uint16 :offset-assert 12)
(poly-count uint16 :offset-assert 14)
(base-trans vector :inline :offset-assert 16)
(vertex-count uint8 :offset 28)
(vertex-data-qwc uint8 :offset 29)
(total-qwc uint8 :offset 30)
(unused uint8 :offset 31)
((packed-data uint32)
(pat-array uint32)
(strip-data-len uint16)
(poly-count uint16)
(base-trans vector :inline)
(vertex-count uint8 :overlay-at (-> base-trans w))
(vertex-data-qwc uint8 :offset 29)
(total-qwc uint8 :offset 30)
(unused uint8 :offset 31)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type collide-frag-mesh
(defmethod inspect collide-frag-mesh ((this collide-frag-mesh))
(defmethod inspect ((this collide-frag-mesh))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tpacked-data: #x~X~%" (-> this packed-data))
(format #t "~Tpat-array: #x~X~%" (-> this pat-array))
@@ -56,15 +50,12 @@
;; definition of type collide-fragment
(deftype collide-fragment (drawable)
((mesh collide-frag-mesh :offset 8)
((mesh collide-frag-mesh :offset 8)
)
:method-count-assert 18
:size-assert #x20
:flag-assert #x1200000020
)
;; definition for method 3 of type collide-fragment
(defmethod inspect collide-fragment ((this collide-fragment))
(defmethod inspect ((this collide-fragment))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -74,16 +65,13 @@
;; definition of type drawable-inline-array-collide-fragment
(deftype drawable-inline-array-collide-fragment (drawable-inline-array)
((data collide-fragment 1 :inline :offset-assert 32)
(pad uint32 :offset-assert 64)
((data collide-fragment 1 :inline)
(pad uint32)
)
:method-count-assert 18
:size-assert #x44
:flag-assert #x1200000044
)
;; definition for method 3 of type drawable-inline-array-collide-fragment
(defmethod inspect drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment))
(defmethod inspect ((this drawable-inline-array-collide-fragment))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -94,11 +82,8 @@
;; definition of type drawable-tree-collide-fragment
(deftype drawable-tree-collide-fragment (drawable-tree)
((data-override drawable-inline-array :offset 32)
((data-override drawable-inline-array :overlay-at (-> data 0))
)
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; failed to figure out what this is:
+17 -17
View File
@@ -2,13 +2,13 @@
(in-package goal)
;; definition for method 9 of type drawable-tree-collide-fragment
(defmethod login drawable-tree-collide-fragment ((this drawable-tree-collide-fragment))
(defmethod login ((this drawable-tree-collide-fragment))
this
)
;; definition for method 10 of type drawable-tree-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-tree-collide-fragment ((this drawable-tree-collide-fragment) (arg0 drawable-tree-collide-fragment) (arg1 display-frame))
(defmethod draw ((this drawable-tree-collide-fragment) (arg0 drawable-tree-collide-fragment) (arg1 display-frame))
(when *display-render-collision*
(dotimes (s4-0 (-> this length))
(draw (-> this data s4-0) (-> this data s4-0) arg1)
@@ -19,13 +19,13 @@
)
;; definition for method 16 of type drawable-tree-collide-fragment
(defmethod unpack-vis drawable-tree-collide-fragment ((this drawable-tree-collide-fragment) (arg0 (pointer int8)) (arg1 (pointer int8)))
(defmethod unpack-vis ((this drawable-tree-collide-fragment) (arg0 (pointer int8)) (arg1 (pointer int8)))
arg1
)
;; definition for method 11 of type drawable-tree-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-with-box drawable-tree-collide-fragment ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-with-box ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-with-box (-> this data-override) (-> this length) arg1)
0
(none)
@@ -33,7 +33,7 @@
;; definition for method 12 of type drawable-tree-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-y-probe drawable-tree-collide-fragment ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-y-probe ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-y-probe (-> this data-override) (-> this length) arg1)
0
(none)
@@ -41,7 +41,7 @@
;; definition for method 13 of type drawable-tree-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-ray drawable-tree-collide-fragment ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-ray ((this drawable-tree-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-ray (-> this data-override) (-> this length) arg1)
0
(none)
@@ -49,7 +49,7 @@
;; definition for method 8 of type collide-fragment
;; INFO: Return type mismatch int vs collide-fragment.
(defmethod mem-usage collide-fragment ((this collide-fragment) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this collide-fragment) (arg0 memory-usage-block) (arg1 int))
(let ((s5-0 (if (logtest? arg1 1)
53
50
@@ -82,23 +82,23 @@
)
;; definition for method 9 of type drawable-inline-array-collide-fragment
(defmethod login drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment))
(defmethod login ((this drawable-inline-array-collide-fragment))
this
)
;; definition for method 10 of type collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod draw collide-fragment ((this collide-fragment) (arg0 collide-fragment) (arg1 display-frame))
(defmethod draw ((this collide-fragment) (arg0 collide-fragment) (arg1 display-frame))
0
(none)
)
;; definition for method 10 of type drawable-inline-array-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment)
(arg0 drawable-inline-array-collide-fragment)
(arg1 display-frame)
)
(defmethod draw ((this drawable-inline-array-collide-fragment)
(arg0 drawable-inline-array-collide-fragment)
(arg1 display-frame)
)
(dotimes (s4-0 (-> this length))
(let ((s3-0 (-> this data s4-0)))
(if (sphere-cull (-> s3-0 bsphere))
@@ -112,7 +112,7 @@
;; definition for method 11 of type drawable-inline-array-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-with-box drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-with-box ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-with-box (the-as collide-fragment (-> this data)) (-> this length) arg1)
0
(none)
@@ -120,7 +120,7 @@
;; definition for method 12 of type drawable-inline-array-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-y-probe drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-y-probe ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-y-probe (the-as collide-fragment (-> this data)) (-> this length) arg1)
0
(none)
@@ -128,14 +128,14 @@
;; definition for method 13 of type drawable-inline-array-collide-fragment
;; INFO: Return type mismatch int vs none.
(defmethod collide-ray drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(defmethod collide-ray ((this drawable-inline-array-collide-fragment) (arg0 int) (arg1 collide-list))
(collide-ray (the-as collide-fragment (-> this data)) (-> this length) arg1)
0
(none)
)
;; definition for method 8 of type drawable-inline-array-collide-fragment
(defmethod mem-usage drawable-inline-array-collide-fragment ((this drawable-inline-array-collide-fragment) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-inline-array-collide-fragment) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 1 (-> arg0 length)))
(set! (-> arg0 data 0 name) (symbol->string 'drawable-group))
(+! (-> arg0 data 0 count) 1)
+36 -51
View File
@@ -3,18 +3,15 @@
;; definition of type collide-tri-result
(deftype collide-tri-result (structure)
((vertex vector 3 :inline :offset-assert 0)
(intersect vector :inline :offset-assert 48)
(normal vector :inline :offset-assert 64)
(pat pat-surface :offset-assert 80)
((vertex vector 3 :inline)
(intersect vector :inline)
(normal vector :inline)
(pat pat-surface)
)
:method-count-assert 9
:size-assert #x54
:flag-assert #x900000054
)
;; definition for method 3 of type collide-tri-result
(defmethod inspect collide-tri-result ((this collide-tri-result))
(defmethod inspect ((this collide-tri-result))
(format #t "[~8x] ~A~%" this 'collide-tri-result)
(format #t "~Tvertex[3] @ #x~X~%" (-> this vertex))
(format #t "~Tintersect: ~`vector`P~%" (-> this intersect))
@@ -25,18 +22,15 @@
;; definition of type collide-mesh-tri
(deftype collide-mesh-tri (structure)
((vertex-index uint8 3 :offset-assert 0)
(unused uint8 :offset-assert 3)
(pat pat-surface :offset-assert 4)
((vertex-index uint8 3)
(unused uint8)
(pat pat-surface)
)
:pack-me
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type collide-mesh-tri
(defmethod inspect collide-mesh-tri ((this collide-mesh-tri))
(defmethod inspect ((this collide-mesh-tri))
(format #t "[~8x] ~A~%" this 'collide-mesh-tri)
(format #t "~Tvertex-index[3] @ #x~X~%" (-> this vertex-index))
(format #t "~Tunused: ~D~%" (-> this unused))
@@ -46,28 +40,25 @@
;; definition of type collide-mesh
(deftype collide-mesh (basic)
((joint-id int32 :offset-assert 4)
(num-tris uint32 :offset-assert 8)
(num-verts uint32 :offset-assert 12)
(vertex-data (inline-array vector) :offset-assert 16)
(tris collide-mesh-tri 1 :inline :offset 32)
((joint-id int32)
(num-tris uint32)
(num-verts uint32)
(vertex-data (inline-array vector))
(tris collide-mesh-tri 1 :inline :offset 32)
)
:method-count-assert 16
:size-assert #x28
:flag-assert #x1000000028
(:methods
(debug-draw-tris (_type_ process-drawable int) none 9)
(overlap-test (_type_ collide-mesh-cache-tri vector) symbol 10)
(should-push-away-test (_type_ collide-mesh-cache-tri collide-tri-result vector float) float 11)
(sphere-on-platform-test (_type_ collide-mesh-cache-tri collide-tri-result vector float) float 12)
(populate-cache! (_type_ collide-mesh-cache-tri matrix) none 13)
(collide-mesh-math-1 (_type_ object object) none 14)
(collide-mesh-math-2 (_type_ object object object) none 15)
(debug-draw-tris (_type_ process-drawable int) none)
(overlap-test (_type_ collide-mesh-cache-tri vector) symbol)
(should-push-away-test (_type_ collide-mesh-cache-tri collide-tri-result vector float) float)
(sphere-on-platform-test (_type_ collide-mesh-cache-tri collide-tri-result vector float) float)
(populate-cache! (_type_ collide-mesh-cache-tri matrix) none)
(collide-mesh-math-1 (_type_ object object) none)
(collide-mesh-math-2 (_type_ object object object) none)
)
)
;; definition for method 3 of type collide-mesh
(defmethod inspect collide-mesh ((this collide-mesh))
(defmethod inspect ((this collide-mesh))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tjoint-id: ~D~%" (-> this joint-id))
(format #t "~Tnum-tris: ~D~%" (-> this num-tris))
@@ -79,23 +70,20 @@
;; definition of type collide-mesh-cache
(deftype collide-mesh-cache (basic)
((used-size uint32 :offset-assert 4)
(max-size uint32 :offset-assert 8)
(id uint64 :offset-assert 16)
(data uint8 40960 :offset 32)
((used-size uint32)
(max-size uint32)
(id uint64)
(data uint8 40960 :offset 32)
)
:method-count-assert 12
:size-assert #xa020
:flag-assert #xc0000a020
(:methods
(allocate! (_type_ int) int 9)
(is-id? (_type_ int) symbol 10)
(next-id! (_type_) uint 11)
(allocate! (_type_ int) int)
(is-id? (_type_ int) symbol)
(next-id! (_type_) uint)
)
)
;; definition for method 3 of type collide-mesh-cache
(defmethod inspect collide-mesh-cache ((this collide-mesh-cache))
(defmethod inspect ((this collide-mesh-cache))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tused-size: ~D~%" (-> this used-size))
(format #t "~Tmax-size: ~D~%" (-> this max-size))
@@ -108,24 +96,21 @@
;; ERROR: function was not converted to expressions. Cannot decompile.
;; definition for method 10 of type collide-mesh-cache
(defmethod is-id? collide-mesh-cache ((this collide-mesh-cache) (arg0 int))
(defmethod is-id? ((this collide-mesh-cache) (arg0 int))
(= (-> this id) arg0)
)
;; definition of type collide-mesh-cache-tri
(deftype collide-mesh-cache-tri (structure)
((vertex vector 3 :inline :offset-assert 0)
(normal vector :inline :offset-assert 48)
(bbox4w bounding-box4w :inline :offset-assert 64)
(pat pat-surface :offset 60)
((vertex vector 3 :inline)
(normal vector :inline)
(bbox4w bounding-box4w :inline)
(pat pat-surface :overlay-at (-> normal w))
)
:method-count-assert 9
:size-assert #x60
:flag-assert #x900000060
)
;; definition for method 3 of type collide-mesh-cache-tri
(defmethod inspect collide-mesh-cache-tri ((this collide-mesh-cache-tri))
(defmethod inspect ((this collide-mesh-cache-tri))
(format #t "[~8x] ~A~%" this 'collide-mesh-cache-tri)
(format #t "~Tvertex[3] @ #x~X~%" (-> this vertex))
(format #t "~Tnormal: ~`vector`P~%" (-> this normal))
+15 -24
View File
@@ -3,13 +3,13 @@
;; definition for method 5 of type collide-mesh
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of collide-mesh ((this collide-mesh))
(defmethod asize-of ((this collide-mesh))
(the-as int (+ (-> collide-mesh size) (* (+ (-> this num-tris) -1) 8)))
)
;; definition for method 8 of type collide-mesh
;; INFO: Return type mismatch int vs collide-mesh.
(defmethod mem-usage collide-mesh ((this collide-mesh) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this collide-mesh) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 79 (-> arg0 length)))
(set! (-> arg0 data 78 name) "collide-mesh")
(+! (-> arg0 data 78 count) 1)
@@ -29,7 +29,7 @@
;; definition for method 9 of type collide-mesh
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw-tris collide-mesh ((this collide-mesh) (arg0 process-drawable) (arg1 int))
(defmethod debug-draw-tris ((this collide-mesh) (arg0 process-drawable) (arg1 int))
(rlet ((acc :class vf)
(vf0 :class vf)
(vf1 :class vf)
@@ -85,16 +85,13 @@
;; definition of type sopt-work
(deftype sopt-work (structure)
((intersect vector :inline :offset-assert 0)
(sphere-bbox4w bounding-box4w :inline :offset-assert 16)
((intersect vector :inline)
(sphere-bbox4w bounding-box4w :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type sopt-work
(defmethod inspect sopt-work ((this sopt-work))
(defmethod inspect ((this sopt-work))
(format #t "[~8x] ~A~%" this 'sopt-work)
(format #t "~Tintersect: #<vector @ #x~X>~%" (-> this intersect))
(format #t "~Tsphere-bbox4w: #<bounding-box4w @ #x~X>~%" (-> this sphere-bbox4w))
@@ -107,16 +104,13 @@
;; definition of type spat-work
(deftype spat-work (structure)
((intersect vector :inline :offset-assert 0)
(sphere-bbox4w bounding-box4w :inline :offset-assert 16)
((intersect vector :inline)
(sphere-bbox4w bounding-box4w :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type spat-work
(defmethod inspect spat-work ((this spat-work))
(defmethod inspect ((this spat-work))
(format #t "[~8x] ~A~%" this 'spat-work)
(format #t "~Tintersect: #<vector @ #x~X>~%" (-> this intersect))
(format #t "~Tsphere-bbox4w: #<bounding-box4w @ #x~X>~%" (-> this sphere-bbox4w))
@@ -137,7 +131,7 @@
;; definition for method 9 of type collide-mesh-cache
;; INFO: Return type mismatch (pointer uint8) vs int.
(defmethod allocate! collide-mesh-cache ((this collide-mesh-cache) (arg0 int))
(defmethod allocate! ((this collide-mesh-cache) (arg0 int))
(local-vars (a1-2 int) (a2-2 int))
(let* ((v1-0 (+ arg0 15))
(a1-1 (-> this used-size))
@@ -174,7 +168,7 @@
;; definition for method 13 of type collide-mesh
;; INFO: Return type mismatch int vs none.
;; ERROR: Failed load: (set! vf1 (l.vf t0-4)) at op 77
(defmethod populate-cache! collide-mesh ((this collide-mesh) (arg0 collide-mesh-cache-tri) (arg1 matrix))
(defmethod populate-cache! ((this collide-mesh) (arg0 collide-mesh-cache-tri) (arg1 matrix))
(local-vars (t0-2 uint))
(rlet ((acc :class vf)
(Q :class vf)
@@ -344,16 +338,13 @@
;; definition of type oot-work
(deftype oot-work (structure)
((intersect vector :inline :offset-assert 0)
(sphere-bbox4w bounding-box4w :inline :offset-assert 16)
((intersect vector :inline)
(sphere-bbox4w bounding-box4w :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type oot-work
(defmethod inspect oot-work ((this oot-work))
(defmethod inspect ((this oot-work))
(format #t "[~8x] ~A~%" this 'oot-work)
(format #t "~Tintersect: #<vector @ #x~X>~%" (-> this intersect))
(format #t "~Tsphere-bbox4w: #<bounding-box4w @ #x~X>~%" (-> this sphere-bbox4w))
@@ -362,7 +353,7 @@
;; definition for method 10 of type collide-mesh
;; INFO: Used lq/sq
(defmethod overlap-test collide-mesh ((this collide-mesh) (arg0 collide-mesh-cache-tri) (arg1 vector))
(defmethod overlap-test ((this collide-mesh) (arg0 collide-mesh-cache-tri) (arg1 vector))
(local-vars
(v1-0 uint128)
(a0-1 uint128)
+5 -11
View File
@@ -114,16 +114,13 @@
;; definition of type collide-probe-stack-elem
(deftype collide-probe-stack-elem (structure)
((child uint32 :offset-assert 0)
(count uint32 :offset-assert 4)
((child uint32)
(count uint32)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type collide-probe-stack-elem
(defmethod inspect collide-probe-stack-elem ((this collide-probe-stack-elem))
(defmethod inspect ((this collide-probe-stack-elem))
(format #t "[~8x] ~A~%" this 'collide-probe-stack-elem)
(format #t "~Tchild: #x~X~%" (-> this child))
(format #t "~Tcount: ~D~%" (-> this count))
@@ -132,15 +129,12 @@
;; definition of type collide-probe-stack
(deftype collide-probe-stack (structure)
((data collide-probe-stack-elem 1024 :inline :offset-assert 0)
((data collide-probe-stack-elem 1024 :inline)
)
:method-count-assert 9
:size-assert #x4000
:flag-assert #x900004000
)
;; definition for method 3 of type collide-probe-stack
(defmethod inspect collide-probe-stack ((this collide-probe-stack))
(defmethod inspect ((this collide-probe-stack))
(format #t "[~8x] ~A~%" this 'collide-probe-stack)
(format #t "~Tdata[1024] @ #x~X~%" (-> this data))
this
+177 -216
View File
@@ -3,21 +3,18 @@
;; definition of type collide-sticky-rider
(deftype collide-sticky-rider (structure)
((rider-handle handle :offset-assert 0)
(sticky-prim collide-shape-prim :offset-assert 8)
(prim-ry float :offset-assert 12)
(rider-local-pos vector :inline :offset-assert 16)
((rider-handle handle)
(sticky-prim collide-shape-prim)
(prim-ry float)
(rider-local-pos vector :inline)
)
:method-count-assert 10
:size-assert #x20
:flag-assert #xa00000020
(:methods
(set-rider! (_type_ handle) symbol 9)
(set-rider! (_type_ handle) symbol)
)
)
;; definition for method 3 of type collide-sticky-rider
(defmethod inspect collide-sticky-rider ((this collide-sticky-rider))
(defmethod inspect ((this collide-sticky-rider))
(format #t "[~8x] ~A~%" this 'collide-sticky-rider)
(format #t "~Trider-handle: ~D~%" (-> this rider-handle))
(format #t "~Tsticky-prim: ~A~%" (-> this sticky-prim))
@@ -27,7 +24,7 @@
)
;; definition for method 9 of type collide-sticky-rider
(defmethod set-rider! collide-sticky-rider ((this collide-sticky-rider) (arg0 handle))
(defmethod set-rider! ((this collide-sticky-rider) (arg0 handle))
(set! (-> this rider-handle) arg0)
(set! (-> this sticky-prim) #f)
#f
@@ -35,22 +32,19 @@
;; definition of type collide-sticky-rider-group
(deftype collide-sticky-rider-group (basic)
((num-riders int32 :offset-assert 4)
(allocated-riders int32 :offset-assert 8)
(rider collide-sticky-rider 1 :inline :offset-assert 16)
((num-riders int32)
(allocated-riders int32)
(rider collide-sticky-rider 1 :inline)
)
:method-count-assert 11
:size-assert #x30
:flag-assert #xb00000030
(:methods
(new (symbol type int) _type_ 0)
(add-rider! (_type_ process-drawable) collide-sticky-rider 9)
(reset! (_type_) int 10)
(new (symbol type int) _type_)
(add-rider! (_type_ process-drawable) collide-sticky-rider)
(reset! (_type_) int)
)
)
;; definition for method 3 of type collide-sticky-rider-group
(defmethod inspect collide-sticky-rider-group ((this collide-sticky-rider-group))
(defmethod inspect ((this collide-sticky-rider-group))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tnum-riders: ~D~%" (-> this num-riders))
(format #t "~Tallocated-riders: ~D~%" (-> this allocated-riders))
@@ -59,25 +53,22 @@
)
;; definition for method 10 of type collide-sticky-rider-group
(defmethod reset! collide-sticky-rider-group ((this collide-sticky-rider-group))
(defmethod reset! ((this collide-sticky-rider-group))
(set! (-> this num-riders) 0)
0
)
;; definition of type pull-rider-info
(deftype pull-rider-info (structure)
((rider collide-sticky-rider :offset-assert 0)
(rider-cshape collide-shape-moving :offset-assert 4)
(rider-delta-ry float :offset-assert 8)
(rider-dest vector :inline :offset-assert 16)
((rider collide-sticky-rider)
(rider-cshape collide-shape-moving)
(rider-delta-ry float)
(rider-dest vector :inline)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type pull-rider-info
(defmethod inspect pull-rider-info ((this pull-rider-info))
(defmethod inspect ((this pull-rider-info))
(format #t "[~8x] ~A~%" this 'pull-rider-info)
(format #t "~Trider: #<collide-sticky-rider @ #x~X>~%" (-> this rider))
(format #t "~Trider-cshape: ~A~%" (-> this rider-cshape))
@@ -88,22 +79,19 @@
;; definition of type collide-shape-intersect
(deftype collide-shape-intersect (basic)
((move-vec vector :inline :offset-assert 16)
(best-u float :offset-assert 32)
(best-tri collide-tri-result :inline :offset-assert 48)
(best-from-prim collide-shape-prim :offset-assert 132)
(best-to-prim collide-shape-prim :offset-assert 136)
((move-vec vector :inline)
(best-u float)
(best-tri collide-tri-result :inline)
(best-from-prim collide-shape-prim)
(best-to-prim collide-shape-prim)
)
:method-count-assert 10
:size-assert #x8c
:flag-assert #xa0000008c
(:methods
(init! (_type_ vector) symbol 9)
(init! (_type_ vector) symbol)
)
)
;; definition for method 3 of type collide-shape-intersect
(defmethod inspect collide-shape-intersect ((this collide-shape-intersect))
(defmethod inspect ((this collide-shape-intersect))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tmove-vec: ~`vector`P~%" (-> this move-vec))
(format #t "~Tbest-u: ~f~%" (-> this best-u))
@@ -115,21 +103,18 @@
;; definition of type collide-overlap-result
(deftype collide-overlap-result (structure)
((best-dist float :offset-assert 0)
(best-from-prim collide-shape-prim :offset-assert 4)
(best-to-prim collide-shape-prim :offset-assert 8)
(best-from-tri collide-tri-result :inline :offset-assert 16)
((best-dist float)
(best-from-prim collide-shape-prim)
(best-to-prim collide-shape-prim)
(best-from-tri collide-tri-result :inline)
)
:method-count-assert 10
:size-assert #x64
:flag-assert #xa00000064
(:methods
(reset! (_type_) none 9)
(reset! (_type_) none)
)
)
;; definition for method 3 of type collide-overlap-result
(defmethod inspect collide-overlap-result ((this collide-overlap-result))
(defmethod inspect ((this collide-overlap-result))
(format #t "[~8x] ~A~%" this 'collide-overlap-result)
(format #t "~Tbest-dist: ~f~%" (-> this best-dist))
(format #t "~Tbest-from-prim: ~A~%" (-> this best-from-prim))
@@ -140,7 +125,7 @@
;; definition for method 9 of type collide-overlap-result
;; INFO: Return type mismatch symbol vs none.
(defmethod reset! collide-overlap-result ((this collide-overlap-result))
(defmethod reset! ((this collide-overlap-result))
(set! (-> this best-dist) 0.0)
(set! (-> this best-from-prim) #f)
(set! (-> this best-to-prim) #f)
@@ -149,16 +134,13 @@
;; definition of type overlaps-others-params
(deftype overlaps-others-params (structure)
((options uint32 :offset-assert 0)
(tlist touching-list :offset-assert 4)
((options uint32)
(tlist touching-list)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type overlaps-others-params
(defmethod inspect overlaps-others-params ((this overlaps-others-params))
(defmethod inspect ((this overlaps-others-params))
(format #t "[~8x] ~A~%" this 'overlaps-others-params)
(format #t "~Toptions: ~D~%" (-> this options))
(format #t "~Ttlist: ~A~%" (-> this tlist))
@@ -179,21 +161,18 @@
;; definition of type collide-prim-core
(deftype collide-prim-core (structure)
((world-sphere vector :inline :offset-assert 0)
(collide-as collide-kind :offset-assert 16)
(action collide-action :offset-assert 24)
(offense collide-offense :offset-assert 28)
(prim-type int8 :offset-assert 29)
(extra uint8 2 :offset-assert 30)
(quad uint128 2 :offset 0)
((world-sphere vector :inline)
(collide-as collide-kind)
(action collide-action)
(offense collide-offense)
(prim-type int8)
(extra uint8 2)
(quad uint128 2 :overlay-at (-> world-sphere quad))
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type collide-prim-core
(defmethod inspect collide-prim-core ((this collide-prim-core))
(defmethod inspect ((this collide-prim-core))
(format #t "[~8x] ~A~%" this 'collide-prim-core)
(format #t "~Tworld-sphere: ~`vector`P~%" (-> this world-sphere))
(format #t "~Tcollide-as: ~D~%" (-> this collide-as))
@@ -207,48 +186,45 @@
;; definition of type collide-shape-prim
(deftype collide-shape-prim (basic)
((cshape collide-shape :offset-assert 4)
(prim-id uint32 :offset-assert 8)
(transform-index int8 :offset-assert 12)
(prim-core collide-prim-core :inline :offset-assert 16)
(local-sphere vector :inline :offset-assert 48)
(collide-with collide-kind :offset-assert 64)
(world-sphere vector :inline :offset 16)
(collide-as collide-kind :offset 32)
(action collide-action :offset 40)
(offense collide-offense :offset 44)
(prim-type int8 :offset 45)
(radius meters :offset 60)
((cshape collide-shape)
(prim-id uint32)
(transform-index int8)
(prim-core collide-prim-core :inline)
(local-sphere vector :inline)
(collide-with collide-kind)
(world-sphere vector :inline :overlay-at (-> prim-core world-sphere))
(collide-as collide-kind :overlay-at (-> prim-core collide-as))
(action collide-action :overlay-at (-> prim-core action))
(offense collide-offense :overlay-at (-> prim-core offense))
(prim-type int8 :overlay-at (-> prim-core prim-type))
(radius meters :overlay-at (-> local-sphere w))
)
:method-count-assert 28
:size-assert #x48
:flag-assert #x1c00000048
(:methods
(new (symbol type collide-shape uint int) _type_ 0)
(move-by-vector! (_type_ vector) none 9)
(find-prim-by-id (_type_ uint) collide-shape-prim 10)
(debug-draw-world-sphere (_type_) symbol 11)
(add-fg-prim-using-box (_type_ collide-cache) none 12)
(add-fg-prim-using-line-sphere (_type_ collide-cache) none 13)
(add-fg-prim-using-y-probe (_type_ collide-cache) none 14)
(overlaps-others-test (_type_ overlaps-others-params collide-shape-prim) symbol 15)
(overlaps-others-group (_type_ overlaps-others-params collide-shape-prim-group) symbol 16)
(unused-17 () none 17)
(collide-with-collide-cache-prim-mesh (_type_ collide-shape-intersect collide-cache-prim) none 18)
(collide-with-collide-cache-prim-sphere (_type_ collide-shape-intersect collide-cache-prim) none 19)
(add-to-bounding-box (_type_ collide-kind) symbol 20)
(num-mesh (_type_ collide-shape-prim) int 21)
(on-platform-test (_type_ collide-shape-prim collide-overlap-result float) none 22)
(should-push-away-test (_type_ collide-shape-prim collide-overlap-result) none 23)
(should-push-away-reverse-test (_type_ collide-shape-prim-group collide-overlap-result) none 24)
(update-transforms! (_type_ process-drawable) symbol 25)
(set-collide-as! (_type_ collide-kind) none 26)
(set-collide-with! (_type_ collide-kind) none 27)
(new (symbol type collide-shape uint int) _type_)
(move-by-vector! (_type_ vector) none)
(find-prim-by-id (_type_ uint) collide-shape-prim)
(debug-draw-world-sphere (_type_) symbol)
(add-fg-prim-using-box (_type_ collide-cache) none)
(add-fg-prim-using-line-sphere (_type_ collide-cache) none)
(add-fg-prim-using-y-probe (_type_ collide-cache) none)
(overlaps-others-test (_type_ overlaps-others-params collide-shape-prim) symbol)
(overlaps-others-group (_type_ overlaps-others-params collide-shape-prim-group) symbol)
(unused-17 () none)
(collide-with-collide-cache-prim-mesh (_type_ collide-shape-intersect collide-cache-prim) none)
(collide-with-collide-cache-prim-sphere (_type_ collide-shape-intersect collide-cache-prim) none)
(add-to-bounding-box (_type_ collide-kind) symbol)
(num-mesh (_type_ collide-shape-prim) int)
(on-platform-test (_type_ collide-shape-prim collide-overlap-result float) none)
(should-push-away-test (_type_ collide-shape-prim collide-overlap-result) none)
(should-push-away-reverse-test (_type_ collide-shape-prim-group collide-overlap-result) none)
(update-transforms! (_type_ process-drawable) symbol)
(set-collide-as! (_type_ collide-kind) none)
(set-collide-with! (_type_ collide-kind) none)
)
)
;; definition for method 3 of type collide-shape-prim
(defmethod inspect collide-shape-prim ((this collide-shape-prim))
(defmethod inspect ((this collide-shape-prim))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tcshape: ~A~%" (-> this cshape))
(format #t "~Tprim-id: #x~X~%" (-> this prim-id))
@@ -267,18 +243,15 @@
;; definition of type collide-shape-prim-sphere
(deftype collide-shape-prim-sphere (collide-shape-prim)
((pat pat-surface :offset-assert 72)
((pat pat-surface)
)
:method-count-assert 28
:size-assert #x4c
:flag-assert #x1c0000004c
(:methods
(new (symbol type collide-shape uint) _type_ 0)
(new (symbol type collide-shape uint) _type_)
)
)
;; definition for method 3 of type collide-shape-prim-sphere
(defmethod inspect collide-shape-prim-sphere ((this collide-shape-prim-sphere))
(defmethod inspect ((this collide-shape-prim-sphere))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tcshape: ~A~%" (-> this cshape))
(format #t "~Tprim-id: #x~X~%" (-> this prim-id))
@@ -298,22 +271,19 @@
;; definition of type collide-shape-prim-mesh
(deftype collide-shape-prim-mesh (collide-shape-prim)
((mesh collide-mesh :offset-assert 72)
(mesh-id int32 :offset-assert 76)
(mesh-cache-id uint64 :offset-assert 80)
(mesh-cache-tris (inline-array collide-mesh-cache-tri) :offset-assert 88)
((mesh collide-mesh)
(mesh-id int32)
(mesh-cache-id uint64)
(mesh-cache-tris (inline-array collide-mesh-cache-tri))
)
:method-count-assert 29
:size-assert #x5c
:flag-assert #x1d0000005c
(:methods
(new (symbol type collide-shape uint uint) _type_ 0)
(change-mesh (_type_ int) none 28)
(new (symbol type collide-shape uint uint) _type_)
(change-mesh (_type_ int) none)
)
)
;; definition for method 3 of type collide-shape-prim-mesh
(defmethod inspect collide-shape-prim-mesh ((this collide-shape-prim-mesh))
(defmethod inspect ((this collide-shape-prim-mesh))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tcshape: ~A~%" (-> this cshape))
(format #t "~Tprim-id: #x~X~%" (-> this prim-id))
@@ -336,24 +306,21 @@
;; definition of type collide-shape-prim-group
(deftype collide-shape-prim-group (collide-shape-prim)
((num-prims int32 :offset-assert 72)
(num-prims-u uint32 :offset 72)
(allocated-prims int32 :offset-assert 76)
(prim collide-shape-prim 1 :offset-assert 80)
(prims collide-shape-prim :dynamic :offset 80)
((num-prims int32)
(num-prims-u uint32 :overlay-at num-prims)
(allocated-prims int32)
(prim collide-shape-prim 1)
(prims collide-shape-prim :dynamic :overlay-at (-> prim 0))
)
:method-count-assert 30
:size-assert #x54
:flag-assert #x1e00000054
(:methods
(new (symbol type collide-shape uint int) _type_ 0)
(append-prim (_type_ collide-shape-prim) none 28)
(add-to-non-empty-bounding-box (_type_ collide-kind) none 29)
(new (symbol type collide-shape uint int) _type_)
(append-prim (_type_ collide-shape-prim) none)
(add-to-non-empty-bounding-box (_type_ collide-kind) none)
)
)
;; definition for method 3 of type collide-shape-prim-group
(defmethod inspect collide-shape-prim-group ((this collide-shape-prim-group))
(defmethod inspect ((this collide-shape-prim-group))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tcshape: ~A~%" (-> this cshape))
(format #t "~Tprim-id: #x~X~%" (-> this prim-id))
@@ -375,56 +342,53 @@
;; definition of type collide-shape
(deftype collide-shape (trsqv)
((process process-drawable :offset-assert 140)
(max-iteration-count uint8 :offset-assert 144)
(nav-flags nav-flags :offset-assert 145)
(pad-byte uint8 2 :offset-assert 146)
(pat-ignore-mask pat-surface :offset-assert 148)
(event-self symbol :offset-assert 152)
(event-other symbol :offset-assert 156)
(root-prim collide-shape-prim :offset-assert 160)
(riders collide-sticky-rider-group :offset-assert 164)
(backup-collide-as collide-kind :offset-assert 168)
(backup-collide-with collide-kind :offset-assert 176)
((process process-drawable)
(max-iteration-count uint8)
(nav-flags nav-flags)
(pad-byte uint8 2)
(pat-ignore-mask pat-surface)
(event-self symbol)
(event-other symbol)
(root-prim collide-shape-prim)
(riders collide-sticky-rider-group)
(backup-collide-as collide-kind)
(backup-collide-with collide-kind)
)
:method-count-assert 56
:size-assert #xb8
:flag-assert #x38000000b8
(:methods
(new (symbol type process-drawable collide-list-enum) _type_ 0)
(move-by-vector! (_type_ vector) none 28)
(alloc-riders (_type_ int) none 29)
(move-to-point! (_type_ vector) none 30)
(debug-draw (_type_) none 31)
(fill-cache-for-shape! (_type_ float collide-kind) none 32)
(fill-cache-integrate-and-collide! (_type_ vector collide-kind) none 33)
(find-prim-by-id (_type_ uint) collide-shape-prim 34)
(detect-riders! (_type_) symbol 35)
(build-bounding-box-for-shape (_type_ bounding-box float collide-kind) symbol 36)
(integrate-and-collide! (_type_ vector) none 37)
(find-collision-meshes (_type_) symbol 38)
(on-platform (_type_ collide-shape collide-overlap-result) symbol 39)
(find-overlapping-shapes (_type_ overlaps-others-params) symbol 40)
(calc-shove-up (_type_ attack-info float) vector 41)
(should-push-away (_type_ collide-shape collide-overlap-result) symbol 42)
(pull-rider! (_type_ pull-rider-info) none 43)
(pull-riders! (_type_) symbol 44)
(do-push-aways! (_type_) symbol 45)
(set-root-prim! (_type_ collide-shape-prim) collide-shape-prim 46)
(update-transforms! (_type_) symbol 47)
(clear-collide-with-as (_type_) none 48)
(restore-collide-with-as (_type_) none 49)
(backup-collide-with-as (_type_) none 50)
(set-root-prim-collide-with! (_type_ collide-kind) none 51)
(set-root-prim-collide-as! (_type_ collide-kind) none 52)
(set-collide-kinds (_type_ int collide-kind collide-kind) none 53)
(set-collide-offense (_type_ int collide-offense) none 54)
(send-shove-back (_type_ process touching-shapes-entry float float float) none 55)
(new (symbol type process-drawable collide-list-enum) _type_)
(move-by-vector! (_type_ vector) none)
(alloc-riders (_type_ int) none)
(move-to-point! (_type_ vector) none)
(debug-draw (_type_) none)
(fill-cache-for-shape! (_type_ float collide-kind) none)
(fill-cache-integrate-and-collide! (_type_ vector collide-kind) none)
(find-prim-by-id (_type_ uint) collide-shape-prim)
(detect-riders! (_type_) symbol)
(build-bounding-box-for-shape (_type_ bounding-box float collide-kind) symbol)
(integrate-and-collide! (_type_ vector) none)
(find-collision-meshes (_type_) symbol)
(on-platform (_type_ collide-shape collide-overlap-result) symbol)
(find-overlapping-shapes (_type_ overlaps-others-params) symbol)
(calc-shove-up (_type_ attack-info float) vector)
(should-push-away (_type_ collide-shape collide-overlap-result) symbol)
(pull-rider! (_type_ pull-rider-info) none)
(pull-riders! (_type_) symbol)
(do-push-aways! (_type_) symbol)
(set-root-prim! (_type_ collide-shape-prim) collide-shape-prim)
(update-transforms! (_type_) symbol)
(clear-collide-with-as (_type_) none)
(restore-collide-with-as (_type_) none)
(backup-collide-with-as (_type_) none)
(set-root-prim-collide-with! (_type_ collide-kind) none)
(set-root-prim-collide-as! (_type_ collide-kind) none)
(set-collide-kinds (_type_ int collide-kind collide-kind) none)
(set-collide-offense (_type_ int collide-offense) none)
(send-shove-back (_type_ process touching-shapes-entry float float float) none)
)
)
;; definition for method 3 of type collide-shape
(defmethod inspect collide-shape ((this collide-shape))
(defmethod inspect ((this collide-shape))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttrans: ~`vector`P~%" (-> this trans))
(format #t "~Trot: ~`vector`P~%" (-> this quat))
@@ -454,50 +418,47 @@
;; definition of type collide-shape-moving
(deftype collide-shape-moving (collide-shape)
((rider-time time-frame :offset-assert 184)
(rider-last-move vector :inline :offset-assert 192)
(trans-old vector 3 :inline :offset-assert 208)
(poly-pat pat-surface :offset-assert 256)
(cur-pat pat-surface :offset-assert 260)
(ground-pat pat-surface :offset-assert 264)
(status cshape-moving-flags :offset-assert 272)
(old-status cshape-moving-flags :offset-assert 280)
(prev-status cshape-moving-flags :offset-assert 288)
(reaction-flag cshape-reaction-flags :offset-assert 296)
(reaction (function collide-shape-moving collide-shape-intersect vector vector cshape-moving-flags) :offset-assert 300)
(no-reaction (function collide-shape-moving collide-shape-intersect vector vector none) :offset-assert 304)
(local-normal vector :inline :offset-assert 320)
(surface-normal vector :inline :offset-assert 336)
(poly-normal vector :inline :offset-assert 352)
(ground-poly-normal vector :inline :offset-assert 368)
(ground-touch-point vector :inline :offset-assert 384)
(shadow-pos vector :inline :offset-assert 400)
(ground-impact-vel meters :offset-assert 416)
(surface-angle float :offset-assert 420)
(poly-angle float :offset-assert 424)
(touch-angle float :offset-assert 428)
(coverage float :offset-assert 432)
(dynam dynamics :offset-assert 436)
(surf surface :offset-assert 440)
((rider-time time-frame)
(rider-last-move vector :inline)
(trans-old vector 3 :inline)
(poly-pat pat-surface)
(cur-pat pat-surface)
(ground-pat pat-surface)
(status cshape-moving-flags)
(old-status cshape-moving-flags)
(prev-status cshape-moving-flags)
(reaction-flag cshape-reaction-flags)
(reaction (function collide-shape-moving collide-shape-intersect vector vector cshape-moving-flags))
(no-reaction (function collide-shape-moving collide-shape-intersect vector vector none))
(local-normal vector :inline)
(surface-normal vector :inline)
(poly-normal vector :inline)
(ground-poly-normal vector :inline)
(ground-touch-point vector :inline)
(shadow-pos vector :inline)
(ground-impact-vel meters)
(surface-angle float)
(poly-angle float)
(touch-angle float)
(coverage float)
(dynam dynamics)
(surf surface)
)
:method-count-assert 65
:size-assert #x1bc
:flag-assert #x41000001bc
(:methods
(set-and-handle-pat! (_type_ pat-surface) none 56)
(integrate-no-collide! (_type_ vector) none 57)
(collide-shape-moving-method-58 (_type_ vector) symbol 58)
(integrate-for-enemy-with-move-to-ground! (_type_ vector collide-kind float symbol symbol symbol) none 59)
(move-to-ground (_type_ float float symbol collide-kind) symbol 60)
(move-to-ground-point! (_type_ vector vector vector) none 61)
(compute-acc-due-to-gravity (_type_ vector float) vector 62)
(step-collison! (_type_ vector vector float) float 63)
(move-to-tri! (_type_ collide-tri-result vector) none 64)
(set-and-handle-pat! (_type_ pat-surface) none)
(integrate-no-collide! (_type_ vector) none)
(collide-shape-moving-method-58 (_type_ vector) symbol)
(integrate-for-enemy-with-move-to-ground! (_type_ vector collide-kind float symbol symbol symbol) none)
(move-to-ground (_type_ float float symbol collide-kind) symbol)
(move-to-ground-point! (_type_ vector vector vector) none)
(compute-acc-due-to-gravity (_type_ vector float) vector)
(step-collison! (_type_ vector vector float) float)
(move-to-tri! (_type_ collide-tri-result vector) none)
)
)
;; definition for method 3 of type collide-shape-moving
(defmethod inspect collide-shape-moving ((this collide-shape-moving))
(defmethod inspect ((this collide-shape-moving))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Ttrans: ~`vector`P~%" (-> this trans))
(format #t "~Trot: ~`vector`P~%" (-> this quat))
@@ -623,13 +584,13 @@
)
;; definition for method 4 of type collide-shape-prim-group
(defmethod length collide-shape-prim-group ((this collide-shape-prim-group))
(defmethod length ((this collide-shape-prim-group))
(-> this num-prims)
)
;; definition for method 5 of type collide-shape-prim-group
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of collide-shape-prim-group ((this collide-shape-prim-group))
(defmethod asize-of ((this collide-shape-prim-group))
(the-as int (+ (-> this type size) (* (+ (-> this allocated-prims) -1) 4)))
)
@@ -685,13 +646,13 @@
)
;; definition for method 4 of type collide-sticky-rider-group
(defmethod length collide-sticky-rider-group ((this collide-sticky-rider-group))
(defmethod length ((this collide-sticky-rider-group))
(-> this num-riders)
)
;; definition for method 5 of type collide-sticky-rider-group
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of collide-sticky-rider-group ((this collide-sticky-rider-group))
(defmethod asize-of ((this collide-sticky-rider-group))
(the-as int (+ (-> this type size) (* (+ (-> this allocated-riders) -1) 32)))
)
+9 -9
View File
@@ -2,7 +2,7 @@
(in-package goal)
;; definition for method 39 of type collide-shape
(defmethod on-platform collide-shape ((this collide-shape) (arg0 collide-shape) (arg1 collide-overlap-result))
(defmethod on-platform ((this collide-shape) (arg0 collide-shape) (arg1 collide-overlap-result))
(let ((v1-0 arg1))
(set! (-> v1-0 best-dist) 0.0)
(set! (-> v1-0 best-from-prim) #f)
@@ -34,14 +34,14 @@
;; definition for method 22 of type collide-shape-prim
;; INFO: Return type mismatch object vs none.
(defmethod on-platform-test collide-shape-prim ((this collide-shape-prim) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(defmethod on-platform-test ((this collide-shape-prim) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(format 0 "ERROR: collide-shape-prim::on-platform-test was called illegally!~%")
(none)
)
;; definition for method 22 of type collide-shape-prim-group
;; INFO: Return type mismatch symbol vs none.
(defmethod on-platform-test collide-shape-prim-group ((this collide-shape-prim-group) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(defmethod on-platform-test ((this collide-shape-prim-group) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(let ((s3-0 (-> arg0 prim-core collide-as)))
(dotimes (s2-0 (-> this num-prims))
(let ((s1-0 (-> this prims s2-0)))
@@ -70,7 +70,7 @@
;; INFO: Used lq/sq
;; INFO: Return type mismatch pat-surface vs none.
;; WARN: Function (method 22 collide-shape-prim-mesh) has a return type of none, but the expression builder found a return statement.
(defmethod on-platform-test collide-shape-prim-mesh ((this collide-shape-prim-mesh) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(defmethod on-platform-test ((this collide-shape-prim-mesh) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float))
(case (-> arg0 type)
((collide-shape-prim-group)
(let ((s3-0 (-> this collide-with)))
@@ -148,7 +148,7 @@
)
;; definition for method 9 of type collide-sticky-rider-group
(defmethod add-rider! collide-sticky-rider-group ((this collide-sticky-rider-group) (arg0 process-drawable))
(defmethod add-rider! ((this collide-sticky-rider-group) (arg0 process-drawable))
(let ((gp-0 (the-as collide-sticky-rider #f)))
(cond
((< (-> this num-riders) (-> this allocated-riders))
@@ -168,7 +168,7 @@
)
;; definition for method 35 of type collide-shape
(defmethod detect-riders! collide-shape ((this collide-shape))
(defmethod detect-riders! ((this collide-shape))
(let ((s5-0 (-> this riders)))
(when s5-0
(let* ((v1-0 *collide-mesh-cache*)
@@ -368,7 +368,7 @@
)
;; definition for method 44 of type collide-shape
(defmethod pull-riders! collide-shape ((this collide-shape))
(defmethod pull-riders! ((this collide-shape))
(let ((s5-0 (-> this riders)))
(when s5-0
(let ((s4-0 (new 'stack-no-clear 'pull-rider-info)))
@@ -405,7 +405,7 @@
;; definition for method 43 of type collide-shape
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs none.
(defmethod pull-rider! collide-shape ((this collide-shape) (arg0 pull-rider-info))
(defmethod pull-rider! ((this collide-shape) (arg0 pull-rider-info))
(local-vars (at-0 int) (sv-160 (function collide-shape-moving float collide-kind none)))
(rlet ((vf0 :class vf)
(vf1 :class vf)
@@ -481,7 +481,7 @@
;; definition for method 29 of type collide-shape
;; INFO: Return type mismatch object vs none.
(defmethod alloc-riders collide-shape ((this collide-shape) (arg0 int))
(defmethod alloc-riders ((this collide-shape) (arg0 int))
(if (-> this riders)
(format 0 "ERROR: colide-shape::alloc-riders is being called multiple times!~%")
(set! (-> this riders) (new 'process 'collide-sticky-rider-group arg0))
+173 -179
View File
@@ -3,27 +3,24 @@
;; definition of type collide-history
(deftype collide-history (structure)
((intersect vector :inline :offset-assert 0)
(trans vector :inline :offset-assert 16)
(transv vector :inline :offset-assert 32)
(transv-out vector :inline :offset-assert 48)
(local-normal vector :inline :offset-assert 64)
(surface-normal vector :inline :offset-assert 80)
(time time-frame :offset-assert 96)
(status cshape-moving-flags :offset-assert 104)
(pat pat-surface :offset-assert 112)
(reaction-flag cshape-reaction-flags :offset-assert 116)
((intersect vector :inline)
(trans vector :inline)
(transv vector :inline)
(transv-out vector :inline)
(local-normal vector :inline)
(surface-normal vector :inline)
(time time-frame)
(status cshape-moving-flags)
(pat pat-surface)
(reaction-flag cshape-reaction-flags)
)
:method-count-assert 10
:size-assert #x78
:flag-assert #xa00000078
(:methods
(update! (_type_ collide-shape-moving vector vector vector) _type_ 9)
(update! (_type_ collide-shape-moving vector vector vector) _type_)
)
)
;; definition for method 3 of type collide-history
(defmethod inspect collide-history ((this collide-history))
(defmethod inspect ((this collide-history))
(format #t "[~8x] ~A~%" this 'collide-history)
(format #t "~Tintersect: ~`vector`P~%" (-> this intersect))
(format #t "~Ttrans: ~`vector`P~%" (-> this trans))
@@ -40,175 +37,172 @@
;; definition of type control-info
(deftype control-info (collide-shape-moving)
((unknown-vector00 vector :inline :offset 448)
(unknown-vector01 vector :inline :offset 464)
(unknown-vector02 vector :inline :offset 480)
(unknown-quaternion00 quaternion :inline :offset 496)
(unknown-quaternion01 quaternion :inline :offset 512)
(unknown-float00 float :offset 528)
(unknown-float01 float :offset 532)
(unknown-float02 float :offset 536)
(unknown-vector10 vector :inline :offset 544)
(unknown-vector11 vector :inline :offset 560)
(unknown-vector12 vector :inline :offset 576)
(unknown-vector13 vector :inline :offset 592)
(unknown-vector14 vector :inline :offset 608)
(unknown-vector15 vector :inline :offset 624)
(unknown-vector16 vector :inline :offset 640)
(unknown-dynamics00 dynamics :offset 656)
(unknown-surface00 surface :offset 660)
(unknown-surface01 surface :offset 664)
(unknown-cpad-info00 cpad-info :offset 668)
(unknown-float10 float :offset 672)
(unknown-float11 float :offset 676)
(unknown-float12 float :offset 680)
(unknown-float13 float :offset 684)
(unknown-vector20 vector :inline :offset 688)
(unknown-vector21 vector :inline :offset 704)
(unknown-vector22 vector :inline :offset 720)
(unknown-vector23 vector :inline :offset 736)
(unknown-vector-array00 vector 7 :inline :offset 752)
(unknown-vector30 vector :inline :offset 880)
(unknown-vector31 vector :inline :offset 896)
(unknown-float20 float :offset 912)
(unknown-float21 float :offset 916)
(unknown-dword00 uint64 :offset 920)
(unknown-matrix00 matrix :inline :offset 928)
(unknown-matrix01 matrix :inline :offset 992)
(unknown-matrix02 matrix :inline :offset 1056)
(unknown-qword00 uint128 :offset 1136)
(unknown-float30 float :offset 1140)
(unknown-vector40 vector :inline :offset 1152)
(unknown-float40 float :offset 1172)
(unknown-float41 float :offset 1176)
(unknown-int00 int32 :offset 1180)
(unknown-float50 float :offset 1168)
(unknown-vector50 vector :inline :offset 1184)
(unknown-vector51 vector :inline :offset 1200)
(unknown-vector52 vector :inline :offset 1216)
(unknown-vector53 vector :inline :offset 1232)
(last-known-safe-ground vector :inline :offset 1248)
(unknown-vector55 vector :inline :offset 1264)
(unknown-dword10 time-frame :offset 1280)
(unknown-dword11 time-frame :offset 1288)
(unknown-float60 float :offset 1300)
(unknown-float61 float :offset 1304)
(unknown-float62 float :offset 1308)
(unknown-float63 float :offset 1312)
(unknown-float64 float :offset 1316)
(unknown-dword20 time-frame :offset 1320)
(unknown-dword21 time-frame :offset 1328)
(unknown-dword-coverage int64 :offset 1336)
(unknown-float-coverage-0 float :offset 1344)
(unknown-float-coverage-1 float :offset 1348)
(unknown-float-coverage-2 float :offset 1352)
(unknown-u32-coverage-0 uint32 :offset 1356)
(unknown-vector-coverage-0 vector :inline :offset 1376)
(unknown-vector-coverage-1 vector :inline :offset 1392)
(unknown-vector-coverage-2 vector :inline :offset 1440)
(unknown-vector-coverage-3 vector :inline :offset 1472)
(unknown-vector60 vector :inline :offset 1456)
(unknown-vector61 vector :inline :offset 1504)
(unknown-float70 float :offset 1520)
(unknown-float71 float :offset 1524)
(unknown-vector70 vector :inline :offset 1536)
(unknown-vector71 vector :inline :offset 1552)
(unknown-vector72 vector :inline :offset 1568)
(unknown-vector73 vector :inline :offset 1584)
(unknown-handle00 handle :offset 1600)
(unknown-sphere-array00 collide-shape-prim-sphere 3 :offset 1608)
(unknown-sphere00 collide-shape-prim-sphere :offset 1632)
(unknown-sphere01 collide-shape-prim-sphere :offset 1636)
(unknown-sphere02 collide-shape-prim-sphere :offset 1640)
(unknown-int50 int32 :offset 1656)
(unknown-dword30 time-frame :offset 1664)
(unknown-dword31 time-frame :offset 1672)
(unknown-dword32 time-frame :offset 1680)
(unknown-dword33 time-frame :offset 1688)
(unknown-dword34 time-frame :offset 1696)
(unknown-dword35 time-frame :offset 1704)
(unknown-dword36 time-frame :offset 1712)
(unknown-float80 float :offset 1724)
(unknown-float81 float :offset 1728)
(unknown-float82 float :offset 1732)
(unknown-vector80 vector :inline :offset 1744)
(unknown-cspace00 cspace :inline :offset 1760)
(unknown-vector90 vector :inline :offset 1776)
(unknown-vector91 vector :inline :offset 1792)
(unknown-vector92 vector :inline :offset 1824)
(unknown-cspace10 cspace :inline :offset 1808)
(unknown-symbol00 symbol :offset 1840)
(unknown-float90 float :offset 1844)
(unknown-float91 float :offset 1848)
(unknown-vector-array10 vector 16 :inline :offset 1856)
(unknown-float100 float :offset 2112)
(unknown-int10 int32 :offset 2116)
(unknown-float110 float :offset 2120)
(unknown-vector100 vector :inline :offset 2128)
(unknown-vector101 vector :inline :offset 2144)
(unknown-dword40 time-frame :offset 2160)
(unknown-dword41 time-frame :offset 2168)
(unknown-handle10 handle :offset 2176)
(unknown-uint20 uint32 :offset 2184)
(unknown-spoolanim00 spool-anim :offset 2184)
(unknown-int20 int32 :offset 2184)
(unknown-symbol20 symbol :offset 2184)
(unknown-float120 float :offset 2184)
(unknown-int21 int32 :offset 2188)
(unknown-uint30 uint32 :offset 2188)
(unknown-float121 float :offset 2188)
(unknown-uint31 uint32 :offset 2192)
(unknown-int37 int32 :offset 2192)
(unknown-float122 float :offset 2196)
(unknown-float123 float :offset 2200)
(unknown-float124 float :offset 2204)
(unknown-vector102 vector :inline :offset 2224)
(unknown-vector103 vector :inline :offset 2240)
(unknown-quaternion02 quaternion :inline :offset 2256)
(unknown-quaternion03 quaternion :inline :offset 2272)
(unknown-smush00 smush-control :inline :offset 2288)
(unknown-vector110 vector :inline :offset 2320)
(unknown-vector111 vector :inline :offset 2336)
(unknown-symbol30 symbol :offset 2384)
(unknown-int31 uint32 :offset 2384)
(unknown-dword50 int64 :offset 2392)
(unknown-dword51 int64 :offset 2400)
(unknown-pointer00 pointer :offset 2416)
(unknown-symbol40 symbol :offset 2428)
(unknown-dword60 int64 :offset 2432)
(unknown-dword61 int64 :offset 2440)
(unknown-dword62 int64 :offset 2448)
(unknown-dword63 int64 :offset 2456)
(unknown-halfword00 int16 :offset 2488)
(history-length int16 :offset 2490)
(history-data collide-history 128 :inline :offset-assert 2496)
(unknown-float140 float :offset 18944)
(unknown-dword70 time-frame :offset 18952)
(unknown-int40 int32 :offset 18880)
(unknown-dword80 time-frame :offset 18888)
(unknown-dword81 time-frame :offset 18896)
(unknown-float130 float :offset 18904)
(unknown-float131 float :offset 18908)
(unknown-dword82 time-frame :offset 18912)
(unknown-vector120 vector :inline :offset 18928)
(unknown-float150 float :offset 18944)
(unknown-vector121 vector :inline :offset 18960)
(wall-pat pat-surface :offset 18976)
(unknown-soundid00 sound-id :offset 18980)
(unknown-float141 float :offset 18984)
(unknown-soundid01 sound-id :offset 18988)
(unknown-int34 int32 :offset 18992)
(unknown-int35 int32 :offset 18996)
(unknown-int36 int32 :offset 19000)
((unknown-vector00 vector :inline :offset 448)
(unknown-vector01 vector :inline :offset 464)
(unknown-vector02 vector :inline :offset 480)
(unknown-quaternion00 quaternion :inline :offset 496)
(unknown-quaternion01 quaternion :inline :offset 512)
(unknown-float00 float :offset 528)
(unknown-float01 float :offset 532)
(unknown-float02 float :offset 536)
(unknown-vector10 vector :inline :offset 544)
(unknown-vector11 vector :inline :offset 560)
(unknown-vector12 vector :inline :offset 576)
(unknown-vector13 vector :inline :offset 592)
(unknown-vector14 vector :inline :offset 608)
(unknown-vector15 vector :inline :offset 624)
(unknown-vector16 vector :inline :offset 640)
(unknown-dynamics00 dynamics :offset 656)
(unknown-surface00 surface :offset 660)
(unknown-surface01 surface :offset 664)
(unknown-cpad-info00 cpad-info :offset 668)
(unknown-float10 float :offset 672)
(unknown-float11 float :offset 676)
(unknown-float12 float :offset 680)
(unknown-float13 float :offset 684)
(unknown-vector20 vector :inline :offset 688)
(unknown-vector21 vector :inline :offset 704)
(unknown-vector22 vector :inline :offset 720)
(unknown-vector23 vector :inline :offset 736)
(unknown-vector-array00 vector 7 :inline :offset 752)
(unknown-vector30 vector :inline :offset 880)
(unknown-vector31 vector :inline :offset 896)
(unknown-float20 float :offset 912)
(unknown-float21 float :offset 916)
(unknown-dword00 uint64 :offset 920)
(unknown-matrix00 matrix :inline :offset 928)
(unknown-matrix01 matrix :inline :offset 992)
(unknown-matrix02 matrix :inline :offset 1056)
(unknown-qword00 uint128 :offset 1136)
(unknown-float30 float :offset 1140)
(unknown-vector40 vector :inline :offset 1152)
(unknown-float40 float :offset 1172)
(unknown-float41 float :offset 1176)
(unknown-int00 int32 :offset 1180)
(unknown-float50 float :offset 1168)
(unknown-vector50 vector :inline :offset 1184)
(unknown-vector51 vector :inline :offset 1200)
(unknown-vector52 vector :inline :offset 1216)
(unknown-vector53 vector :inline :offset 1232)
(last-known-safe-ground vector :inline :offset 1248)
(unknown-vector55 vector :inline :offset 1264)
(unknown-dword10 time-frame :offset 1280)
(unknown-dword11 time-frame :offset 1288)
(unknown-float60 float :offset 1300)
(unknown-float61 float :offset 1304)
(unknown-float62 float :offset 1308)
(unknown-float63 float :offset 1312)
(unknown-float64 float :offset 1316)
(unknown-dword20 time-frame :offset 1320)
(unknown-dword21 time-frame :offset 1328)
(unknown-dword-coverage int64 :offset 1336)
(unknown-float-coverage-0 float :offset 1344)
(unknown-float-coverage-1 float :offset 1348)
(unknown-float-coverage-2 float :offset 1352)
(unknown-u32-coverage-0 uint32 :offset 1356)
(unknown-vector-coverage-0 vector :inline :offset 1376)
(unknown-vector-coverage-1 vector :inline :offset 1392)
(unknown-vector-coverage-2 vector :inline :offset 1440)
(unknown-vector-coverage-3 vector :inline :offset 1472)
(unknown-vector60 vector :inline :offset 1456)
(unknown-vector61 vector :inline :offset 1504)
(unknown-float70 float :offset 1520)
(unknown-float71 float :offset 1524)
(unknown-vector70 vector :inline :offset 1536)
(unknown-vector71 vector :inline :offset 1552)
(unknown-vector72 vector :inline :offset 1568)
(unknown-vector73 vector :inline :offset 1584)
(unknown-handle00 handle :offset 1600)
(unknown-sphere-array00 collide-shape-prim-sphere 3 :offset 1608)
(unknown-sphere00 collide-shape-prim-sphere :offset 1632)
(unknown-sphere01 collide-shape-prim-sphere :offset 1636)
(unknown-sphere02 collide-shape-prim-sphere :offset 1640)
(unknown-int50 int32 :offset 1656)
(unknown-dword30 time-frame :offset 1664)
(unknown-dword31 time-frame :offset 1672)
(unknown-dword32 time-frame :offset 1680)
(unknown-dword33 time-frame :offset 1688)
(unknown-dword34 time-frame :offset 1696)
(unknown-dword35 time-frame :offset 1704)
(unknown-dword36 time-frame :offset 1712)
(unknown-float80 float :offset 1724)
(unknown-float81 float :offset 1728)
(unknown-float82 float :offset 1732)
(unknown-vector80 vector :inline :offset 1744)
(unknown-cspace00 cspace :inline :offset 1760)
(unknown-vector90 vector :inline :offset 1776)
(unknown-vector91 vector :inline :offset 1792)
(unknown-vector92 vector :inline :offset 1824)
(unknown-cspace10 cspace :inline :offset 1808)
(unknown-symbol00 symbol :offset 1840)
(unknown-float90 float :offset 1844)
(unknown-float91 float :offset 1848)
(unknown-vector-array10 vector 16 :inline :offset 1856)
(unknown-float100 float :offset 2112)
(unknown-int10 int32 :offset 2116)
(unknown-float110 float :offset 2120)
(unknown-vector100 vector :inline :offset 2128)
(unknown-vector101 vector :inline :offset 2144)
(unknown-dword40 time-frame :offset 2160)
(unknown-dword41 time-frame :offset 2168)
(unknown-handle10 handle :offset 2176)
(unknown-uint20 uint32 :offset 2184)
(unknown-spoolanim00 spool-anim :overlay-at unknown-uint20)
(unknown-int20 int32 :overlay-at unknown-spoolanim00)
(unknown-symbol20 symbol :overlay-at unknown-int20)
(unknown-float120 float :overlay-at unknown-symbol20)
(unknown-int21 int32 :offset 2188)
(unknown-uint30 uint32 :overlay-at unknown-int21)
(unknown-float121 float :overlay-at unknown-uint30)
(unknown-uint31 uint32 :offset 2192)
(unknown-int37 int32 :overlay-at unknown-uint31)
(unknown-float122 float :offset 2196)
(unknown-float123 float :offset 2200)
(unknown-float124 float :offset 2204)
(unknown-vector102 vector :inline :offset 2224)
(unknown-vector103 vector :inline :offset 2240)
(unknown-quaternion02 quaternion :inline :offset 2256)
(unknown-quaternion03 quaternion :inline :offset 2272)
(unknown-smush00 smush-control :inline :offset 2288)
(unknown-vector110 vector :inline :offset 2320)
(unknown-vector111 vector :inline :offset 2336)
(unknown-symbol30 symbol :offset 2384)
(unknown-int31 uint32 :overlay-at unknown-symbol30)
(unknown-dword50 int64 :offset 2392)
(unknown-dword51 int64 :offset 2400)
(unknown-pointer00 pointer :offset 2416)
(unknown-symbol40 symbol :offset 2428)
(unknown-dword60 int64 :offset 2432)
(unknown-dword61 int64 :offset 2440)
(unknown-dword62 int64 :offset 2448)
(unknown-dword63 int64 :offset 2456)
(unknown-halfword00 int16 :offset 2488)
(history-length int16 :offset 2490)
(history-data collide-history 128 :inline)
(unknown-float140 float :offset 18944)
(unknown-dword70 time-frame :offset 18952)
(unknown-int40 int32 :offset 18880)
(unknown-dword80 time-frame :offset 18888)
(unknown-dword81 time-frame :offset 18896)
(unknown-float130 float :offset 18904)
(unknown-float131 float :offset 18908)
(unknown-dword82 time-frame :offset 18912)
(unknown-vector120 vector :inline :offset 18928)
(unknown-float150 float :overlay-at unknown-float140)
(unknown-vector121 vector :inline :offset 18960)
(wall-pat pat-surface :offset 18976)
(unknown-soundid00 sound-id :offset 18980)
(unknown-float141 float :offset 18984)
(unknown-soundid01 sound-id :offset 18988)
(unknown-int34 int32 :offset 18992)
(unknown-int35 int32 :offset 18996)
(unknown-int36 int32 :offset 19000)
)
:method-count-assert 65
:size-assert #x4a3c
:flag-assert #x4100004a3c
)
;; definition for method 9 of type collide-history
;; INFO: Used lq/sq
(defmethod update! collide-history ((this collide-history) (cshape collide-shape-moving) (xs vector) (transv vector) (transv-out vector))
(defmethod update! ((this collide-history) (cshape collide-shape-moving) (xs vector) (transv vector) (transv-out vector))
(set! (-> this intersect quad) (-> xs quad))
(set! (-> this transv quad) (-> transv quad))
(set! (-> this transv-out quad) (-> transv-out quad))
+51 -66
View File
@@ -3,17 +3,14 @@
;; definition of type touching-prim
(deftype touching-prim (structure)
((cprim collide-shape-prim :offset-assert 0)
(has-tri? symbol :offset-assert 4)
(tri collide-tri-result :inline :offset-assert 16)
((cprim collide-shape-prim)
(has-tri? symbol)
(tri collide-tri-result :inline)
)
:method-count-assert 9
:size-assert #x64
:flag-assert #x900000064
)
;; definition for method 3 of type touching-prim
(defmethod inspect touching-prim ((this touching-prim))
(defmethod inspect ((this touching-prim))
(format #t "[~8x] ~A~%" this 'touching-prim)
(format #t "~Tcprim: ~A~%" (-> this cprim))
(format #t "~Thas-tri?: ~A~%" (-> this has-tri?))
@@ -23,26 +20,23 @@
;; definition of type touching-prims-entry
(deftype touching-prims-entry (structure)
((next touching-prims-entry :offset-assert 0)
(prev touching-prims-entry :offset-assert 4)
(allocated? symbol :offset-assert 8)
(u float :offset-assert 12)
(prim1 touching-prim :inline :offset-assert 16)
(prim2 touching-prim :inline :offset-assert 128)
((next touching-prims-entry)
(prev touching-prims-entry)
(allocated? symbol)
(u float)
(prim1 touching-prim :inline)
(prim2 touching-prim :inline)
)
:method-count-assert 13
:size-assert #xe4
:flag-assert #xd000000e4
(:methods
(get-touched-prim (_type_ trsqv touching-shapes-entry) collide-shape-prim 9)
(touching-prims-entry-method-10 () none 10)
(get-middle-of-bsphere-overlap (_type_ vector) vector 11)
(get-touched-tri (_type_ collide-shape touching-shapes-entry) collide-tri-result 12)
(get-touched-prim (_type_ trsqv touching-shapes-entry) collide-shape-prim)
(touching-prims-entry-method-10 () none)
(get-middle-of-bsphere-overlap (_type_ vector) vector)
(get-touched-tri (_type_ collide-shape touching-shapes-entry) collide-tri-result)
)
)
;; definition for method 3 of type touching-prims-entry
(defmethod inspect touching-prims-entry ((this touching-prims-entry))
(defmethod inspect ((this touching-prims-entry))
(format #t "[~8x] ~A~%" this 'touching-prims-entry)
(format #t "~Tnext: #<touching-prims-entry @ #x~X>~%" (-> this next))
(format #t "~Tprev: #<touching-prims-entry @ #x~X>~%" (-> this prev))
@@ -55,23 +49,20 @@
;; definition of type touching-prims-entry-pool
(deftype touching-prims-entry-pool (structure)
((head touching-prims-entry :offset-assert 0)
(nodes touching-prims-entry 64 :inline :offset-assert 16)
((head touching-prims-entry)
(nodes touching-prims-entry 64 :inline)
)
:method-count-assert 13
:size-assert #x3c10
:flag-assert #xd00003c10
(:methods
(new (symbol type) _type_ 0)
(alloc-node (_type_) touching-prims-entry 9)
(get-free-node-count (_type_) int 10)
(init-list! (_type_) none 11)
(free-node (_type_ touching-prims-entry) touching-prims-entry 12)
(new (symbol type) _type_)
(alloc-node (_type_) touching-prims-entry)
(get-free-node-count (_type_) int)
(init-list! (_type_) none)
(free-node (_type_ touching-prims-entry) touching-prims-entry)
)
)
;; definition for method 3 of type touching-prims-entry-pool
(defmethod inspect touching-prims-entry-pool ((this touching-prims-entry-pool))
(defmethod inspect ((this touching-prims-entry-pool))
(format #t "[~8x] ~A~%" this 'touching-prims-entry-pool)
(format #t "~Thead: #<touching-prims-entry @ #x~X>~%" (-> this head))
(format #t "~Tnodes[64] @ #x~X~%" (-> this nodes))
@@ -80,7 +71,7 @@
;; definition for method 11 of type touching-prims-entry-pool
;; INFO: Return type mismatch symbol vs none.
(defmethod init-list! touching-prims-entry-pool ((this touching-prims-entry-pool))
(defmethod init-list! ((this touching-prims-entry-pool))
(let ((prev (the-as touching-prims-entry #f)))
(let ((current (the-as touching-prims-entry (-> this nodes))))
(set! (-> this head) current)
@@ -115,30 +106,27 @@
;; definition of type touching-shapes-entry
(deftype touching-shapes-entry (structure)
((cshape1 collide-shape :offset-assert 0)
(cshape2 collide-shape :offset-assert 4)
(resolve-u int8 :offset-assert 8)
(head touching-prims-entry :offset-assert 12)
((cshape1 collide-shape)
(cshape2 collide-shape)
(resolve-u int8)
(head touching-prims-entry)
)
:allow-misaligned
:method-count-assert 18
:size-assert #x10
:flag-assert #x1200000010
(:methods
(touching-shapes-entry-method-9 (_type_) none 9)
(get-touched-shape (_type_ collide-shape) collide-shape 10)
(touching-shapes-entry-method-11 () none 11)
(prims-touching? (_type_ collide-shape-moving uint) touching-prims-entry 12)
(prims-touching-action? (_type_ collide-shape collide-action collide-action) touching-prims-entry 13)
(touching-shapes-entry-method-14 () none 14)
(free-touching-prims-list (_type_) symbol 15)
(get-head (_type_) touching-prims-entry 16)
(get-next (_type_ touching-prims-entry) touching-prims-entry 17)
(touching-shapes-entry-method-9 (_type_) none)
(get-touched-shape (_type_ collide-shape) collide-shape)
(touching-shapes-entry-method-11 () none)
(prims-touching? (_type_ collide-shape-moving uint) touching-prims-entry)
(prims-touching-action? (_type_ collide-shape collide-action collide-action) touching-prims-entry)
(touching-shapes-entry-method-14 () none)
(free-touching-prims-list (_type_) symbol)
(get-head (_type_) touching-prims-entry)
(get-next (_type_ touching-prims-entry) touching-prims-entry)
)
)
;; definition for method 3 of type touching-shapes-entry
(defmethod inspect touching-shapes-entry ((this touching-shapes-entry))
(defmethod inspect ((this touching-shapes-entry))
(format #t "[~8x] ~A~%" this 'touching-shapes-entry)
(format #t "~Tcshape1: ~A~%" (-> this cshape1))
(format #t "~Tcshape2: ~A~%" (-> this cshape2))
@@ -149,26 +137,23 @@
;; definition of type touching-list
(deftype touching-list (structure)
((num-touching-shapes int32 :offset-assert 0)
(resolve-u int8 :offset-assert 4)
(touching-shapes touching-shapes-entry 32 :inline :offset-assert 8)
((num-touching-shapes int32)
(resolve-u int8)
(touching-shapes touching-shapes-entry 32 :inline)
)
:method-count-assert 15
:size-assert #x208
:flag-assert #xf00000208
(:methods
(new (symbol type) _type_ 0)
(add-touching-prims (_type_ collide-shape-prim collide-shape-prim float collide-tri-result collide-tri-result) none 9)
(touching-list-method-10 () none 10)
(update-from-step-size (_type_ float) none 11)
(send-events-for-touching-shapes (_type_) none 12)
(get-shapes-entry (_type_ collide-shape collide-shape) touching-shapes-entry 13)
(free-all-prim-nodes (_type_) none 14)
(new (symbol type) _type_)
(add-touching-prims (_type_ collide-shape-prim collide-shape-prim float collide-tri-result collide-tri-result) none)
(touching-list-method-10 () none)
(update-from-step-size (_type_ float) none)
(send-events-for-touching-shapes (_type_) none)
(get-shapes-entry (_type_ collide-shape collide-shape) touching-shapes-entry)
(free-all-prim-nodes (_type_) none)
)
)
;; definition for method 3 of type touching-list
(defmethod inspect touching-list ((this touching-list))
(defmethod inspect ((this touching-list))
(format #t "[~8x] ~A~%" this 'touching-list)
(format #t "~Tnum-touching-shapes: ~D~%" (-> this num-touching-shapes))
(format #t "~Tresolve-u: ~D~%" (-> this resolve-u))
@@ -192,12 +177,12 @@
)
;; definition for method 16 of type touching-shapes-entry
(defmethod get-head touching-shapes-entry ((this touching-shapes-entry))
(defmethod get-head ((this touching-shapes-entry))
(-> this head)
)
;; definition for method 17 of type touching-shapes-entry
(defmethod get-next touching-shapes-entry ((this touching-shapes-entry) (arg0 touching-prims-entry))
(defmethod get-next ((this touching-shapes-entry) (arg0 touching-prims-entry))
(-> arg0 next)
)
+24 -27
View File
@@ -2,7 +2,7 @@
(in-package goal)
;; definition for method 10 of type touching-prims-entry-pool
(defmethod get-free-node-count touching-prims-entry-pool ((this touching-prims-entry-pool))
(defmethod get-free-node-count ((this touching-prims-entry-pool))
(let ((v0-0 0))
(let ((v1-0 (-> this head)))
(while v1-0
@@ -18,7 +18,7 @@
)
;; definition for method 9 of type touching-prims-entry-pool
(defmethod alloc-node touching-prims-entry-pool ((this touching-prims-entry-pool))
(defmethod alloc-node ((this touching-prims-entry-pool))
(let ((gp-0 (-> this head)))
(cond
(gp-0
@@ -41,7 +41,7 @@
)
;; definition for method 12 of type touching-prims-entry-pool
(defmethod free-node touching-prims-entry-pool ((this touching-prims-entry-pool) (arg0 touching-prims-entry))
(defmethod free-node ((this touching-prims-entry-pool) (arg0 touching-prims-entry))
(when (-> arg0 allocated?)
(set! (-> arg0 allocated?) #f)
(let ((v1-1 (-> this head)))
@@ -57,7 +57,7 @@
)
;; definition for method 15 of type touching-shapes-entry
(defmethod free-touching-prims-list touching-shapes-entry ((this touching-shapes-entry))
(defmethod free-touching-prims-list ((this touching-shapes-entry))
(when (-> this cshape1)
(set! (-> this cshape1) #f)
(let ((gp-0 (-> this head)))
@@ -79,7 +79,7 @@
;; definition for method 14 of type touching-list
;; INFO: Return type mismatch int vs none.
(defmethod free-all-prim-nodes touching-list ((this touching-list))
(defmethod free-all-prim-nodes ((this touching-list))
(let ((s5-0 (the-as touching-shapes-entry (-> this touching-shapes))))
(countdown (s4-0 (-> this num-touching-shapes))
(free-touching-prims-list s5-0)
@@ -94,7 +94,7 @@
;; definition for method 13 of type touching-list
;; INFO: Return type mismatch object vs touching-shapes-entry.
(defmethod get-shapes-entry touching-list ((this touching-list) (arg0 collide-shape) (arg1 collide-shape))
(defmethod get-shapes-entry ((this touching-list) (arg0 collide-shape) (arg1 collide-shape))
(let ((v0-0 (the-as touching-shapes-entry (-> this touching-shapes))))
(let ((v1-0 (the-as touching-shapes-entry #f)))
(countdown (a3-0 (-> this num-touching-shapes))
@@ -139,16 +139,13 @@
;; definition of type add-prims-touching-work
(deftype add-prims-touching-work (structure)
((tri1 collide-tri-result :offset-assert 0)
(tri2 collide-tri-result :offset-assert 4)
((tri1 collide-tri-result)
(tri2 collide-tri-result)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type add-prims-touching-work
(defmethod inspect add-prims-touching-work ((this add-prims-touching-work))
(defmethod inspect ((this add-prims-touching-work))
(format #t "[~8x] ~A~%" this 'add-prims-touching-work)
(format #t "~Ttri1: #<collide-tri-result @ #x~X>~%" (-> this tri1))
(format #t "~Ttri2: #<collide-tri-result @ #x~X>~%" (-> this tri2))
@@ -158,13 +155,13 @@
;; definition for method 9 of type touching-list
;; INFO: Return type mismatch int vs none.
;; WARN: Function (method 9 touching-list) has a return type of none, but the expression builder found a return statement.
(defmethod add-touching-prims touching-list ((this touching-list)
(arg0 collide-shape-prim)
(arg1 collide-shape-prim)
(arg2 float)
(arg3 collide-tri-result)
(arg4 collide-tri-result)
)
(defmethod add-touching-prims ((this touching-list)
(arg0 collide-shape-prim)
(arg1 collide-shape-prim)
(arg2 float)
(arg3 collide-tri-result)
(arg4 collide-tri-result)
)
(let ((gp-0 (new 'stack-no-clear 'add-prims-touching-work)))
(set! (-> gp-0 tri1) arg3)
(set! (-> gp-0 tri2) arg4)
@@ -267,7 +264,7 @@
;; definition for method 11 of type touching-list
;; INFO: Return type mismatch int vs none.
(defmethod update-from-step-size touching-list ((this touching-list) (arg0 float))
(defmethod update-from-step-size ((this touching-list) (arg0 float))
(when (nonzero? (-> this resolve-u))
(set! (-> this resolve-u) 0)
(let ((s5-0 (the-as touching-shapes-entry (-> this touching-shapes))))
@@ -328,7 +325,7 @@
;; definition for method 12 of type touching-list
;; INFO: Return type mismatch int vs none.
(defmethod send-events-for-touching-shapes touching-list ((this touching-list))
(defmethod send-events-for-touching-shapes ((this touching-list))
(let ((entry (the-as touching-shapes-entry (-> this touching-shapes))))
(countdown (i (-> this num-touching-shapes))
(let ((c1 (-> entry cshape1)))
@@ -371,7 +368,7 @@
)
;; definition for method 12 of type touching-shapes-entry
(defmethod prims-touching? touching-shapes-entry ((this touching-shapes-entry) (arg0 collide-shape-moving) (arg1 uint))
(defmethod prims-touching? ((this touching-shapes-entry) (arg0 collide-shape-moving) (arg1 uint))
(cond
((= (-> this cshape1) arg0)
(let ((v1-1 (-> this head)))
@@ -401,7 +398,7 @@
)
;; definition for method 13 of type touching-shapes-entry
(defmethod prims-touching-action? touching-shapes-entry ((this touching-shapes-entry) (arg0 collide-shape) (arg1 collide-action) (arg2 collide-action))
(defmethod prims-touching-action? ((this touching-shapes-entry) (arg0 collide-shape) (arg1 collide-action) (arg2 collide-action))
(cond
((= (-> this cshape1) arg0)
(let ((v1-1 (-> this head)))
@@ -435,7 +432,7 @@
)
;; definition for method 10 of type touching-shapes-entry
(defmethod get-touched-shape touching-shapes-entry ((this touching-shapes-entry) (arg0 collide-shape))
(defmethod get-touched-shape ((this touching-shapes-entry) (arg0 collide-shape))
(cond
((= (-> this cshape1) arg0)
(return (-> this cshape2))
@@ -448,7 +445,7 @@
)
;; definition for method 9 of type touching-prims-entry
(defmethod get-touched-prim touching-prims-entry ((this touching-prims-entry) (arg0 trsqv) (arg1 touching-shapes-entry))
(defmethod get-touched-prim ((this touching-prims-entry) (arg0 trsqv) (arg1 touching-shapes-entry))
(cond
((= (-> arg1 cshape1) arg0)
(return (-> this prim1 cprim))
@@ -461,7 +458,7 @@
)
;; definition for method 12 of type touching-prims-entry
(defmethod get-touched-tri touching-prims-entry ((this touching-prims-entry) (arg0 collide-shape) (arg1 touching-shapes-entry))
(defmethod get-touched-tri ((this touching-prims-entry) (arg0 collide-shape) (arg1 touching-shapes-entry))
(let ((v0-0 (the-as collide-tri-result #f)))
(cond
((= (-> arg1 cshape1) arg0)
@@ -484,7 +481,7 @@
)
;; definition for method 11 of type touching-prims-entry
(defmethod get-middle-of-bsphere-overlap touching-prims-entry ((this touching-prims-entry) (arg0 vector))
(defmethod get-middle-of-bsphere-overlap ((this touching-prims-entry) (arg0 vector))
(let* ((s4-0 (-> this prim1 cprim))
(s3-0 (-> this prim2 cprim))
(gp-1 (vector-!
+6 -12
View File
@@ -14,13 +14,10 @@
(nolineofsight uint8 :offset 12 :size 1)
(unknown-bit uint8 :offset 15 :size 1)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type pat-surface
(defmethod inspect pat-surface ((this pat-surface))
(defmethod inspect ((this pat-surface))
(format #t "[~8x] ~A~%" this 'pat-surface)
(format #t "~Tskip: ~D~%" (-> this skip))
(format #t "~Tmode: ~D~%" (-> this mode))
@@ -162,18 +159,15 @@
;; definition of type pat-mode-info
(deftype pat-mode-info (structure)
((name string :offset-assert 0)
(wall-angle float :offset-assert 4)
(color rgba :offset-assert 8)
(hilite-color rgba :offset-assert 12)
((name string)
(wall-angle float)
(color rgba)
(hilite-color rgba)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type pat-mode-info
(defmethod inspect pat-mode-info ((this pat-mode-info))
(defmethod inspect ((this pat-mode-info))
(format #t "[~8x] ~A~%" this 'pat-mode-info)
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Twall-angle: ~f~%" (-> this wall-angle))
+34 -37
View File
@@ -3,46 +3,43 @@
;; definition of type surface
(deftype surface (basic)
((name symbol :offset-assert 4)
(turnv float :offset-assert 8)
(turnvv float :offset-assert 12)
(tiltv float :offset-assert 16)
(tiltvv float :offset-assert 20)
(transv-max float :offset-assert 24)
(target-speed float :offset-assert 28)
(seek0 float :offset-assert 32)
(seek90 float :offset-assert 36)
(seek180 float :offset-assert 40)
(fric float :offset-assert 44)
(nonlin-fric-dist float :offset-assert 48)
(slip-factor float :offset-assert 52)
(slide-factor float :offset-assert 56)
(slope-up-factor float :offset-assert 60)
(slope-down-factor float :offset-assert 64)
(slope-slip-angle float :offset-assert 68)
(impact-fric float :offset-assert 72)
(bend-factor float :offset-assert 76)
(bend-speed float :offset-assert 80)
(alignv float :offset-assert 84)
(slope-up-traction float :offset-assert 88)
(align-speed float :offset-assert 92)
(active-hook (function none) :offset 128)
(touch-hook (function none) :offset-assert 132)
(impact-hook function :offset-assert 136)
(mult-hook (function surface surface surface int none) :offset-assert 140)
(mode symbol :offset-assert 144)
(flags surface-flags :offset-assert 148)
(data float 30 :offset 8)
(hook function 4 :offset 128)
(dataw uint32 2 :offset 144)
((name symbol)
(turnv float)
(turnvv float)
(tiltv float)
(tiltvv float)
(transv-max float)
(target-speed float)
(seek0 float)
(seek90 float)
(seek180 float)
(fric float)
(nonlin-fric-dist float)
(slip-factor float)
(slide-factor float)
(slope-up-factor float)
(slope-down-factor float)
(slope-slip-angle float)
(impact-fric float)
(bend-factor float)
(bend-speed float)
(alignv float)
(slope-up-traction float)
(align-speed float)
(active-hook (function none) :offset 128)
(touch-hook (function none))
(impact-hook function)
(mult-hook (function surface surface surface int none))
(mode symbol)
(flags surface-flags)
(data float 30 :overlay-at turnv)
(hook function 4 :overlay-at active-hook)
(dataw uint32 2 :overlay-at mode)
)
:method-count-assert 9
:size-assert #x98
:flag-assert #x900000098
)
;; definition for method 3 of type surface
(defmethod inspect surface ((this surface))
(defmethod inspect ((this surface))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tdata[30] @ #x~X~%" (&-> this turnv))
@@ -99,7 +96,7 @@
)
;; definition for method 2 of type surface
(defmethod print surface ((this surface))
(defmethod print ((this surface))
(format
#t
"#<surface f0:~m f1:~f tf+:~f tf-:~f sf:~f tvv:~m"
+4 -8
View File
@@ -4,17 +4,13 @@
;; definition of type babak
(deftype babak (nav-enemy)
()
:heap-base #x120
:method-count-assert 76
:size-assert #x190
:flag-assert #x4c01200190
(:states
babak-run-to-cannon
)
)
;; definition for method 3 of type babak
(defmethod inspect babak ((this babak))
(defmethod inspect ((this babak))
(let ((t9-0 (method-of-type nav-enemy inspect)))
(t9-0 this)
)
@@ -250,7 +246,7 @@
;; definition for method 47 of type babak
;; INFO: Return type mismatch int vs none.
(defmethod initialize-collision babak ((this babak))
(defmethod initialize-collision ((this babak))
(let ((s5-0 (new 'process 'collide-shape-moving this (collide-list-enum usually-hit-by-player))))
(set! (-> s5-0 dynam) (copy *standard-dynamics* 'process))
(set! (-> s5-0 reaction) default-collision-reaction)
@@ -299,7 +295,7 @@
;; definition for method 48 of type babak
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-48 babak ((this babak))
(defmethod nav-enemy-method-48 ((this babak))
(initialize-skeleton this *babak-sg* '())
(init-defaults! this *babak-nav-enemy-info*)
(set! (-> this neck up) (the-as uint 0))
@@ -311,7 +307,7 @@
;; definition for method 59 of type babak
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-59 babak ((this babak))
(defmethod nav-enemy-method-59 ((this babak))
(cond
((and (and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status complete)))
(logtest? (-> this enemy-info options) (fact-options has-power-cell))
+63 -69
View File
@@ -3,43 +3,41 @@
;; definition of type basebutton
(deftype basebutton (process-drawable)
((root-override collide-shape-moving :offset 112)
(down? symbol :offset-assert 176)
(spawned-by-other? symbol :offset-assert 180)
(move-to? symbol :offset-assert 184)
(notify-actor entity-actor :offset-assert 188)
(timeout float :offset-assert 192)
(button-id int32 :offset-assert 196)
(event-going-down symbol :offset-assert 200)
(event-down symbol :offset-assert 204)
(event-going-up symbol :offset-assert 208)
(event-up symbol :offset-assert 212)
(anim-speed float :offset-assert 216)
(move-to-pos vector :inline :offset-assert 224)
(move-to-quat quaternion :inline :offset-assert 240)
((root collide-shape-moving :override)
(down? symbol)
(spawned-by-other? symbol)
(move-to? symbol)
(notify-actor entity-actor)
(timeout float)
(button-id int32)
(event-going-down symbol)
(event-down symbol)
(event-going-up symbol)
(event-up symbol)
(anim-speed float)
(move-to-pos vector :inline)
(move-to-quat quaternion :inline)
)
:heap-base #x90
:method-count-assert 32
:size-assert #x100
:flag-assert #x2000900100
(:state-methods
basebutton-down-idle
basebutton-going-down
basebutton-going-up
basebutton-startup
basebutton-up-idle
)
(:methods
(basebutton-down-idle () _type_ :state 20)
(basebutton-going-down () _type_ :state 21)
(basebutton-going-up () _type_ :state 22)
(basebutton-startup () _type_ :state 23)
(basebutton-up-idle () _type_ :state 24)
(reset! (_type_) float 25)
(basebutton-method-26 (_type_) none 26)
(basebutton-method-27 (_type_) collide-shape-moving 27)
(arm-trigger-event! (_type_) symbol 28)
(basebutton-method-29 (_type_ symbol entity) none 29)
(move-to-vec-or-quat! (_type_ vector quaternion) quaternion 30)
(press! (_type_ symbol) int 31)
(reset! (_type_) float)
(basebutton-method-26 (_type_) none)
(basebutton-method-27 (_type_) collide-shape-moving)
(arm-trigger-event! (_type_) symbol)
(basebutton-method-29 (_type_ symbol entity) none)
(move-to-vec-or-quat! (_type_ vector quaternion) quaternion)
(press! (_type_ symbol) int)
)
)
;; definition for method 3 of type basebutton
(defmethod inspect basebutton ((this basebutton))
(defmethod inspect ((this basebutton))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -67,15 +65,15 @@
;; definition for method 30 of type basebutton
;; INFO: Used lq/sq
(defmethod move-to-vec-or-quat! basebutton ((this basebutton) (arg0 vector) (arg1 quaternion))
(defmethod move-to-vec-or-quat! ((this basebutton) (arg0 vector) (arg1 quaternion))
(set! (-> this move-to?) #t)
(if arg0
(set! (-> this move-to-pos quad) (-> arg0 quad))
(set! (-> this move-to-pos quad) (-> this root-override trans quad))
(set! (-> this move-to-pos quad) (-> this root trans quad))
)
(if arg1
(quaternion-copy! (-> this move-to-quat) arg1)
(quaternion-copy! (-> this move-to-quat) (-> this root-override quat))
(quaternion-copy! (-> this move-to-quat) (-> this root quat))
)
)
@@ -125,8 +123,8 @@
:post (behavior ()
(when (-> self move-to?)
(set! (-> self move-to?) #f)
(set! (-> self root-override trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root-override quat) (-> self move-to-quat))
(set! (-> self root trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root quat) (-> self move-to-quat))
(rider-post)
)
)
@@ -162,8 +160,8 @@
:post (behavior ()
(when (-> self move-to?)
(set! (-> self move-to?) #f)
(set! (-> self root-override trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root-override quat) (-> self move-to-quat))
(set! (-> self root trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root quat) (-> self move-to-quat))
)
(rider-post)
)
@@ -210,8 +208,8 @@
:post (behavior ()
(when (-> self move-to?)
(set! (-> self move-to?) #f)
(set! (-> self root-override trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root-override quat) (-> self move-to-quat))
(set! (-> self root trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root quat) (-> self move-to-quat))
(rider-post)
)
)
@@ -247,15 +245,15 @@
:post (behavior ()
(when (-> self move-to?)
(set! (-> self move-to?) #f)
(set! (-> self root-override trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root-override quat) (-> self move-to-quat))
(set! (-> self root trans quad) (-> self move-to-pos quad))
(quaternion-copy! (-> self root quat) (-> self move-to-quat))
)
(rider-post)
)
)
;; definition for method 31 of type basebutton
(defmethod press! basebutton ((this basebutton) (arg0 symbol))
(defmethod press! ((this basebutton) (arg0 symbol))
(set! (-> this down?) arg0)
(cond
(arg0
@@ -273,7 +271,7 @@
;; definition for method 29 of type basebutton
;; INFO: Return type mismatch object vs none.
(defmethod basebutton-method-29 basebutton ((this basebutton) (arg0 symbol) (arg1 entity))
(defmethod basebutton-method-29 ((this basebutton) (arg0 symbol) (arg1 entity))
(with-pp
(when arg0
(cond
@@ -304,7 +302,7 @@
)
;; definition for method 25 of type basebutton
(defmethod reset! basebutton ((this basebutton))
(defmethod reset! ((this basebutton))
(set! (-> this down?) #f)
(set! (-> this spawned-by-other?) #t)
(set! (-> this move-to?) #f)
@@ -318,7 +316,7 @@
)
;; definition for method 28 of type basebutton
(defmethod arm-trigger-event! basebutton ((this basebutton))
(defmethod arm-trigger-event! ((this basebutton))
(let ((v0-0 'trigger))
(set! (-> this event-going-down) v0-0)
v0-0
@@ -326,7 +324,7 @@
)
;; definition for method 26 of type basebutton
(defmethod basebutton-method-26 basebutton ((this basebutton))
(defmethod basebutton-method-26 ((this basebutton))
(initialize-skeleton this *generic-button-sg* '())
(logior! (-> this skel status) (janim-status inited))
(ja-channel-set! 1)
@@ -355,13 +353,13 @@
)
)
(set! (-> this anim-speed) 2.0)
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(ja-post)
(none)
)
;; definition for method 27 of type basebutton
(defmethod basebutton-method-27 basebutton ((this basebutton))
(defmethod basebutton-method-27 ((this basebutton))
(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) default-collision-reaction)
@@ -396,14 +394,14 @@
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
s5-0
)
)
;; definition for method 11 of type basebutton
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! basebutton ((this basebutton) (arg0 entity-actor))
(defmethod init-from-entity! ((this basebutton) (arg0 entity-actor))
(reset! this)
(set! (-> this spawned-by-other?) #f)
(set! (-> this button-id) -1)
@@ -429,7 +427,7 @@
(set! (-> this notify-actor) (entity-actor-lookup arg0 'alt-actor 0))
(set! (-> this timeout) (res-lump-float arg0 'timeout))
(if (not (-> this spawned-by-other?))
(nav-mesh-connect this (-> this root-override) (the-as nav-control #f))
(nav-mesh-connect this (-> this root) (the-as nav-control #f))
)
(arm-trigger-event! this)
(basebutton-method-26 this)
@@ -451,9 +449,9 @@
(set! (-> self entity) arg0)
)
(basebutton-method-27 self)
(set! (-> self root-override trans quad) (-> arg1 quad))
(quaternion-copy! (-> self root-override quat) arg2)
(set-vector! (-> self root-override scale) 1.0 1.0 1.0 1.0)
(set! (-> self root trans quad) (-> arg1 quad))
(quaternion-copy! (-> self root quat) arg2)
(set-vector! (-> self root scale) 1.0 1.0 1.0 1.0)
(arm-trigger-event! self)
(basebutton-method-26 self)
(go-virtual basebutton-startup)
@@ -472,25 +470,21 @@
;; definition of type warp-gate
(deftype warp-gate (process-drawable)
((level symbol :offset-assert 176)
(level-slot int32 :offset-assert 180)
(min-slot int32 :offset-assert 184)
(max-slot int32 :offset-assert 188)
((level symbol)
(level-slot int32)
(min-slot int32)
(max-slot int32)
)
:heap-base #x50
:method-count-assert 24
:size-assert #xc0
:flag-assert #x18005000c0
(:methods
(idle () _type_ :state 20)
(active () _type_ :state 21)
(use (int level) _type_ :state 22)
(hidden () _type_ :state 23)
(:state-methods
idle
active
(use int level)
hidden
)
)
;; definition for method 3 of type warp-gate
(defmethod inspect warp-gate ((this warp-gate))
(defmethod inspect ((this warp-gate))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
+62 -70
View File
@@ -3,28 +3,24 @@
;; definition of type baseplat
(deftype baseplat (process-drawable)
((root-override collide-shape-moving :offset 112)
(smush smush-control :inline :offset-assert 176)
(basetrans vector :inline :offset-assert 208)
(bouncing symbol :offset-assert 224)
((root collide-shape-moving :override)
(smush smush-control :inline)
(basetrans vector :inline)
(bouncing symbol)
)
:heap-base #x80
:method-count-assert 27
:size-assert #xe4
:flag-assert #x1b008000e4
(:methods
(baseplat-method-20 (_type_) none 20)
(baseplat-method-21 (_type_) none 21)
(baseplat-method-22 (_type_) none 22)
(get-unlit-skel (_type_) skeleton-group 23)
(baseplat-method-24 (_type_) none 24)
(baseplat-method-25 (_type_) sparticle-launch-group 25)
(baseplat-method-26 (_type_) none 26)
(baseplat-method-20 (_type_) none)
(baseplat-method-21 (_type_) none)
(baseplat-method-22 (_type_) none)
(get-unlit-skel (_type_) skeleton-group)
(baseplat-method-24 (_type_) none)
(baseplat-method-25 (_type_) sparticle-launch-group)
(baseplat-method-26 (_type_) none)
)
)
;; definition for method 3 of type baseplat
(defmethod inspect baseplat ((this baseplat))
(defmethod inspect ((this baseplat))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -37,9 +33,9 @@
;; definition for method 21 of type baseplat
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-21 baseplat ((this baseplat))
(defmethod baseplat-method-21 ((this baseplat))
(logior! (-> this skel status) (janim-status inited))
(set! (-> this basetrans quad) (-> this root-override trans quad))
(set! (-> this basetrans quad) (-> this root trans quad))
(set! (-> this bouncing) #f)
0
(none)
@@ -47,7 +43,7 @@
;; definition for method 22 of type baseplat
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-22 baseplat ((this baseplat))
(defmethod baseplat-method-22 ((this baseplat))
(activate! (-> this smush) -1.0 60 150 1.0 1.0)
(set! (-> this bouncing) #t)
(logclear! (-> this mask) (process-mask sleep))
@@ -84,14 +80,14 @@
(let ((gp-0 (new 'stack-no-clear 'vector)))
(set! (-> gp-0 quad) (-> self basetrans quad))
(+! (-> gp-0 y) (* 819.2 (update! (-> self smush))))
(move-to-point! (-> self root-override) gp-0)
(move-to-point! (-> self root) gp-0)
)
(if (not (!= (-> self smush amp) 0.0))
(set! (-> self bouncing) #f)
)
)
(else
(move-to-point! (-> self root-override) (-> self basetrans))
(move-to-point! (-> self root) (-> self basetrans))
)
)
(none)
@@ -107,15 +103,15 @@
;; definition for method 25 of type baseplat
;; INFO: Return type mismatch int vs sparticle-launch-group.
(defmethod baseplat-method-25 baseplat ((this baseplat))
(defmethod baseplat-method-25 ((this baseplat))
(the-as sparticle-launch-group 0)
)
;; definition for method 20 of type baseplat
;; INFO: Return type mismatch object vs none.
(defmethod baseplat-method-20 baseplat ((this baseplat))
(defmethod baseplat-method-20 ((this baseplat))
(if (nonzero? (-> this part))
(spawn (-> this part) (-> this root-override trans))
(spawn (-> this part) (-> this root trans))
)
(none)
)
@@ -132,37 +128,35 @@
;; definition of type eco-door
(deftype eco-door (process-drawable)
((root-override collide-shape :offset 112)
(speed float :offset-assert 176)
(open-distance float :offset-assert 180)
(close-distance float :offset-assert 184)
(out-dir vector :inline :offset-assert 192)
(open-sound sound-name :offset-assert 208)
(close-sound sound-name :offset-assert 224)
(state-actor entity-actor :offset-assert 240)
(flags eco-door-flags :offset-assert 244)
(locked symbol :offset-assert 248)
(auto-close symbol :offset-assert 252)
(one-way symbol :offset-assert 256)
((root collide-shape :override)
(speed float)
(open-distance float)
(close-distance float)
(out-dir vector :inline)
(open-sound sound-name)
(close-sound sound-name)
(state-actor entity-actor)
(flags eco-door-flags)
(locked symbol)
(auto-close symbol)
(one-way symbol)
)
:heap-base #xa0
:method-count-assert 27
:size-assert #x104
:flag-assert #x1b00a00104
(:state-methods
door-closed
door-opening
door-open
door-closing
)
(:methods
(door-closed () _type_ :state 20)
(door-opening () _type_ :state 21)
(door-open () _type_ :state 22)
(door-closing () _type_ :state 23)
(eco-door-method-24 (_type_) none 24)
(eco-door-method-25 (_type_) none 25)
(eco-door-method-26 (_type_) none 26)
(eco-door-method-24 (_type_) none)
(eco-door-method-25 (_type_) none)
(eco-door-method-26 (_type_) none)
)
)
;; definition for method 3 of type eco-door
;; INFO: Used lq/sq
(defmethod inspect eco-door ((this eco-door))
(defmethod inspect ((this eco-door))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -211,12 +205,11 @@ eco-door-event-handler
:code (behavior ()
(ja :num-func num-func-identity :frame-num 0.0)
(suspend)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(ja-post)
(loop
(when (and *target* (>= (-> self open-distance)
(vector-vector-distance (-> self root-override trans) (-> *target* control trans))
)
(when (and *target*
(>= (-> self open-distance) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
(eco-door-method-26 self)
(if (and (not (-> self locked))
@@ -246,10 +239,10 @@ eco-door-event-handler
)
)
(if gp-0
(sound-play "blue-eco-on" :position (the-as symbol (-> self root-override trans)))
(sound-play "blue-eco-on" :position (the-as symbol (-> self root trans)))
)
(sound-play-by-name (-> self open-sound) (new-sound-id) 1024 0 0 (sound-group sfx) #t)
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(until (ja-done? 0)
(ja :num! (seek! max (-> self speed)))
(if (and gp-0 (rand-vu-percent? 0.5))
@@ -270,20 +263,19 @@ eco-door-event-handler
:code (behavior ()
(set-time! (-> self state-time))
(process-entity-status! self (entity-perm-status complete) #t)
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(ja :num-func num-func-identity :frame-num max)
(logior! (-> self draw status) (draw-status hidden))
(suspend)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(ja-post)
(loop
(let ((f30-0 (vector4-dot (-> self out-dir) (target-pos 0)))
(f28-0 (vector4-dot (-> self out-dir) (camera-pos)))
)
(when (and (-> self auto-close)
(or (not *target*) (< (-> self close-distance)
(vector-vector-distance (-> self root-override trans) (-> *target* control trans))
)
(or (not *target*)
(< (-> self close-distance) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
)
(if (and (>= (* f30-0 f28-0) 0.0) (< 16384.0 (fabs f28-0)))
@@ -301,12 +293,12 @@ eco-door-event-handler
:virtual #t
:event eco-door-event-handler
:code (behavior ()
(restore-collide-with-as (-> self root-override))
(restore-collide-with-as (-> self root))
(logclear! (-> self draw status) (draw-status hidden))
(let ((gp-0 (new 'stack 'overlaps-others-params)))
(set! (-> gp-0 options) (the-as uint 1))
(set! (-> gp-0 tlist) #f)
(while (find-overlapping-shapes (-> self root-override) gp-0)
(while (find-overlapping-shapes (-> self root) gp-0)
(suspend)
)
)
@@ -325,7 +317,7 @@ eco-door-event-handler
;; definition for method 26 of type eco-door
;; INFO: Return type mismatch int vs none.
(defmethod eco-door-method-26 eco-door ((this eco-door))
(defmethod eco-door-method-26 ((this eco-door))
(when (-> this state-actor)
(if (logtest? (-> this state-actor extra perm status) (entity-perm-status complete))
(set! (-> this locked) (logtest? (-> this flags) (eco-door-flags ecdf01)))
@@ -338,7 +330,7 @@ eco-door-event-handler
;; definition for method 24 of type eco-door
;; INFO: Return type mismatch int vs none.
(defmethod eco-door-method-24 eco-door ((this eco-door))
(defmethod eco-door-method-24 ((this eco-door))
(let ((s5-0 (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((s4-0 (new 'process 'collide-shape-prim-mesh s5-0 (the-as uint 0) (the-as uint 0))))
(set! (-> s4-0 prim-core collide-as) (collide-kind wall-object))
@@ -351,7 +343,7 @@ eco-door-event-handler
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
)
0
(none)
@@ -359,18 +351,18 @@ eco-door-event-handler
;; definition for method 25 of type eco-door
;; INFO: Return type mismatch int vs none.
(defmethod eco-door-method-25 eco-door ((this eco-door))
(defmethod eco-door-method-25 ((this eco-door))
0
(none)
)
;; definition for method 11 of type eco-door
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! eco-door ((this eco-door) (arg0 entity-actor))
(defmethod init-from-entity! ((this eco-door) (arg0 entity-actor))
(eco-door-method-24 this)
(process-drawable-from-entity! this arg0)
(let ((f0-0 (res-lump-float (-> this entity) 'scale :default 1.0)))
(set-vector! (-> this root-override scale) f0-0 f0-0 f0-0 1.0)
(set-vector! (-> this root scale) f0-0 f0-0 f0-0 1.0)
)
(set! (-> this open-distance) 32768.0)
(set! (-> this close-distance) 49152.0)
@@ -386,9 +378,9 @@ eco-door-event-handler
(eco-door-method-26 this)
(set! (-> this auto-close) (logtest? (-> this flags) (eco-door-flags auto-close)))
(set! (-> this one-way) (logtest? (-> this flags) (eco-door-flags one-way)))
(vector-z-quaternion! (-> this out-dir) (-> this root-override quat))
(set! (-> this out-dir w) (- (vector-dot (-> this out-dir) (-> this root-override trans))))
(update-transforms! (-> this root-override))
(vector-z-quaternion! (-> this out-dir) (-> this root quat))
(set! (-> this out-dir w) (- (vector-dot (-> this out-dir) (-> this root trans))))
(update-transforms! (-> this root))
(eco-door-method-25 this)
(if (and (not (-> this auto-close))
(-> this entity)
File diff suppressed because it is too large Load Diff
+80 -110
View File
@@ -48,17 +48,14 @@
;; definition of type crate-bank
(deftype crate-bank (basic)
((COLLIDE_YOFF float :offset-assert 4)
(COLLIDE_RADIUS float :offset-assert 8)
(DARKECO_EXPLODE_RADIUS float :offset-assert 12)
((COLLIDE_YOFF float)
(COLLIDE_RADIUS float)
(DARKECO_EXPLODE_RADIUS float)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type crate-bank
(defmethod inspect crate-bank ((this crate-bank))
(defmethod inspect ((this crate-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~TCOLLIDE_YOFF: ~f~%" (-> this COLLIDE_YOFF))
(format #t "~TCOLLIDE_RADIUS: ~f~%" (-> this COLLIDE_RADIUS))
@@ -73,36 +70,34 @@
;; definition of type crate
(deftype crate (process-drawable)
((root-override collide-shape-moving :offset 112)
(smush smush-control :inline :offset-assert 176)
(base vector :inline :offset-assert 208)
(look symbol :offset-assert 224)
(defense symbol :offset-assert 228)
(incomming-attack-id uint64 :offset-assert 232)
(target handle :offset-assert 240)
(child-count int32 :offset-assert 248)
(victory-anim spool-anim :offset-assert 252)
((root collide-shape-moving :override)
(smush smush-control :inline)
(base vector :inline)
(look symbol)
(defense symbol)
(incomming-attack-id uint64)
(target handle)
(child-count int32)
(victory-anim spool-anim)
)
:heap-base #x90
:method-count-assert 30
:size-assert #x100
:flag-assert #x1e00900100
(:state-methods
wait
(die symbol int)
special-contents-die
bounce-on
(notice-blue handle)
)
(:methods
(wait () _type_ :state 20)
(die (symbol int) _type_ :state 21)
(special-contents-die () _type_ :state 22)
(bounce-on () _type_ :state 23)
(notice-blue (handle) _type_ :state 24)
(params-init (_type_ entity) none 25)
(art-init (_type_) crate 26)
(params-set! (_type_ symbol symbol) none 27)
(check-dead (_type_) none 28)
(smush-update! (_type_) none 29)
(params-init (_type_ entity) none)
(art-init (_type_) crate)
(params-set! (_type_ symbol symbol) none)
(check-dead (_type_) none)
(smush-update! (_type_) none)
)
)
;; definition for method 3 of type crate
(defmethod inspect crate ((this crate))
(defmethod inspect ((this crate))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -541,7 +536,7 @@
(go-virtual die #f (the-as int s5-0))
)
(else
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root-override trans y) (-> self base y)))
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root trans y) (-> self base y)))
(if (not (and (!= *kernel-boot-message* 'play) (= (-> *setting-control* current language) (language-enum japanese)))
)
(level-hint-spawn (text-id training-ironcrate) "sagevb36" (the-as entity #f) *entity-pool* (game-task none))
@@ -595,7 +590,7 @@
(go-virtual die #f (the-as int s5-0))
)
(else
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root-override trans y) (-> self base y)))
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root trans y) (-> self base y)))
(level-hint-spawn
(text-id sidekick-hint-crate-steel)
"sksp0006"
@@ -677,7 +672,7 @@
)
)
(('bonk)
(when (= (-> self root-override trans y) (-> self base y))
(when (= (-> self root trans y) (-> self base y))
(activate! (-> self smush) -0.1 75 150 1.0 1.0)
(go-virtual bounce-on)
)
@@ -691,7 +686,7 @@
(('eco-blue)
(if (not (or (= (-> self defense) 'darkeco)
(or (= (-> self next-state name) 'notice-blue) (= (-> self next-state name) 'die))
(!= (-> self root-override trans y) (-> self base y))
(!= (-> self root trans y) (-> self base y))
)
)
(go-virtual notice-blue (process->handle arg0))
@@ -706,7 +701,7 @@
:event crate-standard-event-handler
:code (behavior ()
(suspend)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(logior! (-> self mask) (process-mask sleep))
(loop
(suspend)
@@ -762,7 +757,7 @@
)
)
(when v1-6
(let* ((gp-2 (-> self root-override root-prim prim-core))
(let* ((gp-2 (-> self root root-prim prim-core))
(a1-3 (-> (the-as collide-shape v1-6) root-prim prim-core))
(f30-0 (vector-vector-distance (the-as vector gp-2) (the-as vector a1-3)))
)
@@ -840,14 +835,14 @@
:trans (behavior ()
(case (-> self type)
((crate-buzzer)
(if (and *target* (>= (-> *target* fact-info-target buzzer) 6.0))
(if (and *target* (>= (-> *target* fact buzzer) 6.0))
(spool-push *art-control* (-> self victory-anim name) 0 self -99.0)
)
)
)
)
:code (behavior ((arg0 symbol) (arg1 int))
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(if (nonzero? (-> self sound))
(stop! (-> self sound))
)
@@ -882,16 +877,13 @@
)
(case (-> self defense)
(('darkeco)
(let ((f0-0
(lerp-scale 1.0 0.0 (vector-vector-distance (-> self root-override trans) (target-pos 0)) 8192.0 40960.0)
)
)
(let ((f0-0 (lerp-scale 1.0 0.0 (vector-vector-distance (-> self root trans) (target-pos 0)) 8192.0 40960.0)))
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 (the int (* 255.0 f0-0)) (seconds 0.3))
)
(process-spawn
touch-tracker
:init touch-tracker-init
(-> self root-override trans)
(-> self root trans)
(-> *CRATE-bank* DARKECO_EXPLODE_RADIUS)
30
:to self
@@ -908,7 +900,7 @@
#f
#f
#f
(-> self root-override trans)
(-> self root trans)
:to *entity-pool*
)
)
@@ -921,7 +913,7 @@
#f
#f
#f
(-> self root-override trans)
(-> self root trans)
:to *entity-pool*
)
)
@@ -934,7 +926,7 @@
#f
#f
#f
(-> self root-override trans)
(-> self root trans)
:to *entity-pool*
)
)
@@ -1010,7 +1002,7 @@
)
)
)
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(logior! (-> self draw status) (draw-status hidden))
(drop-pickup (-> self fact) #t self (the-as fact-info #f) 0)
(set! (-> self child-count) (+ (process-count self) -1))
@@ -1033,7 +1025,7 @@
;; INFO: Used lq/sq
(defbehavior crate-init-by-other crate ((arg0 entity) (arg1 vector) (arg2 symbol))
(params-init self arg0)
(set! (-> self root-override trans quad) (-> arg1 quad))
(set! (-> self root trans quad) (-> arg1 quad))
(set! (-> self look) arg2)
(set! (-> self defense) arg2)
(art-init self)
@@ -1042,7 +1034,7 @@
)
;; definition for method 11 of type crate
(defmethod init-from-entity! crate ((this crate) (arg0 entity-actor))
(defmethod init-from-entity! ((this crate) (arg0 entity-actor))
(params-init this arg0)
(art-init this)
(check-dead this)
@@ -1051,7 +1043,7 @@
;; definition for method 25 of type crate
;; INFO: Return type mismatch crate vs none.
(defmethod params-init crate ((this crate) (arg0 entity))
(defmethod params-init ((this crate) (arg0 entity))
(stack-size-set! (-> this main-thread) 128)
(logior! (-> this mask) (process-mask crate))
(let ((s4-0 (new 'process 'collide-shape-moving this (collide-list-enum usually-hit-by-player))))
@@ -1072,7 +1064,7 @@
)
(set! (-> s4-0 nav-radius) (* 0.75 (-> s4-0 root-prim local-sphere w)))
(backup-collide-with-as s4-0)
(set! (-> this root-override) s4-0)
(set! (-> this root) s4-0)
)
(set! (-> this fact)
(new 'process 'fact-info this (pickup-type eco-pill-random) (-> *FACT-bank* default-pill-inc))
@@ -1124,14 +1116,14 @@
;; definition for method 26 of type crate
;; INFO: Used lq/sq
(defmethod art-init crate ((this crate))
(defmethod art-init ((this crate))
(case (-> this look)
(('iron)
(set! (-> this root-override root-prim prim-core offense) (collide-offense normal-attack))
(set! (-> this root root-prim prim-core offense) (collide-offense normal-attack))
(initialize-skeleton this *crate-iron-sg* '())
)
(('steel)
(set! (-> this root-override root-prim prim-core offense) (collide-offense indestructible))
(set! (-> this root root-prim prim-core offense) (collide-offense indestructible))
(initialize-skeleton this *crate-steel-sg* '())
)
(('darkeco)
@@ -1163,27 +1155,27 @@
)
(cond
((logtest? (fact-options indestructible) (-> this fact options))
(set! (-> this root-override root-prim prim-core offense) (collide-offense indestructible))
(set! (-> this root root-prim prim-core offense) (collide-offense indestructible))
)
((logtest? (-> this fact options) (fact-options strong-attack))
(set! (-> this root-override root-prim prim-core offense) (collide-offense strong-attack))
(set! (-> this root root-prim prim-core offense) (collide-offense strong-attack))
)
((logtest? (-> this fact options) (fact-options normal-attack))
(set! (-> this root-override root-prim prim-core offense) (collide-offense normal-attack))
(set! (-> this root root-prim prim-core offense) (collide-offense normal-attack))
)
((logtest? (-> this fact options) (fact-options touch))
(set! (-> this root-override root-prim prim-core offense) (collide-offense touch))
(set! (-> this root root-prim prim-core offense) (collide-offense touch))
)
)
(set! (-> this base quad) (-> this root-override trans quad))
(set! (-> this base quad) (-> this root trans quad))
(crate-post)
(nav-mesh-connect this (-> this root-override) (the-as nav-control #f))
(nav-mesh-connect this (-> this root) (the-as nav-control #f))
this
)
;; definition for method 27 of type crate
;; INFO: Return type mismatch crate vs none.
(defmethod params-set! crate ((this crate) (arg0 symbol) (arg1 symbol))
(defmethod params-set! ((this crate) (arg0 symbol) (arg1 symbol))
(if arg0
(set! (-> this look) arg0)
)
@@ -1195,7 +1187,7 @@
;; definition for method 28 of type crate
;; INFO: Return type mismatch int vs none.
(defmethod check-dead crate ((this crate))
(defmethod check-dead ((this crate))
(if (>= (-> this entity extra perm user-int8 0) 1)
(go (method-of-object this die) #t 0)
)
@@ -1207,11 +1199,11 @@
;; definition for method 29 of type crate
;; INFO: Return type mismatch int vs none.
(defmethod smush-update! crate ((this crate))
(defmethod smush-update! ((this crate))
(let ((f0-0 (update! (-> this smush))))
(set! (-> this root-override scale x) (+ 1.0 (* -0.5 f0-0)))
(set! (-> this root-override scale y) (+ 1.0 f0-0))
(set! (-> this root-override scale z) (+ 1.0 (* -0.5 f0-0)))
(set! (-> this root scale x) (+ 1.0 (* -0.5 f0-0)))
(set! (-> this root scale y) (+ 1.0 f0-0))
(set! (-> this root scale z) (+ 1.0 (* -0.5 f0-0)))
)
0
(none)
@@ -1220,14 +1212,10 @@
;; definition of type barrel
(deftype barrel (crate)
()
:heap-base #x90
:method-count-assert 30
:size-assert #x100
:flag-assert #x1e00900100
)
;; definition for method 3 of type barrel
(defmethod inspect barrel ((this barrel))
(defmethod inspect ((this barrel))
(let ((t9-0 (method-of-type crate inspect)))
(t9-0 this)
)
@@ -1236,7 +1224,7 @@
;; definition for method 25 of type barrel
;; INFO: Return type mismatch barrel vs none.
(defmethod params-init barrel ((this barrel) (arg0 entity))
(defmethod params-init ((this barrel) (arg0 entity))
(let ((t9-0 (method-of-type crate params-init)))
(t9-0 this arg0)
)
@@ -1247,14 +1235,10 @@
;; definition of type bucket
(deftype bucket (crate)
()
:heap-base #x90
:method-count-assert 30
:size-assert #x100
:flag-assert #x1e00900100
)
;; definition for method 3 of type bucket
(defmethod inspect bucket ((this bucket))
(defmethod inspect ((this bucket))
(let ((t9-0 (method-of-type crate inspect)))
(t9-0 this)
)
@@ -1263,7 +1247,7 @@
;; definition for method 25 of type bucket
;; INFO: Return type mismatch bucket vs none.
(defmethod params-init bucket ((this bucket) (arg0 entity))
(defmethod params-init ((this bucket) (arg0 entity))
(let ((t9-0 (method-of-type crate params-init)))
(t9-0 this arg0)
)
@@ -1308,14 +1292,10 @@
;; definition of type crate-buzzer
(deftype crate-buzzer (crate)
()
:heap-base #x90
:method-count-assert 30
:size-assert #x100
:flag-assert #x1e00900100
)
;; definition for method 3 of type crate-buzzer
(defmethod inspect crate-buzzer ((this crate-buzzer))
(defmethod inspect ((this crate-buzzer))
(let ((t9-0 (method-of-type crate inspect)))
(t9-0 this)
)
@@ -1324,17 +1304,13 @@
;; definition for method 26 of type crate-buzzer
;; INFO: Return type mismatch crate-buzzer vs crate.
(defmethod art-init crate-buzzer ((this crate-buzzer))
(defmethod art-init ((this crate-buzzer))
(let ((t9-0 (method-of-type crate art-init)))
(t9-0 this)
)
(set! (-> this part) (create-launch-control (-> *part-group-id-table* 74) this))
(set! (-> this sound) (new
'process
'ambient-sound
(static-sound-spec "buzzer" :pitch-mod -762 :fo-max 40)
(-> this root-override trans)
)
(set! (-> this sound)
(new 'process 'ambient-sound (static-sound-spec "buzzer" :pitch-mod -762 :fo-max 40) (-> this root trans))
)
(set! (-> this victory-anim) (fuel-cell-pick-anim this))
(the-as crate this)
@@ -1344,27 +1320,25 @@
(defstate wait (crate-buzzer)
:virtual #t
:trans (behavior ()
(when (and (and *target*
(>= 327680.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
)
(when (and (and *target* (>= 327680.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
(time-elapsed? (-> self state-time) (seconds 1.5))
(rand-vu-percent? 0.03)
)
(spawn (-> self part) (-> self root-override trans))
(spawn (-> self part) (-> self root trans))
(activate! (-> self smush) 0.2 90 150 1.0 1.0)
(logclear! (-> self mask) (process-mask sleep-code))
)
(if (nonzero? (-> self sound))
(update! (-> self sound))
)
(if (and *target* (>= (-> *target* fact-info-target buzzer) 6.0))
(if (and *target* (>= (-> *target* fact buzzer) 6.0))
(spool-push *art-control* (-> self victory-anim name) 0 self -99.0)
)
)
:code (behavior ()
(set-time! (-> self state-time))
(suspend)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(loop
(set-time! (-> self state-time))
(ja-post)
@@ -1374,9 +1348,9 @@
(sound-play "crate-jump")
(while (or (!= (-> self smush amp) 0.0) (!= f30-0 0.0))
(+! f30-0 (* -245760.0 (seconds-per-frame)))
(+! (-> self root-override trans y) (* f30-0 (seconds-per-frame)))
(when (< (-> self root-override trans y) (-> self base y))
(set! (-> self root-override trans y) (-> self base y))
(+! (-> self root trans y) (* f30-0 (seconds-per-frame)))
(when (< (-> self root trans y) (-> self base y))
(set! (-> self root trans y) (-> self base y))
(set! f30-0 (* -0.5 f30-0))
(if (< (fabs f30-0) 16384.0)
(set! f30-0 0.0)
@@ -1387,7 +1361,7 @@
(suspend)
)
)
(set! (-> self root-override trans y) (-> self base y))
(set! (-> self root trans y) (-> self base y))
)
)
:post #f
@@ -1398,7 +1372,7 @@
:virtual #t
:code (behavior ()
(while (!= (-> self smush amp) 0.0)
(spawn (-> self part) (-> self root-override trans))
(spawn (-> self part) (-> self root trans))
(suspend)
)
(go-virtual wait)
@@ -1407,16 +1381,12 @@
;; definition of type pickup-spawner
(deftype pickup-spawner (crate)
((blocker entity-actor :offset-assert 256)
((blocker entity-actor)
)
:heap-base #xa0
:method-count-assert 30
:size-assert #x104
:flag-assert #x1e00a00104
)
;; definition for method 3 of type pickup-spawner
(defmethod inspect pickup-spawner ((this pickup-spawner))
(defmethod inspect ((this pickup-spawner))
(let ((t9-0 (method-of-type crate inspect)))
(t9-0 this)
)
@@ -1426,7 +1396,7 @@
;; definition for method 25 of type pickup-spawner
;; INFO: Return type mismatch pickup-spawner vs none.
(defmethod params-init pickup-spawner ((this pickup-spawner) (arg0 entity))
(defmethod params-init ((this pickup-spawner) (arg0 entity))
(let ((t9-0 (method-of-type crate params-init)))
(t9-0 this arg0)
)
@@ -1440,7 +1410,7 @@
;; definition for method 28 of type pickup-spawner
;; INFO: Return type mismatch int vs none.
(defmethod check-dead pickup-spawner ((this pickup-spawner))
(defmethod check-dead ((this pickup-spawner))
(go (method-of-object this wait))
0
(none)
+3 -7
View File
@@ -4,14 +4,10 @@
;; definition of type dark-eco-pool
(deftype dark-eco-pool (water-anim)
()
:heap-base #x70
:method-count-assert 30
:size-assert #xdc
:flag-assert #x1e007000dc
)
;; definition for method 3 of type dark-eco-pool
(defmethod inspect dark-eco-pool ((this dark-eco-pool))
(defmethod inspect ((this dark-eco-pool))
(let ((t9-0 (method-of-type water-anim inspect)))
(t9-0 this)
)
@@ -93,7 +89,7 @@
;; definition for method 25 of type dark-eco-pool
;; INFO: Return type mismatch object vs none.
(defmethod water-vol-method-25 dark-eco-pool ((this dark-eco-pool))
(defmethod water-vol-method-25 ((this dark-eco-pool))
(let ((t9-0 (method-of-type water-anim water-vol-method-25)))
(t9-0 this)
)
@@ -119,7 +115,7 @@
;; definition for method 22 of type dark-eco-pool
;; INFO: Return type mismatch ripple-wave-set vs none.
(defmethod water-vol-method-22 dark-eco-pool ((this dark-eco-pool))
(defmethod water-vol-method-22 ((this dark-eco-pool))
(let ((t9-0 (method-of-type water-anim water-vol-method-22)))
(t9-0 this)
)
+95 -129
View File
@@ -3,33 +3,29 @@
;; definition of type manipy
(deftype manipy (process-drawable)
((new-trans-hook (function none) :offset-assert 176)
(cur-trans-hook (function none) :offset-assert 180)
(cur-event-hook (function none) :offset-assert 184)
(new-joint-anim art-joint-anim :offset-assert 188)
(new-joint-anim-blend uint64 :offset-assert 192)
(anim-mode symbol :offset-assert 200)
(cur-grab-handle handle :offset-assert 208)
(cur-target-handle handle :offset-assert 216)
(old-grab-pos vector :inline :offset-assert 224)
(joint joint-mod 4 :offset-assert 240)
(new-post-hook (function none) :offset-assert 256)
(cur-post-hook (function none) :offset-assert 260)
(clone-copy-trans symbol :offset-assert 264)
(shadow-backup basic :offset-assert 268)
(draw? symbol :offset-assert 272)
((new-trans-hook (function none))
(cur-trans-hook (function none))
(cur-event-hook (function none))
(new-joint-anim art-joint-anim)
(new-joint-anim-blend uint64)
(anim-mode symbol)
(cur-grab-handle handle)
(cur-target-handle handle)
(old-grab-pos vector :inline)
(joint joint-mod 4)
(new-post-hook (function none))
(cur-post-hook (function none))
(clone-copy-trans symbol)
(shadow-backup basic)
(draw? symbol)
)
:heap-base #xb0
:method-count-assert 20
:size-assert #x114
:flag-assert #x1400b00114
(:states
manipy-idle
)
)
;; definition for method 3 of type manipy
(defmethod inspect manipy ((this manipy))
(defmethod inspect ((this manipy))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -53,17 +49,13 @@
;; definition of type part-spawner
(deftype part-spawner (process-drawable)
((mode (pointer sparticle-launch-group) :offset-assert 176)
(enable symbol :offset-assert 180)
(radius meters :offset-assert 184)
(world-sphere sphere :inline :offset-assert 192)
((mode (pointer sparticle-launch-group))
(enable symbol)
(radius meters)
(world-sphere sphere :inline)
)
:heap-base #x60
:method-count-assert 21
:size-assert #xd0
:flag-assert #x15006000d0
(:methods
(is-visible? (_type_) symbol 20)
(is-visible? (_type_) symbol)
)
(:states
part-spawner-active
@@ -71,7 +63,7 @@
)
;; definition for method 3 of type part-spawner
(defmethod inspect part-spawner ((this part-spawner))
(defmethod inspect ((this part-spawner))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -84,31 +76,27 @@
;; definition of type part-tracker
(deftype part-tracker (process)
((root trsqv :offset-assert 112)
(part sparticle-launch-control :offset-assert 116)
(target handle :offset-assert 120)
(callback (function part-tracker vector) :offset-assert 128)
(linger-callback (function part-tracker vector) :offset-assert 132)
(duration time-frame :offset-assert 136)
(linger-duration time-frame :offset-assert 144)
(start-time time-frame :offset-assert 152)
(offset vector :inline :offset-assert 160)
(userdata uint64 :offset-assert 176)
(user-time time-frame 2 :offset-assert 184)
(user-vector vector 2 :inline :offset-assert 208)
(user-handle uint32 2 :offset-assert 240)
((root trsqv)
(part sparticle-launch-control)
(target handle)
(callback (function part-tracker vector))
(linger-callback (function part-tracker vector))
(duration time-frame)
(linger-duration time-frame)
(start-time time-frame)
(offset vector :inline)
(userdata uint64)
(user-time time-frame 2)
(user-vector vector 2 :inline)
(user-handle uint32 2)
)
:heap-base #x90
:method-count-assert 14
:size-assert #xf8
:flag-assert #xe009000f8
(:states
part-tracker-process
)
)
;; definition for method 3 of type part-tracker
(defmethod inspect part-tracker ((this part-tracker))
(defmethod inspect ((this part-tracker))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -130,32 +118,28 @@
;; definition of type camera-tracker
(deftype camera-tracker (process)
((grab-target handle :offset 120)
(grab-event symbol :offset-assert 128)
(release-event symbol :offset-assert 132)
(old-global-mask process-mask :offset-assert 136)
(old-self-mask process-mask :offset-assert 140)
(old-parent-mask process-mask :offset-assert 144)
(look-at-target handle :offset-assert 152)
(pov-target handle :offset-assert 160)
(work-process handle :offset-assert 168)
(anim-process handle :offset-assert 176)
(start-time time-frame :offset-assert 184)
(callback basic :offset-assert 192)
(userdata basic :offset-assert 196)
(message basic :offset-assert 200)
(border-value basic :offset-assert 204)
(mask-to-clear process-mask :offset-assert 208)
(script pair :offset-assert 212)
(script-line pair :offset-assert 216)
(script-func (function none) :offset-assert 220)
((grab-target handle :offset 120)
(grab-event symbol)
(release-event symbol)
(old-global-mask process-mask)
(old-self-mask process-mask)
(old-parent-mask process-mask)
(look-at-target handle)
(pov-target handle)
(work-process handle)
(anim-process handle)
(start-time time-frame)
(callback basic)
(userdata basic)
(message basic)
(border-value basic)
(mask-to-clear process-mask)
(script pair)
(script-line pair)
(script-func (function none))
)
:heap-base #x70
:method-count-assert 15
:size-assert #xe0
:flag-assert #xf007000e0
(:methods
(eval (_type_ pair) process 14)
(eval (_type_ pair) process)
)
(:states
camera-tracker-process
@@ -163,7 +147,7 @@
)
;; definition for method 3 of type camera-tracker
(defmethod inspect camera-tracker ((this camera-tracker))
(defmethod inspect ((this camera-tracker))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -192,25 +176,21 @@
;; definition of type touch-tracker
(deftype touch-tracker (process-drawable)
((root-override collide-shape-moving :offset 112)
(duration time-frame :offset-assert 176)
(target handle :offset-assert 184)
(event symbol :offset-assert 192)
(run-function (function object) :offset-assert 196)
(callback (function touch-tracker none) :offset-assert 200)
(event-mode basic :offset-assert 204)
((root collide-shape-moving :override)
(duration time-frame)
(target handle)
(event symbol)
(run-function (function object))
(callback (function touch-tracker none))
(event-mode basic)
)
:heap-base #x60
:method-count-assert 20
:size-assert #xd0
:flag-assert #x14006000d0
(:states
touch-tracker-idle
)
)
;; definition for method 3 of type touch-tracker
(defmethod inspect touch-tracker ((this touch-tracker))
(defmethod inspect ((this touch-tracker))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -225,15 +205,11 @@
;; definition of type swingpole
(deftype swingpole (process)
((root trsq :offset-assert 112)
(dir vector :inline :offset-assert 128)
(range meters :offset-assert 144)
(edge-length meters :offset-assert 148)
((root trsq)
(dir vector :inline)
(range meters)
(edge-length meters)
)
:heap-base #x30
:method-count-assert 14
:size-assert #x98
:flag-assert #xe00300098
(:states
swingpole-active
swingpole-stance
@@ -241,7 +217,7 @@
)
;; definition for method 3 of type swingpole
(defmethod inspect swingpole ((this swingpole))
(defmethod inspect ((this swingpole))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -254,26 +230,23 @@
;; definition of type gui-query
(deftype gui-query (structure)
((x-position int32 :offset-assert 0)
(y-position int32 :offset-assert 4)
(message string :offset-assert 8)
(decision symbol :offset-assert 12)
(only-allow-cancel symbol :offset-assert 16)
(no-msg string :offset-assert 20)
(message-space int32 :offset-assert 24)
((x-position int32)
(y-position int32)
(message string)
(decision symbol)
(only-allow-cancel symbol)
(no-msg string)
(message-space int32)
)
:pack-me
:method-count-assert 11
:size-assert #x1c
:flag-assert #xb0000001c
(:methods
(init! (_type_ string int int int symbol string) none 9)
(get-response (_type_) symbol 10)
(init! (_type_ string int int int symbol string) none)
(get-response (_type_) symbol)
)
)
;; definition for method 3 of type gui-query
(defmethod inspect gui-query ((this gui-query))
(defmethod inspect ((this gui-query))
(format #t "[~8x] ~A~%" this 'gui-query)
(format #t "~Tx-position: ~D~%" (-> this x-position))
(format #t "~Ty-position: ~D~%" (-> this y-position))
@@ -287,29 +260,25 @@
;; definition of type othercam
(deftype othercam (process)
((hand handle :offset-assert 112)
(old-global-mask process-mask :offset-assert 120)
(mask-to-clear process-mask :offset-assert 124)
(cam-joint-index int32 :offset-assert 128)
(old-pos vector :inline :offset-assert 144)
(old-mat-z vector :inline :offset-assert 160)
(had-valid-frame basic :offset-assert 176)
(border-value basic :offset-assert 180)
(die? symbol :offset-assert 184)
(survive-anim-end? symbol :offset-assert 188)
(spooling? symbol :offset-assert 192)
((hand handle)
(old-global-mask process-mask)
(mask-to-clear process-mask)
(cam-joint-index int32)
(old-pos vector :inline)
(old-mat-z vector :inline)
(had-valid-frame basic)
(border-value basic)
(die? symbol)
(survive-anim-end? symbol)
(spooling? symbol)
)
:heap-base #x60
:method-count-assert 14
:size-assert #xc4
:flag-assert #xe006000c4
(:states
othercam-running
)
)
;; definition for method 3 of type othercam
(defmethod inspect othercam ((this othercam))
(defmethod inspect ((this othercam))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -330,16 +299,13 @@
;; definition of type process-hidden
(deftype process-hidden (process)
()
:method-count-assert 15
:size-assert #x70
:flag-assert #xf00000070
(:methods
(die () _type_ :state 14)
(:state-methods
die
)
)
;; definition for method 3 of type process-hidden
(defmethod inspect process-hidden ((this process-hidden))
(defmethod inspect ((this process-hidden))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tmask: ~D~%" (-> this mask))
+48 -66
View File
@@ -127,7 +127,7 @@
;; definition for method 11 of type swingpole
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! swingpole ((this swingpole) (arg0 entity-actor))
(defmethod init-from-entity! ((this swingpole) (arg0 entity-actor))
"Copy defaults from the entity."
(stack-size-set! (-> this main-thread) 128)
(logior! (-> this mask) (process-mask actor-pause))
@@ -152,7 +152,7 @@
;; definition for method 11 of type process-hidden
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! process-hidden ((this process-hidden) (arg0 entity-actor))
(defmethod init-from-entity! ((this process-hidden) (arg0 entity-actor))
"Copy defaults from the entity."
(process-entity-status! this (entity-perm-status dead) #t)
(go (method-of-object this die))
@@ -162,13 +162,10 @@
;; definition of type target-start
(deftype target-start (process-hidden)
()
:method-count-assert 15
:size-assert #x70
:flag-assert #xf00000070
)
;; definition for method 3 of type target-start
(defmethod inspect target-start ((this target-start))
(defmethod inspect ((this target-start))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tmask: ~D~%" (-> this mask))
@@ -202,13 +199,10 @@
;; definition of type camera-start
(deftype camera-start (process-hidden)
()
:method-count-assert 15
:size-assert #x70
:flag-assert #xf00000070
)
;; definition for method 3 of type camera-start
(defmethod inspect camera-start ((this camera-start))
(defmethod inspect ((this camera-start))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tmask: ~D~%" (-> this mask))
@@ -599,7 +593,7 @@
)
;; definition for method 10 of type part-tracker
(defmethod deactivate part-tracker ((this part-tracker))
(defmethod deactivate ((this part-tracker))
(if (nonzero? (-> this part))
(kill-and-free-particles (-> this part))
)
@@ -970,7 +964,7 @@
;; definition for method 14 of type camera-tracker
;; INFO: Return type mismatch object vs process.
;; ERROR: Failed load: (set! v1-42 (l.wu (+ a0-22 -4))) at op 159
(defmethod eval camera-tracker ((this camera-tracker) (arg0 pair))
(defmethod eval ((this camera-tracker) (arg0 pair))
(with-pp
(let ((gp-0 (the-as object #f)))
(cond
@@ -1253,21 +1247,17 @@
;; definition of type med-res-level
(deftype med-res-level (process-drawable)
((level symbol :offset-assert 176)
(part-mode basic :offset-assert 180)
(index int32 :offset-assert 184)
((level symbol)
(part-mode basic)
(index int32)
)
:heap-base #x50
:method-count-assert 20
:size-assert #xbc
:flag-assert #x14005000bc
(:states
med-res-level-idle
)
)
;; definition for method 3 of type med-res-level
(defmethod inspect med-res-level ((this med-res-level))
(defmethod inspect ((this med-res-level))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -1339,7 +1329,7 @@
;; definition for method 11 of type med-res-level
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! med-res-level ((this med-res-level) (arg0 entity-actor))
(defmethod init-from-entity! ((this med-res-level) (arg0 entity-actor))
(local-vars (sv-16 res-tag))
(stack-size-set! (-> this main-thread) 128)
"#f"
@@ -1404,7 +1394,7 @@
)
;; definition for method 20 of type part-spawner
(defmethod is-visible? part-spawner ((this part-spawner))
(defmethod is-visible? ((this part-spawner))
(sphere<-vector+r! (-> this world-sphere) (-> this root trans) (-> this radius))
(sphere-in-view-frustum? (-> this world-sphere))
)
@@ -1447,7 +1437,7 @@
;; definition for method 11 of type part-spawner
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! part-spawner ((this part-spawner) (arg0 entity-actor))
(defmethod init-from-entity! ((this part-spawner) (arg0 entity-actor))
(local-vars (sv-16 res-tag))
(stack-size-set! (-> this main-thread) 128)
(logior! (-> this mask) (process-mask ambient))
@@ -1509,18 +1499,14 @@
;; definition of type launcher
(deftype launcher (process-drawable)
((root-override collide-shape :offset 112)
(spring-height meters :offset-assert 176)
(camera state :offset-assert 180)
(active-distance float :offset-assert 184)
(seek-time time-frame :offset-assert 192)
(dest vector :inline :offset-assert 208)
(sound-id sound-id :offset-assert 224)
((root collide-shape :override)
(spring-height meters)
(camera state)
(active-distance float)
(seek-time time-frame)
(dest vector :inline)
(sound-id sound-id)
)
:heap-base #x80
:method-count-assert 20
:size-assert #xe4
:flag-assert #x14008000e4
(:states
launcher-active
launcher-deactivated
@@ -1529,7 +1515,7 @@
)
;; definition for method 3 of type launcher
(defmethod inspect launcher ((this launcher))
(defmethod inspect ((this launcher))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -1985,15 +1971,14 @@
(go launcher-deactivated)
)
(('trans)
(move-to-point! (-> self root-override) (the-as vector (-> block param 0)))
(update-transforms! (-> self root-override))
(move-to-point! (-> self root) (the-as vector (-> block param 0)))
(update-transforms! (-> self root))
)
)
)
:trans (behavior ()
(when (and *target* (>= (-> self active-distance)
(vector-vector-distance (-> self root-override trans) (-> *target* control trans))
)
(when (and *target*
(>= (-> self active-distance) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
(cond
((send-event *target* 'query 'powerup (pickup-type eco-blue))
@@ -2007,7 +1992,7 @@
)
)
)
(if (and (and *target* (>= 32768.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
(if (and (and *target* (>= 32768.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
(not (send-event *target* 'query 'powerup (pickup-type eco-blue)))
)
(level-hint-spawn
@@ -2035,8 +2020,8 @@
(go launcher-deactivated)
)
((= message 'trans)
(move-to-point! (-> self root-override) (the-as vector (-> block param 0)))
(update-transforms! (-> self root-override))
(move-to-point! (-> self root) (the-as vector (-> block param 0)))
(update-transforms! (-> self root))
)
)
)
@@ -2052,18 +2037,17 @@
)
)
:trans (behavior ()
(if (or (or (not *target*) (< (-> self active-distance)
(vector-vector-distance (-> self root-override trans) (-> *target* control trans))
)
(if (or (or (not *target*)
(< (-> self active-distance) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
(not (send-event *target* 'query 'powerup (pickup-type eco-blue)))
)
(go launcher-idle)
)
(spawn (-> self part) (-> self root-override trans))
(spawn (-> self part) (-> self root trans))
(sound-play "launch-idle" :id (-> self sound-id))
(if (and (and *target* (>= (+ 2867.2 (-> self root-override root-prim prim-core world-sphere w))
(vector-vector-distance (-> self root-override trans) (-> *target* control trans))
(if (and (and *target* (>= (+ 2867.2 (-> self root root-prim prim-core world-sphere w))
(vector-vector-distance (-> self root trans) (-> *target* control trans))
)
)
(not (time-elapsed? (-> self state-time) (seconds 0.5)))
@@ -2084,7 +2068,7 @@
;; definition for method 11 of type launcher
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! launcher ((this launcher) (arg0 entity-actor))
(defmethod init-from-entity! ((this launcher) (arg0 entity-actor))
(stack-size-set! (-> this main-thread) 128)
(let ((s4-0 (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((s3-0 (new 'process 'collide-shape-prim-sphere s4-0 (the-as uint 0))))
@@ -2095,10 +2079,10 @@
)
(set! (-> s4-0 nav-radius) 13926.4)
(backup-collide-with-as s4-0)
(set! (-> this root-override) s4-0)
(set! (-> this root) s4-0)
)
(process-drawable-from-entity! this arg0)
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(set! (-> this active-distance) 409600.0)
(set! (-> this spring-height) (res-lump-float arg0 'spring-height :default 163840.0))
(let ((s4-1 (res-lump-value arg0 'mode uint128)))
@@ -2140,7 +2124,7 @@
)
)
(set! (-> this sound-id) (new-sound-id))
(nav-mesh-connect this (-> this root-override) (the-as nav-control #f))
(nav-mesh-connect this (-> this root) (the-as nav-control #f))
(go launcher-idle)
(none)
)
@@ -2159,12 +2143,12 @@
)
(set! (-> s2-0 nav-radius) (* 0.75 (-> s2-0 root-prim local-sphere w)))
(backup-collide-with-as s2-0)
(set! (-> self root-override) s2-0)
(set! (-> self root) s2-0)
)
(set! (-> self root-override trans quad) (-> arg0 quad))
(set-vector! (-> self root-override scale) 1.0 1.0 1.0 1.0)
(set-vector! (-> self root-override quat) 0.0 0.0 0.0 1.0)
(update-transforms! (-> self root-override))
(set! (-> self root trans quad) (-> arg0 quad))
(set-vector! (-> self root scale) 1.0 1.0 1.0 1.0)
(set-vector! (-> self root quat) 0.0 0.0 0.0 1.0)
(update-transforms! (-> self root))
(set! (-> self spring-height) arg1)
(set! (-> self active-distance) arg3)
(let ((v1-23 (-> self entity extra level name)))
@@ -2319,9 +2303,7 @@
)
)
(if a0-6
(set! (-> self root-override trans quad)
(-> (the-as collide-shape a0-6) root-prim prim-core world-sphere quad)
)
(set! (-> self root trans quad) (-> (the-as collide-shape a0-6) root-prim prim-core world-sphere quad))
)
)
)
@@ -2329,15 +2311,15 @@
(if (-> self callback)
((-> self callback) self)
)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(let ((a1-3 (new 'stack-no-clear 'touching-shapes-entry)))
(set! (-> a1-3 cshape1) (the-as collide-shape 2))
(set! (-> a1-3 cshape2) (the-as collide-shape *touching-list*))
(find-overlapping-shapes (-> self root-override) (the-as overlaps-others-params a1-3))
(find-overlapping-shapes (-> self root) (the-as overlaps-others-params a1-3))
)
(suspend)
)
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(suspend)
0
)
@@ -2363,9 +2345,9 @@
(set! (-> s4-0 nav-radius) (* 0.75 (-> s4-0 root-prim local-sphere w)))
(backup-collide-with-as s4-0)
(set! (-> s4-0 event-self) 'touched)
(set! (-> self root-override) s4-0)
(set! (-> self root) s4-0)
)
(set! (-> self root-override trans quad) (-> arg0 quad))
(set! (-> self root trans quad) (-> arg0 quad))
(set! (-> self duration) arg2)
(set! (-> self target) (the-as handle #f))
(set! (-> self event) #f)
+137 -142
View File
@@ -3,65 +3,62 @@
;; definition of type nav-enemy-info
(deftype nav-enemy-info (basic)
((idle-anim int32 :offset-assert 4)
(walk-anim int32 :offset-assert 8)
(turn-anim int32 :offset-assert 12)
(notice-anim int32 :offset-assert 16)
(run-anim int32 :offset-assert 20)
(jump-anim int32 :offset-assert 24)
(jump-land-anim int32 :offset-assert 28)
(victory-anim int32 :offset-assert 32)
(taunt-anim int32 :offset-assert 36)
(die-anim int32 :offset-assert 40)
(neck-joint int32 :offset-assert 44)
(player-look-at-joint int32 :offset-assert 48)
(run-travel-speed meters :offset-assert 52)
(run-rotate-speed degrees :offset-assert 56)
(run-acceleration meters :offset-assert 60)
(run-turn-time seconds :offset-assert 64)
(walk-travel-speed meters :offset-assert 72)
(walk-rotate-speed degrees :offset-assert 76)
(walk-acceleration meters :offset-assert 80)
(walk-turn-time seconds :offset-assert 88)
(attack-shove-back meters :offset-assert 96)
(attack-shove-up meters :offset-assert 100)
(shadow-size meters :offset-assert 104)
(notice-nav-radius meters :offset-assert 108)
(nav-nearest-y-threshold meters :offset-assert 112)
(notice-distance meters :offset-assert 116)
(proximity-notice-distance meters :offset-assert 120)
(stop-chase-distance meters :offset-assert 124)
(frustration-distance meters :offset-assert 128)
(frustration-time time-frame :offset-assert 136)
(die-anim-hold-frame float :offset-assert 144)
(jump-anim-start-frame float :offset-assert 148)
(jump-land-anim-end-frame float :offset-assert 152)
(jump-height-min meters :offset-assert 156)
(jump-height-factor float :offset-assert 160)
(jump-start-anim-speed float :offset-assert 164)
(shadow-max-y meters :offset-assert 168)
(shadow-min-y meters :offset-assert 172)
(shadow-locus-dist meters :offset-assert 176)
(use-align symbol :offset-assert 180)
(draw-shadow symbol :offset-assert 184)
(move-to-ground symbol :offset-assert 188)
(hover-if-no-ground symbol :offset-assert 192)
(use-momentum symbol :offset-assert 196)
(use-flee symbol :offset-assert 200)
(use-proximity-notice symbol :offset-assert 204)
(use-jump-blocked symbol :offset-assert 208)
(use-jump-patrol symbol :offset-assert 212)
(gnd-collide-with collide-kind :offset-assert 216)
(debug-draw-neck symbol :offset-assert 224)
(debug-draw-jump symbol :offset-assert 228)
((idle-anim int32)
(walk-anim int32)
(turn-anim int32)
(notice-anim int32)
(run-anim int32)
(jump-anim int32)
(jump-land-anim int32)
(victory-anim int32)
(taunt-anim int32)
(die-anim int32)
(neck-joint int32)
(player-look-at-joint int32)
(run-travel-speed meters)
(run-rotate-speed degrees)
(run-acceleration meters)
(run-turn-time seconds)
(walk-travel-speed meters)
(walk-rotate-speed degrees)
(walk-acceleration meters)
(walk-turn-time seconds)
(attack-shove-back meters)
(attack-shove-up meters)
(shadow-size meters)
(notice-nav-radius meters)
(nav-nearest-y-threshold meters)
(notice-distance meters)
(proximity-notice-distance meters)
(stop-chase-distance meters)
(frustration-distance meters)
(frustration-time time-frame)
(die-anim-hold-frame float)
(jump-anim-start-frame float)
(jump-land-anim-end-frame float)
(jump-height-min meters)
(jump-height-factor float)
(jump-start-anim-speed float)
(shadow-max-y meters)
(shadow-min-y meters)
(shadow-locus-dist meters)
(use-align symbol)
(draw-shadow symbol)
(move-to-ground symbol)
(hover-if-no-ground symbol)
(use-momentum symbol)
(use-flee symbol)
(use-proximity-notice symbol)
(use-jump-blocked symbol)
(use-jump-patrol symbol)
(gnd-collide-with collide-kind)
(debug-draw-neck symbol)
(debug-draw-jump symbol)
)
:method-count-assert 9
:size-assert #xe8
:flag-assert #x9000000e8
)
;; definition for method 3 of type nav-enemy-info
(defmethod inspect nav-enemy-info ((this nav-enemy-info))
(defmethod inspect ((this nav-enemy-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tidle-anim: ~D~%" (-> this idle-anim))
(format #t "~Twalk-anim: ~D~%" (-> this walk-anim))
@@ -119,99 +116,97 @@
;; definition of type nav-enemy
(deftype nav-enemy (process-drawable)
((collide-info collide-shape-moving :offset 112)
(enemy-info fact-info-enemy :offset 144)
(hit-from-dir vector :inline :offset-assert 176)
(event-param-point vector :inline :offset-assert 192)
(frustration-point vector :inline :offset-assert 208)
(jump-dest vector :inline :offset-assert 224)
(jump-trajectory trajectory :inline :offset-assert 240)
(jump-time time-frame :offset-assert 280)
(nav-info nav-enemy-info :offset-assert 288)
(target-speed float :offset-assert 292)
(momentum-speed float :offset-assert 296)
(acceleration float :offset-assert 300)
(rotate-speed float :offset-assert 304)
(turn-time time-frame :offset-assert 312)
(frustration-time time-frame :offset-assert 320)
(speed-scale float :offset-assert 328)
(neck joint-mod :offset-assert 332)
(reaction-time time-frame :offset-assert 336)
(notice-time time-frame :offset-assert 344)
(state-timeout time-frame :offset-assert 352)
(free-time time-frame :offset-assert 360)
(touch-time time-frame :offset-assert 368)
(nav-enemy-flags nav-enemy-flags :offset-assert 376)
(incomming-attack-id handle :offset-assert 384)
(jump-return-state (state process) :offset-assert 392)
(rand-gen random-generator :offset-assert 396)
((collide-info collide-shape-moving :overlay-at root)
(enemy-info fact-info-enemy :overlay-at fact)
(hit-from-dir vector :inline)
(event-param-point vector :inline)
(frustration-point vector :inline)
(jump-dest vector :inline)
(jump-trajectory trajectory :inline)
(jump-time time-frame)
(nav-info nav-enemy-info)
(target-speed float)
(momentum-speed float)
(acceleration float)
(rotate-speed float)
(turn-time time-frame)
(frustration-time time-frame)
(speed-scale float)
(neck joint-mod)
(reaction-time time-frame)
(notice-time time-frame)
(state-timeout time-frame)
(free-time time-frame)
(touch-time time-frame)
(nav-enemy-flags nav-enemy-flags)
(incomming-attack-id handle)
(jump-return-state (state process))
(rand-gen random-generator)
)
:heap-base #x120
:method-count-assert 76
:size-assert #x190
:flag-assert #x4c01200190
(:state-methods
nav-enemy-attack
nav-enemy-chase
nav-enemy-flee
nav-enemy-die
nav-enemy-fuel-cell
nav-enemy-give-up
nav-enemy-jump
nav-enemy-jump-land
nav-enemy-idle
nav-enemy-notice
nav-enemy-patrol
nav-enemy-stare
nav-enemy-stop-chase
nav-enemy-victory
)
(:methods
(nav-enemy-attack () _type_ :state 20)
(nav-enemy-chase () _type_ :state 21)
(nav-enemy-flee () _type_ :state 22)
(nav-enemy-die () _type_ :state 23)
(nav-enemy-fuel-cell () _type_ :state 24)
(nav-enemy-give-up () _type_ :state 25)
(nav-enemy-jump () _type_ :state 26)
(nav-enemy-jump-land () _type_ :state 27)
(nav-enemy-idle () _type_ :state 28)
(nav-enemy-notice () _type_ :state 29)
(nav-enemy-patrol () _type_ :state 30)
(nav-enemy-stare () _type_ :state 31)
(nav-enemy-stop-chase () _type_ :state 32)
(nav-enemy-victory () _type_ :state 33)
(nav-enemy-method-34 (_type_) none 34)
(nav-enemy-wait-for-cue () _type_ :state 35)
(nav-enemy-jump-to-point () _type_ :state 36)
(nav-enemy-method-37 (_type_) none 37)
(nav-enemy-method-38 (_type_) none 38)
(common-post (_type_) none 39)
(nav-enemy-method-40 (_type_) none 40)
(nav-enemy-method-41 (_type_) none 41)
(new-patrol-point! (_type_) int 42)
(attack-handler (_type_ process event-message-block) object 43)
(touch-handler (_type_ process event-message-block) object 44)
(init-defaults! (_type_ nav-enemy-info) none 45)
(target-in-range? (_type_ float) basic 46)
(initialize-collision (_type_) none 47)
(nav-enemy-method-48 (_type_) none 48)
(init-jm! (_type_ nav-enemy-info) float 49)
(nav-enemy-method-50 (_type_ vector) symbol 50)
(nav-enemy-method-51 (_type_) none 51)
(nav-enemy-method-52 (_type_ vector) symbol 52)
(nav-enemy-method-53 (_type_) symbol 53)
(nav-enemy-method-54 (_type_ vector) symbol 54)
(nav-enemy-method-55 (_type_) symbol 55)
(set-jump-height-factor! (_type_ int) none 56)
(nav-enemy-method-57 (_type_) none 57)
(nav-enemy-method-58 (_type_) none 58)
(nav-enemy-method-59 (_type_) none 59)
(nav-enemy-method-60 (_type_ symbol) symbol 60)
(snow-bunny-attack () _type_ :state 61)
(snow-bunny-chase-hop () _type_ :state 62)
(snow-bunny-defend () _type_ :state 63)
(nav-enemy-method-64 () _type_ :state 64)
(snow-bunny-lunge () _type_ :state 65)
(snow-bunny-nav-resume () _type_ :state 66)
(snow-bunny-patrol-hop () _type_ :state 67)
(snow-bunny-patrol-idle () _type_ :state 68)
(nav-enemy-method-69 () _type_ :state 69)
(snow-bunny-retreat-hop () _type_ :state 70)
(snow-bunny-tune-spheres () _type_ :state 71)
(nav-enemy-touch-handler (_type_ process event-message-block) object 72)
(nav-enemy-attack-handler (_type_ process event-message-block) object 73)
(nav-enemy-jump-blocked () _type_ :state 74)
(nav-enemy-method-75 () _type_ :state 75)
(nav-enemy-method-34 (_type_) none)
(nav-enemy-wait-for-cue () _type_ :state)
(nav-enemy-jump-to-point () _type_ :state)
(nav-enemy-method-37 (_type_) none)
(nav-enemy-method-38 (_type_) none)
(common-post (_type_) none)
(nav-enemy-method-40 (_type_) none)
(nav-enemy-method-41 (_type_) none)
(new-patrol-point! (_type_) int)
(attack-handler (_type_ process event-message-block) object)
(touch-handler (_type_ process event-message-block) object)
(init-defaults! (_type_ nav-enemy-info) none)
(target-in-range? (_type_ float) basic)
(initialize-collision (_type_) none)
(nav-enemy-method-48 (_type_) none)
(init-jm! (_type_ nav-enemy-info) float)
(nav-enemy-method-50 (_type_ vector) symbol)
(nav-enemy-method-51 (_type_) none)
(nav-enemy-method-52 (_type_ vector) symbol)
(nav-enemy-method-53 (_type_) symbol)
(nav-enemy-method-54 (_type_ vector) symbol)
(nav-enemy-method-55 (_type_) symbol)
(set-jump-height-factor! (_type_ int) none)
(nav-enemy-method-57 (_type_) none)
(nav-enemy-method-58 (_type_) none)
(nav-enemy-method-59 (_type_) none)
(nav-enemy-method-60 (_type_ symbol) symbol)
(snow-bunny-attack () _type_ :state)
(snow-bunny-chase-hop () _type_ :state)
(snow-bunny-defend () _type_ :state)
(nav-enemy-method-64 () _type_ :state)
(snow-bunny-lunge () _type_ :state)
(snow-bunny-nav-resume () _type_ :state)
(snow-bunny-patrol-hop () _type_ :state)
(snow-bunny-patrol-idle () _type_ :state)
(nav-enemy-method-69 () _type_ :state)
(snow-bunny-retreat-hop () _type_ :state)
(snow-bunny-tune-spheres () _type_ :state)
(nav-enemy-touch-handler (_type_ process event-message-block) object)
(nav-enemy-attack-handler (_type_ process event-message-block) object)
(nav-enemy-jump-blocked () _type_ :state)
(nav-enemy-method-75 () _type_ :state)
)
)
;; definition for method 3 of type nav-enemy
(defmethod inspect nav-enemy ((this nav-enemy))
(defmethod inspect ((this nav-enemy))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
+22 -21
View File
@@ -36,14 +36,15 @@
)
;; definition for method 9 of type trajectory
(defmethod eval-position! trajectory ((this trajectory) (time float) (result vector))
;; INFO: this function exists in multiple non-identical object files
(defmethod eval-position! ((this trajectory) (time float) (result vector))
(vector+float*! result (-> this initial-position) (-> this initial-velocity) time)
(+! (-> result y) (* 0.5 time time (-> this gravity)))
result
)
;; definition for method 7 of type nav-enemy
(defmethod relocate nav-enemy ((this nav-enemy) (arg0 int))
(defmethod relocate ((this nav-enemy) (arg0 int))
(if (nonzero? (-> this neck))
(set! (-> this neck) (the-as joint-mod (+ (the-as int (-> this neck)) arg0)))
)
@@ -54,7 +55,7 @@
)
;; definition for method 42 of type nav-enemy
(defmethod new-patrol-point! nav-enemy ((this nav-enemy))
(defmethod new-patrol-point! ((this nav-enemy))
(local-vars (v1-11 symbol))
(if (<= (-> this path curve num-cverts) 0)
(go process-drawable-art-error "no path")
@@ -76,7 +77,7 @@
;; definition for method 39 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod common-post nav-enemy ((this nav-enemy))
(defmethod common-post ((this nav-enemy))
(when (and (logtest? (-> this nav-enemy-flags) (nav-enemy-flags navenmf8))
(or (not *target*)
(and (not (logtest? (-> *target* state-flags)
@@ -117,7 +118,7 @@
)
;; definition for method 44 of type nav-enemy
(defmethod touch-handler nav-enemy ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(defmethod touch-handler ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(if (and (logtest? (-> this nav-enemy-flags) (nav-enemy-flags navenmf6))
((method-of-type touching-shapes-entry prims-touching?)
(the-as touching-shapes-entry (-> arg1 param 0))
@@ -130,7 +131,7 @@
)
;; definition for method 72 of type nav-enemy
(defmethod nav-enemy-touch-handler nav-enemy ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(defmethod nav-enemy-touch-handler ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(if (and (logtest? (-> this nav-enemy-flags) (nav-enemy-flags navenmf6))
((method-of-type touching-shapes-entry prims-touching?)
(the-as touching-shapes-entry (-> arg1 param 0))
@@ -144,7 +145,7 @@
;; definition for method 73 of type nav-enemy
;; INFO: Return type mismatch symbol vs object.
(defmethod nav-enemy-attack-handler nav-enemy ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(defmethod nav-enemy-attack-handler ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(send-event arg0 'get-attack-count 1)
(logclear! (-> this mask) (process-mask actor-pause attackable))
(go (method-of-object this nav-enemy-die))
@@ -152,7 +153,7 @@
)
;; definition for method 43 of type nav-enemy
(defmethod attack-handler nav-enemy ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(defmethod attack-handler ((this nav-enemy) (arg0 process) (arg1 event-message-block))
(cond
((logtest? (-> this nav-enemy-flags) (nav-enemy-flags navenmf5))
(send-event arg0 'get-attack-count 1)
@@ -282,7 +283,7 @@ nav-enemy-default-event-handler
;; definition for method 40 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-40 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-40 ((this nav-enemy))
(nav-control-method-11 (-> this nav) (-> this nav target-pos))
0
(none)
@@ -291,7 +292,7 @@ nav-enemy-default-event-handler
;; definition for method 41 of type nav-enemy
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-41 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-41 ((this nav-enemy))
(cond
((-> this nav-info use-align)
(align-vel-and-quat-only!
@@ -343,7 +344,7 @@ nav-enemy-default-event-handler
;; definition for method 37 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-37 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-37 ((this nav-enemy))
(when (logtest? (-> this nav-enemy-flags) (nav-enemy-flags enable-travel))
(if (or (logtest? (-> this nav-enemy-flags) (nav-enemy-flags navenmf7))
(logtest? (nav-control-flags navcf19) (-> this nav flags))
@@ -368,7 +369,7 @@ nav-enemy-default-event-handler
;; definition for method 38 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-38 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-38 ((this nav-enemy))
(if (-> this nav-info move-to-ground)
(integrate-for-enemy-with-move-to-ground!
(-> this collide-info)
@@ -551,7 +552,7 @@ nav-enemy-default-event-handler
)
;; definition for method 46 of type nav-enemy
(defmethod target-in-range? nav-enemy ((this nav-enemy) (arg0 float))
(defmethod target-in-range? ((this nav-enemy) (arg0 float))
(and *target*
(not (logtest? (-> *target* state-flags)
(state-flags being-attacked invulnerable timed-invulnerable invuln-powerup do-not-notice dying)
@@ -801,7 +802,7 @@ nav-enemy-default-event-handler
)
;; definition for method 12 of type nav-enemy
(defmethod run-logic? nav-enemy ((this nav-enemy))
(defmethod run-logic? ((this nav-enemy))
(or (not (logtest? (-> this mask) (process-mask actor-pause)))
(or (and (nonzero? (-> this draw))
(and (>= (+ (-> *ACTOR-bank* pause-dist) (-> this collide-info pause-adjust-distance))
@@ -1753,7 +1754,7 @@ nav-enemy-default-event-handler
;; definition for method 45 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod init-defaults! nav-enemy ((this nav-enemy) (arg0 nav-enemy-info))
(defmethod init-defaults! ((this nav-enemy) (arg0 nav-enemy-info))
(set! (-> this rand-gen) (new 'process 'random-generator))
(set! (-> this rand-gen seed) (the-as uint #x666edd1e))
(set! (-> this mask) (the-as process-mask (logior (process-mask enemy) (-> this mask))))
@@ -1790,7 +1791,7 @@ nav-enemy-default-event-handler
)
;; definition for method 49 of type nav-enemy
(defmethod init-jm! nav-enemy ((this nav-enemy) (arg0 nav-enemy-info))
(defmethod init-jm! ((this nav-enemy) (arg0 nav-enemy-info))
(set! (-> this nav-info) arg0)
(set! (-> this rotate-speed) (-> this nav-info walk-rotate-speed))
(set! (-> this turn-time) (-> this nav-info walk-turn-time))
@@ -1831,21 +1832,21 @@ nav-enemy-default-event-handler
;; definition for method 47 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod initialize-collision nav-enemy ((this nav-enemy))
(defmethod initialize-collision ((this nav-enemy))
0
(none)
)
;; definition for method 48 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-48 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-48 ((this nav-enemy))
0
(none)
)
;; definition for method 59 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-59 nav-enemy ((this nav-enemy))
(defmethod nav-enemy-method-59 ((this nav-enemy))
(go (method-of-object this nav-enemy-idle))
0
(none)
@@ -1853,7 +1854,7 @@ nav-enemy-default-event-handler
;; definition for method 11 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod init-from-entity! nav-enemy ((this nav-enemy) (arg0 entity-actor))
(defmethod init-from-entity! ((this nav-enemy) (arg0 entity-actor))
(initialize-collision this)
(process-drawable-from-entity! this arg0)
(nav-enemy-method-48 this)
@@ -1864,7 +1865,7 @@ nav-enemy-default-event-handler
;; definition for method 50 of type nav-enemy
;; INFO: Used lq/sq
(defmethod nav-enemy-method-50 nav-enemy ((this nav-enemy) (arg0 vector))
(defmethod nav-enemy-method-50 ((this nav-enemy) (arg0 vector))
(let ((s4-0 (new 'stack-no-clear 'vector)))
(set! (-> s4-0 quad) (-> this collide-info trans quad))
(set! (-> this collide-info trans quad) (-> arg0 quad))
+26 -33
View File
@@ -3,23 +3,19 @@
;; definition of type orb-cache-top
(deftype orb-cache-top (baseplat)
((active-distance float :offset-assert 228)
(inactive-distance float :offset-assert 232)
(money-list handle 60 :offset-assert 240)
(money-pos-list float 60 :offset-assert 720)
(money-pos-actual float 60 :offset-assert 960)
(platform-pos float :offset-assert 1200)
(root-pos float :offset-assert 1204)
(money int32 :offset-assert 1208)
(activated symbol :offset-assert 1212)
((active-distance float)
(inactive-distance float)
(money-list handle 60)
(money-pos-list float 60)
(money-pos-actual float 60)
(platform-pos float)
(root-pos float)
(money int32)
(activated symbol)
)
:heap-base #x450
:method-count-assert 29
:size-assert #x4c0
:flag-assert #x1d045004c0
(:methods
(pos-logic (_type_ symbol) symbol 27)
(calculate-pos (_type_ symbol) none 28)
(pos-logic (_type_ symbol) symbol)
(calculate-pos (_type_ symbol) none)
)
(:states
(orb-cache-top-activate symbol)
@@ -29,7 +25,7 @@
)
;; definition for method 3 of type orb-cache-top
(defmethod inspect orb-cache-top ((this orb-cache-top))
(defmethod inspect ((this orb-cache-top))
(let ((t9-0 (method-of-type baseplat inspect)))
(t9-0 this)
)
@@ -69,7 +65,7 @@
)
)
:trans (behavior ()
(if (and (and *target* (>= 20480.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
(if (and (and *target* (>= 20480.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
(not (send-event *target* 'query 'powerup (pickup-type eco-blue)))
)
(level-hint-spawn
@@ -101,7 +97,7 @@
;; definition for method 22 of type orb-cache-top
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-22 orb-cache-top ((this orb-cache-top))
(defmethod baseplat-method-22 ((this orb-cache-top))
(if (< 4096.0 (- (-> this basetrans y) (-> this root-pos)))
(activate! (-> this smush) -1.0 60 150 1.0 1.0)
(activate! (-> this smush) -0.5 60 150 1.0 1.0)
@@ -114,7 +110,7 @@
;; definition for method 28 of type orb-cache-top
;; INFO: Return type mismatch int vs none.
(defmethod calculate-pos orb-cache-top ((this orb-cache-top) (arg0 symbol))
(defmethod calculate-pos ((this orb-cache-top) (arg0 symbol))
(let ((f0-0 0.0))
(when arg0
(set! f0-0 (+ 10240.0 (* 6144.0 (the float (+ (-> this money) -1)))))
@@ -136,7 +132,7 @@
;; definition for method 27 of type orb-cache-top
;; INFO: Used lq/sq
(defmethod pos-logic orb-cache-top ((this orb-cache-top) (arg0 symbol))
(defmethod pos-logic ((this orb-cache-top) (arg0 symbol))
(dotimes (s4-0 (-> this money))
(when (not (handle->process (-> this money-list s4-0)))
(dotimes (v1-6 (-> this money))
@@ -166,7 +162,7 @@
(set! s3-0 #t)
)
(when (and (< f30-0 15155.2)
(and *target* (>= 16384.0 (vector-vector-distance (-> this root-override trans) (-> *target* control trans))))
(and *target* (>= 16384.0 (vector-vector-distance (-> this root trans) (-> *target* control trans))))
(< (-> (target-pos 0) y) (-> this basetrans y))
)
(set! f30-0 (if (< 14131.2 f28-0)
@@ -232,18 +228,16 @@
)
(loop
(calculate-pos self #t)
(while (not (or (not *target*) (< (-> self inactive-distance)
(vector-vector-xz-distance (-> self root-override trans) (-> *target* control trans))
)
(while (not (or (not *target*)
(< (-> self inactive-distance) (vector-vector-xz-distance (-> self root trans) (-> *target* control trans)))
)
)
(pos-logic self #t)
(suspend)
)
(calculate-pos self #f)
(while (and (not (and (and *target* (>= (-> self active-distance)
(vector-vector-xz-distance (-> self root-override trans) (-> *target* control trans))
)
(while (and (not (and (and *target*
(>= (-> self active-distance) (vector-vector-xz-distance (-> self root trans) (-> *target* control trans)))
)
(let ((a1-11 (new 'stack-no-clear 'event-message-block)))
(set! (-> a1-11 from) self)
@@ -259,9 +253,8 @@
)
(suspend)
)
(if (not (and (and *target* (>= (-> self active-distance)
(vector-vector-xz-distance (-> self root-override trans) (-> *target* control trans))
)
(if (not (and (and *target*
(>= (-> self active-distance) (vector-vector-xz-distance (-> self root trans) (-> *target* control trans)))
)
(let ((a1-14 (new 'stack-no-clear 'event-message-block)))
(set! (-> a1-14 from) self)
@@ -298,7 +291,7 @@
;; definition for method 11 of type orb-cache-top
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! orb-cache-top ((this orb-cache-top) (arg0 entity-actor))
(defmethod init-from-entity! ((this orb-cache-top) (arg0 entity-actor))
(let ((a0-1 (-> this entity)))
(if (when a0-1
(let ((a0-2 (-> a0-1 extra perm task)))
@@ -328,13 +321,13 @@
)
(set! (-> s4-0 nav-radius) (* 0.75 (-> s4-0 root-prim local-sphere w)))
(backup-collide-with-as s4-0)
(set! (-> this root-override) s4-0)
(set! (-> this root) s4-0)
)
(process-drawable-from-entity! this arg0)
(logclear! (-> this mask) (process-mask actor-pause))
(initialize-skeleton this *orb-cache-top-sg* '())
(logior! (-> this skel status) (janim-status inited))
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(baseplat-method-21 this)
(set! (-> this money) (res-lump-value (-> this entity) 'orb-cache-count int :default (the-as uint128 20)))
(set! (-> this active-distance) 61440.0)
+49 -53
View File
@@ -3,40 +3,38 @@
;; definition of type plat-button
(deftype plat-button (process-drawable)
((root-override collide-shape-moving :offset 112)
(go-back-if-lost-player? symbol :offset-assert 176)
(grab-player? symbol :offset-assert 180)
(should-grab-player? symbol :offset-assert 184)
(path-pos float :offset-assert 188)
(bidirectional? symbol :offset-assert 192)
(allow-auto-kill symbol :offset-assert 196)
(sound-id sound-id :offset-assert 200)
(trans-off vector :inline :offset-assert 208)
(spawn-pos vector :inline :offset-assert 224)
((root collide-shape-moving :override)
(go-back-if-lost-player? symbol)
(grab-player? symbol)
(should-grab-player? symbol)
(path-pos float)
(bidirectional? symbol)
(allow-auto-kill symbol)
(sound-id sound-id)
(trans-off vector :inline)
(spawn-pos vector :inline)
)
:heap-base #x80
:method-count-assert 33
:size-assert #xf0
:flag-assert #x21008000f0
(:state-methods
plat-button-at-end
plat-button-idle
plat-button-pressed
plat-button-move-downward
plat-button-move-upward
plat-button-teleport-to-other-end
)
(:methods
(plat-button-at-end () _type_ :state 20)
(plat-button-idle () _type_ :state 21)
(plat-button-pressed () _type_ :state 22)
(plat-button-move-downward () _type_ :state 23)
(plat-button-move-upward () _type_ :state 24)
(plat-button-teleport-to-other-end () _type_ :state 25)
(can-activate? (_type_) symbol 26)
(plat-button-method-27 (_type_) none 27)
(plat-button-method-28 (_type_) collide-shape-moving 28)
(can-target-move? (_type_) none 29)
(should-teleport? (_type_) symbol 30)
(plat-button-method-31 (_type_) none 31)
(plat-button-method-32 (_type_) none 32)
(can-activate? (_type_) symbol)
(plat-button-method-27 (_type_) none)
(plat-button-method-28 (_type_) collide-shape-moving)
(can-target-move? (_type_) none)
(should-teleport? (_type_) symbol)
(plat-button-method-31 (_type_) none)
(plat-button-method-32 (_type_) none)
)
)
;; definition for method 3 of type plat-button
(defmethod inspect plat-button ((this plat-button))
(defmethod inspect ((this plat-button))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -59,12 +57,12 @@
)
;; definition for method 30 of type plat-button
(defmethod should-teleport? plat-button ((this plat-button))
(defmethod should-teleport? ((this plat-button))
#f
)
;; definition for method 26 of type plat-button
(defmethod can-activate? plat-button ((this plat-button))
(defmethod can-activate? ((this plat-button))
(or (= (-> this path-pos) 0.0) (and (-> this bidirectional?) (= (-> this path-pos) 1.0)))
)
@@ -77,7 +75,7 @@
(when (can-activate? self)
(if (and ((method-of-type touching-shapes-entry prims-touching?)
(the-as touching-shapes-entry (-> block param 0))
(-> self root-override)
(-> self root)
(the-as uint 1)
)
(or (not (-> self should-grab-player?)) (set! (-> self grab-player?) (process-grab? *target*)))
@@ -133,7 +131,7 @@
(let ((gp-0 (new 'stack-no-clear 'vector)))
(eval-path-curve! (-> self path) gp-0 f0-0 'interp)
(vector+! gp-0 gp-0 (-> self trans-off))
(move-to-point! (-> self root-override) gp-0)
(move-to-point! (-> self root) gp-0)
)
)
(ja-post)
@@ -223,18 +221,18 @@
(let ((gp-0 (new 'stack-no-clear 'vector)))
(eval-path-curve! (-> self path) gp-0 f0-4 'interp)
(vector+! gp-0 gp-0 (-> self trans-off))
(move-to-point! (-> self root-override) gp-0)
(move-to-point! (-> self root) gp-0)
)
)
(sound-play "elev-loop" :id (-> self sound-id))
(let ((gp-1 (the-as sound-rpc-set-param (get-sound-buffer-entry))))
(set! (-> gp-1 command) (sound-command set-param))
(set! (-> gp-1 id) (-> self sound-id))
(let ((a1-6 (-> self root-override trans)))
(let ((a1-6 (-> self root trans)))
(let ((s5-0 self))
(when (= a1-6 #t)
(if (and s5-0 (type-type? (-> s5-0 type) process-drawable) (nonzero? (-> s5-0 root-override)))
(set! a1-6 (-> s5-0 root-override trans))
(if (and s5-0 (type-type? (-> s5-0 type) process-drawable) (nonzero? (-> s5-0 root)))
(set! a1-6 (-> s5-0 root trans))
(set! a1-6 (the-as vector #f))
)
)
@@ -294,18 +292,18 @@
(let ((gp-0 (new 'stack-no-clear 'vector)))
(eval-path-curve! (-> self path) gp-0 f0-4 'interp)
(vector+! gp-0 gp-0 (-> self trans-off))
(move-to-point! (-> self root-override) gp-0)
(move-to-point! (-> self root) gp-0)
)
)
(sound-play "elev-loop" :id (-> self sound-id))
(let ((gp-1 (the-as sound-rpc-set-param (get-sound-buffer-entry))))
(set! (-> gp-1 command) (sound-command set-param))
(set! (-> gp-1 id) (-> self sound-id))
(let ((a1-6 (-> self root-override trans)))
(let ((a1-6 (-> self root trans)))
(let ((s5-0 self))
(when (= a1-6 #t)
(if (and s5-0 (type-type? (-> s5-0 type) process-drawable) (nonzero? (-> s5-0 root-override)))
(set! a1-6 (-> s5-0 root-override trans))
(if (and s5-0 (type-type? (-> s5-0 type) process-drawable) (nonzero? (-> s5-0 root)))
(set! a1-6 (-> s5-0 root trans))
(set! a1-6 (the-as vector #f))
)
)
@@ -333,9 +331,7 @@
(sound-stop (-> self sound-id))
(sound-play "elev-land")
(loop
(if (or (not *target*)
(< 268435460.0 (vector-vector-xz-distance-squared (-> self root-override trans) (target-pos 0)))
)
(if (or (not *target*) (< 268435460.0 (vector-vector-xz-distance-squared (-> self root trans) (target-pos 0))))
(go-virtual plat-button-idle)
)
(suspend)
@@ -344,7 +340,7 @@
)
;; definition for method 28 of type plat-button
(defmethod plat-button-method-28 plat-button ((this plat-button))
(defmethod plat-button-method-28 ((this plat-button))
(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) default-collision-reaction)
@@ -380,21 +376,21 @@
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
s5-0
)
)
;; definition for method 29 of type plat-button
;; INFO: Return type mismatch int vs none.
(defmethod can-target-move? plat-button ((this plat-button))
(defmethod can-target-move? ((this plat-button))
0
(none)
)
;; definition for method 27 of type plat-button
;; INFO: Return type mismatch symbol vs none.
(defmethod plat-button-method-27 plat-button ((this plat-button))
(defmethod plat-button-method-27 ((this plat-button))
(ja-channel-set! 1)
(cond
((can-activate? this)
@@ -421,13 +417,13 @@
)
)
(ja-post)
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(none)
)
;; definition for method 31 of type plat-button
;; INFO: Return type mismatch int vs none.
(defmethod plat-button-method-31 plat-button ((this plat-button))
(defmethod plat-button-method-31 ((this plat-button))
(initialize-skeleton this *plat-button-sg* '())
0
(none)
@@ -435,7 +431,7 @@
;; definition for method 32 of type plat-button
;; INFO: Return type mismatch int vs none.
(defmethod plat-button-method-32 plat-button ((this plat-button))
(defmethod plat-button-method-32 ((this plat-button))
(go (method-of-object this plat-button-idle))
0
(none)
@@ -443,7 +439,7 @@
;; definition for method 11 of type plat-button
;; INFO: Used lq/sq
(defmethod init-from-entity! plat-button ((this plat-button) (arg0 entity-actor))
(defmethod init-from-entity! ((this plat-button) (arg0 entity-actor))
(set! (-> this go-back-if-lost-player?) #f)
(set! (-> this grab-player?) #f)
(set! (-> this should-grab-player?) #f)
@@ -466,11 +462,11 @@
(logclear! (-> this mask) (process-mask actor-pause))
(plat-button-method-31 this)
(logior! (-> this skel status) (janim-status inited))
(set! (-> this spawn-pos quad) (-> this root-override trans quad))
(set! (-> this spawn-pos quad) (-> this root trans quad))
(set! (-> this path) (new 'process 'curve-control this 'path -1000000000.0))
(logior! (-> this path flags) (path-control-flag display draw-line draw-point draw-text))
(set! (-> this path-pos) 0.0)
(let ((s5-1 (-> this root-override trans)))
(let ((s5-1 (-> this root trans)))
(eval-path-curve! (-> this path) s5-1 (-> this path-pos) 'interp)
(vector+! s5-1 s5-1 (-> this trans-off))
)
+21 -25
View File
@@ -3,25 +3,21 @@
;; definition of type plat-eco
(deftype plat-eco (plat)
((notice-dist float :offset-assert 264)
(sync-offset-dest float :offset-assert 268)
(sync-offset-faux float :offset-assert 272)
(sync-linear-val float :offset-assert 276)
(target handle :offset-assert 280)
(unlit-look lod-set :inline :offset-assert 288)
(lit-look lod-set :inline :offset-assert 324)
((notice-dist float)
(sync-offset-dest float)
(sync-offset-faux float)
(sync-linear-val float)
(target handle)
(unlit-look lod-set :inline)
(lit-look lod-set :inline)
)
:heap-base #x100
:method-count-assert 33
:size-assert #x165
:flag-assert #x2101000165
(:methods
(notice-blue (handle) _type_ :replace :state 29)
(notice-blue (handle) _type_ :state :overlay-at wad)
)
)
;; definition for method 3 of type plat-eco
(defmethod inspect plat-eco ((this plat-eco))
(defmethod inspect ((this plat-eco))
(let ((t9-0 (method-of-type plat inspect)))
(t9-0 this)
)
@@ -71,7 +67,7 @@
)
:trans (behavior ()
(when (and (and *target*
(>= (-> self notice-dist) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
(>= (-> self notice-dist) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
(send-event *target* 'query 'powerup (pickup-type eco-blue))
)
@@ -79,14 +75,14 @@
(go-virtual plat-path-active (the-as plat #f))
)
(if (and *target*
(>= (-> self notice-dist) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
(>= (-> self notice-dist) (vector-vector-distance (-> self root trans) (-> *target* control trans)))
)
(level-hint-spawn (text-id misty-eco-plat) "sksp0073" (the-as entity #f) *entity-pool* (game-task none))
)
)
:code (behavior ()
(ja-post)
(update-transforms! (-> self root-override))
(update-transforms! (-> self root))
(anim-loop)
)
:post ja-post
@@ -98,7 +94,7 @@
:event (behavior ((proc process) (argc int) (message symbol) (block event-message-block))
(case message
(('wake)
(sound-play "blue-eco-on" :position (the-as symbol (-> self root-override trans)))
(sound-play "blue-eco-on" :position (the-as symbol (-> self root trans)))
(go-virtual plat-path-active (the-as plat #f))
)
(('ridden 'edge-grabbed)
@@ -141,7 +137,7 @@
)
)
(when v1-6
(let* ((s5-0 (-> self root-override root-prim prim-core))
(let* ((s5-0 (-> self root root-prim prim-core))
(a1-3 (-> (the-as collide-shape v1-6) root-prim prim-core))
(f30-0 (vector-vector-distance (the-as vector s5-0) (the-as vector a1-3)))
)
@@ -230,7 +226,7 @@
;; definition for method 24 of type plat-eco
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-24 plat-eco ((this plat-eco))
(defmethod baseplat-method-24 ((this plat-eco))
(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) default-collision-reaction)
@@ -249,25 +245,25 @@
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
)
0
(none)
)
;; definition for method 23 of type plat-eco
(defmethod get-unlit-skel plat-eco ((this plat-eco))
(defmethod get-unlit-skel ((this plat-eco))
*plat-eco-unlit-sg*
)
;; definition for method 27 of type plat-eco
(defmethod get-lit-skel plat-eco ((this plat-eco))
(defmethod get-lit-skel ((this plat-eco))
*plat-eco-lit-sg*
)
;; definition for method 11 of type plat-eco
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! plat-eco ((this plat-eco) (arg0 entity-actor))
(defmethod init-from-entity! ((this plat-eco) (arg0 entity-actor))
(logior! (-> this mask) (process-mask platform))
(set! (-> this notice-dist) (res-lump-float arg0 'notice-dist :default -1.0))
(set! (-> this link) (new 'process 'actor-link-info this))
@@ -281,7 +277,7 @@
(setup-lods! (-> this lit-look) s5-1 (-> this draw art-group) (-> this entity))
)
(logclear! (-> this mask) (process-mask actor-pause))
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(set! (-> this part) (create-launch-control (-> *part-group-id-table* 107) this))
(set! (-> this path) (new 'process 'curve-control this 'path -1000000000.0))
(logior! (-> this path flags) (path-control-flag display draw-line draw-point draw-text))
@@ -294,7 +290,7 @@
(sync-now! (-> this sync) (-> this sync-linear-val))
(set! (-> this sync-offset-faux) (-> this sync offset))
(set! (-> this path-pos) (get-current-phase-with-mirror (-> this sync)))
(eval-path-curve! (-> this path) (-> this root-override trans) (-> this path-pos) 'interp)
(eval-path-curve! (-> this path) (-> this root trans) (-> this path-pos) 'interp)
(set! (-> this sound-id) (new-sound-id))
(baseplat-method-26 this)
(baseplat-method-21 this)
+21 -25
View File
@@ -53,26 +53,22 @@
;; definition of type plat
(deftype plat (baseplat)
((path-pos float :offset-assert 228)
(sync sync-info-eased :inline :offset-assert 232)
(sound-id sound-id :offset-assert 260)
((path-pos float)
(sync sync-info-eased :inline)
(sound-id sound-id)
)
:heap-base #xa0
:method-count-assert 33
:size-assert #x108
:flag-assert #x2100a00108
(:methods
(get-lit-skel (_type_) skeleton-group 27)
(plat-method-28 () none 28)
(wad () _type_ :state 29)
(plat-startup (plat) _type_ :state 30)
(plat-idle () _type_ :state 31)
(plat-path-active (plat) _type_ :state 32)
(get-lit-skel (_type_) skeleton-group)
(plat-method-28 () none)
(wad () _type_ :state)
(plat-startup (plat) _type_ :state)
(plat-idle () _type_ :state)
(plat-path-active (plat) _type_ :state)
)
)
;; definition for method 3 of type plat
(defmethod inspect plat ((this plat))
(defmethod inspect ((this plat))
(let ((t9-0 (method-of-type baseplat inspect)))
(t9-0 this)
)
@@ -101,7 +97,7 @@
)
;; definition for method 23 of type plat
(defmethod get-unlit-skel plat ((this plat))
(defmethod get-unlit-skel ((this plat))
(cond
((= (-> (if (-> this entity)
(-> this entity extra level)
@@ -140,7 +136,7 @@
;; definition for method 24 of type plat
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-24 plat ((this plat))
(defmethod baseplat-method-24 ((this plat))
(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) default-collision-reaction)
@@ -159,7 +155,7 @@
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
)
0
(none)
@@ -167,14 +163,14 @@
;; definition for method 26 of type plat
;; INFO: Return type mismatch int vs none.
(defmethod baseplat-method-26 plat ((this plat))
(defmethod baseplat-method-26 ((this plat))
0
(none)
)
;; definition for method 25 of type plat
;; INFO: Return type mismatch sparticle-launch-control vs sparticle-launch-group.
(defmethod baseplat-method-25 plat ((this plat))
(defmethod baseplat-method-25 ((this plat))
(the-as sparticle-launch-group (when (!= (-> (if (-> this entity)
(-> this entity extra level)
(-> *level* level-default)
@@ -251,8 +247,8 @@
)
)
(eval-path-curve! (-> self path) (-> self basetrans) (-> self path-pos) 'interp)
(if (< (vector-vector-distance (-> self root-override trans) (ear-trans)) 81920.0)
(sound-play "eco-plat-hover" :id (-> self sound-id) :position (the-as symbol (-> self root-override trans)))
(if (< (vector-vector-distance (-> self root trans) (ear-trans)) 81920.0)
(sound-play "eco-plat-hover" :id (-> self sound-id) :position (the-as symbol (-> self root trans)))
)
(plat-trans)
)
@@ -262,13 +258,13 @@
;; definition for method 11 of type plat
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! plat ((this plat) (arg0 entity-actor))
(defmethod init-from-entity! ((this plat) (arg0 entity-actor))
(logior! (-> this mask) (process-mask platform))
(baseplat-method-24 this)
(process-drawable-from-entity! this arg0)
(initialize-skeleton this (get-unlit-skel this) '())
(logior! (-> this skel status) (janim-status inited))
(update-transforms! (-> this root-override))
(update-transforms! (-> this root))
(baseplat-method-21 this)
(baseplat-method-25 this)
(load-params! (-> this sync) this (the-as uint 0) 0.0 0.15 0.15)
@@ -292,7 +288,7 @@
(get-current-phase-with-mirror (-> this sync))
)
)
(eval-path-curve! (-> this path) (-> this root-override trans) (-> this path-pos) 'interp)
(eval-path-curve! (-> this path) (-> this root trans) (-> this path-pos) 'interp)
(let ((a0-18 this))
(baseplat-method-26 a0-18)
(go (method-of-object this plat-startup) a0-18)
@@ -300,7 +296,7 @@
)
(else
(set! (-> this path-pos) 0.0)
(eval-path-curve! (-> this path) (-> this root-override trans) (-> this path-pos) 'interp)
(eval-path-curve! (-> this path) (-> this root trans) (-> this path-pos) 'interp)
(let ((a0-20 this))
(baseplat-method-26 a0-20)
(go (method-of-object this plat-startup) a0-20)
+46 -63
View File
@@ -3,7 +3,7 @@
;; definition for method 52 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod process-taskable-method-52 process-taskable ((this process-taskable))
(defmethod process-taskable-method-52 ((this process-taskable))
(let ((v1-1 (-> this draw shadow-ctrl)))
(when v1-1
(let ((a0-1 v1-1))
@@ -19,7 +19,7 @@
;; definition for method 9 of type gui-query
;; INFO: Return type mismatch int vs none.
(defmethod init! gui-query ((this gui-query) (arg0 string) (arg1 int) (arg2 int) (arg3 int) (arg4 symbol) (arg5 string))
(defmethod init! ((this gui-query) (arg0 string) (arg1 int) (arg2 int) (arg3 int) (arg4 symbol) (arg5 string))
(set! (-> this x-position) arg1)
(set! (-> this y-position) arg2)
(set! (-> this message-space) arg3)
@@ -32,7 +32,7 @@
)
;; definition for method 10 of type gui-query
(defmethod get-response gui-query ((this gui-query))
(defmethod get-response ((this gui-query))
(kill-current-level-hint '() '(sidekick voicebox stinger) 'exit)
(level-hint-surpress!)
(hide-hud)
@@ -145,20 +145,17 @@
;; definition for method 7 of type process-taskable
;; INFO: Return type mismatch process-drawable vs process-taskable.
(defmethod relocate process-taskable ((this process-taskable) (arg0 int))
(defmethod relocate ((this process-taskable) (arg0 int))
(the-as process-taskable ((method-of-type process-drawable relocate) this arg0))
)
;; definition for method 46 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod process-taskable-method-46 process-taskable ((this process-taskable))
(defmethod process-taskable-method-46 ((this process-taskable))
(when (nonzero? (-> this sound-flava))
(let ((s5-1 (vector-!
(new 'stack-no-clear 'vector)
(target-pos 0)
(the-as vector (-> this root-override root-prim prim-core))
)
)
(let ((s5-1
(vector-! (new 'stack-no-clear 'vector) (target-pos 0) (the-as vector (-> this root root-prim prim-core)))
)
)
(set! (-> s5-1 y) (* 4.0 (-> s5-1 y)))
(cond
@@ -176,12 +173,9 @@
)
)
(when (-> this music)
(let ((s5-3 (vector-!
(new 'stack-no-clear 'vector)
(target-pos 0)
(the-as vector (-> this root-override root-prim prim-core))
)
)
(let ((s5-3
(vector-! (new 'stack-no-clear 'vector) (target-pos 0) (the-as vector (-> this root root-prim prim-core)))
)
)
(set! (-> s5-3 y) (* 4.0 (-> s5-3 y)))
(cond
@@ -204,7 +198,7 @@
;; definition for method 31 of type process-taskable
;; INFO: Return type mismatch art-joint-anim vs art-element.
(defmethod get-art-elem process-taskable ((this process-taskable))
(defmethod get-art-elem ((this process-taskable))
(the-as art-element (if (> (-> this skel active-channels) 0)
(-> this skel root-channel 0 frame-group)
)
@@ -213,13 +207,13 @@
;; definition for method 32 of type process-taskable
;; INFO: Return type mismatch symbol vs basic.
(defmethod play-anim! process-taskable ((this process-taskable) (arg0 symbol))
(defmethod play-anim! ((this process-taskable) (arg0 symbol))
(the-as basic #f)
)
;; definition for method 33 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod process-taskable-method-33 process-taskable ((this process-taskable))
(defmethod process-taskable-method-33 ((this process-taskable))
(let ((s5-0 (play-anim! this #f)))
(if (type-type? (-> s5-0 type) spool-anim)
(spool-push *art-control* (-> (the-as spool-anim s5-0) name) 0 this -99.0)
@@ -230,7 +224,7 @@
)
;; definition for method 51 of type process-taskable
(defmethod close-anim-file! process-taskable ((this process-taskable))
(defmethod close-anim-file! ((this process-taskable))
(let* ((gp-0 (play-anim! this #f))
(v1-2 (if (and (nonzero? gp-0) (type-type? (-> gp-0 type) spool-anim))
gp-0
@@ -245,13 +239,13 @@
;; definition for method 34 of type process-taskable
;; INFO: Return type mismatch symbol vs spool-anim.
(defmethod get-accept-anim process-taskable ((this process-taskable) (arg0 symbol))
(defmethod get-accept-anim ((this process-taskable) (arg0 symbol))
(the-as spool-anim #f)
)
;; definition for method 35 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod push-accept-anim process-taskable ((this process-taskable))
(defmethod push-accept-anim ((this process-taskable))
(let ((s5-0 (get-accept-anim this #f)))
(if (type-type? (-> s5-0 type) spool-anim)
(spool-push *art-control* (-> s5-0 name) 0 this -99.0)
@@ -263,13 +257,13 @@
;; definition for method 36 of type process-taskable
;; INFO: Return type mismatch symbol vs spool-anim.
(defmethod get-reject-anim process-taskable ((this process-taskable) (arg0 symbol))
(defmethod get-reject-anim ((this process-taskable) (arg0 symbol))
(the-as spool-anim #f)
)
;; definition for method 37 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod push-reject-anim process-taskable ((this process-taskable))
(defmethod push-reject-anim ((this process-taskable))
(let ((s5-0 (get-reject-anim this #f)))
(if (type-type? (-> s5-0 type) spool-anim)
(spool-push *art-control* (-> s5-0 name) 0 this -99.0)
@@ -281,7 +275,7 @@
;; definition for method 38 of type process-taskable
;; INFO: Return type mismatch object vs none.
(defmethod process-taskable-method-38 process-taskable ((this process-taskable))
(defmethod process-taskable-method-38 ((this process-taskable))
(if (nonzero? (-> this cell-for-task))
(go (method-of-object this give-cell))
)
@@ -365,9 +359,7 @@
)
:trans (behavior ()
(if (and (time-elapsed? (-> self state-time) (seconds 5))
(or (not *target*)
(< 20480.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
)
(or (not *target*) (< 20480.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
)
(go-virtual idle)
)
@@ -651,7 +643,7 @@
)
;; definition for method 39 of type process-taskable
(defmethod should-display? process-taskable ((this process-taskable))
(defmethod should-display? ((this process-taskable))
#t
)
@@ -681,7 +673,7 @@
)
0
(process-taskable-clean-up-after-talking)
(clear-collide-with-as (-> self root-override))
(clear-collide-with-as (-> self root))
(ja-channel-set! 0)
(the-as int (ja-post))
)
@@ -696,7 +688,7 @@
(else
(ja-channel-set! 1)
(ja :group! (get-art-elem self))
(restore-collide-with-as (-> self root-override))
(restore-collide-with-as (-> self root))
(process-entity-status! self (entity-perm-status bit-3) #t)
(let ((v1-7 (-> self draw shadow-ctrl)))
(logclear! (-> v1-7 settings flags) (shadow-flags disable-draw))
@@ -728,13 +720,11 @@
;; definition for method 50 of type process-taskable
;; WARN: disable def twice: 4. This may happen when a cond (no else) is nested inside of another conditional, but it should be rare.
(defmethod process-taskable-method-50 process-taskable ((this process-taskable))
(defmethod process-taskable-method-50 ((this process-taskable))
(if *target*
(or (not *target*)
(< 245760.0 (vector-vector-distance (-> this root-override trans) (-> *target* control trans)))
)
(or (not *target*) (< 245760.0 (vector-vector-distance (-> this root trans) (-> *target* control trans))))
(< 60397978000.0
(vector-vector-distance-squared (the-as vector (-> this root-override root-prim prim-core)) (camera-pos))
(vector-vector-distance-squared (the-as vector (-> this root root-prim prim-core)) (camera-pos))
)
)
)
@@ -816,7 +806,7 @@
(logior! (-> self mask) (process-mask actor-pause))
(let ((v1-6 (-> self entity extra trans)))
(if v1-6
(set! (-> self root-override trans quad) (-> v1-6 quad))
(set! (-> self root trans quad) (-> v1-6 quad))
)
)
(ja-channel-set! 0)
@@ -833,7 +823,7 @@
)
;; definition for method 47 of type process-taskable
(defmethod target-above-threshold? process-taskable ((this process-taskable))
(defmethod target-above-threshold? ((this process-taskable))
#t
)
@@ -856,15 +846,10 @@
)
)
(('touch)
(the-as symbol (send-shove-back
(-> self root-override)
proc
(the-as touching-shapes-entry (-> block param 0))
0.7
6144.0
16384.0
)
)
(the-as
symbol
(send-shove-back (-> self root) proc (the-as touching-shapes-entry (-> block param 0)) 0.7 6144.0 16384.0)
)
)
(('clone)
(the-as symbol (go-virtual be-clone (the-as handle (-> block param 0))))
@@ -921,10 +906,8 @@
(not (logtest? (-> *target* control status) (cshape-moving-flags onsurf)))
)
)
(< (-> (target-pos 0) y) (+ 8192.0 (-> self root-override root-prim prim-core world-sphere y)))
(< (vector-vector-distance (target-pos 0) (the-as vector (-> self root-override root-prim prim-core)))
32768.0
)
(< (-> (target-pos 0) y) (+ 8192.0 (-> self root root-prim prim-core world-sphere y)))
(< (vector-vector-distance (target-pos 0) (the-as vector (-> self root root-prim prim-core))) 32768.0)
(= (-> *level* loading-level) (-> *level* level-default))
(not (movie?))
(not (level-hint-displayed?))
@@ -1007,7 +990,7 @@
;; definition for method 41 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod initialize-collision process-taskable ((this process-taskable) (arg0 int) (arg1 vector))
(defmethod initialize-collision ((this process-taskable) (arg0 int) (arg1 vector))
(let ((s5-0 (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((s4-0 (new 'process 'collide-shape-prim-sphere s5-0 (the-as uint 0))))
(set! (-> s4-0 prim-core collide-as) (collide-kind enemy))
@@ -1020,7 +1003,7 @@
)
(set! (-> s5-0 nav-radius) (* 0.75 (-> s5-0 root-prim local-sphere w)))
(backup-collide-with-as s5-0)
(set! (-> this root-override) s5-0)
(set! (-> this root) s5-0)
)
0
(none)
@@ -1028,14 +1011,14 @@
;; definition for method 40 of type process-taskable
;; INFO: Return type mismatch int vs none.
(defmethod process-taskable-method-40 process-taskable ((this process-taskable) (arg0 object) (arg1 skeleton-group) (arg2 int) (arg3 int) (arg4 vector) (arg5 int))
(defmethod process-taskable-method-40 ((this process-taskable) (arg0 object) (arg1 skeleton-group) (arg2 int) (arg3 int) (arg4 vector) (arg5 int))
(stack-size-set! (-> this main-thread) 512)
(initialize-collision this arg2 arg4)
(process-drawable-from-entity! this (the-as entity-actor arg0))
(initialize-skeleton this arg1 '())
(set! (-> this shadow-backup) (-> this draw shadow))
(logior! (-> this skel status) (janim-status eye))
(set! (-> this root-override pause-adjust-distance) -122880.0)
(set! (-> this root pause-adjust-distance) -122880.0)
(set! (-> this fuel-cell-anim) (fuel-cell-pick-anim this))
(set! (-> this draw origin-joint-index) (the-as uint arg2))
(set! (-> this draw shadow-joint-index) (the-as uint arg2))
@@ -1065,7 +1048,7 @@
;; definition for method 42 of type process-taskable
;; INFO: Return type mismatch object vs none.
(defmethod process-taskable-method-42 process-taskable ((this process-taskable))
(defmethod process-taskable-method-42 ((this process-taskable))
(cond
((not (should-display? this))
(go (method-of-object this hidden))
@@ -1082,20 +1065,20 @@
;; definition for method 43 of type process-taskable
;; INFO: Return type mismatch int vs symbol.
(defmethod process-taskable-method-43 process-taskable ((this process-taskable))
(defmethod process-taskable-method-43 ((this process-taskable))
(the-as symbol 0)
)
;; definition for method 9 of type ambient-control
;; INFO: Return type mismatch int vs none.
(defmethod ambient-control-method-9 ambient-control ((this ambient-control))
(defmethod ambient-control-method-9 ((this ambient-control))
(set! (-> this last-ambient-time) (-> *display* game-frame-counter))
0
(none)
)
;; definition for method 10 of type ambient-control
(defmethod ambient-control-method-10 ambient-control ((this ambient-control) (arg0 vector) (arg1 time-frame) (arg2 float) (arg3 process-drawable))
(defmethod ambient-control-method-10 ((this ambient-control) (arg0 vector) (arg1 time-frame) (arg2 float) (arg3 process-drawable))
(when (< (- (-> *display* game-frame-counter) (-> this last-ambient-time)) arg1)
(set! arg0 (the-as vector #f))
(goto cfg-6)
@@ -1110,7 +1093,7 @@
)
;; definition for method 11 of type ambient-control
(defmethod play-ambient ambient-control ((this ambient-control) (arg0 string) (arg1 symbol) (arg2 vector))
(defmethod play-ambient ((this ambient-control) (arg0 string) (arg1 symbol) (arg2 vector))
(when (and (not (string= arg0 (-> this last-ambient)))
(or arg1 (can-hint-be-played? (text-id one) (the-as entity #f) (the-as string #f)))
(= (-> *level* loading-level) (-> *level* level-default))
@@ -1220,7 +1203,7 @@
(format #t "ERROR<GMJ>: othercam parent invalid~%")
(deactivate self)
)
(set! (-> *camera-other-root* quad) (-> (the-as process-taskable s2-0) root-override trans quad))
(set! (-> *camera-other-root* quad) (-> (the-as process-taskable s2-0) root trans quad))
(let ((s4-0 (-> (the-as process-taskable s2-0) node-list data (-> self cam-joint-index) bone transform))
(s3-0 (-> (the-as process-taskable s2-0) node-list data (-> self cam-joint-index) bone scale))
(gp-0 (new 'stack-no-clear 'vector))
@@ -1304,7 +1287,7 @@
;; definition for method 48 of type process-taskable
;; INFO: Return type mismatch object vs none.
(defmethod draw-npc-shadow process-taskable ((this process-taskable))
(defmethod draw-npc-shadow ((this process-taskable))
(let ((gp-0 (-> this draw shadow-ctrl)))
(cond
((and (-> this draw shadow)
+38 -44
View File
@@ -3,49 +3,46 @@
;; definition of type rigid-body
(deftype rigid-body (structure)
((mass float :offset-assert 0)
(inv-mass float :offset-assert 4)
(lin-momentum-damping-factor float :offset-assert 8)
(ang-momentum-damping-factor float :offset-assert 12)
(inertial-tensor matrix :inline :offset-assert 16)
(inv-inertial-tensor matrix :inline :offset-assert 80)
(cm-offset-joint vector :inline :offset-assert 144)
(position vector :inline :offset-assert 160)
(rotation quaternion :inline :offset-assert 176)
(lin-momentum vector :inline :offset-assert 192)
(ang-momentum vector :inline :offset-assert 208)
(lin-velocity vector :inline :offset-assert 224)
(ang-velocity vector :inline :offset-assert 240)
(inv-i-world matrix :inline :offset-assert 256)
(matrix matrix :inline :offset-assert 320)
(force vector :inline :offset-assert 384)
(torque vector :inline :offset-assert 400)
(max-ang-momentum float :offset-assert 416)
(max-ang-velocity float :offset-assert 420)
((mass float)
(inv-mass float)
(lin-momentum-damping-factor float)
(ang-momentum-damping-factor float)
(inertial-tensor matrix :inline)
(inv-inertial-tensor matrix :inline)
(cm-offset-joint vector :inline)
(position vector :inline)
(rotation quaternion :inline)
(lin-momentum vector :inline)
(ang-momentum vector :inline)
(lin-velocity vector :inline)
(ang-velocity vector :inline)
(inv-i-world matrix :inline)
(matrix matrix :inline)
(force vector :inline)
(torque vector :inline)
(max-ang-momentum float)
(max-ang-velocity float)
)
:method-count-assert 23
:size-assert #x1a8
:flag-assert #x17000001a8
(:methods
(rigid-body-method-9 (_type_ float float float float) none 9)
(rigid-body-method-10 (_type_ float) none 10)
(clear-force-torque! (_type_) none 11)
(clear-momentum! (_type_) none 12)
(rigid-body-method-13 (_type_ vector vector) none 13)
(rigid-body-method-14 (_type_ vector vector) none 14)
(rigid-body-method-15 (_type_ vector) none 15)
(rigid-body-method-16 (_type_ vector vector float) none 16)
(rigid-body-method-17 (_type_ vector vector) vector 17)
(rigid-body-method-18 (_type_ vector) vector 18)
(print-stats (_type_) none 19)
(rigid-body-method-20 (_type_) none 20)
(rigid-body-method-21 (_type_) none 21)
(rigid-body-method-22 (_type_ vector quaternion float float) none 22)
(rigid-body-method-9 (_type_ float float float float) none)
(rigid-body-method-10 (_type_ float) none)
(clear-force-torque! (_type_) none)
(clear-momentum! (_type_) none)
(rigid-body-method-13 (_type_ vector vector) none)
(rigid-body-method-14 (_type_ vector vector) none)
(rigid-body-method-15 (_type_ vector) none)
(rigid-body-method-16 (_type_ vector vector float) none)
(rigid-body-method-17 (_type_ vector vector) vector)
(rigid-body-method-18 (_type_ vector) vector)
(print-stats (_type_) none)
(rigid-body-method-20 (_type_) none)
(rigid-body-method-21 (_type_) none)
(rigid-body-method-22 (_type_ vector quaternion float float) none)
)
)
;; definition for method 3 of type rigid-body
(defmethod inspect rigid-body ((this rigid-body))
(defmethod inspect ((this rigid-body))
(format #t "[~8x] ~A~%" this 'rigid-body)
(format #t "~Tmass: ~f~%" (-> this mass))
(format #t "~Tinv-mass: ~f~%" (-> this inv-mass))
@@ -71,17 +68,14 @@
;; definition of type rigid-body-control-point
(deftype rigid-body-control-point (structure)
((local-pos vector :inline :offset-assert 0)
(world-pos vector :inline :offset-assert 16)
(velocity vector :inline :offset-assert 32)
((local-pos vector :inline)
(world-pos vector :inline)
(velocity vector :inline)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type rigid-body-control-point
(defmethod inspect rigid-body-control-point ((this rigid-body-control-point))
(defmethod inspect ((this rigid-body-control-point))
(format #t "[~8x] ~A~%" this 'rigid-body-control-point)
(format #t "~Tlocal-pos: #<vector @ #x~X>~%" (-> this local-pos))
(format #t "~Tworld-pos: #<vector @ #x~X>~%" (-> this world-pos))
+88 -96
View File
@@ -4,7 +4,7 @@
;; definition for method 11 of type rigid-body
;; INFO: Used lq/sq
;; INFO: 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) (-> *null-vector* quad))
(set! (-> this torque quad) (-> *null-vector* quad))
0
@@ -14,7 +14,7 @@
;; definition for method 12 of type rigid-body
;; INFO: Used lq/sq
;; INFO: 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) (-> *null-vector* quad))
(set! (-> this ang-momentum quad) (-> *null-vector* quad))
0
@@ -23,7 +23,7 @@
;; definition for method 21 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-21 rigid-body ((this rigid-body))
(defmethod rigid-body-method-21 ((this rigid-body))
(quaternion->matrix (-> this matrix) (-> this rotation))
(rigid-body-method-18 this (-> this matrix vector 3))
0
@@ -33,7 +33,7 @@
;; definition for method 22 of type rigid-body
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-22 rigid-body ((this rigid-body) (arg0 vector) (arg1 quaternion) (arg2 float) (arg3 float))
(defmethod rigid-body-method-22 ((this rigid-body) (arg0 vector) (arg1 quaternion) (arg2 float) (arg3 float))
(clear-force-torque! this)
(clear-momentum! this)
(vector+! (-> this position) arg0 (-> this cm-offset-joint))
@@ -56,7 +56,7 @@
;; definition for method 9 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-9 rigid-body ((this rigid-body) (arg0 float) (arg1 float) (arg2 float) (arg3 float))
(defmethod rigid-body-method-9 ((this rigid-body) (arg0 float) (arg1 float) (arg2 float) (arg3 float))
(set! (-> this mass) arg0)
(let ((f0-1 arg0))
(set! (-> this inv-mass) (/ 1.0 f0-1))
@@ -100,7 +100,7 @@
)
;; definition for method 17 of type rigid-body
(defmethod rigid-body-method-17 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
(defmethod rigid-body-method-17 ((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)
)
@@ -131,7 +131,7 @@
;; definition for method 10 of type rigid-body
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-10 rigid-body ((this rigid-body) (arg0 float))
(defmethod rigid-body-method-10 ((this rigid-body) (arg0 float))
(vector+*! (-> this lin-momentum) (-> this lin-momentum) (-> this force) arg0)
(vector+*! (-> this ang-momentum) (-> this ang-momentum) (-> this torque) arg0)
(vector-float*! (-> this lin-momentum) (-> this lin-momentum) (-> this lin-momentum-damping-factor))
@@ -160,7 +160,7 @@
;; definition for method 13 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-13 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
(defmethod rigid-body-method-13 ((this rigid-body) (arg0 vector) (arg1 vector))
(vector+! (-> this force) (-> this force) arg1)
(let* ((v1-2 (vector-! (new 'stack-no-clear 'vector) arg0 (-> this position)))
(a1-2 (vector-cross! (new 'stack-no-clear 'vector) v1-2 arg1))
@@ -173,7 +173,7 @@
;; definition for method 16 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-16 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector) (arg2 float))
(defmethod rigid-body-method-16 ((this rigid-body) (arg0 vector) (arg1 vector) (arg2 float))
(vector+! (-> this force) (-> this force) arg1)
(let* ((a0-3 (vector-! (new 'stack-no-clear 'vector) arg0 (-> this position)))
(s4-1 (vector-cross! (new 'stack-no-clear 'vector) a0-3 arg1))
@@ -191,7 +191,7 @@
;; definition for method 14 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-14 rigid-body ((this rigid-body) (arg0 vector) (arg1 vector))
(defmethod rigid-body-method-14 ((this rigid-body) (arg0 vector) (arg1 vector))
(let ((s5-0 (new 'stack-no-clear 'vector))
(s4-0 (new 'stack-no-clear 'vector))
)
@@ -206,14 +206,14 @@
;; definition for method 15 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-15 rigid-body ((this rigid-body) (arg0 vector))
(defmethod rigid-body-method-15 ((this rigid-body) (arg0 vector))
(vector+! (-> this force) (-> this force) arg0)
0
(none)
)
;; definition for method 18 of type rigid-body
(defmethod rigid-body-method-18 rigid-body ((this rigid-body) (arg0 vector))
(defmethod rigid-body-method-18 ((this rigid-body) (arg0 vector))
(let ((gp-0 (new 'stack-no-clear 'vector)))
(vector-rotate*! gp-0 (-> this cm-offset-joint) (-> this matrix))
(vector-! arg0 (-> this position) gp-0)
@@ -223,7 +223,7 @@
;; definition for method 19 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod print-stats rigid-body ((this rigid-body))
(defmethod print-stats ((this rigid-body))
(format #t " force ~M ~M ~M" (-> this force x) (-> this force y) (-> this force z))
(format #t " torque ~f ~f ~f~%" (-> this torque x) (-> this torque y) (-> this torque z))
(format #t " position ~M ~M ~M" (-> this position x) (-> this position y) (-> this position z))
@@ -245,7 +245,7 @@
;; definition for method 20 of type rigid-body
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-method-20 rigid-body ((this rigid-body))
(defmethod rigid-body-method-20 ((this rigid-body))
(format #t " force ~M ~M ~M" (-> this force x) (-> this force y) (-> this force z))
(format #t " torque ~f ~f ~f~%" (-> this torque x) (-> this torque y) (-> this torque z))
0
@@ -254,39 +254,36 @@
;; definition of type rigid-body-platform-constants
(deftype rigid-body-platform-constants (structure)
((drag-factor float :offset-assert 0)
(buoyancy-factor float :offset-assert 4)
(max-buoyancy-depth meters :offset-assert 8)
(gravity-factor float :offset-assert 12)
(gravity meters :offset-assert 16)
(player-weight meters :offset-assert 20)
(player-bonk-factor float :offset-assert 24)
(player-dive-factor float :offset-assert 28)
(player-force-distance meters :offset-assert 32)
(player-force-clamp meters :offset-assert 36)
(player-force-timeout time-frame :offset-assert 40)
(explosion-force meters :offset-assert 48)
(linear-damping float :offset-assert 52)
(angular-damping float :offset-assert 56)
(control-point-count int32 :offset-assert 60)
(mass float :offset-assert 64)
(inertial-tensor-x meters :offset-assert 68)
(inertial-tensor-y meters :offset-assert 72)
(inertial-tensor-z meters :offset-assert 76)
(cm-joint-x meters :offset-assert 80)
(cm-joint-y meters :offset-assert 84)
(cm-joint-z meters :offset-assert 88)
(idle-distance meters :offset-assert 92)
(platform symbol :offset-assert 96)
(sound-name string :offset-assert 100)
((drag-factor float)
(buoyancy-factor float)
(max-buoyancy-depth meters)
(gravity-factor float)
(gravity meters)
(player-weight meters)
(player-bonk-factor float)
(player-dive-factor float)
(player-force-distance meters)
(player-force-clamp meters)
(player-force-timeout time-frame)
(explosion-force meters)
(linear-damping float)
(angular-damping float)
(control-point-count int32)
(mass float)
(inertial-tensor-x meters)
(inertial-tensor-y meters)
(inertial-tensor-z meters)
(cm-joint-x meters)
(cm-joint-y meters)
(cm-joint-z meters)
(idle-distance meters)
(platform symbol)
(sound-name string)
)
:method-count-assert 9
:size-assert #x68
:flag-assert #x900000068
)
;; definition for method 3 of type rigid-body-platform-constants
(defmethod inspect rigid-body-platform-constants ((this rigid-body-platform-constants))
(defmethod inspect ((this rigid-body-platform-constants))
(format #t "[~8x] ~A~%" this 'rigid-body-platform-constants)
(format #t "~Tdrag-factor: ~f~%" (-> this drag-factor))
(format #t "~Tbuoyancy-factor: ~f~%" (-> this buoyancy-factor))
@@ -318,15 +315,12 @@
;; definition of type rigid-body-control-point-inline-array
(deftype rigid-body-control-point-inline-array (inline-array-class)
((data rigid-body-control-point :inline :dynamic :offset 16)
((data rigid-body-control-point :inline :dynamic :offset 16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type rigid-body-control-point-inline-array
(defmethod inspect rigid-body-control-point-inline-array ((this rigid-body-control-point-inline-array))
(defmethod inspect ((this rigid-body-control-point-inline-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -339,47 +333,45 @@
;; definition of type rigid-body-platform
(deftype rigid-body-platform (process-drawable)
((root-overlay collide-shape-moving :offset 112)
(info rigid-body-platform-constants :offset-assert 176)
(rbody rigid-body :inline :offset-assert 192)
(control-point-array rigid-body-control-point-inline-array :offset-assert 616)
(player-velocity vector :inline :offset-assert 624)
(player-velocity-prev vector :inline :offset-assert 640)
(player-force-position vector :inline :offset-assert 656)
(player-force vector :inline :offset-assert 672)
(sim-time-remaining float :offset-assert 688)
(float-height-offset float :offset-assert 692)
(player-attack-id int32 :offset-assert 696)
(player-bonk-timeout time-frame :offset-assert 704)
(water-anim water-anim :offset-assert 712)
(player-contact basic :offset-assert 716)
(player-impulse collide-shape-prim-mesh :offset-assert 720)
((root-overlay collide-shape-moving :overlay-at root)
(info rigid-body-platform-constants)
(rbody rigid-body :inline)
(control-point-array rigid-body-control-point-inline-array)
(player-velocity vector :inline)
(player-velocity-prev vector :inline)
(player-force-position vector :inline)
(player-force vector :inline)
(sim-time-remaining float)
(float-height-offset float)
(player-attack-id int32)
(player-bonk-timeout time-frame)
(water-anim water-anim)
(player-contact basic)
(player-impulse collide-shape-prim-mesh)
)
:heap-base #x270
:method-count-assert 35
:size-assert #x2d4
:flag-assert #x23027002d4
(:state-methods
rigid-body-platform-idle
rigid-body-platform-float
)
(:methods
(rigid-body-platform-idle () _type_ :state 20)
(rigid-body-platform-float () _type_ :state 21)
(rigid-body-platform-method-22 (_type_ vector float) float 22)
(rigid-body-platform-method-23 (_type_ float) none 23)
(rigid-body-platform-method-24 (_type_ rigid-body-control-point float) none 24)
(rigid-body-platform-method-25 (_type_) none 25)
(rigid-body-platform-method-26 (_type_) none 26)
(rigid-body-platform-method-27 (_type_ vector) none 27)
(rigid-body-platform-method-28 (_type_) none 28)
(rigid-body-platform-method-29 (_type_ rigid-body-platform-constants) none 29)
(rigid-body-platform-method-30 (_type_) none 30)
(rigid-body-platform-method-31 (_type_) none 31)
(rigid-body-platform-method-32 (_type_) sound-id 32)
(rigid-body-platform-method-33 (_type_) object 33)
(rigid-body-platform-method-34 (_type_) none 34)
(rigid-body-platform-method-22 (_type_ vector float) float)
(rigid-body-platform-method-23 (_type_ float) none)
(rigid-body-platform-method-24 (_type_ rigid-body-control-point float) none)
(rigid-body-platform-method-25 (_type_) none)
(rigid-body-platform-method-26 (_type_) none)
(rigid-body-platform-method-27 (_type_ vector) none)
(rigid-body-platform-method-28 (_type_) none)
(rigid-body-platform-method-29 (_type_ rigid-body-platform-constants) none)
(rigid-body-platform-method-30 (_type_) none)
(rigid-body-platform-method-31 (_type_) none)
(rigid-body-platform-method-32 (_type_) sound-id)
(rigid-body-platform-method-33 (_type_) object)
(rigid-body-platform-method-34 (_type_) none)
)
)
;; definition for method 3 of type rigid-body-platform
(defmethod inspect rigid-body-platform ((this rigid-body-platform))
(defmethod inspect ((this rigid-body-platform))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -401,7 +393,7 @@
)
;; definition for method 7 of type rigid-body-platform
(defmethod relocate rigid-body-platform ((this rigid-body-platform) (arg0 int))
(defmethod relocate ((this rigid-body-platform) (arg0 int))
(if (nonzero? (-> this control-point-array))
(set! (-> this control-point-array)
(the-as rigid-body-control-point-inline-array (+ (the-as int (-> this control-point-array)) arg0))
@@ -411,7 +403,7 @@
)
;; definition for method 22 of type rigid-body-platform
(defmethod rigid-body-platform-method-22 rigid-body-platform ((this rigid-body-platform) (arg0 vector) (arg1 float))
(defmethod rigid-body-platform-method-22 ((this rigid-body-platform) (arg0 vector) (arg1 float))
(let ((v1-0 (-> this water-anim)))
0.0
(+ (the-as float (cond
@@ -440,7 +432,7 @@
;; definition for method 24 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-24 rigid-body-platform ((this rigid-body-platform) (arg0 rigid-body-control-point) (arg1 float))
(defmethod rigid-body-platform-method-24 ((this rigid-body-platform) (arg0 rigid-body-control-point) (arg1 float))
(set! (-> arg0 world-pos w) (rigid-body-platform-method-22 this (-> arg0 world-pos) arg1))
(let* ((s4-0 (new 'stack-no-clear 'vector))
(f0-2 (- (-> arg0 world-pos w) (-> arg0 world-pos y)))
@@ -466,7 +458,7 @@
;; definition for method 25 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-25 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-25 ((this rigid-body-platform))
(when (or (-> this player-impulse) (-> this player-contact))
(set! (-> this player-impulse) #f)
(rigid-body-method-16
@@ -482,7 +474,7 @@
;; definition for method 26 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-26 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-26 ((this rigid-body-platform))
(let ((a1-0 (new 'stack-no-clear 'vector)))
(vector-float*!
a1-0
@@ -497,7 +489,7 @@
;; definition for method 27 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-27 rigid-body-platform ((this rigid-body-platform) (arg0 vector))
(defmethod rigid-body-platform-method-27 ((this rigid-body-platform) (arg0 vector))
(let ((gp-0 (new 'stack-no-clear 'vector)))
(vector-! gp-0 arg0 (-> this rbody position))
(set! (-> gp-0 y) 0.0)
@@ -516,7 +508,7 @@
;; definition for method 23 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-23 rigid-body-platform ((this rigid-body-platform) (arg0 float))
(defmethod rigid-body-platform-method-23 ((this rigid-body-platform) (arg0 float))
(let ((s4-0 (-> this rbody matrix)))
(dotimes (s3-0 (-> this info control-point-count))
(let ((s2-0 (-> this control-point-array data s3-0)))
@@ -535,7 +527,7 @@
;; definition for method 28 of type rigid-body-platform
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-28 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-28 ((this rigid-body-platform))
(if (-> this info platform)
(detect-riders! (-> this root-overlay))
)
@@ -754,7 +746,7 @@
;; definition for method 29 of type rigid-body-platform
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-29 rigid-body-platform ((this rigid-body-platform) (arg0 rigid-body-platform-constants))
(defmethod rigid-body-platform-method-29 ((this rigid-body-platform) (arg0 rigid-body-platform-constants))
(set! (-> this info) arg0)
(set! (-> this control-point-array)
(new 'process 'rigid-body-control-point-inline-array (-> this info control-point-count))
@@ -795,7 +787,7 @@
;; definition for method 30 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-30 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-30 ((this rigid-body-platform))
(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) default-collision-reaction)
@@ -849,7 +841,7 @@
;; definition for method 34 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-34 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-34 ((this rigid-body-platform))
(go (method-of-object this rigid-body-platform-idle))
0
(none)
@@ -857,7 +849,7 @@
;; definition for method 31 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod rigid-body-platform-method-31 rigid-body-platform ((this rigid-body-platform))
(defmethod rigid-body-platform-method-31 ((this rigid-body-platform))
(set! (-> this float-height-offset) 0.0)
(rigid-body-platform-method-29 this *rigid-body-platform-constants*)
(let ((s5-0 (-> this info control-point-count)))
@@ -878,7 +870,7 @@
;; definition for method 11 of type rigid-body-platform
;; INFO: Return type mismatch int vs none.
(defmethod init-from-entity! rigid-body-platform ((this rigid-body-platform) (arg0 entity-actor))
(defmethod init-from-entity! ((this rigid-body-platform) (arg0 entity-actor))
(logior! (-> this mask) (process-mask platform))
(rigid-body-platform-method-30 this)
(process-drawable-from-entity! this arg0)
+67 -77
View File
@@ -3,33 +3,30 @@
;; definition of type ropebridge-tuning
(deftype ropebridge-tuning (structure)
((num-springs int32 :offset-assert 0)
(num-spring-points int32 :offset-assert 4)
(col-mesh-indexes (pointer uint8) :offset-assert 8)
(view-frustum-radius float :offset-assert 12)
(root-prim-radius float :offset-assert 16)
(desired-spring-len float :offset-assert 20)
(gravity float :offset-assert 24)
(spring-coefficient float :offset-assert 28)
(spring-mass float :offset-assert 32)
(friction float :offset-assert 36)
(max-influence-dist float :offset-assert 40)
(rider-max-gravity float :offset-assert 44)
(max-bonk-influence-dist float :offset-assert 48)
(rider-bonk-force float :offset-assert 52)
(rider-bonk-min float :offset-assert 56)
(rider-bonk-max float :offset-assert 60)
(normal-board-len float :offset-assert 64)
(bridge-end-to-end-len float :offset-assert 68)
(rest-state symbol :offset-assert 72)
((num-springs int32)
(num-spring-points int32)
(col-mesh-indexes (pointer uint8))
(view-frustum-radius float)
(root-prim-radius float)
(desired-spring-len float)
(gravity float)
(spring-coefficient float)
(spring-mass float)
(friction float)
(max-influence-dist float)
(rider-max-gravity float)
(max-bonk-influence-dist float)
(rider-bonk-force float)
(rider-bonk-min float)
(rider-bonk-max float)
(normal-board-len float)
(bridge-end-to-end-len float)
(rest-state symbol)
)
:method-count-assert 9
:size-assert #x4c
:flag-assert #x90000004c
)
;; definition for method 3 of type ropebridge-tuning
(defmethod inspect ropebridge-tuning ((this ropebridge-tuning))
(defmethod inspect ((this ropebridge-tuning))
(format #t "[~8x] ~A~%" this 'ropebridge-tuning)
(format #t "~Tnum-springs: ~D~%" (-> this num-springs))
(format #t "~Tnum-spring-points: ~D~%" (-> this num-spring-points))
@@ -483,18 +480,15 @@
;; definition of type ropebridge-spring-point
(deftype ropebridge-spring-point (structure)
((local-pos vector :inline :offset-assert 0)
(vel vector :inline :offset-assert 16)
(extra-force vector :inline :offset-assert 32)
((local-pos vector :inline)
(vel vector :inline)
(extra-force vector :inline)
)
:pack-me
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type ropebridge-spring-point
(defmethod inspect ropebridge-spring-point ((this ropebridge-spring-point))
(defmethod inspect ((this ropebridge-spring-point))
(format #t "[~8x] ~A~%" this 'ropebridge-spring-point)
(format #t "~Tlocal-pos: #<vector @ #x~X>~%" (-> this local-pos))
(format #t "~Tvel: #<vector @ #x~X>~%" (-> this vel))
@@ -504,35 +498,31 @@
;; definition of type ropebridge
(deftype ropebridge (process-drawable)
((root-override collide-shape :offset 112)
(subtype uint64 :offset-assert 176)
(subtype-name string :offset-assert 184)
(agitated-time-stamp time-frame :offset-assert 192)
(bonk-time-stamp time-frame :offset-assert 200)
(attack-flop-time-stamp time-frame :offset-assert 208)
(player-attack-id uint64 :offset-assert 216)
(sleep-dist float :offset-assert 224)
(do-physics? basic :offset-assert 228)
(tuning ropebridge-tuning :offset-assert 232)
(world-matrix matrix :inline :offset-assert 240)
(inv-world-matrix matrix :inline :offset-assert 304)
(extra-trans vector :inline :offset-assert 368)
(spring-point ropebridge-spring-point 36 :inline :offset-assert 384)
((root collide-shape :override)
(subtype uint64)
(subtype-name string)
(agitated-time-stamp time-frame)
(bonk-time-stamp time-frame)
(attack-flop-time-stamp time-frame)
(player-attack-id uint64)
(sleep-dist float)
(do-physics? basic)
(tuning ropebridge-tuning)
(world-matrix matrix :inline)
(inv-world-matrix matrix :inline)
(extra-trans vector :inline)
(spring-point ropebridge-spring-point 36 :inline)
)
:heap-base #x7d0
:method-count-assert 29
:size-assert #x840
:flag-assert #x1d07d00840
(:methods
(set-vel-from-impact (_type_ uint vector int float) none 20)
(set-vel-from-riders (_type_) none 21)
(set-vel-from-rider (_type_ uint vector int) none 22)
(clear-spring-forces (_type_) none 23)
(debug-draw (_type_) none 24)
(set-to-rest-state (_type_) none 25)
(add-collision-meshes (_type_) none 26)
(do-integration (_type_) none 27)
(ropebridge-method-28 (_type_) none 28)
(set-vel-from-impact (_type_ uint vector int float) none)
(set-vel-from-riders (_type_) none)
(set-vel-from-rider (_type_ uint vector int) none)
(clear-spring-forces (_type_) none)
(debug-draw (_type_) none)
(set-to-rest-state (_type_) none)
(add-collision-meshes (_type_) none)
(do-integration (_type_) none)
(ropebridge-method-28 (_type_) none)
)
(:states
ropebridge-idle
@@ -540,7 +530,7 @@
)
;; definition for method 3 of type ropebridge
(defmethod inspect ropebridge ((this ropebridge))
(defmethod inspect ((this ropebridge))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -634,7 +624,7 @@
)
(gp-0 (the-as object (-> block param 0)))
(a0-7 (-> (the-as touching-shapes-entry gp-0) head))
(s4-0 (-> self root-override))
(s4-0 (-> self root))
(s5-0 (get-touched-prim a0-7 s4-0 (the-as touching-shapes-entry gp-0)))
(v1-33 ((method-of-type touching-shapes-entry get-touched-shape) (the-as touching-shapes-entry gp-0) s4-0))
(gp-1 (new 'stack-no-clear 'vector))
@@ -655,7 +645,7 @@
:code (behavior ()
(loop
(suspend)
(detect-riders! (-> self root-override))
(detect-riders! (-> self root))
(when (-> self do-physics?)
(clear-spring-forces self)
(set-vel-from-riders self)
@@ -665,7 +655,7 @@
)
:post (behavior ()
(ja-post)
(let ((gp-0 (-> self root-override)))
(let ((gp-0 (-> self root)))
(update-transforms! gp-0)
(when (-> self do-physics?)
(pull-riders! gp-0)
@@ -679,7 +669,7 @@
;; definition for method 20 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
;; WARN: Function (method 20 ropebridge) has a return type of none, but the expression builder found a return statement.
(defmethod set-vel-from-impact ropebridge ((this ropebridge) (arg0 uint) (arg1 vector) (arg2 int) (arg3 float))
(defmethod set-vel-from-impact ((this ropebridge) (arg0 uint) (arg1 vector) (arg2 int) (arg3 float))
(loop
(let ((f0-2 (fabs (- (-> arg1 z) (-> this spring-point (the-as int arg0) local-pos z)))))
(if (< (-> this tuning max-bonk-influence-dist) f0-2)
@@ -705,7 +695,7 @@
;; definition for method 23 of type ropebridge
;; INFO: Used lq/sq
;; INFO: Return type mismatch symbol vs none.
(defmethod clear-spring-forces ropebridge ((this ropebridge))
(defmethod clear-spring-forces ((this ropebridge))
(let ((v1-0 (the-as ropebridge-spring-point (-> this spring-point))))
(countdown (a0-2 (-> this tuning num-spring-points))
(set! (-> v1-0 extra-force quad) (the-as uint128 0))
@@ -719,8 +709,8 @@
;; definition for method 21 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
(defmethod set-vel-from-riders ropebridge ((this ropebridge))
(let ((v1-1 (-> this root-override riders)))
(defmethod set-vel-from-riders ((this ropebridge))
(let ((v1-1 (-> this root riders)))
(when v1-1
(let ((s5-0 (the-as collide-sticky-rider (-> v1-1 rider))))
(countdown (s4-0 (-> v1-1 num-riders))
@@ -753,7 +743,7 @@
;; definition for method 22 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
;; WARN: Function (method 22 ropebridge) has a return type of none, but the expression builder found a return statement.
(defmethod set-vel-from-rider ropebridge ((this ropebridge) (arg0 uint) (arg1 vector) (arg2 int))
(defmethod set-vel-from-rider ((this ropebridge) (arg0 uint) (arg1 vector) (arg2 int))
(loop
(let ((f0-0 (vector-vector-distance arg1 (the-as vector (-> this spring-point (the-as int arg0))))))
(if (< (-> this tuning max-influence-dist) f0-0)
@@ -776,7 +766,7 @@
;; definition for method 27 of type ropebridge
;; INFO: Return type mismatch int vs none.
(defmethod do-integration ropebridge ((this ropebridge))
(defmethod do-integration ((this ropebridge))
(local-vars (a2-1 float) (a3-0 float))
(rlet ((Q :class vf)
(vf0 :class vf)
@@ -901,7 +891,7 @@
;; definition for method 24 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
(defmethod debug-draw ropebridge ((this ropebridge))
(defmethod debug-draw ((this ropebridge))
(let ((gp-0 (-> this node-list data 0 bone transform))
(s5-0 (the-as ropebridge-spring-point (-> this spring-point)))
(s4-0 (new 'stack-no-clear 'vector))
@@ -917,7 +907,7 @@
;; definition for method 25 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
(defmethod set-to-rest-state ropebridge ((this ropebridge))
(defmethod set-to-rest-state ((this ropebridge))
(rlet ((vf0 :class vf)
(vf1 :class vf)
(vf2 :class vf)
@@ -1007,8 +997,8 @@
;; definition for method 26 of type ropebridge
;; INFO: Return type mismatch symbol vs none.
(defmethod add-collision-meshes ropebridge ((this ropebridge))
(let* ((s5-0 (-> this root-override))
(defmethod add-collision-meshes ((this ropebridge))
(let* ((s5-0 (-> this root))
(s3-0 (-> this tuning))
(s4-0 (new 'process 'collide-shape-prim-group s5-0 (the-as uint (-> s3-0 num-springs)) 0))
)
@@ -1038,10 +1028,10 @@
)
;; definition for method 12 of type ropebridge
(defmethod run-logic? ropebridge ((this ropebridge))
(defmethod run-logic? ((this ropebridge))
(or (not (logtest? (-> this mask) (process-mask actor-pause)))
(not (time-elapsed? (-> this agitated-time-stamp) (seconds 5)))
(or (>= (-> this sleep-dist) (vector-vector-distance (-> this root-override trans) (math-camera-pos)))
(or (>= (-> this sleep-dist) (vector-vector-distance (-> this root trans) (math-camera-pos)))
(and (nonzero? (-> this skel)) (!= (-> this skel root-channel 0) (-> this skel channel)))
(and (nonzero? (-> this draw)) (logtest? (-> this draw status) (draw-status no-skeleton-update)))
)
@@ -1050,14 +1040,14 @@
;; definition for method 28 of type ropebridge
;; INFO: Return type mismatch int vs none.
(defmethod ropebridge-method-28 ropebridge ((this ropebridge))
(defmethod ropebridge-method-28 ((this ropebridge))
0
(none)
)
;; definition for method 11 of type ropebridge
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! ropebridge ((this ropebridge) (arg0 entity-actor))
(defmethod init-from-entity! ((this ropebridge) (arg0 entity-actor))
(let ((s4-0 (res-lump-struct (-> this entity) 'art-name structure)))
(if (not s4-0)
(set! s4-0 "ropebridge-32")
@@ -1099,7 +1089,7 @@
(set-vector! (-> this extra-trans) 0.0 0.0 (- (* 0.5 (-> this tuning bridge-end-to-end-len))) 1.0)
(set! (-> this do-physics?) #t)
(let ((a0-13 (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(set! (-> this root-override) a0-13)
(set! (-> this root) a0-13)
(alloc-riders a0-13 3)
)
(add-collision-meshes this)
@@ -1116,7 +1106,7 @@
(set! (-> this skel postbind-function) ropebridge-joint-callback)
(matrix<-transformq+trans!
(-> this world-matrix)
(the-as transformq (-> this root-override trans))
(the-as transformq (-> this root trans))
(-> this extra-trans)
)
(matrix-4x4-inverse! (-> this inv-world-matrix) (-> this world-matrix))
+24 -28
View File
@@ -29,30 +29,26 @@
;; definition of type sharkey
(deftype sharkey (nav-enemy)
((dir vector :inline :offset-assert 400)
(spawn-point vector :inline :offset-assert 416)
(scale float :offset-assert 432)
(anim-speed float :offset-assert 436)
(y-max meters :offset-assert 440)
(y-min meters :offset-assert 444)
(attack-time float :offset-assert 448)
(player-water-time time-frame :offset-assert 456)
(player-in-water basic :offset-assert 464)
(last-y float :offset-assert 468)
(spawn-distance meters :offset-assert 472)
(chase-speed meters :offset-assert 476)
(y-speed meters :offset-assert 480)
(sound-id sound-id :offset-assert 484)
(enable-patrol basic :offset-assert 488)
((dir vector :inline)
(spawn-point vector :inline)
(scale float)
(anim-speed float)
(y-max meters)
(y-min meters)
(attack-time float)
(player-water-time time-frame)
(player-in-water basic)
(last-y float)
(spawn-distance meters)
(chase-speed meters)
(y-speed meters)
(sound-id sound-id)
(enable-patrol basic)
)
:heap-base #x180
:method-count-assert 76
:size-assert #x1ec
:flag-assert #x4c018001ec
)
;; definition for method 3 of type sharkey
(defmethod inspect sharkey ((this sharkey))
(defmethod inspect ((this sharkey))
(let ((t9-0 (method-of-type nav-enemy inspect)))
(t9-0 this)
)
@@ -82,13 +78,13 @@
;; definition for method 44 of type sharkey
;; INFO: Return type mismatch symbol vs object.
(defmethod touch-handler sharkey ((this sharkey) (arg0 process) (arg1 event-message-block))
(defmethod touch-handler ((this sharkey) (arg0 process) (arg1 event-message-block))
#t
)
;; definition for method 43 of type sharkey
;; INFO: Return type mismatch symbol vs object.
(defmethod attack-handler sharkey ((this sharkey) (arg0 process) (arg1 event-message-block))
(defmethod attack-handler ((this sharkey) (arg0 process) (arg1 event-message-block))
#t
)
@@ -96,7 +92,7 @@
nav-enemy-default-event-handler
;; definition for method 12 of type sharkey
(defmethod run-logic? sharkey ((this sharkey))
(defmethod run-logic? ((this sharkey))
(or (not (logtest? (-> this mask) (process-mask actor-pause)))
(or (>= (+ (-> *ACTOR-bank* pause-dist) (-> this collide-info pause-adjust-distance))
(vector-vector-distance (-> this collide-info trans) (math-camera-pos))
@@ -109,7 +105,7 @@ nav-enemy-default-event-handler
;; definition for method 40 of type sharkey
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-40 sharkey ((this sharkey))
(defmethod nav-enemy-method-40 ((this sharkey))
(nav-control-method-11 (-> this nav) (-> this nav target-pos))
(let* ((f0-0 (vector-vector-xz-distance (-> this collide-info trans) (-> this nav target-pos)))
(f30-0 (/ (- (fmin (-> this y-max) (-> this nav target-pos y)) (-> this collide-info trans y)) f0-0))
@@ -122,7 +118,7 @@ nav-enemy-default-event-handler
;; definition for method 37 of type sharkey
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-37 sharkey ((this sharkey))
(defmethod nav-enemy-method-37 ((this sharkey))
(let ((s5-0 (new 'stack-no-clear 'vector)))
(when (< 8192.0 (vector-length (-> this nav travel)))
(vector-normalize-copy! s5-0 (-> this nav travel) 1.0)
@@ -137,7 +133,7 @@ nav-enemy-default-event-handler
;; definition for method 41 of type sharkey
;; INFO: Return type mismatch int vs none.
(defmethod nav-enemy-method-41 sharkey ((this sharkey))
(defmethod nav-enemy-method-41 ((this sharkey))
(let* ((f0-1 (- (-> this target-speed) (-> this momentum-speed)))
(f1-3 (fmin (* (-> this acceleration) (seconds-per-frame)) (fabs f0-1)))
)
@@ -161,7 +157,7 @@ nav-enemy-default-event-handler
;; definition for method 39 of type sharkey
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod common-post sharkey ((this sharkey))
(defmethod common-post ((this sharkey))
(let ((f30-0 (-> this water height))
(s5-0 (new 'stack-no-clear 'vector))
)
@@ -656,7 +652,7 @@ nav-enemy-default-event-handler
;; definition for method 11 of type sharkey
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! sharkey ((this sharkey) (arg0 entity-actor))
(defmethod init-from-entity! ((this sharkey) (arg0 entity-actor))
(set! (-> this scale) (res-lump-float arg0 'scale :default 1.0))
(let ((s4-0 (new 'process 'collide-shape-moving this (collide-list-enum hit-by-player))))
(set! (-> s4-0 dynam) (copy *standard-dynamics* 'process))
+11 -14
View File
@@ -3,23 +3,20 @@
;; definition of type ticky
(deftype ticky (structure)
((delay-til-ramp time-frame :offset-assert 0)
(delay-til-timeout time-frame :offset-assert 8)
(starting-time time-frame :offset-assert 16)
(last-tick-time time-frame :offset-assert 24)
((delay-til-ramp time-frame)
(delay-til-timeout time-frame)
(starting-time time-frame)
(last-tick-time time-frame)
)
:method-count-assert 12
:size-assert #x20
:flag-assert #xc00000020
(:methods
(sleep (_type_ time-frame) none 9)
(reached-delay? (_type_ time-frame) symbol 10)
(completed? (_type_) symbol 11)
(sleep (_type_ time-frame) none)
(reached-delay? (_type_ time-frame) symbol)
(completed? (_type_) symbol)
)
)
;; definition for method 3 of type ticky
(defmethod inspect ticky ((this ticky))
(defmethod inspect ((this ticky))
(format #t "[~8x] ~A~%" this 'ticky)
(format #t "~Tdelay-til-ramp: ~D~%" (-> this delay-til-ramp))
(format #t "~Tdelay-til-timeout: ~D~%" (-> this delay-til-timeout))
@@ -30,7 +27,7 @@
;; definition for method 9 of type ticky
;; INFO: Return type mismatch int vs none.
(defmethod sleep ticky ((this ticky) (arg0 time-frame))
(defmethod sleep ((this ticky) (arg0 time-frame))
(set-time! (-> this starting-time))
(set! (-> this delay-til-timeout) arg0)
(set! (-> this delay-til-ramp) (max 0 (+ arg0 (seconds -4))))
@@ -40,7 +37,7 @@
)
;; definition for method 11 of type ticky
(defmethod completed? ticky ((this ticky))
(defmethod completed? ((this ticky))
(let ((gp-0 #f))
(let ((v1-2 (- (current-time) (-> this starting-time))))
(cond
@@ -68,6 +65,6 @@
)
;; definition for method 10 of type ticky
(defmethod reached-delay? ticky ((this ticky) (arg0 time-frame))
(defmethod reached-delay? ((this ticky) (arg0 time-frame))
(time-elapsed? (-> this starting-time) arg0)
)
+11 -14
View File
@@ -3,24 +3,21 @@
;; definition of type tippy
(deftype tippy (structure)
((axis vector :inline :offset-assert 0)
(angle float :offset-assert 16)
(orig quaternion :inline :offset-assert 32)
(dist-ratio float :offset-assert 48)
(damping float :offset-assert 52)
(1-damping float :offset-assert 56)
((axis vector :inline)
(angle float)
(orig quaternion :inline)
(dist-ratio float)
(damping float)
(1-damping float)
)
:method-count-assert 11
:size-assert #x3c
:flag-assert #xb0000003c
(:methods
(reset! (_type_ process-drawable float float) none 9)
(tippy-method-10 (_type_ process-drawable vector) symbol 10)
(reset! (_type_ process-drawable float float) none)
(tippy-method-10 (_type_ process-drawable vector) symbol)
)
)
;; definition for method 3 of type tippy
(defmethod inspect tippy ((this tippy))
(defmethod inspect ((this tippy))
(format #t "[~8x] ~A~%" this 'tippy)
(format #t "~Taxis: #<vector @ #x~X>~%" (-> this axis))
(format #t "~Tangle: ~f~%" (-> this angle))
@@ -33,7 +30,7 @@
;; definition for method 9 of type tippy
;; INFO: Return type mismatch int vs none.
(defmethod reset! tippy ((this tippy) (arg0 process-drawable) (arg1 float) (arg2 float))
(defmethod reset! ((this tippy) (arg0 process-drawable) (arg1 float) (arg2 float))
(set-vector! (-> this axis) 0.0 0.0 0.0 1.0)
(set! (-> this angle) 0.0)
(quaternion-copy! (-> this orig) (-> arg0 root quat))
@@ -45,7 +42,7 @@
)
;; definition for method 10 of type tippy
(defmethod tippy-method-10 tippy ((this tippy) (arg0 process-drawable) (arg1 vector))
(defmethod tippy-method-10 ((this tippy) (arg0 process-drawable) (arg1 vector))
(let ((s4-0 #t))
(cond
(arg1
+12 -20
View File
@@ -4,17 +4,13 @@
;; definition of type camera-voicebox
(deftype camera-voicebox (camera-slave)
()
:heap-base #x9a0
:method-count-assert 14
:size-assert #xa04
:flag-assert #xe09a00a04
(:states
cam-voicebox
)
)
;; definition for method 3 of type camera-voicebox
(defmethod inspect camera-voicebox ((this camera-voicebox))
(defmethod inspect ((this camera-voicebox))
(let ((t9-0 (method-of-type camera-slave inspect)))
(t9-0 this)
)
@@ -23,26 +19,22 @@
;; definition of type voicebox
(deftype voicebox (process-drawable)
((parent-override (pointer camera-voicebox) :offset 12)
(base-trans vector :inline :offset-assert 176)
(seeker cam-float-seeker :inline :offset-assert 192)
(blend float :offset-assert 216)
(twist float :offset-assert 220)
(hint handle :offset-assert 224)
((parent-override (pointer camera-voicebox) :overlay-at parent)
(base-trans vector :inline)
(seeker cam-float-seeker :inline)
(blend float)
(twist float)
(hint handle)
)
:heap-base #x80
:method-count-assert 23
:size-assert #xe8
:flag-assert #x17008000e8
(:methods
(enter () _type_ :state 20)
(idle () _type_ :state 21)
(exit () _type_ :state 22)
(:state-methods
enter
idle
exit
)
)
;; definition for method 3 of type voicebox
(defmethod inspect voicebox ((this voicebox))
(defmethod inspect ((this voicebox))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
+12 -19
View File
@@ -3,18 +3,14 @@
;; definition of type water-anim
(deftype water-anim (water-vol)
((ppointer-water-anim (pointer water-anim) :offset 24)
(look int32 :offset-assert 212)
(play-ambient-sound? symbol :offset-assert 216)
((ppointer-water-anim (pointer water-anim) :overlay-at ppointer)
(look int32)
(play-ambient-sound? symbol)
)
:heap-base #x70
:method-count-assert 30
:size-assert #xdc
:flag-assert #x1e007000dc
)
;; definition for method 3 of type water-anim
(defmethod inspect water-anim ((this water-anim))
(defmethod inspect ((this water-anim))
(let ((t9-0 (method-of-type water-vol inspect)))
(t9-0 this)
)
@@ -313,17 +309,14 @@
;; definition of type water-anim-look
(deftype water-anim-look (structure)
((skel-group symbol :offset-assert 0)
(anim int32 :offset-assert 4)
(ambient-sound-spec sound-spec :offset-assert 8)
((skel-group symbol)
(anim int32)
(ambient-sound-spec sound-spec)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type water-anim-look
(defmethod inspect water-anim-look ((this water-anim-look))
(defmethod inspect ((this water-anim-look))
(format #t "[~8x] ~A~%" this 'water-anim-look)
(format #t "~Tskel-group: ~A~%" (-> this skel-group))
(format #t "~Tanim: ~D~%" (-> this anim))
@@ -575,20 +568,20 @@
)
;; definition for method 28 of type water-anim
(defmethod get-ripple-height water-anim ((this water-anim) (arg0 vector))
(defmethod get-ripple-height ((this water-anim) (arg0 vector))
(ripple-find-height this 0 arg0)
)
;; definition for method 24 of type water-anim
;; INFO: Return type mismatch symbol vs none.
(defmethod set-stack-size! water-anim ((this water-anim))
(defmethod set-stack-size! ((this water-anim))
(none)
)
;; definition for method 25 of type water-anim
;; INFO: Used lq/sq
;; INFO: Return type mismatch quaternion vs none.
(defmethod water-vol-method-25 water-anim ((this water-anim))
(defmethod water-vol-method-25 ((this water-anim))
(local-vars (sv-16 res-tag))
(set! (-> this play-ambient-sound?) #t)
(set! (-> this look) (res-lump-value (-> this entity) 'look int :default (the-as uint128 -1)))
@@ -609,7 +602,7 @@
)
;; definition for method 22 of type water-anim
(defmethod water-vol-method-22 water-anim ((this water-anim))
(defmethod water-vol-method-22 ((this water-anim))
(let ((s5-0 (-> this look)))
(if (or (< s5-0 0) (>= s5-0 (-> *water-anim-look* length)))
(go process-drawable-art-error "skel group")
+66 -71
View File
@@ -3,59 +3,56 @@
;; definition of type water-control
(deftype water-control (basic)
((flags water-flags :offset-assert 4)
(process process-drawable :offset-assert 8)
(joint-index int32 :offset-assert 12)
(top-y-offset float :offset-assert 16)
(ripple-size meters :offset-assert 20)
(enter-water-time time-frame :offset-assert 24)
(wade-time time-frame :offset-assert 32)
(on-water-time time-frame :offset-assert 40)
(enter-swim-time time-frame :offset-assert 48)
(swim-time time-frame :offset-assert 56)
(base-height meters :offset-assert 64)
(wade-height meters :offset-assert 68)
(swim-height meters :offset-assert 72)
(surface-height meters :offset-assert 76)
(bottom-height meters :offset-assert 80)
(height meters :offset-assert 84)
(height-offset float 4 :offset-assert 88)
(real-ocean-offset meters :offset 88)
(ocean-offset meters :offset 92)
(bob-offset meters :offset 96)
(align-offset meters :offset 100)
(swim-depth meters :offset-assert 104)
(bob smush-control :inline :offset-assert 112)
(volume handle :offset-assert 144)
(bottom vector 2 :inline :offset-assert 160)
(top vector 2 :inline :offset-assert 192)
(enter-water-pos vector :inline :offset-assert 224)
(drip-old-pos vector :inline :offset-assert 240)
(drip-joint-index int32 :offset-assert 256)
(drip-wetness float :offset-assert 260)
(drip-time time-frame :offset-assert 264)
(drip-speed float :offset-assert 272)
(drip-height meters :offset-assert 276)
(drip-mult float :offset-assert 280)
((flags water-flags)
(process process-drawable)
(joint-index int32)
(top-y-offset float)
(ripple-size meters)
(enter-water-time time-frame)
(wade-time time-frame)
(on-water-time time-frame)
(enter-swim-time time-frame)
(swim-time time-frame)
(base-height meters)
(wade-height meters)
(swim-height meters)
(surface-height meters)
(bottom-height meters)
(height meters)
(height-offset float 4)
(real-ocean-offset meters :overlay-at (-> height-offset 0))
(ocean-offset meters :overlay-at (-> height-offset 1))
(bob-offset meters :overlay-at (-> height-offset 2))
(align-offset meters :overlay-at (-> height-offset 3))
(swim-depth meters)
(bob smush-control :inline)
(volume handle)
(bottom vector 2 :inline)
(top vector 2 :inline)
(enter-water-pos vector :inline)
(drip-old-pos vector :inline)
(drip-joint-index int32)
(drip-wetness float)
(drip-time time-frame)
(drip-speed float)
(drip-height meters)
(drip-mult float)
)
:method-count-assert 17
:size-assert #x11c
:flag-assert #x110000011c
(:methods
(new (symbol type process int float float float) _type_ 0)
(water-control-method-9 (_type_) none 9)
(water-control-method-10 (_type_) none 10)
(start-bobbing! (_type_ float int int) none 11)
(distance-from-surface (_type_) float 12)
(create-splash (_type_ float vector int vector) none 13)
(display-water-marks? (_type_) symbol 14)
(water-control-method-15 (_type_) none 15)
(water-control-method-16 (_type_) none 16)
(new (symbol type process int float float float) _type_)
(water-control-method-9 (_type_) none)
(water-control-method-10 (_type_) none)
(start-bobbing! (_type_ float int int) none)
(distance-from-surface (_type_) float)
(create-splash (_type_ float vector int vector) none)
(display-water-marks? (_type_) symbol)
(water-control-method-15 (_type_) none)
(water-control-method-16 (_type_) none)
)
)
;; definition for method 3 of type water-control
(defmethod inspect water-control ((this water-control))
(defmethod inspect ((this water-control))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tflags: #x~X~%" (-> this flags))
(format #t "~Tprocess: ~A~%" (-> this process))
@@ -95,7 +92,7 @@
)
;; definition for method 14 of type water-control
(defmethod display-water-marks? water-control ((this water-control))
(defmethod display-water-marks? ((this water-control))
(and *display-water-marks* (logtest? (-> this flags) (water-flags wt00)))
)
@@ -116,40 +113,38 @@
)
;; definition for method 12 of type water-control
(defmethod distance-from-surface water-control ((this water-control))
(defmethod distance-from-surface ((this water-control))
(- (-> this top 0 y) (-> this height))
)
;; definition of type water-vol
(deftype water-vol (process-drawable)
((water-height meters :offset-assert 176)
(wade-height meters :offset-assert 180)
(swim-height meters :offset-assert 184)
(bottom-height meters :offset-assert 188)
(attack-event symbol :offset-assert 192)
(target handle :offset-assert 200)
(flags water-flags :offset-assert 208)
((water-height meters)
(wade-height meters)
(swim-height meters)
(bottom-height meters)
(attack-event symbol)
(target handle)
(flags water-flags)
)
:heap-base #x70
:method-count-assert 30
:size-assert #xd4
:flag-assert #x1e007000d4
(:state-methods
water-vol-idle
water-vol-startup
)
(:methods
(water-vol-idle () _type_ :state 20)
(water-vol-startup () _type_ :state 21)
(water-vol-method-22 (_type_) none 22)
(reset-root! (_type_) none 23)
(set-stack-size! (_type_) none 24)
(water-vol-method-25 (_type_) none 25)
(update! (_type_) none 26)
(on-exit-water (_type_) none 27)
(get-ripple-height (_type_ vector) float 28)
(init! (_type_) none 29)
(water-vol-method-22 (_type_) none)
(reset-root! (_type_) none)
(set-stack-size! (_type_) none)
(water-vol-method-25 (_type_) none)
(update! (_type_) none)
(on-exit-water (_type_) none)
(get-ripple-height (_type_ vector) float)
(init! (_type_) none)
)
)
;; definition for method 3 of type water-vol
(defmethod inspect water-vol ((this water-vol))
(defmethod inspect ((this water-vol))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
+14 -14
View File
@@ -660,7 +660,7 @@
;; definition for method 9 of type water-control
;; INFO: Return type mismatch int vs none.
(defmethod water-control-method-9 water-control ((this water-control))
(defmethod water-control-method-9 ((this water-control))
0
(none)
)
@@ -668,7 +668,7 @@
;; definition for method 10 of type water-control
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod water-control-method-10 water-control ((this water-control))
(defmethod water-control-method-10 ((this water-control))
(with-pp
(let ((s5-0 (-> this flags)))
(cond
@@ -1016,7 +1016,7 @@
;; definition for method 11 of type water-control
;; INFO: Return type mismatch int vs none.
(defmethod start-bobbing! water-control ((this water-control) (arg0 float) (arg1 int) (arg2 int))
(defmethod start-bobbing! ((this water-control) (arg0 float) (arg1 int) (arg2 int))
(activate! (-> this bob) (- arg0) arg1 arg2 0.9 1.0)
0
(none)
@@ -1117,7 +1117,7 @@
;; definition for method 15 of type water-control
;; INFO: Return type mismatch int vs none.
(defmethod water-control-method-15 water-control ((this water-control))
(defmethod water-control-method-15 ((this water-control))
(with-pp
(logior! (-> this flags) (water-flags wt09))
(logclear! (-> this flags) (water-flags wt16))
@@ -1149,7 +1149,7 @@
;; definition for method 16 of type water-control
;; INFO: Return type mismatch int vs none.
(defmethod water-control-method-16 water-control ((this water-control))
(defmethod water-control-method-16 ((this water-control))
(logclear! (-> this flags) (water-flags wt09))
(set-zero! (-> this bob))
(if (logtest? (water-flags wt17) (-> this flags))
@@ -1182,7 +1182,7 @@
;; definition for method 13 of type water-control
;; INFO: Return type mismatch int vs none.
(defmethod create-splash water-control ((this water-control) (arg0 float) (arg1 vector) (arg2 int) (arg3 vector))
(defmethod create-splash ((this water-control) (arg0 float) (arg1 vector) (arg2 int) (arg3 vector))
(when (and (logtest? (-> this flags) (water-flags wt05)) (logtest? (water-flags wt23) (-> this flags)))
(let ((a1-3 (vector+float*! (new 'stack-no-clear 'vector) arg1 arg3 0.05)))
(set! (-> a1-3 y) (-> this surface-height))
@@ -1195,7 +1195,7 @@
;; definition for method 27 of type water-vol
;; INFO: Return type mismatch int vs none.
(defmethod on-exit-water water-vol ((this water-vol))
(defmethod on-exit-water ((this water-vol))
(when (handle->process (-> this target))
(let ((v1-7 (-> (the-as target (-> this target process 0)) water)))
(logclear! (-> v1-7 flags) (water-flags wt01 wt02 wt03 wt08 wt17 wt18 wt19 wt20 wt21 wt23 wt24 wt25 wt26))
@@ -1220,7 +1220,7 @@
;; definition for method 26 of type water-vol
;; INFO: Return type mismatch int vs none.
(defmethod update! water-vol ((this water-vol))
(defmethod update! ((this water-vol))
(cond
((handle->process (-> this target))
(cond
@@ -1314,21 +1314,21 @@
)
;; definition for method 24 of type water-vol
(defmethod set-stack-size! water-vol ((this water-vol))
(defmethod set-stack-size! ((this water-vol))
(stack-size-set! (-> this main-thread) 128)
(none)
)
;; definition for method 23 of type water-vol
;; INFO: Return type mismatch trsqv vs none.
(defmethod reset-root! water-vol ((this water-vol))
(defmethod reset-root! ((this water-vol))
(set! (-> this root) (new 'process 'trsqv))
(none)
)
;; definition for method 25 of type water-vol
;; INFO: Return type mismatch int vs none.
(defmethod water-vol-method-25 water-vol ((this water-vol))
(defmethod water-vol-method-25 ((this water-vol))
0
(none)
)
@@ -1336,7 +1336,7 @@
;; definition for method 29 of type water-vol
;; INFO: Used lq/sq
;; INFO: Return type mismatch water-flags vs none.
(defmethod init! water-vol ((this water-vol))
(defmethod init! ((this water-vol))
(local-vars (sv-16 res-tag))
(set! (-> this attack-event) (the-as symbol ((method-of-type res-lump get-property-struct)
(-> this entity)
@@ -1398,7 +1398,7 @@
;; definition for method 22 of type water-vol
;; INFO: Return type mismatch int vs none.
(defmethod water-vol-method-22 water-vol ((this water-vol))
(defmethod water-vol-method-22 ((this water-vol))
0
(none)
)
@@ -1418,7 +1418,7 @@
;; definition for method 11 of type water-vol
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! water-vol ((this water-vol) (arg0 entity-actor))
(defmethod init-from-entity! ((this water-vol) (arg0 entity-actor))
(set-stack-size! this)
(reset-root! this)
(init! this)
+132 -195
View File
@@ -3,17 +3,14 @@
;; definition of type joint-anim
(deftype joint-anim (basic)
((name string :offset-assert 4)
(number int16 :offset-assert 8)
(length int16 :offset-assert 10)
((name string)
(number int16)
(length int16)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type joint-anim
(defmethod inspect joint-anim ((this joint-anim))
(defmethod inspect ((this joint-anim))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -23,33 +20,24 @@
;; definition of type joint-anim-matrix
(deftype joint-anim-matrix (joint-anim)
((data matrix :inline :dynamic :offset 16)
((data matrix :inline :dynamic :offset 16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition of type joint-anim-transformq
(deftype joint-anim-transformq (joint-anim)
((data transformq :inline :dynamic :offset 16)
((data transformq :inline :dynamic :offset 16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition of type joint-anim-drawable
(deftype joint-anim-drawable (joint-anim)
((data drawable :dynamic :offset-assert 12)
((data drawable :dynamic)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type joint-anim-drawable
(defmethod inspect joint-anim-drawable ((this joint-anim-drawable))
(defmethod inspect ((this joint-anim-drawable))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -60,15 +48,12 @@
;; definition of type joint-anim-compressed
(deftype joint-anim-compressed (joint-anim)
((data uint32 :dynamic :offset-assert 12)
((data uint32 :dynamic)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type joint-anim-compressed
(defmethod inspect joint-anim-compressed ((this joint-anim-compressed))
(defmethod inspect ((this joint-anim-compressed))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tnumber: ~D~%" (-> this number))
@@ -78,19 +63,16 @@
;; definition of type joint-anim-frame
(deftype joint-anim-frame (structure)
((matrices matrix 2 :inline :offset-assert 0)
(data matrix :inline :dynamic :offset-assert 128)
((matrices matrix 2 :inline)
(data matrix :inline :dynamic)
)
:method-count-assert 9
:size-assert #x80
:flag-assert #x900000080
(:methods
(new (symbol type int) _type_ 0)
(new (symbol type int) _type_)
)
)
;; definition for method 3 of type joint-anim-frame
(defmethod inspect joint-anim-frame ((this joint-anim-frame))
(defmethod inspect ((this joint-anim-frame))
(format #t "[~8x] ~A~%" this 'joint-anim-frame)
(format #t "~Tmatrices[2] @ #x~X~%" (-> this matrices))
(format #t "~Tdata[0] @ #x~X~%" (-> this data))
@@ -110,17 +92,14 @@
;; definition of type joint-anim-compressed-hdr
(deftype joint-anim-compressed-hdr (structure)
((control-bits uint32 14 :offset-assert 0)
(num-joints uint32 :offset-assert 56)
(matrix-bits uint32 :offset-assert 60)
((control-bits uint32 14)
(num-joints uint32)
(matrix-bits uint32)
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
)
;; definition for method 3 of type joint-anim-compressed-hdr
(defmethod inspect joint-anim-compressed-hdr ((this joint-anim-compressed-hdr))
(defmethod inspect ((this joint-anim-compressed-hdr))
(format #t "[~8x] ~A~%" this 'joint-anim-compressed-hdr)
(format #t "~Tcontrol-bits[14] @ #x~X~%" (-> this control-bits))
(format #t "~Tnum-joints: ~D~%" (-> this num-joints))
@@ -130,20 +109,17 @@
;; definition of type joint-anim-compressed-fixed
(deftype joint-anim-compressed-fixed (structure)
((hdr joint-anim-compressed-hdr :inline :offset-assert 0)
(offset-64 uint32 :offset-assert 64)
(offset-32 uint32 :offset-assert 68)
(offset-16 uint32 :offset-assert 72)
(reserved uint32 :offset-assert 76)
(data vector 133 :inline :offset-assert 80)
((hdr joint-anim-compressed-hdr :inline)
(offset-64 uint32)
(offset-32 uint32)
(offset-16 uint32)
(reserved uint32)
(data vector 133 :inline)
)
:method-count-assert 9
:size-assert #x8a0
:flag-assert #x9000008a0
)
;; definition for method 3 of type joint-anim-compressed-fixed
(defmethod inspect joint-anim-compressed-fixed ((this joint-anim-compressed-fixed))
(defmethod inspect ((this joint-anim-compressed-fixed))
(format #t "[~8x] ~A~%" this 'joint-anim-compressed-fixed)
(format #t "~Thdr: #<joint-anim-compressed-hdr @ #x~X>~%" (-> this hdr))
(format #t "~Toffset-64: ~D~%" (-> this offset-64))
@@ -156,19 +132,16 @@
;; definition of type joint-anim-compressed-frame
(deftype joint-anim-compressed-frame (structure)
((offset-64 uint32 :offset-assert 0)
(offset-32 uint32 :offset-assert 4)
(offset-16 uint32 :offset-assert 8)
(reserved uint32 :offset-assert 12)
(data vector 133 :inline :offset-assert 16)
((offset-64 uint32)
(offset-32 uint32)
(offset-16 uint32)
(reserved uint32)
(data vector 133 :inline)
)
:method-count-assert 9
:size-assert #x860
:flag-assert #x900000860
)
;; definition for method 3 of type joint-anim-compressed-frame
(defmethod inspect joint-anim-compressed-frame ((this joint-anim-compressed-frame))
(defmethod inspect ((this joint-anim-compressed-frame))
(format #t "[~8x] ~A~%" this 'joint-anim-compressed-frame)
(format #t "~Toffset-64: ~D~%" (-> this offset-64))
(format #t "~Toffset-32: ~D~%" (-> this offset-32))
@@ -180,19 +153,16 @@
;; definition of type joint-anim-compressed-control
(deftype joint-anim-compressed-control (structure)
((num-frames uint32 :offset-assert 0)
(fixed-qwc uint32 :offset-assert 4)
(frame-qwc uint32 :offset-assert 8)
(fixed joint-anim-compressed-fixed :offset-assert 12)
(data joint-anim-compressed-frame 1 :offset-assert 16)
((num-frames uint32)
(fixed-qwc uint32)
(frame-qwc uint32)
(fixed joint-anim-compressed-fixed)
(data joint-anim-compressed-frame 1)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type joint-anim-compressed-control
(defmethod inspect joint-anim-compressed-control ((this joint-anim-compressed-control))
(defmethod inspect ((this joint-anim-compressed-control))
(format #t "[~8x] ~A~%" this 'joint-anim-compressed-control)
(format #t "~Tnum-frames: ~D~%" (-> this num-frames))
(format #t "~Tfixed-qwc: ~D~%" (-> this fixed-qwc))
@@ -204,23 +174,20 @@
;; definition of type art
(deftype art (basic)
((name string :offset 8)
(length int32 :offset-assert 12)
(extra res-lump :offset-assert 16)
((name string :offset 8)
(length int32)
(extra res-lump)
)
:method-count-assert 13
:size-assert #x14
:flag-assert #xd00000014
(:methods
(login (_type_) _type_ 9)
(lookup-art (_type_ string type) joint 10)
(lookup-idx-of-art (_type_ string type) int 11)
(needs-link? (_type_) symbol 12)
(login (_type_) _type_)
(lookup-art (_type_ string type) joint)
(lookup-idx-of-art (_type_ string type) int)
(needs-link? (_type_) symbol)
)
)
;; definition for method 3 of type art
(defmethod inspect art ((this art))
(defmethod inspect ((this art))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tlength: ~D~%" (-> this length))
@@ -230,15 +197,12 @@
;; definition of type art-element
(deftype art-element (art)
((pad uint8 12 :offset-assert 20)
((pad uint8 12)
)
:method-count-assert 13
:size-assert #x20
:flag-assert #xd00000020
)
;; definition for method 3 of type art-element
(defmethod inspect art-element ((this art-element))
(defmethod inspect ((this art-element))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tlength: ~D~%" (-> this length))
@@ -248,87 +212,69 @@
;; definition of type art-mesh-anim
(deftype art-mesh-anim (art-element)
((data basic :dynamic :offset-assert 32)
((data basic :dynamic)
)
:method-count-assert 13
:size-assert #x20
:flag-assert #xd00000020
)
;; definition of type art-joint-anim
(deftype art-joint-anim (art-element)
((eye-anim-data merc-eye-anim-block :offset 4)
(speed float :offset 20)
(artist-base float :offset 24)
(artist-step float :offset 28)
(master-art-group-name string :offset 32)
(master-art-group-index int32 :offset 36)
(blerc-data (pointer uint8) :offset 40)
(frames joint-anim-compressed-control :offset 44)
(data joint-anim-compressed :dynamic :offset-assert 48)
((eye-anim-data merc-eye-anim-block :offset 4)
(speed float :overlay-at (-> pad 0))
(artist-base float :overlay-at (-> pad 4))
(artist-step float :overlay-at (-> pad 8))
(master-art-group-name string :offset 32)
(master-art-group-index int32 :offset 36)
(blerc-data (pointer uint8) :offset 40)
(frames joint-anim-compressed-control :offset 44)
(data joint-anim-compressed :dynamic)
)
:method-count-assert 13
:size-assert #x30
:flag-assert #xd00000030
)
;; definition of type art-group
(deftype art-group (art)
((info file-info :offset 4)
(data art-element :dynamic :offset 32)
((info file-info :offset 4)
(data art-element :dynamic :offset 32)
)
:method-count-assert 15
:size-assert #x20
:flag-assert #xf00000020
(:methods
(relocate (_type_ kheap (pointer uint8)) none :replace 7)
(link-art! (_type_) art-group 13)
(unlink-art! (_type_) int 14)
(relocate (_type_ kheap (pointer uint8)) none :replace)
(link-art! (_type_) art-group)
(unlink-art! (_type_) int)
)
)
;; definition of type art-mesh-geo
(deftype art-mesh-geo (art-element)
((data basic :dynamic :offset-assert 32)
((data basic :dynamic)
)
:method-count-assert 13
:size-assert #x20
:flag-assert #xd00000020
)
;; definition of type art-joint-geo
(deftype art-joint-geo (art-element)
((data joint :dynamic :offset-assert 32)
((data joint :dynamic)
)
:method-count-assert 13
:size-assert #x20
:flag-assert #xd00000020
)
;; definition of type skeleton-group
(deftype skeleton-group (basic)
((art-group-name string :offset-assert 4)
(jgeo int32 :offset-assert 8)
(janim int32 :offset-assert 12)
(bounds vector :inline :offset-assert 16)
(radius meters :offset 28)
(mgeo int16 4 :offset-assert 32)
(max-lod int32 :offset-assert 40)
(lod-dist float 4 :offset-assert 44)
(longest-edge meters :offset-assert 60)
(texture-level int8 :offset-assert 64)
(version int8 :offset-assert 65)
(shadow int8 :offset-assert 66)
(sort int8 :offset-assert 67)
(_pad uint8 4 :offset-assert 68)
((art-group-name string)
(jgeo int32)
(janim int32)
(bounds vector :inline)
(radius meters :overlay-at (-> bounds w))
(mgeo int16 4)
(max-lod int32)
(lod-dist float 4)
(longest-edge meters)
(texture-level int8)
(version int8)
(shadow int8)
(sort int8)
(_pad uint8 4)
)
:method-count-assert 9
:size-assert #x48
:flag-assert #x900000048
)
;; definition for method 3 of type skeleton-group
(defmethod inspect skeleton-group ((this skeleton-group))
(defmethod inspect ((this skeleton-group))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tart-group-name: ~A~%" (-> this art-group-name))
(format #t "~Tjgeo: ~D~%" (-> this jgeo))
@@ -348,17 +294,14 @@
;; definition of type lod-group
(deftype lod-group (structure)
((geo merc-ctrl :offset-assert 0)
(dist meters :offset-assert 4)
((geo merc-ctrl)
(dist meters)
)
:pack-me
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type lod-group
(defmethod inspect lod-group ((this lod-group))
(defmethod inspect ((this lod-group))
(format #t "[~8x] ~A~%" this 'lod-group)
(format #t "~Tgeo: ~A~%" (-> this geo))
(format #t "~Tdist: (meters ~m)~%" (-> this dist))
@@ -367,20 +310,17 @@
;; definition of type lod-set
(deftype lod-set (structure)
((lod lod-group 4 :inline :offset-assert 0)
(max-lod int8 :offset-assert 32)
((lod lod-group 4 :inline)
(max-lod int8)
)
:pack-me
:method-count-assert 10
:size-assert #x21
:flag-assert #xa00000021
(:methods
(setup-lods! (_type_ skeleton-group art-group entity) _type_ 9)
(setup-lods! (_type_ skeleton-group art-group entity) _type_)
)
)
;; definition for method 3 of type lod-set
(defmethod inspect lod-set ((this lod-set))
(defmethod inspect ((this lod-set))
(format #t "[~8x] ~A~%" this 'lod-set)
(format #t "~Tlod[4] @ #x~X~%" (-> this lod))
(format #t "~Tmax-lod: ~D~%" (-> this max-lod))
@@ -389,60 +329,57 @@
;; definition of type draw-control
(deftype draw-control (basic)
((status draw-status :offset-assert 4)
(matrix-type uint8 :offset-assert 5)
(data-format uint8 :offset-assert 6)
(global-effect draw-effect :offset-assert 7)
(art-group art-group :offset-assert 8)
(jgeo art-joint-geo :offset-assert 12)
(mgeo merc-ctrl :offset-assert 16)
(dma-add-func (function process-drawable draw-control symbol object none) :offset-assert 20)
(skeleton skeleton :offset-assert 24)
(lod-set lod-set :inline :offset-assert 28)
(lod lod-group 4 :inline :offset 28)
(max-lod int8 :offset 60)
(force-lod int8 :offset-assert 61)
(cur-lod int8 :offset-assert 62)
(desired-lod int8 :offset-assert 63)
(ripple ripple-control :offset-assert 64)
(longest-edge meters :offset-assert 68)
(longest-edge? uint32 :offset 68)
(light-index uint8 :offset-assert 72)
(dummy uint8 2 :offset-assert 73)
(death-draw-overlap uint8 :offset-assert 75)
(death-timer uint8 :offset-assert 76)
(death-timer-org uint8 :offset-assert 77)
(death-vertex-skip uint16 :offset-assert 78)
(death-effect uint32 :offset-assert 80)
(sink-group dma-foreground-sink-group :offset-assert 84)
(process process :offset-assert 88)
(shadow shadow-geo :offset-assert 92)
(shadow-ctrl shadow-control :offset-assert 96)
(origin vector :inline :offset-assert 112)
(bounds vector :inline :offset-assert 128)
(radius meters :offset 140)
(color-mult rgbaf :inline :offset-assert 144)
(color-emissive rgbaf :inline :offset-assert 160)
(secondary-interp float :offset-assert 176)
(current-secondary-interp float :offset-assert 180)
(shadow-mask uint8 :offset-assert 184)
(level-index uint8 :offset-assert 185)
(origin-joint-index uint8 :offset-assert 186)
(shadow-joint-index uint8 :offset-assert 187)
((status draw-status)
(matrix-type uint8)
(data-format uint8)
(global-effect draw-effect)
(art-group art-group)
(jgeo art-joint-geo)
(mgeo merc-ctrl)
(dma-add-func (function process-drawable draw-control symbol object none))
(skeleton skeleton)
(lod-set lod-set :inline)
(lod lod-group 4 :inline :overlay-at (-> lod-set lod 0))
(max-lod int8 :overlay-at (-> lod-set max-lod))
(force-lod int8)
(cur-lod int8)
(desired-lod int8)
(ripple ripple-control)
(longest-edge meters)
(longest-edge? uint32 :overlay-at longest-edge)
(light-index uint8)
(dummy uint8 2)
(death-draw-overlap uint8)
(death-timer uint8)
(death-timer-org uint8)
(death-vertex-skip uint16)
(death-effect uint32)
(sink-group dma-foreground-sink-group)
(process process)
(shadow shadow-geo)
(shadow-ctrl shadow-control)
(origin vector :inline)
(bounds vector :inline)
(radius meters :overlay-at (-> bounds w))
(color-mult rgbaf :inline)
(color-emissive rgbaf :inline)
(secondary-interp float)
(current-secondary-interp float)
(shadow-mask uint8)
(level-index uint8)
(origin-joint-index uint8)
(shadow-joint-index uint8)
)
:method-count-assert 12
:size-assert #xbc
:flag-assert #xc000000bc
(:methods
(new (symbol type process art-joint-geo) _type_ 0)
(get-skeleton-origin (_type_) vector 9)
(lod-set! (_type_ int) none 10)
(lods-assign! (_type_ lod-set) none 11)
(new (symbol type process art-joint-geo) _type_)
(get-skeleton-origin (_type_) vector)
(lod-set! (_type_ int) none)
(lods-assign! (_type_ lod-set) none)
)
)
;; definition for method 3 of type draw-control
(defmethod inspect draw-control ((this draw-control))
(defmethod inspect ((this draw-control))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tstatus: ~D~%" (-> this status))
(format #t "~Tmatrix-type: ~D~%" (-> this matrix-type))
@@ -488,7 +425,7 @@
)
;; definition for method 9 of type draw-control
(defmethod get-skeleton-origin draw-control ((this draw-control))
(defmethod get-skeleton-origin ((this draw-control))
(-> this skeleton bones 0 transform vector 3)
)
+101 -126
View File
@@ -6,36 +6,33 @@
;; definition of type list-control
(deftype list-control (structure)
((listfunc (function int list-control symbol) :offset-assert 0)
(list-owner uint32 :offset-assert 4)
(top int32 :offset-assert 8)
(left int32 :offset-assert 12)
(list glst-list :offset-assert 16)
(the-node glst-node :offset-assert 20)
(top-index int32 :offset-assert 24)
(the-index int32 :offset-assert 28)
(the-disp-line int32 :offset-assert 32)
(highlight-index int32 :offset-assert 36)
(current-index int32 :offset-assert 40)
(numlines int32 :offset-assert 44)
(lines-to-disp int32 :offset-assert 48)
(charswide int32 :offset-assert 52)
(highlight-disp-line int32 :offset-assert 56)
(field-id int32 :offset-assert 60)
(xpos int32 :offset-assert 64)
(ypos int32 :offset-assert 68)
(user-info int32 :offset-assert 72)
(user-info-u uint32 :offset 72)
(return-int int32 :offset-assert 76)
((listfunc (function int list-control symbol))
(list-owner uint32)
(top int32)
(left int32)
(list glst-list)
(the-node glst-node)
(top-index int32)
(the-index int32)
(the-disp-line int32)
(highlight-index int32)
(current-index int32)
(numlines int32)
(lines-to-disp int32)
(charswide int32)
(highlight-disp-line int32)
(field-id int32)
(xpos int32)
(ypos int32)
(user-info int32)
(user-info-u uint32 :overlay-at user-info)
(return-int int32)
)
:allow-misaligned
:method-count-assert 9
:size-assert #x50
:flag-assert #x900000050
)
;; definition for method 3 of type list-control
(defmethod inspect list-control ((this list-control))
(defmethod inspect ((this list-control))
(format #t "[~8x] ~A~%" this 'list-control)
(format #t "~Tlistfunc: ~A~%" (-> this listfunc))
(format #t "~Tlist-owner: #x~X~%" (-> this list-owner))
@@ -62,16 +59,13 @@
;; definition of type list-field
(deftype list-field (structure)
((left int32 :offset-assert 0)
(width int32 :offset-assert 4)
((left int32)
(width int32)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type list-field
(defmethod inspect list-field ((this list-field))
(defmethod inspect ((this list-field))
(format #t "[~8x] ~A~%" this 'list-field)
(format #t "~Tleft: ~D~%" (-> this left))
(format #t "~Twidth: ~D~%" (-> this width))
@@ -80,25 +74,22 @@
;; definition of type DISP_LIST-bank
(deftype DISP_LIST-bank (basic)
((TV_SPACING int32 :offset-assert 4)
(BORDER_WIDTH int32 :offset-assert 8)
(BORDER_HEIGHT int32 :offset-assert 12)
(MAX_LINES int32 :offset-assert 16)
(CHAR_WIDTH int32 :offset-assert 20)
(INC_DELAY int32 :offset-assert 24)
(BORDER_LINES int32 :offset-assert 28)
(CXOFF int32 :offset-assert 32)
(CYOFF int32 :offset-assert 36)
(BXOFF int32 :offset-assert 40)
(BYOFF int32 :offset-assert 44)
((TV_SPACING int32)
(BORDER_WIDTH int32)
(BORDER_HEIGHT int32)
(MAX_LINES int32)
(CHAR_WIDTH int32)
(INC_DELAY int32)
(BORDER_LINES int32)
(CXOFF int32)
(CYOFF int32)
(BXOFF int32)
(BYOFF int32)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type DISP_LIST-bank
(defmethod inspect DISP_LIST-bank ((this DISP_LIST-bank))
(defmethod inspect ((this DISP_LIST-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~TV_SPACING: ~D~%" (-> this TV_SPACING))
(format #t "~TBORDER_WIDTH: ~D~%" (-> this BORDER_WIDTH))
@@ -384,30 +375,27 @@
;; definition of type anim-tester-bank
(deftype anim-tester-bank (basic)
((ANIM_SPEED float :offset-assert 4)
(BLEND float :offset-assert 8)
(OBJECT_LIST_X int32 :offset-assert 12)
(OBJECT_LIST_Y int32 :offset-assert 16)
(OBJECT_LIST_MIN_WIDTH int32 :offset-assert 20)
(ANIM_LIST_X int32 :offset-assert 24)
(ANIM_LIST_Y int32 :offset-assert 28)
(ANIM_LIST_MIN_WIDTH int32 :offset-assert 32)
(PICK_LIST_X int32 :offset-assert 36)
(PICK_LIST_Y int32 :offset-assert 40)
(PICK_LIST_MIN_WIDTH int32 :offset-assert 44)
(EDIT_LIST_X int32 :offset-assert 48)
(EDIT_LIST_Y int32 :offset-assert 52)
(EDIT_STATS_X int32 :offset-assert 56)
(EDIT_LIST_MIN_WIDTH int32 :offset-assert 60)
(EDIT_PICK_X int32 :offset-assert 64)
((ANIM_SPEED float)
(BLEND float)
(OBJECT_LIST_X int32)
(OBJECT_LIST_Y int32)
(OBJECT_LIST_MIN_WIDTH int32)
(ANIM_LIST_X int32)
(ANIM_LIST_Y int32)
(ANIM_LIST_MIN_WIDTH int32)
(PICK_LIST_X int32)
(PICK_LIST_Y int32)
(PICK_LIST_MIN_WIDTH int32)
(EDIT_LIST_X int32)
(EDIT_LIST_Y int32)
(EDIT_STATS_X int32)
(EDIT_LIST_MIN_WIDTH int32)
(EDIT_PICK_X int32)
)
:method-count-assert 9
:size-assert #x44
:flag-assert #x900000044
)
;; definition for method 3 of type anim-tester-bank
(defmethod inspect anim-tester-bank ((this anim-tester-bank))
(defmethod inspect ((this anim-tester-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~TANIM_SPEED: ~f~%" (-> this ANIM_SPEED))
(format #t "~TBLEND: ~f~%" (-> this BLEND))
@@ -451,26 +439,22 @@
;; definition of type anim-tester
(deftype anim-tester (process-drawable)
((flags anim-tester-flags :offset-assert 176)
(obj-list glst-list :inline :offset-assert 180)
(current-obj string :offset-assert 196)
(speed int32 :offset-assert 200)
(list-con list-control :inline :offset-assert 204)
(pick-con list-control :inline :offset-assert 284)
(item-field int64 :offset-assert 368)
(inc-delay int32 :offset-assert 376)
(inc-timer int32 :offset-assert 380)
(edit-mode int32 :offset-assert 384)
(old-mode int32 :offset-assert 388)
(anim-speed float :offset-assert 392)
(anim-gspeed float :offset-assert 396)
(anim-first float :offset-assert 400)
(anim-last float :offset-assert 404)
((flags anim-tester-flags)
(obj-list glst-list :inline)
(current-obj string)
(speed int32)
(list-con list-control :inline)
(pick-con list-control :inline)
(item-field int64)
(inc-delay int32)
(inc-timer int32)
(edit-mode int32)
(old-mode int32)
(anim-speed float)
(anim-gspeed float)
(anim-first float)
(anim-last float)
)
:heap-base #x130
:method-count-assert 20
:size-assert #x198
:flag-assert #x1401300198
(:states
anim-tester-process
)
@@ -478,7 +462,7 @@
;; definition for method 3 of type anim-tester
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect anim-tester ((this anim-tester))
(defmethod inspect ((this anim-tester))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -522,28 +506,25 @@
;; definition of type anim-test-obj
(deftype anim-test-obj (glst-named-node)
((obj-art-group art-group :offset-assert 12)
(seq-list glst-list :inline :offset-assert 16)
(flags int32 :offset-assert 32)
(mesh-geo merc-ctrl :offset-assert 36)
(joint-geo art-joint-geo :offset-assert 40)
(list-con list-control :inline :offset-assert 44)
(parent uint32 :offset-assert 124)
(anim-index int32 :offset-assert 128)
(anim-hindex int32 :offset-assert 132)
(seq-index int32 :offset-assert 136)
(seq-hindex int32 :offset-assert 140)
((obj-art-group art-group)
(seq-list glst-list :inline)
(flags int32)
(mesh-geo merc-ctrl)
(joint-geo art-joint-geo)
(list-con list-control :inline)
(parent uint32)
(anim-index int32)
(anim-hindex int32)
(seq-index int32)
(seq-hindex int32)
)
:method-count-assert 9
:size-assert #x90
:flag-assert #x900000090
(:methods
(new (symbol type int string basic) _type_ 0)
(new (symbol type int string basic) _type_)
)
)
;; definition for method 3 of type anim-test-obj
(defmethod inspect anim-test-obj ((this anim-test-obj))
(defmethod inspect ((this anim-test-obj))
(format #t "[~8x] ~A~%" this 'anim-test-obj)
(format #t "~Tnext: #<glst-node @ #x~X>~%" (-> this next))
(format #t "~Tprev: #<glst-node @ #x~X>~%" (-> this prev))
@@ -599,22 +580,19 @@
;; definition of type anim-test-sequence
(deftype anim-test-sequence (glst-named-node)
((item-list glst-list :inline :offset-assert 12)
(playing-item int32 :offset-assert 28)
(flags int32 :offset-assert 32)
(list-con list-control :inline :offset-assert 36)
(parent anim-test-obj :offset-assert 116)
((item-list glst-list :inline)
(playing-item int32)
(flags int32)
(list-con list-control :inline)
(parent anim-test-obj)
)
:method-count-assert 9
:size-assert #x78
:flag-assert #x900000078
(:methods
(new (symbol type int string) _type_ 0)
(new (symbol type int string) _type_)
)
)
;; definition for method 3 of type anim-test-sequence
(defmethod inspect anim-test-sequence ((this anim-test-sequence))
(defmethod inspect ((this anim-test-sequence))
(format #t "[~8x] ~A~%" this 'anim-test-sequence)
(format #t "~Tnext: #<glst-node @ #x~X>~%" (-> this next))
(format #t "~Tprev: #<glst-node @ #x~X>~%" (-> this prev))
@@ -655,25 +633,22 @@
;; definition of type anim-test-seq-item
(deftype anim-test-seq-item (glst-named-node)
((speed int32 :offset-assert 12)
(blend int32 :offset-assert 16)
(first-frame float :offset-assert 20)
(last-frame float :offset-assert 24)
(num-frames float :offset-assert 28)
(artist-base float :offset-assert 32)
(flags int32 :offset-assert 36)
(parent anim-test-sequence :offset-assert 40)
((speed int32)
(blend int32)
(first-frame float)
(last-frame float)
(num-frames float)
(artist-base float)
(flags int32)
(parent anim-test-sequence)
)
:method-count-assert 9
:size-assert #x2c
:flag-assert #x90000002c
(:methods
(new (symbol type int string) _type_ 0)
(new (symbol type int string) _type_)
)
)
;; definition for method 3 of type anim-test-seq-item
(defmethod inspect anim-test-seq-item ((this anim-test-seq-item))
(defmethod inspect ((this anim-test-seq-item))
(format #t "[~8x] ~A~%" this 'anim-test-seq-item)
(format #t "~Tnext: #<glst-node @ #x~X>~%" (-> this next))
(format #t "~Tprev: #<glst-node @ #x~X>~%" (-> this prev))
@@ -728,7 +703,7 @@
;; definition for method 3 of type anim-tester
;; INFO: this function exists in multiple non-identical object files
;; INFO: Return type mismatch object vs anim-tester.
(defmethod inspect anim-tester ((this anim-tester))
(defmethod inspect ((this anim-tester))
(format #t "--anim-tester--~%")
(let ((v1-0 (-> this obj-list)))
"return the start of the list"
+8 -11
View File
@@ -3,21 +3,18 @@
;; definition of type __assert-info-private-struct
(deftype __assert-info-private-struct (structure)
((filename string :offset-assert 0)
(line-num uint16 :offset-assert 4)
(column-num uint16 :offset-assert 6)
((filename string)
(line-num uint16)
(column-num uint16)
)
:method-count-assert 11
:size-assert #x8
:flag-assert #xb00000008
(:methods
(set-pos (_type_ string uint uint) int 9)
(print-pos (_type_) int 10)
(set-pos (_type_ string uint uint) int)
(print-pos (_type_) int)
)
)
;; definition for method 3 of type __assert-info-private-struct
(defmethod inspect __assert-info-private-struct ((this __assert-info-private-struct))
(defmethod inspect ((this __assert-info-private-struct))
(format #t "[~8x] ~A~%" this '__assert-info-private-struct)
(format #t "~Tfilename: ~A~%" (-> this filename))
(format #t "~Tline-num: ~D~%" (-> this line-num))
@@ -26,7 +23,7 @@
)
;; definition for method 9 of type __assert-info-private-struct
(defmethod set-pos __assert-info-private-struct ((this __assert-info-private-struct) (filename string) (line-num uint) (column-num uint))
(defmethod set-pos ((this __assert-info-private-struct) (filename string) (line-num uint) (column-num uint))
(set! (-> this filename) filename)
(set! (-> this line-num) line-num)
(set! (-> this column-num) column-num)
@@ -34,7 +31,7 @@
)
;; definition for method 10 of type __assert-info-private-struct
(defmethod print-pos __assert-info-private-struct ((this __assert-info-private-struct))
(defmethod print-pos ((this __assert-info-private-struct))
(format #t "file ~S.gc, line ~D, col ~D.~%" (-> this filename) (-> this line-num) (-> this column-num))
0
)
+15 -23
View File
@@ -3,18 +3,15 @@
;; definition of type pos-history
(deftype pos-history (structure)
((points (inline-array vector) :offset-assert 0)
(num-points int32 :offset-assert 4)
(h-first int32 :offset-assert 8)
(h-last int32 :offset-assert 12)
((points (inline-array vector))
(num-points int32)
(h-first int32)
(h-last int32)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type pos-history
(defmethod inspect pos-history ((this pos-history))
(defmethod inspect ((this pos-history))
(format #t "[~8x] ~A~%" this 'pos-history)
(format #t "~Tpoints: #x~X~%" (-> this points))
(format #t "~Tnum-points: ~D~%" (-> this num-points))
@@ -25,18 +22,15 @@
;; definition of type debug-vertex
(deftype debug-vertex (structure)
((trans vector4w :inline :offset-assert 0)
(normal vector3h :inline :offset-assert 16)
(st vector2h :inline :offset-assert 22)
(color uint32 :offset-assert 28)
((trans vector4w :inline)
(normal vector3h :inline)
(st vector2h :inline)
(color uint32)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type debug-vertex
(defmethod inspect debug-vertex ((this debug-vertex))
(defmethod inspect ((this debug-vertex))
(format #t "[~8x] ~A~%" this 'debug-vertex)
(format #t "~Ttrans: ~`vector4w`P~%" (-> this trans))
(format #t "~Tnormal: ~`vector3h`P~%" (-> this normal))
@@ -47,17 +41,15 @@
;; definition of type debug-vertex-stats
(deftype debug-vertex-stats (basic)
((length int32 :offset-assert 4)
(pos-count int32 :offset-assert 8)
(vertex debug-vertex 600 :inline :offset-assert 16)
((length int32)
(pos-count int32)
(vertex debug-vertex 600 :inline)
)
:method-count-assert 9
:size-assert #x4b10
:flag-assert #x900004b10
)
;; definition for method 3 of type debug-vertex-stats
(defmethod inspect debug-vertex-stats ((this debug-vertex-stats))
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect ((this debug-vertex-stats))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tpos-count: ~D~%" (-> this pos-count))
+2 -5
View File
@@ -3,15 +3,12 @@
;; definition of type debug-sphere-table
(deftype debug-sphere-table (basic)
((point vector 300 :inline :offset-assert 16)
((point vector 300 :inline)
)
:method-count-assert 9
:size-assert #x12d0
:flag-assert #x9000012d0
)
;; definition for method 3 of type debug-sphere-table
(defmethod inspect debug-sphere-table ((this debug-sphere-table))
(defmethod inspect ((this debug-sphere-table))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tpoint[300] @ #x~X~%" (-> this point))
this
+20 -28
View File
@@ -483,21 +483,18 @@
(when *debug-segment*
;; definition of type debug-line
(deftype debug-line (structure)
((flags int32 :offset-assert 0)
(bucket bucket-id :offset-assert 4)
(v1 vector :inline :offset-assert 16)
(v2 vector :inline :offset-assert 32)
(color rgba :offset-assert 48)
(mode symbol :offset-assert 52)
(color2 rgba :offset-assert 56)
((flags int32)
(bucket bucket-id)
(v1 vector :inline)
(v2 vector :inline)
(color rgba)
(mode symbol)
(color2 rgba)
)
:method-count-assert 9
:size-assert #x3c
:flag-assert #x90000003c
)
;; definition for method 3 of type debug-line
(defmethod inspect debug-line ((this debug-line))
(defmethod inspect ((this debug-line))
(format #t "[~8x] ~A~%" this 'debug-line)
(format #t "~Tflags: ~D~%" (-> this flags))
(format #t "~Tbucket: ~D~%" (-> this bucket))
@@ -511,20 +508,17 @@
;; definition of type debug-text-3d
(deftype debug-text-3d (structure)
((flags int32 :offset-assert 0)
(bucket bucket-id :offset-assert 4)
(pos vector :inline :offset-assert 16)
(color font-color :offset-assert 32)
(offset vector2h :inline :offset-assert 40)
(str string :offset-assert 44)
((flags int32)
(bucket bucket-id)
(pos vector :inline)
(color font-color)
(offset vector2h :inline)
(str string)
)
:method-count-assert 9
:size-assert #x30
:flag-assert #x900000030
)
;; definition for method 3 of type debug-text-3d
(defmethod inspect debug-text-3d ((this debug-text-3d))
(defmethod inspect ((this debug-text-3d))
(format #t "[~8x] ~A~%" this 'debug-text-3d)
(format #t "~Tflags: ~D~%" (-> this flags))
(format #t "~Tbucket: ~D~%" (-> this bucket))
@@ -537,16 +531,13 @@
;; definition of type debug-tracking-thang
(deftype debug-tracking-thang (basic)
((length int32 :offset-assert 4)
(allocated-length int32 :offset-assert 8)
((length int32)
(allocated-length int32)
)
:method-count-assert 9
:size-assert #xc
:flag-assert #x90000000c
)
;; definition for method 3 of type debug-tracking-thang
(defmethod inspect debug-tracking-thang ((this debug-tracking-thang))
(defmethod inspect ((this debug-tracking-thang))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -1345,7 +1336,8 @@
)
;; definition for method 3 of type debug-vertex-stats
(defmethod inspect debug-vertex-stats ((this debug-vertex-stats))
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect ((this debug-vertex-stats))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tpos-count: ~D~%" (-> this pos-count))
+13 -18
View File
@@ -6,18 +6,15 @@
;; definition of type memory-usage-info
(deftype memory-usage-info (structure)
((name string :offset-assert 0)
(count int32 :offset-assert 4)
(used int32 :offset-assert 8)
(total int32 :offset-assert 12)
((name string)
(count int32)
(used int32)
(total int32)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type memory-usage-info
(defmethod inspect memory-usage-info ((this memory-usage-info))
(defmethod inspect ((this memory-usage-info))
(format #t "[~8x] ~A~%" this 'memory-usage-info)
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tcount: ~D~%" (-> this count))
@@ -28,22 +25,20 @@
;; definition of type memory-usage-block
(deftype memory-usage-block (basic)
((work-bsp basic :offset-assert 4)
(length int32 :offset-assert 8)
(data memory-usage-info 109 :inline :offset-assert 16)
((work-bsp basic)
(length int32)
(data memory-usage-info 109 :inline)
)
:method-count-assert 12
:size-assert #x6e0
:flag-assert #xc000006e0
(:methods
(reset! (_type_) _type_ 9)
(calculate-total (_type_) int 10)
(print-mem-usage (_type_ level object) none 11)
(reset! (_type_) _type_)
(calculate-total (_type_) int)
(print-mem-usage (_type_ level object) none)
)
)
;; definition for method 3 of type memory-usage-block
(defmethod inspect memory-usage-block ((this memory-usage-block))
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect ((this memory-usage-block))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Twork-bsp: ~A~%" (-> this work-bsp))
(format #t "~Tlength: ~D~%" (-> this length))
+8 -7
View File
@@ -5,7 +5,8 @@
(declare-file (debug))
;; definition for method 3 of type memory-usage-block
(defmethod inspect memory-usage-block ((this memory-usage-block))
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect ((this memory-usage-block))
(format #t "-------------------------------------------------------------~%")
(format #t " # name count bytes used aligned bytes~%")
(format #t "-------------------------------------------------------------~%")
@@ -34,7 +35,7 @@
)
;; definition for method 8 of type object
(defmethod mem-usage object ((this object) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this object) (arg0 memory-usage-block) (arg1 int))
(if this
(format #t "WARNING: mem-usage called on object, probably not what was wanted for ~A~%" this)
)
@@ -42,7 +43,7 @@
)
;; definition for method 10 of type memory-usage-block
(defmethod calculate-total memory-usage-block ((this memory-usage-block))
(defmethod calculate-total ((this memory-usage-block))
(let ((v0-0 0))
(dotimes (v1-0 (-> this length))
(+! v0-0 (-> this data v1-0 total))
@@ -52,7 +53,7 @@
)
;; definition for method 9 of type memory-usage-block
(defmethod reset! memory-usage-block ((this memory-usage-block))
(defmethod reset! ((this memory-usage-block))
(set! (-> this length) 0)
(dotimes (v1-0 109)
(set! (-> this data v1-0 used) 0)
@@ -74,7 +75,7 @@
)
;; definition for method 14 of type level
(defmethod compute-memory-usage level ((this level) (arg0 object))
(defmethod compute-memory-usage ((this level) (arg0 object))
(if (zero? (-> this mem-usage-block))
(set! (-> this mem-usage-block) (new 'debug 'memory-usage-block))
)
@@ -87,7 +88,7 @@
)
;; definition for method 8 of type process-tree
(defmethod mem-usage process-tree ((this process-tree) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this process-tree) (arg0 memory-usage-block) (arg1 int))
(let ((v1-0 87))
(let* ((a0-1 *dead-pool-list*)
(a3-0 (car a0-1))
@@ -304,7 +305,7 @@
;; definition for method 11 of type memory-usage-block
;; INFO: Used lq/sq
;; INFO: Return type mismatch memory-usage-block vs none.
(defmethod print-mem-usage memory-usage-block ((this memory-usage-block) (arg0 level) (arg1 object))
(defmethod print-mem-usage ((this memory-usage-block) (arg0 level) (arg1 object))
(local-vars (sv-16 object) (sv-32 string) (sv-48 symbol) (sv-64 int) (sv-80 int))
(let ((s3-0 (&- (-> arg0 heap current) (the-as uint (-> arg0 heap base)))))
(let ((v1-2 (+ (-> this data 59 total) (-> this data 60 total))))
+89 -113
View File
@@ -6,25 +6,22 @@
;; definition of type debug-menu-context
(deftype debug-menu-context (basic)
((is-active symbol :offset-assert 4)
(sel-length int32 :offset-assert 8)
(sel-menu debug-menu 8 :offset-assert 12)
(root-menu debug-menu :offset-assert 44)
(joypad-func (function basic none) :offset-assert 48)
(joypad-item basic :offset-assert 52)
(font font-context :offset-assert 56)
(is-hidden symbol :offset-assert 60)
((is-active symbol)
(sel-length int32)
(sel-menu debug-menu 8)
(root-menu debug-menu)
(joypad-func (function basic none))
(joypad-item basic)
(font font-context)
(is-hidden symbol)
)
:method-count-assert 9
:size-assert #x40
:flag-assert #x900000040
(:methods
(new (symbol type) _type_ 0)
(new (symbol type) _type_)
)
)
;; definition for method 3 of type debug-menu-context
(defmethod inspect debug-menu-context ((this debug-menu-context))
(defmethod inspect ((this debug-menu-context))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tis-active: ~A~%" (-> this is-active))
(format #t "~Tsel-length: ~D~%" (-> this sel-length))
@@ -55,18 +52,15 @@
;; definition of type debug-menu-node
(deftype debug-menu-node (basic)
((name string :offset-assert 4)
(parent debug-menu :offset-assert 8)
(refresh-delay int32 :offset-assert 12)
(refresh-ctr int32 :offset-assert 16)
((name string)
(parent debug-menu)
(refresh-delay int32)
(refresh-ctr int32)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type debug-menu-node
(defmethod inspect debug-menu-node ((this debug-menu-node))
(defmethod inspect ((this debug-menu-node))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -76,29 +70,26 @@
)
;; definition for method 2 of type debug-menu-node
(defmethod print debug-menu-node ((this debug-menu-node))
(defmethod print ((this debug-menu-node))
(format #t "#<~A ~A @ #x~X>" (-> this type) (-> this name) this)
this
)
;; definition of type debug-menu
(deftype debug-menu (debug-menu-node)
((context debug-menu-context :offset-assert 20)
(selected-item debug-menu-item :offset-assert 24)
(pix-width int32 :offset-assert 28)
(pix-height int32 :offset-assert 32)
(items pair :offset-assert 36)
((context debug-menu-context)
(selected-item debug-menu-item)
(pix-width int32)
(pix-height int32)
(items pair)
)
:method-count-assert 9
:size-assert #x28
:flag-assert #x900000028
(:methods
(new (symbol type debug-menu-context string) _type_ 0)
(new (symbol type debug-menu-context string) _type_)
)
)
;; definition for method 3 of type debug-menu
(defmethod inspect debug-menu ((this debug-menu))
(defmethod inspect ((this debug-menu))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -126,15 +117,12 @@
;; definition of type debug-menu-item
(deftype debug-menu-item (debug-menu-node)
((id int32 :offset-assert 20)
((id int32)
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type debug-menu-item
(defmethod inspect debug-menu-item ((this debug-menu-item))
(defmethod inspect ((this debug-menu-item))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -146,18 +134,15 @@
;; definition of type debug-menu-item-submenu
(deftype debug-menu-item-submenu (debug-menu-item)
((submenu debug-menu :offset-assert 24)
((submenu debug-menu)
)
:method-count-assert 9
:size-assert #x1c
:flag-assert #x90000001c
(:methods
(new (symbol type string debug-menu) _type_ 0)
(new (symbol type string debug-menu) _type_)
)
)
;; definition for method 3 of type debug-menu-item-submenu
(defmethod inspect debug-menu-item-submenu ((this debug-menu-item-submenu))
(defmethod inspect ((this debug-menu-item-submenu))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -183,19 +168,16 @@
;; definition of type debug-menu-item-function
(deftype debug-menu-item-function (debug-menu-item)
((activate-func (function object object) :offset-assert 24)
(hilite-timer int8 :offset-assert 28)
((activate-func (function object object))
(hilite-timer int8)
)
:method-count-assert 9
:size-assert #x1d
:flag-assert #x90000001d
(:methods
(new (symbol type string object (function object object)) _type_ 0)
(new (symbol type string object (function object object)) _type_)
)
)
;; definition for method 3 of type debug-menu-item-function
(defmethod inspect debug-menu-item-function ((this debug-menu-item-function))
(defmethod inspect ((this debug-menu-item-function))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -223,19 +205,16 @@
;; definition of type debug-menu-item-flag
(deftype debug-menu-item-flag (debug-menu-item)
((activate-func (function object debug-menu-msg object) :offset-assert 24)
(is-on object :offset-assert 28)
((activate-func (function object debug-menu-msg object))
(is-on object)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
(:methods
(new (symbol type string object (function object debug-menu-msg object)) _type_ 0)
(new (symbol type string object (function object debug-menu-msg object)) _type_)
)
)
;; definition for method 3 of type debug-menu-item-flag
(defmethod inspect debug-menu-item-flag ((this debug-menu-item-flag))
(defmethod inspect ((this debug-menu-item-flag))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -268,43 +247,40 @@
;; definition of type debug-menu-item-var
(deftype debug-menu-item-var (debug-menu-item)
((display-str string :offset-assert 24)
(grabbed-joypad-p symbol :offset-assert 28)
(float-p symbol :offset-assert 32)
(range-p symbol :offset-assert 36)
(show-len int32 :offset-assert 40)
(inc-delay int32 :offset-assert 44)
(inc-delay-ctr int32 :offset-assert 48)
(step-delay-ctr int32 :offset-assert 52)
(inc-dir int32 :offset-assert 56)
(fval float :offset-assert 60)
(fundo-val float :offset-assert 64)
(frange-min float :offset-assert 68)
(frange-max float :offset-assert 72)
(fstart-inc float :offset-assert 76)
(fstep float :offset-assert 80)
(fprecision int32 :offset-assert 84)
(factivate-func (function int debug-menu-msg float float float) :offset-assert 88)
(ival int32 :offset 60)
(iundo-val int32 :offset 64)
(irange-min int32 :offset 68)
(irange-max int32 :offset 72)
(istart-inc int32 :offset 76)
(istep int32 :offset 80)
(ihex-p symbol :offset-assert 92)
(iactivate-func (function int debug-menu-msg int int int) :offset 88)
(ifloat-p symbol :offset-assert 96)
((display-str string)
(grabbed-joypad-p symbol)
(float-p symbol)
(range-p symbol)
(show-len int32)
(inc-delay int32)
(inc-delay-ctr int32)
(step-delay-ctr int32)
(inc-dir int32)
(fval float)
(fundo-val float)
(frange-min float)
(frange-max float)
(fstart-inc float)
(fstep float)
(fprecision int32)
(factivate-func (function int debug-menu-msg float float float))
(ival int32 :overlay-at fval)
(iundo-val int32 :overlay-at fundo-val)
(irange-min int32 :overlay-at frange-min)
(irange-max int32 :overlay-at frange-max)
(istart-inc int32 :overlay-at fstart-inc)
(istep int32 :overlay-at fstep)
(ihex-p symbol)
(iactivate-func (function int debug-menu-msg int int int) :overlay-at factivate-func)
(ifloat-p symbol)
)
:method-count-assert 9
:size-assert #x64
:flag-assert #x900000064
(:methods
(new (symbol type string int int) _type_ 0)
(new (symbol type string int int) _type_)
)
)
;; definition for method 3 of type debug-menu-item-var
(defmethod inspect debug-menu-item-var ((this debug-menu-item-var))
(defmethod inspect ((this debug-menu-item-var))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tparent: ~A~%" (-> this parent))
@@ -477,14 +453,14 @@
)
;; definition for function debug-menu-context-grab-joypad
(defun debug-menu-context-grab-joypad ((menu debug-menu-context) (callback-arg basic) (callback-func (function basic none)))
(defun debug-menu-context-grab-joypad ((ctxt debug-menu-context) (callback-arg basic) (callback-func (function basic none)))
(cond
((-> menu joypad-func)
((-> ctxt joypad-func)
#f
)
(else
(set! (-> menu joypad-func) callback-func)
(set! (-> menu joypad-item) callback-arg)
(set! (-> ctxt joypad-func) callback-func)
(set! (-> ctxt joypad-item) callback-arg)
#t
)
)
@@ -1058,32 +1034,32 @@
)
;; definition for function debug-menu-item-render
(defun debug-menu-item-render ((arg0 debug-menu-item) (arg1 int) (arg2 int) (arg3 int) (arg4 symbol))
(when (> (-> arg0 refresh-delay) 0)
(+! (-> arg0 refresh-ctr) -1)
(when (<= (-> arg0 refresh-ctr) 0)
(set! (-> arg0 refresh-ctr) (-> arg0 refresh-delay))
(debug-menu-item-send-msg arg0 (debug-menu-msg update))
(defun debug-menu-item-render ((item debug-menu-item) (x int) (y int) (submenus int) (selected symbol))
(when (> (-> item refresh-delay) 0)
(+! (-> item refresh-ctr) -1)
(when (<= (-> item refresh-ctr) 0)
(set! (-> item refresh-ctr) (-> item refresh-delay))
(debug-menu-item-send-msg item (debug-menu-msg update))
)
)
(cond
((= (-> arg0 type) debug-menu-item-submenu)
(debug-menu-item-submenu-render (the-as debug-menu-item-submenu arg0) arg1 arg2 arg3 arg4)
((= (-> item type) debug-menu-item-submenu)
(debug-menu-item-submenu-render (the-as debug-menu-item-submenu item) x y submenus selected)
)
((= (-> arg0 type) debug-menu-item-function)
(debug-menu-item-function-render (the-as debug-menu-item-function arg0) arg1 arg2 arg3 arg4)
((= (-> item type) debug-menu-item-function)
(debug-menu-item-function-render (the-as debug-menu-item-function item) x y submenus selected)
)
((= (-> arg0 type) debug-menu-item-flag)
(debug-menu-item-flag-render (the-as debug-menu-item-flag arg0) arg1 arg2 arg3 arg4)
((= (-> item type) debug-menu-item-flag)
(debug-menu-item-flag-render (the-as debug-menu-item-flag item) x y submenus selected)
)
((= (-> arg0 type) debug-menu-item-var)
(debug-menu-item-var-render (the-as debug-menu-item-var arg0) arg1 arg2 arg3 arg4)
((= (-> item type) debug-menu-item-var)
(debug-menu-item-var-render (the-as debug-menu-item-var item) x y submenus selected)
)
(else
(format 0 "ERROR: Found unknown item type!~%")
)
)
arg0
item
)
;; definition for function debug-menu-render
@@ -1175,13 +1151,13 @@
;; definition for function debug-menu-context-render
(defun debug-menu-context-render ((arg0 debug-menu-context))
(let ((s4-0 6))
(dotimes (s5-0 (-> arg0 sel-length))
(let ((s3-0 (-> arg0 sel-menu s5-0)))
(let ((a3-0 (-> s3-0 selected-item)))
(debug-menu-render s3-0 s4-0 28 a3-0 (+ (- -1 s5-0) (-> arg0 sel-length)))
(let ((x-pos 6))
(dotimes (stack-idx (-> arg0 sel-length))
(let ((menu (-> arg0 sel-menu stack-idx)))
(let ((selection (-> menu selected-item)))
(debug-menu-render menu x-pos 28 selection (+ (- -1 stack-idx) (-> arg0 sel-length)))
)
(set! s4-0 (+ s4-0 3 (-> s3-0 pix-width)))
(set! x-pos (+ x-pos 3 (-> menu pix-width)))
)
)
)
+5 -8
View File
@@ -9,18 +9,15 @@
;; definition of type part-tester
(deftype part-tester (process)
((root trsqv :offset-assert 112)
(part sparticle-launch-control :offset-assert 116)
(old-group sparticle-launch-group :offset-assert 120)
((root trsqv)
(part sparticle-launch-control)
(old-group sparticle-launch-group)
)
:heap-base #x100
:method-count-assert 14
:size-assert #x7c
:flag-assert #xe0100007c
)
;; definition for method 3 of type part-tester
(defmethod inspect part-tester ((this part-tester))
(defmethod inspect ((this part-tester))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -34,7 +31,7 @@
(define *part-tester-name* (the-as string #f))
;; definition for method 10 of type part-tester
(defmethod deactivate part-tester ((this part-tester))
(defmethod deactivate ((this part-tester))
(if (nonzero? (-> this part))
(kill-and-free-particles (-> this part))
)
+34 -46
View File
@@ -3,20 +3,17 @@
;; definition of type tr-stat
(deftype tr-stat (structure)
((groups uint16 :offset-assert 0)
(fragments uint16 :offset-assert 2)
(tris uint32 :offset-assert 4)
(dverts uint32 :offset-assert 8)
(instances uint16 :offset-assert 12)
(pad uint16 :offset-assert 14)
((groups uint16)
(fragments uint16)
(tris uint32)
(dverts uint32)
(instances uint16)
(pad uint16)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type tr-stat
(defmethod inspect tr-stat ((this tr-stat))
(defmethod inspect ((this tr-stat))
(format #t "[~8x] ~A~%" this 'tr-stat)
(format #t "~Tgroups: ~D~%" (-> this groups))
(format #t "~Tfragments: ~D~%" (-> this fragments))
@@ -29,16 +26,13 @@
;; definition of type merc-global-stats
(deftype merc-global-stats (structure)
((merc tr-stat :inline :offset-assert 0)
(mercneric tr-stat :inline :offset-assert 16)
((merc tr-stat :inline)
(mercneric tr-stat :inline)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type merc-global-stats
(defmethod inspect merc-global-stats ((this merc-global-stats))
(defmethod inspect ((this merc-global-stats))
(format #t "[~8x] ~A~%" this 'merc-global-stats)
(format #t "~Tmerc: #<tr-stat @ #x~X>~%" (-> this merc))
(format #t "~Tmercneric: #<tr-stat @ #x~X>~%" (-> this mercneric))
@@ -47,35 +41,32 @@
;; definition of type perf-stat
(deftype perf-stat (structure)
((frame-number uint32 :offset-assert 0)
(count uint32 :offset-assert 4)
(cycles uint32 :offset-assert 8)
(instructions uint32 :offset-assert 12)
(icache uint32 :offset-assert 16)
(dcache uint32 :offset-assert 20)
(select uint32 :offset-assert 24)
(ctrl uint32 :offset-assert 28)
(accum0 uint32 :offset-assert 32)
(accum1 uint32 :offset-assert 36)
(to-vu0-waits uint32 :offset-assert 40)
(to-spr-waits uint32 :offset-assert 44)
(from-spr-waits uint32 :offset-assert 48)
((frame-number uint32)
(count uint32)
(cycles uint32)
(instructions uint32)
(icache uint32)
(dcache uint32)
(select uint32)
(ctrl uint32)
(accum0 uint32)
(accum1 uint32)
(to-vu0-waits uint32)
(to-spr-waits uint32)
(from-spr-waits uint32)
)
:pack-me
:method-count-assert 14
:size-assert #x34
:flag-assert #xe00000034
(:methods
(perf-stat-method-9 (_type_) none 9)
(print-to-stream (_type_ string basic) none 10)
(reset! (_type_) none 11)
(read! (_type_) none 12)
(update-wait-stats (_type_ uint uint uint) none 13)
(perf-stat-method-9 (_type_) none)
(print-to-stream (_type_ string basic) none)
(reset! (_type_) none)
(read! (_type_) none)
(update-wait-stats (_type_ uint uint uint) none)
)
)
;; definition for method 3 of type perf-stat
(defmethod inspect perf-stat ((this perf-stat))
(defmethod inspect ((this perf-stat))
(format #t "[~8x] ~A~%" this 'perf-stat)
(format #t "~Tframe-number: ~D~%" (-> this frame-number))
(format #t "~Tcount: ~D~%" (-> this count))
@@ -95,15 +86,12 @@
;; definition of type perf-stat-array
(deftype perf-stat-array (inline-array-class)
((data perf-stat :inline :dynamic :offset-assert 16)
((data perf-stat :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type perf-stat-array
(defmethod inspect perf-stat-array ((this perf-stat-array))
(defmethod inspect ((this perf-stat-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -116,7 +104,7 @@
;; definition for method 11 of type perf-stat
;; INFO: Return type mismatch int vs none.
(defmethod reset! perf-stat ((this perf-stat))
(defmethod reset! ((this perf-stat))
(let ((v1-0 (-> this ctrl)))
(+! (-> this count) 1)
(b! (zero? v1-0) cfg-2 :delay (nop!))
@@ -138,7 +126,7 @@
;; definition for method 12 of type perf-stat
;; INFO: Return type mismatch int vs none.
(defmethod read! perf-stat ((this perf-stat))
(defmethod read! ((this perf-stat))
(local-vars (v1-1 int) (v1-3 int))
(b! (zero? (-> this ctrl)) cfg-2 :delay (nop!))
(.mtc0 Perf 0)
@@ -155,7 +143,7 @@
;; definition for method 13 of type perf-stat
;; INFO: Return type mismatch int vs none.
(defmethod update-wait-stats perf-stat ((this perf-stat) (arg0 uint) (arg1 uint) (arg2 uint))
(defmethod update-wait-stats ((this perf-stat) (arg0 uint) (arg1 uint) (arg2 uint))
(when (nonzero? (-> this ctrl))
(+! (-> this to-vu0-waits) arg0)
(+! (-> this to-spr-waits) arg1)
+3 -7
View File
@@ -10,19 +10,15 @@
;; definition of type viewer
(deftype viewer (process-drawable)
((janim art-joint-anim :offset-assert 176)
((janim art-joint-anim)
)
:heap-base #x50
:method-count-assert 20
:size-assert #xb4
:flag-assert #x14005000b4
(:states
viewer-process
)
)
;; definition for method 3 of type viewer
(defmethod inspect viewer ((this viewer))
(defmethod inspect ((this viewer))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -184,7 +180,7 @@
;; definition for method 11 of type viewer
;; INFO: Return type mismatch object vs none.
(defmethod init-from-entity! viewer ((this viewer) (arg0 entity-actor))
(defmethod init-from-entity! ((this viewer) (arg0 entity-actor))
(set! *viewer* this)
(set! (-> this root) (new 'process 'trsqv))
(process-drawable-from-entity! this arg0)
+21 -33
View File
@@ -3,19 +3,16 @@
;; definition of type dma-packet
(deftype dma-packet (structure)
((dma dma-tag :offset-assert 0)
(vif0 vif-tag :offset-assert 8)
(vif1 vif-tag :offset-assert 12)
(quad uint128 :offset 0)
((dma dma-tag)
(vif0 vif-tag)
(vif1 vif-tag)
(quad uint128 :overlay-at dma)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type dma-packet
;; INFO: Used lq/sq
(defmethod inspect dma-packet ((this dma-packet))
(defmethod inspect ((this dma-packet))
(format #t "[~8x] ~A~%" this 'dma-packet)
(format #t "~Tdma: #x~X~%" (-> this dma))
(format #t "~Tvif0: #x~X~%" (-> this vif0))
@@ -27,13 +24,10 @@
;; definition of type dma-packet-array
(deftype dma-packet-array (inline-array-class)
()
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type dma-packet-array
(defmethod inspect dma-packet-array ((this dma-packet-array))
(defmethod inspect ((this dma-packet-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -46,19 +40,16 @@
;; definition of type dma-gif-packet
(deftype dma-gif-packet (structure)
((dma-vif dma-packet :inline :offset-assert 0)
(gif uint64 2 :offset-assert 16)
(gif0 uint64 :offset 16)
(gif1 uint64 :offset 24)
(quad uint128 2 :offset 0)
((dma-vif dma-packet :inline)
(gif uint64 2)
(gif0 uint64 :overlay-at (-> gif 0))
(gif1 uint64 :overlay-at (-> gif 1))
(quad uint128 2 :overlay-at (-> dma-vif dma))
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type dma-gif-packet
(defmethod inspect dma-gif-packet ((this dma-gif-packet))
(defmethod inspect ((this dma-gif-packet))
(format #t "[~8x] ~A~%" this 'dma-gif-packet)
(format #t "~Tdma-vif: #<dma-packet @ #x~X>~%" (-> this dma-vif))
(format #t "~Tgif[2] @ #x~X~%" (&-> this gif0))
@@ -68,22 +59,19 @@
;; definition of type dma-buffer
(deftype dma-buffer (basic)
((allocated-length int32 :offset-assert 4)
(base pointer :offset-assert 8)
(end pointer :offset-assert 12)
(data uint64 1 :offset-assert 16)
(data-buffer uint8 :dynamic :offset 16)
((allocated-length int32)
(base pointer)
(end pointer)
(data uint64 1)
(data-buffer uint8 :dynamic :overlay-at (-> data 0))
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
(:methods
(new (symbol type int) _type_ 0)
(new (symbol type int) _type_)
)
)
;; definition for method 3 of type dma-buffer
(defmethod inspect dma-buffer ((this dma-buffer))
(defmethod inspect ((this dma-buffer))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
(format #t "~Tbase: #x~X~%" (-> this base))
@@ -109,12 +97,12 @@
)
;; definition for method 4 of type dma-buffer
(defmethod length dma-buffer ((this dma-buffer))
(defmethod length ((this dma-buffer))
(-> this allocated-length)
)
;; definition for method 5 of type dma-buffer
(defmethod asize-of dma-buffer ((this dma-buffer))
(defmethod asize-of ((this dma-buffer))
(+ (-> this allocated-length) -4 (-> dma-buffer size))
)
+7 -10
View File
@@ -6,20 +6,17 @@
;; definition of type vif-disasm-element
(deftype vif-disasm-element (structure)
((mask uint32 :offset-assert 0)
(tag vif-cmd-32 :offset-assert 4)
(val uint32 :offset-assert 8)
(print uint32 :offset-assert 12)
(string1 string :offset-assert 16)
(string2 string :offset-assert 20)
((mask uint32)
(tag vif-cmd-32)
(val uint32)
(print uint32)
(string1 string)
(string2 string)
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type vif-disasm-element
(defmethod inspect vif-disasm-element ((this vif-disasm-element))
(defmethod inspect ((this vif-disasm-element))
(format #t "[~8x] ~A~%" this 'vif-disasm-element)
(format #t "~Tmask: ~D~%" (-> this mask))
(format #t "~Ttag: ~D~%" (-> this tag))
+34 -85
View File
@@ -11,13 +11,10 @@
(str uint8 :offset 8 :size 1)
(tag uint16 :offset 16 :size 16)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type dma-chcr
(defmethod inspect dma-chcr ((this dma-chcr))
(defmethod inspect ((this dma-chcr))
(format #t "[~8x] ~A~%" this 'dma-chcr)
(format #t "~Tdir: ~D~%" (-> this dir))
(format #t "~Tmod: ~D~%" (-> this mod))
@@ -31,17 +28,14 @@
;; definition of type dma-bank
(deftype dma-bank (structure)
((chcr dma-chcr :offset 0)
(madr uint32 :offset 16)
(qwc uint32 :offset 32)
((chcr dma-chcr :offset 0)
(madr uint32 :offset 16)
(qwc uint32 :offset 32)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
;; definition for method 3 of type dma-bank
(defmethod inspect dma-bank ((this dma-bank))
(defmethod inspect ((this dma-bank))
(format #t "[~8x] ~A~%" this 'dma-bank)
(format #t "~Tchcr: #x~X~%" (-> this chcr))
(format #t "~Tmadr: #x~X~%" (-> this madr))
@@ -51,15 +45,12 @@
;; definition of type dma-bank-source
(deftype dma-bank-source (dma-bank)
((tadr uint32 :offset 48)
((tadr uint32 :offset 48)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
)
;; definition for method 3 of type dma-bank-source
(defmethod inspect dma-bank-source ((this dma-bank-source))
(defmethod inspect ((this dma-bank-source))
(format #t "[~8x] ~A~%" this 'dma-bank-source)
(format #t "~Tchcr: #x~X~%" (-> this chcr))
(format #t "~Tmadr: #x~X~%" (-> this madr))
@@ -70,16 +61,13 @@
;; definition of type dma-bank-vif
(deftype dma-bank-vif (dma-bank-source)
((as0 uint32 :offset 64)
(as1 uint32 :offset 80)
((as0 uint32 :offset 64)
(as1 uint32 :offset 80)
)
:method-count-assert 9
:size-assert #x54
:flag-assert #x900000054
)
;; definition for method 3 of type dma-bank-vif
(defmethod inspect dma-bank-vif ((this dma-bank-vif))
(defmethod inspect ((this dma-bank-vif))
(format #t "[~8x] ~A~%" this 'dma-bank-vif)
(format #t "~Tchcr: #x~X~%" (-> this chcr))
(format #t "~Tmadr: #x~X~%" (-> this madr))
@@ -92,15 +80,12 @@
;; definition of type dma-bank-spr
(deftype dma-bank-spr (dma-bank-source)
((sadr uint32 :offset 128)
((sadr uint32 :offset 128)
)
:method-count-assert 9
:size-assert #x84
:flag-assert #x900000084
)
;; definition for method 3 of type dma-bank-spr
(defmethod inspect dma-bank-spr ((this dma-bank-spr))
(defmethod inspect ((this dma-bank-spr))
(format #t "[~8x] ~A~%" this 'dma-bank-spr)
(format #t "~Tchcr: #x~X~%" (-> this chcr))
(format #t "~Tmadr: #x~X~%" (-> this madr))
@@ -119,18 +104,12 @@
(std uint8 :offset 6 :size 2)
(rcyc uint8 :offset 8 :size 3)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition of type dma-enable
(deftype dma-enable (uint32)
((cpnd uint8 :offset 16 :size 1)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition of type dma-sqwc
@@ -138,30 +117,24 @@
((sqwc uint8 :offset 0 :size 8)
(tqwc uint8 :offset 16 :size 8)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition of type dma-bank-control
(deftype dma-bank-control (structure)
((ctrl dma-ctrl :offset 0)
(stat uint32 :offset 16)
(pcr uint32 :offset 32)
(sqwc dma-sqwc :offset 48)
(rbsr uint32 :offset 64)
(rbor uint32 :offset 80)
(stadr uint32 :offset 96)
(enabler uint32 :offset 5408)
(enablew uint32 :offset 5520)
((ctrl dma-ctrl :offset 0)
(stat uint32 :offset 16)
(pcr uint32 :offset 32)
(sqwc dma-sqwc :offset 48)
(rbsr uint32 :offset 64)
(rbor uint32 :offset 80)
(stadr uint32 :offset 96)
(enabler uint32 :offset 5408)
(enablew uint32 :offset 5520)
)
:method-count-assert 9
:size-assert #x1594
:flag-assert #x900001594
)
;; definition for method 3 of type dma-bank-control
(defmethod inspect dma-bank-control ((this dma-bank-control))
(defmethod inspect ((this dma-bank-control))
(format #t "[~8x] ~A~%" this 'dma-bank-control)
(format #t "~Tctrl: #x~X~%" (-> this ctrl))
(format #t "~Tstat: #x~X~%" (-> this stat))
@@ -177,18 +150,15 @@
;; definition of type vu-code-block
(deftype vu-code-block (basic)
((name basic :offset-assert 4)
(code uint32 :offset-assert 8)
(size int32 :offset-assert 12)
(dest-address uint32 :offset-assert 16)
((name basic)
(code uint32)
(size int32)
(dest-address uint32)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type vu-code-block
(defmethod inspect vu-code-block ((this vu-code-block))
(defmethod inspect ((this vu-code-block))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tcode: #x~X~%" (-> this code))
@@ -200,9 +170,6 @@
;; definition of type vu-stat
(deftype vu-stat (uint64)
()
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition of type dma-tag
@@ -214,13 +181,10 @@
(addr uint32 :offset 32 :size 31)
(spr uint8 :offset 63 :size 1)
)
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type dma-tag
(defmethod inspect dma-tag ((this dma-tag))
(defmethod inspect ((this dma-tag))
(format #t "[~8x] ~A~%" this 'dma-tag)
(format #t "~Tqwc: ~D~%" (-> this qwc))
(format #t "~Tpce: ~D~%" (-> this pce))
@@ -233,18 +197,15 @@
;; definition of type dma-bucket
(deftype dma-bucket (structure)
((tag dma-tag :offset-assert 0)
(last (pointer dma-tag) :offset-assert 8)
(dummy uint32 :offset-assert 12)
(next uint32 :offset 4)
((tag dma-tag)
(last (pointer dma-tag))
(dummy uint32)
(next uint32 :offset 4)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type dma-bucket
(defmethod inspect dma-bucket ((this dma-bucket))
(defmethod inspect ((this dma-bucket))
(format #t "[~8x] ~A~%" this 'dma-bucket)
(format #t "~Ttag: ~D~%" (-> this tag))
(format #t "~Tlast: #x~X~%" (-> this last))
@@ -272,9 +233,6 @@
(m14 uint8 :offset 28 :size 2)
(m15 uint8 :offset 30 :size 2)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition of type vif-stcycl-imm
@@ -282,9 +240,6 @@
((cl uint8 :offset 0 :size 8)
(wl uint8 :offset 8 :size 8)
)
:method-count-assert 9
:size-assert #x2
:flag-assert #x900000002
)
;; definition of type vif-unpack-imm
@@ -293,9 +248,6 @@
(usn uint8 :offset 14 :size 1)
(flg uint8 :offset 15 :size 1)
)
:method-count-assert 9
:size-assert #x2
:flag-assert #x900000002
)
;; definition of type vif-tag
@@ -306,13 +258,10 @@
(irq uint8 :offset 31 :size 1)
(msk uint8 :offset 28 :size 1)
)
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition for method 3 of type vif-tag
(defmethod inspect vif-tag ((this vif-tag))
(defmethod inspect ((this vif-tag))
(format #t "[~8x] ~A~%" this 'vif-tag)
(format #t "~Timm: #x~X~%" (-> this imm))
(format #t "~Tnum: ~D~%" (-> this num))
+10 -19
View File
@@ -3,18 +3,15 @@
;; definition of type draw-node
(deftype draw-node (drawable)
((child-count uint8 :offset 6)
(flags uint8 :offset 7)
(child drawable :offset 8)
(distance float :offset 12)
((child-count uint8 :offset 6)
(flags uint8 :offset 7)
(child drawable :offset 8)
(distance float :offset 12)
)
:method-count-assert 18
:size-assert #x20
:flag-assert #x1200000020
)
;; definition for method 3 of type draw-node
(defmethod inspect draw-node ((this draw-node))
(defmethod inspect ((this draw-node))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -27,26 +24,20 @@
;; definition of type drawable-inline-array-node
(deftype drawable-inline-array-node (drawable-inline-array)
((data draw-node 1 :inline :offset-assert 32)
(pad uint32 :offset-assert 64)
((data draw-node 1 :inline)
(pad uint32)
)
:method-count-assert 18
:size-assert #x44
:flag-assert #x1200000044
)
;; definition of type draw-node-dma
(deftype draw-node-dma (structure)
((banka draw-node 32 :inline :offset-assert 0)
(bankb draw-node 32 :inline :offset-assert 1024)
((banka draw-node 32 :inline)
(bankb draw-node 32 :inline)
)
:method-count-assert 9
:size-assert #x800
:flag-assert #x900000800
)
;; definition for method 3 of type draw-node-dma
(defmethod inspect draw-node-dma ((this draw-node-dma))
(defmethod inspect ((this draw-node-dma))
(format #t "[~8x] ~A~%" this 'draw-node-dma)
(format #t "~Tbanka[32] @ #x~X~%" (-> this banka))
(format #t "~Tbankb[32] @ #x~X~%" (-> this bankb))
+11 -11
View File
@@ -3,7 +3,7 @@
;; definition for method 11 of type draw-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-with-box draw-node ((this draw-node) (arg0 int) (arg1 collide-list))
(defmethod collide-with-box ((this draw-node) (arg0 int) (arg1 collide-list))
(dotimes (s3-0 arg0)
(if (collide-cache-using-box-test (-> this bsphere))
(collide-with-box (-> this child) (the-as int (-> this child-count)) arg1)
@@ -16,7 +16,7 @@
;; definition for method 12 of type draw-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-y-probe draw-node ((this draw-node) (arg0 int) (arg1 collide-list))
(defmethod collide-y-probe ((this draw-node) (arg0 int) (arg1 collide-list))
(dotimes (s3-0 arg0)
(if (collide-cache-using-y-probe-test (-> this bsphere))
(collide-y-probe (-> this child) (the-as int (-> this child-count)) arg1)
@@ -29,7 +29,7 @@
;; definition for method 13 of type draw-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-ray draw-node ((this draw-node) (arg0 int) (arg1 collide-list))
(defmethod collide-ray ((this draw-node) (arg0 int) (arg1 collide-list))
(dotimes (s3-0 arg0)
(if (collide-cache-using-line-sphere-test (-> this bsphere))
(collide-ray (-> this child) (the-as int (-> this child-count)) arg1)
@@ -42,7 +42,7 @@
;; definition for method 17 of type draw-node
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients draw-node ((this draw-node) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this draw-node) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(dotimes (s2-0 arg1)
(if (spheres-overlap? arg0 (the-as sphere (-> this bsphere)))
(collect-ambients (-> this child) arg0 (the-as int (-> this child-count)) arg2)
@@ -54,7 +54,7 @@
)
;; definition for method 3 of type drawable-inline-array-node
(defmethod inspect drawable-inline-array-node ((this drawable-inline-array-node))
(defmethod inspect ((this drawable-inline-array-node))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tdata[~D]: @ #x~X~%" (-> this length) (-> this data))
@@ -65,7 +65,7 @@
)
;; definition for method 8 of type drawable-inline-array-node
(defmethod mem-usage drawable-inline-array-node ((this drawable-inline-array-node) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-inline-array-node) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 62 (-> arg0 length)))
(set! (-> arg0 data 61 name) "draw-node")
(+! (-> arg0 data 61 count) (-> this length))
@@ -78,13 +78,13 @@
;; definition for method 5 of type drawable-inline-array-node
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of drawable-inline-array-node ((this drawable-inline-array-node))
(defmethod asize-of ((this drawable-inline-array-node))
(the-as int (+ (-> drawable-inline-array-node size) (* (+ (-> this length) -1) 32)))
)
;; definition for method 11 of type drawable-inline-array-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-with-box drawable-inline-array-node ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(defmethod collide-with-box ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(collide-with-box (the-as drawable (-> this data)) (-> this length) arg1)
0
(none)
@@ -92,7 +92,7 @@
;; definition for method 12 of type drawable-inline-array-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-y-probe drawable-inline-array-node ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(defmethod collide-y-probe ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(collide-y-probe (the-as drawable (-> this data)) (-> this length) arg1)
0
(none)
@@ -100,7 +100,7 @@
;; definition for method 13 of type drawable-inline-array-node
;; INFO: Return type mismatch int vs none.
(defmethod collide-ray drawable-inline-array-node ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(defmethod collide-ray ((this drawable-inline-array-node) (arg0 int) (arg1 collide-list))
(collide-ray (the-as drawable (-> this data)) (-> this length) arg1)
0
(none)
@@ -108,7 +108,7 @@
;; definition for method 17 of type drawable-inline-array-node
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients drawable-inline-array-node ((this drawable-inline-array-node) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this drawable-inline-array-node) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(collect-ambients (the-as drawable (-> this data)) arg0 (-> this length) arg2)
0
(none)
+5 -14
View File
@@ -3,15 +3,12 @@
;; definition of type drawable-actor
(deftype drawable-actor (drawable)
((actor entity-actor :offset 8)
((actor entity-actor :offset 8)
)
:method-count-assert 18
:size-assert #x20
:flag-assert #x1200000020
)
;; definition for method 3 of type drawable-actor
(defmethod inspect drawable-actor ((this drawable-actor))
(defmethod inspect ((this drawable-actor))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -22,24 +19,18 @@
;; definition of type drawable-tree-actor
(deftype drawable-tree-actor (drawable-tree)
()
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; definition of type drawable-inline-array-actor
(deftype drawable-inline-array-actor (drawable-inline-array)
((data drawable-actor 1 :inline :offset-assert 32)
(pad uint8 4 :offset-assert 64)
((data drawable-actor 1 :inline)
(pad uint8 4)
)
:method-count-assert 18
:size-assert #x44
:flag-assert #x1200000044
)
;; definition for method 10 of type drawable-tree-actor
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-tree-actor ((this drawable-tree-actor) (arg0 drawable-tree-actor) (arg1 display-frame))
(defmethod draw ((this drawable-tree-actor) (arg0 drawable-tree-actor) (arg1 display-frame))
0
(none)
)
+22 -38
View File
@@ -3,18 +3,15 @@
;; definition of type drawable-ambient
(deftype drawable-ambient (drawable)
((ambient entity-ambient :offset 8)
((ambient entity-ambient :offset 8)
)
:method-count-assert 19
:size-assert #x20
:flag-assert #x1300000020
(:methods
(execute-ambient (_type_ vector) none 18)
(execute-ambient (_type_ vector) none)
)
)
;; definition for method 3 of type drawable-ambient
(defmethod inspect drawable-ambient ((this drawable-ambient))
(defmethod inspect ((this drawable-ambient))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -25,52 +22,42 @@
;; definition of type drawable-tree-ambient
(deftype drawable-tree-ambient (drawable-tree)
()
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; definition of type drawable-inline-array-ambient
(deftype drawable-inline-array-ambient (drawable-inline-array)
((data drawable-ambient 1 :inline :offset-assert 32)
(pad uint32 :offset-assert 64)
((data drawable-ambient 1 :inline)
(pad uint32)
)
:method-count-assert 18
:size-assert #x44
:flag-assert #x1200000044
)
;; definition for method 10 of type drawable-tree-ambient
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-tree-ambient ((this drawable-tree-ambient) (arg0 drawable-tree-ambient) (arg1 display-frame))
(defmethod draw ((this drawable-tree-ambient) (arg0 drawable-tree-ambient) (arg1 display-frame))
0
(none)
)
;; definition for method 16 of type drawable-tree-ambient
(defmethod unpack-vis drawable-tree-ambient ((this drawable-tree-ambient) (arg0 (pointer int8)) (arg1 (pointer int8)))
(defmethod unpack-vis ((this drawable-tree-ambient) (arg0 (pointer int8)) (arg1 (pointer int8)))
arg1
)
;; definition of type level-hint
(deftype level-hint (process)
((text-id-to-display text-id :offset-assert 112)
(sound-to-play string :offset-assert 116)
(trans vector :offset-assert 120)
(sound-id sound-id :offset-assert 124)
(mode symbol :offset-assert 128)
(total-time time-frame :offset-assert 136)
(total-off-time time-frame :offset-assert 144)
(last-time time-frame :offset-assert 152)
(voicebox handle :offset-assert 160)
((text-id-to-display text-id)
(sound-to-play string)
(trans vector)
(sound-id sound-id)
(mode symbol)
(total-time time-frame)
(total-off-time time-frame)
(last-time time-frame)
(voicebox handle)
)
:heap-base #x40
:method-count-assert 16
:size-assert #xa8
:flag-assert #x10004000a8
(:methods
(print-text (_type_) none 14)
(appeared-for-long-enough? (_type_) symbol 15)
(print-text (_type_) none)
(appeared-for-long-enough? (_type_) symbol)
)
(:states
(level-hint-ambient-sound string)
@@ -82,7 +69,7 @@
)
;; definition for method 3 of type level-hint
(defmethod inspect level-hint ((this level-hint))
(defmethod inspect ((this level-hint))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -100,16 +87,13 @@
;; definition of type ambient-list
(deftype ambient-list (structure)
((num-items int32 :offset-assert 0)
(items drawable-ambient 2048 :offset-assert 4)
((num-items int32)
(items drawable-ambient 2048)
)
:method-count-assert 9
:size-assert #x2004
:flag-assert #x900002004
)
;; definition for method 3 of type ambient-list
(defmethod inspect ambient-list ((this ambient-list))
(defmethod inspect ((this ambient-list))
(format #t "[~8x] ~A~%" this 'ambient-list)
(format #t "~Tnum-items: ~D~%" (-> this num-items))
(format #t "~Titems[2048] @ #x~X~%" (-> this items))
+3 -6
View File
@@ -3,14 +3,11 @@
;; definition of type drawable-group
(deftype drawable-group (drawable)
((length int16 :offset 6)
(data drawable 1 :offset-assert 32)
((length int16 :offset 6)
(data drawable 1)
)
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
(:methods
(new (symbol type int) _type_ 0)
(new (symbol type int) _type_)
)
)
+10 -10
View File
@@ -10,7 +10,7 @@
)
;; definition for method 3 of type drawable-group
(defmethod inspect drawable-group ((this drawable-group))
(defmethod inspect ((this drawable-group))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tlength: ~D~%" (-> this length))
@@ -22,7 +22,7 @@
)
;; definition for method 2 of type drawable-group
(defmethod print drawable-group ((this drawable-group))
(defmethod print ((this drawable-group))
(format #t "#<~A @ #x~X [~D]" (-> this type) this (-> this length))
(dotimes (s5-0 (-> this length))
(format #t " ~A" (-> this data s5-0))
@@ -32,18 +32,18 @@
)
;; definition for method 4 of type drawable-group
(defmethod length drawable-group ((this drawable-group))
(defmethod length ((this drawable-group))
(-> this length)
)
;; definition for method 5 of type drawable-group
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of drawable-group ((this drawable-group))
(defmethod asize-of ((this drawable-group))
(the-as int (+ (-> drawable-group size) (* (+ (-> this length) -1) 4)))
)
;; definition for method 8 of type drawable-group
(defmethod mem-usage drawable-group ((this drawable-group) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-group) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 1 (-> arg0 length)))
(set! (-> arg0 data 0 name) "drawable-group")
(+! (-> arg0 data 0 count) 1)
@@ -58,7 +58,7 @@
)
;; definition for method 9 of type drawable-group
(defmethod login drawable-group ((this drawable-group))
(defmethod login ((this drawable-group))
(dotimes (s5-0 (-> this length))
(login (-> this data s5-0))
)
@@ -67,7 +67,7 @@
;; definition for method 10 of type drawable-group
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-group ((this drawable-group) (arg0 drawable-group) (arg1 display-frame))
(defmethod draw ((this drawable-group) (arg0 drawable-group) (arg1 display-frame))
(when (vis-cull (-> this id))
(when (sphere-cull (-> this bsphere))
(dotimes (s3-0 (-> this length))
@@ -81,7 +81,7 @@
;; definition for method 14 of type drawable-group
;; INFO: Return type mismatch int vs none.
(defmethod collect-stats drawable-group ((this drawable-group))
(defmethod collect-stats ((this drawable-group))
(when (vis-cull (-> this id))
(when (sphere-cull (-> this bsphere))
(dotimes (s5-0 (-> this length))
@@ -95,7 +95,7 @@
;; definition for method 15 of type drawable-group
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw drawable-group ((this drawable-group) (arg0 drawable) (arg1 display-frame))
(defmethod debug-draw ((this drawable-group) (arg0 drawable) (arg1 display-frame))
(when (vis-cull (-> this id))
(when (sphere-cull (-> this bsphere))
(dotimes (s3-0 (-> this length))
@@ -108,7 +108,7 @@
)
;; definition for method 16 of type drawable-group
(defmethod unpack-vis drawable-group ((this drawable-group) (arg0 (pointer int8)) (arg1 (pointer int8)))
(defmethod unpack-vis ((this drawable-group) (arg0 (pointer int8)) (arg1 (pointer int8)))
(dotimes (s4-0 (-> this length))
(set! arg1 (unpack-vis (-> this data s4-0) arg0 arg1))
)
+14 -20
View File
@@ -3,27 +3,24 @@
;; definition of type drawable
(deftype drawable (basic)
((id int16 :offset-assert 4)
(bsphere vector :inline :offset-assert 16)
((id int16)
(bsphere vector :inline)
)
:method-count-assert 18
:size-assert #x20
:flag-assert #x1200000020
(:methods
(login (_type_) _type_ 9)
(draw (_type_ _type_ display-frame) none 10)
(collide-with-box (_type_ int collide-list) none 11)
(collide-y-probe (_type_ int collide-list) none 12)
(collide-ray (_type_ int collide-list) none 13)
(collect-stats (_type_) none 14)
(debug-draw (_type_ drawable display-frame) none 15)
(unpack-vis (_type_ (pointer int8) (pointer int8)) (pointer int8) 16)
(collect-ambients (_type_ sphere int ambient-list) none 17)
(login (_type_) _type_)
(draw (_type_ _type_ display-frame) none)
(collide-with-box (_type_ int collide-list) none)
(collide-y-probe (_type_ int collide-list) none)
(collide-ray (_type_ int collide-list) none)
(collect-stats (_type_) none)
(debug-draw (_type_ drawable display-frame) none)
(unpack-vis (_type_ (pointer int8) (pointer int8)) (pointer int8))
(collect-ambients (_type_ sphere int ambient-list) none)
)
)
;; definition for method 3 of type drawable
(defmethod inspect drawable ((this drawable))
(defmethod inspect ((this drawable))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
@@ -32,15 +29,12 @@
;; definition of type drawable-error
(deftype drawable-error (drawable)
((name string :offset-assert 32)
((name string)
)
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; definition for method 3 of type drawable-error
(defmethod inspect drawable-error ((this drawable-error))
(defmethod inspect ((this drawable-error))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
+2 -5
View File
@@ -3,15 +3,12 @@
;; definition of type drawable-inline-array
(deftype drawable-inline-array (drawable)
((length int16 :offset 6)
((length int16 :offset 6)
)
:method-count-assert 18
:size-assert #x20
:flag-assert #x1200000020
)
;; definition for method 3 of type drawable-inline-array
(defmethod inspect drawable-inline-array ((this drawable-inline-array))
(defmethod inspect ((this drawable-inline-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tid: ~D~%" (-> this id))
(format #t "~Tbsphere: ~`vector`P~%" (-> this bsphere))
+5 -5
View File
@@ -2,32 +2,32 @@
(in-package goal)
;; definition for method 4 of type drawable-inline-array
(defmethod length drawable-inline-array ((this drawable-inline-array))
(defmethod length ((this drawable-inline-array))
(-> this length)
)
;; definition for method 9 of type drawable-inline-array
(defmethod login drawable-inline-array ((this drawable-inline-array))
(defmethod login ((this drawable-inline-array))
this
)
;; definition for method 10 of type drawable-inline-array
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-inline-array ((this drawable-inline-array) (arg0 drawable-inline-array) (arg1 display-frame))
(defmethod draw ((this drawable-inline-array) (arg0 drawable-inline-array) (arg1 display-frame))
0
(none)
)
;; definition for method 14 of type drawable-inline-array
;; INFO: Return type mismatch int vs none.
(defmethod collect-stats drawable-inline-array ((this drawable-inline-array))
(defmethod collect-stats ((this drawable-inline-array))
0
(none)
)
;; definition for method 15 of type drawable-inline-array
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw drawable-inline-array ((this drawable-inline-array) (arg0 drawable) (arg1 display-frame))
(defmethod debug-draw ((this drawable-inline-array) (arg0 drawable) (arg1 display-frame))
0
(none)
)
+1 -7
View File
@@ -4,18 +4,12 @@
;; definition of type drawable-tree
(deftype drawable-tree (drawable-group)
()
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; definition of type drawable-tree-array
(deftype drawable-tree-array (drawable-group)
((trees drawable-tree 1 :offset 32)
((trees drawable-tree 1 :overlay-at (-> data 0))
)
:method-count-assert 18
:size-assert #x24
:flag-assert #x1200000024
)
;; failed to figure out what this is:
+4 -4
View File
@@ -3,7 +3,7 @@
;; definition for method 10 of type drawable-tree-array
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable-tree-array ((this drawable-tree-array) (arg0 drawable-tree-array) (arg1 display-frame))
(defmethod draw ((this drawable-tree-array) (arg0 drawable-tree-array) (arg1 display-frame))
(let ((v1-1 (-> (the-as terrain-context #x70000000) bsp lev-index)))
(case (-> *level* level v1-1 display?)
(('special 'special-vis #f)
@@ -21,7 +21,7 @@
;; definition for method 14 of type drawable-tree-array
;; INFO: Return type mismatch int vs none.
(defmethod collect-stats drawable-tree-array ((this drawable-tree-array))
(defmethod collect-stats ((this drawable-tree-array))
(dotimes (s5-0 (-> this length))
(collect-stats (-> this trees s5-0))
)
@@ -31,7 +31,7 @@
;; definition for method 15 of type drawable-tree-array
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw drawable-tree-array ((this drawable-tree-array) (arg0 drawable) (arg1 display-frame))
(defmethod debug-draw ((this drawable-tree-array) (arg0 drawable) (arg1 display-frame))
(dotimes (s3-0 (-> this length))
(debug-draw (-> this trees s3-0) (-> (the-as drawable-tree-array arg0) trees s3-0) arg1)
)
@@ -40,7 +40,7 @@
)
;; definition for method 16 of type drawable-tree
(defmethod unpack-vis drawable-tree ((this drawable-tree) (arg0 (pointer int8)) (arg1 (pointer int8)))
(defmethod unpack-vis ((this drawable-tree) (arg0 (pointer int8)) (arg1 (pointer int8)))
(local-vars (t5-1 int))
(let* ((v1-0 (the-as drawable-inline-array-node (-> this data 0)))
(a3-1 (/ (-> v1-0 data 0 id) 8))
+10 -10
View File
@@ -178,68 +178,68 @@
)
;; definition for method 9 of type drawable
(defmethod login drawable ((this drawable))
(defmethod login ((this drawable))
this
)
;; definition for method 10 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod draw drawable ((this drawable) (arg0 drawable) (arg1 display-frame))
(defmethod draw ((this drawable) (arg0 drawable) (arg1 display-frame))
0
(none)
)
;; definition for method 11 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod collide-with-box drawable ((this drawable) (arg0 int) (arg1 collide-list))
(defmethod collide-with-box ((this drawable) (arg0 int) (arg1 collide-list))
0
(none)
)
;; definition for method 12 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod collide-y-probe drawable ((this drawable) (arg0 int) (arg1 collide-list))
(defmethod collide-y-probe ((this drawable) (arg0 int) (arg1 collide-list))
0
(none)
)
;; definition for method 13 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod collide-ray drawable ((this drawable) (arg0 int) (arg1 collide-list))
(defmethod collide-ray ((this drawable) (arg0 int) (arg1 collide-list))
0
(none)
)
;; definition for method 17 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients drawable ((this drawable) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this drawable) (arg0 sphere) (arg1 int) (arg2 ambient-list))
0
(none)
)
;; definition for method 14 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod collect-stats drawable ((this drawable))
(defmethod collect-stats ((this drawable))
0
(none)
)
;; definition for method 15 of type drawable
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw drawable ((this drawable) (arg0 drawable) (arg1 display-frame))
(defmethod debug-draw ((this drawable) (arg0 drawable) (arg1 display-frame))
0
(none)
)
;; definition for method 10 of type drawable-error
;; INFO: Return type mismatch drawable-error vs none.
(defmethod draw drawable-error ((this drawable-error) (arg0 drawable-error) (arg1 display-frame))
(defmethod draw ((this drawable-error) (arg0 drawable-error) (arg1 display-frame))
(error-sphere arg0 (-> arg0 name))
(none)
)
;; definition for method 16 of type drawable
(defmethod unpack-vis drawable ((this drawable) (arg0 (pointer int8)) (arg1 (pointer int8)))
(defmethod unpack-vis ((this drawable) (arg0 (pointer int8)) (arg1 (pointer int8)))
arg1
)
+11 -11
View File
@@ -87,7 +87,7 @@
;; definition for method 10 of type draw-control
;; INFO: Return type mismatch int vs none.
(defmethod lod-set! draw-control ((this draw-control) (arg0 int))
(defmethod lod-set! ((this draw-control) (arg0 int))
(let ((v1-1 (max 0 (min arg0 (-> this lod-set max-lod)))))
(set! (-> this desired-lod) v1-1)
(when (!= (-> this cur-lod) v1-1)
@@ -101,7 +101,7 @@
;; definition for method 11 of type draw-control
;; INFO: Return type mismatch int vs none.
(defmethod lods-assign! draw-control ((this draw-control) (arg0 lod-set))
(defmethod lods-assign! ((this draw-control) (arg0 lod-set))
(mem-copy! (the-as pointer (-> this lod-set)) (the-as pointer arg0) 33)
(let ((a1-2 (min (-> this cur-lod) (-> this lod-set max-lod))))
(set! (-> this cur-lod) -1)
@@ -113,7 +113,7 @@
;; definition for method 9 of type lod-set
;; INFO: Used lq/sq
(defmethod setup-lods! lod-set ((this lod-set) (arg0 skeleton-group) (arg1 art-group) (arg2 entity))
(defmethod setup-lods! ((this lod-set) (arg0 skeleton-group) (arg1 art-group) (arg2 entity))
(local-vars (sv-16 res-tag))
(let ((s4-0 arg0)
(s5-0 arg1)
@@ -282,7 +282,7 @@
;; definition for method 17 of type process-drawable
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod do-joint-math! process-drawable ((this process-drawable))
(defmethod do-joint-math! ((this process-drawable))
(cond
((logtest? (-> this draw status) (draw-status hidden no-anim))
)
@@ -362,7 +362,7 @@
;; definition for method 18 of type process-drawable
;; INFO: Return type mismatch int vs none.
(defmethod cleanup-for-death process-drawable ((this process-drawable))
(defmethod cleanup-for-death ((this process-drawable))
(if (type-type? (-> this root type) collide-shape)
(clear-collide-with-as (the-as collide-shape (-> this root)))
)
@@ -385,7 +385,7 @@
)
;; definition for method 10 of type process-drawable
(defmethod deactivate process-drawable ((this process-drawable))
(defmethod deactivate ((this process-drawable))
(if (nonzero? (-> this part))
(kill-and-free-particles (-> this part))
)
@@ -427,7 +427,7 @@
;; WARN: Stack slot offset 20 signed mismatch
;; WARN: Stack slot offset 20 signed mismatch
;; INFO: Return type mismatch draw-control vs none.
(defmethod initialize-skeleton process-drawable ((this process-drawable) (arg0 skeleton-group) (arg1 pair))
(defmethod initialize-skeleton ((this process-drawable) (arg0 skeleton-group) (arg1 pair))
(local-vars (s3-0 draw-control) (sv-16 art-element) (sv-20 int))
(let ((s1-0 (cond
((= (-> arg0 texture-level) 2)
@@ -579,7 +579,7 @@
)
;; definition for method 15 of type process-drawable
(defmethod initialize-skeleton-by-name process-drawable ((this process-drawable) (arg0 string) (arg1 object))
(defmethod initialize-skeleton-by-name ((this process-drawable) (arg0 string) (arg1 object))
(let ((s3-0 string->symbol))
(format (clear *temp-string*) "*~S-sg*" arg0)
(let ((s3-1 (-> (s3-0 *temp-string*) value)))
@@ -594,7 +594,7 @@
;; definition for method 16 of type process-drawable
;; INFO: Return type mismatch trsqv vs collide-shape.
(defmethod apply-alignment process-drawable ((this process-drawable) (arg0 align-opts) (arg1 transformq) (arg2 vector))
(defmethod apply-alignment ((this process-drawable) (arg0 align-opts) (arg1 transformq) (arg2 vector))
(when (logtest? arg0 (align-opts adjust-x-vel adjust-y-vel adjust-xz-vel))
(let* ((body-T-world (quaternion->matrix (new 'stack-no-clear 'matrix) (-> this root quat)))
(world-T-body (matrix-transpose! (new 'stack-no-clear 'matrix) body-T-world))
@@ -904,7 +904,7 @@
;; INFO: Return type mismatch int vs none.
;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)]
;; ERROR: Unsupported inline assembly instruction kind - [jr ra]
(defmethod evaluate-joint-control process-drawable ((this process-drawable))
(defmethod evaluate-joint-control ((this process-drawable))
(local-vars (s7-0 none) (ra-0 int))
(let ((gp-0 (-> this skel)))
(label cfg-1)
@@ -997,7 +997,7 @@
)
;; definition for method 9 of type joint-control
(defmethod current-cycle-distance joint-control ((this joint-control))
(defmethod current-cycle-distance ((this joint-control))
(cond
((< (the-as int (-> this root-channel)) (the-as int (-> this channel (-> this active-channels))))
(let ((s5-0 (-> this root-channel (-> this root-channel 0 group-size)))
+66 -75
View File
@@ -3,18 +3,15 @@
;; definition of type connectable
(deftype connectable (structure)
((next0 connectable :offset-assert 0)
(prev0 connectable :offset-assert 4)
(next1 connectable :offset-assert 8)
(prev1 connectable :offset-assert 12)
((next0 connectable)
(prev0 connectable)
(next1 connectable)
(prev1 connectable)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type connectable
(defmethod inspect connectable ((this connectable))
(defmethod inspect ((this connectable))
(format #t "[~8x] ~A~%" this 'connectable)
(format #t "~Tnext0: ~`connectable`P~%" (-> this next0))
(format #t "~Tprev0: ~`connectable`P~%" (-> this prev0))
@@ -25,26 +22,23 @@
;; definition of type connection
(deftype connection (connectable)
((param0 basic :offset-assert 16)
(param1 int32 :offset-assert 20)
(param2 int32 :offset-assert 24)
(param3 int32 :offset-assert 28)
(quad uint128 2 :offset 0)
((param0 basic)
(param1 int32)
(param2 int32)
(param3 int32)
(quad uint128 2 :overlay-at next0)
)
:method-count-assert 14
:size-assert #x20
:flag-assert #xe00000020
(:methods
(get-engine (connection) engine 9)
(get-process (connection) process 10)
(belongs-to-engine? (connection engine) symbol 11)
(belongs-to-process? (connection process) symbol 12)
(move-to-dead (connection) connection 13)
(get-engine (connection) engine)
(get-process (connection) process)
(belongs-to-engine? (connection engine) symbol)
(belongs-to-process? (connection process) symbol)
(move-to-dead (connection) connection)
)
)
;; definition for method 3 of type connection
(defmethod inspect connection ((this connection))
(defmethod inspect ((this connection))
(format #t "[~8x] ~A~%" this 'connection)
(format #t "~Tnext0: ~`connectable`P~%" (-> this next0))
(format #t "~Tprev0: ~`connectable`P~%" (-> this prev0))
@@ -60,46 +54,43 @@
;; definition of type engine
(deftype engine (basic)
((name basic :offset-assert 4)
(length int16 :offset-assert 8)
(allocated-length int16 :offset-assert 10)
(engine-time time-frame :offset-assert 16)
(alive-list connectable :inline :offset-assert 32)
(alive-list-end connectable :inline :offset-assert 48)
(dead-list connectable :inline :offset-assert 64)
(dead-list-end connectable :inline :offset-assert 80)
(data connection 1 :inline :offset-assert 96)
((name basic)
(length int16)
(allocated-length int16)
(engine-time time-frame)
(alive-list connectable :inline)
(alive-list-end connectable :inline)
(dead-list connectable :inline)
(dead-list-end connectable :inline)
(data connection 1 :inline)
)
:method-count-assert 24
:size-assert #x80
:flag-assert #x1800000080
(:methods
(new (symbol type basic int) _type_ 0)
(inspect-all-connections (engine) engine 9)
(apply-to-connections (engine (function connectable none)) int 10)
(apply-to-connections-reverse (engine (function connectable none)) int 11)
(execute-connections (engine object) int 12)
(execute-connections-and-move-to-dead (engine object) int 13)
(execute-connections-if-needed (engine object) int 14)
(add-connection (engine process object object object object) connection 15)
(remove-from-process (engine process) int 16)
(remove-matching (engine (function connection engine symbol)) int 17)
(remove-all (engine) int 18)
(remove-by-param1 (engine object) int 19)
(remove-by-param2 (engine int) int 20)
(get-first-connectable (engine) connectable 21)
(get-last-connectable (engine) connectable 22)
(unknown-1 (engine (pointer uint32)) uint 23)
(new (symbol type basic int) _type_)
(inspect-all-connections (engine) engine)
(apply-to-connections (engine (function connectable none)) int)
(apply-to-connections-reverse (engine (function connectable none)) int)
(execute-connections (engine object) int)
(execute-connections-and-move-to-dead (engine object) int)
(execute-connections-if-needed (engine object) int)
(add-connection (engine process object object object object) connection)
(remove-from-process (engine process) int)
(remove-matching (engine (function connection engine symbol)) int)
(remove-all (engine) int)
(remove-by-param1 (engine object) int)
(remove-by-param2 (engine int) int)
(get-first-connectable (engine) connectable)
(get-last-connectable (engine) connectable)
(unknown-1 (engine (pointer uint32)) uint)
)
)
;; definition for method 12 of type connection
(defmethod belongs-to-process? connection ((this connection) (arg0 process))
(defmethod belongs-to-process? ((this connection) (arg0 process))
(= arg0 (get-process this))
)
;; definition for method 2 of type connection
(defmethod print connection ((this connection))
(defmethod print ((this connection))
(format
#t
"#<connection (~A ~A ~A ~A) @ #x~X>"
@@ -114,7 +105,7 @@
;; definition for method 9 of type connection
;; INFO: Return type mismatch pointer vs engine.
(defmethod get-engine connection ((this connection))
(defmethod get-engine ((this connection))
(while (-> (the-as connectable this) prev0)
(nop!)
(nop!)
@@ -125,7 +116,7 @@
;; definition for method 10 of type connection
;; INFO: Return type mismatch pointer vs process.
(defmethod get-process connection ((this connection))
(defmethod get-process ((this connection))
(while (-> (the-as connectable this) prev1)
(nop!)
(nop!)
@@ -135,24 +126,24 @@
)
;; definition for method 11 of type connection
(defmethod belongs-to-engine? connection ((this connection) (arg0 engine))
(defmethod belongs-to-engine? ((this connection) (arg0 engine))
(and (< (the-as int arg0) (the-as int this))
(< (the-as int this) (the-as int (-> arg0 data (-> arg0 allocated-length))))
)
)
;; definition for method 21 of type engine
(defmethod get-first-connectable engine ((this engine))
(defmethod get-first-connectable ((this engine))
(-> this alive-list next0)
)
;; definition for method 22 of type engine
(defmethod get-last-connectable engine ((this engine))
(defmethod get-last-connectable ((this engine))
(-> this alive-list-end)
)
;; definition for method 23 of type engine
(defmethod unknown-1 engine ((this engine) (arg0 (pointer uint32)))
(defmethod unknown-1 ((this engine) (arg0 (pointer uint32)))
(-> arg0 0)
)
@@ -201,13 +192,13 @@
)
;; definition for method 2 of type engine
(defmethod print engine ((this engine))
(defmethod print ((this engine))
(format #t "#<~A ~A @ #x~X>" (-> this type) (-> this name) this)
this
)
;; definition for method 3 of type engine
(defmethod inspect engine ((this engine))
(defmethod inspect ((this engine))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tengine-time: ~D~%" (-> this engine-time))
@@ -242,18 +233,18 @@
)
;; definition for method 4 of type engine
(defmethod length engine ((this engine))
(defmethod length ((this engine))
(-> this length)
)
;; definition for method 5 of type engine
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of engine ((this engine))
(defmethod asize-of ((this engine))
(the-as int (+ (-> engine size) (* (+ (-> this allocated-length) -1) 32)))
)
;; definition for method 10 of type engine
(defmethod apply-to-connections engine ((this engine) (f (function connectable none)))
(defmethod apply-to-connections ((this engine) (f (function connectable none)))
(let* ((current (-> this alive-list next0))
(next (-> current next0))
)
@@ -267,7 +258,7 @@
)
;; definition for method 11 of type engine
(defmethod apply-to-connections-reverse engine ((this engine) (f (function connectable none)))
(defmethod apply-to-connections-reverse ((this engine) (f (function connectable none)))
(let ((iter (-> this alive-list-end prev0)))
(while (!= iter (-> this alive-list))
(f iter)
@@ -278,7 +269,7 @@
)
;; definition for method 12 of type engine
(defmethod execute-connections engine ((this engine) (arg0 object))
(defmethod execute-connections ((this engine) (arg0 object))
(set! (-> this engine-time) (-> *display* real-frame-counter))
(let ((ct (the-as connection (-> this alive-list-end prev0))))
(while (!= ct (-> this alive-list))
@@ -295,7 +286,7 @@
)
;; definition for method 13 of type engine
(defmethod execute-connections-and-move-to-dead engine ((this engine) (arg0 object))
(defmethod execute-connections-and-move-to-dead ((this engine) (arg0 object))
(set! (-> this engine-time) (-> *display* real-frame-counter))
(let ((ct (the-as connection (-> this alive-list-end prev0))))
(while (!= ct (-> this alive-list))
@@ -318,7 +309,7 @@
)
;; definition for method 14 of type engine
(defmethod execute-connections-if-needed engine ((this engine) (arg0 object))
(defmethod execute-connections-if-needed ((this engine) (arg0 object))
(if (!= (-> *display* real-frame-counter) (-> this engine-time))
(execute-connections this arg0)
)
@@ -339,13 +330,13 @@
)
;; definition for method 9 of type engine
(defmethod inspect-all-connections engine ((this engine))
(defmethod inspect-all-connections ((this engine))
(apply-to-connections this (the-as (function connectable none) (method-of-type connection inspect)))
this
)
;; definition for method 15 of type engine
(defmethod add-connection engine ((this engine) (proc process) (func object) (p1 object) (p2 object) (p3 object))
(defmethod add-connection ((this engine) (proc process) (func object) (p1 object) (p2 object) (p3 object))
(let ((con (the-as connection (-> this dead-list next0))))
(when (not (or (not proc) (= con (-> this dead-list-end))))
(set! (-> con param0) (the-as basic func))
@@ -371,7 +362,7 @@
)
;; definition for method 13 of type connection
(defmethod move-to-dead connection ((this connection))
(defmethod move-to-dead ((this connection))
(let ((v1-1 (get-engine this)))
(set! (-> this prev0 next0) (-> this next0))
(set! (-> this next0 prev0) (-> this prev0))
@@ -402,7 +393,7 @@
)
;; definition for method 16 of type engine
(defmethod remove-from-process engine ((this engine) (arg0 process))
(defmethod remove-from-process ((this engine) (arg0 process))
(when arg0
(let ((s5-0 (-> arg0 connection-list next1)))
(while s5-0
@@ -417,7 +408,7 @@
)
;; definition for method 17 of type engine
(defmethod remove-matching engine ((this engine) (arg0 (function connection engine symbol)))
(defmethod remove-matching ((this engine) (arg0 (function connection engine symbol)))
(let* ((s4-0 (-> this alive-list next0))
(s3-0 (-> s4-0 next0))
)
@@ -433,7 +424,7 @@
)
;; definition for method 18 of type engine
(defmethod remove-all engine ((this engine))
(defmethod remove-all ((this engine))
(let* ((a0-1 (-> this alive-list next0))
(s5-0 (-> a0-1 next0))
)
@@ -447,7 +438,7 @@
)
;; definition for method 19 of type engine
(defmethod remove-by-param1 engine ((this engine) (p1-value object))
(defmethod remove-by-param1 ((this engine) (p1-value object))
(let* ((current (-> this alive-list next0))
(next (-> current next0))
)
@@ -463,7 +454,7 @@
)
;; definition for method 20 of type engine
(defmethod remove-by-param2 engine ((this engine) (p2-value int))
(defmethod remove-by-param2 ((this engine) (p2-value int))
(let* ((current (-> this alive-list next0))
(next (-> current next0))
)
+41 -44
View File
@@ -34,37 +34,34 @@
;; definition of type actor-link-info
(deftype actor-link-info (basic)
((process process :offset-assert 4)
(next entity-actor :offset-assert 8)
(prev entity-actor :offset-assert 12)
((process process)
(next entity-actor)
(prev entity-actor)
)
:method-count-assert 26
:size-assert #x10
:flag-assert #x1a00000010
(:methods
(new (symbol type process) _type_ 0)
(get-matching-actor-type-mask (_type_ type) int 9)
(actor-count-before (_type_) int 10)
(link-to-next-and-prev-actor (_type_) entity-actor 11)
(get-next (_type_) entity-actor 12)
(get-prev (_type_) entity-actor 13)
(get-next-process (_type_) process 14)
(get-prev-process (_type_) process 15)
(apply-function-forward (_type_ (function entity-actor object object) object) int 16)
(apply-function-reverse (_type_ (function entity-actor object object) object) int 17)
(apply-all (_type_ (function entity-actor object object) object) int 18)
(send-to-all (_type_ symbol) none 19)
(send-to-all-after (_type_ symbol) object 20)
(send-to-all-before (_type_ symbol) object 21)
(send-to-next-and-prev (_type_ symbol) none 22)
(send-to-next (_type_ symbol) none 23)
(send-to-prev (_type_ symbol) none 24)
(actor-count (_type_) int 25)
(new (symbol type process) _type_)
(get-matching-actor-type-mask (_type_ type) int)
(actor-count-before (_type_) int)
(link-to-next-and-prev-actor (_type_) entity-actor)
(get-next (_type_) entity-actor)
(get-prev (_type_) entity-actor)
(get-next-process (_type_) process)
(get-prev-process (_type_) process)
(apply-function-forward (_type_ (function entity-actor object object) object) int)
(apply-function-reverse (_type_ (function entity-actor object object) object) int)
(apply-all (_type_ (function entity-actor object object) object) int)
(send-to-all (_type_ symbol) none)
(send-to-all-after (_type_ symbol) object)
(send-to-all-before (_type_ symbol) object)
(send-to-next-and-prev (_type_ symbol) none)
(send-to-next (_type_ symbol) none)
(send-to-prev (_type_ symbol) none)
(actor-count (_type_) int)
)
)
;; definition for method 3 of type actor-link-info
(defmethod inspect actor-link-info ((this actor-link-info))
(defmethod inspect ((this actor-link-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tprocess: ~A~%" (-> this process))
(format #t "~Tnext: ~A~%" (-> this next))
@@ -73,12 +70,12 @@
)
;; definition for method 27 of type entity-actor
(defmethod next-actor entity-actor ((this entity-actor))
(defmethod next-actor ((this entity-actor))
(entity-actor-lookup this 'next-actor 0)
)
;; definition for method 28 of type entity-actor
(defmethod prev-actor entity-actor ((this entity-actor))
(defmethod prev-actor ((this entity-actor))
(entity-actor-lookup this 'prev-actor 0)
)
@@ -97,29 +94,29 @@
)
;; definition for method 12 of type actor-link-info
(defmethod get-next actor-link-info ((this actor-link-info))
(defmethod get-next ((this actor-link-info))
(-> this next)
)
;; definition for method 13 of type actor-link-info
(defmethod get-prev actor-link-info ((this actor-link-info))
(defmethod get-prev ((this actor-link-info))
(-> this prev)
)
;; definition for method 14 of type actor-link-info
;; INFO: Return type mismatch basic vs process.
(defmethod get-next-process actor-link-info ((this actor-link-info))
(defmethod get-next-process ((this actor-link-info))
(the-as process (and (-> this next) (-> (the-as entity-links (-> this next extra)) process)))
)
;; definition for method 15 of type actor-link-info
;; INFO: Return type mismatch basic vs process.
(defmethod get-prev-process actor-link-info ((this actor-link-info))
(defmethod get-prev-process ((this actor-link-info))
(the-as process (and (-> this prev) (-> (the-as entity-links (-> this prev extra)) process)))
)
;; definition for method 11 of type actor-link-info
(defmethod link-to-next-and-prev-actor actor-link-info ((this actor-link-info))
(defmethod link-to-next-and-prev-actor ((this actor-link-info))
(let ((a0-1 (-> this process entity)))
(set! (-> this next) (entity-actor-lookup a0-1 'next-actor 0))
)
@@ -130,7 +127,7 @@
)
;; definition for method 16 of type actor-link-info
(defmethod apply-function-forward actor-link-info ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(defmethod apply-function-forward ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(let ((s3-0 (-> this next)))
(while s3-0
(if (arg0 s3-0 arg1)
@@ -143,7 +140,7 @@
)
;; definition for method 17 of type actor-link-info
(defmethod apply-function-reverse actor-link-info ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(defmethod apply-function-reverse ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(let ((s3-0 (-> this prev)))
(while s3-0
(if (arg0 s3-0 arg1)
@@ -156,7 +153,7 @@
)
;; definition for method 18 of type actor-link-info
(defmethod apply-all actor-link-info ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(defmethod apply-all ((this actor-link-info) (arg0 (function entity-actor object object)) (arg1 object))
(let ((s4-0 (-> this process entity)))
(while (let ((a0-2 s4-0))
(entity-actor-lookup a0-2 'prev-actor 0)
@@ -176,7 +173,7 @@
)
;; definition for method 20 of type actor-link-info
(defmethod send-to-all-after actor-link-info ((this actor-link-info) (message symbol))
(defmethod send-to-all-after ((this actor-link-info) (message symbol))
(with-pp
(let ((iter (-> this next))
(result (the-as object #f))
@@ -200,7 +197,7 @@
)
;; definition for method 21 of type actor-link-info
(defmethod send-to-all-before actor-link-info ((this actor-link-info) (arg0 symbol))
(defmethod send-to-all-before ((this actor-link-info) (arg0 symbol))
(with-pp
(let ((s4-0 (-> this prev))
(s5-0 (the-as object #f))
@@ -225,7 +222,7 @@
;; definition for method 23 of type actor-link-info
;; INFO: Return type mismatch int vs none.
(defmethod send-to-next actor-link-info ((this actor-link-info) (arg0 symbol))
(defmethod send-to-next ((this actor-link-info) (arg0 symbol))
(let ((a0-1 (-> this next)))
(when a0-1
(let ((a0-2 (-> (the-as entity-links (-> a0-1 extra)) process)))
@@ -241,7 +238,7 @@
;; definition for method 24 of type actor-link-info
;; INFO: Return type mismatch int vs none.
(defmethod send-to-prev actor-link-info ((this actor-link-info) (arg0 symbol))
(defmethod send-to-prev ((this actor-link-info) (arg0 symbol))
(let ((a0-1 (-> this prev)))
(when a0-1
(let ((a0-2 (-> (the-as entity-links (-> a0-1 extra)) process)))
@@ -256,7 +253,7 @@
)
;; definition for method 22 of type actor-link-info
(defmethod send-to-next-and-prev actor-link-info ((this actor-link-info) (arg0 symbol))
(defmethod send-to-next-and-prev ((this actor-link-info) (arg0 symbol))
(send-to-next this arg0)
(send-to-prev this arg0)
(none)
@@ -264,14 +261,14 @@
;; definition for method 19 of type actor-link-info
;; INFO: Return type mismatch object vs none.
(defmethod send-to-all actor-link-info ((this actor-link-info) (arg0 symbol))
(defmethod send-to-all ((this actor-link-info) (arg0 symbol))
(send-to-all-after this arg0)
(send-to-all-before this arg0)
(none)
)
;; definition for method 25 of type actor-link-info
(defmethod actor-count actor-link-info ((this actor-link-info))
(defmethod actor-count ((this actor-link-info))
(let ((actor (-> this process entity))
(count 0)
)
@@ -291,7 +288,7 @@
)
;; definition for method 9 of type actor-link-info
(defmethod get-matching-actor-type-mask actor-link-info ((this actor-link-info) (matching-type type))
(defmethod get-matching-actor-type-mask ((this actor-link-info) (matching-type type))
(let ((actor (-> this process entity))
(mask 0)
)
@@ -316,7 +313,7 @@
)
;; definition for method 10 of type actor-link-info
(defmethod actor-count-before actor-link-info ((this actor-link-info))
(defmethod actor-count-before ((this actor-link-info))
(let* ((this-actor (-> this process entity))
(actor this-actor)
(count 0)
+10 -10
View File
@@ -3,7 +3,7 @@
;; definition for method 8 of type drawable-ambient
;; INFO: Return type mismatch int vs drawable-ambient.
(defmethod mem-usage drawable-ambient ((this drawable-ambient) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-ambient) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 50 (-> arg0 length)))
(set! (-> arg0 data 49 name) "ambient")
(+! (-> arg0 data 49 count) 1)
@@ -17,7 +17,7 @@
;; definition for method 8 of type drawable-inline-array-ambient
;; INFO: Return type mismatch int vs drawable-inline-array-ambient.
(defmethod mem-usage drawable-inline-array-ambient ((this drawable-inline-array-ambient) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-inline-array-ambient) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 1 (-> arg0 length)))
(set! (-> arg0 data 0 name) (symbol->string 'drawable-group))
(+! (-> arg0 data 0 count) 1)
@@ -376,7 +376,7 @@
;; definition for method 14 of type level-hint
;; INFO: Return type mismatch int vs none.
(defmethod print-text level-hint ((this level-hint))
(defmethod print-text ((this level-hint))
(when (!= *common-text* #f)
(let ((s5-0
(new 'stack 'font-context *font-default-matrix* 56 160 0.0 (font-color default) (font-flags shadow kerning))
@@ -397,7 +397,7 @@
)
;; definition for method 15 of type level-hint
(defmethod appeared-for-long-enough? level-hint ((this level-hint))
(defmethod appeared-for-long-enough? ((this level-hint))
(and (!= (-> this next-state name) 'level-hint-sidekick) (< (seconds 5) (-> this total-time)))
)
@@ -971,7 +971,7 @@
;; definition for method 17 of type drawable-ambient
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients drawable-ambient ((this drawable-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this drawable-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(dotimes (s2-0 arg1)
(when (spheres-overlap? arg0 (the-as sphere (-> this bsphere)))
(set! (-> arg2 items (-> arg2 num-items)) this)
@@ -985,7 +985,7 @@
;; definition for method 17 of type drawable-inline-array-ambient
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients drawable-inline-array-ambient ((this drawable-inline-array-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this drawable-inline-array-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(collect-ambients (the-as drawable-ambient (-> this data)) arg0 (-> this length) arg2)
0
(none)
@@ -993,7 +993,7 @@
;; definition for method 17 of type drawable-tree-ambient
;; INFO: Return type mismatch int vs none.
(defmethod collect-ambients drawable-tree-ambient ((this drawable-tree-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(defmethod collect-ambients ((this drawable-tree-ambient) (arg0 sphere) (arg1 int) (arg2 ambient-list))
(collect-ambients (-> this data 0) arg0 (-> this length) arg2)
0
(none)
@@ -1002,7 +1002,7 @@
;; definition for method 28 of type entity-ambient
;; INFO: Used lq/sq
;; INFO: Return type mismatch entity-ambient vs none.
(defmethod birth-ambient! entity-ambient ((this entity-ambient))
(defmethod birth-ambient! ((this entity-ambient))
(set! (-> this ambient-data quad) (the-as uint128 0))
(set! (-> this ambient-data function) ambient-type-error)
(case (res-lump-struct this 'type structure)
@@ -1101,7 +1101,7 @@
;; definition for method 18 of type drawable-ambient
;; INFO: Return type mismatch int vs none.
(defmethod execute-ambient drawable-ambient ((this drawable-ambient) (arg0 vector))
(defmethod execute-ambient ((this drawable-ambient) (arg0 vector))
((-> this ambient ambient-data function) this arg0)
0
(none)
@@ -1113,7 +1113,7 @@
;; definition for method 27 of type entity-ambient
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod draw-debug entity-ambient ((this entity-ambient))
(defmethod draw-debug ((this entity-ambient))
(local-vars (sv-16 uint128))
(let ((gp-0 (-> this trans))
(s5-0 (res-lump-struct this 'type symbol))
+78 -114
View File
@@ -12,33 +12,30 @@
;; definition of type entity-perm
(deftype entity-perm (structure)
((user-object object 2 :offset-assert 0)
(user-uint64 uint64 :offset 0)
(user-float float 2 :offset 0)
(user-int32 int32 2 :offset 0)
(user-uint32 uint32 2 :offset 0)
(user-int16 int16 4 :offset 0)
(user-uint16 uint16 4 :offset 0)
(user-int8 int8 8 :offset 0)
(user-uint8 uint8 8 :offset 0)
(status entity-perm-status :offset-assert 8)
(dummy uint8 1 :offset-assert 10)
(task game-task :offset-assert 11)
(aid actor-id :offset-assert 12)
(quad uint128 :offset 0)
((user-object object 2)
(user-uint64 uint64 :overlay-at (-> user-object 0))
(user-float float 2 :overlay-at (-> user-object 0))
(user-int32 int32 2 :overlay-at (-> user-object 0))
(user-uint32 uint32 2 :overlay-at (-> user-object 0))
(user-int16 int16 4 :overlay-at (-> user-object 0))
(user-uint16 uint16 4 :overlay-at (-> user-object 0))
(user-int8 int8 8 :overlay-at (-> user-object 0))
(user-uint8 uint8 8 :overlay-at (-> user-object 0))
(status entity-perm-status)
(dummy uint8 1)
(task game-task)
(aid actor-id)
(quad uint128 :overlay-at (-> user-object 0))
)
:pack-me
:method-count-assert 10
:size-assert #x10
:flag-assert #xa00000010
(:methods
(update-perm! (_type_ symbol entity-perm-status) _type_ 9)
(update-perm! (_type_ symbol entity-perm-status) _type_)
)
)
;; definition for method 3 of type entity-perm
;; INFO: Used lq/sq
(defmethod inspect entity-perm ((this entity-perm))
(defmethod inspect ((this entity-perm))
(format #t "[~8x] ~A~%" this 'entity-perm)
(format #t "~Tuser-object[2] @ #x~X~%" (-> this user-object))
(format #t "~Tuser-uint64: ~D~%" (-> this user-uint64))
@@ -59,28 +56,25 @@
;; definition of type entity-links
(deftype entity-links (structure)
((prev-link entity-links :offset-assert 0)
(next-link entity-links :offset-assert 4)
(entity entity :offset-assert 8)
(process process :offset-assert 12)
(level level :offset-assert 16)
(vis-id int32 :offset-assert 20)
(trans vector :inline :offset-assert 32)
(perm entity-perm :inline :offset-assert 48)
(status uint16 :offset 56)
(aid actor-id :offset 60)
(task game-task :offset 59)
((prev-link entity-links)
(next-link entity-links)
(entity entity)
(process process)
(level level)
(vis-id int32)
(trans vector :inline)
(perm entity-perm :inline)
(status uint16 :overlay-at (-> perm status))
(aid actor-id :overlay-at (-> perm aid))
(task game-task :overlay-at (-> perm task))
)
:method-count-assert 10
:size-assert #x40
:flag-assert #xa00000040
(:methods
(birth? (_type_ vector) symbol 9)
(birth? (_type_ vector) symbol)
)
)
;; definition for method 3 of type entity-links
(defmethod inspect entity-links ((this entity-links))
(defmethod inspect ((this entity-links))
(format #t "[~8x] ~A~%" this 'entity-links)
(format #t "~Tprev-link: #<entity-links @ #x~X>~%" (-> this prev-link))
(format #t "~Tnext-link: #<entity-links @ #x~X>~%" (-> this next-link))
@@ -98,15 +92,12 @@
;; definition of type entity-perm-array
(deftype entity-perm-array (inline-array-class)
((data entity-perm :inline :dynamic :offset-assert 16)
((data entity-perm :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type entity-perm-array
(defmethod inspect entity-perm-array ((this entity-perm-array))
(defmethod inspect ((this entity-perm-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -119,15 +110,12 @@
;; definition of type entity-links-array
(deftype entity-links-array (inline-array-class)
((data entity-links :inline :dynamic :offset-assert 16)
((data entity-links :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type entity-links-array
(defmethod inspect entity-links-array ((this entity-links-array))
(defmethod inspect ((this entity-links-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -140,52 +128,43 @@
;; definition of type entity
(deftype entity (res-lump)
((trans vector :inline :offset-assert 32)
(aid uint32 :offset-assert 48)
((trans vector :inline)
(aid uint32)
)
:method-count-assert 27
:size-assert #x34
:flag-assert #x1b00000034
(:methods
(birth! (_type_) _type_ 22)
(kill! (_type_) _type_ 23)
(add-to-level! (_type_ level-group level actor-id) none 24)
(remove-from-level! (_type_ level-group) _type_ 25)
(get-level (_type_) level 26)
(birth! (_type_) _type_)
(kill! (_type_) _type_)
(add-to-level! (_type_ level-group level actor-id) none)
(remove-from-level! (_type_ level-group) _type_)
(get-level (_type_) level)
)
)
;; definition of type entity-camera
(deftype entity-camera (entity)
((connect connectable :inline :offset-assert 64)
((connect connectable :inline)
)
:method-count-assert 27
:size-assert #x50
:flag-assert #x1b00000050
)
;; definition of type entity-ambient-data
(deftype entity-ambient-data (structure)
((user-object object 3 :offset-assert 0)
(function (function drawable-ambient vector none) :offset-assert 12)
(quad uint128 :offset 0)
(user-uint64 uint64 1 :offset 0)
(user-float float 3 :offset 0)
(user-int32 int32 3 :offset 0)
(user-uint32 uint32 3 :offset 0)
(user-int16 int16 6 :offset 0)
(user-uint16 uint16 6 :offset 0)
(user-int8 int8 12 :offset 0)
(user-uint8 uint8 12 :offset 0)
((user-object object 3)
(function (function drawable-ambient vector none))
(quad uint128 :overlay-at (-> user-object 0))
(user-uint64 uint64 1 :overlay-at (-> user-object 0))
(user-float float 3 :overlay-at (-> user-object 0))
(user-int32 int32 3 :overlay-at (-> user-object 0))
(user-uint32 uint32 3 :overlay-at (-> user-object 0))
(user-int16 int16 6 :overlay-at (-> user-object 0))
(user-uint16 uint16 6 :overlay-at (-> user-object 0))
(user-int8 int8 12 :overlay-at (-> user-object 0))
(user-uint8 uint8 12 :overlay-at (-> user-object 0))
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type entity-ambient-data
;; INFO: Used lq/sq
(defmethod inspect entity-ambient-data ((this entity-ambient-data))
(defmethod inspect ((this entity-ambient-data))
(format #t "[~8x] ~A~%" this 'entity-ambient-data)
(format #t "~Tuser-object[3] @ #x~X~%" (&-> this quad))
(format #t "~Tfunction: ~A~%" (-> this function))
@@ -203,15 +182,12 @@
;; definition of type entity-ambient-data-array
(deftype entity-ambient-data-array (inline-array-class)
((data entity-ambient-data :inline :dynamic :offset-assert 16)
((data entity-ambient-data :inline :dynamic)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type entity-ambient-data-array
(defmethod inspect entity-ambient-data-array ((this entity-ambient-data-array))
(defmethod inspect ((this entity-ambient-data-array))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -224,52 +200,43 @@
;; definition of type entity-ambient
(deftype entity-ambient (entity)
((ambient-data entity-ambient-data :offset 24)
((ambient-data entity-ambient-data :overlay-at extra)
)
:method-count-assert 29
:size-assert #x34
:flag-assert #x1d00000034
(:methods
(draw-debug (_type_) none 27)
(birth-ambient! (_type_) none 28)
(draw-debug (_type_) none)
(birth-ambient! (_type_) none)
)
)
;; definition of type entity-actor
(deftype entity-actor (entity)
((nav-mesh nav-mesh :offset-assert 52)
(etype type :offset-assert 56)
(task game-task :offset-assert 60)
(vis-id uint16 :offset-assert 62)
(vis-id-signed int16 :offset 62)
(quat quaternion :inline :offset-assert 64)
((nav-mesh nav-mesh)
(etype type)
(task game-task)
(vis-id uint16)
(vis-id-signed int16 :overlay-at vis-id)
(quat quaternion :inline)
)
:method-count-assert 31
:size-assert #x50
:flag-assert #x1f00000050
(:methods
(next-actor (_type_) entity-actor 27)
(prev-actor (_type_) entity-actor 28)
(debug-print (_type_ symbol type) none 29)
(set-or-clear-status! (_type_ entity-perm-status symbol) none 30)
(next-actor (_type_) entity-actor)
(prev-actor (_type_) entity-actor)
(debug-print (_type_ symbol type) none)
(set-or-clear-status! (_type_ entity-perm-status symbol) none)
)
)
;; definition of type entity-info
(deftype entity-info (basic)
((ptype type :offset-assert 4)
(package basic :offset-assert 8)
(art-group pair :offset-assert 12)
(pool basic :offset-assert 16)
(heap-size int32 :offset-assert 20)
((ptype type)
(package basic)
(art-group pair)
(pool basic)
(heap-size int32)
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type entity-info
(defmethod inspect entity-info ((this entity-info))
(defmethod inspect ((this entity-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tptype: ~A~%" (-> this ptype))
(format #t "~Tpackage: ~A~%" (-> this package))
@@ -286,17 +253,14 @@
;; definition of type actor-bank
(deftype actor-bank (basic)
((pause-dist float :offset-assert 4)
(birth-dist float :offset-assert 8)
(birth-max int32 :offset-assert 12)
((pause-dist float)
(birth-dist float)
(birth-max int32)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type actor-bank
(defmethod inspect actor-bank ((this actor-bank))
(defmethod inspect ((this actor-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tpause-dist: ~f~%" (-> this pause-dist))
(format #t "~Tbirth-dist: ~f~%" (-> this birth-dist))
+31 -30
View File
@@ -12,7 +12,7 @@
;; definition for method 8 of type drawable-actor
;; INFO: Return type mismatch int vs drawable-actor.
(defmethod mem-usage drawable-actor ((this drawable-actor) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-actor) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 44 (-> arg0 length)))
(set! (-> arg0 data 43 name) "entity")
(+! (-> arg0 data 43 count) 1)
@@ -26,7 +26,7 @@
;; definition for method 8 of type drawable-inline-array-actor
;; INFO: Return type mismatch int vs drawable-inline-array-actor.
(defmethod mem-usage drawable-inline-array-actor ((this drawable-inline-array-actor) (arg0 memory-usage-block) (arg1 int))
(defmethod mem-usage ((this drawable-inline-array-actor) (arg0 memory-usage-block) (arg1 int))
(set! (-> arg0 length) (max 1 (-> arg0 length)))
(set! (-> arg0 data 0 name) (symbol->string 'drawable-group))
(+! (-> arg0 data 0 count) 1)
@@ -41,13 +41,13 @@
)
;; definition for method 2 of type entity-links
(defmethod print entity-links ((this entity-links))
(defmethod print ((this entity-links))
(format #t "#<entity-links :process ~A @ #x~X>" (-> this process) this)
this
)
;; definition for method 2 of type entity-perm
(defmethod print entity-perm ((this entity-perm))
(defmethod print ((this entity-perm))
(format
#t
"#<entity-perm :aid ~D :task ~D :status #x~X :data #x~X @ #x~X>"
@@ -61,25 +61,25 @@
)
;; definition for method 22 of type entity
(defmethod birth! entity ((this entity))
(defmethod birth! ((this entity))
(format #t "birth ~A~%" this)
this
)
;; definition for method 23 of type entity
(defmethod kill! entity ((this entity))
(defmethod kill! ((this entity))
(format #t "kill ~A~%" this)
this
)
;; definition for method 2 of type entity
(defmethod print entity ((this entity))
(defmethod print ((this entity))
(format #t "#<~A :name ~S @ #x~X>" (-> this type) (res-lump-struct this 'name structure) this)
this
)
;; definition for method 26 of type entity
(defmethod get-level entity ((this entity))
(defmethod get-level ((this entity))
(dotimes (v1-0 (-> *level* length))
(let ((a1-3 (-> *level* level v1-0)))
(when (= (-> a1-3 status) 'active)
@@ -373,7 +373,8 @@
)
;; definition for method 2 of type process
(defmethod print process ((this process))
;; INFO: this function exists in multiple non-identical object files
(defmethod print ((this process))
(format
#t
"#<~A ~S ~A :state ~S :flags "
@@ -398,7 +399,7 @@
)
;; definition for method 3 of type entity
(defmethod inspect entity ((this entity))
(defmethod inspect ((this entity))
((the-as (function entity entity) (find-parent-method entity 3)) this)
(format #t "~Ttrans: ~`vector`P~%" (-> this trans))
(format #t "~Taid: ~A~%" (-> this aid))
@@ -406,7 +407,7 @@
)
;; definition for method 3 of type entity-actor
(defmethod inspect entity-actor ((this entity-actor))
(defmethod inspect ((this entity-actor))
((the-as (function entity-actor entity-actor) (find-parent-method entity-actor 3)) this)
(format #t "~Tnav-mesh: ~A~%" (-> this nav-mesh))
(format #t "~Tetype: ~A~%" (-> this etype))
@@ -418,7 +419,7 @@
;; definition for method 29 of type entity-actor
;; INFO: Return type mismatch entity-actor vs none.
(defmethod debug-print entity-actor ((this entity-actor) (mode symbol) (expected-type type))
(defmethod debug-print ((this entity-actor) (mode symbol) (expected-type type))
(let ((s4-0 (-> this etype)))
(when (or (not expected-type) (and s4-0 (valid? s4-0 type #f #f 0) (type-type? s4-0 expected-type)))
(format #t "~5D #x~8X ~-21S" (-> this extra vis-id) this (res-lump-struct this 'name structure))
@@ -492,7 +493,7 @@
;; definition for method 13 of type level-group
;; INFO: Return type mismatch int vs none.
(defmethod debug-print-entities level-group ((this level-group) (mode symbol) (expected-type type))
(defmethod debug-print-entities ((this level-group) (mode symbol) (expected-type type))
(format
#t
" id address name aid tsk lev status x y z address name state heap flags~%"
@@ -528,7 +529,7 @@
;; definition for method 24 of type entity
;; INFO: Used lq/sq
;; INFO: Return type mismatch entity vs none.
(defmethod add-to-level! entity ((this entity) (lev-group level-group) (lev level) (aid actor-id))
(defmethod add-to-level! ((this entity) (lev-group level-group) (lev level) (aid actor-id))
(let ((level-link (-> lev entity data (-> lev entity length))))
(+! (-> lev entity length) 1)
(set! (-> level-link process) #f)
@@ -570,7 +571,7 @@
)
;; definition for method 25 of type entity
(defmethod remove-from-level! entity ((this entity) (arg0 level-group))
(defmethod remove-from-level! ((this entity) (arg0 level-group))
(let ((v1-0 (-> this extra)))
(cond
((= (-> v1-0 next-link) v1-0)
@@ -610,7 +611,7 @@
;; definition for method 22 of type level-group
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod update-vis-volumes level-group ((this level-group))
(defmethod update-vis-volumes ((this level-group))
(local-vars
(v1-10 symbol)
(sv-16 process)
@@ -667,7 +668,7 @@
;; definition for method 23 of type level-group
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod update-vis-volumes-from-nav-mesh level-group ((this level-group))
(defmethod update-vis-volumes-from-nav-mesh ((this level-group))
(local-vars (sv-16 entity) (sv-32 entity))
(dotimes (s5-0 (-> this length))
(let ((v1-3 (-> this level s5-0)))
@@ -724,7 +725,7 @@
;; definition for method 24 of type level-group
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod print-volume-sizes level-group ((this level-group))
(defmethod print-volume-sizes ((this level-group))
(local-vars (sv-16 type) (sv-32 (function _varargs_ object)) (sv-48 symbol) (sv-64 string) (sv-80 entity))
(dotimes (s5-0 (-> this length))
(let ((v1-3 (-> this level s5-0)))
@@ -812,7 +813,7 @@
;; definition for method 14 of type level-group
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw-actors level-group ((this level-group) (arg0 symbol))
(defmethod debug-draw-actors ((this level-group) (arg0 symbol))
(local-vars
(sv-48 (function symbol bucket-id string vector font-color vector2h symbol))
(sv-64 symbol)
@@ -1209,13 +1210,13 @@
)
;; definition for method 22 of type entity-camera
(defmethod birth! entity-camera ((this entity-camera))
(defmethod birth! ((this entity-camera))
(add-connection *camera-engine* *camera* nothing this #f #f)
this
)
;; definition for method 23 of type entity-camera
(defmethod kill! entity-camera ((this entity-camera))
(defmethod kill! ((this entity-camera))
(remove-by-param1 *camera-engine* this)
this
)
@@ -1236,7 +1237,7 @@
)
;; definition for method 22 of type entity-actor
(defmethod birth! entity-actor ((this entity-actor))
(defmethod birth! ((this entity-actor))
(let* ((entity-type (-> this etype))
(info (entity-info-lookup entity-type))
(entity-process (get-process *default-dead-pool* entity-type (if info
@@ -1280,7 +1281,7 @@
)
;; definition for method 23 of type entity-actor
(defmethod kill! entity-actor ((this entity-actor))
(defmethod kill! ((this entity-actor))
(let ((a0-1 (-> this extra process)))
(if a0-1
(deactivate a0-1)
@@ -1294,7 +1295,7 @@
;; INFO: Return type mismatch bsp-header vs none.
;; ERROR: Unsupported inline assembly instruction kind - [mfc0 s5, Count]
;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count]
(defmethod birth bsp-header ((this bsp-header))
(defmethod birth ((this bsp-header))
(local-vars (v1-71 int) (s5-0 int))
(.mfc0 s5-0 Count)
(let ((actor-count (if (nonzero? (-> this actors))
@@ -1381,7 +1382,7 @@
;; definition for method 19 of type bsp-header
;; INFO: Return type mismatch bsp-header vs none.
(defmethod deactivate-entities bsp-header ((this bsp-header))
(defmethod deactivate-entities ((this bsp-header))
(let ((s5-0 (-> this actors)))
(when (nonzero? s5-0)
(dotimes (s4-0 (-> s5-0 length))
@@ -1479,7 +1480,7 @@
)
;; definition for method 9 of type entity-perm
(defmethod update-perm! entity-perm ((this entity-perm) (arg0 symbol) (arg1 entity-perm-status))
(defmethod update-perm! ((this entity-perm) (arg0 symbol) (arg1 entity-perm-status))
(cond
((= arg0 'game)
(logclear! (-> this status) arg1)
@@ -1592,7 +1593,7 @@
)
;; definition for method 12 of type process-drawable
(defmethod run-logic? process-drawable ((this process-drawable))
(defmethod run-logic? ((this process-drawable))
(or (not (logtest? (-> this mask) (process-mask actor-pause)))
(or (>= (+ (-> *ACTOR-bank* pause-dist) (-> this root pause-adjust-distance))
(vector-vector-distance (-> this root trans) (math-camera-pos))
@@ -1604,7 +1605,7 @@
)
;; definition for method 9 of type entity-links
(defmethod birth? entity-links ((this entity-links) (arg0 vector))
(defmethod birth? ((this entity-links) (arg0 vector))
(and (not (logtest? (-> this perm status) (entity-perm-status bit-0 dead)))
(< (vector-vector-distance (-> this trans) arg0) (-> *ACTOR-bank* birth-dist))
)
@@ -1613,7 +1614,7 @@
;; definition for method 15 of type level-group
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs object.
(defmethod actors-update level-group ((this level-group))
(defmethod actors-update ((this level-group))
(local-vars (sv-16 vector) (sv-24 int) (sv-32 entity-links) (sv-48 int) (sv-64 string) (sv-80 int))
(when *compact-actors*
(if (and (= *compact-actors* 'debug) (= (-> *nk-dead-pool* alive-list prev) (-> *nk-dead-pool* first-gap)))
@@ -1843,7 +1844,7 @@
;; definition for method 30 of type entity-actor
;; INFO: Return type mismatch entity-perm-status vs none.
(defmethod set-or-clear-status! entity-actor ((this entity-actor) (arg0 entity-perm-status) (arg1 symbol))
(defmethod set-or-clear-status! ((this entity-actor) (arg0 entity-perm-status) (arg1 symbol))
(let ((v1-0 (-> this extra)))
(if arg1
(logior! (-> v1-0 perm status) arg0)
+27 -27
View File
@@ -2,7 +2,7 @@
(in-package goal)
;; definition for method 7 of type process
(defmethod relocate process ((this process) (arg0 int))
(defmethod relocate ((this process) (arg0 int))
(let ((v1-0 *kernel-context*))
(set! (-> v1-0 relocating-process) this)
(set! (-> v1-0 relocating-min) (the-as int (&-> this type)))
@@ -89,14 +89,14 @@
)
;; definition for method 7 of type cpu-thread
(defmethod relocate cpu-thread ((this cpu-thread) (arg0 int))
(defmethod relocate ((this cpu-thread) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type process-drawable
;; INFO: Return type mismatch process vs process-drawable.
(defmethod relocate process-drawable ((this process-drawable) (arg0 int))
(defmethod relocate ((this process-drawable) (arg0 int))
(let ((v1-0 *kernel-context*))
(set! (-> v1-0 relocating-process) this)
(set! (-> v1-0 relocating-min) (the-as int (&-> this type)))
@@ -148,7 +148,7 @@
)
;; definition for method 7 of type collide-shape
(defmethod relocate collide-shape ((this collide-shape) (arg0 int))
(defmethod relocate ((this collide-shape) (arg0 int))
(&+! (-> this process) arg0)
(&+! (-> this root-prim) arg0)
(if (-> this riders)
@@ -159,7 +159,7 @@
;; definition for method 7 of type collide-shape-moving
;; INFO: Return type mismatch collide-shape vs collide-shape-moving.
(defmethod relocate collide-shape-moving ((this collide-shape-moving) (arg0 int))
(defmethod relocate ((this collide-shape-moving) (arg0 int))
(if (-> this dynam)
(&+! (-> this dynam) arg0)
)
@@ -167,7 +167,7 @@
)
;; definition for method 7 of type collide-sticky-rider-group
(defmethod relocate collide-sticky-rider-group ((this collide-sticky-rider-group) (arg0 int))
(defmethod relocate ((this collide-sticky-rider-group) (arg0 int))
(countdown (v1-0 (-> this num-riders))
(let ((a2-2 (-> this rider v1-0)))
(if (-> a2-2 sticky-prim)
@@ -179,13 +179,13 @@
)
;; definition for method 7 of type collide-shape-prim
(defmethod relocate collide-shape-prim ((this collide-shape-prim) (arg0 int))
(defmethod relocate ((this collide-shape-prim) (arg0 int))
(&+! (-> this cshape) arg0)
this
)
;; definition for method 7 of type collide-shape-prim-group
(defmethod relocate collide-shape-prim-group ((this collide-shape-prim-group) (arg0 int))
(defmethod relocate ((this collide-shape-prim-group) (arg0 int))
(&+! (-> this cshape) arg0)
(countdown (v1-2 (-> this num-prims))
(&+! (-> this prims v1-2) arg0)
@@ -194,13 +194,13 @@
)
;; definition for method 7 of type fact-info
(defmethod relocate fact-info ((this fact-info) (arg0 int))
(defmethod relocate ((this fact-info) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type draw-control
(defmethod relocate draw-control ((this draw-control) (arg0 int))
(defmethod relocate ((this draw-control) (arg0 int))
(&+! (-> this skeleton) arg0)
(&+! (-> this process) arg0)
(when (-> this ripple)
@@ -220,7 +220,7 @@
)
;; definition for method 7 of type joint-control
(defmethod relocate joint-control ((this joint-control) (arg0 int))
(defmethod relocate ((this joint-control) (arg0 int))
(if (-> this effect)
(&+! (-> this effect) arg0)
)
@@ -232,7 +232,7 @@
)
;; definition for method 7 of type cspace-array
(defmethod relocate cspace-array ((this cspace-array) (arg0 int))
(defmethod relocate ((this cspace-array) (arg0 int))
(countdown (v1-0 (-> this length))
(let ((a2-2 (-> this data v1-0)))
(if (-> a2-2 parent)
@@ -259,63 +259,63 @@
)
;; definition for method 7 of type nav-control
(defmethod relocate nav-control ((this nav-control) (arg0 int))
(defmethod relocate ((this nav-control) (arg0 int))
(&+! (-> this process) arg0)
(&+! (-> this shape) arg0)
this
)
;; definition for method 7 of type path-control
(defmethod relocate path-control ((this path-control) (arg0 int))
(defmethod relocate ((this path-control) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type vol-control
(defmethod relocate vol-control ((this vol-control) (arg0 int))
(defmethod relocate ((this vol-control) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type water-control
(defmethod relocate water-control ((this water-control) (arg0 int))
(defmethod relocate ((this water-control) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type actor-link-info
(defmethod relocate actor-link-info ((this actor-link-info) (arg0 int))
(defmethod relocate ((this actor-link-info) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type align-control
(defmethod relocate align-control ((this align-control) (arg0 int))
(defmethod relocate ((this align-control) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type joint-mod
(defmethod relocate joint-mod ((this joint-mod) (arg0 int))
(defmethod relocate ((this joint-mod) (arg0 int))
(&+! (-> this process) arg0)
(&+! (-> this joint) arg0)
this
)
;; definition for method 7 of type joint-mod-wheel
(defmethod relocate joint-mod-wheel ((this joint-mod-wheel) (arg0 int))
(defmethod relocate ((this joint-mod-wheel) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type effect-control
(defmethod relocate effect-control ((this effect-control) (arg0 int))
(defmethod relocate ((this effect-control) (arg0 int))
(&+! (-> this process) arg0)
this
)
;; definition for method 7 of type sparticle-launch-control
(defmethod relocate sparticle-launch-control ((this sparticle-launch-control) (arg0 int))
(defmethod relocate ((this sparticle-launch-control) (arg0 int))
(&+! (-> this proc) arg0)
(countdown (v1-2 (-> this length))
(let* ((a0-3 (-> this data v1-2))
@@ -348,7 +348,7 @@
;; definition for method 7 of type camera-master
;; INFO: Return type mismatch process vs camera-master.
(defmethod relocate camera-master ((this camera-master) (arg0 int))
(defmethod relocate ((this camera-master) (arg0 int))
(if (nonzero? (-> this water-drip))
(&+! (-> this water-drip) arg0)
)
@@ -357,7 +357,7 @@
;; definition for method 7 of type time-of-day-proc
;; INFO: Return type mismatch process vs time-of-day-proc.
(defmethod relocate time-of-day-proc ((this time-of-day-proc) (arg0 int))
(defmethod relocate ((this time-of-day-proc) (arg0 int))
(if (nonzero? (-> this stars))
(&+! (-> this stars) arg0)
)
@@ -375,7 +375,7 @@
;; definition for method 7 of type swingpole
;; INFO: Return type mismatch process vs swingpole.
(defmethod relocate swingpole ((this swingpole) (arg0 int))
(defmethod relocate ((this swingpole) (arg0 int))
(if (nonzero? (-> this root))
(&+! (-> this root) arg0)
)
@@ -384,7 +384,7 @@
;; definition for method 7 of type part-tracker
;; INFO: Return type mismatch process vs part-tracker.
(defmethod relocate part-tracker ((this part-tracker) (arg0 int))
(defmethod relocate ((this part-tracker) (arg0 int))
(if (nonzero? (-> this root))
(&+! (-> this root) arg0)
)
@@ -396,7 +396,7 @@
;; definition for method 7 of type manipy
;; INFO: Return type mismatch process-drawable vs manipy.
(defmethod relocate manipy ((this manipy) (arg0 int))
(defmethod relocate ((this manipy) (arg0 int))
(if (nonzero? (-> this joint 0))
(&+! (-> this joint 0) arg0)
)
+22 -28
View File
@@ -10,45 +10,39 @@
(elt-count uint32 :offset 112 :size 15)
(inlined? uint8 :offset 127 :size 1)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition of type res-lump
(deftype res-lump (basic)
((length int32 :offset-assert 4)
(allocated-length int32 :offset-assert 8)
(data-base pointer :offset-assert 12)
(data-top pointer :offset-assert 16)
(data-size int32 :offset-assert 20)
(extra entity-links :offset-assert 24)
(tag (pointer res-tag) :offset-assert 28)
((length int32)
(allocated-length int32)
(data-base pointer)
(data-top pointer)
(data-size int32)
(extra entity-links)
(tag (pointer res-tag))
)
:method-count-assert 22
:size-assert #x20
:flag-assert #x1600000020
(:methods
(new (symbol type int int) _type_ 0)
(get-property-data (_type_ symbol symbol float pointer (pointer res-tag) pointer) pointer :no-virtual 9)
(get-property-struct (_type_ symbol symbol float structure (pointer res-tag) pointer) structure :no-virtual 10)
(get-property-value (_type_ symbol symbol float uint128 (pointer res-tag) pointer) uint128 :no-virtual 11)
(get-property-value-float (_type_ symbol symbol float float (pointer res-tag) pointer) float :no-virtual 12)
(get-tag-index-data (_type_ int) pointer 13)
(get-tag-data (_type_ res-tag) pointer 14)
(allocate-data-memory-for-tag! (_type_ res-tag) res-tag 15)
(sort! (_type_) _type_ 16)
(add-data! (_type_ res-tag pointer) res-lump 17)
(add-32bit-data! (_type_ res-tag object) res-lump 18)
(lookup-tag-idx (_type_ symbol symbol float) res-tag-pair :no-virtual 19)
(make-property-data (_type_ float res-tag-pair pointer) pointer 20)
(get-curve-data! (_type_ curve symbol symbol float) symbol 21)
(new (symbol type int int) _type_)
(get-property-data (_type_ symbol symbol float pointer (pointer res-tag) pointer) pointer :no-virtual)
(get-property-struct (_type_ symbol symbol float structure (pointer res-tag) pointer) structure :no-virtual)
(get-property-value (_type_ symbol symbol float uint128 (pointer res-tag) pointer) uint128 :no-virtual)
(get-property-value-float (_type_ symbol symbol float float (pointer res-tag) pointer) float :no-virtual)
(get-tag-index-data (_type_ int) pointer)
(get-tag-data (_type_ res-tag) pointer)
(allocate-data-memory-for-tag! (_type_ res-tag) res-tag)
(sort! (_type_) _type_)
(add-data! (_type_ res-tag pointer) res-lump)
(add-32bit-data! (_type_ res-tag object) res-lump)
(lookup-tag-idx (_type_ symbol symbol float) res-tag-pair :no-virtual)
(make-property-data (_type_ float res-tag-pair pointer) pointer)
(get-curve-data! (_type_ curve symbol symbol float) symbol)
)
)
;; definition for method 3 of type res-lump
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect res-lump ((this res-lump))
(defmethod inspect ((this res-lump))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlength: ~D~%" (-> this length))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
+47 -47
View File
@@ -2,7 +2,7 @@
(in-package goal)
;; definition for method 2 of type res-tag
(defmethod print res-tag ((this res-tag))
(defmethod print ((this res-tag))
(if (zero? (-> this inlined?))
(format
#t
@@ -26,7 +26,7 @@
;; definition for method 4 of type res-tag
;; INFO: Return type mismatch uint vs int.
(defmethod length res-tag ((this res-tag))
(defmethod length ((this res-tag))
(the-as int (if (zero? (-> this inlined?))
(* (-> this elt-count) 4)
(* (-> this elt-count) (-> this elt-type size))
@@ -36,12 +36,12 @@
;; definition for method 13 of type res-lump
;; INFO: Used lq/sq
(defmethod get-tag-index-data res-lump ((this res-lump) (arg0 int))
(defmethod get-tag-index-data ((this res-lump) (arg0 int))
(&+ (-> this data-base) (-> this tag arg0 data-offset))
)
;; definition for method 14 of type res-lump
(defmethod get-tag-data res-lump ((this res-lump) (arg0 res-tag))
(defmethod get-tag-data ((this res-lump) (arg0 res-tag))
(&+ (-> this data-base) (-> arg0 data-offset))
)
@@ -64,20 +64,20 @@
)
;; definition for method 4 of type res-lump
(defmethod length res-lump ((this res-lump))
(defmethod length ((this res-lump))
(-> this length)
)
;; definition for method 5 of type res-lump
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of res-lump ((this res-lump))
(defmethod asize-of ((this res-lump))
(the-as int (+ (-> this type psize) (* (-> this allocated-length) 16) (-> this data-size)))
)
;; definition for method 3 of type res-lump
;; INFO: this function exists in multiple non-identical object files
;; INFO: Used lq/sq
(defmethod inspect res-lump ((this res-lump))
(defmethod inspect ((this res-lump))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Textra: ~A~%" (-> this extra))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -119,7 +119,7 @@
;; definition for method 19 of type res-lump
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs res-tag-pair.
(defmethod lookup-tag-idx res-lump ((this res-lump) (name-sym symbol) (mode symbol) (time float))
(defmethod lookup-tag-idx ((this res-lump) (name-sym symbol) (mode symbol) (time float))
(local-vars (tag-idx int))
(when (or (= name-sym 'id)
(= name-sym 'aid)
@@ -219,7 +219,7 @@
;; definition for method 20 of type res-lump
;; INFO: Used lq/sq
(defmethod make-property-data res-lump ((this res-lump) (time float) (result res-tag-pair) (buf pointer))
(defmethod make-property-data ((this res-lump) (time float) (result res-tag-pair) (buf pointer))
(rlet ((vf1 :class vf)
(vf2 :class vf)
(vf3 :class vf)
@@ -401,14 +401,14 @@
;; definition for method 9 of type res-lump
;; INFO: Used lq/sq
(defmethod get-property-data res-lump ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default pointer)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(defmethod get-property-data ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default pointer)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(let ((tag-pair (lookup-tag-idx this name mode time)))
(cond
((< (the-as int tag-pair) 0)
@@ -428,14 +428,14 @@
;; definition for method 10 of type res-lump
;; INFO: Used lq/sq
;; INFO: Return type mismatch object vs structure.
(defmethod get-property-struct res-lump ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default structure)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(defmethod get-property-struct ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default structure)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(let ((tag-pair (lookup-tag-idx this name mode time)))
(cond
((< (the-as int tag-pair) 0)
@@ -461,14 +461,14 @@
;; definition for method 11 of type res-lump
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs uint128.
(defmethod get-property-value res-lump ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default uint128)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(defmethod get-property-value ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default uint128)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(let ((tag-pair (lookup-tag-idx this name mode time)))
(cond
((< (the-as int tag-pair) 0)
@@ -538,14 +538,14 @@
;; definition for method 12 of type res-lump
;; INFO: Used lq/sq
(defmethod get-property-value-float res-lump ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default float)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(defmethod get-property-value-float ((this res-lump)
(name symbol)
(mode symbol)
(time float)
(default float)
(tag-addr (pointer res-tag))
(buf-addr pointer)
)
(local-vars (v1-8 uint) (v1-11 int))
(let ((tag-pair (lookup-tag-idx this name mode time)))
(cond
@@ -618,7 +618,7 @@
;; definition for method 16 of type res-lump
;; INFO: Used lq/sq
(defmethod sort! res-lump ((this res-lump))
(defmethod sort! ((this res-lump))
(let ((tags-sorted -1))
(while (nonzero? tags-sorted)
(set! tags-sorted 0)
@@ -647,7 +647,7 @@
;; definition for method 15 of type res-lump
;; INFO: Used lq/sq
(defmethod allocate-data-memory-for-tag! res-lump ((this res-lump) (arg0 res-tag))
(defmethod allocate-data-memory-for-tag! ((this res-lump) (arg0 res-tag))
(local-vars (resource-mem pointer))
(let* ((tag-pair (lookup-tag-idx this (-> arg0 name) 'exact (-> arg0 key-frame)))
(existing-tag (-> this tag (-> tag-pair lo)))
@@ -711,7 +711,7 @@
)
;; definition for method 17 of type res-lump
(defmethod add-data! res-lump ((this res-lump) (arg0 res-tag) (arg1 pointer))
(defmethod add-data! ((this res-lump) (arg0 res-tag) (arg1 pointer))
(let ((new-tag (allocate-data-memory-for-tag! this arg0)))
(when new-tag
(let* ((v1-2 this)
@@ -736,7 +736,7 @@
)
;; definition for method 18 of type res-lump
(defmethod add-32bit-data! res-lump ((this res-lump) (arg0 res-tag) (arg1 object))
(defmethod add-32bit-data! ((this res-lump) (arg0 res-tag) (arg1 object))
(local-vars (sv-16 object))
(set! sv-16 arg1)
(let* ((v1-0 arg0)
@@ -748,7 +748,7 @@
;; definition for method 21 of type res-lump
;; INFO: Used lq/sq
(defmethod get-curve-data! res-lump ((this res-lump) (arg0 curve) (arg1 symbol) (arg2 symbol) (arg3 float))
(defmethod get-curve-data! ((this res-lump) (arg0 curve) (arg1 symbol) (arg2 symbol) (arg3 float))
(local-vars (sv-16 res-tag) (sv-32 res-tag))
(let ((s5-0 #f))
(set! sv-16 (new 'static 'res-tag))
@@ -803,7 +803,7 @@
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs res-lump.
;; ERROR: Failed load: (set! v1-72 (l.wu (+ a0-58 -4))) at op 206
(defmethod mem-usage res-lump ((this res-lump) (block memory-usage-block) (flags int))
(defmethod mem-usage ((this res-lump) (block memory-usage-block) (flags int))
(local-vars (sv-16 int))
(let ((mem-use-id 48)
(mem-use-name "res")
+17 -20
View File
@@ -3,31 +3,28 @@
;; definition of type effect-control
(deftype effect-control (basic)
((process process-drawable :offset-assert 4)
(flags uint32 :offset-assert 8)
(last-frame-group art-joint-anim :offset-assert 12)
(last-frame-num float :offset-assert 16)
(channel-offset int32 :offset-assert 20)
(res res-lump :offset-assert 24)
(name (pointer res-tag) :offset-assert 28)
(param uint32 :offset-assert 32)
((process process-drawable)
(flags uint32)
(last-frame-group art-joint-anim)
(last-frame-num float)
(channel-offset int32)
(res res-lump)
(name (pointer res-tag))
(param uint32)
)
:method-count-assert 15
:size-assert #x24
:flag-assert #xf00000024
(:methods
(new (symbol type process-drawable) _type_ 0)
(effect-control-method-9 (_type_) none 9)
(effect-control-method-10 (_type_ symbol float int) object 10)
(effect-control-method-11 (_type_ symbol float int basic pat-surface) none 11)
(effect-control-method-12 (_type_ symbol float int basic sound-name) int 12)
(set-channel-offset! (_type_ int) none 13)
(effect-control-method-14 (_type_ float float float) none 14)
(new (symbol type process-drawable) _type_)
(effect-control-method-9 (_type_) none)
(effect-control-method-10 (_type_ symbol float int) object)
(effect-control-method-11 (_type_ symbol float int basic pat-surface) none)
(effect-control-method-12 (_type_ symbol float int basic sound-name) int)
(set-channel-offset! (_type_ int) none)
(effect-control-method-14 (_type_ float float float) none)
)
)
;; definition for method 3 of type effect-control
(defmethod inspect effect-control ((this effect-control))
(defmethod inspect ((this effect-control))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tprocess: ~A~%" (-> this process))
(format #t "~Tflags: #x~X~%" (-> this flags))
@@ -58,7 +55,7 @@
;; definition for method 13 of type effect-control
;; INFO: Return type mismatch int vs none.
(defmethod set-channel-offset! effect-control ((this effect-control) (arg0 int))
(defmethod set-channel-offset! ((this effect-control) (arg0 int))
(set! (-> this channel-offset) arg0)
0
(none)
+5 -5
View File
@@ -130,7 +130,7 @@
;; definition for method 9 of type effect-control
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod effect-control-method-9 effect-control ((this effect-control))
(defmethod effect-control-method-9 ((this effect-control))
(let* ((a0-1 (-> this process skel))
(v1-3 (if (< (-> this channel-offset) (-> a0-1 active-channels))
(-> a0-1 root-channel (-> this channel-offset))
@@ -234,7 +234,7 @@
;; definition for method 14 of type effect-control
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod effect-control-method-14 effect-control ((this effect-control) (arg0 float) (arg1 float) (arg2 float))
(defmethod effect-control-method-14 ((this effect-control) (arg0 float) (arg1 float) (arg2 float))
(let ((s2-0 (-> this name)))
(while (= (-> s2-0 0 name) 'effect-name)
(let ((f0-0 (-> s2-0 0 key-frame)))
@@ -263,7 +263,7 @@
;; definition for method 10 of type effect-control
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs object.
(defmethod effect-control-method-10 effect-control ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int))
(defmethod effect-control-method-10 ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int))
(local-vars
(sv-160 int)
(sv-176 symbol)
@@ -536,7 +536,7 @@
;; definition for method 11 of type effect-control
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod effect-control-method-11 effect-control ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 pat-surface))
(defmethod effect-control-method-11 ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 pat-surface))
(local-vars
(sv-48
(function sparticle-system sparticle-launcher vector sparticle-launch-state sparticle-launch-control float none)
@@ -1057,7 +1057,7 @@
;; definition for method 12 of type effect-control
;; INFO: Used lq/sq
(defmethod effect-control-method-12 effect-control ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 sound-name))
(defmethod effect-control-method-12 ((this effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 sound-name))
(local-vars (sv-112 res-tag) (sv-128 sound-name) (sv-144 basic) (sv-160 (function vector vector float)))
(set! sv-144 arg3)
(let ((s0-0 arg4)
+56 -68
View File
@@ -3,29 +3,26 @@
;; definition of type fact-bank
(deftype fact-bank (basic)
((eco-level-max float :offset-assert 4)
(eco-single-inc float :offset-assert 8)
(eco-full-inc float :offset-assert 12)
(eco-single-timeout seconds :offset-assert 16)
(eco-full-timeout seconds :offset-assert 24)
(dummy seconds :offset-assert 32)
(health-max-default float :offset-assert 40)
(health-single-inc float :offset-assert 44)
(eco-pill-max-default float :offset-assert 48)
(health-small-inc float :offset-assert 52)
(buzzer-max-default float :offset-assert 56)
(buzzer-single-inc float :offset-assert 60)
(suck-bounce-dist meters :offset-assert 64)
(suck-suck-dist meters :offset-assert 68)
(default-pill-inc float :offset-assert 72)
((eco-level-max float)
(eco-single-inc float)
(eco-full-inc float)
(eco-single-timeout seconds)
(eco-full-timeout seconds)
(dummy seconds)
(health-max-default float)
(health-single-inc float)
(eco-pill-max-default float)
(health-small-inc float)
(buzzer-max-default float)
(buzzer-single-inc float)
(suck-bounce-dist meters)
(suck-suck-dist meters)
(default-pill-inc float)
)
:method-count-assert 9
:size-assert #x4c
:flag-assert #x90000004c
)
;; definition for method 3 of type fact-bank
(defmethod inspect fact-bank ((this fact-bank))
(defmethod inspect ((this fact-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Teco-level-max: ~f~%" (-> this eco-level-max))
(format #t "~Teco-single-inc: ~f~%" (-> this eco-single-inc))
@@ -105,26 +102,23 @@
;; definition of type fact-info
(deftype fact-info (basic)
((process process-drawable :offset-assert 4)
(pickup-type pickup-type :offset-assert 8)
(pickup-amount float :offset-assert 12)
(pickup-spawn-amount float :offset-assert 16)
(options fact-options :offset-assert 24)
(fade-time time-frame :offset-assert 32)
((process process-drawable)
(pickup-type pickup-type)
(pickup-amount float)
(pickup-spawn-amount float)
(options fact-options)
(fade-time time-frame)
)
:method-count-assert 12
:size-assert #x28
:flag-assert #xc00000028
(:methods
(new (symbol type process-drawable pickup-type float) _type_ 0)
(drop-pickup (_type_ symbol process-tree fact-info int) (pointer process) 9)
(reset! (_type_ symbol) none 10)
(pickup-collectable! (_type_ pickup-type float handle) float 11)
(new (symbol type process-drawable pickup-type float) _type_)
(drop-pickup (_type_ symbol process-tree fact-info int) (pointer process))
(reset! (_type_ symbol) none)
(pickup-collectable! (_type_ pickup-type float handle) float)
)
)
;; definition for method 3 of type fact-info
(defmethod inspect fact-info ((this fact-info))
(defmethod inspect ((this fact-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tprocess: ~A~%" (-> this process))
(format #t "~Tpickup-type: ~D~%" (-> this pickup-type))
@@ -137,34 +131,31 @@
;; definition of type fact-info-target
(deftype fact-info-target (fact-info)
((eco-type pickup-type :offset-assert 40)
(eco-level float :offset-assert 44)
(eco-pickup-time time-frame :offset-assert 48)
(eco-timeout seconds :offset-assert 56)
(health float :offset-assert 64)
(health-max float :offset-assert 68)
(buzzer float :offset-assert 72)
(buzzer-max float :offset-assert 76)
(eco-pill float :offset-assert 80)
(eco-pill-max float :offset-assert 84)
(health-pickup-time time-frame :offset-assert 88)
(eco-source handle :offset-assert 96)
(eco-source-time time-frame :offset-assert 104)
(money-pickup-time time-frame :offset-assert 112)
(buzzer-pickup-time time-frame :offset-assert 120)
(fuel-cell-pickup-time time-frame :offset-assert 128)
(eco-pill-pickup-time time-frame :offset-assert 136)
((eco-type pickup-type)
(eco-level float)
(eco-pickup-time time-frame)
(eco-timeout seconds)
(health float)
(health-max float)
(buzzer float)
(buzzer-max float)
(eco-pill float)
(eco-pill-max float)
(health-pickup-time time-frame)
(eco-source handle)
(eco-source-time time-frame)
(money-pickup-time time-frame)
(buzzer-pickup-time time-frame)
(fuel-cell-pickup-time time-frame)
(eco-pill-pickup-time time-frame)
)
:method-count-assert 12
:size-assert #x90
:flag-assert #xc00000090
(:methods
(new (symbol type process-drawable pickup-type float) _type_ 0)
(new (symbol type process-drawable pickup-type float) _type_)
)
)
;; definition for method 3 of type fact-info-target
(defmethod inspect fact-info-target ((this fact-info-target))
(defmethod inspect ((this fact-info-target))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tprocess: ~A~%" (-> this process))
(format #t "~Tpickup-type: ~D~%" (-> this pickup-type))
@@ -194,24 +185,21 @@
;; definition of type fact-info-enemy
(deftype fact-info-enemy (fact-info)
((speed float :offset-assert 40)
(idle-distance meters :offset-assert 44)
(notice-top meters :offset-assert 48)
(notice-bottom meters :offset-assert 52)
(cam-horz meters :offset-assert 56)
(cam-vert meters :offset-assert 60)
(cam-notice-dist meters :offset-assert 64)
((speed float)
(idle-distance meters)
(notice-top meters)
(notice-bottom meters)
(cam-horz meters)
(cam-vert meters)
(cam-notice-dist meters)
)
:method-count-assert 12
:size-assert #x44
:flag-assert #xc00000044
(:methods
(new (symbol type process-drawable pickup-type float) _type_ 0)
(new (symbol type process-drawable pickup-type float) _type_)
)
)
;; definition for method 3 of type fact-info-enemy
(defmethod inspect fact-info-enemy ((this fact-info-enemy))
(defmethod inspect ((this fact-info-enemy))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tprocess: ~A~%" (-> this process))
(format #t "~Tpickup-type: ~D~%" (-> this pickup-type))
@@ -277,7 +265,7 @@
)
;; definition for method 11 of type fact-info
(defmethod pickup-collectable! fact-info ((this fact-info) (arg0 pickup-type) (arg1 float) (arg2 handle))
(defmethod pickup-collectable! ((this fact-info) (arg0 pickup-type) (arg1 float) (arg2 handle))
0.0
)
+87 -101
View File
@@ -3,33 +3,29 @@
;; definition of type process-drawable
(deftype process-drawable (process)
((root trsqv :offset-assert 112)
(node-list cspace-array :offset-assert 116)
(draw draw-control :offset-assert 120)
(skel joint-control :offset-assert 124)
(nav nav-control :offset-assert 128)
(align align-control :offset-assert 132)
(path path-control :offset-assert 136)
(vol vol-control :offset-assert 140)
(fact fact-info :offset-assert 144)
(link actor-link-info :offset-assert 148)
(part sparticle-launch-control :offset-assert 152)
(water water-control :offset-assert 156)
(sound ambient-sound :offset-assert 160)
(state-flags state-flags :offset-assert 164)
(state-time time-frame :offset-assert 168)
((root trsqv)
(node-list cspace-array)
(draw draw-control)
(skel joint-control)
(nav nav-control)
(align align-control)
(path path-control)
(vol vol-control)
(fact fact-info)
(link actor-link-info)
(part sparticle-launch-control)
(water water-control)
(sound ambient-sound)
(state-flags state-flags)
(state-time time-frame)
)
:heap-base #x40
:method-count-assert 20
:size-assert #xb0
:flag-assert #x14004000b0
(:methods
(initialize-skeleton (_type_ skeleton-group pair) none 14)
(initialize-skeleton-by-name (_type_ string object) _type_ 15)
(apply-alignment (_type_ align-opts transformq vector) collide-shape 16)
(do-joint-math! (_type_) none 17)
(cleanup-for-death (_type_) none 18)
(evaluate-joint-control (_type_) none 19)
(initialize-skeleton (_type_ skeleton-group pair) none)
(initialize-skeleton-by-name (_type_ string object) _type_)
(apply-alignment (_type_ align-opts transformq vector) collide-shape)
(do-joint-math! (_type_) none)
(cleanup-for-death (_type_) none)
(evaluate-joint-control (_type_) none)
)
(:states
(process-drawable-art-error string)
@@ -38,7 +34,7 @@
)
;; definition for method 3 of type process-drawable
(defmethod inspect process-drawable ((this process-drawable))
(defmethod inspect ((this process-drawable))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -63,59 +59,55 @@
;; definition of type process-drawable-reserved
(deftype process-drawable-reserved (process-drawable)
()
:heap-base #x40
:method-count-assert 63
:size-assert #xb0
:flag-assert #x3f004000b0
(:methods
(process-drawable-reserved-method-20 () none 20)
(process-drawable-reserved-method-21 () none 21)
(process-drawable-reserved-method-22 () none 22)
(process-drawable-reserved-method-23 () none 23)
(process-drawable-reserved-method-24 () none 24)
(process-drawable-reserved-method-25 () none 25)
(process-drawable-reserved-method-26 () none 26)
(process-drawable-reserved-method-27 () none 27)
(process-drawable-reserved-method-28 () none 28)
(process-drawable-reserved-method-29 () none 29)
(process-drawable-reserved-method-30 () none 30)
(process-drawable-reserved-method-31 () none 31)
(process-drawable-reserved-method-32 () none 32)
(process-drawable-reserved-method-33 () none 33)
(process-drawable-reserved-method-34 () none 34)
(process-drawable-reserved-method-35 () none 35)
(process-drawable-reserved-method-36 () none 36)
(process-drawable-reserved-method-37 () none 37)
(process-drawable-reserved-method-38 () none 38)
(process-drawable-reserved-method-39 () none 39)
(process-drawable-reserved-method-40 () none 40)
(process-drawable-reserved-method-41 () none 41)
(process-drawable-reserved-method-42 () none 42)
(process-drawable-reserved-method-43 () none 43)
(process-drawable-reserved-method-44 () none 44)
(process-drawable-reserved-method-45 () none 45)
(process-drawable-reserved-method-46 () none 46)
(process-drawable-reserved-method-47 () none 47)
(process-drawable-reserved-method-48 () none 48)
(process-drawable-reserved-method-49 () none 49)
(process-drawable-reserved-method-50 () none 50)
(process-drawable-reserved-method-51 () none 51)
(process-drawable-reserved-method-52 () none 52)
(process-drawable-reserved-method-53 () none 53)
(process-drawable-reserved-method-54 () none 54)
(process-drawable-reserved-method-55 () none 55)
(process-drawable-reserved-method-56 () none 56)
(process-drawable-reserved-method-57 () none 57)
(process-drawable-reserved-method-58 () none 58)
(process-drawable-reserved-method-59 () none 59)
(process-drawable-reserved-method-60 () none 60)
(process-drawable-reserved-method-61 () none 61)
(process-drawable-reserved-method-62 () none 62)
(process-drawable-reserved-method-20 () none)
(process-drawable-reserved-method-21 () none)
(process-drawable-reserved-method-22 () none)
(process-drawable-reserved-method-23 () none)
(process-drawable-reserved-method-24 () none)
(process-drawable-reserved-method-25 () none)
(process-drawable-reserved-method-26 () none)
(process-drawable-reserved-method-27 () none)
(process-drawable-reserved-method-28 () none)
(process-drawable-reserved-method-29 () none)
(process-drawable-reserved-method-30 () none)
(process-drawable-reserved-method-31 () none)
(process-drawable-reserved-method-32 () none)
(process-drawable-reserved-method-33 () none)
(process-drawable-reserved-method-34 () none)
(process-drawable-reserved-method-35 () none)
(process-drawable-reserved-method-36 () none)
(process-drawable-reserved-method-37 () none)
(process-drawable-reserved-method-38 () none)
(process-drawable-reserved-method-39 () none)
(process-drawable-reserved-method-40 () none)
(process-drawable-reserved-method-41 () none)
(process-drawable-reserved-method-42 () none)
(process-drawable-reserved-method-43 () none)
(process-drawable-reserved-method-44 () none)
(process-drawable-reserved-method-45 () none)
(process-drawable-reserved-method-46 () none)
(process-drawable-reserved-method-47 () none)
(process-drawable-reserved-method-48 () none)
(process-drawable-reserved-method-49 () none)
(process-drawable-reserved-method-50 () none)
(process-drawable-reserved-method-51 () none)
(process-drawable-reserved-method-52 () none)
(process-drawable-reserved-method-53 () none)
(process-drawable-reserved-method-54 () none)
(process-drawable-reserved-method-55 () none)
(process-drawable-reserved-method-56 () none)
(process-drawable-reserved-method-57 () none)
(process-drawable-reserved-method-58 () none)
(process-drawable-reserved-method-59 () none)
(process-drawable-reserved-method-60 () none)
(process-drawable-reserved-method-61 () none)
(process-drawable-reserved-method-62 () none)
)
)
;; definition for method 3 of type process-drawable-reserved
(defmethod inspect process-drawable-reserved ((this process-drawable-reserved))
(defmethod inspect ((this process-drawable-reserved))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
@@ -124,32 +116,29 @@
;; definition of type attack-info
(deftype attack-info (structure)
((trans vector :inline :offset-assert 0)
(vector vector :inline :offset-assert 16)
(intersection vector :inline :offset-assert 32)
(attacker handle :offset-assert 48)
(invinc-time time-frame :offset-assert 56)
(mask attack-mask :offset-assert 64)
(mode symbol :offset-assert 68)
(shove-back meters :offset-assert 72)
(shove-up meters :offset-assert 76)
(speed meters :offset-assert 80)
(dist meters :offset-assert 84)
(control float :offset-assert 88)
(angle symbol :offset-assert 92)
(rotate-to degrees :offset-assert 96)
(prev-state state :offset-assert 100)
((trans vector :inline)
(vector vector :inline)
(intersection vector :inline)
(attacker handle)
(invinc-time time-frame)
(mask attack-mask)
(mode symbol)
(shove-back meters)
(shove-up meters)
(speed meters)
(dist meters)
(control float)
(angle symbol)
(rotate-to degrees)
(prev-state state)
)
:method-count-assert 10
:size-assert #x68
:flag-assert #xa00000068
(:methods
(combine! (_type_ attack-info) none 9)
(combine! (_type_ attack-info) none)
)
)
;; definition for method 3 of type attack-info
(defmethod inspect attack-info ((this attack-info))
(defmethod inspect ((this attack-info))
(format #t "[~8x] ~A~%" this 'attack-info)
(format #t "~Ttrans: ~`vector`P~%" (-> this trans))
(format #t "~Tvector: ~`vector`P~%" (-> this vector))
@@ -174,17 +163,14 @@
;; definition of type ground-tween-info
(deftype ground-tween-info (structure)
((chan uint8 3 :offset-assert 0)
(blend float 3 :offset-assert 4)
(group uint32 5 :offset-assert 16)
((chan uint8 3)
(blend float 3)
(group uint32 5)
)
:method-count-assert 9
:size-assert #x24
:flag-assert #x900000024
)
;; definition for method 3 of type ground-tween-info
(defmethod inspect ground-tween-info ((this ground-tween-info))
(defmethod inspect ((this ground-tween-info))
(format #t "[~8x] ~A~%" this 'ground-tween-info)
(format #t "~Tchan[3] @ #x~X~%" (-> this chan))
(format #t "~Tblend[3] @ #x~X~%" (-> this blend))
+110 -128
View File
@@ -5,19 +5,16 @@
;; definition of type game-bank
(deftype game-bank (basic)
((life-max-default float :offset-assert 4)
(life-start-default float :offset-assert 8)
(life-single-inc float :offset-assert 12)
(money-task-inc float :offset-assert 16)
(money-oracle-inc float :offset-assert 20)
((life-max-default float)
(life-start-default float)
(life-single-inc float)
(money-task-inc float)
(money-oracle-inc float)
)
:method-count-assert 9
:size-assert #x18
:flag-assert #x900000018
)
;; definition for method 3 of type game-bank
(defmethod inspect game-bank ((this game-bank))
(defmethod inspect ((this game-bank))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tlife-max-default: ~f~%" (-> this life-max-default))
(format #t "~Tlife-start-default: ~f~%" (-> this life-start-default))
@@ -40,26 +37,20 @@
;; definition of type actor-id
(deftype actor-id (uint32)
()
:method-count-assert 9
:size-assert #x4
:flag-assert #x900000004
)
;; definition of type level-buffer-state
(deftype level-buffer-state (structure)
((name symbol :offset-assert 0)
(display? symbol :offset-assert 4)
(force-vis? symbol :offset-assert 8)
(force-inside? symbol :offset-assert 12)
((name symbol)
(display? symbol)
(force-vis? symbol)
(force-inside? symbol)
)
:pack-me
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type level-buffer-state
(defmethod inspect level-buffer-state ((this level-buffer-state))
(defmethod inspect ((this level-buffer-state))
(format #t "[~8x] ~A~%" this 'level-buffer-state)
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tdisplay?: ~A~%" (-> this display?))
@@ -70,34 +61,31 @@
;; definition of type load-state
(deftype load-state (basic)
((want level-buffer-state 2 :inline :offset-assert 4)
(vis-nick symbol :offset-assert 36)
(command-list pair :offset-assert 40)
(object-name symbol 256 :offset-assert 44)
(object-status basic 256 :offset-assert 1068)
((want level-buffer-state 2 :inline)
(vis-nick symbol)
(command-list pair)
(object-name symbol 256)
(object-status basic 256)
)
:method-count-assert 21
:size-assert #x82c
:flag-assert #x150000082c
(:methods
(new (symbol type) _type_ 0)
(reset! (_type_) _type_ 9)
(update! (_type_) int 10)
(want-levels (_type_ symbol symbol) int 11)
(want-display-level (_type_ symbol symbol) int 12)
(want-vis (_type_ symbol) int 13)
(want-force-vis (_type_ symbol symbol) int 14)
(execute-command (_type_ pair) none 15)
(execute-commands-up-to (_type_ float) int 16)
(backup-load-state-and-set-cmds (_type_ pair) int 17)
(restore-load-state-and-cleanup (_type_) int 18)
(restore-load-state (_type_) int 19)
(set-force-inside! (_type_ symbol symbol) none 20)
(new (symbol type) _type_)
(reset! (_type_) _type_)
(update! (_type_) int)
(want-levels (_type_ symbol symbol) int)
(want-display-level (_type_ symbol symbol) int)
(want-vis (_type_ symbol) int)
(want-force-vis (_type_ symbol symbol) int)
(execute-command (_type_ pair) none)
(execute-commands-up-to (_type_ float) int)
(backup-load-state-and-set-cmds (_type_ pair) int)
(restore-load-state-and-cleanup (_type_) int)
(restore-load-state (_type_) int)
(set-force-inside! (_type_ symbol symbol) none)
)
)
;; definition for method 3 of type load-state
(defmethod inspect load-state ((this load-state))
(defmethod inspect ((this load-state))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Twant[2] @ #x~X~%" (-> this want))
(format #t "~Tvis-nick: ~A~%" (-> this vis-nick))
@@ -114,30 +102,27 @@
;; definition of type continue-point
(deftype continue-point (basic)
((name string :offset-assert 4)
(level symbol :offset-assert 8)
(flags continue-flags :offset-assert 12)
(trans vector :inline :offset-assert 16)
(quat quaternion :inline :offset-assert 32)
(camera-trans vector :inline :offset-assert 48)
(camera-rot float 9 :offset-assert 64)
(load-commands pair :offset-assert 100)
(vis-nick symbol :offset-assert 104)
(lev0 symbol :offset-assert 108)
(disp0 symbol :offset-assert 112)
(lev1 symbol :offset-assert 116)
(disp1 symbol :offset-assert 120)
((name string)
(level symbol)
(flags continue-flags)
(trans vector :inline)
(quat quaternion :inline)
(camera-trans vector :inline)
(camera-rot float 9)
(load-commands pair)
(vis-nick symbol)
(lev0 symbol)
(disp0 symbol)
(lev1 symbol)
(disp1 symbol)
)
:method-count-assert 10
:size-assert #x7c
:flag-assert #xa0000007c
(:methods
(debug-draw! (_type_) none 9)
(debug-draw! (_type_) none)
)
)
;; definition for method 3 of type continue-point
(defmethod inspect continue-point ((this continue-point))
(defmethod inspect ((this continue-point))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tname: ~A~%" (-> this name))
(format #t "~Tlevel: ~A~%" (-> this level))
@@ -157,80 +142,77 @@
;; definition of type game-info
(deftype game-info (basic)
((mode symbol :offset-assert 4)
(save-name basic :offset-assert 8)
(life float :offset-assert 12)
(life-max float :offset-assert 16)
(money float :offset-assert 20)
(money-total float :offset-assert 24)
(money-per-level uint8 32 :offset-assert 28)
(deaths-per-level uint8 32 :offset-assert 60)
(buzzer-total float :offset-assert 92)
(fuel float :offset-assert 96)
(perm-list entity-perm-array :offset-assert 100)
(task-perm-list entity-perm-array :offset-assert 104)
(current-continue continue-point :offset-assert 108)
(text-ids-seen bit-array :offset-assert 112)
(level-opened uint8 32 :offset-assert 116)
(hint-control (array level-hint-control) :offset-assert 148)
(task-hint-control (array task-hint-control-group) :offset-assert 152)
(total-deaths int32 :offset-assert 156)
(continue-deaths int32 :offset-assert 160)
(fuel-cell-deaths int32 :offset-assert 164)
(game-start-time time-frame :offset-assert 168)
(continue-time time-frame :offset-assert 176)
(death-time time-frame :offset-assert 184)
(hit-time time-frame :offset-assert 192)
(fuel-cell-pickup-time time-frame :offset-assert 200)
(fuel-cell-time (array time-frame) :offset-assert 208)
(enter-level-time (array time-frame) :offset-assert 212)
(in-level-time (array time-frame) :offset-assert 216)
(blackout-time time-frame :offset-assert 224)
(letterbox-time time-frame :offset-assert 232)
(hint-play-time time-frame :offset-assert 240)
(display-text-time time-frame :offset-assert 248)
(display-text-handle handle :offset-assert 256)
(death-movie-tick int32 :offset-assert 264)
(want-auto-save symbol :offset-assert 268)
(auto-save-proc handle :offset-assert 272)
(auto-save-status mc-status-code :offset-assert 280)
(auto-save-card int32 :offset-assert 284)
(auto-save-which int32 :offset-assert 288)
(pov-camera-handle handle :offset-assert 296)
(other-camera-handle handle :offset-assert 304)
(death-pos vector-array :offset-assert 312)
(dummy basic :offset-assert 316)
(auto-save-count int32 :offset-assert 320)
((mode symbol)
(save-name basic)
(life float)
(life-max float)
(money float)
(money-total float)
(money-per-level uint8 32)
(deaths-per-level uint8 32)
(buzzer-total float)
(fuel float)
(perm-list entity-perm-array)
(task-perm-list entity-perm-array)
(current-continue continue-point)
(text-ids-seen bit-array)
(level-opened uint8 32)
(hint-control (array level-hint-control))
(task-hint-control (array task-hint-control-group))
(total-deaths int32)
(continue-deaths int32)
(fuel-cell-deaths int32)
(game-start-time time-frame)
(continue-time time-frame)
(death-time time-frame)
(hit-time time-frame)
(fuel-cell-pickup-time time-frame)
(fuel-cell-time (array time-frame))
(enter-level-time (array time-frame))
(in-level-time (array time-frame))
(blackout-time time-frame)
(letterbox-time time-frame)
(hint-play-time time-frame)
(display-text-time time-frame)
(display-text-handle handle)
(death-movie-tick int32)
(want-auto-save symbol)
(auto-save-proc handle)
(auto-save-status mc-status-code)
(auto-save-card int32)
(auto-save-which int32)
(pov-camera-handle handle)
(other-camera-handle handle)
(death-pos vector-array)
(dummy basic)
(auto-save-count int32)
)
:method-count-assert 29
:size-assert #x144
:flag-assert #x1d00000144
(:methods
(initialize! (_type_ symbol game-save string) _type_ 9)
(adjust (_type_ symbol float handle) float 10)
(task-complete? (_type_ game-task) symbol 11)
(lookup-entity-perm-by-aid (_type_ actor-id) entity-perm 12)
(get-entity-task-perm (_type_ game-task) entity-perm 13)
(copy-perms-from-level! (_type_ level) none 14)
(copy-perms-to-level! (_type_ level) none 15)
(debug-print (_type_ symbol) _type_ 16)
(get-or-create-continue! (_type_) continue-point 17)
(get-continue-by-name (_type_ string) continue-point 18)
(set-continue! (_type_ basic) continue-point 19)
(buzzer-count (_type_ game-task) int 20)
(seen-text? (_type_ text-id) symbol 21)
(mark-text-as-seen (_type_ text-id) none 22)
(got-buzzer? (_type_ game-task int) symbol 23)
(save-game! (_type_ game-save string) none 24)
(load-game! (_type_ game-save) game-save 25)
(clear-text-seen! (_type_ text-id) none 26)
(get-death-count (_type_ symbol) int 27)
(get-health-percent-lost (_type_ symbol) float 28)
(initialize! (_type_ symbol game-save string) _type_)
(adjust (_type_ symbol float handle) float)
(task-complete? (_type_ game-task) symbol)
(lookup-entity-perm-by-aid (_type_ actor-id) entity-perm)
(get-entity-task-perm (_type_ game-task) entity-perm)
(copy-perms-from-level! (_type_ level) none)
(copy-perms-to-level! (_type_ level) none)
(debug-print (_type_ symbol) _type_)
(get-or-create-continue! (_type_) continue-point)
(get-continue-by-name (_type_ string) continue-point)
(set-continue! (_type_ basic) continue-point)
(buzzer-count (_type_ game-task) int)
(seen-text? (_type_ text-id) symbol)
(mark-text-as-seen (_type_ text-id) none)
(got-buzzer? (_type_ game-task int) symbol)
(save-game! (_type_ game-save string) none)
(load-game! (_type_ game-save) game-save)
(clear-text-seen! (_type_ text-id) none)
(get-death-count (_type_ symbol) int)
(get-health-percent-lost (_type_ symbol) float)
)
)
;; definition for method 3 of type game-info
(defmethod inspect game-info ((this game-info))
(defmethod inspect ((this game-info))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tmode: ~A~%" (-> this mode))
(format #t "~Tsave-name: ~A~%" (-> this save-name))
+24 -24
View File
@@ -3,7 +3,7 @@
;; definition for method 9 of type border-plane
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw! border-plane ((this border-plane))
(defmethod debug-draw! ((this border-plane))
(let* ((v1-0 (-> this action))
(s5-0 (if (= v1-0 'load)
(new 'static 'rgba :g #xff :a #x80)
@@ -26,12 +26,12 @@
)
;; definition for method 10 of type border-plane
(defmethod point-past-plane? border-plane ((this border-plane) (arg0 vector))
(defmethod point-past-plane? ((this border-plane) (arg0 vector))
(>= (vector-dot (vector-! (new 'stack-no-clear 'vector) arg0 (-> this trans)) (-> this normal)) 0.0)
)
;; definition for method 11 of type game-info
(defmethod task-complete? game-info ((this game-info) (arg0 game-task))
(defmethod task-complete? ((this game-info) (arg0 game-task))
(logtest? (-> this task-perm-list data arg0 status) (entity-perm-status real-complete))
)
@@ -52,7 +52,7 @@
)
;; definition for method 17 of type game-info
(defmethod get-or-create-continue! game-info ((this game-info))
(defmethod get-or-create-continue! ((this game-info))
(cond
((and (= (-> this mode) 'play) (-> this current-continue))
(-> this current-continue)
@@ -74,7 +74,7 @@
;; definition for method 18 of type game-info
;; INFO: Return type mismatch object vs continue-point.
(defmethod get-continue-by-name game-info ((this game-info) (arg0 string))
(defmethod get-continue-by-name ((this game-info) (arg0 string))
(let ((s5-0 *level-load-list*))
(while (not (null? s5-0))
(let ((s4-0 (-> (the-as level-load-info (-> (the-as symbol (car s5-0)) value)) continues)))
@@ -94,7 +94,7 @@
)
;; definition for method 19 of type game-info
(defmethod set-continue! game-info ((this game-info) (arg0 basic))
(defmethod set-continue! ((this game-info) (arg0 basic))
(let ((s5-0 (-> this current-continue)))
(if (null? arg0)
(set! arg0 #f)
@@ -132,13 +132,13 @@
)
;; definition for method 13 of type game-info
(defmethod get-entity-task-perm game-info ((this game-info) (arg0 game-task))
(defmethod get-entity-task-perm ((this game-info) (arg0 game-task))
(-> this task-perm-list data arg0)
)
;; definition for method 9 of type game-info
;; INFO: Used lq/sq
(defmethod initialize! game-info ((this game-info) (cause symbol) (save-to-load game-save) (continue-point-override string))
(defmethod initialize! ((this game-info) (cause symbol) (save-to-load game-save) (continue-point-override string))
(local-vars (v0-0 int) (sv-96 symbol))
(case cause
(('dead)
@@ -296,7 +296,7 @@
)
;; definition for method 10 of type game-info
(defmethod adjust game-info ((this game-info) (item symbol) (amount float) (source handle))
(defmethod adjust ((this game-info) (item symbol) (amount float) (source handle))
(case item
(('life)
(if (>= amount 0.0)
@@ -378,12 +378,12 @@
)
;; definition for method 23 of type game-info
(defmethod got-buzzer? game-info ((this game-info) (arg0 game-task) (arg1 int))
(defmethod got-buzzer? ((this game-info) (arg0 game-task) (arg1 int))
(logtest? (get-reminder (get-task-control arg0) 0) (ash 1 arg1))
)
;; definition for method 20 of type game-info
(defmethod buzzer-count game-info ((this game-info) (arg0 game-task))
(defmethod buzzer-count ((this game-info) (arg0 game-task))
(let ((v1-1 (get-reminder (get-task-control arg0) 0))
(v0-2 0)
)
@@ -397,13 +397,13 @@
)
;; definition for method 21 of type game-info
(defmethod seen-text? game-info ((this game-info) (arg0 text-id))
(defmethod seen-text? ((this game-info) (arg0 text-id))
(get-bit (-> this text-ids-seen) (the-as int arg0))
)
;; definition for method 22 of type game-info
;; INFO: Return type mismatch int vs none.
(defmethod mark-text-as-seen game-info ((this game-info) (arg0 text-id))
(defmethod mark-text-as-seen ((this game-info) (arg0 text-id))
(if (and (< (the-as uint arg0) (the-as uint 4095)) (> (the-as uint arg0) 0))
(set-bit (-> this text-ids-seen) (the-as int arg0))
)
@@ -413,7 +413,7 @@
;; definition for method 26 of type game-info
;; INFO: Return type mismatch int vs none.
(defmethod clear-text-seen! game-info ((this game-info) (arg0 text-id))
(defmethod clear-text-seen! ((this game-info) (arg0 text-id))
(clear-bit (-> this text-ids-seen) (the-as int arg0))
0
(none)
@@ -421,7 +421,7 @@
;; definition for method 10 of type fact-info-target
;; INFO: Return type mismatch float vs none.
(defmethod reset! fact-info-target ((this fact-info-target) (arg0 symbol))
(defmethod reset! ((this fact-info-target) (arg0 symbol))
(when (or (not arg0) (= arg0 'eco))
(set! (-> this eco-timeout) 0)
(set! (-> this eco-level) 0.0)
@@ -444,7 +444,7 @@
)
;; definition for method 11 of type fact-info-target
(defmethod pickup-collectable! fact-info-target ((this fact-info-target) (kind pickup-type) (amount float) (source-handle handle))
(defmethod pickup-collectable! ((this fact-info-target) (kind pickup-type) (amount float) (source-handle handle))
(case kind
(((pickup-type eco-green))
(cond
@@ -662,7 +662,7 @@
)
;; definition for method 12 of type game-info
(defmethod lookup-entity-perm-by-aid game-info ((this game-info) (arg0 actor-id))
(defmethod lookup-entity-perm-by-aid ((this game-info) (arg0 actor-id))
(let ((v1-0 (-> this perm-list)))
(countdown (a0-1 (-> v1-0 length))
(if (= arg0 (-> v1-0 data a0-1 aid))
@@ -676,7 +676,7 @@
;; definition for method 14 of type game-info
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod copy-perms-from-level! game-info ((this game-info) (lev level))
(defmethod copy-perms-from-level! ((this game-info) (lev level))
(let ((perms (-> this perm-list))
(lev-entities (-> lev bsp level entity))
)
@@ -705,7 +705,7 @@
;; definition for method 15 of type game-info
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod copy-perms-to-level! game-info ((this game-info) (lev level))
(defmethod copy-perms-to-level! ((this game-info) (lev level))
(let ((lev-entities (-> lev bsp level entity)))
(dotimes (lev-entity-idx (-> lev-entities length))
(let* ((lev-entity-perm (-> lev-entities data lev-entity-idx entity extra perm))
@@ -727,7 +727,7 @@
)
;; definition for method 2 of type continue-point
(defmethod print continue-point ((this continue-point))
(defmethod print ((this continue-point))
(format #t "#<~A ~S @ #x~X>" (-> this type) (-> this name) this)
this
)
@@ -735,7 +735,7 @@
;; definition for method 9 of type continue-point
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod debug-draw! continue-point ((this continue-point))
(defmethod debug-draw! ((this continue-point))
(add-debug-x #t (bucket-id debug-no-zbuf) (-> this trans) (new 'static 'rgba :r #xff :a #x80))
(add-debug-text-3d
#t
@@ -1164,7 +1164,7 @@
)
;; definition for method 16 of type game-info
(defmethod debug-print game-info ((this game-info) (arg0 symbol))
(defmethod debug-print ((this game-info) (arg0 symbol))
(inspect this)
(when (or (not arg0) (= arg0 'game-task))
(format #t "~Tgame-task:~%")
@@ -1225,7 +1225,7 @@
)
;; definition for method 27 of type game-info
(defmethod get-death-count game-info ((this game-info) (arg0 symbol))
(defmethod get-death-count ((this game-info) (arg0 symbol))
(let ((v1-13
(if (and arg0 *target* (>= (-> *level-task-data-remap* length) (-> *target* current-level info index)))
(the-as
@@ -1242,6 +1242,6 @@
)
;; definition for method 28 of type game-info
(defmethod get-health-percent-lost game-info ((this game-info) (arg0 symbol))
(defmethod get-health-percent-lost ((this game-info) (arg0 symbol))
(* 0.25 (the float (get-death-count this #f)))
)
+70 -80
View File
@@ -3,29 +3,26 @@
;; definition of type game-save-tag
(deftype game-save-tag (structure)
((user-object object 2 :offset-assert 0)
(user-uint64 uint64 :offset 0)
(user-float0 float :offset 0)
(user-float float 2 :offset 0)
(user-int32 int32 2 :offset 0)
(user-uint32 uint32 2 :offset 0)
(user-int16 int16 4 :offset 0)
(user-uint16 uint16 4 :offset 0)
(user-int8 int8 8 :offset 0)
(user-int80 int8 :offset 0)
(user-int81 int8 :offset 1)
(user-uint8 uint8 8 :offset 0)
(elt-count int32 :offset-assert 8)
(elt-size uint16 :offset-assert 12)
(elt-type game-save-elt :offset-assert 14)
((user-object object 2)
(user-uint64 uint64 :overlay-at (-> user-object 0))
(user-float0 float :overlay-at (-> user-object 0))
(user-float float 2 :overlay-at (-> user-object 0))
(user-int32 int32 2 :overlay-at (-> user-object 0))
(user-uint32 uint32 2 :overlay-at (-> user-object 0))
(user-int16 int16 4 :overlay-at (-> user-object 0))
(user-uint16 uint16 4 :overlay-at (-> user-object 0))
(user-int8 int8 8 :overlay-at (-> user-object 0))
(user-int80 int8 :overlay-at (-> user-object 0))
(user-int81 int8 :overlay-at (-> user-int8 1))
(user-uint8 uint8 8 :overlay-at (-> user-object 0))
(elt-count int32)
(elt-size uint16)
(elt-type game-save-elt)
)
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type game-save-tag
(defmethod inspect game-save-tag ((this game-save-tag))
(defmethod inspect ((this game-save-tag))
(format #t "[~8x] ~A~%" this 'game-save-tag)
(format #t "~Tuser-object[2] @ #x~X~%" (-> this user-object))
(format #t "~Tuser-uint64: ~D~%" (-> this user-uint64))
@@ -47,39 +44,36 @@
;; definition of type game-save
(deftype game-save (basic)
((version int32 :offset-assert 4)
(allocated-length int32 :offset-assert 8)
(length int32 :offset-assert 12)
(info-int32 int32 16 :offset-assert 16)
(info-int8 int8 64 :offset 16)
(level-index int32 :offset 16)
(fuel-cell-count float :offset 20)
(money-count float :offset 24)
(buzzer-count float :offset 28)
(completion-percentage float :offset 32)
(minute uint8 :offset 36)
(hour uint8 :offset 37)
(week uint8 :offset 38)
(day uint8 :offset 39)
(month uint8 :offset 40)
(year uint8 :offset 41)
(new-game int32 :offset 44)
(tag game-save-tag :inline :dynamic :offset-assert 80)
((version int32)
(allocated-length int32)
(length int32)
(info-int32 int32 16)
(info-int8 int8 64 :overlay-at (-> info-int32 0))
(level-index int32 :overlay-at (-> info-int32 0))
(fuel-cell-count float :overlay-at (-> info-int32 1))
(money-count float :overlay-at (-> info-int32 2))
(buzzer-count float :overlay-at (-> info-int32 3))
(completion-percentage float :overlay-at (-> info-int32 4))
(minute uint8 :overlay-at (-> info-int32 5))
(hour uint8 :overlay-at (-> info-int8 21))
(week uint8 :overlay-at (-> info-int8 22))
(day uint8 :overlay-at (-> info-int8 23))
(month uint8 :overlay-at (-> info-int32 6))
(year uint8 :overlay-at (-> info-int8 25))
(new-game int32 :overlay-at (-> info-int32 7))
(tag game-save-tag :inline :dynamic)
)
:method-count-assert 12
:size-assert #x50
:flag-assert #xc00000050
(:methods
(new (symbol type int) _type_ 0)
(save-to-file (_type_ string) _type_ 9)
(load-from-file! (_type_ string) _type_ 10)
(debug-print (_type_ symbol) _type_ 11)
(new (symbol type int) _type_)
(save-to-file (_type_ string) _type_)
(load-from-file! (_type_ string) _type_)
(debug-print (_type_ symbol) _type_)
)
)
;; definition for method 3 of type game-save
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect game-save ((this game-save))
(defmethod inspect ((this game-save))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tversion: ~D~%" (-> this version))
(format #t "~Tallocated-length: ~D~%" (-> this allocated-length))
@@ -104,7 +98,7 @@
;; definition for method 5 of type game-save
;; INFO: Return type mismatch uint vs int.
(defmethod asize-of game-save ((this game-save))
(defmethod asize-of ((this game-save))
(the-as int (+ (-> game-save size) (-> this allocated-length)))
)
@@ -265,7 +259,7 @@
;; definition for method 11 of type game-save
;; INFO: Used lq/sq
(defmethod debug-print game-save ((this game-save) (detail symbol))
(defmethod debug-print ((this game-save) (detail symbol))
(local-vars (sv-16 int))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tversion: ~D~%" (-> this version))
@@ -384,13 +378,13 @@
;; definition for method 3 of type game-save
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect game-save ((this game-save))
(defmethod inspect ((this game-save))
(debug-print this #f)
)
;; definition for method 24 of type game-info
;; INFO: Return type mismatch game-save vs none.
(defmethod save-game! game-info ((this game-info) (arg0 game-save) (arg1 string))
(defmethod save-game! ((this game-info) (arg0 game-save) (arg1 string))
(dotimes (s3-0 (-> *level* length))
(let ((a1-1 (-> *level* level s3-0)))
(if (= (-> a1-1 status) 'active)
@@ -849,7 +843,7 @@
)
;; definition for method 25 of type game-info
(defmethod load-game! game-info ((this game-info) (save game-save))
(defmethod load-game! ((this game-info) (save game-save))
(let ((save-data (the-as game-save-tag (-> save tag))))
(while (< (the-as int save-data) (the-as int (&-> save tag 0 user-int8 (-> save length))))
(case (-> save-data elt-type)
@@ -1110,7 +1104,7 @@
)
;; definition for method 9 of type game-save
(defmethod save-to-file game-save ((this game-save) (arg0 string))
(defmethod save-to-file ((this game-save) (arg0 string))
(let ((s5-0 (new 'stack 'file-stream arg0 'write)))
(file-stream-write s5-0 (&-> this type) (+ (-> this type size) (-> this length)))
(file-stream-close s5-0)
@@ -1119,7 +1113,7 @@
)
;; definition for method 10 of type game-save
(defmethod load-from-file! game-save ((this game-save) (filename string))
(defmethod load-from-file! ((this game-save) (filename string))
(let ((stream (new 'stack 'file-stream filename 'read)))
(let ((in-size (file-stream-length stream))
(my-size (-> this allocated-length))
@@ -1187,37 +1181,33 @@
;; definition of type auto-save
(deftype auto-save (process)
((card int32 :offset-assert 112)
(slot int32 :offset-assert 116)
(which int32 :offset-assert 120)
(buffer kheap :offset-assert 124)
(mode basic :offset-assert 128)
(result mc-status-code :offset-assert 132)
(save game-save :offset-assert 136)
(info mc-slot-info :inline :offset-assert 140)
(notify handle :offset-assert 440)
(state-time time-frame :offset-assert 448)
(part sparticle-launch-control :offset-assert 456)
((card int32)
(slot int32)
(which int32)
(buffer kheap)
(mode basic)
(result mc-status-code)
(save game-save)
(info mc-slot-info :inline)
(notify handle)
(state-time time-frame)
(part sparticle-launch-control)
)
:heap-base #x160
:method-count-assert 23
:size-assert #x1cc
:flag-assert #x17016001cc
(:methods
(get-heap () _type_ :state 14)
(get-card () _type_ :state 15)
(format-card () _type_ :state 16)
(create-file () _type_ :state 17)
(save () _type_ :state 18)
(restore () _type_ :state 19)
(error (mc-status-code) _type_ :state 20)
(done () _type_ :state 21)
(unformat-card () _type_ :state 22)
(:state-methods
get-heap
get-card
format-card
create-file
save
restore
(error mc-status-code)
done
unformat-card
)
)
;; definition for method 3 of type auto-save
(defmethod inspect auto-save ((this auto-save))
(defmethod inspect ((this auto-save))
(let ((t9-0 (method-of-type process inspect)))
(t9-0 this)
)
@@ -1236,7 +1226,7 @@
)
;; definition for method 10 of type auto-save
(defmethod deactivate auto-save ((this auto-save))
(defmethod deactivate ((this auto-save))
(if (nonzero? (-> this part))
(kill-and-free-particles (-> this part))
)
@@ -1246,7 +1236,7 @@
;; definition for method 7 of type auto-save
;; INFO: Return type mismatch process vs auto-save.
(defmethod relocate auto-save ((this auto-save) (arg0 int))
(defmethod relocate ((this auto-save) (arg0 int))
(if (nonzero? (-> this part))
(&+! (-> this part) arg0)
)
+7 -13
View File
@@ -285,16 +285,13 @@
;; definition of type frame-stats
(deftype frame-stats (structure)
((field-time time-frame 2 :offset-assert 0)
(field int32 :offset-assert 16)
((field-time time-frame 2)
(field int32)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type frame-stats
(defmethod inspect frame-stats ((this frame-stats))
(defmethod inspect ((this frame-stats))
(format #t "[~8x] ~A~%" this 'frame-stats)
(format #t "~Tfield-time[2] @ #x~X~%" (-> this field-time))
(format #t "~Tfield: ~D~%" (-> this field))
@@ -306,19 +303,16 @@
;; definition of type screen-filter
(deftype screen-filter (basic)
((draw? basic :offset-assert 4)
(color rgba :offset-assert 8)
((draw? basic)
(color rgba)
)
:method-count-assert 10
:size-assert #xc
:flag-assert #xa0000000c
(:methods
(draw (_type_) none 9)
(draw (_type_) none)
)
)
;; definition for method 3 of type screen-filter
(defmethod inspect screen-filter ((this screen-filter))
(defmethod inspect ((this screen-filter))
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~Tdraw?: ~A~%" (-> this draw?))
(format #t "~Tcolor: ~D~%" (-> this color))
+1 -1
View File
@@ -249,7 +249,7 @@
;; definition for method 9 of type screen-filter
;; INFO: Return type mismatch pointer vs none.
(defmethod draw screen-filter ((this screen-filter))
(defmethod draw ((this screen-filter))
(let* ((buf (-> *display* frames (-> *display* on-screen) frame global-buf))
(gp-0 (-> buf base))
)

Some files were not shown because too many files have changed in this diff Show More