Files
jak-project/test/decompiler/reference/jak2/engine/target/darkjak-h_REF.gc
T
Hat Kid fc43870d85 decompiler: obj -> this, set-time! and time-elapsed? macros (#3026)
This renames the method object in `defmethod`s to `this` and adds
detection for the `set-time!` and `time-elapsed?` macros.

Definitely my biggest PR yet...
2023-09-26 15:17:00 +01:00

54 lines
1.9 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition of type darkjak-info
(deftype darkjak-info (basic)
((process (pointer target) :offset-assert 4)
(attack-id uint32 :offset-assert 8)
(start-time time-frame :offset-assert 16)
(attack-time time-frame :offset-assert 24)
(attack-count uint64 :offset-assert 32)
(stage darkjak-stage :offset-assert 40)
(want-stage darkjak-stage :offset-assert 44)
(clock-pos float :offset-assert 48)
(clock-vel float :offset-assert 52)
(clock-on symbol :offset-assert 56)
(hud handle 1 :offset 64)
(tone sound-id :offset 72)
(bomb uint32 :offset 76)
)
:method-count-assert 10
:size-assert #x50
:flag-assert #xa00000050
(:methods
(update-clock! (_type_ int) none :behavior target 9)
)
)
;; definition for method 3 of type darkjak-info
(defmethod inspect darkjak-info ((this darkjak-info))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tprocess: #x~X~%" (-> this process))
(format #t "~1Tattack-id: ~D~%" (-> this attack-id))
(format #t "~1Tstart-time: ~D~%" (-> this start-time))
(format #t "~1Tattack-time: ~D~%" (-> this attack-time))
(format #t "~1Tattack-count: ~D~%" (-> this attack-count))
(format #t "~1Tstage: ~D~%" (-> this stage))
(format #t "~1Twant-stage: ~D~%" (-> this want-stage))
(format #t "~1Tclock-pos: ~f~%" (-> this clock-pos))
(format #t "~1Tclock-vel: ~f~%" (-> this clock-vel))
(format #t "~1Tclock-on: ~A~%" (-> this clock-on))
(format #t "~1Thud[1] @ #x~X~%" (-> this hud))
(format #t "~1Ttone: ~D~%" (-> this tone))
(format #t "~1Tbomb: ~D~%" (-> this bomb))
(label cfg-4)
this
)
;; failed to figure out what this is:
0