mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
36f1592b90
Also adds: - BLERC - Minimap (with missing texture for the map, sprites work) - Eco Mine files - Precursor robot boss files - Sewer files - Vehicle files
2044 lines
59 KiB
Common Lisp
2044 lines
59 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: sewer-part.gc
|
|
;; name in dgo: sewer-part
|
|
;; dgos: SEA
|
|
|
|
(define-extern *range-color-sewer-gas* curve-color-fast)
|
|
(define-extern *range-alpha-sewer-gas* curve2d-fast)
|
|
(define-extern *range-scale-sewer-gas-x* curve2d-fast)
|
|
(define-extern *range-scale-sewer-gas-y* curve2d-fast)
|
|
(define-extern *r-curve-sewer-gas* curve2d-fast)
|
|
(define-extern *g-curve-sewer-gas* curve2d-fast)
|
|
(define-extern *b-curve-sewer-gas* curve2d-fast)
|
|
(define-extern *curve-alpha-sewer-gas* curve2d-fast)
|
|
(define-extern *curve-sewer-gas-x* curve2d-fast)
|
|
(define-extern *curve-sewer-gas-y* curve2d-fast)
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
(defpartgroup group-sewer-gas
|
|
:id 1470
|
|
:flags (sp0)
|
|
:bounds (static-bspherem 0 0 0 640)
|
|
:parts ((sp-item 4856 :fade-after (meters 200) :falloff-to (meters 300) :flags (is-3d)))
|
|
)
|
|
|
|
(defpart 4856
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.15)
|
|
(:x (meters 10) (meters 50))
|
|
(:y (meters 20) (meters 40))
|
|
(:scale-x (meters 20) (meters 20))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0 128.0)
|
|
(:b 128.0 64.0)
|
|
(:a 0.0)
|
|
(:vel-x (meters -0.016666668) (meters 0.033333335))
|
|
(:vel-y (meters 0) (meters 0.0033333334))
|
|
(:scalevel-x (meters 0) (meters 0.033333335))
|
|
(:scalevel-y (meters 0) (meters 0.033333335))
|
|
(:fade-a 0.053333335)
|
|
(:timer (seconds 8))
|
|
(:flags (sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:next-time (seconds 4))
|
|
(:next-launcher 4857)
|
|
(:rotate-y (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4857
|
|
:init-specs ((:fade-a -0.053333335))
|
|
)
|
|
|
|
(defpartgroup group-sewer-steamvent
|
|
:id 1471
|
|
:flags (sp1 sp4)
|
|
:bounds (static-bspherem 0 0 0 6)
|
|
:parts ((sp-item 4858 :fade-after (meters 200) :falloff-to (meters 300) :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4858
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:birth-func 'birth-func-curve)
|
|
(:num 0.15)
|
|
(:x (meters -1) (meters 2))
|
|
(:y (meters -2) (meters 4))
|
|
(:z (meters 2))
|
|
(:scale-x (meters 4) (meters 8))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 150.0)
|
|
(:g 255.0)
|
|
(:b 20.0)
|
|
(:a 0.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.0016666667))
|
|
(:vel-z (meters 0.006666667) (meters 0.02))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:accel-y (meters 0.000033333334))
|
|
(:timer (seconds 1))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:userdata 0.0)
|
|
(:func 'live-func-curve)
|
|
(:launchrot-x (degrees -5) (degrees 10))
|
|
(:launchrot-y (degrees -5) (degrees 10))
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *range-color-sewer-gas* (new 'static 'curve-color-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'inline-array vector 4
|
|
(new 'static 'vector :x 8.0 :y 8.0 :z 8.0 :w 128.0)
|
|
(new 'static 'vector :x 64.0 :y 64.0 :z 64.0 :w 128.0)
|
|
(new 'static 'vector :x 64.0 :y 64.0 :z 64.0 :w 128.0)
|
|
(new 'static 'vector :x 64.0 :y 64.0 :z 64.0 :w 128.0)
|
|
)
|
|
:one-over-x-deltas (new 'static 'vector :x 1.0 :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *range-alpha-sewer-gas* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 32.0 :y 64.0 :z 65.0 :w 66.0)
|
|
:one-over-x-deltas (new 'static 'vector :x 32.0 :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *range-scale-sewer-gas-x* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 4.0 :y 4.0 :z 5.0 :w 6.0)
|
|
:one-over-x-deltas (new 'static 'vector :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *range-scale-sewer-gas-y* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 4.0 :y 4.0 :z 5.0 :w 6.0)
|
|
:one-over-x-deltas (new 'static 'vector :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *r-curve-sewer-gas* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -0.5 :z -0.7 :w -1.0)
|
|
:ys (new 'static 'vector :x 1.0 :y 0.5 :z 0.3)
|
|
:one-over-x-deltas (new 'static 'vector :x -1.0 :y -1.0 :z -1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *g-curve-sewer-gas* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -0.5 :z -0.7 :w -1.0)
|
|
:ys (new 'static 'vector :x 1.0 :y 1.0 :z 1.0 :w 1.0)
|
|
:one-over-x-deltas (new 'static 'vector :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *b-curve-sewer-gas* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 0.1 :y 0.1 :z 1.1 :w 2.1)
|
|
:one-over-x-deltas (new 'static 'vector :y 1.0 :z 0.9999999 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *curve-alpha-sewer-gas* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -0.2 :z -0.7 :w -1.0)
|
|
:ys (new 'static 'vector :y 0.5 :z 1.0)
|
|
:one-over-x-deltas (new 'static 'vector :x 2.5 :y 1.0 :z -3.3333333 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *curve-sewer-gas-x* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 1.0 :y 4.0 :z 5.0 :w 6.0)
|
|
:one-over-x-deltas (new 'static 'vector :x 3.0 :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(if #t
|
|
(set! *curve-sewer-gas-y* (new 'static 'curve2d-fast
|
|
:xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
|
|
:ys (new 'static 'vector :x 1.0 :y 4.0 :z 5.0 :w 6.0)
|
|
:one-over-x-deltas (new 'static 'vector :x 3.0 :y 1.0 :z 1.0 :w 1.0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *part-sewer-steam-puff-curve-settings* (new 'static 'particle-curve-settings
|
|
:lifetime-base (seconds 3)
|
|
:lifetime-offset (seconds 2)
|
|
:flags (particle-curve-flags pcf0 pcf1)
|
|
)
|
|
)
|
|
|
|
(set! (-> *part-id-table* 4858 init-specs 21 initial-valuef)
|
|
(the-as float *part-sewer-steam-puff-curve-settings*)
|
|
)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* color-start) *range-color-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* alpha-start) *range-alpha-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* scale-x-start) *range-scale-sewer-gas-x*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* scale-y-start) *range-scale-sewer-gas-y*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* r-scalar) *r-curve-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* g-scalar) *g-curve-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* b-scalar) *b-curve-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* a-scalar) *curve-alpha-sewer-gas*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* scale-x-scalar) *curve-sewer-gas-x*)
|
|
|
|
(set! (-> *part-sewer-steam-puff-curve-settings* scale-y-scalar) *curve-sewer-gas-y*)
|
|
|
|
(defpartgroup group-sewer-hard-blowing-steam
|
|
:id 1472
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 6)
|
|
:parts ((sp-item 4859 :flags (sp7)))
|
|
)
|
|
|
|
(define *steam-particle-list* (new 'static 'boxed-array :type int32 #x405c00 #x400000))
|
|
|
|
(defun birth-func-texture-group-steam ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo))
|
|
(particle-adgif-callback
|
|
(-> arg1 adgif)
|
|
(the-as
|
|
texture-id
|
|
(-> *steam-particle-list*
|
|
(mod (the-as int (rand-uint31-gen *random-generator*)) (-> *steam-particle-list* length))
|
|
)
|
|
)
|
|
)
|
|
0
|
|
(none)
|
|
)
|
|
|
|
(defpart 4859
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group-steam)
|
|
(:num 2.0)
|
|
(:scale-x (meters 0.3))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 0.0)
|
|
(:omega (degrees 0.1575))
|
|
(:vel-z (meters 0.2) (meters 0.033333335))
|
|
(:scalevel-x (meters 0.033333335))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.16)
|
|
(:friction 0.92)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:func 'sparticle-motion-blur)
|
|
(:next-time (seconds 0.335))
|
|
(:next-launcher 4860)
|
|
(:conerot-x (degrees 0) (degrees 10))
|
|
(:rotate-y (degrees 0))
|
|
(:rotate-z (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4860
|
|
:init-specs ((:fade-a -0.32))
|
|
)
|
|
|
|
(defpartgroup group-sewer-green-steam
|
|
:id 1473
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 6)
|
|
:parts ((sp-item 4861 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4861
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group-steam)
|
|
(:num 2.0)
|
|
(:x (meters 0) (meters 2))
|
|
(:scale-x (meters 1) (meters 2))
|
|
(:scale-y :copy scale-x)
|
|
(:r 90.0 30.0)
|
|
(:g 130.0)
|
|
(:b 32.0)
|
|
(:a 0.0)
|
|
(:omega (degrees 0.1575))
|
|
(:vel-y (meters 0.2) (meters 0.033333335))
|
|
(:scalevel-x (meters 0.033333335))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.32)
|
|
(:friction 0.92 0.02)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:func 'sparticle-motion-blur)
|
|
(:next-time (seconds 0.167))
|
|
(:next-launcher 4862)
|
|
(:conerot-x (degrees 0) (degrees 10))
|
|
(:rotate-y (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4862
|
|
:init-specs ((:fade-a -0.16))
|
|
)
|
|
|
|
(defpartgroup group-sewer-deadly-mist
|
|
:id 1474
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 100)
|
|
:parts ((sp-item 4863 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4863
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.5)
|
|
(:x (meters 0) (meters 2))
|
|
(:scale-x (meters 1) (meters 2))
|
|
(:scale-y :copy scale-x)
|
|
(:r 90.0 30.0)
|
|
(:g 130.0)
|
|
(:b 32.0)
|
|
(:a 0.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.016666668))
|
|
(:scalevel-x (meters 0.033333335))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.32)
|
|
(:accel-y (meters 0.00033333333))
|
|
(:friction 0.98)
|
|
(:timer (seconds 3))
|
|
(:flags (sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:next-time (seconds 0.167))
|
|
(:next-launcher 4864)
|
|
(:conerot-x (degrees 0) (degrees 90))
|
|
(:rotate-y (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4864
|
|
:init-specs ((:fade-a -0.018823529))
|
|
)
|
|
|
|
(defpartgroup group-sewer-light-glow
|
|
:id 1475
|
|
:bounds (static-bspherem 0 0 0 8)
|
|
:parts ((sp-item 4865 :fade-after (meters 200) :flags (sp6)))
|
|
)
|
|
|
|
(defpart 4865
|
|
:init-specs ((:texture (glow level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 3.5) (meters 0.1))
|
|
(:rot-x (degrees 4.5))
|
|
(:rot-z (degrees -17))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 255.0)
|
|
(:b 64.0)
|
|
(:a 12.0 4.0)
|
|
(:omega (degrees 4515.75))
|
|
(:timer (seconds 0.017))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
|
|
(:userdata 2048.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-panel-light-glow
|
|
:id 1476
|
|
:bounds (static-bspherem 0 0 0 8)
|
|
:parts ((sp-item 4866 :fade-after (meters 200) :flags (sp6)))
|
|
)
|
|
|
|
(defpart 4866
|
|
:init-specs ((:texture (glow level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 7) (meters 0.1))
|
|
(:rot-x (degrees 4.5))
|
|
(:rot-z (degrees -17))
|
|
(:scale-y :copy scale-x)
|
|
(:r 100.0)
|
|
(:g 255.0)
|
|
(:b 255.0)
|
|
(:a 12.0 4.0)
|
|
(:omega (degrees 4515.75))
|
|
(:timer (seconds 0.017))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
|
|
(:userdata 2048.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-little-ridge-wake
|
|
:id 1477
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4867 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4867
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 0.3 0.8)
|
|
(:scale-x (meters 0.5) (meters 1))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters 0.006666667) (meters 0.006666667))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:accel-y (meters -0.001))
|
|
(:accel-z (meters 0.001))
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-13))
|
|
(:conerot-x (degrees -5) (degrees 10))
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-fan-lasersight
|
|
:id 1478
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4868 :flags (sp6 sp7)) (sp-item 4869 :flags (sp6 sp7)))
|
|
)
|
|
|
|
(defpart 4868
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 1.5))
|
|
(:rot-x (degrees 11.25))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 16.0)
|
|
(:g 64.0)
|
|
(:b 10.0)
|
|
(:a 64.0 1.0)
|
|
(:omega (degrees 6761.25))
|
|
(:timer (seconds 0.017))
|
|
(:flags (glow))
|
|
(:userdata 4096.0)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4869
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:z (meters -1))
|
|
(:scale-x (meters 1.5))
|
|
(:rot-x (degrees 11.25))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 16.0)
|
|
(:g 64.0)
|
|
(:b 10.0)
|
|
(:a 64.0 1.0)
|
|
(:omega (degrees 6761.25))
|
|
(:timer (seconds 0.017))
|
|
(:flags (glow))
|
|
(:userdata 4096.0)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-fan-lasersight-hostile
|
|
:id 1479
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4870 :flags (sp6 sp7)) (sp-item 4871 :flags (sp6 sp7)))
|
|
)
|
|
|
|
(defpart 4870
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 1.5))
|
|
(:rot-x (degrees 11.25))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 112.0)
|
|
(:g 16.0)
|
|
(:b 10.0)
|
|
(:a 64.0 1.0)
|
|
(:omega (degrees 6761.25))
|
|
(:timer (seconds 0.017))
|
|
(:flags (glow))
|
|
(:userdata 4096.0)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4871
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:z (meters -1))
|
|
(:scale-x (meters 1.5))
|
|
(:rot-x (degrees 11.25))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 112.0)
|
|
(:g 16.0)
|
|
(:b 10.0)
|
|
(:a 64.0 1.0)
|
|
(:omega (degrees 6761.25))
|
|
(:timer (seconds 0.017))
|
|
(:flags (glow))
|
|
(:userdata 1228.8)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4872
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:z (meters -1))
|
|
(:scale-x (meters 3) (meters 0.1))
|
|
(:rot-x (degrees 11.25))
|
|
(:scale-y :copy scale-x)
|
|
(:r 255.0)
|
|
(:g 0.0)
|
|
(:b 0.0)
|
|
(:a 30.0 2.0)
|
|
(:timer (seconds 0.017))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
|
|
(:userdata 4096.0)
|
|
)
|
|
)
|
|
|
|
(defpart 4873
|
|
:init-specs ((:texture (glow-soft level-default-sprite))
|
|
(:num 1.0)
|
|
(:z (meters -1))
|
|
(:scale-x (meters 3) (meters 0.1))
|
|
(:rot-x (degrees 11.25))
|
|
(:scale-y :copy scale-x)
|
|
(:r 0.0)
|
|
(:g 64.0)
|
|
(:b 0.0)
|
|
(:a 30.0 2.0)
|
|
(:timer (seconds 0.017))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
|
|
(:userdata 4096.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-wake-small
|
|
:id 1480
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4874 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4874
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:num 0.2)
|
|
(:scale-x (meters 1) (meters 1))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-x (meters 0.008333334) (meters 0.0016666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.07111111 -0.07111111)
|
|
(:accel-z (meters 0.00033333333))
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z))
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-grate-wake
|
|
:id 1481
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4875 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4875
|
|
:init-specs ((:texture (water-wake sewa-sprite))
|
|
(:num 0.5)
|
|
(:x (meters 0))
|
|
(:z (meters -6) 6 (meters 2.1))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-x (degrees 0) 1 (degrees 180))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-x (meters 0.016666668) (meters 0.0016666667))
|
|
(:scalevel-y (meters 0.006666667) (meters 0.0016666667))
|
|
(:fade-a -0.10666667 -0.10666667)
|
|
(:accel-z (meters 0.00033333333))
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z))
|
|
(:rotate-y (degrees 90))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-yellow-grate-wake
|
|
:id 1482
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4876 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4876
|
|
:init-specs ((:texture (water-wake sewa-sprite))
|
|
(:num 1.0)
|
|
(:x (meters 0))
|
|
(:z (meters -7.6) 4 (meters 3))
|
|
(:scale-x (meters 0.5) (meters 0.3))
|
|
(:rot-x (degrees 0) 1 (degrees 180))
|
|
(:scale-y :copy scale-x)
|
|
(:r 255.0)
|
|
(:g 255.0)
|
|
(:b 255.0)
|
|
(:a 64.0 64.0)
|
|
(:scalevel-x (meters 0.016666668) (meters 0.0016666667))
|
|
(:scalevel-y (meters 0.013333334) (meters 0.0016666667))
|
|
(:fade-a -0.21333334 -0.21333334)
|
|
(:accel-x (meters 0.00033333333))
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 launch-along-z))
|
|
(:rotate-y (degrees 90))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-falls-froth
|
|
:id 1483
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4877 :flags (is-3d sp7))
|
|
(sp-item 4878 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4877
|
|
:init-specs ((:texture (water-froth sewa-sprite))
|
|
(:num 0.02 0.02)
|
|
(:x (meters -4) (meters 8))
|
|
(:z (meters -10))
|
|
(:scale-x (meters 5) (meters 20))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 110.0)
|
|
(:b 60.0 20.0)
|
|
(:a 32.0 32.0)
|
|
(:vel-z (meters 0.02) (meters 0.006666667))
|
|
(:rotvel-y (degrees -0.010000001) (degrees 0.020000001))
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 launch-along-z left-multiply-quat))
|
|
(:next-time (seconds 5))
|
|
(:next-launcher 4879)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4879
|
|
:init-specs ((:fade-a -0.042666666))
|
|
)
|
|
|
|
(defpart 4878
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -5) (meters 10))
|
|
(:y (meters 0))
|
|
(:z (meters -0.3) (meters 0.6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-y (meters 0.00033333333))
|
|
(:accel-z (meters 0.00016666666))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-whirlpool-center
|
|
:id 1484
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4880 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4881 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4881
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 0.5)
|
|
(:x (meters 0) (meters 1))
|
|
(:y (meters -0.5))
|
|
(:scale-x (meters 0.2) (meters 0.2))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:vel-y (meters 0.016666668))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335)
|
|
(:accel-y (meters -0.00033333333))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:conerot-x (degrees 0) (degrees 2))
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpart 4880
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.5)
|
|
(:x (meters 0) (meters 2))
|
|
(:y (meters 1))
|
|
(:scale-x (meters 1) (meters 2))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.016666668))
|
|
(:scalevel-x (meters 0.006666667))
|
|
(:rotvel-z (degrees -0.1) (degrees 0.2))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.32)
|
|
(:accel-y (meters 0) (meters 0.00033333333))
|
|
(:friction 0.95)
|
|
(:timer (seconds 3))
|
|
(:flags (sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:next-time (seconds 0.167))
|
|
(:next-launcher 4882)
|
|
(:conerot-x (degrees 0) (degrees 90))
|
|
(:rotate-y (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4882
|
|
:init-specs ((:fade-a -0.018823529))
|
|
)
|
|
|
|
(defpartgroup group-sewer-falls-tilt
|
|
:id 1485
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4883 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4883
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 6.0)
|
|
(:x (meters -9) (meters 18))
|
|
(:y (meters 0.4))
|
|
(:z (meters -0.3) (meters 0.6))
|
|
(:scale-x (meters 0.5) (meters 0.5))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.006666667) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-x (meters -0.00066666666))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-waterfall-base
|
|
:id 1486
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4884 :fade-after (meters 60) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
(sp-item 4885 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4884
|
|
:init-specs ((:texture (laser-hit2 level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:z (meters 1))
|
|
(:scale-x (meters 3) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-z (meters 0.00033333333))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406400 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4885
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -1.5) (meters 3))
|
|
(:y (meters 0))
|
|
(:z (meters -0.3) (meters 0.6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-waterfall-base-big
|
|
:id 1487
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 20)
|
|
:parts ((sp-item 4886 :fade-after (meters 100) :falloff-to (meters 400) :flags (sp7))
|
|
(sp-item 4887 :fade-after (meters 100) :falloff-to (meters 200) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4886
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.3 0.3)
|
|
(:x (meters -10) (meters 15))
|
|
(:y (meters -0.4))
|
|
(:z (meters 0))
|
|
(:scale-x (meters 1) (meters 4))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-z (meters 0) (meters 0.06666667))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.021333333 0.021333333)
|
|
(:accel-y (meters 0.000033333334) (meters 0.000033333334))
|
|
(:friction 0.95)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 2.5))
|
|
(:next-launcher 4888)
|
|
(:conerot-y (degrees -10) (degrees 20))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4888
|
|
:init-specs ((:fade-a -0.042666666 -0.042666666))
|
|
)
|
|
|
|
(defpart 4889
|
|
:init-specs ((:texture (laser-hit2 level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.1)
|
|
(:z (meters 1))
|
|
(:scale-x (meters 12) (meters 0.5))
|
|
(:rot-y (degrees 0) 1 (degrees 180))
|
|
(:scale-y (meters 3) (meters 0.5))
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-x (meters 0.013333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-z (meters 0.00033333333))
|
|
(:friction 0.9)
|
|
(:timer (seconds 4))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406400 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4890
|
|
:init-specs ((:texture (laser-hit2 level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.1)
|
|
(:z (meters 1))
|
|
(:scale-x (meters 3) (meters 0.5))
|
|
(:rot-y (degrees 90) 1 (degrees 180))
|
|
(:scale-y (meters 12) (meters 0.5))
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-x (meters 0.013333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-z (meters 0.00033333333))
|
|
(:friction 0.9)
|
|
(:timer (seconds 4))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406400 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4887
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -6) (meters 12))
|
|
(:y (meters 0))
|
|
(:z (meters -0.3) (meters 0.6))
|
|
(:scale-x (meters 1) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-waterfall-base-tube
|
|
:id 1488
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 20)
|
|
:parts ((sp-item 4891 :fade-after (meters 100) :falloff-to (meters 200) :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4891
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -6) (meters 12))
|
|
(:y (meters 0))
|
|
(:z (meters -0.3) (meters 0.6))
|
|
(:scale-x (meters 1) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 255.0)
|
|
(:g 50.0 50.0)
|
|
(:b 40.0)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:vel-z (meters 0.0033333334) (meters 0.02))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-wake-medium
|
|
:id 1489
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4892 :flags (sp7)) (sp-item 4893 :flags (sp7)) (sp-item 4894 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4892
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 5.0)
|
|
(:x (meters -3.5))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 100.0 28.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.026666667))
|
|
(:scalevel-x (meters 0.01))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.85333335)
|
|
(:accel-y (meters -0.001))
|
|
(:accel-z (meters 0.0016666667))
|
|
(:friction 0.96)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:func 'check-drop-group-center)
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees -10) (degrees -90))
|
|
)
|
|
)
|
|
|
|
(defpart 4893
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 5.0)
|
|
(:x (meters -3.5))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 100.0 28.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.026666667))
|
|
(:scalevel-x (meters 0.01))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.85333335)
|
|
(:accel-y (meters -0.001))
|
|
(:accel-z (meters -0.0016666667))
|
|
(:friction 0.96)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:func 'check-drop-group-center)
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees 180) (degrees 100.00001))
|
|
)
|
|
)
|
|
|
|
(defpart 4894
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:num 0.5)
|
|
(:scale-x (meters 8) (meters 1))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-z (meters 0.02))
|
|
(:scalevel-x (meters -0.013333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.07111111)
|
|
(:accel-x (meters -0.00013333333))
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-wake-large
|
|
:id 1490
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4895 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4895
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.1)
|
|
(:scale-x (meters 3.3))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0)
|
|
(:scalevel-x (meters 0.01))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.10666667)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:friction 0.98)
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:next-time (seconds 0.335))
|
|
(:next-launcher 4896)
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpart 4896
|
|
:init-specs ((:scalevel-x (meters -0.006666667)) (:scalevel-y :copy scalevel-x))
|
|
)
|
|
|
|
(defpartgroup group-sew-wake-tiny
|
|
:id 1491
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 4)
|
|
:parts ((sp-item 4897 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4897
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.2)
|
|
(:scale-x (meters 2))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0)
|
|
(:scalevel-x (meters -0.0026666666))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.10666667)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:friction 0.98)
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-deep-mist
|
|
:id 1492
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 200)
|
|
:parts ((sp-item 4898 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4898
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.1 0.1)
|
|
(:x (meters 0))
|
|
(:y (meters 0))
|
|
(:z (meters 0) (meters 10))
|
|
(:scale-x (meters 10) (meters 4))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 100.0 20.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-x (meters 0) (meters 0.06666667))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.008 0.008)
|
|
(:accel-y (meters 0.0001) (meters 0.000033333334))
|
|
(:friction 0.99)
|
|
(:timer (seconds 10))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 6.667))
|
|
(:next-launcher 4899)
|
|
(:conerot-y (degrees -10) (degrees 20))
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpart 4899
|
|
:init-specs ((:fade-a -0.032 -0.032))
|
|
)
|
|
|
|
(defpartgroup group-sewer-waterfall-base-huge
|
|
:id 1493
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 30)
|
|
:parts ((sp-item 4900 :fade-after (meters 50) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4901 :fade-after (meters 50) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4902 :fade-after (meters 50) :falloff-to (meters 100) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4900
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.3 0.3)
|
|
(:x (meters 0))
|
|
(:y (meters -0.4))
|
|
(:z (meters -40) (meters 80))
|
|
(:scale-x (meters 1) (meters 4))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-x (meters 0) (meters 0.06666667))
|
|
(:scalevel-x (meters 0.013333334) (meters 0.013333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.021333333 0.021333333)
|
|
(:accel-y (meters 0.000033333334) (meters 0.000033333334))
|
|
(:friction 0.95)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 2.5))
|
|
(:next-launcher 4903)
|
|
(:conerot-y (degrees -10) (degrees 20))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4903
|
|
:init-specs ((:fade-a -0.042666666 -0.042666666))
|
|
)
|
|
|
|
(defpart 4901
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 10.0)
|
|
(:x (meters -0.3) (meters 0.6))
|
|
(:y (meters 0))
|
|
(:z (meters -40) (meters 40))
|
|
(:scale-x (meters 1) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00066666666))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4902
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 10.0)
|
|
(:x (meters -0.3) (meters 0.6))
|
|
(:y (meters 0))
|
|
(:z (meters 0) (meters 40))
|
|
(:scale-x (meters 1) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00066666666))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-waterfall-base-top
|
|
:id 1494
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4904 :fade-after (meters 100) :falloff-to (meters 200) :flags (sp7))
|
|
(sp-item 4905 :fade-after (meters 100) :falloff-to (meters 200) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4904
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.3 0.3)
|
|
(:x (meters 0))
|
|
(:y (meters -0.4))
|
|
(:z (meters -30) (meters 60))
|
|
(:scale-x (meters 1) (meters 4))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-x (meters 0) (meters 0.06666667))
|
|
(:scalevel-x (meters 0.013333334) (meters 0.013333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.021333333 0.021333333)
|
|
(:accel-y (meters 0.000033333334) (meters 0.000033333334))
|
|
(:friction 0.95)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 2.5))
|
|
(:next-launcher 4903)
|
|
(:conerot-y (degrees -10) (degrees 20))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4905
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 20.0)
|
|
(:x (meters -0.3) (meters 0.6))
|
|
(:y (meters 0))
|
|
(:z (meters -30) (meters 60))
|
|
(:scale-x (meters 1) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:vel-y (meters -0.01))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.256)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00066666666))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-4-waterfalls
|
|
:id 1495
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 20)
|
|
:parts ((sp-item 4906 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4907 :fade-after (meters 60) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
(sp-item 4908 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4909 :fade-after (meters 60) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
(sp-item 4910 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4911 :fade-after (meters 60) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
(sp-item 4912 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4913 :fade-after (meters 60) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
(sp-item 4914 :fade-after (meters 60) :falloff-to (meters 100) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4906
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.5 0.5)
|
|
(:x (meters 0))
|
|
(:y (meters -0.4))
|
|
(:z (meters -20) (meters 35))
|
|
(:scale-x (meters 1) (meters 4))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-x (meters 0) (meters 0.06666667))
|
|
(:scalevel-x (meters 0.006666667) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.021333333 0.021333333)
|
|
(:accel-y (meters 0.000033333334) (meters 0.000033333334))
|
|
(:friction 0.95)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 2.5))
|
|
(:next-launcher 4915)
|
|
(:conerot-y (degrees -10) (degrees 20))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4915
|
|
:init-specs ((:fade-a -0.042666666 -0.042666666))
|
|
)
|
|
|
|
(defpart 4907
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:x (meters 1))
|
|
(:z (meters 13))
|
|
(:scale-x (meters 6) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4908
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -0.5) (meters 1))
|
|
(:y (meters 0))
|
|
(:z (meters 10) (meters 6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0 64.0)
|
|
(:vel-y (meters -0.013333334))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.4 -0.4)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00033333333))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4909
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:x (meters 1))
|
|
(:z (meters 4.6))
|
|
(:scale-x (meters 6) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4910
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -0.5) (meters 1))
|
|
(:y (meters 0))
|
|
(:z (meters 1.4) (meters 6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0 64.0)
|
|
(:vel-y (meters -0.013333334))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.4 -0.4)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00033333333))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4911
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:x (meters 1))
|
|
(:z (meters -3))
|
|
(:scale-x (meters 6) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4912
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -0.5) (meters 1))
|
|
(:y (meters 0))
|
|
(:z (meters -6.5) (meters 6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0 64.0)
|
|
(:vel-y (meters -0.013333334))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.4 -0.4)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00033333333))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4913
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:x (meters 1))
|
|
(:z (meters -11.5))
|
|
(:scale-x (meters 6) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0 16.0)
|
|
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.053333335 -0.053333335)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4914
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 4.0)
|
|
(:x (meters -0.5) (meters 1))
|
|
(:y (meters 0))
|
|
(:z (meters -15) (meters 6))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0 64.0)
|
|
(:vel-y (meters -0.013333334))
|
|
(:scalevel-x (meters 0.0033333334) (meters 0.006666667))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.4 -0.4)
|
|
(:accel-x (meters 0.00033333333) (meters 0.00033333333))
|
|
(:accel-y (meters 0.00033333333))
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-moving-step-a-wake
|
|
:id 1496
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 5)
|
|
:parts ((sp-item 4916 :flags (sp7)) (sp-item 4917 :flags (sp7)) (sp-item 4918 :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4916
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 2.0)
|
|
(:x (meters -3.5))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 100.0 28.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.026666667))
|
|
(:scalevel-x (meters 0.01))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.85333335)
|
|
(:accel-y (meters -0.001))
|
|
(:accel-z (meters 0.0016666667))
|
|
(:friction 0.96)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:func 'check-drop-group-center)
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees 80) (degrees -90))
|
|
)
|
|
)
|
|
|
|
(defpart 4917
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 2.0)
|
|
(:x (meters -3.5))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 100.0 28.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.026666667))
|
|
(:scalevel-x (meters 0.01))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.85333335)
|
|
(:accel-y (meters -0.001))
|
|
(:accel-z (meters -0.0016666667))
|
|
(:friction 0.96)
|
|
(:timer (seconds 0.5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:func 'check-drop-group-center)
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees 260) (degrees 100.00001))
|
|
)
|
|
)
|
|
|
|
(defpart 4918
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.1)
|
|
(:scale-x (meters 6.5) (meters 0.5))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 64.0)
|
|
(:scalevel-x (meters 0.01))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.10666667)
|
|
(:accel-x (meters 0.00066666666))
|
|
(:friction 0.98)
|
|
(:timer (seconds 2))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:next-time (seconds 0.335))
|
|
(:next-launcher 4919)
|
|
(:rotate-y (degrees 0) (degrees 360))
|
|
)
|
|
)
|
|
|
|
(defpart 4919
|
|
:init-specs ((:scalevel-x (meters -0.006666667)) (:scalevel-y :copy scalevel-x))
|
|
)
|
|
|
|
(defpartgroup group-sew-moving-step-b-wake
|
|
:id 1497
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 5)
|
|
:parts ((sp-item 4920 :fade-after (meters 80) :falloff-to (meters 100) :flags (sp7))
|
|
(sp-item 4921 :fade-after (meters 80) :falloff-to (meters 100) :flags (is-3d sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4920
|
|
:init-specs ((:texture (water-drops level-default-sprite))
|
|
(:num 3.0)
|
|
(:x (meters -4.2) (meters 8.4))
|
|
(:z (meters 1.2))
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-z (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 100.0 28.0)
|
|
(:vel-y (meters 0.0033333334) (meters 0.013333334))
|
|
(:scalevel-x (meters 0.01))
|
|
(:rotvel-z (degrees -0.2) (degrees 0.4))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.42666668)
|
|
(:accel-y (meters -0.0016666667))
|
|
(:accel-z (meters 0.001))
|
|
(:friction 0.96)
|
|
(:timer (seconds 1))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:func 'check-drop-group-center)
|
|
(:conerot-z (degrees -5) (degrees 10))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4921
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.4)
|
|
(:y (meters 0.8))
|
|
(:z (meters 1.5))
|
|
(:scale-x (meters 9) (meters 1))
|
|
(:rot-y (degrees 0))
|
|
(:scale-y (meters 1) (meters 1))
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-y (meters 0.013333334))
|
|
(:fade-a -0.21333334)
|
|
(:accel-z (meters 0.001))
|
|
(:timer (seconds 1))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-x (degrees 55))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-grate-bubbles
|
|
:id 1498
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 8)
|
|
:parts ((sp-item 4922 :fade-after (meters 80) :falloff-to (meters 100) :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4922
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.2)
|
|
(:z (meters -1))
|
|
(:scale-x (meters 4) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 16.0)
|
|
(:vel-z (meters 0.033333335))
|
|
(:scalevel-x (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.017777778 -0.017777778)
|
|
(:accel-z (meters 0.00066666666))
|
|
(:friction 0.9)
|
|
(:timer (seconds 3))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x408200))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-slide-froth
|
|
:id 1499
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 8)
|
|
:parts ((sp-item 4923 :fade-after (meters 80) :falloff-to (meters 100) :flags (is-3d sp7)))
|
|
)
|
|
|
|
(defpart 4923
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:birth-func 'birth-func-texture-group)
|
|
(:num 0.5)
|
|
(:x (meters -2) (meters 4))
|
|
(:z (meters -1))
|
|
(:scale-x (meters 4) (meters 0.5))
|
|
(:rot-y (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 120.0 50.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-z (meters 0.033333335))
|
|
(:scalevel-x (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.32)
|
|
(:accel-z (meters 0.00066666666))
|
|
(:friction 0.9 0.03)
|
|
(:timer (seconds 3))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 left-multiply-quat))
|
|
(:userdata :data (new 'static 'boxed-array :type int32 5 0 0 #x406500 #x58300600))
|
|
(:next-time (seconds 0.335))
|
|
(:next-launcher 4924)
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4924
|
|
:init-specs ((:fade-a -0.04))
|
|
)
|
|
|
|
(defpartgroup group-flyingsaw-sparks
|
|
:id 1500
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 10)
|
|
:parts ((sp-item 4925 :flags (sp7)) (sp-item 4926 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4925
|
|
:init-specs ((:texture (hitspark level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 0.1) (meters 0.5))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 255.0)
|
|
(:timer (seconds 0.017))
|
|
(:flags (sp-cpuinfo-flag-3))
|
|
)
|
|
)
|
|
|
|
(defpart 4926
|
|
:init-specs ((:texture (motion-blur-part level-default-sprite))
|
|
(:num 0.5 0.5)
|
|
(:scale-x (meters 0.05) (meters 0.05))
|
|
(:rot-x 4)
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 255.0)
|
|
(:omega (degrees 0.0225))
|
|
(:vel-y (meters 0.033333335) (meters 0.033333335))
|
|
(:fade-g -0.64)
|
|
(:fade-b -2.56)
|
|
(:fade-a -1.28 -1.28)
|
|
(:accel-y (meters -0.0013333333))
|
|
(:friction 0.9)
|
|
(:timer (seconds 0.335))
|
|
(: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))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sew-fan-gust
|
|
:id 1501
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 20)
|
|
:parts ((sp-item 4927 :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4927
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 6.0)
|
|
(:y (meters 1) (meters 0.5))
|
|
(:scale-x (meters 1))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 8.0 8.0)
|
|
(:vel-z (meters 0.1))
|
|
(:scalevel-x (meters 0.013333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.064)
|
|
(:timer (seconds 0.835))
|
|
(:flags (sp-cpuinfo-flag-2))
|
|
(:conerot-x (degrees 0) (degrees 20))
|
|
(:rotate-z (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-rising-bubbles
|
|
:id 1502
|
|
:flags (sp0)
|
|
:bounds (static-bspherem 0 0 0 40)
|
|
:parts ((sp-item 4928 :fade-after (meters 100) :falloff-to (meters 200) :flags (sp7)))
|
|
)
|
|
|
|
(defpart 4928
|
|
:init-specs ((:texture (lakedrop level-default-sprite))
|
|
(:num 0.01 0.5)
|
|
(:x (meters 0) (meters 2))
|
|
(:y (meters 0))
|
|
(:scale-x (meters 0.1))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 0.0)
|
|
(:accel-y (meters 0.00083333335))
|
|
(:timer (seconds 3.667))
|
|
(:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
|
|
(:func 'spt-func-birth-on-bubble-pop)
|
|
(:next-time (seconds 0.017))
|
|
(:next-launcher 4929)
|
|
(:rotate-y (degrees 0) (degrees 3600))
|
|
)
|
|
)
|
|
|
|
(defpart 4929
|
|
:init-specs ((:scale-x (meters 0.2) (meters 0.2))
|
|
(:scale-y :copy scale-x)
|
|
(:fade-a -0.04 0.16)
|
|
(:accel-x (meters -0.00033333333) 1 (meters 0.00066666666))
|
|
(:accel-z (meters -0.00033333333) 1 (meters 0.00066666666))
|
|
(:friction 0.9)
|
|
(:next-time (seconds 0.1) (seconds 0.03))
|
|
(:next-launcher 4929)
|
|
)
|
|
)
|
|
|
|
;; WARN: Return type mismatch (pointer process) vs none.
|
|
(defun spt-func-birth-on-bubble-pop ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo))
|
|
(when (zero? (-> arg1 timer))
|
|
(cond
|
|
((logtest? (-> *part-group-id-table* 1503 flags) (sp-group-flag sp13))
|
|
(let ((v1-6 (-> *launch-matrix* trans))
|
|
(a0-1 (new 'stack-no-clear 'vector))
|
|
)
|
|
(set! (-> a0-1 x) (-> arg2 launchrot x))
|
|
(set! (-> a0-1 y) (-> arg2 launchrot y))
|
|
(set! (-> a0-1 z) (-> arg2 launchrot z))
|
|
(set! (-> a0-1 w) 1.0)
|
|
(set! (-> v1-6 quad) (-> a0-1 quad))
|
|
)
|
|
(part-tracker-spawn part-tracker-subsampler :to *entity-pool* :group (-> *part-group-id-table* 1503))
|
|
)
|
|
(else
|
|
(let ((v1-19 (-> *launch-matrix* trans))
|
|
(a0-6 (new 'stack-no-clear 'vector))
|
|
)
|
|
(set! (-> a0-6 x) (-> arg2 launchrot x))
|
|
(set! (-> a0-6 y) (-> arg2 launchrot y))
|
|
(set! (-> a0-6 z) (-> arg2 launchrot z))
|
|
(set! (-> a0-6 w) 1.0)
|
|
(set! (-> v1-19 quad) (-> a0-6 quad))
|
|
)
|
|
(part-tracker-spawn part-tracker :to *entity-pool* :group (-> *part-group-id-table* 1503))
|
|
)
|
|
)
|
|
)
|
|
(none)
|
|
)
|
|
|
|
(defpartgroup group-sewer-rising-bubbles-pop
|
|
:id 1503
|
|
:duration (seconds 1.5)
|
|
:linger-duration (seconds 0)
|
|
:flags (sp0)
|
|
:bounds (static-bspherem 0 0 0 40)
|
|
:parts ((sp-item 4930 :fade-after (meters 100) :falloff-to (meters 200) :flags (is-3d sp7) :period (seconds 20) :length (seconds 0.035))
|
|
)
|
|
)
|
|
|
|
(defpart 4930
|
|
:init-specs ((:texture (splash-foam level-default-sprite))
|
|
(:num 1.0)
|
|
(:scale-x (meters 0.3) (meters 0.3))
|
|
(:rot-y (degrees 0) (degrees 3600))
|
|
(:scale-y :copy scale-x)
|
|
(:r 128.0)
|
|
(:g 128.0)
|
|
(:b 128.0)
|
|
(:a 32.0 32.0)
|
|
(:scalevel-x (meters 0.0033333334))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a -0.21333334)
|
|
(:timer (seconds 1))
|
|
(:flags (sp-cpuinfo-flag-2))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-sewer-abyss-waterfall-mist
|
|
:id 1504
|
|
:flags (sp0 sp4)
|
|
:bounds (static-bspherem 0 0 0 100)
|
|
:parts ((sp-item 4931 :fade-after (meters 200) :falloff-to (meters 400) :flags (sp7))
|
|
(sp-item 4932 :fade-after (meters 200) :falloff-to (meters 400) :flags (sp7))
|
|
)
|
|
)
|
|
|
|
(defpart 4932
|
|
:init-specs ((:texture (ceiling-dust sewa-sprite))
|
|
(:num 0.04 0.02)
|
|
(:x (meters 0))
|
|
(:y (meters 0))
|
|
(:z (meters 0))
|
|
(:scale-x (meters 4) (meters 2))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-z (meters 0.046666667))
|
|
(:scalevel-x (meters 0.00033333333) (meters 0.0016666667))
|
|
(:scalevel-y (meters 0.0033333334) (meters 0.0033333334))
|
|
(:fade-a 0.021333333 0.021333333)
|
|
(:accel-y (meters -0.0005))
|
|
(:friction 0.99)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 2.5))
|
|
(:next-launcher 4933)
|
|
(:conerot-y (degrees -20) (degrees 40))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4933
|
|
:init-specs ((:fade-a -0.042666666 -0.042666666))
|
|
)
|
|
|
|
(defpart 4931
|
|
:init-specs ((:texture (big-cloud level-default-sprite))
|
|
(:num 0.2 0.2)
|
|
(:x (meters -5) (meters 10))
|
|
(:y (meters 1))
|
|
(:z (meters -10))
|
|
(:scale-x (meters 6) (meters 2))
|
|
(:rot-z (degrees 0) (degrees 360))
|
|
(:scale-y :copy scale-x)
|
|
(:r 180.0 70.0)
|
|
(:g :copy r)
|
|
(:b :copy r)
|
|
(:a 0.0)
|
|
(:vel-z (meters 0.046666667))
|
|
(:scalevel-x (meters 0.006666667) (meters 0.026666667))
|
|
(:rotvel-z (degrees -0.13333334) (degrees 0.26666668))
|
|
(:scalevel-y :copy scalevel-x)
|
|
(:fade-a 0.064 0.064)
|
|
(:accel-y (meters -0.00006666667) (meters -0.00006666667))
|
|
(:friction 0.99)
|
|
(:timer (seconds 5))
|
|
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13))
|
|
(:next-time (seconds 0.835))
|
|
(:next-launcher 4934)
|
|
(:conerot-y (degrees -30) (degrees 60))
|
|
(:rotate-y (degrees 0))
|
|
)
|
|
)
|
|
|
|
(defpart 4934
|
|
:init-specs ((:fade-a -0.032 -0.032))
|
|
)
|