;;-*-Lisp-*-
(in-package goal)

;; name: freehq-part.gc
;; name in dgo: freehq-part
;; dgos: FREEHQ

(define-extern *range-landscape-scale-x* curve2d-fast)
(define-extern *range-landscape-scale-y* curve2d-fast)
(define-extern *curve-landscape-scale-x-temp* curve2d-fast)
(define-extern *curve-landscape-scale-x* curve2d-fast)
(define-extern *curve-landscape-scale-y* curve2d-fast)

;; DECOMP BEGINS

(defpartgroup group-freehq-center-sphere
  :id 808
  :flags (sp0 sp6)
  :bounds (static-bspherem 0 3 0 64)
  :rotate ((degrees 90) (degrees 0) (degrees 0))
  :parts ((sp-item 2962 :flags (sp6))
    (sp-item 2963 :binding 2961)
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2961 :flags (sp1 sp2 sp3))
    (sp-item 2964 :flags (sp6))
    (sp-item 2965 :flags (sp6))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    (sp-item 2966 :flags (is-3d sp1 sp3))
    )
  )

(defpart 2962
  :init-specs ((:texture (vinroom-tv-circle freehq-sprite))
    (:num 1.0)
    (:y (meters 1.25))
    (:scale-x (meters 2))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 30.0 30.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-3))
    (:userdata 0.0)
    )
  )

(defpart 2964
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:y (meters 1.25))
    (:scale-x (meters 6))
    (:rot-x (degrees 45))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 24.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-4 glow))
    (:userdata 0.0)
    )
  )

(defpart 2965
  :init-specs ((:texture (vol-light level-default-sprite))
    (:num 5.0)
    (:y (meters 2.2))
    (:scale-x (meters 0.2) (meters 1))
    (:rot-x (degrees 45))
    (:rot-z (degrees 90))
    (:scale-y (meters 0.5))
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0 15.0)
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-3 glow))
    (:userdata 0.0)
    )
  )

(defpart 2966
  :init-specs ((:texture (holo-line freehq-sprite))
    (:num 1.0)
    (:y (meters 1.25))
    (:scale-x (meters 1.8))
    (:rot-z (degrees 0) (degrees 36000))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 60.0)
    (:b 10.0)
    (:a 100.0)
    (:rotvel-y (degrees -0.2) 1 (degrees 0.4))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'part-freehq-sphere-vert-line-flicker)
    )
  )

(defun part-freehq-sphere-vert-line-flicker ((arg0 sparticle-system)
                                    (arg1 sparticle-cpuinfo)
                                    (arg2 sparticle-launchinfo)
                                    (arg3 sparticle-launcher)
                                    (arg4 sparticle-launch-state)
                                    )
  (if (zero? (mod (-> arg1 timer) 5))
      (set! (-> arg2 coneradius) (rand-vu-float-range 10.0 100.0))
      )
  0
  (none)
  )

(defpart 2963
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.5)
    (:y (meters 0.55) (meters 1.5))
    (:scale-x (meters 0.1))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 128.0)
    (:timer (seconds 4))
    (:flags (sp-cpuinfo-flag-3))
    )
  )

(defun birth-func-freehq-sphere ((arg0 sparticle-system)
                        (arg1 sparticle-cpuinfo)
                        (arg2 sparticle-launchinfo)
                        (arg3 sparticle-launcher)
                        (arg4 sparticle-launch-state)
                        )
  (let ((v1-1 (-> arg4 sprite key)))
    (when (nonzero? v1-1)
      (let ((f0-2 (+ (- 5120.0 (-> arg2 launchrot y)) (-> v1-1 origin trans y))))
        (set! (-> arg1 radius) (sqrtf (- (* (-> arg1 radius) (-> arg1 radius)) (* f0-2 f0-2))))
        )
      )
    )
  0
  (none)
  )

(defpart 2961
  :init-specs ((:texture (glow level-default-sprite))
    (:birth-func 'birth-func-freehq-sphere)
    (:num 1.0)
    (:x (meters 0) (meters 160))
    (:y (meters 0))
    (:z (meters 0.9))
    (:scale-x (meters 0.02) (meters 0.06))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 80.0)
    (:b 40.0)
    (:a 0.0)
    (:omega (degrees 0) (degrees 3600))
    (:vel-x (meters -0.005925926) (meters -0.005925926))
    (:vel-y (meters 0))
    (:vel-z (meters 0))
    (:fade-a 1.59375)
    (:timer (seconds 4.4))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 ready-to-launch))
    (:next-time (seconds 0.535))
    (:next-launcher 2967)
    )
  )

(defpart 2967
  :init-specs ((:a 255.0) (:fade-a 0.0) (:next-time (seconds 1.667)) (:next-launcher 2968))
  )

(defpart 2968
  :init-specs ((:fade-a -1.59375))
  )

(defpartgroup group-freehq-smalla
  :id 809
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 2969 :flags (is-3d sp7))
    (sp-item 2970 :flags (is-3d sp7) :period (seconds 0.135) :length (seconds 0.017))
    (sp-item 2971 :flags (sp6 sp7))
    )
  )

(defpart 2969
  :init-specs ((:texture (middot level-default-sprite))
    (:num 0.0 0.2)
    (:z (meters 0.015))
    (:scale-x (meters 0))
    (:rot-x (degrees 90))
    (:scale-y (meters 0))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 24.0 8.0)
    (:scalevel-x (meters 0.018437501))
    (:scalevel-y (meters 0.0103124995))
    (:timer (seconds 0.535))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:next-time (seconds 0.335))
    (:next-launcher 2972)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2972
  :init-specs ((:fade-a -2.1333334))
  )

(defpart 2970
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:birth-func 'birth-func-texture-group)
    (:num 1.0)
    (:z (meters 0.015))
    (:scale-x (meters 1.4) (meters 0.6))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.65) (meters 0.2))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:fade-a -1.0666667)
    (:timer (seconds 0.135) (seconds 0.065))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32 80 0 0 #x40b01300 #x40b01400 #x40b01500 #x40b01600))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-smallb
  :id 810
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 2973 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 2974 :flags (is-3d sp7) :period (seconds 1.067) :length (seconds 0.017) :offset 10)
    (sp-item 2971 :flags (sp6 sp7))
    )
  )

