;;-*-Lisp-*- (in-package goal) ;; definition for function cloud-track ;; INFO: Return type mismatch symbol vs none. ;; Used lq/sq (defbehavior cloud-track process ((arg0 process-tree) (arg1 process-tree) (arg2 (function vector none)) (arg3 time-frame) (arg4 time-frame) (arg5 time-frame) ) (change-parent self arg0) (let ((s1-1 (process->handle arg0)) (s2-1 (process->handle arg1)) ) (let ((s0-0 (-> *display* base-frame-counter))) (until (>= (- (-> *display* base-frame-counter) s0-0) (+ arg3 arg4)) (let ((v1-8 (or (not (handle->process s1-1)) (not (handle->process s2-1))))) (if v1-8 (deactivate self) ) ) (let* ((f0-1 (fmax 0.0 (fmin 1.0 (/ (- (the float (- (-> *display* base-frame-counter) s0-0)) (the float arg3)) (the float arg4))) ) ) (a0-18 (process-drawable-pair-random-point! (the-as process-drawable (-> s1-1 process 0)) (the-as process-drawable (-> s2-1 process 0)) (new-stack-vector0) f0-1 ) ) ) (arg2 a0-18) ) (suspend) ) ) (cond ((zero? arg5) (while #t (suspend) ) ) (else (let ((s4-1 (-> *display* base-frame-counter))) (until (>= (- (-> *display* base-frame-counter) s4-1) arg5) (let ((a0-21 (process-drawable-random-point! (the-as process-drawable (-> s2-1 process 0)) (new-stack-vector0)))) (arg2 a0-21) ) (suspend) ) ) ) ) ) (none) ) ;; failed to figure out what this is: (defpart 255 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 64.0) (sp-flt spt-g 64.0) (sp-flt spt-b 192.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0666667) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 256 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 64.0) (sp-flt spt-g 64.0) (sp-flt spt-b 192.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0666667) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 257 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x1f :page #x2)) (sp-rnd-flt spt-num 1.0 3.0 1.0) (sp-rnd-flt spt-scale-x (meters 0.5) (meters 1.5) 1.0) (sp-int spt-rot-x 4) (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0) (sp-rnd-flt spt-scale-y (meters 0.2) (meters 0.1) 1.0) (sp-flt spt-r 64.0) (sp-flt spt-g 64.0) (sp-flt spt-b 128.0) (sp-flt spt-a 128.0) (sp-flt spt-fade-a -1.6) (sp-int spt-timer 90) (sp-cpuinfo-flags bit2 bit3) (sp-int spt-next-time 10) (sp-launcher-by-id spt-next-launcher 258) ) ) ;; failed to figure out what this is: (defpart 259 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x1f :page #x2)) (sp-rnd-flt spt-num 0.0 3.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 1.5) 1.0) (sp-int spt-rot-x 4) (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0) (sp-rnd-flt spt-scale-y (meters 0.2) (meters 0.1) 1.0) (sp-flt spt-r 128.0) (sp-flt spt-g 128.0) (sp-flt spt-b 255.0) (sp-flt spt-a 128.0) (sp-flt spt-fade-a -1.6) (sp-int spt-timer 91) (sp-cpuinfo-flags bit2 bit3) (sp-int spt-next-time 10) (sp-launcher-by-id spt-next-launcher 258) ) ) ;; failed to figure out what this is: (defpart 258 :init-specs ((sp-flt spt-r 64.0) (sp-flt spt-g 64.0) (sp-flt spt-fade-r -1.0) (sp-flt spt-fade-g -0.4) (sp-flt spt-fade-a -2.0) ) ) ;; failed to figure out what this is: (defpart 260 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-flt spt-num 1.0) (sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.15) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 32.0) (sp-rnd-flt spt-g 32.0 64.0 1.0) (sp-rnd-flt spt-b 192.0 64.0 1.0) (sp-rnd-flt spt-a 64.0 128.0 1.0) (sp-flt spt-scalevel-x (meters -0.00033333333)) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-a -0.2) (sp-flt spt-accel-y -0.06826667) (sp-int spt-timer 450) (sp-cpuinfo-flags bit0 bit2 bit3) ) ) ;; failed to figure out what this is: (defpartgroup group-blue-hit-ground-effect :id 70 :duration 5 :linger-duration 450 :bounds (static-bspherem 0 0 0 2) :parts ((sp-item 261) (sp-item 262) (sp-item 263 :flags (is-3d)) (sp-item 264) (sp-item 265 :flags (is-3d))) ) ;; failed to figure out what this is: (defpart 264 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-flt spt-num 32.0) (sp-flt spt-y (meters 0.5)) (sp-rnd-flt spt-scale-x (meters 1) (meters 3) 1.0) (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-int spt-a 0 63 1.0) (sp-flt spt-vel-y (meters 0.093333334)) (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0) (sp-int spt-timer 150) (sp-cpuinfo-flags bit3) (sp-int-plain-rnd spt-next-time 20 19 1) (sp-launcher-by-id spt-next-launcher 266) (sp-flt spt-conerot-x (degrees 90.0)) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0)) ) ) ;; failed to figure out what this is: (defpart 266 :init-specs ((sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-int spt-a 0 63 1.0) (sp-int-plain-rnd spt-next-time 20 19 1) (sp-launcher-by-id spt-next-launcher 266) ) ) ;; failed to figure out what this is: (defpart 265 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x1e :page #x2)) (sp-flt spt-num 1.0) (sp-flt spt-y (meters 0.5)) (sp-flt spt-scale-x (meters 0)) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-flt spt-a 96.0 32.0 1.0) (sp-flt spt-scalevel-x (meters 0.21333334)) (sp-copy-from-other spt-scalevel-y -4) (sp-int spt-timer 120) (sp-cpuinfo-flags bit2 bit3 left-multiply-quat) (sp-int spt-next-time 60) (sp-launcher-by-id spt-next-launcher 267) ) ) ;; failed to figure out what this is: (defpart 267 :init-specs ((sp-flt spt-fade-a -2.1333334)) ) ;; failed to figure out what this is: (defpart 263 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x4 :page #x2)) (sp-flt spt-num 1.0) (sp-flt spt-y (meters 0.5)) (sp-flt spt-scale-x (meters 0)) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-flt spt-a 32.0 32.0 1.0) (sp-flt spt-scalevel-x (meters 0.22666667)) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-a -0.7111111) (sp-int spt-timer 90) (sp-cpuinfo-flags bit2 bit3 left-multiply-quat) (sp-int spt-next-time 45) (sp-launcher-by-id spt-next-launcher 268) ) ) ;; failed to figure out what this is: (defpart 268 :init-specs ((sp-flt spt-fade-a -1.4222223)) ) ;; failed to figure out what this is: (defpart 261 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-flt spt-num 32.0) (sp-rnd-flt spt-scale-x (meters 1) (meters 1) 1.0) (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-flt spt-a 16.0 32.0 1.0) (sp-rnd-flt spt-vel-y (meters 0.053333335) (meters 0.026666667) 1.0) (sp-flt spt-scalevel-x (meters 0.0033333334)) (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-a -0.16) (sp-flt spt-accel-y -1.3653333) (sp-flt spt-friction 0.95) (sp-int spt-timer 300) (sp-cpuinfo-flags bit2 bit12) (sp-rnd-flt spt-conerot-x (degrees 60.0) (degrees 30.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) ) ) ;; failed to figure out what this is: (defpart 262 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-flt spt-num 12.0) (sp-rnd-flt spt-scale-x (meters 0.5) (meters 0.25) 1.0) (sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 32.0 32.0 1.0) (sp-rnd-flt spt-b 192.0 63.0 1.0) (sp-rnd-flt spt-a 16.0 16.0 1.0) (sp-rnd-flt spt-vel-y (meters 0.10666667) (meters 0.053333335) 1.0) (sp-flt spt-scalevel-x (meters 0.0016666667)) (sp-rnd-flt spt-rotvel-z (degrees -0.2) (degrees 0.4) 1.0) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-a -0.21333334) (sp-flt spt-accel-y -1.3653333) (sp-flt spt-friction 0.95) (sp-int spt-timer 150) (sp-cpuinfo-flags bit2 bit12) (sp-rnd-flt spt-conerot-x (degrees 60.0) (degrees 30.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) ) ) ;; failed to figure out what this is: (defpart 269 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 92.0 32.0 1.0) (sp-rnd-flt spt-g 32.0 92.0 1.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 270 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 92.0 32.0 1.0) (sp-rnd-flt spt-g 32.0 92.0 1.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 271 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2)) (sp-rnd-flt spt-num 0.5 2.0 1.0) (sp-flt spt-y (meters -0.05)) (sp-rnd-flt spt-scale-x (meters 0.2) (meters 0.1) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 100.0 28.0 1.0) (sp-rnd-flt spt-g 64.0 64.0 1.0) (sp-flt spt-b 0.0) (sp-rnd-flt spt-a 64.0 64.0 1.0) (sp-rnd-flt spt-vel-y (meters 0.0023333333) (meters 0.0016666667) 1.0) (sp-flt spt-scalevel-x (meters -0.00083333335)) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-g -0.4) (sp-flt spt-fade-a -0.024242423) (sp-rnd-flt spt-accel-y -0.40960002 -1.2288 1.0) (sp-flt spt-friction 0.93) (sp-int-plain-rnd spt-timer 30 209 1) (sp-cpuinfo-flags bit2 bit3) (sp-int spt-next-time 90) (sp-launcher-by-id spt-next-launcher 272) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.05)) ) ) ;; failed to figure out what this is: (defpart 272 :init-specs ((sp-flt spt-fade-r 0.0)) ) ;; failed to figure out what this is: (defpart 273 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 92.0 32.0 1.0) (sp-flt spt-g 0.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 274 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 92.0 32.0 1.0) (sp-flt spt-g 0.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 275 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2)) (sp-rnd-flt spt-num 0.5 2.0 1.0) (sp-flt spt-y (meters -0.05)) (sp-rnd-flt spt-scale-x (meters 0.2) (meters 0.1) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-rnd-flt spt-r 100.0 28.0 1.0) (sp-flt spt-g 0.0) (sp-flt spt-b 0.0) (sp-rnd-flt spt-a 64.0 64.0 1.0) (sp-rnd-flt spt-vel-y (meters 0.0023333333) (meters 0.0016666667) 1.0) (sp-flt spt-scalevel-x (meters -0.00083333335)) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-g -0.4) (sp-flt spt-fade-a -0.024242423) (sp-rnd-flt spt-accel-y -0.40960002 -1.2288 1.0) (sp-flt spt-friction 0.93) (sp-int-plain-rnd spt-timer 30 209 1) (sp-cpuinfo-flags bit2 bit3) (sp-int spt-next-time 90) (sp-launcher-by-id spt-next-launcher 276) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.05)) ) ) ;; failed to figure out what this is: (defpart 276 :init-specs ((sp-flt spt-fade-r 0.0)) ) ;; failed to figure out what this is: (defpart 277 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x12 :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 92.0 32.0 1.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 278 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #x2)) (sp-rnd-flt spt-num 1.0 1.0 1.0) (sp-rnd-flt spt-scale-x (meters 1.5) (meters 0.4) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 92.0 32.0 1.0) (sp-flt spt-b 0.0) (sp-flt spt-a 64.0) (sp-flt spt-fade-a -1.0) (sp-int spt-timer 60) (sp-cpuinfo-flags bit2 bit3) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.5)) ) ) ;; failed to figure out what this is: (defpart 279 :init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xf :page #x2)) (sp-rnd-flt spt-num 0.5 2.0 1.0) (sp-flt spt-y (meters -0.05)) (sp-rnd-flt spt-scale-x (meters 0.2) (meters 0.1) 1.0) (sp-copy-from-other spt-scale-y -4) (sp-flt spt-r 0.0) (sp-rnd-flt spt-g 100.0 28.0 1.0) (sp-flt spt-b 0.0) (sp-rnd-flt spt-a 64.0 64.0 1.0) (sp-rnd-flt spt-vel-y (meters 0.0023333333) (meters 0.0016666667) 1.0) (sp-flt spt-scalevel-x (meters -0.00083333335)) (sp-copy-from-other spt-scalevel-y -4) (sp-flt spt-fade-g -0.4) (sp-flt spt-fade-a -0.024242423) (sp-rnd-flt spt-accel-y -0.40960002 -1.2288 1.0) (sp-flt spt-friction 0.93) (sp-int-plain-rnd spt-timer 30 209 1) (sp-cpuinfo-flags bit2 bit3) (sp-int spt-next-time 90) (sp-launcher-by-id spt-next-launcher 280) (sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 180.0) 1.0) (sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0) (sp-flt spt-conerot-radius (meters 0.05)) ) ) ;; failed to figure out what this is: (defpart 280 :init-specs ((sp-flt spt-fade-g 0.0)) ) ;; definition for function eco-blue-glow ;; INFO: Return type mismatch int vs none. (defun eco-blue-glow ((arg0 vector)) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 255) arg0 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) (if (rand-vu-percent? 0.5) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 257) arg0 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) 0 (none) ) ;; definition for function target-powerup-process ;; INFO: Return type mismatch int vs none. (defbehavior target-powerup-process target () (dummy-10 (-> self water)) (when (not *weather-off*) (case (-> self current-level name) (('swamp) (update-rain self) ) (('snow) (update-snow self) ) ) ) (cond ((and (= (-> self control ground-pat material) (pat-material ice)) (and (>= (-> self control unknown-float01) 204.8) (< (- (-> *display* base-frame-counter) (-> self control unknown-dword11)) (seconds 0.05)) ) ) (let ((gp-0 (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data 74)))) (if (and (< (fabs (vector-dot (-> self control dynam gravity-normal) (vector-! (new 'stack-no-clear 'vector) gp-0 (-> self control trans)) ) ) 819.2 ) (rand-vu-percent? 0.5) ) (sp-launch-particles-var *sp-particle-system-3d* (-> *part-id-table* 2391) gp-0 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) (let ((gp-1 (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data 70)))) (if (and (< (fabs (vector-dot (-> self control dynam gravity-normal) (vector-! (new 'stack-no-clear 'vector) gp-1 (-> self control trans)) ) ) 819.2 ) (rand-vu-percent? 0.5) ) (sp-launch-particles-var *sp-particle-system-3d* (-> *part-id-table* 2391) gp-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) (let ((f0-8 (lerp-scale 60.0 90.0 (-> self control unknown-float01) 0.0 81920.0))) (if (not (= (if (> (-> self skel active-channels) 0) (-> self skel root-channel 0 frame-group) ) (-> self draw art-group data 104) ) ) (set! f0-8 (* 0.75 f0-8)) ) (seek! (-> self control unknown-float141) f0-8 (* 100.0 (-> *display* seconds-per-frame))) ) (let ((f30-0 (-> self control unknown-float141)) (f0-13 (lerp-scale -0.3 0.3 (-> self control unknown-float01) 0.0 81920.0)) ) (sound-play-by-name (static-sound-name "ice-loop") (-> self control unknown-soundid00) (the int (* 10.24 f30-0)) (the int (* 1524.0 f0-13)) 0 1 (the-as symbol (-> self control trans)) ) ) ) ((< 0.0 (-> self control unknown-float141)) (set! (-> self control unknown-float141) 0.0) (let ((v1-64 (the-as sound-rpc-set-param (get-sound-buffer-entry)))) (set! (-> v1-64 command) (sound-command set-param)) (set! (-> v1-64 id) (-> self control unknown-soundid00)) (set! (-> v1-64 parms volume) -4) (set! (-> v1-64 auto-time) 48) (set! (-> v1-64 auto-from) 2) (set! (-> v1-64 parms mask) (the-as uint 17)) (-> v1-64 id) ) ) ) (let ((v1-67 (-> *time-of-day-context* current-shadow)) (a0-33 (-> self draw shadow-ctrl)) ) (set! (-> a0-33 settings shadow-dir x) (-> v1-67 x)) (set! (-> a0-33 settings shadow-dir y) (-> v1-67 y)) (set! (-> a0-33 settings shadow-dir z) (-> v1-67 z)) ) (when (and (!= (-> self fact-info-target eco-level) 0.0) (>= (- (-> *display* game-frame-counter) (-> self fact-info-target eco-pickup-time)) (the-as time-frame (-> self fact-info-target eco-timeout)) ) ) (set! (-> self fact-info-target eco-level) 0.0) (set! (-> self fact-info-target eco-timeout) 0) (set! (-> self state-flags) (logand -65 (-> self state-flags))) (send-event self 'reset-collide) (stop! (-> self sound)) ) (when (and (< 0.0 (-> self fact-info-target eco-level)) (zero? (logand (-> self state-flags) 512)) (zero? (logand (-> self draw status) (draw-status hidden no-anim))) (not (movie?)) (rand-vu-percent? (lerp-scale 0.0 1.0 (the float (- (-> self fact-info-target eco-timeout) (the-as uint (- (-> *display* game-frame-counter) (-> self fact-info-target eco-pickup-time))) ) ) 0.0 900.0 ) ) ) (case (-> self fact-info-target eco-type) (((pickup-type eco-yellow)) (change-sound! (-> self sound) (static-sound-name "yel-eco-jak")) (let ((s4-0 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* (if (rand-vu-percent? 0.5) 269 270 ) ) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data s4-0)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) (dotimes (gp-4 2) (let ((v1-111 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 271) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-111)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) ) (((pickup-type eco-red)) (target-danger-set! (-> self control unknown-symbol30) #t) (update-transforms! (-> self control)) (let ((a1-23 (new 'stack-no-clear 'touching-shapes-entry))) (set! (-> a1-23 cshape1) (the-as collide-shape 0)) (set! (-> a1-23 cshape2) (the-as collide-shape *touching-list*)) (find-overlapping-shapes (-> self control) (the-as overlaps-others-params a1-23)) ) (target-danger-set! (-> self control unknown-symbol30) #f) (update-transforms! (-> self control)) (change-sound! (-> self sound) (static-sound-name "red-eco-jak")) (let ((s4-2 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* (if (rand-vu-percent? 0.5) 273 274 ) ) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data s4-2)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) (dotimes (gp-6 2) (let ((v1-139 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 275) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-139)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) ) (((pickup-type eco-blue)) (change-sound! (-> self sound) (static-sound-name "blue-eco-jak")) (let ((v1-150 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (cond ((and (logtest? (-> self control unknown-surface00 flags) 2048) (zero? (logand (-> self control status) 1))) (set! (-> *part-id-table* 259 init-specs 4 initial-valuef) 0.0) (set! (-> *part-id-table* 259 init-specs 4 random-rangef) 65536.0) ) (else (set! (-> *part-id-table* 259 init-specs 4 initial-valuef) 40960.0) (set! (-> *part-id-table* 259 init-specs 4 random-rangef) 16384.0) ) ) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 259) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-150)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) (let ((gp-8 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* (if (rand-vu-percent? 0.5) 255 256 ) ) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data gp-8)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) (if (rand-vu-percent? 0.5) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 257) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data gp-8)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) (let ((v1-168 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 260) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-168)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) (cpad-set-buzz! (-> *cpad-list* cpads 0) 0 1 (seconds 0.1)) ) (((pickup-type eco-green)) (change-sound! (-> self sound) (static-sound-name "green-eco-jak")) (let ((s4-8 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* (if (rand-vu-percent? 0.5) 277 278 ) ) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data s4-8)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) (dotimes (gp-11 2) (let ((v1-188 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (sp-launch-particles-var *sp-particle-system-2d* (-> *part-id-table* 279) (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-188)) (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0 ) ) ) ) ) (update-trans! (-> self sound) (-> self control trans)) (update! (-> self sound)) ) 0 (none) ) ;; definition for function target-powerup-effect ;; INFO: Return type mismatch int vs none. (defbehavior target-powerup-effect target ((arg0 symbol)) (case arg0 (('eco-blue) (let ((v1-4 (rand-vu-int-range 3 (+ (-> self node-list length) -1)))) (eco-blue-glow (vector<-cspace! (new 'stack-no-clear 'vector) (-> self node-list data v1-4))) ) ) ) 0 (none) )