;;-*-Lisp-*- (in-package goal) ;; name: ctywide-scenes.gc ;; name in dgo: ctywide-scenes ;; dgos: CWI (define-extern set-darkjak-highres-texture-morph! (function float symbol)) (define-extern *range-fma-city-barrier-explo-big-color* curve-color-fast) (define-extern *range-fma-city-barrier-explo-big-alpha* curve2d-fast) (define-extern *range-fma-city-barrier-explo-big-scale-x* curve2d-fast) (define-extern *range-fma-city-barrier-explo-big-scale-y* curve2d-fast) (define-extern *curve-fma-city-barrier-explo-big-alpha* curve2d-fast) (define-extern *curve-fma-city-barrier-explo-big-scale-x* curve2d-fast) (define-extern *curve-fma-city-barrier-explo-big-scale-y* curve2d-fast) ;; DECOMP BEGINS (defskelgroup skel-cara-movie cara cara-lod0-jg cara-idle-ja ((cara-lod0-mg (meters 20)) (cara-lod0-mg (meters 40)) (cara-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 6.8) :shadow cara-shadow-mg :origin-joint-index 3 ) (load-scene (new 'static 'scene :name "sewer-met-hum-intro" :extra #f :info #f :scene-flags (scene-flags scf1 scf2 scf3 scf4) :mask-to-clear (process-mask movie projectile) :entity "scene-stage-192" :art-group "scenecamera" :anim "sewer-met-hum-intro" :parts 17 :command-list '((572 (part-tracker "group-barrier-hand-shock" entity "jakc-highres" joint "rringA" track #t duration (frame-range 572 608) ) ) (1930 (fadeout (frame-time-30 10))) (10000 (task-close! "sewer-met-hum-introduction")) ) :cut-list '(1 61 149 198 227 398 533 616 758 903 1001 1033 1103 1285 1412 1508 1547 1728 1794) :wait-ground-time (seconds 1) :actor (new 'static 'boxed-array :type scene-actor (new 'static 'scene-actor :name "scenecamera" :level #f :art-group "skel-scenecamera" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :camera 4 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "sidekick-highres" :level 'slumbset :art-group "skel-sidekick-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "jakc-highres" :level 'slumbset :art-group "skel-jakc-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '(227 1103) :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f :no-draw-seg #x80 ) (new 'static 'scene-actor :name "samos-highres" :level 'lsamos :art-group "skel-samos-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "keira-highres" :level 'slumbset :art-group "skel-keira-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) ) :load-point "ctygenb-samos" :end-point "ctygenb-samos" :borrow '((ctywide 4 lsamos special)) :sfx-volume -1.0 :ambient-volume 0.5 :music-volume -1.0 :music-delay 1500.0 :on-running '(begin (sound-play-loop "genb-mov-amb") ("barrier-mov-amb")) :on-complete #f ) ) (set! (-> *lightning-spec-id-table* 21) (new 'static 'lightning-spec :name "darkjak-punch-lightning" :flags (lightning-spec-flags lsf0) :start-color (new 'static 'rgba :r #x80 :g #x80 :b #x80 :a #x80) :end-color (new 'static 'rgba :r #x80 :g #x80 :b #x80 :a #x80) :fade-to-color (new 'static 'rgba :r #xbf :b #x8f :a #x5) :fade-start-factor 0.2 :texture (new 'static 'texture-id :index #x3a :page #x4) :reduction 0.42 :num-points 32 :box-size 3686.4 :merge-factor 0.5 :merge-count 2 :radius 409.6 :duration 30.0 :sound (static-sound-spec "shock" :group 0) ) ) (load-scene (new 'static 'scene :name "city-get-dark-punch" :extra #f :info #f :scene-flags (scene-flags scf1 scf2 scf3 scf4) :mask-to-clear (process-mask movie projectile) :entity "scene-stage-189" :art-group "scenecamera" :anim "city-get-dark-punch" :parts 5 :command-list '((0 (fma-sphere (nav kill-once) sphere (new 'static 'sphere :x -1554249.8 :y 40071.58 :z 4844934.5 :r 81920.0)) (fadein (frame-time-30 2)) (send-event "darkjak-highres" 'trans-hook ,(lambda :behavior scene-player () (let ((f0-0 (ja-aframe-num 0))) (cond ((< f0-0 230.0) (set-darkjak-highres-texture-morph! 0.0) ) ((and (>= f0-0 230.0) (>= 330.0 f0-0)) (set-darkjak-highres-texture-morph! (* 0.01 (+ -230.0 f0-0))) ) (else (set-darkjak-highres-texture-morph! 1.0) ) ) ) (none) ) ) ) (4 (part-tracker "group-metal-head-egg-explosion" entity "particleman" joint "particleA" track #f duration (frame-range 4 23) ) ) (10 (part-tracker "group-fma-dark-eco-steam" entity "particleman" joint "particleA" track #f duration (frame-range 10 600) ) ) (15 (part-tracker "group-fma-hand-steam" entity "darkjak-highres" joint "sk_lhand" track #t duration (frame-range 15 388) ) ) (17 (part-tracker "group-fma-hand-steam" entity "darkjak-highres" joint "sk_rhand" track #t duration (frame-range 17 450) ) ) (40 (part-tracker "group-fma-dark-eco-fire" entity "darkjak-highres" joint "sk_lhand" track #t duration (frame-range 40 340) ) ) (100 (part-tracker "group-fma-dark-eco-fire" entity "darkjak-highres" joint "sk_rhand" track #t duration (frame-range 100 400) ) ) (358 (part-tracker "group-fma-dark-eco-fire-flash" entity "darkjak-highres" joint "sk_lhand" track #t duration (frame-range 358 359) ) ) (359 (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "particleman" from-joint "sk_lhand" to-joint "particleA" duration (frame-range 359 600) ) (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "mhcity-de-tower-egg" from-joint "sk_lhand" to-joint "main" duration (frame-range 359 600) ) (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "particleman" from-joint "sk_lhand" to-joint "particleA" duration (frame-range 359 600) ) ) (400 (part-tracker "group-fma-dark-eco-fire-flash" entity "darkjak-highres" joint "sk_rhand" track #t duration (frame-range 400 401) ) ) (405 (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "mhcity-de-tower-egg" from-joint "sk_rhand" to-joint "main" duration (frame-range 405 600) ) (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "particleman" from-joint "sk_rhand" to-joint "particleA" duration (frame-range 405 600) ) (lightning-tracker "darkjak-punch-lightning" from-entity "darkjak-highres" to-entity "mhcity-de-tower-egg" from-joint "sk_rhand" to-joint "main" duration (frame-range 405 600) ) ) (590 (fadeout (frame-time-30 10))) (10000 (task-close! "city-destroy-darkeco-dark-punch")) ) :cut-list '() :wait-ground-time (seconds 1) :actor (new 'static 'boxed-array :type scene-actor (new 'static 'scene-actor :name "scenecamera" :level #f :art-group "skel-scenecamera" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :camera 4 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "particleman" :level 'mhctycst :art-group "skel-particleman" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "darkjak-highres" :level 'mhctycst :art-group "skel-darkjak-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f :no-draw-seg #xe0 ) (new 'static 'scene-actor :name "sidekick-highres" :level 'mhctycst :art-group "skel-sidekick-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "mhcity-de-tower-egg" :level 'mhctycst :art-group "skel-mhcity-de-tower-egg" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) ) :load-point "mhcitya-fma" :end-point "mhcitya-end-darkeco" :borrow '() :sfx-volume -1.0 :ambient-volume -1.0 :music-volume -1.0 :music-delay 1500.0 :scene-task #x8f :on-running #f :on-complete #f ) ) (defskelgroup skel-blue-gun-mod-three blue-gun-mod-three blue-gun-mod-three-lod0-jg blue-gun-mod-three-idle-ja ((blue-gun-mod-three-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 1) :origin-joint-index 3 ) (load-scene (new 'static 'scene :name "city-destroy-grid-res" :extra #f :info #f :scene-flags (scene-flags scf1 scf2 scf3 scf4) :mask-to-clear (process-mask movie projectile) :entity "scene-stage-212" :art-group "scenecamera" :anim "city-destroy-grid-res" :parts 9 :command-list '((-30 (kill "krimson-wall-4") (kill "krimson-wall-5") (kill "krimson-wall-7") (fadein (frame-time-30 10))) (1 (part-tracker "group-fma-city-barrier-explosion-big" entity "particleman" joint "particleB" track #f duration (frame-range 1 30) ) ) (121 (part-tracker "group-fma-cigar-smoke" entity "jinx-highres" joint "cigsmoke" track #t duration (frame-range 121 500) subsample-num (new 'static 'bfloat :data 5.0) ) ) (412 (part-tracker "group-cara-thrusters" entity "particleman" joint "particleD" track #t duration (frame-range 412 500) ) (part-tracker "group-cara-thrusters" entity "particleman" joint "particleE" track #t duration (frame-range 412 500) ) ) (500 (fadeout (frame-time-30 10))) (10000 (send-event self 'user-data-set! (task-closed? "city-destroy-grid-resolution"))) ) :cut-list '(106 249 311) :wait-ground-time (seconds 1) :actor (new 'static 'boxed-array :type scene-actor (new 'static 'scene-actor :name "scenecamera" :level #f :art-group "skel-scenecamera" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :camera 4 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "particleman" :level 'gridcst :art-group "skel-particleman" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "sidekick-highres" :level 'gridcst :art-group "skel-sidekick-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "jakc-highres" :level 'gridcst :art-group "skel-jakc-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f :no-draw-seg #x80 ) (new 'static 'scene-actor :name "jinx-highres" :level 'gridcst :art-group "skel-jinx-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "talk-box" :level #f :art-group "skel-talk-box" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "cara-movie" :level 'gridcst :art-group "skel-cara-movie" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f :no-draw-seg #x1fe ) (new 'static 'scene-actor :name "krimson-wall-break" :level 'gridcst :art-group "skel-krimson-wall-break" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "krimson-wall-break" :level 'gridcst :art-group "skel-krimson-wall-break" :prefix "a-" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "krimson-wall-break" :level 'gridcst :art-group "skel-krimson-wall-break" :prefix "b-" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "blue-gun-mod-three" :level 'gridcst :art-group "skel-blue-gun-mod-three" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) ) :load-point "ctyinda-grid-res-a" :end-point "ctyinda-grid-res-b" :borrow '() :sfx-volume -1.0 :ambient-volume -1.0 :music-volume -1.0 :music-delay 1500.0 :on-running #f :on-complete '(unless (send-event self 'user-data) (talker-spawn "powup010")) ) ) (defskelgroup skel-h-kg-pickup-fma kg-pickup kg-pickup-lod0-jg kg-pickup-idle-ja ((kg-pickup-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 5.2) :shadow kg-pickup-shadow-mg :origin-joint-index 3 ) (defskelgroup skel-eco-canister-fma eco-canister eco-canister-dark-lod0-jg eco-canister-dark-idle-ja ((eco-canister-dark-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 0.3) :origin-joint-index 3 ) (defskelgroup skel-mhcity-tower-door-break-fma mhcity-tower-door-break mhcity-tower-door-break-lod0-jg mhcity-tower-door-break-idle-ja ((mhcity-tower-door-break-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 1000) :origin-joint-index 3 ) (defskelgroup skel-purple-three-fma purple-three purple-three-lod0-jg purple-three-idle-ja ((purple-three-lod0-mg (meters 999999))) :bounds (static-spherem 0 0 0 1000) :origin-joint-index 3 ) (load-scene (new 'static 'scene :name "tower-destroy-intro" :extra #f :info #f :scene-flags (scene-flags scf1 scf2 scf3 scf4) :mask-to-clear (process-mask movie projectile) :entity "scene-stage-193" :art-group "scenecamera" :anim "tower-destroy-intro" :parts 8 :command-list '((0 (fadein (frame-time-30 10)) (kill "mhcity-tower-door-1") (kill "mhcity-tower-door-2") (apply ,(lambda :behavior scene-player () (if *target* (process-drawable-show-all-cloth *target* #f) ) (none) ) ) ) (1 (kill "mhcity-tower-door-1")) (182 (part-tracker "group-pickup-sparks" entity "particleman" joint "particleC" track #f duration (frame-range 182 183) ) ) (190 (part-tracker "group-pickup-sparks" entity "particleman" joint "particleD" track #f duration (frame-range 190 191) ) ) (196 (part-tracker "group-truck-explosion" entity "particleman" joint "particleA" track #f duration (frame-range 196 226) ) (part-tracker "group-mhcity-door-explode" entity "particleman" joint "particleB" track #f duration (frame-range 196 226) ) ) (680 (fadeout (frame-time-30 10))) (10000 (apply ,(lambda :behavior scene-player () (if *target* (process-drawable-show-all-cloth *target* #t) ) (none) ) ) (kill "mhcity-tower-door-2") (send-event self 'user-data-set! (task-closed? "tower-destroy-introduction")) (task-close! "tower-destroy-introduction") ) ) :cut-list '(25 52 91 116 139 170 250 315 396 502 628) :wait-ground-time (seconds 1) :actor (new 'static 'boxed-array :type scene-actor (new 'static 'scene-actor :name "scenecamera" :level #f :art-group "skel-scenecamera" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :camera 4 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "sidekick-highres" :level 'towercst :art-group "skel-sidekick-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "jakc-highres" :level 'towercst :art-group "skel-jakc-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f :no-draw-seg #x80 ) (new 'static 'scene-actor :name "jinx-highres" :level 'towercst :art-group "skel-jinx-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "sig-highres" :level 'towercst :art-group "skel-sig-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "torn-highres" :level 'towercst :art-group "skel-torn-highres" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "h-kg-pickup-fma" :level 'towercst :art-group "skel-h-kg-pickup-fma" :prefix "" :draw-frames '((min max)) :scissor-frames '((min 25)) :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "hellcat-movie" :level 'towercst :art-group "skel-hellcat-movie" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "eco-canister-fma" :level 'ctywide :art-group "skel-eco-canister-fma" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "mhcity-tower-door-break-fma" :level 'towercst :art-group "skel-mhcity-tower-door-break-fma" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "purple-three-fma" :level 'towercst :art-group "skel-purple-three-fma" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :flags #x1 :shadow-flags -1 :shadow-volume-joint #f ) (new 'static 'scene-actor :name "particleman" :level 'towercst :art-group "skel-particleman" :prefix "" :draw-frames '((min max)) :scissor-frames '() :shadow-frames '((min max)) :cloth-reset-frames '() :cloth-commands '() :shadow-flags -1 :shadow-volume-joint #f ) ) :load-point "mhcityb-tower-fma" :end-point "mhcityb-tower-fma-end" :borrow '() :sfx-volume -1.0 :ambient-volume -1.0 :music-volume -1.0 :music-delay 1500.0 :scene-task #xfd :on-running '(begin (sound-play-loop "eco-amb-mov") (sound-play-loop "eco-bubbles-mov")) :on-complete '(unless (send-event self 'user-data) (send-event *target* 'get-pickup (int 18) (float (new 'static 'bfloat :data 15.0))) (talker-spawn "powup016") ) ) ) (defpartgroup group-pickup-sparks :id 298 :flags (sp0) :bounds (static-bspherem 0 0 0 40) :parts ((sp-item 1290)) ) (defpart 1290 :init-specs ((:texture (middot level-default-sprite)) (:num 20.0 20.0) (:scale-x (meters 0.1) (meters 0.1)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 100.0 100.0) (:omega (degrees 0.0225)) (:vel-z (meters -0.06666667) (meters -0.16666667)) (:fade-g -3.2) (:fade-b -10.2) (:accel-y (meters -0.00066666666)) (:friction 0.99) (:timer (seconds 0.085) (seconds 0.165)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3)) (:func 'sparticle-motion-blur) (:conerot-x (degrees 30) (degrees 20)) (:conerot-y (degrees -10) (degrees 20)) ) ) (defpartgroup group-mhcity-door-explode :id 299 :flags (sp0) :bounds (static-bspherem 0 0 0 40) :parts ((sp-item 1291 :flags (sp3)) (sp-item 1292 :period (seconds 20) :length (seconds 0.335)) (sp-item 1293 :period (seconds 20) :length (seconds 0.085)) ) ) (defpart 1291 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 30)) (:rot-x (degrees 225)) (:scale-y :copy scale-x) (:r 128.0) (:g 255.0) (:b 40.0) (:a 32.0) (:fade-a -0.035555556) (:timer (seconds 3)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow)) (:userdata 40960.0) ) ) (defpart 1292 :init-specs ((:texture (explosion-edge level-default-sprite)) (:num 20.0) (:scale-x (meters 1) (meters 2)) (:scale-y :copy scale-x) (:r 80.0 20.0) (:g 128.0) (:b 30.0) (:a 255.0) (:vel-y (meters 0.1) (meters 0.06666667)) (:scalevel-x (meters 0.033333335)) (:scalevel-y :copy scalevel-x) (:fade-r -0.13333334) (:fade-b -0.05) (:fade-a -0.425 -0.425) (:friction 0.9 0.05) (:timer (seconds 2)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:func 'sparticle-2d-spline-align-instant) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1293 :init-specs ((:texture (explosion-nebula level-default-sprite)) (:num 5.0) (:scale-x (meters 6) (meters 5)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 80.0 20.0) (:g 128.0) (:b 30.0) (:a 255.0) (:vel-y (meters 0.06666667)) (:scalevel-x (meters 0.006666667) (meters 0.006666667)) (:rotvel-z (degrees -0.1) (degrees 0.2)) (:scalevel-y :copy scalevel-x) (:fade-r -0.13333334) (:fade-b -0.05) (:fade-a -0.425 -0.425) (:friction 0.95 0.02) (:timer (seconds 2)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:conerot-x (degrees 80) (degrees 20)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpartgroup group-barrier-hand-shock :id 300 :flags (sp0) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 1294 :flags (is-3d sp6))) ) (defpart 1294 :init-specs ((:texture (radial-halo level-default-sprite)) (:num 1.0) (:scale-x (meters 1) (meters 0.5)) (:rot-z (degrees 90)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 128.0) (:a 100.0 50.0) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-3)) ) ) (defpartgroup group-metal-head-egg-explosion :id 301 :flags (sp0) :bounds (static-bspherem 0 -2 0 24) :parts ((sp-item 1295 :period (seconds 4) :length (seconds 0.035)) (sp-item 1296 :period (seconds 4) :length (seconds 0.25)) (sp-item 1297 :period (seconds 4) :length (seconds 0.335)) (sp-item 1298 :period (seconds 4) :length (seconds 0.017)) (sp-item 1299 :flags (sp3)) (sp-item 1300 :flags (sp3)) (sp-item 1301 :flags (sp3)) ) ) (defpart 1295 :init-specs ((:texture (glow level-default-sprite)) (:num 1.0) (:scale-x (meters 2) (meters 2)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 128.0) (:a 255.0) (:scalevel-x (meters -0.033333335)) (:scalevel-y :copy scalevel-x) (:timer (seconds 0.085)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) ) ) (defpart 1296 :init-specs ((:texture (explosion-edge level-default-sprite)) (:num 6.0) (:scale-x (meters 0.1) (meters 0.9)) (:scale-y :copy scale-x) (:r 40.0 40.0) (:g 10.0) (:b 128.0) (:a 100.0 100.0) (:vel-y (meters 0.1) (meters 0.33333334)) (:scalevel-x (meters 0.033333335) (meters 0.06666667)) (:scalevel-y (meters 0.1) (meters 0.033333335)) (:fade-a -2.0) (:friction 0.7) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:func 'sparticle-motion-blur) (:next-time (seconds 0.167)) (:next-launcher 1302) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-z (degrees 0) (degrees 3600)) (:conerot-radius (meters 0) (meters 0.5)) ) ) (defpart 1302 :init-specs ((:scalevel-x (meters 0.006666667)) (:scalevel-y (meters 0.016666668)) (:fade-r -0.2) (:fade-g -0.2) (:fade-a -1.0 -1.0) (:friction 0.95) ) ) (defpart 1297 :init-specs ((:texture (bigpuff level-default-sprite)) (:num 4.0) (:scale-x (meters 0.3) (meters 0.8)) (:rot-z (degrees 0) (degrees 3600)) (:scale-y :copy scale-x) (:r 40.0 40.0) (:g 0.0) (:b 128.0) (:a 128.0 128.0) (:vel-y (meters 0.05) (meters 0.06666667)) (:scalevel-x (meters 0.01) (meters 0.02)) (:scalevel-y :copy scalevel-x) (:fade-r -0.53333336) (:fade-b -0.64) (:fade-a -0.85 -0.85) (:friction 0.9) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-3 sp-cpuinfo-flag-14)) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-z (degrees 0) (degrees 3600)) (:conerot-radius (meters 0) (meters 0.5)) ) ) (defpart 1298 :init-specs ((:texture (water-drops level-default-sprite)) (:num 10.0) (:z (meters 2) (meters 2)) (:scale-x (meters 1) (meters 1)) (:rot-z (degrees 0) (degrees 3600)) (:scale-y :copy scale-x) (:r 40.0 40.0) (:g 0.0) (:b 128.0) (:a 64.0 64.0) (:scalevel-x (meters 0.06666667)) (:scalevel-y :copy scalevel-x) (:fade-a -0.21333334 -0.21333334) (:accel-y (meters -0.00066666666) (meters -0.00066666666)) (:timer (seconds 2)) (:flags (sp-cpuinfo-flag-2 launch-along-z)) (:rotate-x (degrees 0) (degrees 3600)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1299 :init-specs ((:texture (laser-hit2-add level-default-sprite)) (:num 1.0) (:scale-x (meters 10)) (:rot-z (degrees 0) (degrees 3600)) (:scale-y :copy scale-x) (:r 80.0) (:g 10.0) (:b 128.0) (:a 255.0) (:scalevel-x (meters 1.3333334)) (:scalevel-y :copy scalevel-x) (:fade-a -6.375) (:timer (seconds 0.135)) (:flags (sp-cpuinfo-flag-3)) ) ) (defpart 1300 :init-specs ((:texture (motion-blur-part level-default-sprite)) (:num 80.0) (:scale-x (meters 0.1) (meters 0.2)) (:scale-y :copy scale-x) (:r 40.0 40.0) (:g 10.0) (:b 128.0) (:a 100.0 100.0) (:omega (degrees 0.0225)) (:vel-y (meters 0.16666667) (meters 0.33333334)) (:scalevel-x (meters -0.001) (meters -0.0013333333)) (:scalevel-y :copy scalevel-x) (:accel-y (meters -0.00066666666) (meters -0.0026666666)) (:friction 0.9) (:timer (seconds 0.5)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3)) (:func 'sparticle-motion-blur) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-z (degrees 0) (degrees 3600)) (:conerot-radius (meters 0) (meters 0.5)) ) ) (defpart 1303 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 80)) (:rot-z (degrees 0) (degrees 3600)) (:scale-y :copy scale-x) (:r 80.0) (:g 10.0) (:b 128.0) (:a 128.0) (:omega (degrees 6761.25)) (:fade-a -2.55) (:timer (seconds 0.335)) (:flags (glow)) (:userdata 4096.0) ) ) ;; WARN: Return type mismatch float vs none. (defun spt-birth-func-brightness-part-fma-dark-eco-steam ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo)) (let ((s5-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 151) 50)) (s3-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 61) 30)) (s4-0 (+ (logand 0 (rand-uint31-gen *random-generator*)) 200)) (v1-6 (mod (the-as int (rand-uint31-gen *random-generator*)) 61)) ) (set! (-> arg2 rotate-x) (the float (- s5-0 s3-0))) (set! (-> arg2 rotate-y) (the float (- s5-0 (the-as int s4-0)))) (set! (-> arg2 rotate-z) (the float (- s5-0 v1-6))) ) (none) ) (defpartgroup group-fma-dark-eco-steam :id 302 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 1304 :flags (sp7))) ) (defpart 1304 :init-specs ((:texture (big-cloud level-default-sprite)) (:birth-func 'spt-birth-func-brightness-part-fma-dark-eco-steam) (:num 0.1) (:z (meters 0) (meters 1)) (:scale-x (meters 1) (meters 2)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 128.0) (:a 0.0) (:vel-y (meters 0.005925926)) (:scalevel-x (meters 0.0033333334) (meters 0.006666667)) (: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 10.167)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-13 launch-along-z)) (:next-time (seconds 1)) (:next-launcher 1305) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1305 :init-specs ((:fade-a -0.024615385 -0.024615385)) ) (defpartgroup group-fma-hand-steam :id 303 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 1306 :flags (sp7))) ) (defpart 1306 :init-specs ((:texture (big-cloud level-default-sprite)) (:birth-func 'spt-birth-func-brightness-part-fma-dark-eco-steam) (:num 0.1) (:scale-x (meters 3) (meters 1)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 128.0) (:b 128.0) (:a 0.0) (:scalevel-x (meters -0.01) (meters -0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-a 0.21333334) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-13 launch-along-z)) (:rotate-y (degrees 0)) ) ) (defpartgroup group-fma-dark-eco-fire :id 304 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 1309 :flags (sp3) :binding 1307) (sp-item 1307 :flags (sp2) :binding 1308) (sp-item 1307 :flags (sp2) :binding 1308) (sp-item 1307 :flags (sp2) :binding 1308) (sp-item 1307 :flags (sp2) :binding 1308) (sp-item 1307 :flags (sp2) :binding 1308) (sp-item 1308 :flags (sp2)) (sp-item 1308 :flags (sp2)) (sp-item 1308 :flags (sp2)) (sp-item 1308 :flags (sp2)) (sp-item 1308 :flags (sp2)) ) ) (defpart 1309 :init-specs ((:texture (radial-gradient level-default-sprite)) (:num 1.0) (:scale-x (meters 1)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 0.0) (:fade-a 0.42666668) (:timer (seconds 10)) (:flags (sp-cpuinfo-flag-3)) (:func 'part-tracker-track-root) (:next-time (seconds 1)) (:next-launcher 1310) ) ) (defpart 1310 :init-specs ((:fade-a 0.0) (:next-time (seconds 8)) (:next-launcher 1311)) ) (defpart 1311 :init-specs ((:fade-a -0.42666668)) ) (defpart 1307 :init-specs ((:texture (hotdot level-default-sprite)) (:num 0.05 0.5) (:y (meters 0) (meters 16)) (:z (meters 0.04) (meters 0.04)) (:scale-x (meters 0.2)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 128.0) (:omega (degrees 0) (degrees 360)) (:vel-x (meters -0.017777778) 2.0 (meters 0.035555556)) (:vel-y (meters 0)) (:vel-z (meters 0.006666667)) (:accel-z (meters -0.00033333333)) (:timer (seconds 0.5)) (:flags (sp-cpuinfo-flag-3 ready-to-launch)) ) ) (defpart 1308 :init-specs ((:texture (hotdot level-default-sprite)) (:num 0.3) (:y (meters -0.05)) (:scale-x (meters 0.2)) (:scale-y :copy scale-x) (:r 255.0) (:g 64.0) (:b 255.0) (:a 96.0) (:scalevel-x (meters -0.00083333335) (meters -0.00083333335)) (:scalevel-y :copy scalevel-x) (:fade-r -1.0) (:fade-g -0.42666668) (:accel-y (meters -0.000100000005)) (:timer (seconds 1)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3)) ) ) (defpartgroup group-fma-dark-eco-fire-flash :id 305 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 60) :parts ((sp-item 1312 :flags (sp3))) ) (defpart 1312 :init-specs ((:texture (laser-hit2 level-default-sprite)) (:num 5.0) (:scale-x (meters 1)) (:scale-y :copy scale-x) (:r 80.0) (:g 0.0) (:b 255.0) (:a 255.0) (:scalevel-x (meters 0.033333335)) (:scalevel-y :copy scalevel-x) (:fade-a -3.4) (:timer (seconds 0.25)) (:flags (sp-cpuinfo-flag-3)) ) ) (defpartgroup group-fma-cigar-smoke :id 306 :flags (sp0 sp4 sp13) :bounds (static-bspherem 0 0 0 24) :parts ((sp-item 1313 :flags (sp7))) ) (defpart 1313 :init-specs ((:texture (big-cloud level-default-sprite)) (:num 1.0) (:scale-x (meters 0) (meters 0.01)) (:rot-x 4) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 80.0 80.0) (:g :copy r) (:b :copy r) (:a 8.0 8.0) (:scalevel-x (meters 0.00016666666) (meters 0.00016666666)) (:rotvel-z (degrees -0.2) (degrees 0.4)) (:scalevel-y :copy scalevel-x) (:fade-a -0.010666667 -0.010666667) (:accel-y (meters 0.000033333334) (meters 0.000033333334)) (:friction 0.9) (:timer (seconds 5)) (:flags (sp-cpuinfo-flag-2)) (:next-time (seconds 3.335)) (:next-launcher 1314) ) ) (defpart 1314 :init-specs ((:scalevel-x (meters 0.00066666666) (meters 0.00066666666)) (:scalevel-y (meters 0.00066666666) (meters 0.00066666666)) (:friction 0.85) ) ) (defpartgroup group-fma-city-barrier-explosion-big :id 307 :duration (seconds 4) :flags (sp0 sp5) :bounds (static-bspherem 0 0 0 15) :parts ((sp-item 1316 :flags (sp3 sp7) :period (seconds 30) :length (seconds 0.017)) (sp-item 1317 :flags (sp7) :period (seconds 30) :length (seconds 0.035)) (sp-item 1318 :flags (sp3 sp7) :period (seconds 30)) (sp-item 1319 :flags (sp3 sp7) :period (seconds 30) :length (seconds 0.017)) (sp-item 1320 :flags (sp7) :period (seconds 30) :length (seconds 0.335)) (sp-item 1321 :period (seconds 30) :length (seconds 0.5)) (sp-item 1322 :flags (sp3 sp7) :binding 1315) (sp-item 1322 :flags (sp3 sp7) :binding 1315) (sp-item 1322 :flags (sp3 sp7) :binding 1315) (sp-item 1322 :flags (sp3 sp7) :binding 1315) (sp-item 1322 :flags (sp3 sp7) :binding 1315) (sp-item 1315 :flags (sp2) :period (seconds 4) :length (seconds 2)) (sp-item 1315 :flags (sp2) :period (seconds 4) :length (seconds 2)) (sp-item 1315 :flags (sp2) :period (seconds 4) :length (seconds 2)) (sp-item 1315 :flags (sp2) :period (seconds 4) :length (seconds 2)) (sp-item 1315 :flags (sp2) :period (seconds 4) :length (seconds 2)) ) ) (defpart 1316 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:scale-x (meters 40)) (:rot-x (degrees 225)) (:scale-y :copy scale-x) (:r 255.0) (:g 128.0) (:b 40.0) (:a 64.0) (:fade-a -0.10666667) (:timer (seconds 2)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 40960.0) ) ) (defpart 1317 :init-specs ((:texture (hotdot level-default-sprite)) (:num 10.0 10.0) (:scale-x (meters 1) (meters 1.2)) (:rot-y (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 80.0 20.0) (:b 30.0) (:a 128.0) (:vel-y (meters 0.33333334) (meters 0.33333334)) (:scalevel-x (meters -0.0016666667)) (:scalevel-y :copy scalevel-x) (:fade-g -0.17777778) (:fade-b -0.06666667) (:fade-a -0.28444445 -0.28444445) (:friction 0.9) (:timer (seconds 1.5)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3)) (:conerot-x (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1318 :init-specs ((:texture (explosion-nebula level-default-sprite)) (:num 30.0) (:scale-x (meters 6) (meters 4)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 255.0) (:g 160.0) (:b 40.0) (:a 128.0) (:vel-y (meters 0) (meters 0.13333334)) (:scalevel-x (meters 0.033333335)) (:scalevel-y :copy scalevel-x) (:fade-g -0.12307692) (:fade-b -0.046153847) (:fade-a -0.19692308 -0.19692308) (:accel-z (meters -0.013333334) 1 (meters 0.026666667)) (:friction 0.93) (:timer (seconds 2.167)) (:flags (sp-cpuinfo-flag-3 launch-along-z)) (:next-time (seconds 0.335)) (:next-launcher 1323) (:conerot-z (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1323 :init-specs ((:friction 0.7)) ) (defpart 1320 :init-specs ((:texture (explosion-edge level-default-sprite)) (:num 5.0) (:scale-x (meters 6) (meters 4)) (:rot-y (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 80.0 20.0) (:b 30.0) (:a 128.0) (:vel-y (meters 0.5) (meters 0.13333334)) (:scalevel-x (meters 0.06666667)) (:scalevel-y :copy scalevel-x) (:fade-g -0.10666667) (:fade-b -0.04) (:fade-a -0.17066666 -0.17066666) (:accel-z (meters -0.013333334) 1 (meters 0.026666667)) (:friction 0.7) (:timer (seconds 2.5)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 launch-along-z)) (:func 'sparticle-2d-spline-align-instant) (:next-time (seconds 0.335)) (:next-launcher 1324) (:conerot-z (degrees 0) (degrees 360)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1324 :init-specs ((:friction 0.7)) ) (defpart 1321 :init-specs ((:texture (explo-texture level-default-sprite)) (:birth-func 'birth-func-curve) (:num 8.0) (:x (meters -1) (meters 2)) (:y (meters 0) (meters 2)) (: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 128.0) (:vel-y (meters 0.06666667) (meters 0.13333334)) (:accel-z (meters -0.013333334) 1 (meters 0.026666667)) (:friction 0.9) (:timer (seconds 1)) (:flags (launch-along-z)) (:userdata 0.0) (:func 'live-func-curve) (:next-time (seconds 0.335)) (:next-launcher 1325) (:conerot-z (degrees 20) (degrees 90)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1325 :init-specs ((:friction 0.7)) ) (if #t (set! *range-fma-city-barrier-explo-big-color* (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 255.0 :y 255.0 :z 255.0 :w 128.0) (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0) (new 'static 'vector :x 255.0 :y 255.0 :z 255.0 :w 128.0) (new 'static 'vector :x 255.0 :y 255.0 :z 255.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-fma-city-barrier-explo-big-alpha* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0) :ys (new 'static 'vector :x 128.0 :y 128.0 :z 129.0 :w 130.0) :one-over-x-deltas (new 'static 'vector :y 1.0 :z 1.0 :w 1.0) ) ) ) (if #t (set! *range-fma-city-barrier-explo-big-scale-x* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0) :ys (new 'static 'vector :x 10.0 :y 20.0 :z 21.0 :w 22.0) :one-over-x-deltas (new 'static 'vector :x 10.0 :y 1.0 :z 1.0 :w 1.0) ) ) ) (if #t (set! *range-fma-city-barrier-explo-big-scale-y* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0) :ys (new 'static 'vector :x 10.0 :y 20.0 :z 21.0 :w 22.0) :one-over-x-deltas (new 'static 'vector :x 10.0 :y 1.0 :z 1.0 :w 1.0) ) ) ) (if #t (set! *curve-fma-city-barrier-explo-big-alpha* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -0.05 :z -0.7 :w -1.0) :ys (new 'static 'vector :y 1.0 :z 0.8) :one-over-x-deltas (new 'static 'vector :x 20.0 :y -0.3076923 :z -2.6666665 :w 1.0) ) ) ) (if #t (set! *curve-fma-city-barrier-explo-big-scale-x* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -0.8 :z -1.0 :w -2.0) :ys (new 'static 'vector :y 1.0 :z 1.5 :w 2.5) :one-over-x-deltas (new 'static 'vector :x 1.25 :y 2.5000002 :z 1.0 :w 1.0) ) ) ) (if #t (set! *curve-fma-city-barrier-explo-big-scale-y* (new 'static 'curve2d-fast :xs (new 'static 'vector :y -0.8 :z -1.0 :w -2.0) :ys (new 'static 'vector :y 1.0 :z 1.5 :w 2.5) :one-over-x-deltas (new 'static 'vector :x 1.25 :y 2.5000002 :z 1.0 :w 1.0) ) ) ) (define *part-fma-city-barrier-explosion-big-texture-curve-settings* (new 'static 'particle-curve-settings :lifetime-base (seconds 0.7) :lifetime-offset (seconds 0.6) :flags (particle-curve-flags pcf0) ) ) (set! (-> *part-id-table* 1321 init-specs 17 initial-valuef) (the-as float *part-fma-city-barrier-explosion-big-texture-curve-settings*) ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* color-start) *range-fma-city-barrier-explo-big-color* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* alpha-start) *range-fma-city-barrier-explo-big-alpha* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* scale-x-start) *range-fma-city-barrier-explo-big-scale-x* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* scale-y-start) *range-fma-city-barrier-explo-big-scale-y* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* r-scalar) #f) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* g-scalar) #f) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* b-scalar) #f) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* a-scalar) *curve-fma-city-barrier-explo-big-alpha* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* scale-x-scalar) *curve-fma-city-barrier-explo-big-scale-x* ) (set! (-> *part-fma-city-barrier-explosion-big-texture-curve-settings* scale-y-scalar) *curve-fma-city-barrier-explo-big-scale-y* ) (defpart 1319 :init-specs ((:texture (starflash level-default-sprite)) (:num 1.0) (:scale-x (meters 40)) (:rot-x (degrees 2.25)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 128.0) (:g 80.0) (:b 40.0) (:a 128.0) (:omega (degrees 6767.9995)) (:scalevel-x (meters -0.33333334)) (:scalevel-y :copy scalevel-x) (:timer (seconds 0.135)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)) (:userdata 4096.0) ) ) (defpart 1322 :init-specs ((:texture (hotdot level-default-sprite)) (:num 1.0) (:scale-x (meters 10) (meters 8)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 200.0) (:a 128.0) (:vel-y (meters 0.1) (meters 0.1)) (:scalevel-x (meters -0.05) (meters -0.05)) (:scalevel-y :copy scalevel-x) (:accel-y (meters -0.00066666666) (meters -0.00066666666)) (:friction 0.99) (:timer (seconds 2)) (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3)) (:conerot-x (degrees 0) (degrees 80)) (:rotate-y (degrees 0) (degrees 3600)) ) ) (defpart 1315 :init-specs ((:texture (edge-cloud level-default-sprite)) (:birth-func 'birth-func-inherit-size) (:num 0.5) (:scale-x (meters 0.00024414062) (meters 0.00012207031)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 130.0) (:g 50.0 30.0) (:b 0.0) (:a 32.0 32.0) (:fade-a -0.08533333 -0.08533333) (:accel-y (meters 0) (meters -0.000033333334)) (:timer (seconds 2.5)) (:flags (sp-cpuinfo-flag-3)) ) ) (defpartgroup group-cara-thrusters :id 308 :flags (sp0 sp4) :bounds (static-bspherem 0 0 0 640) :parts ((sp-item 1326 :flags (is-3d sp7) :period (seconds 0.017) :length (seconds 0.017)) (sp-item 1327 :flags (sp7) :period (seconds 0.017) :length (seconds 0.017)) ) ) (defpart 1326 :init-specs ((:texture (gun-enemy-muzzleflash level-default-sprite)) (:num 20.0) (:z (meters 1.5)) (:scale-x (meters 0.5) (meters 0.5)) (:rot-x (degrees 0)) (:rot-y (degrees 0)) (:rot-z (degrees 0) 3 (degrees 45)) (:scale-y (meters 2) (meters 1)) (:r 10.0 20.0) (:g 200.0) (:b 255.0) (:a 10.0 10.0) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:conerot-z (degrees 0)) (:rotate-x (degrees 0)) (:rotate-y (degrees 0)) ) ) (defpart 1327 :init-specs ((:texture (glow-soft level-default-sprite)) (:num 1.0) (:z (meters 1.5)) (:scale-x (meters 3) (meters 0.2)) (:scale-y :copy scale-x) (:r 0.0) (:g 100.0 28.0) (:b 255.0) (:a 12.0 1.0) (:timer (seconds 0.017)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3)) (:conerot-z (degrees 0)) (:rotate-y (degrees 0)) ) ) (defpartgroup group-truck-explosion :id 309 :duration (seconds 2) :linger-duration (seconds 1) :flags (sp0 sp5 sp6) :bounds (static-bspherem 0 0 0 60) :rotate ((degrees 0) (degrees 90) (degrees 0)) :parts ((sp-item 1328 :flags (sp6 sp7) :period (seconds 3) :length (seconds 0.017)) (sp-item 1329 :flags (sp6 sp7) :period (seconds 3) :length (seconds 0.017)) (sp-item 1330 :flags (sp7) :period (seconds 3) :length (seconds 0.05)) (sp-item 1331 :flags (sp7) :period (seconds 3) :length (seconds 0.035) :offset 10) (sp-item 1332 :flags (sp7) :period (seconds 3) :length (seconds 0.167) :offset 20) (sp-item 1333 :flags (sp7) :period (seconds 3) :length (seconds 0.085) :offset 20) (sp-item 1334 :flags (sp7) :period (seconds 3) :length (seconds 0.067) :offset 30) ) ) (defpart 1329 :init-specs ((:texture (glow level-default-sprite)) (:num 1.0) (:scale-x (meters 2)) (:rot-x (degrees 11.25)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 24.0) (:scalevel-x (meters 0.10666667)) (:rotvel-z (degrees 0.3)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -4.266667) (:fade-b -4.266667) (:fade-a 0.0) (:timer (seconds 0.5)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow set-conerot)) (:next-time (seconds 0.25)) (:next-launcher 1335) (:rotate-y (degrees 0)) ) ) (defpart 1335 :init-specs ((:scalevel-x (meters 0)) (:scalevel-y :copy scalevel-x) (:fade-r -0.85333335) (:fade-g -1.7066667) (:fade-b -1.7066667) (:fade-a -0.64) (:rotate-y (degrees 0)) ) ) (defpart 1334 :init-specs ((:texture (explosion-edge level-default-sprite)) (:num 2.0 0.2) (:scale-x (meters 1) (meters 1)) (:rot-z (degrees 0) (degrees 3600) :store) (:scale-y (meters 0.8) (meters 0.2)) (:r 255.0) (:g 255.0) (:b 255.0) (:a 32.0 32.0) (:scalevel-x (meters 0.01) (meters 0.13333334)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -0.36) (:fade-b -4.24) (:fade-a -0.22068965) (:friction 0.95) (:timer (seconds 3.335)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot)) (:next-time (seconds 0.085)) (:next-launcher 1336) (:conerot-x '*sp-temp*) (:conerot-y (degrees 0) (degrees 3600)) (:rotate-y (degrees 0)) ) ) (defpart 1333 :init-specs ((:texture (explosion-nebula level-default-sprite)) (:birth-func 'birth-func-texture-group) (:num 3.0) (:scale-x (meters 1) (meters 1)) (:rot-z (degrees 0)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 32.0 32.0) (:vel-y (meters 0.02) (meters 0.01)) (:scalevel-x (meters 0.01) (meters 0.13333334)) (:rotvel-z (degrees -0.12) (degrees 0.24)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -0.36) (:fade-b -4.24) (:fade-a -0.22068965) (:friction 0.95) (:timer (seconds 3.335)) (:flags (sp-cpuinfo-flag-2 set-conerot)) (:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #x400000 #x400700)) (:next-time (seconds 0.085)) (:next-launcher 1336) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-y (degrees 0) (degrees 3600)) (:rotate-y (degrees 0)) ) ) (defpart 1336 :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:next-time (seconds 0.017) (seconds 0.065)) (:next-launcher 1337) (:rotate-y (degrees 0)) ) ) (defpart 1337 :init-specs ((:scalevel-x (meters 0.016666668) (meters 0.016666668)) (:scalevel-y :copy scalevel-x) (:fade-r -0.44) (:fade-g -2.36) (:fade-b -2.64) (:next-time (seconds 0.117) (seconds 0.047)) (:next-launcher 1338) (:rotate-y (degrees 0)) ) ) (defpart 1338 :init-specs ((:scalevel-x (meters 0.008333334) (meters 0.008333334)) (:scalevel-y :copy scalevel-x) (:fade-r -1.2944444) (:fade-g -0.7111111) (:fade-b -0.094444446) (:fade-a -0.06545454 -0.06545454) (:next-time (seconds 0.5) (seconds 0.097)) (:next-launcher 1339) (:rotate-y (degrees 0)) ) ) (defpart 1339 :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:fade-a -0.1125) (:rotate-y (degrees 0))) ) (defpart 1328 :init-specs ((:texture (glow level-default-sprite)) (:num 1.0) (:scale-x (meters 5)) (:rot-x (degrees 11.25)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 96.0) (:scalevel-x (meters 0.5)) (:rotvel-z (degrees 0.3)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -1.28) (:fade-b -5.1) (:fade-a 0.0) (:timer (seconds 0.217)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot)) (:next-time (seconds 0.1)) (:next-launcher 1340) (:rotate-y (degrees 0)) ) ) (defpart 1340 :init-specs ((:scalevel-x (meters -0.2857143)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -3.6571429) (:fade-b 0.0) (:fade-a -2.7428572) (:rotate-y (degrees 0)) ) ) (defpart 1332 :init-specs ((:texture (specs level-default-sprite)) (:num 8.0 2.0) (:x (meters 0.25)) (:scale-x (meters 1) (meters 0.25)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 255.0) (:g 255.0) (:b 255.0) (:a 16.0 48.0) (:vel-y (meters 0.083333336) (meters 0.083333336)) (:scalevel-x (meters 0.006666667) (meters 0.0016666667)) (:rotvel-z (degrees -0.12) (degrees 0.24)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g -0.18) (:fade-b -2.12) (:accel-y (meters -0.00016666666) (meters -0.00033333333)) (:friction 0.87) (:timer (seconds 3.335)) (:flags (sp-cpuinfo-flag-2 set-conerot)) (:next-time (seconds 0.117) (seconds 0.047)) (:next-launcher 1341) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-y (degrees 0) (degrees 3600)) (:rotate-y (degrees 0)) ) ) (defpart 1341 :init-specs ((:scalevel-x (meters 0.0016666667)) (:scalevel-y :copy scalevel-x) (:fade-r 0.0) (:fade-g 0.02) (:fade-b 0.23555556) (:next-time (seconds 0.15) (seconds 0.047)) (:next-launcher 1342) (:rotate-y (degrees 0)) ) ) (defpart 1342 :init-specs ((:fade-r -0.5543478) (:fade-g -0.5543478) (:fade-a -0.13913043) (:rotate-y (degrees 0))) ) (defpart 1330 :init-specs ((:texture (bigpuff level-default-sprite)) (:num 8.0 1.0) (:x (meters 0) (meters 0.6)) (:scale-x (meters 2.5) (meters 2)) (:rot-z (degrees 0) (degrees 360)) (:scale-y :copy scale-x) (:r 70.0 20.0) (:g 70.0 20.0) (:b 70.0 20.0) (:a 0.0 40.0) (:vel-y (meters 0) (meters 0.1)) (:scalevel-x (meters 0.033333335) (meters 0.02)) (:rotvel-z (degrees -0.12) (degrees 0.24)) (:scalevel-y :copy scalevel-x) (:fade-r 3.3) (:fade-g 3.12) (:fade-b 1.18) (:fade-a 1.76) (:friction 0.88) (:timer (seconds 2.367)) (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot)) (:next-time (seconds 0.117) (seconds 0.047)) (:next-launcher 1343) (:conerot-x (degrees 0) (degrees 3600)) (:conerot-y (degrees 0) (degrees 3600)) (:rotate-y (degrees 0)) ) ) (defpart 1343 :init-specs ((:scalevel-x (meters 0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-r -0.53333336) (:fade-g -1.9666667) (:fade-b -2.2) (:fade-a -0.41666666) (:next-time (seconds 0.15) (seconds 0.047)) (:next-launcher 1344) (:rotate-y (degrees 0)) ) ) (defpart 1344 :init-specs ((:scalevel-x (meters 0)) (:scalevel-y :copy scalevel-x) (:fade-r -0.38833332) (:fade-g -0.21333334) (:fade-b -0.028333334) (:fade-a -0.38833332) (:rotate-y (degrees 0)) ) ) (defpart 1331 :init-specs ((:texture (motion-blur-part level-default-sprite)) (:num 4.0 2.0) (:scale-x (meters 0.2) (meters 0.5)) (:rot-x 4) (:rot-z (degrees 0) (degrees 360)) (:scale-y (meters 0.2) (meters 0.1)) (:r 128.0 128.0) (:g 96.0) (:b 64.0) (:a 64.0 64.0) (:scalevel-x (meters 0.13333334) (meters 0.02)) (:fade-g 1.6) (:fade-b 3.2) (:fade-a -1.6) (:timer (seconds 0.3)) (:flags (sp-cpuinfo-flag-2 set-conerot)) (:rotate-y (degrees 0)) ) )