(defpart 2973
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.1))
    (:scale-x (meters 1.6))
    (:rot-x (degrees 90))
    (:scale-y (meters 1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 8.0)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       0
                       0
                       #x40b00800
                       #x40b00900
                       #x40b00a00
                       #x40b00b00
                       #x40b00c00
                       #x40b00d00
                       #x40b00e00
                       #x40b00f00
                       #x40b01000
                       #x40b01100
                       #x40b01200
                       #x40b00300
                       #x40b00400
                       #x40b00500
                       #x40b00600
                       #x40b00700
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2974
  :init-specs ((:texture (vinroom-small-monitor-08 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.1))
    (:scale-x (meters 1.6))
    (:rot-x (degrees 90))
    (:scale-y (meters 1))
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 64.0)
    (:fade-a -0.7111111)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32 80 0 0 #x40b01700 #x40b01800 #x40b01900 #x40b01a00))
    (:func 'sparticle-texture-animate)
    (:next-time (seconds 0.267))
    (:next-launcher 2975)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2975
  :init-specs ((:a 64.0) (:fade-a -0.7111111) (:next-time (seconds 0.267)) (:next-launcher 2975))
  )

(defpart 2971
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.1))
    (:scale-x (meters 3))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 5))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 12.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 1024.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-smallc
  :id 811
  :flags (sp0 sp4 sp7)
  :bounds (static-bspherem 0 0 0 16)
  :scale (0.5 0.65 0.0)
  :parts ((sp-item 2976 :flags (sp7)) (sp-item 2977 :flags (sp7)) (sp-item 2978 :flags (sp6 sp7)))
  )

(defpart 2978
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 7))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 5))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 8.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2977
  :init-specs ((:texture (vinroom-tv-text-m freehq-sprite))
    (:birth-func 'birth-func-texture-group)
    (:num 0.0 1.0)
    (:x (meters 0) 4 (meters 0.22))
    (:y (meters 1.6))
    (:scale-x (meters 0.2))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 128.0)
    (:b 128.0)
    (:a 64.0 2 64.0)
    (:vel-y (meters -0.02))
    (:timer (seconds 0.767))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot))
    (:userdata
      :data (new 'static 'boxed-array :type int32 5 0 0 #x40b02900 #x40b02b00 #x40b02c00 #x40b02800 #x40b02700 #x40b02a00)
      )
    (:rotate-y (degrees 0))
    )
  )

(defpart 2976
  :init-specs ((:texture (vinroom-tv-text-m freehq-sprite))
    (:birth-func 'birth-func-texture-group)
    (:num 0.0 4.0)
    (:x (meters -0.66) 2 (meters 0.22))
    (:y (meters 1.5))
    (:scale-x (meters 0.2))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0 3 64.0)
    (:vel-y (meters -0.031666666))
    (:timer (seconds 0.435))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot))
    (:userdata
      :data (new 'static 'boxed-array :type int32 5 0 0 #x40b02900 #x40b02b00 #x40b02c00 #x40b02800 #x40b02700 #x40b02a00)
      )
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-smalld
  :id 812
  :flags (sp4 sp7)
  :bounds (static-bspherem 0 0 0 16)
  :scale (0.8 0.83 1.0)
  :parts ((sp-item 2979 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 2980 :flags (is-3d sp7) :period (seconds 0.8) :length (seconds 0.017))
    (sp-item 2981 :flags (sp6 sp7))
    )
  )

(defpart 2981
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 10))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 10))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 12.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2980
  :init-specs ((:texture (vinroom-tv-text-m freehq-sprite))
    (:num 1.0)
    (:scale-x (meters 1))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.625))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 96.0)
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0016666667))
    (:timer (seconds 0.8))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:userdata :data (new 'static 'boxed-array :type int32
                       40
                       0
                       0
                       #x40b02900
                       #x40b02b00
                       #x40b02c00
                       #x40b02800
                       #x40b02700
                       #x40b02a00
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2979
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.05))
    (:z (meters 0))
    (:scale-x (meters 2))
    (:rot-x (degrees 90))
    (:scale-y (meters 1.25))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       0
                       0
                       #x40b00300
                       #x40b00400
                       #x40b00500
                       #x40b00600
                       #x40b00700
                       #x40b00800
                       #x40b00900
                       #x40b00a00
                       #x40b00b00
                       #x40b00c00
                       #x40b00d00
                       #x40b00e00
                       #x40b00f00
                       #x40b01000
                       #x40b01100
                       #x40b01200
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-rtablea
  :id 813
  :flags (sp0 sp4 sp7)
  :bounds (static-bspherem 0 0 0 16)
  :scale (0.25 0.25 1.0)
  :parts ((sp-item 2982 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 2983 :flags (is-3d sp7) :period (seconds 0.8) :length (seconds 0.017))
    (sp-item 2984 :flags (sp6 sp7))
    )
  )

(defpart 2984
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 10))
    (:scale-y (meters 10))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 8.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot))
    (:userdata 2048.0)
    )
  )

(defpart 2983
  :init-specs ((:texture (vinroom-tv-text-m freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 1))
    (:rot-x (degrees 0))
    (:rot-y (degrees -90))
    (:rot-z (degrees 90))
    (:scale-y (meters 0.625))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 96.0)
    (:scalevel-x (meters 0.001))
    (:scalevel-y (meters 0.00033333333))
    (:timer (seconds 0.8))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot))
    (:userdata :data (new 'static 'boxed-array :type int32
                       40
                       0
                       0
                       #x40b02900
                       #x40b02b00
                       #x40b02c00
                       #x40b02800
                       #x40b02700
                       #x40b02a00
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 90))
    )
  )

(defpart 2982
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 1.8))
    (:rot-x (degrees 0))
    (:rot-y (degrees -90))
    (:rot-z (degrees 90))
    (:scale-y (meters 1.25))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 set-conerot))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       0
                       0
                       #x40b00300
                       #x40b00400
                       #x40b00500
                       #x40b00600
                       #x40b00700
                       #x40b00800
                       #x40b00900
                       #x40b00a00
                       #x40b00b00
                       #x40b00c00
                       #x40b00d00
                       #x40b00e00
                       #x40b00f00
                       #x40b01000
                       #x40b01100
                       #x40b01200
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 90))
    )
  )

(defpartgroup group-freehq-rtableb
  :id 814
  :flags (sp0 sp4 sp7)
  :bounds (static-bspherem 0 0 0 16)
  :scale (0.06 0.06 1.0)
  :parts ((sp-item 2985 :flags (is-3d sp7))
    (sp-item 2986 :flags (is-3d sp7) :period (seconds 2) :length (seconds 0.017))
    (sp-item 2987 :flags (sp7) :period (seconds 2) :length (seconds 0.017) :offset 125)
    (sp-item 2988 :flags (sp7) :period (seconds 2) :length (seconds 0.017) :offset 300)
    (sp-item 2989 :flags (sp7) :period (seconds 2) :length (seconds 0.017) :offset 375)
    (sp-item 2990 :flags (sp6 sp7))
    )
  )

