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

;; name: ctyasha-obs.gc
;; name in dgo: ctyasha-obs
;; dgos: CTYASHA

;; DECOMP BEGINS

(defpartgroup group-ctyasha-dust-explosion
  :id 1062
  :duration (seconds 1)
  :linger-duration (seconds 3.5)
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 16)
  :parts ((sp-item 4639 :period (seconds 3) :length (seconds 0.135))
    (sp-item 4640 :period (seconds 3) :length (seconds 0.2))
    (sp-item 4641 :period (seconds 3) :length (seconds 0.035))
    (sp-item 4642 :period (seconds 3) :length (seconds 0.117) :offset 20)
    )
  )

(defpart 4639
  :init-specs ((:texture (bigpuff effects))
    (:num 64.0)
    (:x (meters 0) (meters 8))
    (:y (meters 0))
    (:scale-x (meters 2) (meters 6))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 64.0 128.0)
    (:g :copy r)
    (:b :copy g)
    (:a 0.0)
    (:vel-y (meters 0.06666667) (meters 0.4))
    (:scalevel-x (meters 0.006666667) (meters 0.006666667))
    (:rotvel-z (degrees -0.12) (degrees 0.24))
    (:scalevel-y :copy scalevel-x)
    (:fade-a 0.08 0.08)
    (:accel-y (meters -0.00033333333) (meters -0.002))
    (:friction 0.88 0.02)
    (:timer (seconds 4.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    (:next-time (seconds 0.5))
    (:next-launcher 4643)
    (:conerot-x (degrees 30) (degrees 75))
    (:rotate-y (degrees 45) (degrees 180))
    )
  )

(defpart 4640
  :init-specs ((:texture (bigpuff effects))
    (:num 16.0)
    (:x (meters 0) (meters 8))
    (:y (meters 0))
    (:scale-x (meters 2) (meters 6))
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y :copy scale-x)
    (:r 64.0 128.0)
    (:g :copy r)
    (:b :copy g)
    (:a 0.0)
    (:vel-y (meters 0.4) (meters 0.4))
    (:scalevel-x (meters 0.01) (meters 0.006666667))
    (:rotvel-z (degrees -0.12) (degrees 0.24))
    (:scalevel-y :copy scalevel-x)
    (:fade-a 0.08 0.08)
    (:accel-y (meters -0.003) (meters -0.0016666667))
    (:friction 0.88 0.04)
    (:timer (seconds 4.167))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    (:next-time (seconds 0.5))
    (:next-launcher 4643)
    (:conerot-x (degrees 60) (degrees 25.000002))
    (:rotate-y (degrees 150) (degrees 40))
    )
  )

(defpart 4643
  :init-specs ((:fade-a -0.032 -0.032))
  )

(defpart 4641
  :init-specs ((:texture (specs effects))
    (:num 32.0 8.0)
    (:x (meters 0.25))
    (:y (meters -2.5))
    (:scale-x (meters 4) (meters 3))
    (: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.06666667) (meters 0.4))
    (:scalevel-x (meters 0.006666667) (meters 0.006666667))
    (: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.0013333333) (meters -0.0023333333))
    (:friction 0.88 0.05)
    (:timer (seconds 10))
    (:flags (sp-cpuinfo-flag-2))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 4644)
    (:conerot-x (degrees -90) (degrees 60))
    (:conerot-y (degrees -30) (degrees 60))
    (:rotate-y (degrees 0))
    (:conerot-radius (meters 3) (meters 5))
    )
  )

(defpart 4642
  :init-specs ((:texture (motion-blur-part effects))
    (:num 16.0)
    (:x (meters 0) (meters 8))
    (:y (meters -3.5) (meters 2))
    (:scale-x (meters 2.5))
    (:rot-x 4)
    (:scale-y (meters 0.1) (meters 0.2))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0 32.0)
    (:omega (degrees 0.03375) (degrees 0.03375))
    (:vel-y (meters 0.26666668) (meters 0.2))
    (:fade-a -0.10666667 -0.10666667)
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.9 0.08)
    (:timer (seconds 1.5) (seconds 0.997))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0.05))
    (:next-launcher 4645)
    (:conerot-x (degrees 30) (degrees 75))
    (:rotate-y (degrees 45) (degrees 180))
    )
  )

(defpartgroup group-ctyasha-large-explosion
  :id 1063
  :duration (seconds 3)
  :linger-duration (seconds 2)
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 32)
  :parts ((sp-item 4646 :fade-after (meters 200) :falloff-to (meters 200) :period (seconds 32) :length (seconds 0.085))
    (sp-item 4647 :period (seconds 32) :length (seconds 0.035) :offset 10)
    (sp-item 4648 :fade-after (meters 120) :falloff-to (meters 120) :period (seconds 32) :length (seconds 0.335) :offset 25)
    (sp-item 4649 :fade-after (meters 60) :period (seconds 32) :length (seconds 0.117) :offset 10)
    (sp-item 4650 :period (seconds 32) :length (seconds 0.167) :offset 15)
    (sp-item 4651 :period (seconds 32) :length (seconds 0.017))
    (sp-item 4652 :period (seconds 32) :length (seconds 0.167) :offset 15)
    (sp-item 4653 :period (seconds 32) :length (seconds 0.017))
    )
  )

(defpart 4651
  :init-specs ((:texture (glow effects))
    (:num 1.0)
    (:y (meters -2.5))
    (:scale-x (meters 32))
    (:rot-x (degrees 45))
    (: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))
    (:userdata 40960.0)
    (:next-time (seconds 0.1))
    (:next-launcher 4654)
    )
  )

(defpart 4654
  :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)
    )
  )

(defpart 4653
  :init-specs ((:texture (glow-soft effects))
    (:num 1.0)
    (:scale-x (meters 120))
    (:rot-x (degrees 45))
    (:scale-y :copy scale-x)
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 24.0)
    (:scalevel-x (meters 0.13333334))
    (: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))
    (:userdata 40960.0)
    (:next-time (seconds 0.25))
    (:next-launcher 4655)
    )
  )

(defpart 4655
  :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)
    )
  )

(defpart 4649
  :init-specs ((:texture (motion-blur-part effects))
    (:num 16.0)
    (:y (meters -3.5) (meters 2))
    (:scale-x (meters 2.5))
    (:rot-x 4)
    (:scale-y (meters 0.1) (meters 0.2))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 64.0 32.0)
    (:omega (degrees 0.0675))
    (:vel-y (meters 0.26666668) (meters 0.2))
    (:fade-b -8.0)
    (:accel-y (meters -0.0033333334) (meters -0.0016666667))
    (:friction 0.9 0.08)
    (:timer (seconds 1.5) (seconds 0.997))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0.05))
    (:next-launcher 4656)
    (:conerot-x (degrees 0) (degrees 140))
    (:conerot-y (degrees 0) (degrees 10000))
    (:rotate-y (degrees 0))
    )
  )

