Files
jak-project/test/decompiler/reference/jak3/engine/target/darkjak-h_REF.gc
T
Hat Kid 93afb02cf4 decomp3: spawn target, add merc and particle buckets and some temporary hacks (#3445)
This includes all the collision stuff needed to spawn `target`,
decompiles the sparticle code and adds some of the PC hacks needed for
merc to run (it doesn't work quite right and looks bad, likely due to a
combination of code copied from Jak 2 and the time of day hacks).

There are a bunch of temporary hacks (see commits) in place to prevent
the game from crashing quite as much, but it is still extremely prone to
doing so due to lots of missing functions/potentially bad decomp.

---------

Co-authored-by: water <awaterford111445@gmail.com>
2024-04-05 00:07:39 -04:00

59 lines
1.9 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition of type darkjak-info
(deftype darkjak-info (basic)
((process (pointer target))
(latch-out-time time-frame)
(attack-id uint32)
(start-time time-frame)
(attack-time time-frame)
(attack-count uint64)
(lightning-count int32)
(charge-effect handle)
(stage darkjak-stage)
(want-stage darkjak-stage)
(clock-pos float)
(clock-vel float)
(clock-on symbol)
(hud handle 1)
(tone sound-id)
(bomb (pointer process))
(mode-sound-bank connection)
)
(:methods
(update-clock! (_type_ int) none)
)
)
;; definition for method 3 of type darkjak-info
(defmethod inspect ((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 "~1Tlatch-out-time: ~D~%" (-> this latch-out-time))
(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 "~1Tlightning-count: ~D~%" (-> this lightning-count))
(format #t "~1Tcharge-effect: ~D~%" (-> this charge-effect))
(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))
(format #t "~1Tmode-sound-bank: #<connection @ #x~X>~%" (-> this mode-sound-bank))
(label cfg-4)
this
)
;; failed to figure out what this is:
0