(defpart 2990
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 10))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 16))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 8.0 4.0)
    (:omega (degrees 4511.25))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2985
  :init-specs ((:texture (vinroom-tv-circle freehq-sprite))
    (:num 0.0 0.2)
    (:x (meters 0.4))
    (:y (meters -0.2))
    (:z (meters -0.02))
    (:scale-x (meters 0))
    (:rot-x (degrees -90))
    (:rot-y (degrees 0))
    (:scale-y (meters 0))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0 16.0)
    (:scalevel-x (meters 0.0033333334))
    (:scalevel-y (meters 0.0016666667))
    (:timer (seconds 0.535))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:next-time (seconds 0.335))
    (:next-launcher 2991)
    (:rotate-y (degrees 90))
    )
  )

(defpart 2991
  :init-specs ((:fade-a -0.53333336))
  )

(defpart 2986
  :init-specs ((:texture (vinroom-tv-radar freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 5))
    (:rot-x (degrees 0))
    (:rot-y (degrees -100.00001))
    (:rot-z (degrees 90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 80.0)
    (:rotvel-y (degrees -0.6))
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 90))
    )
  )

(defpart 2987
  :init-specs ((:texture (middot level-default-sprite))
    (:num 1.0)
    (:x (meters 1.5))
    (:y (meters 1.5))
    (:z (meters 0))
    (:scale-x (meters 0.2))
    (:rot-x (degrees -90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 128.0)
    (:fade-a -0.28444445)
    (:timer (seconds 1.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 0))
    )
  )

(defpart 2988
  :init-specs ((:texture (middot level-default-sprite))
    (:num 1.0)
    (:x (meters 1))
    (:y (meters -1.5))
    (:z (meters 0))
    (:scale-x (meters 0.2))
    (:rot-x (degrees -90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 128.0)
    (:fade-a -0.28444445)
    (:timer (seconds 1.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 0))
    )
  )

(defpart 2989
  :init-specs ((:texture (middot level-default-sprite))
    (:num 1.0)
    (:x (meters -0.5))
    (:y (meters -2))
    (:z (meters 0))
    (:scale-x (meters 0.2))
    (:rot-x (degrees -90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 128.0)
    (:fade-a -0.28444445)
    (:timer (seconds 1.5))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-rtablec
  :id 815
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 2992 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 2993 :flags (is-3d sp7) :period (seconds 1.067) :length (seconds 0.017) :offset 10)
    (sp-item 2994 :flags (sp6 sp7))
    )
  )

(defpart 2992
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 0.46))
    (:rot-x (degrees 0))
    (:rot-y (degrees -90))
    (:rot-z (degrees -90))
    (:scale-y (meters 0.3))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 8.0)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       0
                       0
                       #x40b00800
                       #x40b00900
                       #x40b00a00
                       #x40b00b00
                       #x40b00c00
                       #x40b00d00
                       #x40b00e00
                       #x40b00f00
                       #x40b01000
                       #x40b01100
                       #x40b01200
                       #x40b00300
                       #x40b00400
                       #x40b00500
                       #x40b00600
                       #x40b00700
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 90))
    )
  )

(defpart 2993
  :init-specs ((:texture (vinroom-small-monitor-08 freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 0.46))
    (:rot-x (degrees 0))
    (:rot-y (degrees -90))
    (:rot-z (degrees -90))
    (:scale-y (meters 0.3))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:fade-a -0.7111111)
    (:timer (seconds 1.067))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32 80 0 0 #x40b01700 #x40b01800 #x40b01900 #x40b01a00))
    (:func 'sparticle-texture-animate)
    (:next-time (seconds 0.267))
    (:next-launcher 2995)
    (:rotate-y (degrees 90))
    )
  )

(defpart 2995
  :init-specs ((:a 64.0) (:fade-a -0.7111111) (:next-time (seconds 0.267)) (:next-launcher 2995))
  )

(defpart 2994
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.1))
    (:scale-x (meters 1))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 2))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 8.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 1024.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-rtabled
  :id 816
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 2996 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 2997 :flags (is-3d sp3 sp7))
    (sp-item 2998 :flags (is-3d sp3 sp7))
    (sp-item 2999 :flags (is-3d sp3 sp7))
    (sp-item 3000 :flags (is-3d sp3 sp7))
    (sp-item 3001 :falloff-to (meters 10) :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3002 :falloff-to (meters 10) :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3003 :falloff-to (meters 10) :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3004 :falloff-to (meters 10) :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3005 :falloff-to (meters 10) :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3006 :flags (sp6 sp7))
    )
  )

(defpart 2996
  :init-specs ((:texture (screen-00 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.025))
    (:y (meters 0.05))
    (:z (meters -0.015))
    (:scale-x (meters 1))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.5))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 8.0)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       0
                       0
                       #x40b00800
                       #x40b00900
                       #x40b00a00
                       #x40b00b00
                       #x40b00c00
                       #x40b00d00
                       #x40b00e00
                       #x40b00f00
                       #x40b01000
                       #x40b01100
                       #x40b01200
                       #x40b00300
                       #x40b00400
                       #x40b00500
                       #x40b00600
                       #x40b00700
                       )
               )
    (:func 'sparticle-texture-animate)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2997
  :init-specs ((:texture (holo-curve freehq-sprite))
    (:num 1.0)
    (:x (meters -0.22))
    (:y (meters 0))
    (:z (meters -0.015))
    (:scale-x (meters 0.35))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 40.0)
    (:g 20.0)
    (:b 255.0)
    (:a 64.0)
    (:rotvel-y (degrees -1.2) (degrees 2.4))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:next-time (seconds 0.017))
    (:next-launcher 3007)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3007
  :init-specs ((:rotvel-y (degrees -1.2) (degrees 2.4)) (:next-time (seconds 0.167) (seconds 0.33)) (:next-launcher 3007))
  )

(defpart 2998
  :init-specs ((:texture (holo-curve freehq-sprite))
    (:num 1.0)
    (:x (meters -0.22))
    (:y (meters 0))
    (:z (meters -0.015))
    (:scale-x (meters 0.15))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 20.0)
    (:g 255.0)
    (:b 100.0)
    (:a 64.0)
    (:rotvel-y (degrees -1.2) (degrees 2.4))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:next-time (seconds 0.017))
    (:next-launcher 3007)
    (:rotate-y (degrees 0))
    )
  )

