Files
Hat Kid 949508d0ed 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

312 lines
11 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition for function city-target-type->cty-faction
;; WARN: Return type mismatch int vs cty-faction.
(defun city-target-type->cty-faction ((arg0 city-target-type))
(let ((v1-0 arg0))
(the-as
cty-faction
(cond
((or (= v1-0 (city-target-type guard-tazer))
(= v1-0 (city-target-type guard-rifle))
(= v1-0 (city-target-type guard-grenade))
(= v1-0 (city-target-type unk1))
(= v1-0 (city-target-type unk2))
)
(the-as cty-faction (cty-faction ff))
)
((or (= v1-0 (city-target-type grunt)) (= v1-0 (city-target-type flitter)) (= v1-0 (city-target-type unknown)))
(the-as cty-faction (cty-faction mh))
)
((or (= v1-0 (city-target-type roboguard))
(= v1-0 (city-target-type turret))
(= v1-0 (city-target-type spydroid))
(= v1-0 (city-target-type roboguard-giant))
)
(the-as cty-faction (cty-faction kg))
)
(else
(the-as cty-faction (cty-faction invalid))
)
)
)
)
)
;; definition for function city-target-type->traffic-object-type
;; WARN: Return type mismatch int vs traffic-type.
(defun city-target-type->traffic-object-type ((arg0 city-target-type))
(let ((v1-0 arg0))
(the-as
traffic-type
(cond
((or (= v1-0 (city-target-type guard-tazer))
(= v1-0 (city-target-type guard-rifle))
(= v1-0 (city-target-type guard-grenade))
)
(the-as traffic-type (traffic-type guard-a))
)
((= v1-0 (city-target-type grunt))
(the-as traffic-type (traffic-type metalhead-grunt))
)
((= v1-0 (city-target-type flitter))
(the-as traffic-type (traffic-type metalhead-flitter))
)
((= v1-0 (city-target-type unknown))
(the-as traffic-type (traffic-type metalhead-predator))
)
((or (= v1-0 (city-target-type roboguard)) (= v1-0 (city-target-type roboguard-giant)))
(the-as traffic-type (traffic-type roboguard))
)
((= v1-0 (city-target-type turret))
(the-as traffic-type (traffic-type flying-turret))
)
((= v1-0 (city-target-type spydroid))
(the-as traffic-type (traffic-type spydroid))
)
(else
(the-as traffic-type (traffic-type invalid0))
)
)
)
)
)
;; definition for function symbol->city-target-type
;; WARN: Return type mismatch int vs city-target-type.
(defun symbol->city-target-type ((arg0 symbol))
(let ((v1-0 arg0))
(the-as city-target-type (cond
((= v1-0 'roboguard)
(the-as city-target-type (city-target-type roboguard))
)
((= v1-0 'roboguard-giant)
(the-as city-target-type (city-target-type roboguard-giant))
)
((= v1-0 'guard-rifle)
(the-as city-target-type (city-target-type guard-rifle))
)
((= v1-0 'guard-tazer)
(the-as city-target-type (city-target-type guard-tazer))
)
((= v1-0 'guard-grenade)
(the-as city-target-type (city-target-type guard-grenade))
)
((= v1-0 'turret)
(the-as city-target-type (city-target-type turret))
)
((= v1-0 'spydroid)
(the-as city-target-type (city-target-type spydroid))
)
((= v1-0 'flitter)
(the-as city-target-type (city-target-type flitter))
)
((= v1-0 'grunt)
(the-as city-target-type (city-target-type grunt))
)
(else
(the-as city-target-type (city-target-type unknown))
)
)
)
)
)
;; definition of type cty-attack-controller
(deftype cty-attack-controller (mission-squad-control)
((guard-angry-hatred-info-index int8)
)
)
;; definition for method 3 of type cty-attack-controller
(defmethod inspect ((this cty-attack-controller))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tattackers: ~A~%" (-> this attackers))
(format #t "~1Tunused-list: ~A~%" (-> this unused-list))
(format #t "~1Thatred-vals: ~A~%" (-> this hatred-vals))
(format #t "~1Thatred-indices: ~A~%" (-> this hatred-indices))
(format #t "~1Tattacker-cache: ~A~%" (-> this attacker-cache))
(format #t "~1Ttarget-attacker: #<city-attacker-info @ #x~X>~%" (-> this target-attacker))
(format #t "~1Tmax-num-object-types: ~D~%" (-> this max-num-object-types))
(format #t "~1Tguard-angry-hatred-info-index: ~D~%" (-> this guard-angry-hatred-info-index))
(label cfg-4)
this
)
;; definition (perm) for symbol *cty-attack-controller*, type cty-attack-controller
(define-perm *cty-attack-controller* cty-attack-controller #f)
;; definition for function initialize-cty-attack-controller
(defun initialize-cty-attack-controller ()
(set! *cty-attack-controller* (new 'loading-level 'cty-attack-controller))
(init! *cty-attack-controller* 64 17 22)
(none)
)
;; definition for function cty-attack-reset
(defun cty-attack-reset ((arg0 symbol) (arg1 symbol) (arg2 symbol))
(if arg0
(init-attackers *cty-attack-controller*)
(reset-hatred *cty-attack-controller*)
)
(init-attack-controller *cty-attack-controller*)
(none)
)
;; definition for method 15 of type cty-attack-controller
;; WARN: Return type mismatch int vs none.
;; WARN: Function (method 15 cty-attack-controller) has a return type of none, but the expression builder found a return statement.
(defmethod init-attack-controller ((this cty-attack-controller))
(if (< (-> this hatred-vals allocated-length) 17)
(return 0)
)
(let ((s5-0 (push-back-hatred this)))
(set! (-> s5-0 hatred) 0.5)
(set! (-> s5-0 hatred-dist) 163840.0)
(set! (-> s5-0 dist-scale) 0.1)
(set! (-> s5-0 attacker-scale) 0.01)
(set! (-> s5-0 max-consider-dist) 409600.0)
(set-hatred-indices this s5-0 3 9)
(set-hatred-indices this s5-0 3 12)
(set-hatred-indices this s5-0 3 10)
(set-hatred-indices this s5-0 3 11)
(set-hatred-indices this s5-0 3 6)
(set-hatred-indices this s5-0 3 7)
(set-hatred-indices this s5-0 3 8)
)
(let ((s5-1 (push-back-hatred this)))
(set! (-> s5-1 hatred) 0.5)
(set! (-> s5-1 hatred-dist) 245760.0)
(set! (-> s5-1 dist-scale) 0.25)
(set! (-> s5-1 attacker-scale) 0.01)
(set! (-> s5-1 max-consider-dist) 409600.0)
(set-hatred-indices this s5-1 5 6)
(set-hatred-indices this s5-1 5 7)
(set-hatred-indices this s5-1 5 8)
(set-hatred-indices this s5-1 5 11)
)
(let ((s5-2 (push-back-hatred this)))
(set! (-> s5-2 hatred) 0.7)
(set! (-> s5-2 hatred-dist) 245760.0)
(set! (-> s5-2 dist-scale) 0.25)
(set! (-> s5-2 attacker-scale) 0.01)
(set! (-> s5-2 max-consider-dist) 409600.0)
(set-hatred-indices this s5-2 5 9)
(set-hatred-indices this s5-2 5 12)
)
(let ((a1-13 (push-back-hatred this)))
(set! (-> a1-13 hatred) 0.2)
(set! (-> a1-13 hatred-dist) 245760.0)
(set! (-> a1-13 dist-scale) 0.25)
(set! (-> a1-13 attacker-scale) 0.01)
(set! (-> a1-13 max-consider-dist) 163840.0)
(set-hatred-indices this a1-13 5 10)
)
(let ((a1-14 (push-back-hatred this)))
(set! (-> a1-14 hatred) 0.7)
(set! (-> a1-14 hatred-dist) 245760.0)
(set! (-> a1-14 dist-scale) 0.5)
(set! (-> a1-14 attacker-scale) 0.01)
(set! (-> a1-14 max-consider-dist) 409600.0)
(set-hatred-indices this a1-14 4 10)
)
(let ((s5-3 (push-back-hatred this)))
(set! (-> s5-3 hatred) 0.5)
(set! (-> s5-3 hatred-dist) 245760.0)
(set! (-> s5-3 dist-scale) 0.5)
(set! (-> s5-3 attacker-scale) 0.01)
(set! (-> s5-3 max-consider-dist) 409600.0)
(set-hatred-indices this s5-3 4 9)
(set-hatred-indices this s5-3 4 12)
(set-hatred-indices this s5-3 4 11)
(set-hatred-indices this s5-3 4 6)
(set-hatred-indices this s5-3 4 7)
(set-hatred-indices this s5-3 4 8)
)
(let ((s5-4 (push-back-hatred this)))
(set! (-> s5-4 hatred) 0.6)
(set! (-> s5-4 hatred-dist) 245760.0)
(set! (-> s5-4 dist-scale) 0.25)
(set! (-> s5-4 attacker-scale) 0.0)
(set! (-> s5-4 max-consider-dist) 409600.0)
(set-hatred-indices this s5-4 9 0)
(set-hatred-indices this s5-4 12 0)
(set-hatred-indices this s5-4 10 0)
(set-hatred-indices this s5-4 11 0)
(set-hatred-indices this s5-4 6 0)
(set-hatred-indices this s5-4 7 0)
(set-hatred-indices this s5-4 8 0)
)
(let ((s5-5 (push-back-hatred this)))
(set! (-> s5-5 hatred) 0.5)
(set! (-> s5-5 hatred-dist) 245760.0)
(set! (-> s5-5 dist-scale) 0.25)
(set! (-> s5-5 attacker-scale) 0.01)
(set! (-> s5-5 max-consider-dist) 409600.0)
(set-hatred-indices this s5-5 9 5)
(set-hatred-indices this s5-5 12 5)
(set-hatred-indices this s5-5 10 5)
(set-hatred-indices this s5-5 11 5)
(set-hatred-indices this s5-5 6 5)
(set-hatred-indices this s5-5 7 5)
(set-hatred-indices this s5-5 8 5)
(set-hatred-indices this s5-5 9 4)
(set-hatred-indices this s5-5 12 4)
(set-hatred-indices this s5-5 10 4)
(set-hatred-indices this s5-5 11 4)
(set-hatred-indices this s5-5 6 4)
(set-hatred-indices this s5-5 7 4)
(set-hatred-indices this s5-5 8 4)
(set-hatred-indices this s5-5 12 3)
(set-hatred-indices this s5-5 9 3)
(set-hatred-indices this s5-5 10 3)
(set-hatred-indices this s5-5 11 3)
(set-hatred-indices this s5-5 6 3)
(set-hatred-indices this s5-5 7 3)
(set-hatred-indices this s5-5 8 3)
)
(let ((s5-6 (push-back-hatred this)))
(set! (-> s5-6 hatred) 0.1)
(set! (-> s5-6 hatred-dist) 163840.0)
(set! (-> s5-6 dist-scale) 0.25)
(set! (-> s5-6 attacker-scale) 0.01)
(set! (-> s5-6 max-consider-dist) 163840.0)
(set-hatred-indices this s5-6 12 1)
(set-hatred-indices this s5-6 9 1)
(set-hatred-indices this s5-6 10 1)
(set-hatred-indices this s5-6 11 1)
(set-hatred-indices this s5-6 6 1)
(set-hatred-indices this s5-6 7 1)
(set-hatred-indices this s5-6 8 1)
)
(let ((s5-7 (push-back-hatred this)))
(set! (-> s5-7 hatred) 0.05)
(set! (-> s5-7 hatred-dist) 163840.0)
(set! (-> s5-7 dist-scale) 0.25)
(set! (-> s5-7 attacker-scale) 0.01)
(set! (-> s5-7 max-consider-dist) 163840.0)
(set-hatred-indices this s5-7 12 2)
(set-hatred-indices this s5-7 9 2)
(set-hatred-indices this s5-7 10 2)
(set-hatred-indices this s5-7 8 2)
)
(let ((v1-184 (push-back-hatred this)))
(set! (-> v1-184 hatred) 0.4)
(set! (-> v1-184 hatred-dist) 184320.0)
(set! (-> v1-184 dist-scale) 0.25)
(set! (-> v1-184 attacker-scale) 0.01)
(set! (-> v1-184 max-consider-dist) 327680.0)
(set! (-> this guard-angry-hatred-info-index) (the-as int (-> v1-184 index)))
)
(none)
)