Files
jak-project/test/decompiler/reference/engine/ui/text-h_REF.gc
T
ManDude 7ce58f709f process-spawn + pretty printer improvements (#1428)
* some jp support to fix some errors in the original game

* music fade toggle

* recognize `process-new` macros!!

* strip casts in this macro

* rename macro

* fix cast typecheck

* update source 1

* detect kernel stack case

* less boilerplate

* `manipy-spawn` special case

* pretty printer improvements

* revert dumb thing from earlier

* use shell detection on `send-event`

* fix some events

* remove unused argument

* detect `static-attack-info` and add `CondNoElse` to shell detect

* better `attack-info` detect

* support `process-spawn` in multi-lets

* detect `rand-float-gen` pt 1

* detect as return value

* detect in `countdown` and  `dotimes`

* oops this wasnt working

* fancier `send-event`s

* clang

* update source!!

* fix tests

* fine jeez

* uh okay

* fix some accidental regressions

* fix more regressions

* regression fixes

* fix big bug...

* extra safety!
2022-06-10 02:18:08 +01:00

60 lines
1.8 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition of type game-text
(deftype game-text (structure)
((id game-text-id :offset-assert 0)
(text string :offset-assert 4)
)
:pack-me
:method-count-assert 9
:size-assert #x8
:flag-assert #x900000008
)
;; definition for method 3 of type game-text
(defmethod inspect game-text ((obj game-text))
(format #t "[~8x] ~A~%" obj 'game-text)
(format #t "~Tid: ~D~%" (-> obj id))
(format #t "~Ttext: ~A~%" (-> obj text))
obj
)
;; definition of type game-text-info
(deftype game-text-info (basic)
((length int32 :offset-assert 4)
(language-id int32 :offset-assert 8)
(group-name string :offset-assert 12)
(data game-text :inline :dynamic :offset-assert 16)
)
:method-count-assert 10
:size-assert #x10
:flag-assert #xa00000010
(:methods
(lookup-text! (_type_ game-text-id symbol) string 9)
)
)
;; definition for method 3 of type game-text-info
;; INFO: this function exists in multiple non-identical object files
(defmethod inspect game-text-info ((obj game-text-info))
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~Tlength: ~D~%" (-> obj length))
(format #t "~Tlanguage-id: ~D~%" (-> obj language-id))
(format #t "~Tgroup-name: ~A~%" (-> obj group-name))
(format #t "~Tdata[0] @ #x~X~%" (-> obj data))
obj
)
;; definition for symbol *text-group-names*, type (array string)
(define *text-group-names* (the-as (array string) (new 'static 'boxed-array :type string "common")))
;; definition for symbol *common-text-heap*, type kheap
(define *common-text-heap* (new 'global 'kheap))
;; definition for symbol *common-text*, type game-text-info
(define *common-text* (the-as game-text-info #f))
;; failed to figure out what this is:
0