mirror of
https://github.com/open-goal/jak-project
synced 2026-06-01 09:48:00 -04:00
7ce58f709f
* 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!
60 lines
1.8 KiB
Common Lisp
Vendored
Generated
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
|