(defpart 4656
  :init-specs ((:r 255.0)
    (:g 255.0)
    (:b 0.0)
    (:fade-r 0.0)
    (:fade-g -2.6133332)
    (:fade-b -1.7066667)
    (:fade-a -0.096 -0.096)
    (:next-time (seconds 0.25))
    (:next-launcher 4657)
    )
  )

(defpart 4657
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0))
  )

(defpart 4652
  :init-specs ((:texture (explosion-wave effects))
    (:num 5.0 5.0)
    (:y (meters -2.5))
    (:scale-x (meters 3) (meters 2))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 360) :store)
    (:scale-y (meters 8) (meters 4))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0 32.0)
    (:vel-y (meters 0.033333335) (meters 0.06666667))
    (:scalevel-x (meters 0.033333335) (meters 0.13333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r 0.0)
    (:fade-g -0.36)
    (:fade-b -4.24)
    (:fade-a -0.26666668)
    (:friction 0.92 0.02)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-2))
    (:func 'sparticle-motion-blur)
    (:next-time (seconds 0.085))
    (:next-launcher 4658)
    (:conerot-x '*sp-temp*)
    (:rotate-y (degrees 0))
    (:conerot-radius (meters 0) (meters 2))
    )
  )

(defpart 4658
  :init-specs ((:scalevel-x (meters 0.016666668) (meters 0.016666668))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -0.55)
    (:fade-g -2.95)
    (:fade-b -3.3)
    (:next-time (seconds 0.1) (seconds 0.03))
    (:next-launcher 4659)
    )
  )

(defpart 4659
  :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.2)
    (:fade-a -0.225 -0.225)
    )
  )

(defpart 4650
  :init-specs ((:texture (explosion-nebula effects))
    (:birth-func 'birth-func-texture-group)
    (:num 16.0 10.0)
    (:y (meters -2.5))
    (:scale-x (meters 3) (meters 2))
    (:rot-z (degrees 0))
    (:scale-y (meters 6.8) (meters 1.2))
    (:r 255.0)
    (:g 255.0)
    (:b 255.0)
    (:a 32.0 32.0)
    (:vel-y (meters 0) (meters 0.13333334))
    (:scalevel-x (meters 0.06666667) (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.32)
    (:friction 0.94)
    (:timer (seconds 3.335))
    (:flags (sp-cpuinfo-flag-2))
    (:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc03300))
    (:next-time (seconds 0.085))
    (:next-launcher 4660)
    (:conerot-x (degrees 0) (degrees 360))
    (:rotate-y (degrees 0))
    (:conerot-radius (meters 0) (meters 8))
    )
  )

(defpart 4660
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:next-time (seconds 0.017) (seconds 0.065)) (:next-launcher 4661))
  )

(defpart 4661
  :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 4662)
    )
  )

(defpart 4662
  :init-specs ((:scalevel-x (meters 0.008333334) (meters 0.008333334))
    (:scalevel-y :copy scalevel-x)
    (:fade-r -1.2)
    (:fade-g -0.7111111)
    (:fade-b -0.2)
    (:fade-a -0.06545454 -0.06545454)
    (:next-time (seconds 0.5) (seconds 0.097))
    (:next-launcher 4663)
    )
  )

(defpart 4663
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:fade-a -0.1125))
  )

(defpart 4648
  :init-specs ((:texture (specs effects))
    (:num 6.0 8.0)
    (:x (meters 0.25))
    (:y (meters -2.5))
    (:scale-x (meters 3) (meters 5))
    (: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.06666667) (meters 0.4))
    (:scalevel-x (meters 0.013333334) (meters 0.013333334))
    (: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.00033333333) (meters -0.0023333333))
    (:friction 0.88 0.02)
    (:timer (seconds 10))
    (:flags (sp-cpuinfo-flag-2))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 4644)
    (:conerot-x (degrees 0) (degrees 360))
    (:rotate-y (degrees 0))
    (:conerot-radius (meters 3) (meters 5))
    )
  )

(defpart 4644
  :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 4664)
    )
  )

(defpart 4664
  :init-specs ((:fade-r -0.5543478) (:fade-g -0.5543478) (:fade-b -0.5543478) (:fade-a -0.10666667 -0.10666667))
  )

(defpart 4646
  :init-specs ((:texture (bigpuff effects))
    (:num 4.0 8.0)
    (:x (meters 0) (meters 0.6))
    (:y (meters -2.5))
    (:scale-x (meters 8.5) (meters 8))
    (: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.2))
    (:scalevel-x (meters 0.033333335) (meters 0.086666666))
    (: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.89)
    (:timer (seconds 2.367))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 4665)
    (:conerot-x (degrees -1440) (degrees 2880))
    (:rotate-y (degrees 0))
    )
  )

(defpart 4665
  :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 4666)
    )
  )

(defpart 4666
  :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)
    )
  )

(defpart 4647
  :init-specs ((:texture (flamingstick effects))
    (:num 9.0)
    (:y (meters -2.5))
    (:scale-x (meters 4) (meters 8))
    (:rot-x 4)
    (:rot-z (degrees 0) (degrees 360))
    (:scale-y (meters 1) (meters 0.5))
    (:r 128.0 128.0)
    (:g 96.0)
    (:b 64.0)
    (:a 64.0 64.0)
    (:scalevel-x (meters 0.13333334) (meters 0.4))
    (:fade-g 1.6)
    (:fade-b 3.2)
    (:fade-a -1.6)
    (:timer (seconds 0.3))
    (:flags (sp-cpuinfo-flag-2))
    )
  )

(defpartgroup group-ctyasha-explosion
  :id 1064
  :duration (seconds 3)
  :linger-duration (seconds 2)
  :flags (use-local-clock)
  :bounds (static-bspherem 0 0 0 32)
  :parts ((sp-item 4667 :flags (bit6) :period (seconds 3) :length (seconds 0.017))
    (sp-item 4668 :flags (bit6) :period (seconds 3) :length (seconds 0.017))
    (sp-item 4669 :period (seconds 3) :length (seconds 0.05))
    (sp-item 4670 :fade-after (meters 60) :period (seconds 3) :length (seconds 0.035) :offset 10)
    (sp-item 4671 :fade-after (meters 60) :falloff-to (meters 60) :period (seconds 3) :length (seconds 0.167) :offset 20)
    (sp-item 4672 :fade-after (meters 200) :falloff-to (meters 200) :period (seconds 3) :length (seconds 0.085) :offset 20)
    (sp-item 4673 :fade-after (meters 150) :falloff-to (meters 150) :period (seconds 3) :length (seconds 0.067) :offset 30)
    )
  )