(defpart 2999
  :init-specs ((:texture (holo-curve freehq-sprite))
    (:num 1.0)
    (:x (meters 0.22))
    (:y (meters 0.08))
    (:z (meters -0.015))
    (:scale-x (meters 0.25))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 40.0)
    (:g 20.0)
    (:b 255.0)
    (:a 64.0)
    (:rotvel-y (degrees -1.2) (degrees 2.4))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:next-time (seconds 0.017))
    (:next-launcher 3008)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3008
  :init-specs ((:rotvel-y (degrees -0.6) (degrees 1.2)) (:next-time (seconds 0.5) (seconds 0.497)) (:next-launcher 3008))
  )

(defpart 3000
  :init-specs ((:texture (holo-curve freehq-sprite))
    (:num 1.0)
    (:x (meters 0.22))
    (:y (meters 0.08))
    (:z (meters -0.015))
    (:scale-x (meters 0.1))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 20.0)
    (:g 255.0)
    (:b 100.0)
    (:a 64.0)
    (:rotvel-y (degrees -1.2) (degrees 2.4))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:next-time (seconds 0.017))
    (:next-launcher 3008)
    (:rotate-y (degrees 0))
    )
  )

;; WARN: Return type mismatch float vs none.
(defun sparticle-kill-at-scale-eqline ((arg0 sparticle-system)
                              (arg1 sparticle-cpuinfo)
                              (arg2 sparticle-launchinfo)
                              (arg3 sparticle-launcher)
                              (arg4 sparticle-launch-state)
                              )
  (when (or (>= (-> arg2 launchrot w) 4096.0) (>= (-> arg2 conerot w) 1228.8))
    (set! (-> arg2 launchrot w) 0.0)
    (set! (-> arg2 conerot w) 0.0)
    )
  (none)
  )

(defpart 3001
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters -0.2))
    (:z (meters -0.015))
    (:scale-x (meters 0.04))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-eqline)
    (:next-time (seconds 0.017))
    (:next-launcher 3009)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3009
  :init-specs ((:scalevel-y (meters -0.0033333334) (meters 0.006666667))
    (:next-time (seconds 0.05) (seconds 0.047))
    (:next-launcher 3009)
    )
  )

(defpart 3002
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.2))
    (:z (meters -0.015))
    (:scale-x (meters 0.04))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-eqline)
    (:next-time (seconds 0.017))
    (:next-launcher 3009)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3003
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.1))
    (:y (meters -0.2))
    (:z (meters -0.015))
    (:scale-x (meters 0.04))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-eqline)
    (:next-time (seconds 0.017))
    (:next-launcher 3009)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3004
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.15))
    (:y (meters -0.2))
    (:z (meters -0.015))
    (:scale-x (meters 0.04))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-eqline)
    (:next-time (seconds 0.017))
    (:next-launcher 3009)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3005
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters 0.2))
    (:y (meters -0.2))
    (:z (meters -0.015))
    (:scale-x (meters 0.04))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.1))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-eqline)
    (:next-time (seconds 0.017))
    (:next-launcher 3009)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3006
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0.05))
    (:y (meters -0.1))
    (:scale-x (meters 1))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 2))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 8.0 1.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 1024.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-mediuma
  :id 817
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3010 :flags (sp6 sp7))
    (sp-item 3011 :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3012 :flags (is-3d sp3 sp7))
    (sp-item 3013 :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    )
  )

(defpart 3012
  :init-specs ((:texture (common-white common))
    (:num 1.0)
    (:y (meters 0))
    (:z (meters -0.02))
    (:scale-x (meters 4))
    (:rot-x (degrees 90))
    (:scale-y (meters 2))
    (:r 15.0)
    (:g 15.0)
    (:b 30.0)
    (:a 128.0)
    (:timer (seconds -0.005))
    (:flags (aux-list sp-cpuinfo-flag-13 left-multiply-quat))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3013
  :init-specs ((:texture (vinroom-tv-linetext-01 freehq-sprite))
    (:birth-func 'birth-func-texture-group)
    (:num 1.0)
    (:y (meters -0.8))
    (:z (meters 0.06))
    (:scale-x (meters 3.6))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.2))
    (:r 128.0)
    (:g 128.0)
    (:b 255.0)
    (:a 64.0 32.0)
    (:vel-y (meters 0))
    (:timer (seconds 7.667))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 aux-list left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32
                       5
                       1
                       0
                       #x40b01d00
                       #x40b01e00
                       #x40b01f00
                       #x40b02000
                       #x40b02100
                       #x40b02200
                       #x40b02300
                       #x40b02400
                       )
               )
    (:next-time (seconds 0.485))
    (:next-launcher 3014)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3014
  :init-specs ((:vel-y (meters 0.0016666667)) (:next-time (seconds 0.485)) (:next-launcher 3015))
  )

(defpart 3015
  :init-specs ((:vel-y (meters 0)) (:next-time (seconds 0.485)) (:next-launcher 3014))
  )

(defpart 3011
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 1.0)
    (:x (meters 1.85))
    (:y (meters -0.8))
    (:z (meters 0.13))
    (:scale-x (meters 7.8))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.2))
    (:r 15.0)
    (:g 15.0)
    (:b 30.0)
    (:a 128.0)
    (:scalevel-x (meters -0.04))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-0 aux-list sp-cpuinfo-flag-13 left-multiply-quat))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3010
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 6))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 10))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-mediumb
  :id 818
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3016 :flags (sp6 sp7))
    (sp-item 3017 :flags (is-3d sp3 sp7))
    (sp-item 3018 :flags (is-3d sp3 sp7))
    (sp-item 3019 :flags (is-3d sp3 sp7))
    (sp-item 3020 :flags (is-3d sp3 sp7))
    (sp-item 3021 :flags (is-3d sp3 sp7))
    )
  )

(defpart 3016
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 6))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 10))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

;; WARN: Return type mismatch float vs none.
(defun sparticle-kill-at-scale-mediumb ((arg0 sparticle-system)
                               (arg1 sparticle-cpuinfo)
                               (arg2 sparticle-launchinfo)
                               (arg3 sparticle-launcher)
                               (arg4 sparticle-launch-state)
                               )
  (if (>= (-> arg2 launchrot w) 18432.0)
      (set! (-> arg2 launchrot w) 8192.0)
      )
  (if (>= 0.0 (-> arg2 launchrot w))
      (set! (-> arg2 launchrot w) 2048.0)
      )
  (none)
  )

