;;-*-Lisp-*- (in-package goal) ;; name: precura-part.gc ;; name in dgo: precura-part ;; dgos: PRECA ;; DECOMP BEGINS (defpartgroup group-precura-generator-explode :id 1313 :flags (sp0 sp5) :bounds (static-bspherem 0 0 0 15) :parts ((sp-item 4411 :period (seconds 10) :length (seconds 6)) (sp-item 4412 :period (seconds 10) :length (seconds 2)) (sp-item 4413 :period (seconds 15) :length (seconds 0.035)) (sp-item 4414 :flags (sp3)) ) ) (defpart 4411 :init-specs ((:texture (motion-blur-part level-default-sprite)) (:num 8.0) (:x (meters -10) (meters 20)) (:y (meters -10) (meters 20)) (:z (meters -10) (meters 20)) (:scale-x (meters 0.04) (meters 0.04)) (:scale-y :copy scale-x) (:r 64.0 128.0) (:g 0.0 1 64.0) (:b 255.0) (:a 128.0 128.0) (:omega (degrees 0.045)) (:vel-y (meters 0) (meters 0.01)) (:fade-a -0.2125 -0.2125) (:timer (seconds 5)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:func 'sparticle-motion-blur) (:next-time (seconds 0.017)) (:next-launcher 4415) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4415 :init-specs ((:accel-x (meters -0.0033333334) 1 (meters 0.006666667)) (:accel-y (meters -0.0033333334) 1 (meters 0.006666667)) (:accel-z (meters -0.0033333334) 1 (meters 0.006666667)) (:next-time (seconds 0.067) (seconds 0.03)) (:next-launcher 4415) ) ) (defpart 4412 :init-specs ((:texture (bigpuff level-default-sprite)) (:num 1.0) (:scale-x (meters 3)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 255.0) (:a 64.0) (:vel-z (meters 0.026666667) (meters 0.026666667)) (:scalevel-x (meters 0.02)) (:scalevel-y :copy scalevel-x) (:fade-a -0.07111111 -0.07111111) (:timer (seconds 3)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:conerot-x (degrees -8) (degrees 16)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4413 :init-specs ((:texture (explosion-edge level-default-sprite)) (:num 20.0) (:scale-x (meters 3)) (:rot-y (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 80.0) (:g 128.0) (:b 255.0) (:a 128.0) (:vel-y (meters 0.00033333333) (meters 0.0033333334)) (:scalevel-x (meters 0.006666667)) (:scalevel-y :copy scalevel-x) (:fade-r -0.08888889) (:fade-g -0.033333335) (:fade-a -0.14222223 -0.14222223) (:friction 0.999) (:timer (seconds 3)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:func 'sparticle-2d-spline-align-instant) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4414 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 30)) (:rot-x (degrees 22.5)) (:scale-y (meters 50)) (:r 40.0) (:g 128.0) (:b 255.0) (:a 128.0) (:omega (degrees 6761.25)) (:fade-a -0.08533333) (:timer (seconds 5)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 4096.0) ) ) (defpartgroup group-platform-effect :id 1314 :flags (sp0 sp4 sp12) :bounds (static-bspherem 0 0 0 10) :parts ((sp-item 4417 :flags (sp7) :period (seconds 20) :length (seconds 2)) (sp-item 4418 :flags (sp3 sp7) :binding 4416) (sp-item 4419 :flags (sp3 sp7) :binding 4416) (sp-item 4420 :flags (sp3 sp7) :binding 4416) (sp-item 4421 :flags (sp3 sp7) :binding 4416) (sp-item 4422 :flags (sp3 sp7) :binding 4416) (sp-item 4416 :flags (sp2) :period (seconds 20) :length (seconds 2)) (sp-item 4416 :flags (sp2) :period (seconds 20) :length (seconds 2)) (sp-item 4416 :flags (sp2) :period (seconds 20) :length (seconds 2)) (sp-item 4416 :flags (sp2) :period (seconds 20) :length (seconds 2)) (sp-item 4416 :flags (sp2) :period (seconds 20) :length (seconds 2)) ) ) (defpart 4417 :init-specs ((:texture (glow-hotdot level-default-sprite)) (:num 2.0) (:scale-x (meters 0.5)) (:rot-x (degrees 450)) (:rot-y (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 64.0 64.0) (:g 0.0 64.0) (:b 255.0) (:a 128.0) (:vel-y (meters 1)) (:scalevel-x (meters 0.0033333334) (meters 0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-a -0.64 -0.64) (:friction 0.6 0.05) (:timer (seconds 0.667)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 81920.0) (:func 'spt-func-relative-pos) (:conerot-x (degrees 90) (degrees 180)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defun sparticle-track-joint-xz ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo)) (let* ((v1-1 (-> arg1 key proc)) (a1-1 (the int (-> arg1 user-float))) (v1-3 (vector<-cspace! (new 'stack-no-clear 'vector) (-> v1-1 node-list data a1-1))) ) (set! (-> arg2 launchrot x) (-> v1-3 x)) (set! (-> arg2 launchrot z) (-> v1-3 z)) ) 0 (none) ) (defpart 4418 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 1.0) (:y (meters 0)) (:scale-x (meters 0.01)) (:scale-y :copy scale-x) (:r 0.0) (:g 0.0) (:b 1.0) (:a 1.0) (:timer (seconds 5)) (:flags ()) (:userdata 4.0) (:func 'sparticle-track-joint-xz) ) ) (defpart 4419 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 1.0) (:y (meters -1)) (:scale-x (meters 0.01)) (:scale-y :copy scale-x) (:r 0.0) (:g 0.0) (:b 1.0) (:a 1.0) (:timer (seconds 5)) (:flags ()) (:userdata 4.0) (:func 'sparticle-track-joint-xz) ) ) (defpart 4420 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 1.0) (:y (meters -2)) (:scale-x (meters 0.01)) (:scale-y :copy scale-x) (:r 0.0) (:g 0.0) (:b 1.0) (:a 1.0) (:timer (seconds 5)) (:flags ()) (:userdata 4.0) (:func 'sparticle-track-joint-xz) ) ) (defpart 4421 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 1.0) (:y (meters -3)) (:scale-x (meters 0.01)) (:scale-y :copy scale-x) (:r 0.0) (:g 0.0) (:b 1.0) (:a 1.0) (:timer (seconds 5)) (:flags ()) (:userdata 4.0) (:func 'sparticle-track-joint-xz) ) ) (defpart 4422 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 1.0) (:y (meters -4)) (:scale-x (meters 0.01)) (:scale-y :copy scale-x) (:r 0.0) (:g 0.0) (:b 1.0) (:a 1.0) (:timer (seconds 5)) (:flags ()) (:userdata 4.0) (:func 'sparticle-track-joint-xz) ) ) (defpart 4416 :init-specs ((:texture (glow-hotdot level-default-sprite)) (:num 1.0) (:z (meters 4.5)) (:scale-x (meters 1)) (:scale-y :copy scale-x) (:r 64.0 64.0) (:g 0.0 64.0) (:b 255.0) (:a 128.0) (:omega (degrees 0) (degrees 360)) (:vel-x (meters -0.026666667) 1 (meters 0.053333335)) (:scalevel-x (meters 0.0033333334) (meters 0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-a -0.64 -0.64) (:timer (seconds 0.667)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 ready-to-launch)) ) ) (defpart 4423 :init-specs ((:texture (colorflash level-default-sprite)) (:num 1.5) (:scale-x (meters 15) (meters 3)) (:rot-x (degrees 22.5)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 60.0) (:fade-a -0.2 -0.2) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) ) ) (defpart 4424 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 20) (meters 3)) (:rot-x (degrees 22.5)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 64.0) (:g 0.0) (:b 255.0) (:a 60.0 10.0) (:fade-a -0.36571428 -0.36571428) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) ) ) (defpart 4425 :init-specs ((:texture (tinyspeck level-default-sprite)) (:num 20.0) (:scale-x (meters 1.5)) (:scale-y :copy scale-x) (:r 32.0 64.0) (:g 32.0) (:b 255.0) (:a 128.0) (:omega (degrees 0.1125)) (:vel-y (meters 0.06666667) (meters 0.06666667)) (:fade-a -0.36571428 -0.36571428) (:friction 0.9) (:timer (seconds 0.5) (seconds 0.497)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:func 'sparticle-motion-blur) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4426 :init-specs ((:texture (lightning-anim-01 level-default-sprite)) (:birth-func 'birth-func-texture-group) (:num 1.0 1.0) (:scale-x (meters 2) (meters 1)) (:rot-x 4) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 100.0) (:g 100.0) (:b 255.0) (:a 128.0 128.0) (:scalevel-x (meters -0.006666667) (meters 0.013333334)) (:rotvel-z (degrees -0.53333336) (degrees 1.0666667)) (:scalevel-y :copy scalevel-x) (:fade-a -0.36571428 -0.36571428) (:timer (seconds 0.017) (seconds 0.13)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:userdata :data (new 'static 'boxed-array :type int32 5 1 0 #x405700 #x405800 #x405900)) ) ) (defpartgroup group-bomb-spawner :id 1315 :bounds (static-bspherem 0 0 0 10) :parts ((sp-item 4427) (sp-item 4428)) ) (defpart 4427 :init-specs ((:texture (hotdot level-default-sprite)) (:num 1.0) (:x (meters 0) (meters 1.5)) (:scale-x (meters 0.5)) (:scale-y (meters 1.7)) (:r 0.0 50.0) (:g 50.0 32.0) (:b 0.0 64.0) (:a 32.0 64.0) (:scalevel-y (meters 0.21333334)) (:fade-a -1.6) (:timer (seconds 0.2)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4428 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:x (meters 0)) (:y (meters 0.4)) (:scale-x (meters 3) (meters 0.5)) (:rot-x (degrees 22.5)) (:scale-y (meters 6)) (:r 40.0 10.0) (:g 70.0 10.0) (:b 20.0 10.0) (:a 70.0 5.0) (:timer (seconds 0.005)) (:flags (sp-cpuinfo-flag-3 glow)) (:userdata 8192.0) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpartgroup group-shock-wave :id 1316 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 10) :parts ((sp-item 4429) (sp-item 4430)) ) (defpart 4429 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:y (meters 1)) (:scale-x (meters 5) (meters 3)) (:scale-y :copy scale-x) (:r 84.0) (:g 84.0) (:b 255.0) (:a 30.0 10.0) (:timer (seconds 0.005)) (:flags (sp-cpuinfo-flag-3 glow)) (:userdata 4096.0) ) ) (defpart 4430 :init-specs ((:texture (lightning-anim-01 level-default-sprite)) (:num 1.0) (:y (meters 1)) (:scale-x (meters 1) (meters 1)) (:rot-x 4) (:rot-z (degrees 0) (degrees 3598.0002)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 255.0) (:a 128.0) (:fade-a -1.6) (:timer (seconds 0.3) (seconds 0.197)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) ) ) (defpartgroup group-gem-d-smoke :id 1317 :duration (seconds 3) :linger-duration (seconds 3) :flags (sp0) :bounds (static-bspherem 0 0 0 640) :parts ((sp-item 4431 :flags (sp7))) ) (defpart 4432 :init-specs ((:texture (starflash level-default-sprite)) (:num 1.0) (:scale-x (meters 20.4) (meters 1.4)) (:rot-x (degrees 22.5)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0 64.0) (:g 100.0) (:b 30.0) (:a 128.0 55.0) (:omega (degrees 4511.25)) (:scalevel-x (meters 0.02)) (:scalevel-y :copy scalevel-x) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow)) (:userdata 4096.0) ) ) (defpart 4431 :init-specs ((:texture (bigpuff level-default-sprite)) (:num 1.0) (:scale-x (meters 2.5)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 34.0) (:g 34.0) (:b 64.0 34.0) (:a 64.0 10.0) (:scalevel-x (meters 0.033333335)) (:scalevel-y :copy scalevel-x) (:fade-b -0.64) (:fade-a -0.32) (:timer (seconds 0.335)) (:flags (sp-cpuinfo-flag-2)) (:rotate-y (degrees 0)) ) ) (defpartgroup group-gem-explosion :id 1318 :duration (seconds 2) :linger-duration (seconds 1) :flags (sp0 sp5 sp6 sp7) :bounds (static-bspherem 0 0 0 15) :rotate ((degrees 0) (degrees 90) (degrees 0)) :scale (1.5 1.5 1.5) :parts ((sp-item 4433 :flags (sp3)) (sp-item 4434 :flags (sp3)) (sp-item 4435 :period (seconds 30) :length (seconds 0.167)) (sp-item 4436 :flags (sp3)) ) ) (defpart 4437 :init-specs ((:texture (shockwave level-default-sprite)) (:num 1.0) (:scale-x (meters 10)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 128.0) (:a 128.0) (:scalevel-x (meters 0.33333334)) (:scalevel-y :copy scalevel-x) (:fade-a -1.28) (:timer (seconds 0.335)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:rotate-y (degrees 0)) ) ) (defpart 4433 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 20)) (:rot-x (degrees 225)) (:scale-y :copy scale-x) (:r 40.0) (:g 128.0) (:b 255.0) (:a 64.0) (:fade-a -0.21333334) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 40960.0) ) ) (defpart 4434 :init-specs ((:texture (starflash level-default-sprite)) (:num 1.0) (:scale-x (meters 50)) (:rot-x (degrees 2.25)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 40.0) (:g 80.0) (:b 255.0) (:a 255.0) (:omega (degrees 6767.9995)) (:scalevel-x (meters -0.6666667)) (:scalevel-y :copy scalevel-x) (:timer (seconds 0.135)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 4096.0) ) ) (defpart 4435 :init-specs ((:texture (explosion-edge level-default-sprite)) (:birth-func 'birth-func-flip-based-on-scale) (:num 10.0) (:scale-x (meters -1) 2.0 (meters 2)) (:rot-y (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 130.0) (:g 200.0 20.0) (:b 255.0) (:a 128.0) (:vel-y (meters 0) (meters 0.16666667)) (:scalevel-x (meters 0.013333334) (meters 0.013333334)) (:scalevel-y :copy scalevel-x) (:fade-r -0.26666668) (:fade-g -0.1) (:fade-a -0.42666668 -0.42666668) (:friction 0.8) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-0)) (:func 'sparticle-2d-spline-align-instant) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4436 :init-specs ((:texture (water-radiate level-default-sprite)) (:birth-func 'birth-func-flip-based-on-scale) (:num 100.0) (:x (meters 0) (meters 0.1)) (:scale-x (meters -1) 2.0 (meters 2)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 200.0) (:a 255.0) (:vel-y (meters 0.16666667) (meters 0.033333335)) (:scalevel-x (meters 0.013333334)) (:fade-r -1.7) (:fade-g -1.7) (:fade-a -0.85) (:friction 0.83) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-3 left-multiply-quat)) (:func 'sparticle-2d-spline-align-instant) (:next-time (seconds 0.25)) (:next-launcher 4438) (:conerot-x (degrees -90) (degrees 180)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4438 :init-specs ((:scalevel-x (meters 0)) (:scalevel-y :copy scalevel-x) (:fade-r -0.33333334) (:fade-g -0.6666667) (:friction 0.99) ) ) (defpartgroup group-precura-bulb-green-glow :id 1319 :bounds (static-bspherem 0 0 0 3) :parts ((sp-item 4439 :fade-after (meters 120) :flags (sp6))) ) (defpart 4439 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 5) (meters 0.1)) (:rot-x (degrees 9)) (:rot-z (degrees -17)) (:scale-y :copy scale-x) (:r 0.0) (:g 128.0) (:b 0.0) (:a 40.0 4.0) (:omega (degrees 2715.75)) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 819.2) ) ) (defpartgroup group-precura-bulb-green-glow-long :id 1320 :bounds (static-bspherem 0 0 0 3) :parts ((sp-item 4440 :fade-after (meters 120) :flags (sp6))) ) (defpart 4440 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 5) (meters 0.1)) (:rot-x (degrees 9)) (:rot-z (degrees -17)) (:scale-y :copy scale-x) (:r 0.0) (:g 128.0) (:b 0.0) (:a 40.0 4.0) (:omega (degrees 2715.75)) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 819.2) ) ) (defpartgroup group-precura-green-steam :id 1321 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 4441 :fade-after (meters 200) :falloff-to (meters 250) :flags (sp7))) ) (defpart 4441 :init-specs ((:texture (dirtpuff01 level-default-sprite)) (:num 0.04) (:z (meters 0) (meters 1)) (:scale-x (meters 2) (meters 1)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 0.0) (:g 128.0) (:b 80.0) (:a 0.0) (:vel-y (meters 0.005925926)) (:scalevel-x (meters 0.001) (meters 0.0033333334)) (:rotvel-z (degrees -0.13333334) (degrees 0.26666668)) (:scalevel-y :copy scalevel-x) (:fade-a 0.21333334) (:accel-x (meters -0.000033333334) (meters 0.00006666667)) (:accel-y (meters 0.00033333333) (meters 0.000033333334)) (:accel-z (meters -0.000033333334) (meters 0.00006666667)) (:friction 0.94) (:timer (seconds 16.667)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z)) (:next-time (seconds 1)) (:next-launcher 4442) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 4442 :init-specs ((:fade-a -0.0128 -0.0128)) ) (defpartgroup group-precura-green-glow-small :id 1322 :bounds (static-bspherem 0 0 0 3) :parts ((sp-item 4443 :fade-after (meters 120) :flags (sp6))) ) (defpart 4443 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 2) (meters 0.1)) (:rot-x (degrees 9)) (:rot-z (degrees -17)) (:scale-y :copy scale-x) (:r 0.0) (:g 128.0) (:b 0.0) (:a 40.0 4.0) (:omega (degrees 2715.75)) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 819.2) ) ) (defpartgroup group-precura-rtableb :id 1323 :bounds (static-bspherem 0 0 0 3) :parts ((sp-item 4444 :fade-after (meters 120) :flags (sp6))) ) (defpart 4444 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 8) (meters 0.2)) (:rot-x (degrees 9)) (:rot-z (degrees -17)) (:scale-y :copy scale-x) (:r 0.0) (:g 90.0) (:b 80.0) (:a 70.0 10.0) (:omega (degrees 2715.75)) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 819.2) ) )