(defpart 4668
  :init-specs ((:texture (glow effects))
    (: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))
    (:next-time (seconds 0.25))
    (:next-launcher 4674)
    )
  )

(defpart 4674
  :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)
    )
  )

(defpart 4673
  :init-specs ((:texture (explosion-wave effects))
    (: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))
    (:next-time (seconds 0.085))
    (:next-launcher 4675)
    (:conerot-x '*sp-temp*)
    )
  )

(defpart 4672
  :init-specs ((:texture (explosion-nebula effects))
    (:birth-func 'birth-func-texture-group)
    (:num 1.0 0.2)
    (: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))
    (:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc03300))
    (:next-time (seconds 0.085))
    (:next-launcher 4675)
    (:conerot-x (degrees 0) (degrees 360))
    )
  )

(defpart 4675
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:next-time (seconds 0.017) (seconds 0.065)) (:next-launcher 4676))
  )

(defpart 4676
  :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 4677)
    )
  )

(defpart 4677
  :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 4678)
    )
  )

(defpart 4678
  :init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0) (:fade-a -0.1125))
  )

(defpart 4667
  :init-specs ((:texture (glow effects))
    (: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))
    (:next-time (seconds 0.1))
    (:next-launcher 4679)
    )
  )

(defpart 4679
  :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)
    )
  )

(defpart 4671
  :init-specs ((:texture (specs effects))
    (: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))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 4680)
    (:conerot-x (degrees 0) (degrees 360))
    )
  )

(defpart 4680
  :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 4681)
    )
  )

(defpart 4681
  :init-specs ((:fade-r -0.5543478) (:fade-g -0.5543478) (:fade-a -0.13913043))
  )

(defpart 4669
  :init-specs ((:texture (bigpuff effects))
    (:num 2.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))
    (:next-time (seconds 0.117) (seconds 0.047))
    (:next-launcher 4682)
    (:conerot-x (degrees -1440) (degrees 2880))
    )
  )

(defpart 4682
  :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 4683)
    )
  )

(defpart 4683
  :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)
    )
  )

(defpart 4670
  :init-specs ((:texture (flamingstick effects))
    (: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))
    )
  )

(defpartgroup group-ctyasha-smoke-trail
  :id 1065
  :duration (seconds 0.017)
  :linger-duration (seconds 1.5)
  :bounds (static-bspherem 0 0 0 6)
  :parts ((sp-item 4684 :fade-after (meters 300) :falloff-to (meters 300)))
  )