(defpart 3017
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 2.0)
    (:x (meters 1.5))
    (:y (meters 0.8))
    (:z (meters -0.015))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.3))
    (:r 40.0)
    (:g 20.0)
    (:b 255.0)
    (:a 50.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-mediumb)
    (:next-time (seconds 0.017))
    (:next-launcher 3022)
    (:rotate-y (degrees 180))
    )
  )

(defpart 3022
  :init-specs ((:scalevel-x (meters -0.006666667) (meters 0.013333334))
    (:next-time (seconds 0.085) (seconds 0.165))
    (:next-launcher 3022)
    )
  )

(defpart 3018
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 2.0)
    (:x (meters 1.3))
    (:y (meters 0.4))
    (:z (meters -0.015))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.3))
    (:r 20.0)
    (:g 255.0)
    (:b 100.0)
    (:a 50.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-mediumb)
    (:next-time (seconds 0.017))
    (:next-launcher 3022)
    (:rotate-y (degrees 180))
    )
  )

(defpart 3019
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 2.0)
    (:x (meters 1.1))
    (:y (meters 0))
    (:z (meters -0.015))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.3))
    (:r 40.0)
    (:g 20.0)
    (:b 255.0)
    (:a 50.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-mediumb)
    (:next-time (seconds 0.017))
    (:next-launcher 3022)
    (:rotate-y (degrees 180))
    )
  )

(defpart 3020
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 2.0)
    (:x (meters 0.9))
    (:y (meters -0.4))
    (:z (meters -0.01))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.3))
    (:r 20.0)
    (:g 255.0)
    (:b 100.0)
    (:a 50.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-mediumb)
    (:next-time (seconds 0.017))
    (:next-launcher 3022)
    (:rotate-y (degrees 180))
    )
  )

(defpart 3021
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 2.0)
    (:x (meters 0.7))
    (:y (meters -0.8))
    (:z (meters -0.015))
    (:scale-x (meters 0.5))
    (:rot-x (degrees 90))
    (:scale-y (meters 0.3))
    (:r 40.0)
    (:g 20.0)
    (:b 255.0)
    (:a 50.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-mediumb)
    (:next-time (seconds 0.017))
    (:next-launcher 3022)
    (:rotate-y (degrees 180))
    )
  )

(defpartgroup group-freehq-mediumc
  :id 819
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3023 :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    (sp-item 3024 :flags (sp6 sp7))
    (sp-item 3025 :flags (is-3d sp7) :period (seconds 1) :length (seconds 0.017))
    )
  )

(defpart 3024
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 6))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 10))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3025
  :init-specs ((:texture (vinroom-small-monitor-01 freehq-sprite))
    (:birth-func 'birth-func-texture-group)
    (:num 1.0)
    (:x (meters 0.025))
    (:y (meters -0.05))
    (:z (meters 0.02))
    (:scale-x (meters 3.8))
    (:rot-x (degrees 90))
    (:scale-y (meters 1.5))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:fade-a -0.16666667)
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata :data (new 'static 'boxed-array :type int32
                       #x12c
                       0
                       0
                       #x40b01300
                       #x40b01400
                       #x40b01500
                       #x40b01600
                       #x40b01700
                       #x40b01800
                       #x40b01900
                       #x40b01a00
                       )
               )
    (:rotate-y (degrees 0))
    )
  )

(defpart 3023
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 1.0)
    (:x (meters -0.06))
    (:y (meters -0.8))
    (:z (meters 0.03))
    (:scale-x (meters 3.6))
    (:rot-x (degrees 90))
    (:scale-y (meters 3))
    (:r 15.0)
    (:g 15.0)
    (:b 30.0)
    (:a 128.0)
    (:scalevel-y (meters -0.053333335))
    (:timer (seconds 1))
    (:flags (sp-cpuinfo-flag-0 aux-list sp-cpuinfo-flag-13))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3026
  :init-specs ((:texture (common-white common))
    (:num 1.0)
    (:x (meters 0.025))
    (:y (meters -0.8))
    (:z (meters 0.1))
    (:scale-x (meters 3.8))
    (:rot-x (degrees 90))
    (:scale-y (meters 3))
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 128.0)
    (:scalevel-y (meters -0.053333335))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 aux-list))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-mediumd
  :id 820
  :flags (sp0 sp4 sp7)
  :bounds (static-bspherem 0 0 0 16)
  :scale (0.5 0.5 0.5)
  :parts ((sp-item 3027 :flags (is-3d sp7))
    (sp-item 3028 :flags (is-3d sp7) :period (seconds 2) :length (seconds 0.017))
    (sp-item 3029 :flags (is-3d sp7) :period (seconds 0.267) :length (seconds 0.017))
    (sp-item 3030 :flags (sp6 sp7))
    )
  )

(defpart 3030
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 10))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 16))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 20.0 4.0)
    (:omega (degrees 4511.25))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow set-conerot))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3027
  :init-specs ((:texture (vinroom-tv-circle freehq-sprite))
    (:num 0.0 0.2)
    (:scale-x (meters 0))
    (:rot-x (degrees 90))
    (:rot-y (degrees 0))
    (:scale-y (meters 0))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 16.0 16.0)
    (:scalevel-x (meters 0.026666667))
    (:scalevel-y (meters 0.013333334))
    (:timer (seconds 0.535))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:next-time (seconds 0.335))
    (:next-launcher 3031)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3031
  :init-specs ((:fade-a -0.53333336))
  )

(defpart 3028
  :init-specs ((:texture (vinroom-tv-radar freehq-sprite))
    (:num 1.0)
    (:scale-x (meters 5))
    (:rot-x (degrees 90))
    (:rot-y (degrees 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 80.0)
    (:rotvel-y (degrees -0.6))
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3029
  :init-specs ((:texture (vinroom-tv-radar-dots freehq-sprite))
    (:num 1.0)
    (:scale-x (meters 3) (meters 1.5))
    (:rot-x (degrees 90))
    (:rot-y (degrees 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0)
    (:rotvel-y (degrees 0.33333334) (degrees 0.26666668))
    (:timer (seconds 0.135) (seconds 0.53))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat set-conerot))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-biga
  :id 821
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3032 :flags (sp6 sp7)) (sp-item 3033 :flags (is-3d sp7)))
  )

