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

;; name: board-part.gc
;; name in dgo: board-part
;; dgos: ENGINE, GAME

;; DECOMP BEGINS

(defpartgroup group-board-land-straight
  :id 119
  :duration (seconds 0.035)
  :linger-duration (seconds 1.5)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 209))
  )

(defpartgroup group-board-quick-jump
  :id 120
  :duration (seconds 0.035)
  :linger-duration (seconds 1.5)
  :bounds (static-bspherem 0 0 0 2)
  :parts ((sp-item 209))
  )

(defpart 431
  :init-specs ((:texture (motion-blur-part effects))
    (:num 1.0)
    (:scale-x (meters 2.5))
    (:rot-x 4)
    (:scale-y (meters 0.05))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0 32.0)
    (:omega (degrees 0.045))
    (:vel-y (meters 0.033333335) (meters 0.033333335))
    (:fade-g -0.85 -1.7)
    (:fade-b -8.0)
    (:fade-a -0.16 -0.16)
    (:accel-y (meters -0.0016666667) (meters -0.00066666666))
    (:friction 0.95)
    (:timer (seconds 0.167) (seconds 0.497))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:conerot-x (degrees 45) (degrees 90))
    (:conerot-y (degrees 0) (degrees 360))
    )
  )

(defpartgroup group-target-board
  :id 118
  :bounds (static-bspherem 0 0 0 15)
  :parts ((sp-item 432) (sp-item 433 :flags (is-3d)) (sp-item 434))
  )

(defpart 432
  :init-specs ((:num 3.0)
    (:y (meters 0.25))
    (:rot-x 7)
    (:r 2048.0)
    (:g 1638.4)
    (:b 1843.2)
    (:fade-b -0.08533333)
    (:timer (seconds 0.135))
    (:flags (distort))
    (:conerot-x (degrees 90))
    (:conerot-y (degrees 0) (degrees 360))
    (:conerot-radius (meters 0) (meters 0.5))
    )
  )

(defpart 433
  :init-specs ((:texture (hotdot effects))
    (:birth-func 'birth-func-target-orient)
    (:num 1.0)
    (:y (meters 0.25))
    (:scale-x (meters 4) (meters 2))
    (:rot-x (degrees 0))
    (:rot-y (degrees 0))
    (:rot-z (degrees 0))
    (:scale-y :copy scale-x)
    (:r 64.0 128.0)
    (:g :copy r)
    (:b 255.0)
    (:a 8.0 8.0)
    (:scalevel-x (meters -0.02) (meters -0.006666667))
    (:scalevel-y :copy scalevel-x)
    (:fade-a -0.1)
    (:timer (seconds 0.535))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    )
  )

(defpart 434
  :init-specs ((:texture (motion-blur-part effects))
    (:num 1.0)
    (:scale-x (meters 2.5))
    (:rot-x 4)
    (:scale-y (meters 0.05))
    (:r 128.0 64.0)
    (:g :copy r)
    (:b 255.0)
    (:a 64.0 32.0)
    (:omega (degrees 0.05625))
    (:vel-y (meters 0.033333335) (meters 0.033333335))
    (:fade-r -3.0)
    (:fade-g -3.0)
    (:fade-a -0.21333334 -0.21333334)
    (:accel-y (meters -0.00033333333) (meters -0.00033333333))
    (:friction 0.95)
    (:timer (seconds 0.167) (seconds 0.497))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12))
    (:func 'sparticle-motion-blur)
    (:conerot-x (degrees 80) (degrees 10))
    (:conerot-y (degrees 0) (degrees 360))
    (:conerot-radius (meters 0) (meters 0.5))
    )
  )

(defpart 435
  :init-specs ((:texture (bigpuff effects))
    (:num 0.0)
    (:y (meters 0))
    (:scale-x (meters 1) (meters 1))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 128.0)
    (:g 128.0)
    (:b 32.0)
    (:a 8.0 56.0)
    (:vel-y (meters 0.13333334) (meters 0.16666667))
    (:scalevel-x (meters 0.013333334))
    (:rotvel-z (degrees -0.4) (degrees 0.8))
    (:scalevel-y :copy scalevel-x)
    (:fade-g -1.4222223)
    (:fade-a -0.35555556)
    (:accel-y (meters 0.00008333333))
    (:friction 0.7)
    (:timer (seconds 0.6))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:conerot-x (degrees 90))
    (:conerot-y (degrees 0) (degrees 360))
    )
  )

(defpartgroup group-board-spin-attack
  :id 117
  :duration (seconds 50)
  :flags (use-local-clock unk-6)
  :bounds (static-bspherem 0 0 0 2)
  :rotate ((degrees 90) (degrees 180) (degrees 90))
  :parts ((sp-item 436 :flags (is-3d launch-asap bit6 bit7))
    (sp-item 437 :flags (is-3d launch-asap bit6 bit7))
    (sp-item 438 :flags (launch-asap bit6))
    )
  )

(defpart 438
  :init-specs ((:texture (glow-soft effects))
    (:num 1.0)
    (:scale-x (meters 3) (meters 0.5))
    (:rot-x (degrees 11.25))
    (:scale-y (meters 4) (meters 0.5))
    (:r 0.0)
    (:g 128.0)
    (:b 255.0)
    (:a 64.0)
    (:fade-a -0.4)
    (:timer (seconds 0.267))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
    (:userdata 12288.0)
    (:func 'sparticle-track-root)
    )
  )

(defpart 437
  :init-specs ((:texture (hotdot effects))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 12))
    (:rot-x (degrees 0))
    (:rot-y (degrees 0))
    (:rot-z (degrees 90))
    (:scale-y (meters 9))
    (:r 0.0)
    (:g 128.0 128.0)
    (:b 255.0)
    (:a 128.0)
    (:scalevel-x (meters -0.086666666))
    (:scalevel-y (meters -0.09))
    (:timer (seconds 0.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    (:func 'sparticle-track-root)
    (:rotate-y (degrees 0))
    )
  )

(defpart 436
  :init-specs ((:texture (water-ring effects))
    (:num 1.0)
    (:x (meters 0))
    (:y (meters 0))
    (:z (meters 0))
    (:scale-x (meters 1.4))
    (:rot-x (degrees 0))
    (:rot-y (degrees 0))
    (:rot-z (degrees 90))
    (:scale-y (meters 0.9))
    (:r 0.0)
    (:g 128.0 128.0)
    (:b 255.0)
    (:a 255.0)
    (:scalevel-x (meters 0.3))
    (:scalevel-y :copy scalevel-x)
    (:fade-a -3.1875)
    (:timer (seconds 0.067))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-14))
    (:func 'sparticle-track-root)
    (:rotate-y (degrees 0))
    )
  )
