mirror of
https://github.com/open-goal/jak-project
synced 2026-06-06 19:52:01 -04:00
cd68cb671e
Major change to how `deftype` shows up in our code: - the decompiler will no longer emit the `offset-assert`, `method-count-assert`, `size-assert` and `flag-assert` parameters. There are extremely few cases where having this in the decompiled code is helpful, as the types there come from `all-types` which already has those parameters. This also doesn't break type consistency because: - the asserts aren't compared. - the first step of the test uses `all-types`, which has the asserts, which will throw an error if they're bad. - the decompiler won't emit the `heap-base` parameter unless necessary now. - the decompiler will try its hardest to turn a fixed-offset field into an `overlay-at` field. It falls back to the old offset if all else fails. - `overlay-at` now supports field "dereferencing" to specify the offset that's within a field that's a structure, e.g.: ```lisp (deftype foobar (structure) ((vec vector :inline) (flags int32 :overlay-at (-> vec w)) ) ) ``` in this structure, the offset of `flags` will be 12 because that is the final offset of `vec`'s `w` field within this structure. - **removed ID from all method declarations.** IDs are only ever automatically assigned now. Fixes #3068. - added an `:overlay` parameter to method declarations, in order to declare a new method that goes on top of a previously-defined method. Syntax is `:overlay <method-name>`. Please do not ever use this. - added `state-methods` list parameter. This lets you quickly specify a list of states to be put in the method table. Same syntax as the `states` list parameter. The decompiler will try to put as many states in this as it can without messing with the method ID order. Also changes `defmethod` to make the first type definition (before the arguments) optional. The type can now be inferred from the first argument. Fixes #3093. --------- Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
605 lines
27 KiB
Common Lisp
Vendored
Generated
605 lines
27 KiB
Common Lisp
Vendored
Generated
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; definition of type user-setting-data
|
|
(deftype user-setting-data (structure)
|
|
((border-mode symbol)
|
|
(process-mask process-mask)
|
|
(unknown-int32-00 int32)
|
|
(language language-enum :offset 16)
|
|
(display-dx int32)
|
|
(display-dy int32)
|
|
(vibration symbol :offset 32)
|
|
(play-hints symbol :offset 36)
|
|
(movie (pointer process) :offset 40)
|
|
(talking (pointer process))
|
|
(spooling (pointer process))
|
|
(hint (pointer process))
|
|
(ambient (pointer process))
|
|
(video-mode symbol)
|
|
(aspect-ratio symbol)
|
|
(use-progressive-scan symbol :offset 68)
|
|
(auto-save symbol :offset 72)
|
|
(bg-r float)
|
|
(bg-g float)
|
|
(bg-b float)
|
|
(bg-a float)
|
|
(bg-a-speed float)
|
|
(bg-a-force float)
|
|
(allow-progress symbol)
|
|
(allow-pause symbol)
|
|
(ocean-off symbol)
|
|
(allow-look-around symbol)
|
|
(camera-stick-dir symbol)
|
|
(movie-name symbol :offset 120)
|
|
(weather symbol)
|
|
(mouse symbol)
|
|
(cursor symbol)
|
|
(task-mask task-mask :offset 136)
|
|
(region-mode symbol)
|
|
(duck symbol :offset 144)
|
|
(attack symbol)
|
|
(gun symbol)
|
|
(board symbol)
|
|
(jump symbol)
|
|
(speed-mult float)
|
|
(features game-feature)
|
|
(sfx-volume float)
|
|
(sfx-movie-volume float)
|
|
(music-volume float)
|
|
(music-volume-movie float)
|
|
(dialog-volume float)
|
|
(dialog-volume-hint float)
|
|
(ambient-volume float)
|
|
(ambient-volume-move float)
|
|
(sound-flava uint8)
|
|
(sound-flava-priority float)
|
|
(mode-sound-bank uint32)
|
|
(sound-excitement float)
|
|
(sound-reverb float)
|
|
(stereo-mode int32)
|
|
(music symbol)
|
|
(sound-stinger int32)
|
|
(spool-anim spool-anim)
|
|
(sound-mode uint32)
|
|
(task-manager (pointer process))
|
|
(task symbol)
|
|
(airlock symbol)
|
|
(minimap uint16)
|
|
(sound-tune uint32)
|
|
(allow-continue symbol)
|
|
(spotlight-color rgba)
|
|
(subtitle symbol)
|
|
(borrow pair)
|
|
(doorway symbol)
|
|
(gem symbol)
|
|
(half-speed symbol)
|
|
(gun-buoy symbol)
|
|
(double-jump symbol)
|
|
(pilot symbol)
|
|
(pilot-exit symbol)
|
|
(exclusive-task int32)
|
|
(speech-control symbol)
|
|
(vehicle-hijacking symbol)
|
|
(darkjak symbol)
|
|
(endlessfall symbol)
|
|
(rain float)
|
|
(snow float)
|
|
(exclusive-load symbol)
|
|
(render symbol)
|
|
(allow-timeout symbol)
|
|
(mirror symbol)
|
|
(movie-skip-frame float)
|
|
(allow-blackout symbol)
|
|
(race-minimap int32)
|
|
(extra-bank pair)
|
|
(beard symbol)
|
|
(ignore-target symbol)
|
|
(subtitle-language language-enum)
|
|
(sound-bank-load symbol)
|
|
(allow-error symbol)
|
|
(under-water-pitch-mod float)
|
|
(dummy object 31)
|
|
)
|
|
(:methods
|
|
(user-setting-data-method-9 (_type_ engine engine-pers engine) user-setting-data)
|
|
(user-setting-data-method-10 (_type_ object symbol float uint) user-setting-data)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type user-setting-data
|
|
(defmethod inspect ((this user-setting-data))
|
|
(when (not this)
|
|
(set! this this)
|
|
(goto cfg-71)
|
|
)
|
|
(format #t "[~8x] ~A~%" this 'user-setting-data)
|
|
(format #t "~1Tborder-mode: ~A~%" (-> this border-mode))
|
|
(format #t "~1Tprocess-mask: #x~X~%" (-> this process-mask))
|
|
(let ((t9-3 format)
|
|
(a0-4 #t)
|
|
(a1-3 "~1Tlanguage: #x~X : ~S~%")
|
|
(a2-3 (-> this language))
|
|
(v1-2 (-> this language))
|
|
)
|
|
(t9-3 a0-4 a1-3 a2-3 (cond
|
|
((= v1-2 (language-enum english))
|
|
"english"
|
|
)
|
|
((= v1-2 (language-enum uk-english))
|
|
"uk-english"
|
|
)
|
|
((= v1-2 (language-enum french))
|
|
"french"
|
|
)
|
|
((= v1-2 (language-enum korean))
|
|
"korean"
|
|
)
|
|
((= v1-2 (language-enum german))
|
|
"german"
|
|
)
|
|
((= v1-2 (language-enum spanish))
|
|
"spanish"
|
|
)
|
|
((= v1-2 (language-enum italian))
|
|
"italian"
|
|
)
|
|
((= v1-2 (language-enum japanese))
|
|
"japanese"
|
|
)
|
|
(else
|
|
"*unknown*"
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(format #t "~1Tmovie: ~A~%" (ppointer->process (-> this movie)))
|
|
(format #t "~1Ttalking: ~A~%" (ppointer->process (-> this talking)))
|
|
(format #t "~1Tspooling: ~A~%" (ppointer->process (-> this spooling)))
|
|
(format #t "~1Thint: ~A~%" (ppointer->process (-> this hint)))
|
|
(format #t "~1Tambient: ~A~%" (ppointer->process (-> this ambient)))
|
|
(format #t "~1Tvideo-mode: ~A~%" (-> this video-mode))
|
|
(format #t "~1Taspect-ratio: ~A~%" (-> this aspect-ratio))
|
|
(format #t "~1Tauto-save: ~A~%" (-> this auto-save))
|
|
(format #t "~1Tbg-r: ~f~%" (-> this bg-r))
|
|
(format #t "~1Tbg-g: ~f~%" (-> this bg-g))
|
|
(format #t "~1Tbg-b: ~f~%" (-> this bg-b))
|
|
(format #t "~1Tbg-a: ~f~%" (-> this bg-a))
|
|
(format #t "~1Tbg-a-speed: ~f~%" (-> this bg-a-speed))
|
|
(format #t "~1Tbg-a-force: ~f~%" (-> this bg-a-force))
|
|
(format #t "~1Tallow-progress: ~A~%" (-> this allow-progress))
|
|
(format #t "~1Tallow-pause: ~A~%" (-> this allow-pause))
|
|
(format #t "~1Tmovie-name: ~A~%" (-> this movie-name))
|
|
(format #t "~1Tweather: ~A~%" (-> this weather))
|
|
(format #t "~1Ttask-mask: #x~X : (task-mask " (-> this task-mask))
|
|
(let ((s5-0 (-> this task-mask)))
|
|
(if (= (logand s5-0 (task-mask task0)) (task-mask task0))
|
|
(format #t "task0 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task2)) (task-mask task2))
|
|
(format #t "task2 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task4)) (task-mask task4))
|
|
(format #t "task4 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task6)) (task-mask task6))
|
|
(format #t "task6 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask ctywide)) (task-mask ctywide))
|
|
(format #t "ctywide ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask never)) (task-mask never))
|
|
(format #t "never ")
|
|
)
|
|
(if (= (logand (task-mask movie1) s5-0) (task-mask movie1))
|
|
(format #t "movie1 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask dummy1)) (task-mask dummy1))
|
|
(format #t "dummy1 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask primary0)) (task-mask primary0))
|
|
(format #t "primary0 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task1)) (task-mask task1))
|
|
(format #t "task1 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task3)) (task-mask task3))
|
|
(format #t "task3 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task5)) (task-mask task5))
|
|
(format #t "task5 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask task7)) (task-mask task7))
|
|
(format #t "task7 ")
|
|
)
|
|
(if (= (logand (task-mask movie2) s5-0) (task-mask movie2))
|
|
(format #t "movie2 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask dummy2)) (task-mask dummy2))
|
|
(format #t "dummy2 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask done)) (task-mask done))
|
|
(format #t "done ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask special)) (task-mask special))
|
|
(format #t "special ")
|
|
)
|
|
(if (= (logand (task-mask movie0) s5-0) (task-mask movie0))
|
|
(format #t "movie0 ")
|
|
)
|
|
(if (= (logand s5-0 (task-mask dummy0)) (task-mask dummy0))
|
|
(format #t "dummy0 ")
|
|
)
|
|
)
|
|
(format #t ")~%")
|
|
(format #t "~1Tduck: ~A~%" (-> this duck))
|
|
(format #t "~1Tattack: ~A~%" (-> this attack))
|
|
(format #t "~1Tgun: ~A~%" (-> this gun))
|
|
(format #t "~1Tboard: ~A~%" (-> this board))
|
|
(format #t "~1Tjump: ~A~%" (-> this jump))
|
|
(format #t "~1Tspeed-mult: ~f~%" (-> this speed-mult))
|
|
(format #t "~1Tfeatures: ~D~%" (-> this features))
|
|
(format #t "~1Tsfx-volume: ~f~%" (-> this sfx-volume))
|
|
(format #t "~1Tsfx-volume-movie: ~f~%" (-> this sfx-movie-volume))
|
|
(format #t "~1Tmusic-volume: ~f~%" (-> this music-volume))
|
|
(format #t "~1Tmusic-volume-movie: ~f~%" (-> this music-volume-movie))
|
|
(format #t "~1Tdialog-volume: ~f~%" (-> this dialog-volume))
|
|
(format #t "~1Tdialog-volume-hint: ~f~%" (-> this dialog-volume-hint))
|
|
(format #t "~1Tambient-volume: ~f~%" (-> this ambient-volume))
|
|
(format #t "~1Tambient-volume-movie: ~f~%" (-> this ambient-volume-move))
|
|
(format #t "~1Tsound-flava: ~D~%" (-> this sound-flava))
|
|
(format #t "~1Tsound-flava-priority: ~f~%" (-> this sound-flava-priority))
|
|
(format #t "~1Tmode-sound-bank: ~A~%" (-> this mode-sound-bank))
|
|
(format #t "~1Tsound-excitement: ~f~%" (-> this sound-excitement))
|
|
(format #t "~1Tsound-reverb: ~f~%" (-> this sound-reverb))
|
|
(format #t "~1Tstereo-mode: ~D~%" (-> this stereo-mode))
|
|
(format #t "~1Tmusic: ~A~%" (-> this music))
|
|
(format #t "~1Tsound-stinger: ~D~%" (-> this sound-stinger))
|
|
(format #t "~1Tspool-anim: ~A~%" (-> this spool-anim))
|
|
(format #t "~1Tsound-mode: ~D~%" (-> this sound-mode))
|
|
(format #t "~1Ttask-manager: ~A~%" (ppointer->process (-> this task-manager)))
|
|
(format #t "~1Ttask: ~A~%" (-> this task))
|
|
(format #t "~1Tairlock: ~A~%" (-> this airlock))
|
|
(format #t "~1Tminimap: ~D~%" (-> this minimap))
|
|
(format #t "~1Tsound-tune: ~D~%" (-> this sound-tune))
|
|
(format #t "~1Tallow-continue: ~A~%" (-> this allow-continue))
|
|
(format #t "~1Tspotlight-color: ~D~%" (-> this spotlight-color))
|
|
(format #t "~1Tsubtitle: ~A~%" (-> this subtitle))
|
|
(format #t "~1Tborrow: ~A~%" (-> this borrow))
|
|
(format #t "~1Tdoorway: ~A~%" (-> this doorway))
|
|
(format #t "~1Tgem: ~A~%" (-> this gem))
|
|
(format #t "~1Thalf-speed: ~A~%" (-> this half-speed))
|
|
(format #t "~1Tgun-buoy: ~A~%" (-> this gun-buoy))
|
|
(format #t "~1Tdouble-jump: ~A~%" (-> this double-jump))
|
|
(format #t "~1Tpilot: ~A~%" (-> this pilot))
|
|
(format #t "~1Tpilot-exit: ~A~%" (-> this pilot-exit))
|
|
(format #t "~1Texclusive-task: ~D~%" (-> this exclusive-task))
|
|
(format #t "~1Tspeech-control: ~A~%" (-> this speech-control))
|
|
(format #t "~1Tvehicle-hijacking: ~A~%" (-> this vehicle-hijacking))
|
|
(format #t "~1Tdarkjak: ~A~%" (-> this darkjak))
|
|
(format #t "~1Tendlessfall: ~A~%" (-> this endlessfall))
|
|
(format #t "~1Train: ~f~%" (-> this rain))
|
|
(format #t "~1Tsnow: ~f~%" (-> this snow))
|
|
(format #t "~1Texclusive-load: ~A~%" (-> this exclusive-load))
|
|
(format #t "~1Trender: ~A~%" (-> this render))
|
|
(format #t "~1Tallow-timeout: ~A~%" (-> this allow-timeout))
|
|
(format #t "~1Tmirror: ~A~%" (-> this mirror))
|
|
(format #t "~1Tmovie-skip-frame: ~f~%" (-> this movie-skip-frame))
|
|
(format #t "~1Tallow-blackout: ~A~%" (-> this allow-blackout))
|
|
(format #t "~1Trace-minimap: ~D~%" (-> this race-minimap))
|
|
(format #t "~1Textra-bank: ~A~%" (-> this extra-bank))
|
|
(format #t "~1Tbeard: ~A~%" (-> this beard))
|
|
(format #t "~1Tignore-target: ~A~%" (-> this ignore-target))
|
|
(format #t "~1Tsubtitle-language: ~D~%" (-> this subtitle-language))
|
|
(format #t "~1Tsound-bank-load: ~A~%" (-> this sound-bank-load))
|
|
(format #t "~1Tallow-error: ~A~%" (-> this allow-error))
|
|
(format #t "~1Tunder-water-pitch-mod: ~f~%" (-> this under-water-pitch-mod))
|
|
(format #t "~1Tdummy[31] @ #x~X~%" (-> this dummy))
|
|
(label cfg-71)
|
|
this
|
|
)
|
|
|
|
;; definition of type cam-setting-data
|
|
(deftype cam-setting-data (structure)
|
|
((fov degrees)
|
|
(pov-handle handle :offset 16)
|
|
(pov-bone int32)
|
|
(pov-offset vector :inline)
|
|
(string-default symbol)
|
|
(string-max-length meters)
|
|
(string-min-length meters)
|
|
(string-max-height meters)
|
|
(string-min-height meters)
|
|
(string-cliff-height meters)
|
|
(string-camera-ceiling meters)
|
|
(gun-max-height meters)
|
|
(gun-min-height meters)
|
|
(string-local-down vector :inline)
|
|
(slave-options cam-slave-options)
|
|
(matrix-blend-max-angle degrees)
|
|
(matrix-blend-max-partial float)
|
|
(string-spline-max-move meters)
|
|
(string-spline-accel meters)
|
|
(string-spline-max-move-player meters)
|
|
(string-spline-accel-player meters)
|
|
(string-startup-vector vector :inline)
|
|
(string-use-startup-vector symbol)
|
|
(look-at-point vector :inline)
|
|
(use-look-at-point symbol)
|
|
(target-height meters)
|
|
(foot-offset meters)
|
|
(head-offset meters)
|
|
(teleport-on-entity-change symbol)
|
|
(entity-name string)
|
|
(entity-or-mode-changed symbol)
|
|
(master-options cam-master-options)
|
|
(entity-mask uint32)
|
|
(mode-name symbol)
|
|
(real-entity-name string)
|
|
(cam-mode symbol)
|
|
(interp-time uint32)
|
|
(no-intro symbol)
|
|
(use-point-of-interest symbol)
|
|
(point-of-interest vector :inline)
|
|
(handle-of-interest handle)
|
|
(mouse-tumble-point vector :inline)
|
|
(use-mouse-tumble-point symbol)
|
|
(mouse-input symbol)
|
|
(cpad1-skip-buttons symbol)
|
|
(butt-handle handle)
|
|
(butt-angle float)
|
|
(extra-follow-height float)
|
|
(interp-time-priority uint32)
|
|
(string-max-length-default symbol)
|
|
(string-min-length-default symbol)
|
|
(string-max-height-default symbol)
|
|
(string-min-height-default symbol)
|
|
(dummy object 102)
|
|
)
|
|
(:methods
|
|
(cam-setting-data-method-9 (_type_ engine engine-pers engine) _type_)
|
|
(cam-setting-data-method-10 (_type_ object (pointer process) float int) _type_)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type cam-setting-data
|
|
(defmethod inspect ((this cam-setting-data))
|
|
(when (not this)
|
|
(set! this this)
|
|
(goto cfg-68)
|
|
)
|
|
(format #t "[~8x] ~A~%" this 'cam-setting-data)
|
|
(format #t "~1Tfov: (deg ~r)~%" (-> this fov))
|
|
(format #t "~1Tpov-handle: ~D~%" (-> this pov-handle))
|
|
(format #t "~1Tpov-bone: ~D~%" (-> this pov-bone))
|
|
(format #t "~1Tpov-offset: ~`vector`P~%" (-> this pov-offset))
|
|
(format #t "~1Tstring-default: ~`boolean`P~%" (-> this string-default))
|
|
(format #t "~1Tstring-max-length: (meters ~m)~%" (-> this string-max-length))
|
|
(format #t "~1Tstring-min-length: (meters ~m)~%" (-> this string-min-length))
|
|
(format #t "~1Tstring-max-height: (meters ~m)~%" (-> this string-max-height))
|
|
(format #t "~1Tstring-min-height: (meters ~m)~%" (-> this string-min-height))
|
|
(format #t "~1Tstring-cliff-height: (meters ~m)~%" (-> this string-cliff-height))
|
|
(format #t "~1Tstring-camera-ceiling: (meters ~m)~%" (-> this string-camera-ceiling))
|
|
(format #t "~1Tgun-max-height: (meters ~m)~%" (-> this gun-max-height))
|
|
(format #t "~1Tgun-min-height: (meters ~m)~%" (-> this gun-min-height))
|
|
(format #t "~1Tstring-local-down: ~`vector`P~%" (-> this string-local-down))
|
|
(format #t "~1Tslave-options: #x~X : (cam-slave-options " (-> this slave-options))
|
|
(let ((s5-0 (-> this slave-options)))
|
|
(if (= (logand s5-0 (cam-slave-options SAME_SIDE)) (cam-slave-options SAME_SIDE))
|
|
(format #t "SAME_SIDE ")
|
|
)
|
|
(if (= (logand (cam-slave-options GUN_CAM) s5-0) (cam-slave-options GUN_CAM))
|
|
(format #t "GUN_CAM ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options STICKY_ANGLE)) (cam-slave-options STICKY_ANGLE))
|
|
(format #t "STICKY_ANGLE ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options FIND_HIDDEN_TARGET)) (cam-slave-options FIND_HIDDEN_TARGET))
|
|
(format #t "FIND_HIDDEN_TARGET ")
|
|
)
|
|
(if (= (logand (cam-slave-options RAPID_TRACKING) s5-0) (cam-slave-options RAPID_TRACKING))
|
|
(format #t "RAPID_TRACKING ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options SHRINK_MAX_ANGLE)) (cam-slave-options SHRINK_MAX_ANGLE))
|
|
(format #t "SHRINK_MAX_ANGLE ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options JUMP_PITCHES)) (cam-slave-options JUMP_PITCHES))
|
|
(format #t "JUMP_PITCHES ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options LINE_OF_SIGHT)) (cam-slave-options LINE_OF_SIGHT))
|
|
(format #t "LINE_OF_SIGHT ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options PLAYER_MOVING_CAMERA)) (cam-slave-options PLAYER_MOVING_CAMERA))
|
|
(format #t "PLAYER_MOVING_CAMERA ")
|
|
)
|
|
(if (= (logand (cam-slave-options ALLOW_SHIFT_BUTTONS) s5-0) (cam-slave-options ALLOW_SHIFT_BUTTONS))
|
|
(format #t "ALLOW_SHIFT_BUTTONS ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options NO_ROTATE)) (cam-slave-options NO_ROTATE))
|
|
(format #t "NO_ROTATE ")
|
|
)
|
|
(if (= (logand (cam-slave-options WIDE_FOV) s5-0) (cam-slave-options WIDE_FOV))
|
|
(format #t "WIDE_FOV ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options MOVE_SPHERICAL)) (cam-slave-options MOVE_SPHERICAL))
|
|
(format #t "MOVE_SPHERICAL ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options DRAG)) (cam-slave-options DRAG))
|
|
(format #t "DRAG ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options MOVEMENT_BLOCKED)) (cam-slave-options MOVEMENT_BLOCKED))
|
|
(format #t "MOVEMENT_BLOCKED ")
|
|
)
|
|
(if (= (logand (cam-slave-options BLOCK_RIGHT_STICK) s5-0) (cam-slave-options BLOCK_RIGHT_STICK))
|
|
(format #t "BLOCK_RIGHT_STICK ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options COLLIDE)) (cam-slave-options COLLIDE))
|
|
(format #t "COLLIDE ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options ALLOW_Z_ROT)) (cam-slave-options ALLOW_Z_ROT))
|
|
(format #t "ALLOW_Z_ROT ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options BIKE_MODE)) (cam-slave-options BIKE_MODE))
|
|
(format #t "BIKE_MODE ")
|
|
)
|
|
(if (= (logand (cam-slave-options EASE_SPLINE_IDX) s5-0) (cam-slave-options EASE_SPLINE_IDX))
|
|
(format #t "EASE_SPLINE_IDX ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options GOTO_GOOD_POINT)) (cam-slave-options GOTO_GOOD_POINT))
|
|
(format #t "GOTO_GOOD_POINT ")
|
|
)
|
|
(if (= (logand s5-0 (cam-slave-options BUTT_CAM)) (cam-slave-options BUTT_CAM))
|
|
(format #t "BUTT_CAM ")
|
|
)
|
|
(if (= (logand (cam-slave-options VERTICAL_FOLLOW_MATCHES_CAMERA) s5-0)
|
|
(cam-slave-options VERTICAL_FOLLOW_MATCHES_CAMERA)
|
|
)
|
|
(format #t "VERTICAL_FOLLOW_MATCHES_CAMERA ")
|
|
)
|
|
(if (= (logand (cam-slave-options HAVE_BUTT_HANDLE) s5-0) (cam-slave-options HAVE_BUTT_HANDLE))
|
|
(format #t "HAVE_BUTT_HANDLE ")
|
|
)
|
|
)
|
|
(format #t ")~%")
|
|
(format #t "~1Tmatrix-blend-max-angle: (deg ~r)~%" (-> this matrix-blend-max-angle))
|
|
(format #t "~1Tmatrix-blend-max-partial: ~f~%" (-> this matrix-blend-max-partial))
|
|
(format #t "~1Tstring-spline-max-move: (meters ~m)~%" (-> this string-spline-max-move))
|
|
(format #t "~1Tstring-spline-accel: (meters ~m)~%" (-> this string-spline-accel))
|
|
(format #t "~1Tstring-spline-max-move-player: (meters ~m)~%" (-> this string-spline-max-move-player))
|
|
(format #t "~1Tstring-spline-accel-player: (meters ~m)~%" (-> this string-spline-accel-player))
|
|
(format #t "~1Tstring-startup-vector: ~`vector`P~%" (-> this string-startup-vector))
|
|
(format #t "~1Tuse-string-startup-vector: ~A~%" (-> this string-use-startup-vector))
|
|
(format #t "~1Tlook-at-point: ~`vector`P~%" (-> this look-at-point))
|
|
(format #t "~1Tuse-look-at-point: ~A~%" (-> this use-look-at-point))
|
|
(format #t "~1Ttarget-height: (meters ~m)~%" (-> this target-height))
|
|
(format #t "~1Tfoot-offset: (meters ~m)~%" (-> this foot-offset))
|
|
(format #t "~1Thead-offset: (meters ~m)~%" (-> this head-offset))
|
|
(format #t "~1Tteleport-on-entity-change: ~`boolean`P~%" (-> this teleport-on-entity-change))
|
|
(format #t "~1Tentity-name: ~`string`P~%" (-> this entity-name))
|
|
(format #t "~1Tentity-or-mode-changed: ~`boolean`P~%" (-> this entity-or-mode-changed))
|
|
(format #t "~1Tmaster-options: #x~X : (cam-master-options " (-> this master-options))
|
|
(let ((s5-1 (-> this master-options)))
|
|
(if (= (logand s5-1 (cam-master-options IMMEDIATE_STRING_MIN_MAX)) (cam-master-options IMMEDIATE_STRING_MIN_MAX))
|
|
(format #t "IMMEDIATE_STRING_MIN_MAX ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options IN_BASE_REGION)) (cam-master-options IN_BASE_REGION))
|
|
(format #t "IN_BASE_REGION ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options FLIP_COMBINER)) (cam-master-options FLIP_COMBINER))
|
|
(format #t "FLIP_COMBINER ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options SET_COMBINER_AXIS)) (cam-master-options SET_COMBINER_AXIS))
|
|
(format #t "SET_COMBINER_AXIS ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options IGNORE_ANALOG)) (cam-master-options IGNORE_ANALOG))
|
|
(format #t "IGNORE_ANALOG ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options READ_BUTTONS)) (cam-master-options READ_BUTTONS))
|
|
(format #t "READ_BUTTONS ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options HAVE_TARGET)) (cam-master-options HAVE_TARGET))
|
|
(format #t "HAVE_TARGET ")
|
|
)
|
|
(if (= (logand s5-1 (cam-master-options HAVE_EASE_TO_POS)) (cam-master-options HAVE_EASE_TO_POS))
|
|
(format #t "HAVE_EASE_TO_POS ")
|
|
)
|
|
)
|
|
(format #t ")~%")
|
|
(format #t "~1Tentity-mask: ~D~%" (-> this entity-mask))
|
|
(format #t "~1Tmode-name: ~A~%" (-> this mode-name))
|
|
(format #t "~1Treal-entity-name: ~`string`P~%" (-> this real-entity-name))
|
|
(format #t "~1Tcam-mode: ~A~%" (-> this cam-mode))
|
|
(format #t "~1Tinterp-time: ~D~%" (-> this interp-time))
|
|
(format #t "~1Tno-intro: ~A~%" (-> this no-intro))
|
|
(format #t "~1Tuse-point-of-interest: ~A~%" (-> this use-point-of-interest))
|
|
(format #t "~1Tpoint-of-interest: ~`vector`P~%" (-> this point-of-interest))
|
|
(format #t "~1Thandle-of-interest: ~D~%" (-> this handle-of-interest))
|
|
(format #t "~1Tmouse-tumble-point: ~`vector`P~%" (-> this mouse-tumble-point))
|
|
(format #t "~1Tuse-mouse-tumble-point: ~A~%" (-> this use-mouse-tumble-point))
|
|
(format #t "~1Tmouse-input: ~A~%" (-> this mouse-input))
|
|
(format #t "~1Tcpad1-skip-buttons: ~A~%" (-> this cpad1-skip-buttons))
|
|
(format #t "~1Tbutt-handle: ~D~%" (-> this butt-handle))
|
|
(format #t "~1Tbutt-angle: ~f~%" (-> this butt-angle))
|
|
(format #t "~1Textra-follow-height: ~f~%" (-> this extra-follow-height))
|
|
(format #t "~1Tinterp-time-priority: ~D~%" (-> this interp-time-priority))
|
|
(format #t "~1Tstring-max-length-default: ~A~%" (-> this string-max-length-default))
|
|
(format #t "~1Tstring-min-length-default: ~A~%" (-> this string-min-length-default))
|
|
(format #t "~1Tstring-max-height-default: ~A~%" (-> this string-max-height-default))
|
|
(format #t "~1Tstring-min-height-default: ~A~%" (-> this string-min-height-default))
|
|
(format #t "~1Tdummy[102] @ #x~X~%" (-> this dummy))
|
|
(label cfg-68)
|
|
this
|
|
)
|
|
|
|
;; definition of type setting-control
|
|
(deftype setting-control (basic)
|
|
((user-current user-setting-data :inline)
|
|
(user-target user-setting-data :inline)
|
|
(user-default user-setting-data :inline)
|
|
(cam-current cam-setting-data :inline)
|
|
(cam-target cam-setting-data :inline)
|
|
(cam-default cam-setting-data :inline)
|
|
(engine engine)
|
|
(engine-pers engine-pers)
|
|
(engine-hi engine)
|
|
(sound-stinger-time time-frame)
|
|
(sound-stinger-change-time time-frame 4)
|
|
(sound-excitement-change-time time-frame)
|
|
(sound-excitement-targ float)
|
|
(sound-excitement-level uint32)
|
|
)
|
|
(:methods
|
|
(new (symbol type int) _type_)
|
|
(add-setting (_type_ process symbol object object object) none)
|
|
(persist-with-delay (_type_ symbol time-frame symbol symbol float int) none)
|
|
(set-setting (_type_ process symbol object object object) none)
|
|
(remove-setting (_type_ process symbol) none)
|
|
(kill-persister (_type_ engine-pers object) none)
|
|
(setting-control-method-14 (_type_ object) connectable)
|
|
(remove-setting-by-arg0 (_type_ object) none)
|
|
(set-setting-by-param (_type_ symbol object object object) connection)
|
|
(apply-settings (_type_) user-setting-data)
|
|
(update (_type_) user-setting-data)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type setting-control
|
|
(defmethod inspect ((this setting-control))
|
|
(when (not this)
|
|
(set! this this)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" this (-> this type))
|
|
(format #t "~1Tuser-current: #<user-setting-data @ #x~X>~%" (-> this user-current))
|
|
(format #t "~1Tuser-target: #<user-setting-data @ #x~X>~%" (-> this user-target))
|
|
(format #t "~1Tuser-default: #<user-setting-data @ #x~X>~%" (-> this user-default))
|
|
(format #t "~1Tcam-current: #<cam-setting-data @ #x~X>~%" (-> this cam-current))
|
|
(format #t "~1Tcam-target: #<cam-setting-data @ #x~X>~%" (-> this cam-target))
|
|
(format #t "~1Tcam-default: #<cam-setting-data @ #x~X>~%" (-> this cam-default))
|
|
(format #t "~1Tengine: ~A~%" (-> this engine))
|
|
(format #t "~1Tengine-pers: ~A~%" (-> this engine-pers))
|
|
(format #t "~1Tengine-hi: ~A~%" (-> this engine-hi))
|
|
(format #t "~1Tsound-stinger-time: ~D~%" (-> this sound-stinger-time))
|
|
(format #t "~1Tsound-stinger-change-time[4] @ #x~X~%" (-> this sound-stinger-change-time))
|
|
(format #t "~1Tsound-excitement-change-time: ~D~%" (-> this sound-excitement-change-time))
|
|
(format #t "~1Tsound-excitement-targ: ~f~%" (-> this sound-excitement-targ))
|
|
(format #t "~1Tsound-excitement-level: ~D~%" (-> this sound-excitement-level))
|
|
(label cfg-4)
|
|
this
|
|
)
|
|
|
|
;; definition for method 0 of type setting-control
|
|
(defmethod new setting-control ((allocation symbol) (type-to-make type) (arg0 int))
|
|
(let ((s4-0 (object-new allocation type-to-make (the-as int (-> type-to-make size)))))
|
|
(set! (-> s4-0 engine) ((method-of-type engine new) allocation engine 'setting-control arg0 connection))
|
|
(set! (-> s4-0 engine-hi) ((method-of-type engine new) allocation engine 'setting-control arg0 connection))
|
|
(set! (-> s4-0 engine-pers)
|
|
((method-of-type engine-pers new) allocation engine-pers 'setting-control arg0 connection-pers)
|
|
)
|
|
s4-0
|
|
)
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
0
|