Files
jak-project/test/decompiler/reference/engine/target/target-h_REF.gc
T
Tyler Wilding d400ec3b2d decomp: mood (#672)
* decomp: Almost finished `mood`, but confused over the `mood-context` type!

* only function that remains involves vftoi / ppach instructions

* stash

* decomp: fix inline array access issue

* decomp: finalize `mood`

* linting
2021-08-01 16:11:22 -04:00

109 lines
4.5 KiB
Common Lisp
Vendored

;;-*-Lisp-*-
(in-package goal)
;; definition of type target
(deftype target (process-drawable)
((control control-info :offset 112)
(skel2 basic :offset-assert 176)
(racer basic :offset-assert 180)
(game game-info :offset-assert 184)
(neck joint-mod :offset-assert 188)
(state-hook-time uint64 :offset-assert 192)
(state-hook function :offset-assert 200)
(cam-user-mode symbol :offset-assert 204)
(sidekick (pointer sidekick) :offset-assert 208)
(manipy (pointer manipy) :offset-assert 212)
(attack-info attack-info :inline :offset-assert 224)
(attack-info-rec attack-info :inline :offset-assert 336)
(anim-seed uint64 :offset-assert 440)
(alt-cam-pos vector :inline :offset-assert 448)
(snowball basic :offset-assert 464)
(tube basic :offset-assert 468)
(flut basic :offset-assert 472)
(current-level level :offset-assert 476)
(saved-pos transformq :inline :offset-assert 480)
(saved-owner uint64 :offset-assert 528)
(alt-neck-pos vector :inline :offset-assert 544)
(fp-hud uint64 :offset-assert 560)
(no-load-wait uint64 :offset-assert 568)
(no-look-around-wait uint64 :offset-assert 576)
)
:heap-base #x1e0
:method-count-assert 21
:size-assert #x248
:flag-assert #x1501e00248
(:methods
(dummy-20 () none 20)
)
)
;; definition for method 3 of type target
(defmethod inspect target ((obj target))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 obj)
)
(format #t "~T~Tcontrol: ~A~%" (-> obj control))
(format #t "~T~Tskel2: ~A~%" (-> obj skel2))
(format #t "~T~Tracer: ~A~%" (-> obj racer))
(format #t "~T~Tgame: ~A~%" (-> obj game))
(format #t "~T~Tneck: ~A~%" (-> obj neck))
(format #t "~T~Tstate-hook-time: ~D~%" (-> obj state-hook-time))
(format #t "~T~Tstate-hook: ~A~%" (-> obj state-hook))
(format #t "~T~Tcam-user-mode: ~A~%" (-> obj cam-user-mode))
(format #t "~T~Tsidekick: #x~X~%" (-> obj sidekick))
(format #t "~T~Tmanipy: #x~X~%" (-> obj manipy))
(format #t "~T~Tattack-info: #<attack-info @ #x~X>~%" (-> obj attack-info))
(format
#t
"~T~Tattack-info-rec: #<attack-info @ #x~X>~%"
(-> obj attack-info-rec)
)
(format #t "~T~Tanim-seed: ~D~%" (-> obj anim-seed))
(format #t "~T~Talt-cam-pos: ~`vector`P~%" (-> obj alt-cam-pos))
(format #t "~T~Tsnowball: ~A~%" (-> obj snowball))
(format #t "~T~Ttube: ~A~%" (-> obj tube))
(format #t "~T~Tflut: ~A~%" (-> obj flut))
(format #t "~T~Tcurrent-level: ~A~%" (-> obj current-level))
(format #t "~T~Tsaved-pos: #<transformq @ #x~X>~%" (-> obj saved-pos))
(format #t "~T~Tsaved-owner: ~D~%" (-> obj saved-owner))
(format #t "~T~Talt-neck-pos: ~`vector`P~%" (-> obj alt-neck-pos))
(format #t "~T~Tfp-hud: ~D~%" (-> obj fp-hud))
(format #t "~T~Tno-load-wait: ~D~%" (-> obj no-load-wait))
(format #t "~T~Tno-look-around-wait: ~D~%" (-> obj no-look-around-wait))
obj
)
;; definition (perm) for symbol *target*, type target
(define-perm *target* target #f)
;; definition of type sidekick
(deftype sidekick (process-drawable)
((control control-info :offset 112)
(anim-seed uint64 :offset 192)
(shadow-in-movie? symbol :offset-assert 200)
)
:heap-base #x60
:method-count-assert 20
:size-assert #xcc
:flag-assert #x14006000cc
)
;; definition for method 3 of type sidekick
(defmethod inspect sidekick ((obj sidekick))
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 obj)
)
(format #t "~T~Tcontrol: ~A~%" (-> obj root))
(format #t "~T~Tstate-time: ~D~%" (-> obj state-time))
(format #t "~T~Tstate-flags: ~D~%" (-> obj state-flags))
(format #t "~T~Tanim-seed: ~D~%" (-> obj anim-seed))
(format #t "~T~Tshadow-in-movie?: ~A~%" (-> obj shadow-in-movie?))
obj
)
;; definition (perm) for symbol *sidekick*, type sidekick
(define-perm *sidekick* sidekick #f)
;; failed to figure out what this is:
0