(defpart 4684
  :init-specs ((:texture (bigpuff effects))
    (:num 0.5)
    (:scale-x (meters 1.2) (meters 1.8))
    (:rot-z (degrees 0) (degrees 3600))
    (:scale-y (meters 1.2) (meters 1.8))
    (:r 64.0 128.0)
    (:g :copy r)
    (:b :copy g)
    (:a 32.0 32.0)
    (:vel-x (meters -0.0033333334) (meters 0.006666667))
    (:vel-y (meters -0.006666667) (meters -0.006666667))
    (:vel-z (meters -0.0033333334) (meters 0.006666667))
    (:scalevel-x (meters 0.0033333334) (meters 0.0033333334))
    (:rotvel-z (degrees -0.3) (degrees 0.6))
    (:scalevel-y :copy scalevel-x)
    (:fade-a -0.10666667 -0.10666667)
    (:accel-y (meters 0.000033333334) (meters 0.00006666667))
    (:friction 0.99)
    (:timer (seconds 2))
    (:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
    (:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc00000 #xc03300))
    )
  )

(defskelgroup skel-tanker tanker tanker-lod0-jg -1
              ((tanker-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 30)
              :origin-joint-index 6
              )

(defskelgroup skel-tanker-container tanker-container tanker-container-lod0-jg -1
              ((tanker-container-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 2 0 9)
              :origin-joint-index 3
              )

(defskelgroup skel-tanker-barrels tanker-barrels tanker-barrels-lod0-jg -1
              ((tanker-barrels-lod0-mg (meters 999999)))
              :bounds (static-spherem 7 0 0 30)
              :origin-joint-index 3
              )

(defskelgroup skel-tanker-one-barrel tanker-one-barrel tanker-one-barrel-lod0-jg -1
              ((tanker-one-barrel-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 30)
              :origin-joint-index 3
              )

(defskelgroup skel-tanker-roof-break tanker-roof-break tanker-roof-break-lod0-jg -1
              ((tanker-roof-break-lod0-mg (meters 999999)))
              :bounds (static-spherem 0 0 0 100)
              :origin-joint-index 4
              )

(deftype tanker-grunt (grunt)
  ((expensive-gnd-collide?  symbol  :offset 692)
   )
  )


(defmethod general-event-handler ((this tanker-grunt) (arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
  "Handles various events for the enemy
   @TODO - unsure if there is a pattern for the events and this should have a more specific name"
  (case arg2
    (('skip-intro)
     (when (and (-> this next-state)
                (let ((v1-4 (-> this next-state name)))
                  (or (= v1-4 'ambush) (= v1-4 'jumping-ambush) (= v1-4 'dormant) (= v1-4 'jump) (= v1-4 'jump-blocked))
                  )
                )
       (let ((s5-0 (-> this intro-path)))
         (when (nonzero? s5-0)
           (let ((f30-0 (get-num-segments s5-0))
                 (s4-0 (new 'stack-no-clear 'vector))
                 )
             (get-point-at-percent-along-path! s5-0 (-> this root trans) f30-0 'interp)
             (displacement-between-points-at-percent-normalized! s5-0 s4-0 f30-0)
             (forward-up->quaternion (-> this root quat) s4-0 *up-vector*)
             )
           (logclear! (-> this enemy-flags) (enemy-flag use-notice-distance directed directed-ready use-trigger))
           (logior! (-> this enemy-flags) (enemy-flag chase-startup))
           (logclear! (-> this mask) (process-mask actor-pause))
           (logior! (-> this enemy-flags) (enemy-flag alert))
           (set-vector! (-> this root scale) 1.0 1.0 1.0 1.0)
           (go-hostile this)
           #t
           )
         )
       )
     )
    (else
      ((method-of-type grunt general-event-handler) this arg0 arg1 arg2 arg3)
      )
    )
  )

;; WARN: Return type mismatch vector vs none.
(defmethod init-enemy! ((this tanker-grunt))
  "Common method called to initialize the enemy, typically sets up default field values and calls ancillary helper methods"
  (set! (-> this expensive-gnd-collide?) #t)
  (let ((t9-0 (method-of-type grunt init-enemy!)))
    (t9-0 this)
    )
  (set-vector! (-> this root scale) 0.0 0.0 0.0 1.0)
  (none)
  )

;; WARN: Return type mismatch uint vs collide-spec.
(defmethod enemy-method-124 ((this tanker-grunt))
  "TODO"
  (let ((t9-0 (method-of-type grunt enemy-method-124)))
    (t9-0 this)
    )
  (the-as collide-spec (when (-> this expensive-gnd-collide?)
                         (let ((v0-1 (logior (-> this gnd-collide) 577)))
                           (set! (-> this gnd-collide) v0-1)
                           v0-1
                           )
                         )
          )
  )

(defmethod go-hostile ((this tanker-grunt))
  (set! (-> this expensive-gnd-collide?) #f)
  (enemy-method-124 this)
  ((method-of-type grunt go-hostile) this)
  )

(defstate jump (tanker-grunt)
  :virtual #t
  :exit (behavior ()
    (let ((t9-0 (-> (method-of-type grunt jump) exit)))
      (if t9-0
          (t9-0)
          )
      )
    (set-vector! (-> self root scale) 1.0 1.0 1.0 1.0)
    )
  :trans (behavior ()
    (let ((t9-0 (-> (method-of-type grunt jump) trans)))
      (if t9-0
          (t9-0)
          )
      )
    (let* ((f0-0 (-> self root scale x))
           (f0-3 (seek f0-0 1.0 (* 1.5 (seconds-per-frame))))
           )
      (set-vector! (-> self root scale) f0-3 f0-3 f0-3 1.0)
      )
    0
    )
  )

(deftype tanker-juicer (juicer)
  ((expensive-gnd-collide?  symbol)
   )
  )


(defmethod general-event-handler ((this tanker-juicer) (arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
  "Handles various events for the enemy
   @TODO - unsure if there is a pattern for the events and this should have a more specific name"
  (case arg2
    (('skip-intro)
     (when (and (-> this next-state) (let ((v1-4 (-> this next-state name)))
                                       (or (= v1-4 'ambush) (= v1-4 'dormant) (= v1-4 'jump) (= v1-4 'jump-blocked))
                                       )
                )
       (let ((s5-0 (-> this intro-path)))
         (when (nonzero? s5-0)
           (let ((f30-0 (get-num-segments s5-0))
                 (s4-0 (new 'stack-no-clear 'vector))
                 )
             (get-point-at-percent-along-path! s5-0 (-> this root trans) f30-0 'interp)
             (displacement-between-points-at-percent-normalized! s5-0 s4-0 f30-0)
             (forward-up->quaternion (-> this root quat) s4-0 *up-vector*)
             )
           (logclear! (-> this enemy-flags) (enemy-flag use-notice-distance directed directed-ready use-trigger))
           (logior! (-> this enemy-flags) (enemy-flag chase-startup))
           (logclear! (-> this mask) (process-mask actor-pause))
           (logior! (-> this enemy-flags) (enemy-flag alert))
           (set-vector! (-> this root scale) 1.0 1.0 1.0 1.0)
           (go-hostile this)
           #t
           )
         )
       )
     )
    (else
      ((method-of-type juicer general-event-handler) this arg0 arg1 arg2 arg3)
      )
    )
  )

;; WARN: Return type mismatch vector vs none.
(defmethod init-enemy! ((this tanker-juicer))
  "Common method called to initialize the enemy, typically sets up default field values and calls ancillary helper methods"
  (set! (-> this expensive-gnd-collide?) #t)
  (let ((t9-0 (method-of-type juicer init-enemy!)))
    (t9-0 this)
    )
  (set-vector! (-> this root scale) 0.0 0.0 0.0 1.0)
  (none)
  )

;; WARN: Return type mismatch uint vs collide-spec.
(defmethod enemy-method-124 ((this tanker-juicer))
  "TODO"
  (let ((t9-0 (method-of-type juicer enemy-method-124)))
    (t9-0 this)
    )
  (the-as collide-spec (when (-> this expensive-gnd-collide?)
                         (let ((v0-1 (logior (-> this gnd-collide) 577)))
                           (set! (-> this gnd-collide) v0-1)
                           v0-1
                           )
                         )
          )
  )

(defmethod go-hostile ((this tanker-juicer))
  (set! (-> this expensive-gnd-collide?) #f)
  (enemy-method-124 this)
  ((method-of-type juicer go-hostile) this)
  )

(defstate jump (tanker-juicer)
  :virtual #t
  :exit (behavior ()
    (let ((t9-0 (-> (method-of-type juicer jump) exit)))
      (if t9-0
          (t9-0)
          )
      )
    (set-vector! (-> self root scale) 1.0 1.0 1.0 1.0)
    )
  :trans (behavior ()
    (let ((t9-0 (-> (method-of-type juicer jump) trans)))
      (if t9-0
          (t9-0)
          )
      )
    (let* ((f0-0 (-> self root scale x))
           (f0-3 (seek f0-0 1.0 (* 1.15 (seconds-per-frame))))
           )
      (set-vector! (-> self root scale) f0-3 f0-3 f0-3 1.0)
      )
    0
    )
  )

(deftype tanker-container (process-drawable)
  ((root  collide-shape :override)
   )
  (:state-methods
    dormant
    idle
    )
  (:methods
    (tanker-container-method-22 (_type_) none)
    )
  )


;; WARN: Return type mismatch (pointer process) vs none.
(defmethod tanker-container-method-22 ((this tanker-container))
  (process-spawn
    simple-nav-sphere
    #x46733333
    (new 'static 'vector :x 1719500.8 :y 35225.6 :z 1837465.6 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46a00000
    (new 'static 'vector :x 1730560.0 :y 35225.6 :z 1855488.0 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46b00000
    (new 'static 'vector :x 1738752.0 :y 35225.6 :z 1884160.0 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46b00000
    (new 'static 'vector :x 1751040.0 :y 35225.6 :z 1910374.4 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46b00000
    (new 'static 'vector :x 1763737.6 :y 35225.6 :z 1936588.8 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46880000
    (new 'static 'vector :x 1853849.6 :y 35225.6 :z 1918566.4 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x46880000
    (new 'static 'vector :x 1867776.0 :y 35225.6 :z 1934131.2 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x458ccccd
    (new 'static 'vector :x 1962803.2 :y 35225.6 :z 1739980.8 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1916108.8 :y 35225.6 :z 1705164.8 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1863270.4 :y 35225.6 :z 1699430.4 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1862860.8 :y 35225.6 :z 1814118.4 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1810841.6 :y 35225.6 :z 1800192.0 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1781350.4 :y 35225.6 :z 1774387.2 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1771110.4 :y 35225.6 :z 1799782.4 :w 1.0)
    #f
    -1
    :to this
    )
  (process-spawn
    simple-nav-sphere
    #x45e66666
    (new 'static 'vector :x 1784217.6 :y 35225.6 :z 1828864.0 :w 1.0)
    #f
    -1
    :to this
    )
  (none)
  )

(defbehavior tanker-container-event-handler tanker-container ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
  (case arg2
    (('trigger)
     (let ((v1-2 (-> self root root-prim)))
       (set! (-> v1-2 prim-core collide-as) (-> self root backup-collide-as))
       (set! (-> v1-2 prim-core collide-with) (-> self root backup-collide-with))
       )
     (go-virtual idle)
     )
    (('draw)
     (let ((v0-0 (the-as object (logclear (-> self draw status) (draw-control-status no-draw)))))
       (set! (-> self draw status) (the-as draw-control-status v0-0))
       v0-0
       )
     )
    )
  )

(defstate dormant (tanker-container)
  :virtual #t
  :event tanker-container-event-handler
  :enter (behavior ()
    (logior! (-> self mask) (process-mask actor-pause))
    (logior! (-> self draw status) (draw-control-status no-draw))
    )
  :code sleep-code
  )

(defstate idle (tanker-container)
  :virtual #t
  :event tanker-container-event-handler
  :enter (behavior ()
    (logior! (-> self mask) (process-mask actor-pause))
    (let ((v1-3 (-> self root root-prim)))
      (set! (-> v1-3 prim-core collide-as) (-> self root backup-collide-as))
      (set! (-> v1-3 prim-core collide-with) (-> self root backup-collide-with))
      )
    (tanker-container-method-22 self)
    )
  :code sleep-code
  )

;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this tanker-container) (arg0 entity-actor))
  "Typically the method that does the initial setup on the process, potentially using the [[entity-actor]] provided as part of that.
   This commonly includes things such as:
   - stack size
   - collision information
   - loading the skeleton group / bones
   - sounds"
  (let ((s4-0 (new 'process 'collide-shape this (collide-list-enum usually-hit-by-player))))
    (let ((s3-0 (new 'process 'collide-shape-prim-group s4-0 (the-as uint 3) 0)))
      (set! (-> s4-0 total-prims) (the-as uint 4))
      (set! (-> s3-0 prim-core collide-as) (collide-spec obstacle))
      (set! (-> s3-0 prim-core action) (collide-action solid))
      (set! (-> s3-0 transform-index) 3)
      (set-vector! (-> s3-0 local-sphere) 0.0 8192.0 0.0 36864.0)
      (set! (-> s4-0 root-prim) s3-0)
      )
    (let ((v1-8 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 0) (the-as uint 0))))
      (set! (-> v1-8 prim-core collide-as) (collide-spec obstacle))
      (set! (-> v1-8 prim-core action) (collide-action solid))
      (set! (-> v1-8 transform-index) 4)
      (set-vector! (-> v1-8 local-sphere) 0.0 0.0 -10240.0 12288.0)
      )
    (let ((v1-10 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 1) (the-as uint 0))))
      (set! (-> v1-10 prim-core collide-as) (collide-spec obstacle))
      (set! (-> v1-10 prim-core action) (collide-action solid))
      (set! (-> v1-10 transform-index) 3)
      (set-vector! (-> v1-10 local-sphere) 0.0 0.0 0.0 28672.0)
      )
    (let ((v1-12 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 2) (the-as uint 0))))
      (set! (-> v1-12 prim-core collide-as) (collide-spec obstacle-for-jak))
      (set! (-> v1-12 prim-core action) (collide-action solid))
      (set! (-> v1-12 transform-index) 3)
      (set-vector! (-> v1-12 local-sphere) 0.0 8192.0 0.0 36864.0)
      )
    (set! (-> s4-0 nav-radius) (* 0.75 (-> s4-0 root-prim local-sphere w)))
    (let ((v1-15 (-> s4-0 root-prim)))
      (set! (-> s4-0 backup-collide-as) (-> v1-15 prim-core collide-as))
      (set! (-> s4-0 backup-collide-with) (-> v1-15 prim-core collide-with))
      )
    (set! (-> this root) s4-0)
    )
  (process-drawable-from-entity! this arg0)
  (initialize-skeleton
    this
    (the-as skeleton-group (art-group-get-by-name *level* "skel-tanker-container" (the-as (pointer uint32) #f)))
    (the-as pair 0)
    )
  (ja-channel-set! 1)
  (let ((s5-2 (-> this skel root-channel 0)))
    (joint-control-channel-group-eval!
      s5-2
      (the-as art-joint-anim (-> this draw art-group data 2))
      num-func-identity
      )
    (set! (-> s5-2 frame-num) 0.0)
    )
  (transform-post)
  (let ((v1-26 (-> this root root-prim)))
    (set! (-> v1-26 prim-core collide-as) (collide-spec))
    (set! (-> v1-26 prim-core collide-with) (collide-spec))
    )
  0
  (logclear! (-> this mask) (process-mask actor-pause))
  (if (task-node-closed? (game-task-node city-intercept-tanker-introduction))
      (go (method-of-object this idle))
      (go (method-of-object this dormant))
      )
  (none)
  )

(defskelgroup skel-tanker-crash tanker-crash tanker-crash-lod0-jg -1
              ((tanker-crash-lod0-mg (meters 999999)))
              :bounds (static-spherem 7 2 0 21)
              :origin-joint-index 4
              )

(deftype tanker-crash (process-drawable)
  ((root  collide-shape :override)
   )
  (:state-methods
    dormant
    idle
    )
  )


(defstate dormant (tanker-crash)
  :virtual #t
  :event (behavior ((proc process) (argc int) (message symbol) (block event-message-block))
    (case message
      (('trigger)
       (go-virtual idle)
       )
      )
    )
  :enter (behavior ()
    (logior! (-> self mask) (process-mask actor-pause))
    (logior! (-> self draw status) (draw-control-status no-draw))
    )
  :code sleep-code
  )

(defstate idle (tanker-crash)
  :virtual #t
  :enter (behavior ()
    (logior! (-> self mask) (process-mask actor-pause))
    (let ((v1-3 (-> self root root-prim)))
      (set! (-> v1-3 prim-core collide-as) (-> self root backup-collide-as))
      (set! (-> v1-3 prim-core collide-with) (-> self root backup-collide-with))
      )
    (logclear! (-> self draw status) (draw-control-status no-draw))
    )
  :code sleep-code
  :post ja-post
  )

;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this tanker-crash) (arg0 entity-actor))
  "Typically the method that does the initial setup on the process, potentially using the [[entity-actor]] provided as part of that.
   This commonly includes things such as:
   - stack size
   - collision information
   - loading the skeleton group / bones
   - sounds"
  (let ((s4-0 (new 'process 'collide-shape this (collide-list-enum usually-hit-by-player))))
    (let ((s3-0 (new 'process 'collide-shape-prim-group s4-0 (the-as uint 3) 0)))
      (set! (-> s4-0 total-prims) (the-as uint 4))
      (set! (-> s3-0 prim-core collide-as) (collide-spec obstacle))
      (set! (-> s3-0 prim-core action) (collide-action solid))
      (set! (-> s3-0 transform-index) 4)
      (set-vector! (-> s3-0 local-sphere) 28672.0 8192.0 0.0 86016.0)
      (set! (-> s4-0 root-prim) s3-0)
      )
    (let ((v1-8 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 1) (the-as uint 0))))
      (set! (-> v1-8 prim-core collide-as) (collide-spec obstacle))
      (set! (-> v1-8 prim-core action) (collide-action solid))
      (set! (-> v1-8 transform-index) 6)
      (set-vector! (-> v1-8 local-sphere) 0.0 0.0 -28672.0 32768.0)
      )
    (let ((v1-10 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 1) (the-as uint 0))))
      (set! (-> v1-10 prim-core collide-as) (collide-spec obstacle))
      (set! (-> v1-10 prim-core action) (collide-action solid))
      (set! (-> v1-10 transform-index) 7)
      (set-vector! (-> v1-10 local-sphere) 0.0 0.0 -26624.0 32768.0)
      )
    (let ((v1-12 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 2) (the-as uint 0))))
      (set! (-> v1-12 prim-core collide-as) (collide-spec obstacle))
      (set! (-> v1-12 prim-core action) (collide-action solid))
      (set! (-> v1-12 transform-index) 8)
      (set-vector! (-> v1-12 local-sphere) 0.0 8192.0 4096.0 28672.0)
      )
    (set! (-> s4-0 nav-radius) (* 0.75 (-> s4-0 root-prim local-sphere w)))
    (let ((v1-15 (-> s4-0 root-prim)))
      (set! (-> s4-0 backup-collide-as) (-> v1-15 prim-core collide-as))
      (set! (-> s4-0 backup-collide-with) (-> v1-15 prim-core collide-with))
      )
    (set! (-> this root) s4-0)
    )
  (process-drawable-from-entity! this arg0)
  (initialize-skeleton
    this
    (the-as skeleton-group (art-group-get-by-name *level* "skel-tanker-crash" (the-as (pointer uint32) #f)))
    (the-as pair 0)
    )
  (ja-channel-set! 1)
  (let ((s5-2 (-> this skel root-channel 0)))
    (joint-control-channel-group-eval!
      s5-2
      (the-as art-joint-anim (-> this draw art-group data 2))
      num-func-identity
      )
    (set! (-> s5-2 frame-num) 0.0)
    )
  (transform-post)
  (let ((v1-26 (-> this root root-prim)))
    (set! (-> v1-26 prim-core collide-as) (collide-spec))
    (set! (-> v1-26 prim-core collide-with) (collide-spec))
    )
  0
  (logclear! (-> this mask) (process-mask actor-pause))
  (if (task-node-closed? (game-task-node city-intercept-tanker-introduction))
      (go (method-of-object this idle))
      (go (method-of-object this dormant))
      )
  (none)
  )

(deftype tanker-deadly (process-drawable)
  ((root         collide-shape :override)
   (track-joint  int32)
   (attack-id    uint32)
   (die-time     time-frame)
   (prev-pos     vector         :inline)
   )
  (:state-methods
    active
    die-fast
    )
  )


(defmethod run-logic? ((this tanker-deadly))
  "Should this process be run? Checked by execute-process-tree."
  #t
  )

(defstate active (tanker-deadly)
  :virtual #t
  :event (behavior ((proc process) (argc int) (message symbol) (block event-message-block))
    (case message
      (('touched)
       (let ((a2-1 (-> block param 0))
             (v1-1 (new 'stack-no-clear 'vector))
             )
         (vector-! v1-1 (-> self root trans) (-> self prev-pos))
         (send-event proc 'attack a2-1 (static-attack-info ((id (-> self attack-id))
                                                            (mode 'eco-red)
                                                            (attacker-velocity v1-1)
                                                            (damage 2.0)
                                                            (knock (knocked-type knocked-type-2))
                                                            )
                                                           )
                     )
         )
       )
      )
    )
  :code sleep-code
  :post (behavior ()
    (set! (-> self prev-pos quad) (-> self root trans quad))
    (let ((v1-1 (ppointer->process (-> self parent)))
          (gp-0 (new 'stack-no-clear 'vector))
          )
      (vector<-cspace! gp-0 (-> (the-as process-drawable v1-1) node-list data (-> self track-joint)))
      (move-to-point! (-> self root) gp-0)
      )
    (let ((a1-5 (new 'stack-no-clear 'overlaps-others-params)))
      (set! (-> a1-5 options) (overlaps-others-options))
      (set! (-> a1-5 collide-with-filter) (the-as collide-spec -1))
      (set! (-> a1-5 tlist) *touching-list*)
      (find-overlapping-shapes (-> self root) a1-5)
      )
    (if (>= (current-time) (-> self die-time))
        (go-virtual die-fast)
        )
    )
  )

(defstate die-fast (tanker-deadly)
  :virtual #t
  :code (behavior ()
    (cleanup-for-death self)
    )
  )

;; WARN: Return type mismatch object vs none.
(defbehavior tanker-deadly-init-by-other tanker-deadly ((arg0 vector) (arg1 int) (arg2 int))
  (set! (-> self track-joint) arg1)
  (set! (-> self die-time) (+ (current-time) arg2))
  (let* ((v1-3 *game-info*)
         (a0-2 (+ (-> v1-3 attack-id) 1))
         )
    (set! (-> v1-3 attack-id) a0-2)
    (set! (-> self attack-id) a0-2)
    )
  (let ((gp-0 (new 'process 'collide-shape self (collide-list-enum usually-hit-by-player))))
    (let ((v1-6 (new 'process 'collide-shape-prim-sphere gp-0 (the-as uint 0))))
      (set! (-> v1-6 prim-core collide-with) (collide-spec crate civilian hit-by-others-list))
      (set! (-> v1-6 prim-core action) (collide-action deadly))
      (set-vector! (-> v1-6 local-sphere) 0.0 0.0 0.0 4096.0)
      (set! (-> gp-0 total-prims) (the-as uint 1))
      (set! (-> gp-0 root-prim) v1-6)
      )
    (set! (-> gp-0 nav-radius) (* 0.75 (-> gp-0 root-prim local-sphere w)))
    (let ((v1-9 (-> gp-0 root-prim)))
      (set! (-> gp-0 backup-collide-as) (-> v1-9 prim-core collide-as))
      (set! (-> gp-0 backup-collide-with) (-> v1-9 prim-core collide-with))
      )
    (set! (-> gp-0 event-self) 'touched)
    (set! (-> gp-0 root-prim local-sphere quad) (-> arg0 quad))
    (let ((v1-14 (ppointer->process (-> self parent))))
      (vector<-cspace! (-> gp-0 trans) (-> (the-as process-drawable v1-14) node-list data (-> self track-joint)))
      )
    (vector-identity! (-> gp-0 scale))
    (quaternion-identity! (-> gp-0 quat))
    (update-transforms gp-0)
    (set! (-> self root) gp-0)
    )
  (set! (-> self prev-pos quad) (-> self root trans quad))
  (logclear! (-> self mask) (process-mask actor-pause enemy))
  (go-virtual active)
  (none)
  )

;; WARN: Return type mismatch (pointer process) vs (pointer tanker-deadly).
(defun tanker-spawn-deadly-barrels ((arg0 process-tree))
  (let ((s5-0 (new 'static 'vector :w 6553.6)))
    (process-spawn tanker-deadly s5-0 3 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 4 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 5 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 6 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 7 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 8 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 9 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 10 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 11 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 12 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 13 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 14 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 15 1041 :to arg0)
    (process-spawn tanker-deadly s5-0 16 1041 :to arg0)
    )
  )

;; WARN: Return type mismatch (pointer process) vs (pointer tanker-deadly).
(defun tanker-spawn-deadly-cab ((arg0 process-tree))
  (let ((s5-0 (new 'static 'vector :w 22937.6)))
    (process-spawn tanker-deadly s5-0 5 600 :to arg0)
    )
  )

;; WARN: Return type mismatch (pointer process) vs (pointer tanker-deadly).
(defun tanker-spawn-deadly-trailers ((arg0 process-tree))
  (let ((s5-0 (new 'static 'vector :z 32768.0 :w 22937.6)))
    (process-spawn tanker-deadly s5-0 9 600 :to arg0)
    (process-spawn tanker-deadly s5-0 8 600 :to arg0)
    )
  )

;; WARN: Return type mismatch (pointer process) vs (pointer tanker-deadly).
(defun tanker-spawn-deadly-container ((arg0 process-tree))
  (let ((s5-0 (new 'static 'vector :w 22937.6)))
    (process-spawn tanker-deadly s5-0 3 510 :to arg0)
    )
  )

(scene-method-16
  (new 'static 'scene
    :name "city-intercept-tanker-intro"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie platform projectile)
    :entity "scene-stage-57"
    :art-group "scenecamera"
    :anim "city-intercept-tanker-intro"
    :parts 16
    :command-list '((-25
        (send-event "ashelin-tanker-1" 'hide #t)
        (task-close! "city-intercept-tanker-roof-explode")
        (send-event *traffic-manager* 'set-guard-target-level (unbox 0))
        (send-event *traffic-manager* 'set-max-alert-level (unbox 0))
        (send-event *traffic-manager* 'set-alert-level (unbox 0))
        (send-event *traffic-manager* 'set-alert-duration (unbox 10800000))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 6))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 18))
        (send-event *traffic-manager* 'deactivate-by-type (unbox 19))
        (fma-sphere
          (nav kill-once)
          sphere
          (new 'static 'vector :x 1952972.8 :y 35635.2 :z 1853849.6 :w 19660.8)
          duration
          (frame-range (new 'static 'bfloat :data -25.0) (new 'static 'bfloat :data 57.5))
          )
        (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 1919795.2 :y 35635.2 :z 1836646.4 :w 32768.0))
        (fma-sphere
          (nav kill-once)
          sphere
          (new 'static 'vector :x 1857126.4 :y 35635.2 :z 1807974.4 :w 12288.0)
          duration
          (frame-range (new 'static 'bfloat :data -25.0) (new 'static 'bfloat :data 585.0))
          )
        (fma-sphere
          (nav kill-once)
          sphere
          (new 'static 'vector :x 1839923.2 :y 35635.2 :z 1839923.2 :w 12288.0)
          duration
          (frame-range (new 'static 'bfloat :data -25.0) (new 'static 'bfloat :data 585.0))
          )
        (fma-sphere
          (nav kill-once)
          sphere
          (new 'static 'vector :x 1886617.6 :y 35635.2 :z 1830912.0 :w 12288.0)
          duration
          (frame-range (new 'static 'bfloat :data -25.0) (new 'static 'bfloat :data 105.0))
          )
        (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 1918976.0 :y 35225.6 :z 1802240.0 :w 16384.0))
        (fadein (frame-time-30 5))
        )
      (538 (part-tracker "group-ctyasha-dust-explosion" entity "tanker" joint "tractor"))
      (546 (part-tracker "group-ctyasha-dust-explosion" entity "tanker" joint "tractor"))
      (570 (joint-eval tanker-spawn-deadly-cab entity "tanker" joint "chain1"))
      (574 (fma-sphere (danger) danger (new 'static 'vector :x 1837465.6 :y 34406.4 :z 1868103.6 :w 225280.0)))
      (575 (joint-eval tanker-spawn-deadly-trailers entity "tanker" joint "chain1"))
      (576
        (joint-eval tanker-spawn-deadly-barrels entity "tanker-barrels" joint "aa")
        (joint-eval tanker-spawn-deadly-container entity "tanker-container" joint "main")
        )
      (577
        (part-tracker
          "group-ctyasha-large-explosion"
          entity
          "tanker"
          joint
          "explode_a"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 577.0) (new 'static 'bfloat :data 590.0))
          )
        )
      (581
        (part-tracker
          "group-ctyasha-explosion"
          entity
          "tanker"
          joint
          "explode_b"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 582.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "aa"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "bb"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "cc"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "dd"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "ee"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "ff"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "gg"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "hh"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "ii"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "jj"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "kk"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "ll"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "mm"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker-barrels"
          joint
          "nn"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        (part-tracker
          "group-ctyasha-smoke-trail"
          entity
          "tanker"
          joint
          "chain1"
          track
          #t
          duration
          (frame-range (new 'static 'bfloat :data 581.0) (new 'static 'bfloat :data 700.0))
          )
        )
      (645 (send-event "tanker-container-1" 'trigger))
      (660 (send-event "tanker-juicer-4" 'cue-chase))
      (695 (send-event "tanker-grunt-3" 'cue-chase))
      (725 (send-event "tanker-juicer-3" 'cue-chase))
      (10000
        (send-event "ashelin-tanker-1" 'hide #f)
        (send-event "tanker-container-1" 'draw)
        (send-event "tanker-crash-1" 'trigger)
        (send-event "tanker-juicer-4" 'skip-intro)
        (send-event "tanker-grunt-3" 'skip-intro)
        (send-event "tanker-juicer-3" 'skip-intro)
        (task-close! "city-intercept-tanker-introduction")
        )
      )
    :cut-list '(10 91 169 511 628 668 770 845)
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :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 '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'ctyasha
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jak-highres"
        :level 'ctyasha
        :art-group "skel-jak-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "ashelin-highres"
        :level 'ctyasha
        :art-group "skel-ashelin-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker"
        :level 'ctyasha
        :art-group "skel-tanker"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker-container"
        :level 'ctyasha
        :art-group "skel-tanker-container"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker-barrels"
        :level 'ctyasha
        :art-group "skel-tanker-barrels"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker-one-barrel"
        :level 'ctyasha
        :art-group "skel-tanker-one-barrel"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker-roof-break"
        :level 'ctyasha
        :art-group "skel-tanker-roof-break"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "crimson-guard-lowres"
        :level 'ctyasha
        :art-group "skel-crimson-guard-lowres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x4
        )
      (new 'static 'scene-actor
        :name "crimson-guard-lowres"
        :level 'ctyasha
        :art-group "skel-crimson-guard-lowres"
        :prefix "b-"
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        :no-draw-seg #x4
        )
      (new 'static 'scene-actor
        :name "crimson-guard-highres"
        :level 'ctyasha
        :art-group "skel-crimson-guard-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "ctymarkb-tanker"
    :end-point-obj (new 'static 'continue-point
      :name "ctymarkb-tanker"
      :level #f
      :flags (continue-flags change-continue)
      :trans (new 'static 'vector :x 1928400.1 :y 34444.902 :z 1788676.5 :w 1.0)
      :quat (new 'static 'vector :y 0.3641 :w -0.9313)
      :camera-trans (new 'static 'vector :x 1960564.4 :y 55543.81 :z 1760002.0 :w 1.0)
      :camera-rot (new 'static 'inline-array vector3s 3
        (new 'static 'vector3s :data (new 'static 'array float 3 0.6676 0.0 0.7444))
        (new 'static 'vector3s :data (new 'static 'array float 3 -0.1301 0.9846 0.1167))
        (new 'static 'vector3s :data (new 'static 'array float 3 -0.7329 -0.1747 0.6574))
        )
      :on-goto #f
      :vis-nick 'default-level
      :want (new 'static 'inline-array level-buffer-state 6
        (new 'static 'level-buffer-state :name 'ctymarkb :display? 'display :force-vis? #f :force-inside? #f)
        (new 'static 'level-buffer-state :name 'ctywide :display? 'display :force-vis? #f :force-inside? #f)
        (new 'static 'level-buffer-state :name 'ctyasha :display? 'display :force-vis? #f :force-inside? #f)
        (new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
        (new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
        (new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
        )
      :want-sound (new 'static 'array symbol 3 'ctywide1 'ashtan1 'ashtan2)
      )
    :borrow '()
    :sfx-volume -1.0
    :ambient-volume -1.0
    :music-volume -1.0
    :blackout-end #t
    :peaceful #f
    :save #t
    )
  )

(scene-method-16
  (new 'static 'scene
    :name "city-intercept-tanker-res"
    :extra #f
    :info #f
    :mask-to-clear (process-mask movie enemy platform projectile)
    :entity "scene-stage-57"
    :art-group "scenecamera"
    :anim "city-intercept-tanker-res"
    :parts 4
    :command-list '((0
        (send-event *target* 'change-mode 'normal)
        (send-event
          *traffic-manager*
          'kill-traffic-sphere
          (new 'static 'vector :x 1841152.0 :y 28672.0 :z 1865728.0 :w 260096.0)
          )
        (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 1895219.2 :y 36044.8 :z 1804697.6 :w 20480.0))
        (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 1885388.8 :y 37683.2 :z 1783808.0 :w 16384.0))
        (fma-sphere (nav kill-once) sphere (new 'static 'vector :x 1920614.4 :y 35225.6 :z 1799372.8 :w 16384.0))
        )
      (445 (fadeout (frame-time-30 5)))
      (10000
        (task-close! "city-intercept-tanker-resolution")
        (send-event *traffic-manager* 'restore-default-settings)
        )
      )
    :cut-list '(192 359)
    :wait-ground-time (seconds 1)
    :draw-target #f
    :abort #t
    :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 '()
        :camera 4
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "sidekick-highres"
        :level 'ctyasha
        :art-group "skel-sidekick-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "jak-highres"
        :level 'ctyasha
        :art-group "skel-jak-highres"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "ashelin-highres"
        :level 'ctyasha
        :art-group "skel-ashelin-highres"
        :prefix ""
        :draw-frames '((min 359))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      (new 'static 'scene-actor
        :name "tanker-one-barrel"
        :level 'ctyasha
        :art-group "skel-tanker-one-barrel"
        :prefix ""
        :draw-frames '((min max))
        :scissor-frames '()
        :flags #x1
        :shadow-flags -1
        :shadow-volume-joint #f
        )
      )
    :load-point-obj "ctymarkb-tanker"
    :end-point-obj "ctymarkb-movie-end"
    :borrow '()
    :sfx-volume -1.0
    :ambient-volume -1.0
    :music-volume -1.0
    :blackout-end #t
    :peaceful #t
    :music-delay 1500.0
    :save #t
    )
  )
