[decompiler] as-type and font method support (#3855)

Add support for `as-type` macro, and detecting inline font methods. This
works in all three games but I've only updated jak 3's goal_src for now.
Eventually I will go back and work through the others, but I want to get
more decompiler features in first.


![image](https://github.com/user-attachments/assets/5c31bf85-97b4-437c-bc4b-dc054e60551e)

---------

Co-authored-by: water111 <awaterford1111445@gmail.com>
This commit is contained in:
water111
2025-02-01 21:23:11 -05:00
committed by GitHub
parent d5590ab638
commit 48cb9bb787
645 changed files with 5391 additions and 16694 deletions
+6 -18
View File
@@ -50,15 +50,9 @@
)
)
)
(let ((v1-4 a1-2))
(set! (-> v1-4 width) (the float (- 512 (-> this x-position))))
)
(let ((v1-5 a1-2))
(set! (-> v1-5 height) (the float 40))
)
(let ((v1-6 a1-2))
(set! (-> v1-6 scale) 0.9)
)
(set-width! a1-2 (- 512 (-> this x-position)))
(set-height! a1-2 40)
(set-scale! a1-2 0.9)
(set! (-> a1-2 flags) (font-flags shadow kerning middle-vert large))
(print-game-text (-> this message) a1-2 #f 128 22)
)
@@ -929,15 +923,9 @@
(new 'stack 'font-context *font-default-matrix* 32 140 0.0 (font-color default) (font-flags shadow kerning))
)
)
(let ((v1-57 gp-1))
(set! (-> v1-57 width) (the float 440))
)
(let ((v1-58 gp-1))
(set! (-> v1-58 height) (the float 60))
)
(let ((v1-59 gp-1))
(set! (-> v1-59 scale) 0.9)
)
(set-width! gp-1 440)
(set-height! gp-1 60)
(set-scale! gp-1 0.9)
(set! (-> gp-1 flags) (font-flags shadow kerning middle-vert large))
(print-game-text (lookup-text! *common-text* (-> self talk-message) #f) gp-1 #f 128 22)
)