(defpart 3033
  :init-specs ((:texture (holo-curve freehq-sprite))
    (:num 0.0 0.2)
    (:y (meters -0.2))
    (:scale-x (meters 2.3) 4 (meters 2.3))
    (:rot-x (degrees 90))
    (:scale-y :copy scale-x)
    (:r 55.0 200.0)
    (:g 55.0 200.0)
    (:b 255.0)
    (:a 8.0 8.0)
    (:rotvel-y (degrees -0.26666668) (degrees 0.53333336))
    (:timer (seconds 0.5) (seconds 4.997))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3032
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 20))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 30))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-bigb
  :id 822
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 640)
  :parts ((sp-item 3034 :flags (sp6 sp7))
    (sp-item 3035 :flags (is-3d sp7))
    (sp-item 3036 :flags (is-3d sp7))
    (sp-item 3037 :flags (is-3d sp7) :period (seconds 0.5) :length (seconds 0.017))
    )
  )

;; WARN: Return type mismatch float vs none.
(defun sparticle-kill-at-scale ((arg0 sparticle-system)
                       (arg1 sparticle-cpuinfo)
                       (arg2 sparticle-launchinfo)
                       (arg3 sparticle-launcher)
                       (arg4 sparticle-launch-state)
                       )
  (when (or (>= (-> arg2 launchrot w) 114688.0) (>= (-> arg2 conerot w) 65536.0))
    (set! (-> arg2 launchrot w) 0.0)
    (set! (-> arg2 conerot w) 0.0)
    )
  (none)
  )

(defpart 3035
  :init-specs ((:texture (line-scroll freehq-sprite))
    (:num 0.0 0.3)
    (:x (meters 7.5))
    (:y (meters -4) 9 (meters 1))
    (:z (meters 0))
    (:scale-x (meters 0.15))
    (:rot-x (degrees 90))
    (:rot-z (degrees 0))
    (:scale-y (meters 0.15))
    (:r 200.0)
    (:g 200.0)
    (:b 255.0)
    (:a 8.0 8.0)
    (:scalevel-x (meters 0.1) (meters 0.1))
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3038
  :init-specs ((:scalevel-x (meters 0)) (:scalevel-y (meters 0)) (:fade-a -0.016 -0.016))
  )

(defpart 3036
  :init-specs ((:texture (line-scroll2 freehq-sprite))
    (:num 0.0 0.3)
    (:x (meters -7) 13 (meters 1))
    (:y (meters -4.5))
    (:z (meters 0))
    (:scale-x (meters 0.15))
    (:rot-x (degrees 90))
    (:rot-z (degrees 0))
    (:scale-y (meters 0.15))
    (:r 200.0)
    (:g 200.0)
    (:b 255.0)
    (:a 8.0 8.0)
    (:scalevel-y (meters 0.1) (meters 0.1))
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale)
    (:rotate-y (degrees 0))
    )
  )

;; WARN: Return type mismatch float vs none.
(defun sparticle-kill-at-scale-squares ((arg0 sparticle-system)
                               (arg1 sparticle-cpuinfo)
                               (arg2 sparticle-launchinfo)
                               (arg3 sparticle-launcher)
                               (arg4 sparticle-launch-state)
                               )
  (when (or (>= (-> arg2 launchrot w) 40960.0) (>= (-> arg2 conerot w) 20480.0))
    (set! (-> arg2 launchrot w) 0.0)
    (set! (-> arg2 conerot w) 0.0)
    )
  (none)
  )

(defpart 3037
  :init-specs ((:texture (ring level-default-sprite))
    (:num 1.0)
    (:x (meters -3) (meters 6))
    (:y (meters -3) (meters 6))
    (:z (meters 0.06))
    (:scale-x (meters 2) (meters 4))
    (:rot-x (degrees 90))
    (:scale-y (meters 1) (meters 2))
    (:r 55.0 200.0)
    (:g 55.0 200.0)
    (:b 255.0)
    (:a 8.0 8.0)
    (:vel-y (meters 0))
    (:timer (seconds 10))
    (:flags (sp-cpuinfo-flag-0 sp-cpuinfo-flag-3 left-multiply-quat))
    (:func 'sparticle-kill-at-scale-squares)
    (:next-time (seconds 0.485))
    (:next-launcher 3039)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3039
  :init-specs ((:scalevel-x (meters -0.06666667) 4 (meters 0.033333335))
    (:scalevel-y (meters -0.06666667) 4 (meters 0.033333335))
    (:next-time (seconds 0.167))
    (:next-launcher 3040)
    )
  )

(defpart 3040
  :init-specs ((:scalevel-x (meters 0)) (:scalevel-y (meters 0)) (:next-time (seconds 0.485)) (:next-launcher 3039))
  )

(defpart 3034
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 20))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 30))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 1365.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-bigc
  :id 823
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3043 :flags (sp6 sp7))
    (sp-item 3044 :flags (sp3 sp7) :binding 3041)
    (sp-item 3041 :flags (sp2 sp3 sp7) :binding 3042)
    (sp-item 3042 :flags (is-3d sp2))
    )
  )

(defpart 3043
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 20))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 30))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 4511.25))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3044
  :init-specs ((:texture (middot level-default-sprite))
    (:num 1.0)
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 1))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3))
    (:rotate-y (degrees 90))
    )
  )

(defpart 3041
  :init-specs ((:texture (middot level-default-sprite))
    (:num 1.0)
    (:z (meters 1))
    (:scale-x (meters 0.5))
    (:scale-y :copy scale-x)
    (:r 0.0)
    (:g 255.0)
    (:b 0.0)
    (:a 0.0)
    (:omega (degrees 90))
    (:vel-y (meters 0.053333335))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 ready-to-launch))
    )
  )

(defpart 3042
  :init-specs ((:texture (circle freehq-sprite))
    (:num 0.08)
    (:scale-x (meters 0))
    (:rot-y (degrees 0))
    (:rot-z (degrees 76))
    (:scale-y (meters 0))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 50.0)
    (:scalevel-x (meters 0.006666667))
    (:rotvel-y (degrees 0.4))
    (:scalevel-y (meters 0.0139999995))
    (:fade-a -0.053333335)
    (:timer (seconds 3))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:rotate-y (degrees 90))
    )
  )

(defpartgroup group-freehq-giant
  :id 824
  :flags (sp0 sp1 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3045 :flags (sp6 sp7))
    (sp-item 3046 :flags (sp7))
    (sp-item 3047 :flags (sp7))
    (sp-item 3048 :flags (sp7))
    (sp-item 3049 :flags (sp7))
    (sp-item 3050 :flags (sp7))
    (sp-item 3051 :flags (is-3d sp6 sp7))
    )
  )

