jak-project/goal_src/jak3/engine/game/settings-h.gc

600 lines
18 KiB
Common Lisp
Raw Permalink Normal View History

2023-10-10 09:41:05 -04:00
;;-*-Lisp-*-
(in-package goal)
;; name: settings-h.gc
;; name in dgo: settings-h
;; dgos: GAME
(declare-type setting-control structure)
(define-extern *setting-control* setting-control)
;; +++cam-master-options
(defenum cam-master-options
:type uint64
:bitfield #t
(HAVE_TARGET) ;; 1
(SET_COMBINER_AXIS) ;; 2
(FLIP_COMBINER) ;; 4
(HAVE_EASE_TO_POS) ;; 8
(IN_BASE_REGION) ;; 10
(IGNORE_ANALOG) ;; 20
(BLOCK_RIGHT_STICK) ;; 40
(USE_L1_R1) ;; 80
(READ_BUTTONS)
(IMMEDIATE_STRING_MIN_MAX)
)
;; ---cam-master-options
;; +++cam-slave-options
(defenum cam-slave-options
:type uint64
:bitfield #t
(BUTT_CAM)
(SAME_SIDE)
(MOVE_SPHERICAL)
(ALLOW_Z_ROT)
(JUMP_PITCHES)
(COLLIDE)
(FIND_HIDDEN_TARGET)
(DRAG)
(PLAYER_MOVING_CAMERA)
(LINE_OF_SIGHT)
(MOVEMENT_BLOCKED)
(SHRINK_MAX_ANGLE)
(GOTO_GOOD_POINT)
(BIKE_MODE)
(NO_ROTATE)
(STICKY_ANGLE)
(BLOCK_RIGHT_STICK)
(ALLOW_SHIFT_BUTTONS)
(GUN_CAM)
(WIDE_FOV)
(RAPID_TRACKING)
(EASE_SPLINE_IDX)
(VERTICAL_FOLLOW_MATCHES_CAMERA)
(HAVE_BUTT_HANDLE)
(BOMBBOT)
(JUMP_LAG)
)
;; ---cam-slave-options
;; +++game-feature
(defenum game-feature
:type uint64
:bitfield #t
(feature0 0)
(feature1 1)
(feature2 2)
(feature3 3)
(feature4 4)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(gun 5)
(gun-red-1 6)
(gun-red-2 7)
(gun-red-3 8)
(gun-yellow-1 9)
(gun-yellow-2 10)
(gun-yellow-3 11)
(gun-blue-1 12)
(gun-blue-2 13)
(gun-blue-3 14)
(gun-dark-1 15)
(gun-dark-2 16)
(gun-dark-3 17)
(board 18)
(feature19 19)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(sidekick 20)
(feature21 21)
(feature22 22)
(gun-upgrade-yellow-ammo-1 23)
(gun-upgrade-yellow-ammo-2 24)
(gun-upgrade-red-ammo-1 25)
(gun-upgrade-red-ammo-2 26)
(gun-upgrade-blue-ammo-1 27)
(gun-upgrade-blue-ammo-2 28)
(gun-upgrade-dark-ammo-1 29)
(gun-upgrade-dark-ammo-2 30)
(feature31 31)
(feature32 32)
(feature33 33)
(feature34 34)
(feature35 35)
(feature36 36)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(board-launch 37)
(board-trail 38)
(board-zap 39)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(darkjak 40)
(darkjak-smack 41)
(darkjak-bomb0 42)
(darkjak-bomb1 43)
(darkjak-tracking 44)
(darkjak-invinc 45)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(lightjak 46)
(lightjak-regen 47)
(lightjak-swoop 48)
(lightjak-freeze 49)
(lightjak-shield 50)
(artifact-invis 51)
(armor0 52)
(armor1 53)
(armor2 54)
(armor3 55)
(jakc 56)
(lighteco 57)
(darkeco 58)
(feature59 59)
(feature60 60)
(feature61 61)
(feature62 62)
(feature63 63)
)
;; ---game-feature
;; +++game-secrets
(defenum game-secrets
:type uint64
:bitfield #t
(hero-mode 0)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(scene-player-1 1)
(scene-player-2 2)
(scene-player-3 3)
(title-commentary 4)
(level-select-1 5)
(level-select-2 6)
(level-select-3 7)
(scrap-book-1 8)
(scrap-book-2 9)
(scrap-book-3 10)
(model-viewer-1 11)
(model-viewer-2 12)
(model-viewer-3 13)
(toggle-beard 14)
(hflip-screen 15)
(endless-ammo 16)
(invulnerable 17)
(endless-dark 18)
(endless-light 19)
(gs20 20)
(gs21 21)
(gungame-ratchet 22)
decomp3: more engine stuff, detect non-virtual state inheritance (#3377) - `speech` - `ambient` - `water-h` - `vol-h` - `generic-obs` - `carry-h` - `pilot-h` - `board-h` - `gun-h` - `flut-h` - `indax-h` - `lightjak-h` - `darkjak-h` - `target-util` - `history` - `collide-reaction-target` - `logic-target` - `sidekick` - `projectile` - `voicebox` - `ragdoll-edit` - most of `ragdoll` (not added to gsrc yet) - `curves` - `find-nearest` - `lightjak-wings` - `target-handler` - `target-anim` - `target` - `target2` - `target-swim` - `target-lightjak` - `target-invisible` - `target-death` - `target-gun` - `gun-util` - `board-util` - `target-board` - `board-states` - `mech-h` - `vol` - `vent` - `viewer` - `gem-pool` - `collectables` - `crates` - `secrets-menu` Additionally: - Detection of non-virtual state inheritance - Added a config file that allows overriding the process stack size set by `stack-size-set!` calls - Fix for integer multiplication with `r0` - Fixed detection for the following macros: - `static-attack-info` - `defpart` and `defpartgroup` (probably still needs adjustments, uses Jak 2 implementation at the moment) - `sound-play` (Jak 3 seems to always call `sound-play-by-name` with a `sound-group` of 0, so the macro has been temporarily defaulted to use that) One somewhat significant change made here that should be noted is that the return type of `process::init-from-entity!` was changed to `object`. I've been thinking about this for a while, since it looks a bit nicer without the `(none)` at the end and I have recently encountered init methods that early return `0`.
2024-03-03 15:15:27 -05:00
(big-head 23)
(little-head 24)
(fast-movie 25)
(slow-movie 26)
(unlimited-turbos 27)
(vehicle-hit-points 28)
(board-fast 29)
(vehicle-fox 30)
(vehicle-mirage 31)
(vehicle-x-ride 32)
(kleever-diaper 33)
(bad-weather 34)
(fast-weather 35)
(daxter-pants 36)
(darkjak-tracking 37)
(commentary 38)
(jak-is-jak2 39)
(button-invis 40)
(statistics 41)
(gun-upgrade-red-1 42)
(gun-upgrade-red-2 43)
(gun-upgrade-red-3 44)
(gun-upgrade-yellow-1 45)
(gun-upgrade-yellow-2 46)
(gun-upgrade-yellow-3 47)
(gun-upgrade-blue-1 48)
(gun-upgrade-blue-2 49)
(gun-upgrade-blue-3 50)
(gun-upgrade-dark-1 51)
(gun-upgrade-dark-2 52)
(gun-upgrade-dark-3 53)
(gun-upgrade-ammo-red 54)
(gun-upgrade-ammo-yellow 55)
(gun-upgrade-ammo-blue 56)
(gun-upgrade-ammo-dark 57)
(gs58 58)
(gs59 59)
(gs60 60)
(gs61 61)
(gs62 62)
(gs63 63)
)
;; ---game-secrets
(defmacro setting-control-func! (func s &rest args)
(let ((argb #f)
(argi 0)
(argf 0.0)
(setting (car s)))
(cond
(#t
(set! argb (car args))
(set! argf (cadr args))
(set! argi (caddr args))
)
)
`(,func *setting-control* (with-pp pp) ,s ,argb ,argf ,argi)
)
)
(defmacro add-setting! (s &rest args)
`(setting-control-func! add-setting ,s ,@args)
)
(defmacro set-setting! (s &rest args)
`(setting-control-func! set-setting ,s ,@args)
)
(defmacro remove-setting! (s)
`(remove-setting *setting-control* (with-pp pp) ,s)
)
;; +++game-score
(defenum game-score
:type uint64
(none)
(gs0)
(gs1)
(gs2)
(gs3)
(gs4)
(gs5)
(gs6)
(gs7)
(gs8)
(gs9)
(gs10)
(gs11)
(gs12)
(gs13)
(gs14)
(gs15)
(gs16)
(gs17)
(gs18)
(gs19)
(gs20)
)
;; ---game-score
;; +++game-vehicles
(defenum game-vehicles
:type uint64
:bitfield #t
(v-turtle 0)
(v-snake 1)
(v-scorpion 2)
(v-toad 3)
(v-fox 4)
(v-rhino 5)
(v-mirage 6)
(v-x-ride 7)
)
;; ---game-vehicles
(declare-type resetter-spec structure)
;; +++game-vehicle-u8
(defenum game-vehicle-u8
:type uint8
:bitfield #t
:copy-entries game-vehicles
)
;; ---game-vehicle-u8
2023-10-10 09:41:05 -04:00
;; DECOMP BEGINS
(deftype user-setting-data (structure)
((border-mode symbol)
(process-mask process-mask)
(common-page int32)
(language language-enum)
(screenx int32)
(screeny int32)
(vibration symbol)
(play-hints symbol)
(movie (pointer process))
(talking (pointer process))
(spooling (pointer process))
(hint (pointer process))
(ambient (pointer process))
(video-mode symbol)
(aspect-ratio symbol)
(set-video-mode symbol)
(auto-save symbol)
(bg-r float)
(bg-g float)
(bg-b float)
(bg-a float)
(bg-a-speed float)
(bg-a-force float)
(blur-a float)
(blur-a-speed float)
(allow-progress symbol)
(allow-pause symbol)
(ocean-off symbol)
(allow-look-around symbol)
(camera-stick-dir symbol)
(movie-name symbol)
(weather symbol)
(mouse symbol)
(cursor symbol)
(keybd symbol)
(task-mask task-mask)
(region-mode symbol)
(duck symbol)
(attack symbol)
(gun symbol)
(board symbol)
(jump symbol)
(speed-mult float)
(features game-feature)
(vehicles game-vehicles)
(sfx-volume float)
(sfx-volume-movie float)
(music-volume float)
(music-volume-movie float)
(dialog-volume float)
(dialog-volume-talker float)
(ambient-volume float)
(ambient-volume-movie float)
(dynamic-ambient-volume float)
(talker-volume 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 uint32)
(sound-tune uint32)
(allow-continue symbol)
(spotlight-color rgba)
(highlight-color rgba)
(subtitle symbol)
(doorway symbol)
(gem symbol)
(half-speed symbol)
(gun-buoy symbol)
(double-jump symbol)
(pilot symbol)
(pilot-exit symbol)
(pilot-death symbol)
(speech-control symbol)
(vehicle-hijacking symbol)
(darkjak symbol)
(lightjak 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)
(beard symbol)
(ignore-target symbol)
(subtitle-language language-enum)
(sound-bank-load symbol)
(allow-error symbol)
(under-water-pitch-mod float)
(slow-time float)
(scanlines float)
(restart-info resetter-spec)
(fail-info resetter-spec)
(death-info resetter-spec)
(quit-info resetter-spec)
(extra-bank-count uint32)
(extra-bank pair 3)
(borrow-count uint32)
(borrow pair 3)
(exclusive-task-count uint32)
(exclusive-task int32 3)
(level-trans-time int32)
(scarf float)
(goggles float)
(board-trail symbol)
(kg-primary-target handle)
(ff-primary-target handle)
(mh-primary-target handle)
(kg-target-float float)
(ff-target-float float)
(target-float float)
(kg-difficulty float)
(fog-special-interp-targ float)
(fog-special-interp-rate float)
(traffic-spawn symbol)
(stop-vehicle? symbol)
(part-bounds-check symbol)
(letterbox float)
(letterbox-speed float)
(minimap-level symbol)
(bigmap-level symbol)
(duststorm-push-player? symbol)
(dust-storm-fog-scalar float)
(dust-storm-sound-scalar float)
(citizen-fights symbol)
(allow-logo symbol)
(brightness float)
(contrast float)
(stop-boats? symbol)
(borrow-city-count uint32)
(borrow-city pair 3)
(faction-command-count uint32)
(faction-command pair 3)
(change-gun symbol)
(kg-enemy-settings symbol)
(ff-enemy-settings symbol)
(mh-enemy-settings symbol)
(city-heap-load float)
(gun-target-guards? symbol)
(freeze-screen symbol)
(borrow-hold-perm-count uint32)
(borrow-hold-perm pair 3)
(borrow-hold-count uint32)
(borrow-hold pair 3)
(cloth symbol)
decomp3: traffic/citizen/faction code, `desert-rescue` (#3506) - `cty-faction-h` - `nav-graph` - `citizen-h` - `citizen` - `civilian` - `traffic-engine` - `traffic-manager` - `cty-attack-controller` - `cty-faction` - `formation-object` - `formations` - `squad-control-city-h` - `squad-control-city` - `traffic-util` - `wlander-female` - `wlander-h` - `wlander-male` - `speech-manager` - `desert-rescue` - `desresc-path` - `neo-satellite` - `rope-prim-system-h` - `rope-prim-system` - `rope-system` - `wland-passenger` - `cty-guard-projectile` - `ctywide-init` - `ff-squad-control` - `guard-grenade` - `guard-rifle` - `guard-states` - `guard-tazer` - `ctywide-speech` - `citizen-chick` - `citizen-fat` - `citizen-norm` - `guard` - `bike` - `car` - `test-bike` - `vehicle-rider` - `desert-rescue-bbush` - `ff-squad-control-h` - `flee-info` - `guard-h` - `mission-squad-control` - `kg-squad-control` - `kg-squad-member-h` - `kg-squad-member` - `mh-squad-control` - `mh-squad-member-h` - `mh-squad-member` - `ctywide-obs-h` - `ctywide-obs` - `ctywide-part` - `ctywide-scenes` - `ctywide-tasks` - `ctywide-texture` - `billiards` - `guide-arrow` - `kg-vehicles` - `flying-turret` - `roboguard-city` - `citizen-enemy` - `metalhead-flitter` - `metalhead-grunt` - `metalhead-predator` - `spydroid` - `kg-squad-control-h` - `mh-squad-control-h` - `krimson-wall` - `ctyport-obs` - `ctyinda-obs` - `ctyinda-part` - `ctyindb-obs` - `ctyindb-part` - `ctyport-attack` - `h-torpedo` - `ctyport-part` - `ctyport-scenes` - `external-player-control` - `desert-chase-path-h` - `desert-chase-path` - `desert-chase` - `desert-jump` - `wcar-catapult` - `bombbot-h` - `bombbot` - `bombbot-path` - `cty-hijack-missile` - `cty-hijack` - `ctyport-attack-bbush` - `ctysluma-part` - `ctyslumb-part` - `ctyslumc-obs` - `ctyslumc-part` - `searchlight` - `cty-destroy-grid` - `ctyfarm-obs` - `ctyfarma-part` - `ctyfarmb-part` - `freehq-part` - `freehq-scenes` - `onintent-scenes` - `onintent-part` - `cty-sniper-battery` - `cty-sniper-turret` - `intro-obs` - `intro-part` - `intro-scenes` - `palcab-part` - `palroof-part`
2024-05-09 19:18:55 -04:00
(player-control-override cpad-info)
(player-control-mask uint32)
(gun-special-mode symbol)
(airlock-command pair)
(sky-type symbol)
(global-wind symbol)
(ambient-wind-scalar float)
(halfpipe-jump-mult float)
(audio-language language-enum)
(armor symbol)
(city-sound pair 3)
(board-max-speed float)
(lock-sound-camera-to-target symbol)
(hide-crates? symbol)
(pickups symbol)
(sound-ear handle)
(sound-ear-scale float)
(special-volume float)
(dive symbol)
(timer-warn-seconds uint32)
(gem-pool-index int32)
(unique-vehicle-mission-critical symbol)
(turbo symbol)
(gun-eject symbol)
(disable-parking-spots? symbol)
(gem-seek-target-dir? symbol)
(unk-volume float)
(nuke-active? symbol)
(disable-guard-chatter? symbol)
(use-alternate-bouncer? symbol)
(pad uint8 60 :offset 848)
)
(: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)
)
)
(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-floor 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)
(use-string-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)
(cam-slope 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)
(flip-vertical symbol)
(flip-horizontal symbol)
(unk-float0 float)
(fov-priority float)
(dummy object 98)
)
(:methods
(cam-setting-data-method-9 (_type_ engine engine-pers engine) _type_)
(cam-setting-data-method-10 (_type_ object (pointer process) float int) _type_)
)
)
(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_)
2024-04-13 09:47:23 -04:00
(add-setting (_type_ process symbol object object object) connection)
(persist-with-delay (_type_ symbol time-frame symbol symbol float int) none)
2024-04-13 09:47:23 -04:00
(set-setting (_type_ process symbol object object object) connection)
(remove-setting (_type_ process symbol) none)
(kill-persister (_type_ engine-pers object) none)
(setting-control-method-14 (_type_ object) connectable)
(get-setting (_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)
)
)
(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
)
)