(defpart 3045
  :init-specs ((:texture (glow-soft level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 40))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 50))
    (:r 50.0 20.0)
    (:g 0.0)
    (:b 255.0)
    (:a 10.0 4.0)
    (:omega (degrees 4511.25))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3051
  :init-specs ((:texture (landscape freehq-sprite))
    (:birth-func 'birth-func-curve)
    (:num 0.04)
    (:x (meters 0))
    (:y (meters 2))
    (:z (meters 0.1))
    (:scale-x (meters 1))
    (:rot-x (degrees 90) 1 (degrees 180))
    (:rot-z (degrees 0) 1 (degrees 180))
    (:scale-y :copy scale-x)
    (:r 20.0)
    (:g 255.0)
    (:b 50.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:fade-a 0.026666667)
    (:friction 1.01)
    (:timer (seconds 4.335))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:userdata 0.0)
    (:func 'live-func-curve)
    (:rotate-y (degrees 0))
    )
  )

(if #t
    (set! *range-landscape-scale-x* (new 'static 'curve2d-fast
                                      :xs (new 'static 'vector :y -1.0 :z -2.0 :w -3.0)
                                      :ys (new 'static 'vector :x 16.0 :y 16.0 :z 17.0 :w 18.0)
                                      :one-over-x-deltas (new 'static 'vector :y 1.0 :z 1.0 :w 1.0)
                                      )
          )
    )

(if #t
    (set! *range-landscape-scale-y* (new 'static 'curve2d-fast
                                      :xs (new 'static 'vector :y -0.8 :z -1.0 :w -2.0)
                                      :ys (new 'static 'vector :x 0.2 :y 0.3 :z 0.6 :w 1.6)
                                      :one-over-x-deltas (new 'static 'vector :x 0.12500001 :y 1.5000001 :z 1.0 :w 1.0)
                                      )
          )
    )

(if #t
    (set! *curve-landscape-scale-x-temp* (new 'static 'curve2d-fast
                                           :xs (new 'static 'vector :y -0.9 :z -1.0 :w -2.0)
                                           :ys (new 'static 'vector :x 1.5 :y 1.5 :z 1.2 :w 2.2)
                                           :one-over-x-deltas (new 'static 'vector :y -2.9999988 :z 1.0 :w 1.0)
                                           )
          )
    )

(if #t
    (set! *curve-landscape-scale-x* (new 'static 'curve2d-fast
                                      :xs (new 'static 'vector :y -0.5 :z -0.85 :w -1.0)
                                      :ys (new 'static 'vector :x 1.0 :y 1.8 :z 2.8 :w 3.7)
                                      :one-over-x-deltas (new 'static 'vector :x 1.5999999 :y 2.8571427 :z 6.0000014 :w 1.0)
                                      )
          )
    )

(if #t
    (set! *curve-landscape-scale-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 3.0 :z 4.0 :w 5.0)
                                      :one-over-x-deltas (new 'static 'vector :x 2.0 :y 1.0 :z 1.0 :w 1.0)
                                      )
          )
    )

(define *part-freehq-giant-landscape-curve-settings*
  (new 'static 'particle-curve-settings :lifetime-base (seconds 4.085))
  )

(set! (-> *part-id-table* 3051 init-specs 19 initial-valuef)
      (the-as float *part-freehq-giant-landscape-curve-settings*)
      )

(set! (-> *part-freehq-giant-landscape-curve-settings* color-start) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* alpha-start) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* scale-x-start) *range-landscape-scale-x*)

(set! (-> *part-freehq-giant-landscape-curve-settings* scale-y-start) *range-landscape-scale-y*)

(set! (-> *part-freehq-giant-landscape-curve-settings* r-scalar) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* g-scalar) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* b-scalar) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* a-scalar) #f)

(set! (-> *part-freehq-giant-landscape-curve-settings* scale-x-scalar) *curve-landscape-scale-x*)

(set! (-> *part-freehq-giant-landscape-curve-settings* scale-y-scalar) *curve-landscape-scale-y*)

(defpart 3046
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.0 0.007)
    (:x (meters -3.7))
    (:y (meters 1.8))
    (:scale-x (meters 0.15))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0005))
    (:fade-a 0.094814815)
    (:friction 1.012)
    (:timer (seconds 3.835))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:conerot-z (degrees -45))
    )
  )

(defpart 3047
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.0 0.009)
    (:x (meters -2))
    (:y (meters 1.8))
    (:scale-x (meters 0.15))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0005))
    (:fade-a 0.094814815)
    (:friction 1.011)
    (:timer (seconds 4.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:conerot-z (degrees -25.000002))
    )
  )

(defpart 3048
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.0 0.008)
    (:x (meters 0))
    (:y (meters 1.8))
    (:scale-x (meters 0.15))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0005))
    (:fade-a 0.094814815)
    (:friction 1.01)
    (:timer (seconds 4.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:conerot-z (degrees 0))
    )
  )

(defpart 3049
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.0 0.007)
    (:x (meters 2))
    (:y (meters 1.8))
    (:scale-x (meters 0.15))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0005))
    (:fade-a 0.094814815)
    (:friction 1.011)
    (:timer (seconds 4.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:conerot-z (degrees 25.000002))
    )
  )

(defpart 3050
  :init-specs ((:texture (hotdot level-default-sprite))
    (:num 0.0 0.009)
    (:x (meters 3.7))
    (:y (meters 1.8))
    (:scale-x (meters 0.15))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0)
    (:b 0.0)
    (:a 0.0)
    (:vel-y (meters -0.0016666667))
    (:scalevel-x (meters 0.0016666667))
    (:scalevel-y (meters 0.0005))
    (:fade-a 0.094814815)
    (:friction 1.012)
    (:timer (seconds 4.335))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 left-multiply-quat))
    (:conerot-z (degrees 45))
    )
  )

(defpart 3052
  :init-specs ((:texture (common-white common))
    (:birth-func 'birth-func-simple-prim)
    (:num 1.0)
    (:x (meters -27))
    (:y (meters -3))
    (:z (meters 1))
    (:scale-x (meters 30))
    (:rot-x (degrees 90))
    (:scale-y (meters 15))
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 128.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 aux-list))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3053
  :init-specs ((:texture (common-white common))
    (:num 1.0)
    (:x (meters -10.5))
    (:y (meters -7))
    (:z (meters 1))
    (:scale-x (meters 3.3))
    (:rot-x (degrees 90))
    (:scale-y (meters 3.3))
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 128.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 aux-list))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3054
  :init-specs ((:texture (common-white common))
    (:num 1.0)
    (:x (meters 19))
    (:y (meters -3))
    (:z (meters 1))
    (:scale-x (meters 15))
    (:rot-x (degrees 90))
    (:scale-y (meters 15))
    (:r 0.0)
    (:g 0.0)
    (:b 0.0)
    (:a 128.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-3 aux-list))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-bigtable
  :id 825
  :flags (sp0 sp4)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 3055 :flags (is-3d sp3 sp7)) (sp-item 3056 :flags (is-3d sp3 sp7)))
  )

(defpart 3055
  :init-specs ((:texture (yavin freehq-sprite))
    (:num 1.0)
    (:z (meters -0.15))
    (:scale-x (meters 3.7))
    (:rot-x (degrees -90))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 128.0)
    (:b 128.0)
    (:a 128.0)
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-2 left-multiply-quat))
    (:rotate-y (degrees 0))
    )
  )

(defpart 3056
  :init-specs ((:texture (twirl freehq-sprite))
    (:num 1.0)
    (:z (meters -0.14))
    (:scale-x (meters 3.7))
    (:rot-x (degrees -90))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 64.0)
    (:b 64.0)
    (:a 140.0)
    (:rotvel-y (degrees 1.2))
    (:timer (seconds -0.005))
    (:flags (sp-cpuinfo-flag-2 left-multiply-quat))
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-console-green-light-1
  :id 826
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.335) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-2
  :id 827
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.535) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-3
  :id 828
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.7) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-4
  :id 829
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.185) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-5
  :id 830
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 0.935) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-6
  :id 831
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.385) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-7
  :id 832
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 1.567) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-green-light-8
  :id 833
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3057 :fade-after (meters 60) :flags (sp6) :period (seconds 2) :length (seconds 0.167)))
  )

(defpart 3057
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters -0.025))
    (:z (meters 0))
    (:scale-x (meters 1) (meters 0.1))
    (:rot-x (degrees 1.125))
    (:scale-y :copy scale-x)
    (:r 20.0)
    (:g 255.0)
    (:b 64.0 64.0)
    (:a 32.0 4.0)
    (:omega (degrees 1359))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 409.6)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-console-blue-light-1
  :id 834
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.335) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-2
  :id 835
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.535) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-3
  :id 836
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.7) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-4
  :id 837
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.185) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-5
  :id 838
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 0.935) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-6
  :id 839
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.385) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-7
  :id 840
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 1.567) :length (seconds 0.167)))
  )

(defpartgroup group-freehq-console-blue-light-8
  :id 841
  :bounds (static-bspherem 0 0 0 1)
  :parts ((sp-item 3058 :fade-after (meters 60) :flags (sp6) :period (seconds 2) :length (seconds 0.167)))
  )

(defpart 3058
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 1) (meters 0.1))
    (:rot-x (degrees 1.125))
    (:rot-z (degrees -17))
    (:scale-y :copy scale-x)
    (:r 64.0 64.0)
    (:g 20.0)
    (:b 255.0)
    (:a 32.0 4.0)
    (:omega (degrees 1359))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 409.6)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-red-wall-light
  :id 842
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 3059 :fade-after (meters 80) :flags (sp6 sp7)))
  )

(defpart 3059
  :init-specs ((:texture (colorflash level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 2.5) (meters 0.1))
    (:rot-x (degrees 1.125))
    (:rot-z (degrees 0))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 20.0)
    (:b 20.0)
    (:a 40.0 2.0)
    (:omega (degrees 1359))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 409.6)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-white-wall-light-top
  :id 843
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 3060 :flags (sp6 sp7) :period (seconds 0.5) :length (seconds 0.017)))
  )

(defpart 3060
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters -0.2))
    (:scale-x (meters 0.6))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 0.8))
    (:r 40.0)
    (:g 40.0)
    (:b 200.0)
    (:a -512.0 5 128.0)
    (:omega (degrees 2268))
    (:timer (seconds 0.335) (seconds 0.33))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-white-wall-light-bottom
  :id 844
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 3061 :fade-after (meters 150) :flags (sp6 sp7) :period (seconds 0.5) :length (seconds 0.017)))
  )

(defpart 3061
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters -0.2))
    (:scale-x (meters 1))
    (:rot-x (degrees 22.5))
    (:scale-y (meters 0.8))
    (:r 40.0)
    (:g 128.0)
    (:b 110.0)
    (:a -256.0 5 64.0)
    (:omega (degrees 2268))
    (:timer (seconds 0.335) (seconds 0.33))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14 glow))
    (:userdata 2048.0)
    (:rotate-y (degrees 0))
    )
  )

(defpartgroup group-freehq-red-wall-lights
  :id 845
  :flags (sp4)
  :bounds (static-bspherem 0 0 0 4)
  :parts ((sp-item 3062 :fade-after (meters 80) :flags (sp6 sp7))
    (sp-item 3063 :fade-after (meters 80) :flags (sp6 sp7))
    (sp-item 3064 :fade-after (meters 80) :flags (sp6 sp7))
    (sp-item 3065 :fade-after (meters 100) :flags (sp6 sp7))
    )
  )

(defpart 3062
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:z (meters 0.2))
    (:scale-x (meters 4.2) (meters 0.1))
    (:rot-x (degrees 11.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0 64.0)
    (:b 0.0)
    (:a 20.0 4.0)
    (:omega (degrees 1815.7499))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 13107.2)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3063
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:y (meters 1.5))
    (:z (meters 0.2))
    (:scale-x (meters 4.2) (meters 0.1))
    (:rot-x (degrees 11.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0 64.0)
    (:b 0.0)
    (:a 20.0 4.0)
    (:omega (degrees 1815.7499))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 13107.2)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3064
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:y (meters -1.5))
    (:z (meters 0.2))
    (:scale-x (meters 4.2) (meters 0.1))
    (:rot-x (degrees 11.25))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 0.0 64.0)
    (:b 0.0)
    (:a 20.0 4.0)
    (:omega (degrees 1815.7499))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 13107.2)
    (:rotate-y (degrees 0))
    )
  )

(defpart 3065
  :init-specs ((:texture (glow level-default-sprite))
    (:num 1.0)
    (:z (meters 0.05))
    (:scale-x (meters 12) (meters 0.1))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 8) (meters 0.1))
    (:r 255.0)
    (:g 0.0 64.0)
    (:b 0.0)
    (:a 20.0 4.0)
    (:omega (degrees 2265.75))
    (:timer (seconds 0.017))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 13107.2)
    (:rotate-y (degrees 0))
    )
  )
