Files
jak-project/test/decompiler/reference/jak2/levels/mountain/mountain-scenes_REF.gc
T
water111 637990314b wip: better stack var support (#4222)
Closes #736

---------

Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
2026-04-19 00:14:44 +02:00

3610 lines
105 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; failed to figure out what this is:
(defpartgroup group-mtn-lens-light-shaft
:id 353
:bounds (static-bspherem 0 16 0 16)
:parts ((sp-item 1493 :flags (is-3d bit6))
(sp-item 1494 :flags (bit6))
(sp-item 1495 :flags (bit6))
(sp-item 1496 :flags (bit6))
(sp-item 1497 :fade-after (meters 80) :falloff-to (meters 160))
(sp-item 1498 :flags (is-3d bit6))
)
)
;; failed to figure out what this is:
(defpart 1497
:init-specs ((:texture (hotdot effects))
(:num 8.0)
(:y (meters 23))
(:scale-x (meters 0.25))
(:scale-y (meters 0.25) (meters 0.1))
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 0.0)
(:vel-y (meters 0.0016666667) (meters 0.0016666667))
(:fade-a 0.4)
(:timer (seconds 0.535))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
(:next-time (seconds 0.267))
(:next-launcher 1499)
(:conerot-x (degrees 176.2))
(:conerot-y (degrees 0) (degrees 36000))
(:conerot-radius (meters 0) (meters 22))
)
)
;; failed to figure out what this is:
(defpart 1499
:init-specs ((:fade-a -0.4))
)
;; failed to figure out what this is:
(defpart 1493
:init-specs ((:texture (mountain-lens-beam mountain-sprite))
(:birth-func 'birth-func-camera-orient)
(:num 1.0)
(:y (meters 11.8))
(:scale-x (meters 8))
(:rot-x (degrees 90))
(:rot-z (degrees 0))
(:scale-y (meters 23))
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 32.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
)
)
;; failed to figure out what this is:
(defpart 1498
:init-specs ((:texture (hotdot effects))
(:num 1.0)
(:y (meters 0.58))
(:scale-x (meters 16))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 48.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
)
)
;; failed to figure out what this is:
(defpart 1494
:init-specs ((:texture (glow effects))
(:num 1.0)
(:y (meters 23))
(:scale-x (meters 12) (meters 0.1))
(:rot-x (degrees 22.5))
(:rot-z (degrees 24.000002))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 16.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 4096.0)
)
)
;; failed to figure out what this is:
(defpart 1496
:init-specs ((:texture (glow-soft effects))
(:num 1.0)
(:y (meters 1))
(:scale-x (meters 12) (meters 0.1))
(:rot-x (degrees 33.75))
(:scale-y (meters 20) (meters 0.1))
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 20.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 16384.0)
)
)
;; failed to figure out what this is:
(defpart 1495
:init-specs ((:texture (glow effects))
(:num 1.0)
(:y (meters 23))
(:scale-x (meters 2) (meters 0.1))
(:rot-x (degrees 2.25))
(:rot-z (degrees 24.000002))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 32.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 2048.0)
)
)
;; failed to figure out what this is:
(defpartgroup group-mountain-lens-res-daxter-tail-smoke
:id 354
:duration (seconds 0.167)
:bounds (static-bspherem 0 3 0 4)
:parts ((sp-item 1500 :fade-after (meters 50) :falloff-to (meters 50)))
)
;; failed to figure out what this is:
(defpart 1500
:init-specs ((:texture (bigpuff effects))
(:num 1.0 2.0)
(:scale-x (meters 0.1) (meters 0.05))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 32.0 128.0)
(:g :copy r)
(:b :copy g)
(:a 8.0 8.0)
(:vel-y (meters 0.0016666667) (meters 0.0033333334))
(:scalevel-x (meters 0.0005925926) (meters 0.0011851852))
(:rotvel-z (degrees -0.2) (degrees 0.4))
(:scalevel-y :copy scalevel-x)
(:fade-r -0.16)
(:fade-g -0.08)
(:fade-b -0.08)
(:fade-a -0.006666667 -0.006666667)
(:accel-y (meters -0.0000033333336))
(:friction 0.99)
(:timer (seconds 8))
(:flags (sp-cpuinfo-flag-2))
(:next-time (seconds 1.667) (seconds 0.997))
(:next-launcher 1501)
)
)
;; failed to figure out what this is:
(defpartgroup group-mountain-lens-res-daxter-tail-fire
:id 355
:duration (seconds 0.05)
:bounds (static-bspherem 0 3 0 4)
:parts ((sp-item 1502 :fade-after (meters 50) :falloff-to (meters 80))
(sp-item 1503 :fade-after (meters 60) :falloff-to (meters 90))
(sp-item 1504 :fade-after (meters 50) :falloff-to (meters 50))
(sp-item 1505 :fade-after (meters 30) :falloff-to (meters 30))
(sp-item 1506 :fade-after (meters 70) :flags (bit6))
)
)
;; failed to figure out what this is:
(defpart 1506
:init-specs ((:texture (glow-soft effects))
(:num 1.0)
(:scale-x (meters 2) (meters 0.1))
(:rot-x (degrees 45))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 0.0 128.0)
(:b 0.0)
(:a 14.0)
(:fade-a -1.0666667)
(:timer (seconds 0.035))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 10240.0)
)
)
;; failed to figure out what this is:
(defpart 1503
:init-specs ((:texture (explosion-nebula effects))
(:birth-func 'birth-func-texture-group)
(:num 1.0 3.0)
(:scale-x (meters 0.2) (meters 0.1))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 240.0 15.0)
(:g 200.0 16.0)
(:b 160.0 16.0)
(:a 32.0 32.0)
(:vel-y (meters 0.0033333334) (meters 0.0033333334))
(:scalevel-x (meters 0.0025000002))
(:rotvel-z (degrees -0.4) (degrees 0.8))
(:scalevel-y :copy scalevel-x)
(:fade-r -2.1333334 -1.0666667)
(:fade-g -4.266667 -2.1333334)
(:fade-b -5.3333335)
(:accel-y (meters -0.0001))
(:timer (seconds 0.535) (seconds 0.265))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
(:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc00000 #xc03300))
(:next-time (seconds 0.1) (seconds 0.03))
(:next-launcher 1507)
)
)
;; failed to figure out what this is:
(defpart 1507
:init-specs ((:b 0.0)
(:fade-r 0.0)
(:fade-g 0.0)
(:fade-b 0.0)
(:fade-a -0.4 -0.2)
(:next-time (seconds 0.135) (seconds 0.03))
(:next-launcher 1508)
)
)
;; failed to figure out what this is:
(defpart 1508
:init-specs ((:fade-r -0.125) (:fade-g 0.4) (:fade-b 0.4))
)
;; failed to figure out what this is:
(defpart 1502
:init-specs ((:texture (explosion-nebula effects))
(:birth-func 'birth-func-texture-group)
(:num 0.5 1.0)
(:scale-x (meters 0.2) (meters 0.1))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 32.0)
(:g 128.0)
(:b 128.0)
(:a 16.0 16.0)
(:vel-y (meters 0.006666667) (meters 0.006666667))
(:scalevel-x (meters 0.0012500001))
(:rotvel-z (degrees -0.4) (degrees 0.8))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.16 -0.16)
(:accel-y (meters -0.0001))
(:timer (seconds 1))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-4))
(:userdata :data (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc00000 #xc03300))
)
)
;; failed to figure out what this is:
(defpart 1504
:init-specs ((:texture (bigpuff effects))
(:num 0.4)
(:scale-x (meters 0.5) (meters 0.25))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 160.0 32.0)
(:g 96.0 32.0)
(:b :copy g)
(:a 8.0 8.0)
(:vel-y (meters 0.005) (meters 0.005))
(:scalevel-x (meters 0.0008888889) (meters 0.0011851852))
(:rotvel-z (degrees -0.2) (degrees 0.4))
(:scalevel-y :copy scalevel-x)
(:fade-r -0.16)
(:fade-g -0.08)
(:fade-b -0.08)
(:fade-a -0.006666667 -0.006666667)
(:accel-y (meters -0.0000033333336))
(:friction 0.99)
(:timer (seconds 8))
(:flags (sp-cpuinfo-flag-2))
(:next-time (seconds 1.667) (seconds 0.997))
(:next-launcher 1501)
)
)
;; failed to figure out what this is:
(defpart 1501
:init-specs ((:fade-r 0.0) (:fade-g 0.0) (:fade-b 0.0))
)
;; failed to figure out what this is:
(defpart 1505
:init-specs ((:num 0.4)
(:x (meters 0) (meters 0.2))
(:rot-x 8)
(:r 1638.4)
(:g 1331.2)
(:b 1433.6)
(:vel-x (meters 0) (meters 0.006666667))
(:vel-y (meters 0.006666667) (meters 0.0033333334))
(:friction 0.98)
(:timer (seconds 0.5))
(:flags (distort))
(:next-time (seconds 0.25))
(:next-launcher 1509)
(:rotate-y (degrees 0) (degrees 360))
)
)
;; failed to figure out what this is:
(defpart 1509
:init-specs ((:fade-b -1.3653333))
)
;; failed to figure out what this is:
(defpartgroup group-mtn-lens-light
:id 356
:duration (seconds 0.017)
:flags (use-local-clock)
:bounds (static-bspherem 0 0 0 8)
:parts ((sp-item 1510 :flags (bit6)) (sp-item 1511 :flags (bit6)))
)
;; failed to figure out what this is:
(defpart 1510
:init-specs ((:texture (glow effects))
(:num 1.0)
(:scale-x (meters 10) (meters 0.1))
(:rot-x (degrees 22.5))
(:rot-z (degrees 24.000002))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 12.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 4096.0)
)
)
;; failed to figure out what this is:
(defpart 1511
:init-specs ((:texture (glow effects))
(:num 1.0)
(:scale-x (meters 1) (meters 0.1))
(:rot-x (degrees 2.25))
(:rot-z (degrees 24.000002))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 10.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow))
(:userdata 2048.0)
)
)
;; failed to figure out what this is:
(defpartgroup group-mtn-plat-buried-rocks-trailer
:id 357
:flags (use-local-clock)
:bounds (static-bspherem 0 0 0 15)
:parts ((sp-item 1512))
)
;; failed to figure out what this is:
(defpart 1512
:init-specs ((:texture (bigpuff effects))
(:num 0.0 1.0)
(:x (meters -0.25) (meters 1))
(:scale-x (meters 3) (meters 3))
(:rot-z (degrees 0) (degrees 3600))
(:scale-y (meters 3) (meters 3))
(:r 128.0)
(:g 96.0 32.0)
(:b 64.0 32.0)
(:a 12.0 24.0)
(:vel-y (meters 0) (meters 0.013333334))
(:scalevel-x (meters 0.006666667) (meters 0.006666667))
(:rotvel-z (degrees -0.3) (degrees 0.6))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.06 -0.06)
(:accel-y (meters 0.00033333333) (meters 0.00016666666))
(:friction 0.95 0.03)
(:timer (seconds 4))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:conerot-x (degrees 0) (degrees 3600))
(:conerot-y (degrees 0) (degrees 3600))
(:conerot-z (degrees 0) (degrees 3600))
(:rotate-y (degrees 0) (degrees 3600))
)
)
;; failed to figure out what this is:
(defpartgroup group-canyon-seal-of-mar-glow
:id 358
:flags (unk-6)
:bounds (static-bspherem 0 0 0 2)
:rotate ((degrees 90) (degrees 0) (degrees 0))
:parts ((sp-item 1513 :flags (is-3d bit6 bit7)) (sp-item 1514 :flags (bit6 bit7)) (sp-item 1515 :flags (bit7)))
)
;; failed to figure out what this is:
(defpart 1513
:init-specs ((:texture (glow effects))
(:num 1.0)
(:z (meters -0.45))
(:scale-x (meters 24) (meters 0.1))
(:scale-y :copy scale-x)
(:r 192.0)
(:g 128.0)
(:b 0.0)
(:a 48.0 8.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-21))
(:rotate-y (degrees -17) (degrees 4))
)
)
;; failed to figure out what this is:
(defpart 1514
:init-specs ((:texture (glow-soft effects))
(:num 1.0)
(:z (meters 0.65))
(:scale-x (meters 20) (meters 0.1))
(:rot-z (degrees 4.5))
(:scale-y :copy scale-x)
(:r 192.0)
(:g 128.0)
(:b 0.0)
(:a 32.0 2.0)
(:timer (seconds 0.017))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow sp-cpuinfo-flag-21))
(:userdata 1638.4)
(:rotate-y (degrees 0))
)
)
;; failed to figure out what this is:
(defpart 1515
:init-specs ((:texture (glow effects))
(:num 6.0 2.0)
(:scale-x (meters 0.25) (meters 0.1))
(:scale-y :copy scale-x)
(:r 196.0 32.0)
(:g :copy r)
(:b :copy g)
(:a 128.0 128.0)
(:vel-y (meters 0.12) (meters 0.12))
(:scalevel-x (meters -0.002))
(:scalevel-y :copy scalevel-x)
(:fade-a -1.28)
(:timer (seconds 0.167))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-21))
(:conerot-z (degrees 0) (degrees 3600))
(:rotate-x (degrees -90))
(:rotate-y (degrees 0))
(:conerot-radius (meters 1.15))
)
)
;; failed to figure out what this is:
(defpartgroup group-mtn-step-plat-rocks-explosion
:id 359
:flags (use-local-clock)
:bounds (static-bspherem 0 0 0 15)
:parts ((sp-item 1516) (sp-item 1517) (sp-item 1518) (sp-item 1519))
)
;; failed to figure out what this is:
(defpart 1519
:init-specs ((:texture (explosion-wave effects))
(:num 10.0 20.0)
(:y (meters 4))
(:scale-x (meters 3) (meters 3))
(:rot-x 4)
(:rot-z (degrees 0) (degrees 360) :store)
(:scale-y (meters 4) (meters 3.5))
(:r 128.0 64.0)
(:g 135.0 64.0)
(:b 64.0 32.0)
(:a 16.0 16.0)
(:vel-y (meters 0.05) (meters 0.1))
(:scalevel-x (meters 0.033333335) (meters 0.033333335))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.13333334)
(:friction 0.92 0.02)
(:timer (seconds 6.667))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:func 'sparticle-motion-blur)
(:next-time (seconds 0.167))
(:next-launcher 1520)
(:conerot-x '*sp-temp*)
(:conerot-y (degrees 0) (degrees 3600))
(:rotate-y (degrees 0))
(:conerot-radius (meters 0) (meters -5))
)
)
;; failed to figure out what this is:
(defpart 1520
:init-specs ((:scalevel-x (meters 0.033333335) (meters 0.033333335))
(:scalevel-y :copy scalevel-x)
(:next-time (seconds 0.2) (seconds 0.065))
(:next-launcher 1521)
)
)
;; failed to figure out what this is:
(defpart 1521
:init-specs ((:scalevel-x (meters 0.016666668) (meters 0.016666668)) (:scalevel-y :copy scalevel-x) (:fade-a -0.18 -0.12))
)
;; failed to figure out what this is:
(defpart 1518
:init-specs ((:birth-func 'birth-func-texture-group)
(:num 10.0 20.0)
(:y (meters 4))
(:scale-x (meters 3) (meters 3))
(:rot-z (degrees 0) (degrees 3600) :store)
(:scale-y (meters 4) (meters 3.5))
(:r 128.0)
(:g 80.0 32.0)
(:b 64.0 32.0)
(:a 16.0 32.0)
(:vel-y (meters 0.05) (meters 0.1))
(:scalevel-x (meters 0.033333335) (meters 0.033333335))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.13333334)
(:friction 0.92 0.02)
(:timer (seconds 6.667))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:userdata :data (new 'static 'boxed-array :type int32 80 1 0 #xc00000 #xc03300))
(:next-time (seconds 0.167))
(:next-launcher 1520)
(:conerot-x '*sp-temp*)
(:conerot-y (degrees 0) (degrees 3600))
(:rotate-y (degrees 0))
(:conerot-radius (meters 0) (meters 2))
)
)
;; failed to figure out what this is:
(defpart 1517
:init-specs ((:texture (specs effects))
(:num 10.0 20.0)
(:x (meters 0.25))
(:y (meters 4))
(:scale-x (meters 1) (meters 2))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 64.0)
(:g :copy r)
(:b :copy r)
(:a 16.0 48.0)
(:vel-y (meters 0) (meters 0.13333334))
(:scalevel-x (meters 0.006666667) (meters 0.0033333334))
(:rotvel-z (degrees -0.12) (degrees 0.24))
(:scalevel-y :copy scalevel-x)
(:accel-y (meters -0.00016666666) (meters -0.00066666666))
(:friction 0.88 0.02)
(:timer (seconds 20))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:next-time (seconds 0.235) (seconds 0.097))
(:next-launcher 1522)
(:conerot-x (degrees 0) (degrees 3600))
(:conerot-y (degrees 0) (degrees 3600))
(:rotate-y (degrees 0))
(:conerot-radius (meters 0) (meters 3))
)
)
;; failed to figure out what this is:
(defpart 1522
:init-specs ((:scalevel-x (meters 0.01))
(:scalevel-y :copy scalevel-x)
(:next-time (seconds 0.3) (seconds 0.097))
(:next-launcher 1523)
)
)
;; failed to figure out what this is:
(defpart 1523
:init-specs ((:scalevel-x (meters 0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-a -0.053333335 -0.053333335))
)
;; failed to figure out what this is:
(defpart 1516
:init-specs ((:texture (bigpuff effects))
(:num 10.0)
(:x (meters 0) (meters 0.6))
(:y (meters 4))
(:scale-x (meters 4.5) (meters 5))
(:rot-z (degrees 0) (degrees 3600))
(:scale-y :copy scale-x)
(:r 128.0 64.0)
(:g :copy r)
(:b :copy r)
(:a 0.0)
(:vel-y (meters 0.033333335) (meters 0.04))
(:scalevel-x (meters 0.016666668) (meters 0.016666668))
(:rotvel-z (degrees -0.12) (degrees 0.24))
(:scalevel-y :copy scalevel-x)
(:fade-a 0.32 0.32)
(:friction 0.94 0.04)
(:timer (seconds 8))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:next-time (seconds 0.235) (seconds 0.097))
(:next-launcher 1524)
(:conerot-x (degrees 0) (degrees 3600))
(:conerot-y (degrees 0) (degrees 3600))
(:rotate-y (degrees 0))
)
)
;; failed to figure out what this is:
(defpart 1524
:init-specs ((:scalevel-x (meters 0.008333334))
(:scalevel-y :copy scalevel-x)
(:fade-a 0.0)
(:next-time (seconds 0.335) (seconds 0.497))
(:next-launcher 1525)
)
)
;; failed to figure out what this is:
(defpart 1525
:init-specs ((:scalevel-x (meters 0.0033333334)) (:scalevel-y :copy scalevel-x) (:fade-a -0.21333334 -0.10666667))
)
;; failed to figure out what this is:
(defpartgroup group-mountain-mtn-shard-glow
:id 360
:flags (unk-4)
:bounds (static-bspherem 0 0 0 2)
:parts ((sp-item 1526 :flags (bit6 bit7)) (sp-item 1527 :flags (bit6 bit7)))
)
;; failed to figure out what this is:
(defpart 1527
:init-specs ((:texture (peacemaker-plasma effects))
(:num 0.0 0.8)
(:y (meters 0.45))
(:scale-x (meters 0.1))
(:rot-x (degrees 11.25))
(:rot-z (degrees 0) (degrees 3600))
(:scale-y :copy scale-x)
(:r 255.0)
(:g 255.0)
(:b 255.0)
(:a 16.0)
(:omega (degrees 4511.25))
(:scalevel-x (meters 0.01) (meters 0.0033333334))
(:scalevel-y :copy scalevel-x)
(:timer (seconds 0.335))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-3))
(:userdata 2048.0)
(:next-time (seconds 0.167))
(:next-launcher 1528)
(:rotate-y (degrees 0))
)
)
;; failed to figure out what this is:
(defpart 1528
:init-specs ((:fade-a -0.32))
)
;; failed to figure out what this is:
(defpart 1526
:init-specs ((:texture (glow effects))
(:num 1.0)
(:y (meters 0.55))
(:scale-x (meters 1))
(:rot-x (degrees 2.25))
(:rot-z (degrees 0) (degrees 3600))
(:scale-y :copy scale-x)
(:r 0.0)
(:g 0.0 64.0)
(:b 196.0)
(:a 16.0 16.0)
(:timer (seconds 0.017))
(:flags (glow))
(:userdata 409.6)
(:rotate-y (degrees 0))
)
)
;; failed to figure out what this is:
(defpartgroup group-mountain-gear-dust-plume
:id 361
:bounds (static-bspherem 0 0 0 15)
:parts ((sp-item 1529))
)
;; failed to figure out what this is:
(defpart 1529
:init-specs ((:texture (bigpuff effects))
(:num 1.0 0.5)
(:x (meters -6) (meters 12))
(:scale-x (meters 1) (meters 2))
(:rot-z (degrees 0) (degrees 3600))
(:scale-y (meters 1) (meters 2))
(:r 128.0)
(:g 96.0 32.0)
(:b 64.0 32.0)
(:a 20.0 12.0)
(:vel-x (meters 0.02) (meters 0.02))
(:scalevel-x (meters 0.023333333) (meters 0.006666667))
(:rotvel-z (degrees -0.3) (degrees 0.6))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.04 -0.08)
(:accel-y (meters 0.00066666666))
(:friction 0.95 0.03)
(:timer (seconds 4.335))
(:flags (sp-cpuinfo-flag-2 sp-cpuinfo-flag-12))
(:rotate-y (degrees 0) (degrees 3600))
)
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-step-plat-rocks-a mtn-step-plat-rocks mtn-step-plat-rocks-a-lod0-jg mtn-step-plat-rocks-a-idle-ja
((mtn-step-plat-rocks-a-lod0-mg (meters 200)) (mtn-step-plat-rocks-a-lod1-mg (meters 999999)))
:bounds (static-spherem 0 -10 0 100)
:origin-joint-index 3
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-step-plat-rocks-b mtn-step-plat-rocks mtn-step-plat-rocks-b-lod0-jg mtn-step-plat-rocks-b-idle-ja
((mtn-step-plat-rocks-b-lod0-mg (meters 200)) (mtn-step-plat-rocks-b-lod1-mg (meters 999999)))
:bounds (static-spherem 0 -10 0 100)
:origin-joint-index 3
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-step-plat-rocks-c mtn-step-plat-rocks mtn-step-plat-rocks-c-lod0-jg mtn-step-plat-rocks-c-idle-ja
((mtn-step-plat-rocks-c-lod0-mg (meters 200)) (mtn-step-plat-rocks-c-lod1-mg (meters 999999)))
:bounds (static-spherem 0 -10 0 100)
:origin-joint-index 3
)
;; failed to figure out what this is:
(scene-method-16 (new 'static 'scene
:name "mtn-step-plat-rocks-a"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy)
:entity "mtn-step-plat-rocks-a-2"
:art-group "scenecamera"
:anim "mtn-step-plat-rocks-a"
:parts 2
:command-list '((0 (send-event "mtn-step-plat-rocks-a-2" 'done))
(0 (send-event "mtn-plat-eject-14" 'eject))
(1 (part-tracker
"group-mtn-step-plat-rocks-explosion"
entity
"mtn-step-plat-rocks-a"
joint
"g"
track
#t
duration
(frame-range 1 2)
)
)
)
:cut-list '()
:wait-max-time (seconds 3)
:draw-target #t
: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 "mtn-step-plat-rocks-a"
:level 'mtnext
:art-group "skel-mtn-step-plat-rocks-a"
:prefix "mtn-step-plat-rocks-a-"
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1e
:shadow-values #x1360
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-start"
:end-point-obj #f
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume 0.65
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #f
)
)
;; failed to figure out what this is:
(scene-method-16 (new 'static 'scene
:name "mtn-step-plat-rocks-b"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy)
:entity "mtn-step-plat-rocks-b-4"
:art-group "scenecamera"
:anim "mtn-step-plat-rocks-b"
:parts 2
:command-list '((0 (send-event "mtn-step-plat-rocks-b-4" 'done))
(0 (send-event "mtn-plat-eject-16" 'eject))
(0 (send-event "mtn-plat-eject-17" 'eject))
(1 (part-tracker
"group-mtn-step-plat-rocks-explosion"
entity
"mtn-step-plat-rocks-b"
joint
"aa"
track
#t
duration
(frame-range 1 2)
)
)
(6 (part-tracker
"group-mtn-step-plat-rocks-explosion"
entity
"mtn-step-plat-rocks-b"
joint
"v"
track
#t
duration
(frame-range 6 7)
)
)
)
:cut-list '()
:wait-max-time (seconds 3)
:draw-target #t
: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 "mtn-step-plat-rocks-b"
:level 'mtnext
:art-group "skel-mtn-step-plat-rocks-b"
:prefix "mtn-step-plat-rocks-b-"
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1e
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-start"
:end-point-obj #f
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume 0.65
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #f
)
)
;; failed to figure out what this is:
(scene-method-16 (new 'static 'scene
:name "mtn-step-plat-rocks-c"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy)
:entity "mtn-step-plat-rocks-c-2"
:art-group "scenecamera"
:anim "mtn-step-plat-rocks-c"
:parts 3
:command-list '((0 (send-event "mtn-step-plat-rocks-c-2" 'done))
(0 (send-event "mtn-plat-eject-15" 'eject))
(1 (part-tracker
"group-mtn-step-plat-rocks-explosion"
entity
"mtn-step-plat-rocks-c"
joint
"ab"
track
#t
duration
(frame-range 1 2)
)
)
(10 (part-tracker
"group-mtn-step-plat-rocks-explosion"
entity
"mtn-step-plat-rocks-c"
joint
"d"
track
#t
duration
(frame-range 10 11)
)
)
(11 (send-event "mtn-plat-eject-13" 'eject))
)
:cut-list '()
:wait-max-time (seconds 3)
:draw-target #t
: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 "mtn-step-plat-rocks-c"
:level 'mtnext
:art-group "skel-mtn-step-plat-rocks-c"
:prefix "mtn-step-plat-rocks-c-"
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1e
:shadow-values #x800
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-start"
:end-point-obj #f
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume 0.65
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #f
)
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-plat-buried-rocks mtn-plat-buried-rocks mtn-plat-buried-rocks-lod0-jg mtn-plat-buried-rocks-idle-ja
((mtn-plat-buried-rocks-lod0-mg (meters 20)) (mtn-plat-buried-rocks-lod1-mg (meters 999999)))
:bounds (static-spherem 0 -20 0 40)
:origin-joint-index 3
)
;; failed to figure out what this is:
(scene-method-16
(new 'static 'scene
:name "mtn-plat-buried-rocks-a"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy)
:entity "mtn-plat-buried-rocks-2"
:art-group "scenecamera"
:anim "mtn-plat-buried-rocks-a"
:parts 3
:command-list '((0 (send-event "mtn-plat-buried-rocks-2" 'die) (kill "mtn-plat-buried-rocks-2"))
(5 (send-event *target* 'play-anim 'shock-in))
(30 (begin
(send-event "mtn-plat-buried-4" 'bonk)
(send-event "mtn-plat-buried-5" 'bonk)
(send-event "mtn-plat-buried-6" 'bonk)
)
)
(40 (begin
(send-event "mtn-plat-buried-4" 'bonk)
(send-event "mtn-plat-buried-5" 'bonk)
(send-event "mtn-plat-buried-6" 'bonk)
)
)
(50 (begin
(send-event "mtn-plat-buried-4" 'bonk)
(send-event "mtn-plat-buried-5" 'bonk)
(send-event "mtn-plat-buried-6" 'bonk)
)
)
(60 (begin
(send-event "mtn-plat-buried-4" 'trigger)
(send-event "mtn-plat-buried-5" 'trigger)
(send-event "mtn-plat-buried-6" 'trigger)
)
)
(64
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"i"
track
#t
duration
(frame-range 64 111)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"q"
track
#t
duration
(frame-range 64 106)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ax"
track
#t
duration
(frame-range 64 95)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"b"
track
#t
duration
(frame-range 64 95)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ar"
track
#t
duration
(frame-range 64 106)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"f"
track
#t
duration
(frame-range 64 106)
)
)
(65
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"be"
track
#t
duration
(frame-range 65 107)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bb"
track
#t
duration
(frame-range 65 106)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cn"
track
#t
duration
(frame-range 65 105)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"n"
track
#t
duration
(frame-range 65 142)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cm"
track
#t
duration
(frame-range 65 110)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cl"
track
#t
duration
(frame-range 65 89)
)
)
(66
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"an"
track
#t
duration
(frame-range 66 97)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bh"
track
#t
duration
(frame-range 66 97)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ab"
track
#t
duration
(frame-range 66 114)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ad"
track
#t
duration
(frame-range 66 114)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"br"
track
#t
duration
(frame-range 66 85)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bm"
track
#t
duration
(frame-range 66 85)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bs"
track
#t
duration
(frame-range 66 85)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cl"
track
#t
duration
(frame-range 66 85)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bp"
track
#t
duration
(frame-range 66 85)
)
)
(67
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bg"
track
#t
duration
(frame-range 67 134)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ac"
track
#t
duration
(frame-range 67 134)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bo"
track
#t
duration
(frame-range 67 134)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"m"
track
#t
duration
(frame-range 67 134)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cp"
track
#t
duration
(frame-range 67 134)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ai"
track
#t
duration
(frame-range 67 134)
)
)
(68
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bc"
track
#t
duration
(frame-range 68 97)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cj"
track
#t
duration
(frame-range 68 100)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cf"
track
#t
duration
(frame-range 68 90)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ap"
track
#t
duration
(frame-range 68 95)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ce"
track
#t
duration
(frame-range 68 92)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"at"
track
#t
duration
(frame-range 68 124)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"az"
track
#t
duration
(frame-range 68 116)
)
)
(70
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ao"
track
#t
duration
(frame-range 70 120)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"l"
track
#t
duration
(frame-range 70 110)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ag"
track
#t
duration
(frame-range 70 120)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bj"
track
#t
duration
(frame-range 70 110)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"aq"
track
#t
duration
(frame-range 70 98)
)
)
(71
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"g"
track
#t
duration
(frame-range 71 115)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"j"
track
#t
duration
(frame-range 71 115)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ch"
track
#t
duration
(frame-range 71 97)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"cb"
track
#t
duration
(frame-range 71 95)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bf"
track
#t
duration
(frame-range 71 95)
)
)
(73
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"z"
track
#t
duration
(frame-range 73 166)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bk"
track
#t
duration
(frame-range 73 166)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"bl"
track
#t
duration
(frame-range 73 166)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"co"
track
#t
duration
(frame-range 73 166)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"zz"
track
#t
duration
(frame-range 73 166)
)
(part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"ak"
track
#t
duration
(frame-range 73 166)
)
)
(74 (part-tracker
"group-mtn-plat-buried-rocks-trailer"
entity
"mtn-plat-buried-rocks"
joint
"aj"
track
#t
duration
(frame-range 74 176)
)
)
(120 (send-event *target* 'play-anim 'shock-out))
)
:cut-list '()
:wait-max-time (seconds 3)
:wait-air-time (seconds 1)
:wait-ground-time (seconds 1)
:draw-target #t
: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 "mtn-plat-buried-rocks"
:level 'mtnext
:art-group "skel-mtn-plat-buried-rocks"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1e
:shadow-values #xb10
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-start"
:end-point-obj (new 'static 'continue-point
:name "mountain-top"
:level #f
:trans (new 'static 'vector :x -3353786.8 :y 412698.22 :z 1403920.0 :w 1.0)
:quat (new 'static 'vector :y -0.4801 :w -0.8771)
:camera-trans (new 'static 'vector :x -3392037.8 :y 432321.75 :z 1378997.5 :w 1.0)
:camera-rot (new 'static 'inline-array vector3s 3
(new 'static 'vector3s :data (new 'static 'array float 3 0.5466 0.0 -0.8373))
(new 'static 'vector3s :data (new 'static 'array float 3 0.1059 0.9919 0.0691))
(new 'static 'vector3s :data (new 'static 'array float 3 0.8306 -0.1265 0.5422))
)
:on-goto '(want-continue "mountain-top")
:vis-nick 'mountain
:want (new 'static 'inline-array level-buffer-state 6
(new 'static 'level-buffer-state :name 'mountain :display? 'display :force-vis? #f :force-inside? #f)
(new 'static 'level-buffer-state :name 'mtnext :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)
(new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
)
:want-sound (new 'static 'array symbol 3 'mount1 'mount2 'mount3)
)
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume 0.65
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #f
)
)
;; definition of type mtn-plat-buried-rocks
(deftype mtn-plat-buried-rocks (process-drawable)
((root collide-shape :override)
)
(:state-methods
idle
(done symbol)
)
)
;; definition for method 3 of type mtn-plat-buried-rocks
(defmethod inspect ((this mtn-plat-buried-rocks))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; failed to figure out what this is:
(defstate idle (mtn-plat-buried-rocks)
:virtual #t
:event (behavior ((proc process) (argc int) (message symbol) (block event-message-block))
(case message
(('trigger)
(process-spawn scene-player :init scene-player-init "mtn-plat-buried-rocks-a" #t #f)
)
(('done)
(go-virtual done #f)
)
(('die)
(cleanup-for-death self)
(deactivate self)
)
)
)
:code (behavior ()
(ja-post)
(logior! (-> self mask) (process-mask sleep))
(suspend)
0
)
)
;; failed to figure out what this is:
(defstate done (mtn-plat-buried-rocks)
:virtual #t
:code (behavior ((arg0 symbol))
(process-entity-status! self (entity-perm-status subtask-complete) #t)
(when (not arg0)
(ja-channel-set! 0)
(ja-post)
(while (movie?)
(suspend)
)
(remove-process *gui-control* self (gui-channel art-load))
)
(ja-channel-set! 1)
(set! (-> self draw bounds w) 491520.0)
(set! (-> self root root-prim local-sphere w) 409600.0)
(format (clear *temp-string*) "~S-end" (-> self type))
(ja :group! (get-art-by-name (-> self draw art-group) *temp-string* art-joint-anim))
(transform-post)
(suspend)
(transform-post)
(logior! (-> self mask) (process-mask sleep))
(suspend)
0
)
)
;; definition for method 11 of type mtn-plat-buried-rocks
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-plat-buried-rocks) (entity 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 ((cshape (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((prim-mesh (new 'process 'collide-shape-prim-mesh cshape (the-as uint 0) (the-as uint 0))))
(set! (-> prim-mesh prim-core collide-as) (collide-spec obstacle))
(set! (-> prim-mesh prim-core collide-with) (collide-spec jak player-list))
(set! (-> prim-mesh prim-core action) (collide-action solid))
(set! (-> prim-mesh transform-index) 3)
(set-vector! (-> prim-mesh local-sphere) 0.0 0.0 0.0 122880.0)
(set! (-> cshape total-prims) (the-as uint 1))
(set! (-> cshape root-prim) prim-mesh)
)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((v1-5 (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> v1-5 prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> v1-5 prim-core collide-with))
)
(set! (-> this root) cshape)
)
(process-drawable-from-entity! this entity)
(initialize-skeleton
this
(the-as
skeleton-group
(art-group-get-by-name *level* "skel-mtn-plat-buried-rocks" (the-as (pointer uint32) #f))
)
(the-as pair 0)
)
(set! (-> this draw force-lod) 1)
(cond
((and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status subtask-complete)))
(go (method-of-object this done) #t)
)
(else
(add-process *gui-control* this (gui-channel art-load) (gui-action queue) "mtn-plat-buried-rocks-a" -99.0 0)
(go (method-of-object this idle))
)
)
(none)
)
;; definition of type mtn-plat-buried
(deftype mtn-plat-buried (plat)
((incoming-attack-id uint32)
(offset float)
(options actor-option)
)
)
;; definition for method 3 of type mtn-plat-buried
(defmethod inspect ((this mtn-plat-buried))
(when (not this)
(set! this this)
(goto cfg-60)
)
(let ((t9-0 (method-of-type plat inspect)))
(t9-0 this)
)
(format #t "~2Tincoming-attack-id: ~D~%" (-> this incoming-attack-id))
(format #t "~2Toffset: ~f~%" (-> this offset))
(format #t "~2Toptions: #x~X : (actor-option " (-> this options))
(let ((s5-0 (-> this options)))
(if (= (logand s5-0 (actor-option respawn-delay)) (actor-option respawn-delay))
(format #t "respawn-delay ")
)
(if (= (logand s5-0 (actor-option draw-blocker)) (actor-option draw-blocker))
(format #t "draw-blocker ")
)
(if (= (logand (actor-option user20) s5-0) (actor-option user20))
(format #t "user20 ")
)
(if (= (logand (actor-option no-amb-sound) s5-0) (actor-option no-amb-sound))
(format #t "no-amb-sound ")
)
(if (= (logand s5-0 (actor-option auto-pickup)) (actor-option auto-pickup))
(format #t "auto-pickup ")
)
(if (= (logand (actor-option no-track) s5-0) (actor-option no-track))
(format #t "no-track ")
)
(if (= (logand s5-0 (actor-option no-shadow)) (actor-option no-shadow))
(format #t "no-shadow ")
)
(if (= (logand s5-0 (actor-option loop)) (actor-option loop))
(format #t "loop ")
)
(if (= (logand s5-0 (actor-option fuel-cell-no-jump)) (actor-option fuel-cell-no-jump))
(format #t "fuel-cell-no-jump ")
)
(if (= (logand (actor-option fall) s5-0) (actor-option fall))
(format #t "fall ")
)
(if (= (logand (actor-option user18) s5-0) (actor-option user18))
(format #t "user18 ")
)
(if (= (logand s5-0 (actor-option big-collision)) (actor-option big-collision))
(format #t "big-collision ")
)
(if (= (logand s5-0 (actor-option no-reaction)) (actor-option no-reaction))
(format #t "no-reaction ")
)
(if (= (logand s5-0 (actor-option suck-in)) (actor-option suck-in))
(format #t "suck-in ")
)
(if (= (logand s5-0 (actor-option racer-only)) (actor-option racer-only))
(format #t "racer-only ")
)
(if (= (logand s5-0 (actor-option blocked)) (actor-option blocked))
(format #t "blocked ")
)
(if (= (logand (actor-option no-distance-check-fadeout) s5-0) (actor-option no-distance-check-fadeout))
(format #t "no-distance-check-fadeout ")
)
(if (= (logand (actor-option cond-hide) s5-0) (actor-option cond-hide))
(format #t "cond-hide ")
)
(if (= (logand (actor-option user17) s5-0) (actor-option user17))
(format #t "user17 ")
)
(if (= (logand s5-0 (actor-option wait-for-cue)) (actor-option wait-for-cue))
(format #t "wait-for-cue ")
)
(if (= (logand s5-0 (actor-option reflect)) (actor-option reflect))
(format #t "reflect ")
)
(if (= (logand (actor-option user19) s5-0) (actor-option user19))
(format #t "user19 ")
)
(if (= (logand (actor-option cond-respawn) s5-0) (actor-option cond-respawn))
(format #t "cond-respawn ")
)
(if (= (logand s5-0 (actor-option wait-for-task-complete)) (actor-option wait-for-task-complete))
(format #t "wait-for-task-complete ")
)
(if (= (logand s5-0 (actor-option fade-out)) (actor-option fade-out))
(format #t "fade-out ")
)
(if (= (logand (actor-option cond-low-ammo) s5-0) (actor-option cond-low-ammo))
(format #t "cond-low-ammo ")
)
(if (= (logand (actor-option mirror) s5-0) (actor-option mirror))
(format #t "mirror ")
)
(if (= (logand s5-0 (actor-option spawns-fuel-cell)) (actor-option spawns-fuel-cell))
(format #t "spawns-fuel-cell ")
)
)
(format #t ")~%")
(label cfg-60)
this
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-plat-buried mtn-plat-buried mtn-plat-buried-lod0-jg mtn-plat-buried-idle-ja
((mtn-plat-buried-lod0-mg (meters 999999)))
:bounds (static-spherem 0 0 0 4.8)
)
;; definition for method 30 of type mtn-plat-buried
(defmethod get-art-group ((this mtn-plat-buried))
"@returns The associated [[art-group]]"
(art-group-get-by-name *level* "skel-mtn-plat-buried" (the-as (pointer uint32) #f))
)
;; definition for method 31 of type mtn-plat-buried
;; WARN: Return type mismatch int vs none.
(defmethod init-plat-collision! ((this mtn-plat-buried))
"TODO - collision stuff for setting up the platform"
(let ((cshape (new 'process 'collide-shape-moving this (collide-list-enum usually-hit-by-player))))
(set! (-> cshape dynam) (copy *standard-dynamics* 'process))
(set! (-> cshape reaction) cshape-reaction-default)
(set! (-> cshape no-reaction)
(the-as (function collide-shape-moving collide-query vector vector object) nothing)
)
(let ((prim-mesh (new 'process 'collide-shape-prim-mesh cshape (the-as uint 0) (the-as uint 0))))
(set! (-> prim-mesh prim-core collide-as) (collide-spec pusher))
(set! (-> prim-mesh prim-core collide-with) (collide-spec jak player-list))
(set! (-> prim-mesh prim-core action) (collide-action solid rideable))
(set! (-> prim-mesh transform-index) 0)
(set-vector! (-> prim-mesh local-sphere) 0.0 0.0 0.0 19660.8)
(set! (-> cshape total-prims) (the-as uint 1))
(set! (-> cshape root-prim) prim-mesh)
)
(pusher-init cshape)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((root-prim (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> root-prim prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> root-prim prim-core collide-with))
)
(set! (-> this root) cshape)
)
(set! (-> this sound)
(new 'process 'ambient-sound (static-sound-spec "mtn-plat-lp" :fo-max 100) (-> this root trans))
)
(set! (-> this options) (res-lump-value (-> this entity) 'options actor-option :time -1000000000.0))
0
(none)
)
;; definition for method 36 of type mtn-plat-buried
(defmethod plat-path-sync ((this mtn-plat-buried))
"If the `sync` period is greater than `0` then transition the state to [[plat::35]]
otherwise, [[plat::34]]
@see [[sync-eased]]"
(cond
((or (logtest? (-> this path flags) (path-control-flag not-found))
(and (not (and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status subtask-complete)))
)
(logtest? (-> this options) (actor-option blocked))
)
)
(go (method-of-object this plat-idle))
)
((> (-> this sync period) 0)
(go (method-of-object this plat-path-active))
)
(else
(go (method-of-object this plat-idle))
)
)
)
;; failed to figure out what this is:
(defstate plat-idle (mtn-plat-buried)
:virtual #t
:event (behavior ((proc process) (argc int) (message symbol) (block event-message-block))
(case message
(('bonk)
(if (not (logtest? (-> self options) (actor-option blocked)))
(plat-event proc argc message block)
)
)
(('trigger)
(process-entity-status! self (entity-perm-status subtask-complete) #t)
(when (and (not (logtest? (-> self path flags) (path-control-flag not-found))) (> (-> self sync period) 0))
(sync-now! (-> self sync) (-> self offset))
(go-virtual plat-path-active)
)
)
(else
(plat-event proc argc message block)
)
)
)
:enter (behavior ()
(let ((f0-1 (/ (-> self sync offset) (the float (-> self sync period)))))
(set! (-> self offset) f0-1)
(sync-now! (-> self sync) f0-1)
)
(set! (-> self path-pos) (get-norm! (-> self sync) 0))
(get-point-at-percent-along-path! (-> self path) (-> self basetrans) (-> self path-pos) 'interp)
(let ((func (-> (method-of-type plat plat-idle) enter)))
(if func
(func)
)
)
)
:trans (behavior ()
(if (not (logtest? (-> self options) (actor-option blocked)))
(execute-effects self)
)
)
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-lens-base mtn-lens-base mtn-lens-base-lod0-jg mtn-lens-base-idle-ja
((mtn-lens-base-lod0-mg (meters 999999)))
:bounds (static-spherem 0 0 0 40)
:origin-joint-index 3
)
;; failed to figure out what this is:
(defskelgroup skel-mtn-lens-floor mtn-lens-floor mtn-lens-floor-lod0-jg mtn-lens-floor-idle-ja
((mtn-lens-floor-lod0-mg (meters 999999)))
:bounds (static-spherem 0 0 0 40)
:origin-joint-index 3
)
;; failed to figure out what this is:
(scene-method-16
(new 'static 'scene
:name "mountain-lens-res"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy platform projectile)
:entity "scene-stage-25"
:art-group "scenecamera"
:anim "mountain-lens-res"
:parts 6
:command-list '((0 (kill "mtn-lens-2"))
(0 (kill "mtn-lens-base-2"))
(0 (kill "mtn-lens-floor-2"))
(0 (task-close! "mountain-lens-resolution"))
(0 (fadein (seconds (new 'static 'bfloat :data 0.333))))
((new 'static 'bfloat :data 0.1) (part-tracker
"group-mtn-lens-light-shaft"
entity
"mtn-lens-floor"
joint
"main"
track
#t
duration
(frame-range 0 408)
)
)
(280 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"sidekick-highres"
joint
"tailEnd"
track
#t
duration
(frame-range 280 377)
)
)
(355 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleA"
track
#t
duration
(frame-range 355 377)
)
)
(355 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleB"
track
#t
duration
(frame-range 355 377)
)
)
(408 (part-tracker
"group-mtn-lens-light"
entity
"particleman"
joint
"particleC"
track
#t
duration
(frame-range 408 1000)
)
)
(455 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"sidekick-highres"
joint
"tailEnd"
track
#t
duration
(frame-range 455 468)
)
)
(455 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleA"
track
#t
duration
(frame-range 455 468)
)
)
(455 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleB"
track
#t
duration
(frame-range 455 468)
)
)
(487 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"sidekick-highres"
joint
"tailEnd"
track
#t
duration
(frame-range 487 513)
)
)
(487 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleA"
track
#t
duration
(frame-range 487 513)
)
)
(487 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleB"
track
#t
duration
(frame-range 487 513)
)
)
(533 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"sidekick-highres"
joint
"tailEnd"
track
#t
duration
(frame-range 533 558)
)
)
(533 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleA"
track
#t
duration
(frame-range 533 558)
)
)
(533 (part-tracker
"group-mountain-lens-res-daxter-tail-fire"
entity
"particleman"
joint
"particleB"
track
#t
duration
(frame-range 533 558)
)
)
(616 (part-tracker
"group-mountain-lens-res-daxter-tail-smoke"
entity
"particleman"
joint
"particleA"
track
#t
duration
(frame-range 616 670)
)
)
(665 (fadeout (seconds (new 'static 'bfloat :data 0.166))))
(10000 (when (task-open? "mountain-collection-resolution")
(task-close! "mountain-collection-resolution")
(talker-spawn "pek001")
)
)
)
:cut-list '(141 346 406 446 561)
: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 'mtnext
:art-group "skel-sidekick-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "jak-highres"
:level 'mtnext
:art-group "skel-jak-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-lens"
:level 'mtnext
:art-group "skel-mtn-lens"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-lens-base"
:level 'mountain
:art-group "skel-mtn-lens-base"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-lens-floor"
:level 'mountain
:art-group "skel-mtn-lens-floor"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "particleman"
:level 'mtnext
:art-group "skel-particleman"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-movie"
:end-point-obj (new 'static 'continue-point
:name "mountain-top"
:level #f
:trans (new 'static 'vector :x -3121033.2 :y 542524.6 :z 1180939.5 :w 1.0)
:quat (new 'static 'vector :y -0.6932 :w -0.7207)
:camera-trans (new 'static 'vector :x -3164170.2 :y 562351.7 :z 1163718.2 :w 1.0)
:camera-rot (new 'static 'inline-array vector3s 3
(new 'static 'vector3s :data (new 'static 'array float 3 0.3695 0.0 -0.9292))
(new 'static 'vector3s :data (new 'static 'array float 3 0.1147 0.9923 0.0456))
(new 'static 'vector3s :data (new 'static 'array float 3 0.9221 -0.1234 0.3666))
)
:on-goto '(want-continue "mountain-top")
:vis-nick 'mountain
:want (new 'static 'inline-array level-buffer-state 6
(new 'static 'level-buffer-state :name 'mountain :display? 'display :force-vis? #f :force-inside? #f)
(new 'static 'level-buffer-state :name 'mtnext :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)
(new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
)
:want-sound (new 'static 'array symbol 3 'mount1 'mount2 'mount3)
)
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume -1.0
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #t
)
)
;; failed to figure out what this is:
(scene-method-16
(new 'static 'scene
:name "mountain-shard-res"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy platform projectile)
:entity "scene-stage-26"
:art-group "scenecamera"
:anim "mountain-shard-res"
:parts 6
:command-list '((0
(kill "mtn-shard-1")
(task-close! "mountain-shard-resolution")
(fadein (frame-time-30 10))
(part-tracker
"group-mountain-mtn-shard-glow"
entity
"mtn-shard"
joint
"main"
track
#t
duration
(frame-range 0 730)
)
)
(9000 (want-continue "mountain-top"))
(10000 (when (task-open? "mountain-collection-resolution")
(task-close! "mountain-collection-resolution")
(talker-spawn "pek001")
)
)
)
:cut-list '(61 278)
: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 'mtnext
:art-group "skel-sidekick-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "jak-highres"
:level 'mtnext
:art-group "skel-jak-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-shard"
:level 'mountain
:art-group "skel-mtn-shard"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-movie"
:end-point-obj (new 'static 'continue-point
:name "mountain-top"
:level #f
:trans (new 'static 'vector :x -2840613.2 :y 470846.25 :z 88602.625 :w 1.0)
:quat (new 'static 'vector :y -0.8949 :w -0.4462)
:camera-trans (new 'static 'vector :x -2825546.5 :y 491753.88 :z 48836.61 :w 1.0)
:camera-rot (new 'static 'inline-array vector3s 3
(new 'static 'vector3s :data (new 'static 'array float 3 0.9576 0.0 0.2878))
(new 'static 'vector3s :data (new 'static 'array float 3 -0.0547 0.9817 0.1822))
(new 'static 'vector3s :data (new 'static 'array float 3 -0.2826 -0.1903 0.9401))
)
:on-goto '(want-continue "mountain-top")
:vis-nick 'mountain
:want (new 'static 'inline-array level-buffer-state 6
(new 'static 'level-buffer-state :name 'mountain :display? 'display :force-vis? #f :force-inside? #f)
(new 'static 'level-buffer-state :name 'mtnext :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)
(new 'static 'level-buffer-state :name #f :display? #f :force-vis? #f :force-inside? #f)
)
:want-sound (new 'static 'array symbol 3 'mount1 'mount2 'mount3)
)
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume -1.0
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #t
)
)
;; failed to figure out what this is:
(scene-method-16
(new 'static 'scene
:name "mountain-gear-res"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy platform projectile)
:entity "scene-stage-27"
:art-group "scenecamera"
:anim "mountain-gear-res"
:parts 6
:command-list '((0
(kill "mtn-gear-device-4")
(kill "mtn-gear-device-gear-4")
(task-close! "mountain-gear-resolution")
(fadein (seconds (new 'static 'bfloat :data 0.333)))
(apply
,(lambda :behavior scene-player
()
(set! (-> self user-sound 0)
(sound-play-by-spec (static-sound-spec "mtn-gear-device" :fo-curve 1) (new-sound-id) (the-as vector #t))
)
(none)
)
)
)
(355 (apply ,(lambda :behavior scene-player
()
(let ((sound-set-param (the-as sound-rpc-set-param (get-sound-buffer-entry))))
(set! (-> sound-set-param command) (sound-command set-param))
(set! (-> sound-set-param id) (-> self user-sound 0))
(set! (-> sound-set-param params volume) -4)
(set! (-> sound-set-param auto-time) 48)
(set! (-> sound-set-param auto-from) 2)
(set! (-> sound-set-param params mask) (the-as uint 17))
(-> sound-set-param id)
)
(none)
)
)
)
(394 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"d"
track
#t
duration
(frame-range 394 396)
)
)
(401 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"m"
track
#t
duration
(frame-range 401 403)
)
)
(405 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"aj"
track
#t
duration
(frame-range 405 407)
)
)
(406 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"g"
track
#t
duration
(frame-range 406 408)
)
)
(408
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"k"
track
#t
duration
(frame-range 408 410)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"l"
track
#t
duration
(frame-range 408 410)
)
)
(409 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"j"
track
#t
duration
(frame-range 409 411)
)
)
(411 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"e"
track
#t
duration
(frame-range 411 413)
)
)
(413
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"h"
track
#t
duration
(frame-range 413 415)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"i"
track
#t
duration
(frame-range 413 415)
)
)
(422 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"f"
track
#t
duration
(frame-range 422 424)
)
)
(423
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"ai"
track
#t
duration
(frame-range 423 425)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"ad"
track
#t
duration
(frame-range 423 425)
)
)
(429 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"u"
track
#t
duration
(frame-range 429 431)
)
)
(435 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"aa"
track
#t
duration
(frame-range 435 437)
)
)
(442 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"n"
track
#t
duration
(frame-range 442 444)
)
)
(447
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"z"
track
#t
duration
(frame-range 447 449)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"zz"
track
#t
duration
(frame-range 447 449)
)
)
(449 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"t"
track
#t
duration
(frame-range 449 451)
)
)
(451
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"af"
track
#t
duration
(frame-range 451 453)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"ag"
track
#t
duration
(frame-range 451 453)
)
)
(452
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"ah"
track
#t
duration
(frame-range 452 454)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"s"
track
#t
duration
(frame-range 452 454)
)
(part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"ae"
track
#t
duration
(frame-range 452 454)
)
)
(460 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"v"
track
#t
duration
(frame-range 460 462)
)
)
(462 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"w"
track
#t
duration
(frame-range 462 464)
)
)
(469 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"y"
track
#t
duration
(frame-range 469 471)
)
)
(501 (part-tracker
"group-mountain-gear-dust-plume"
entity
"mtn-gear-device-collapse"
joint
"x"
track
#t
duration
(frame-range 501 503)
)
)
(657 (fadeout (seconds (new 'static 'bfloat :data 0.1))))
(9000 (want-continue "mountain-top"))
(10000 (when (task-open? "mountain-collection-resolution")
(task-close! "mountain-collection-resolution")
(talker-spawn "pek001")
)
)
)
:cut-list '(91 141 191 281 333 441 511)
: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 'mtnext
:art-group "skel-sidekick-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1a
:shadow-values #x580c0
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "jak-highres"
:level 'mtnext
:art-group "skel-jak-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1a
:shadow-values #x580c0
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-gear-device-collapse"
:level 'mtnext
:art-group "skel-mtn-gear-device-collapse"
:prefix "collapse-"
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1a
:shadow-values #x580c0
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-gear-device-gear"
:level 'mtnext
:art-group "skel-mtn-gear-device-gear"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:shadow-mask #x1a
:shadow-values #x580c0
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-movie"
:end-point-obj #f
:borrow '()
:sfx-volume 1.0
:ambient-volume 1.0
:music-volume -1.0
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #t
)
)
;; failed to figure out what this is:
(scene-method-16
(new 'static 'scene
:name "canyon-insert-items-intro"
:extra #f
:info #f
:mask-to-clear (process-mask movie enemy platform projectile)
:entity "scene-stage-88"
:art-group "scenecamera"
:anim "canyon-insert-items-intro"
:parts 3
:command-list '((60 (kill "mtn-iris-door-2") (fadein (frame-time-30 10)) (part-tracker
"group-canyon-seal-of-mar-glow"
entity
"seal-of-mar"
joint
"base"
track
#t
duration
(frame-range 60 390)
)
)
(326 (fadeout (frame-time-30 10)))
(10000 (task-close! "canyon-insert-items-door"))
)
:cut-list '(113 209 264)
: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 'mtnext
:art-group "skel-sidekick-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "jak-highres"
:level 'mtnext
:art-group "skel-jak-highres"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:light-index #xa
:shadow-mask #x1e
:shadow-values #x44440
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "seal-of-mar"
:level 'mtnext
:art-group "skel-seal-of-mar"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
(new 'static 'scene-actor
:name "mtn-iris-door"
:level 'mtnext
:art-group "skel-mtn-iris-door"
:prefix ""
:draw-frames '((min max))
:scissor-frames '()
:flags #x1
:shadow-flags -1
:shadow-volume-joint #f
)
)
:load-point-obj "mountain-door"
:end-point-obj "mountain-door"
:borrow '()
:sfx-volume -1.0
:ambient-volume -1.0
:music-volume -1.0
:blackout-end #t
:peaceful #t
:music-delay 1500.0
:save #t
)
)
;; definition of type mtn-lens
(deftype mtn-lens (process-drawable)
()
(:state-methods
idle
)
)
;; definition for method 3 of type mtn-lens
(defmethod inspect ((this mtn-lens))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; failed to figure out what this is:
(defstate idle (mtn-lens)
:virtual #t
:code sleep-code
:post ja-post
)
;; definition for method 11 of type mtn-lens
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-lens) (entity 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"
(set! (-> this root) (new 'process 'trsqv))
(process-drawable-from-entity! this entity)
(logclear! (-> this mask) (process-mask actor-pause))
(initialize-skeleton
this
(the-as skeleton-group (art-group-get-by-name *level* "skel-mtn-lens" (the-as (pointer uint32) #f)))
(the-as pair 0)
)
(go (method-of-object this idle))
(none)
)
;; definition of type mtn-lens-base
(deftype mtn-lens-base (process-drawable)
()
(:state-methods
idle
)
)
;; definition for method 3 of type mtn-lens-base
(defmethod inspect ((this mtn-lens-base))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; failed to figure out what this is:
(defstate idle (mtn-lens-base)
:virtual #t
:code sleep-code
:post ja-post
)
;; definition for method 11 of type mtn-lens-base
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-lens-base) (entity 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"
(set! (-> this root) (new 'process 'trsqv))
(process-drawable-from-entity! this entity)
(logclear! (-> this mask) (process-mask actor-pause))
(initialize-skeleton
this
(the-as skeleton-group (art-group-get-by-name *level* "skel-mtn-lens-base" (the-as (pointer uint32) #f)))
(the-as pair 0)
)
(when (task-complete? *game-info* (game-task mountain-lens))
)
(go (method-of-object this idle))
(none)
)
;; definition of type mtn-lens-floor
(deftype mtn-lens-floor (process-drawable)
()
(:state-methods
idle
idle-no-beam
)
)
;; definition for method 3 of type mtn-lens-floor
(defmethod inspect ((this mtn-lens-floor))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; failed to figure out what this is:
(defstate idle (mtn-lens-floor)
:virtual #t
:code transform-and-sleep-code
:post (behavior ()
(spawn-with-cspace (-> self part) (joint-node mtn-lens-floor-lod0-jg main))
)
)
;; failed to figure out what this is:
(defstate idle-no-beam (mtn-lens-floor)
:virtual #t
:code transform-and-sleep-code
)
;; definition for method 11 of type mtn-lens-floor
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-lens-floor) (entity 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 ((cshape (new 'process 'collide-shape this (collide-list-enum usually-hit-by-player))))
(let ((prim-mesh (new 'process 'collide-shape-prim-mesh cshape (the-as uint 0) (the-as uint 0))))
(set! (-> prim-mesh prim-core collide-as) (collide-spec obstacle))
(set! (-> prim-mesh prim-core collide-with) (collide-spec jak bot player-list))
(set! (-> prim-mesh prim-core action) (collide-action solid))
(set! (-> prim-mesh transform-index) 3)
(set-vector! (-> prim-mesh local-sphere) 0.0 -4096.0 0.0 26624.0)
(set! (-> cshape total-prims) (the-as uint 1))
(set! (-> cshape root-prim) prim-mesh)
)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((root-prim (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> root-prim prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> root-prim prim-core collide-with))
)
(set! (-> this root) cshape)
)
(process-drawable-from-entity! this entity)
(logclear! (-> this mask) (process-mask actor-pause))
(initialize-skeleton
this
(the-as skeleton-group (art-group-get-by-name *level* "skel-mtn-lens-floor" (the-as (pointer uint32) #f)))
(the-as pair 0)
)
(if (task-complete? *game-info* (game-task mountain-lens))
(go (method-of-object this idle-no-beam))
)
(set! (-> this part) (create-launch-control group-mtn-lens-light-shaft this))
(go (method-of-object this idle))
(none)
)
;; definition of type mtn-shard
(deftype mtn-shard (process-drawable)
()
(:state-methods
idle
)
)
;; definition for method 3 of type mtn-shard
(defmethod inspect ((this mtn-shard))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type process-drawable inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; failed to figure out what this is:
(defstate idle (mtn-shard)
:virtual #t
:code sleep-code
:post ja-post
)
;; definition for method 11 of type mtn-shard
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-shard) (entity 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"
(set! (-> this root) (new 'process 'trsqv))
(process-drawable-from-entity! this entity)
(logclear! (-> this mask) (process-mask actor-pause))
(initialize-skeleton
this
(the-as skeleton-group (art-group-get-by-name *level* "skel-mtn-shard" (the-as (pointer uint32) #f)))
(the-as pair 0)
)
(go (method-of-object this idle))
(none)
)
;; definition of type mtn-step-plat-rocks-a
(deftype mtn-step-plat-rocks-a (mtn-plat-buried-rocks)
()
)
;; definition for method 3 of type mtn-step-plat-rocks-a
(defmethod inspect ((this mtn-step-plat-rocks-a))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type mtn-plat-buried-rocks inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; definition for method 11 of type mtn-step-plat-rocks-a
;; INFO: Used lq/sq
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-step-plat-rocks-a) (entity 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 ((cshape (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((prim-group (new 'process 'collide-shape-prim-group cshape (the-as uint 3) 0)))
(set! (-> cshape total-prims) (the-as uint 4))
(set! (-> prim-group prim-core collide-as) (collide-spec obstacle pusher))
(set! (-> prim-group prim-core collide-with) (collide-spec jak player-list))
(set! (-> prim-group prim-core action) (collide-action solid))
(set! (-> prim-group transform-index) 3)
(set-vector! (-> prim-group local-sphere) 0.0 12288.0 0.0 20480.0)
(set! (-> cshape root-prim) prim-group)
(pusher-init cshape)
(let* ((s2-0 '((0 4 16384) (1 7 16384) (2 12 16384)))
(s1-0 (car s2-0))
)
(while (not (null? s2-0))
(let ((sv-16
(new 'process 'collide-shape-prim-mesh cshape (the-as uint (command-get-int (car s1-0) 0)) (the-as uint 0))
)
)
(let ((_prim-mesh sv-16))
(set! (-> _prim-mesh prim-core collide-as) (-> prim-group prim-core collide-as))
(set! (-> _prim-mesh prim-core collide-with) (-> prim-group prim-core collide-with))
(set! (-> _prim-mesh prim-core action) (-> prim-group prim-core action))
(set! (-> _prim-mesh transform-index) (command-get-int (car (cdr s1-0)) 0))
)
(set-vector! (-> sv-16 local-sphere) 0.0 0.0 0.0 (command-get-float (car (cdr (cdr s1-0))) 0.0))
)
(set! s2-0 (cdr s2-0))
(set! s1-0 (car s2-0))
)
)
)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((root-prim (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> root-prim prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> root-prim prim-core collide-with))
)
(set! (-> this root) cshape)
)
(process-drawable-from-entity! this entity)
(initialize-skeleton
this
(the-as
skeleton-group
(art-group-get-by-name *level* "skel-mtn-step-plat-rocks-a" (the-as (pointer uint32) #f))
)
(the-as pair 0)
)
(set-vector! (-> this draw bounds) 0.0 12288.0 0.0 20480.0)
(set! (-> this draw lod-set lod 0 dist) 163840.0)
(cond
((and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status subtask-complete)))
(go (method-of-object this done) #t)
)
(else
(add-process *gui-control* this (gui-channel art-load) (gui-action queue) "mtn-step-plat-rocks-a" -99.0 0)
(go (method-of-object this idle))
)
)
(none)
)
;; definition of type mtn-step-plat-rocks-b
(deftype mtn-step-plat-rocks-b (mtn-plat-buried-rocks)
()
)
;; definition for method 3 of type mtn-step-plat-rocks-b
(defmethod inspect ((this mtn-step-plat-rocks-b))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type mtn-plat-buried-rocks inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; definition for method 11 of type mtn-step-plat-rocks-b
;; INFO: Used lq/sq
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-step-plat-rocks-b) (entity 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 ((cshape (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((prim-group (new 'process 'collide-shape-prim-group cshape (the-as uint 17) 0)))
(set! (-> cshape total-prims) (the-as uint 18))
(set! (-> prim-group prim-core collide-as) (collide-spec obstacle pusher))
(set! (-> prim-group prim-core collide-with) (collide-spec jak player-list))
(set! (-> prim-group prim-core action) (collide-action solid))
(set! (-> prim-group transform-index) 3)
(set-vector! (-> prim-group local-sphere) 0.0 -12288.0 0.0 40960.0)
(set! (-> cshape root-prim) prim-group)
(pusher-init cshape)
(let* ((s2-0 '((0 6 16384)
(1 7 16384)
(2 8 16384)
(3 11 16384)
(4 15 16384)
(5 18 16384)
(6 19 16384)
(7 20 16384)
(8 21 16384)
(9 22 16384)
(10 23 16384)
(11 27 16384)
(12 28 16384)
(13 40 16384)
(14 42 16384)
(15 43 16384)
(16 48 16384)
)
)
(s1-0 (car s2-0))
)
(while (not (null? s2-0))
(let ((sv-16
(new 'process 'collide-shape-prim-mesh cshape (the-as uint (command-get-int (car s1-0) 0)) (the-as uint 0))
)
)
(let ((_prim-mesh sv-16))
(set! (-> _prim-mesh prim-core collide-as) (-> prim-group prim-core collide-as))
(set! (-> _prim-mesh prim-core collide-with) (-> prim-group prim-core collide-with))
(set! (-> _prim-mesh prim-core action) (-> prim-group prim-core action))
(set! (-> _prim-mesh transform-index) (command-get-int (car (cdr s1-0)) 0))
)
(set-vector! (-> sv-16 local-sphere) 0.0 0.0 0.0 (command-get-float (car (cdr (cdr s1-0))) 0.0))
)
(set! s2-0 (cdr s2-0))
(set! s1-0 (car s2-0))
)
)
)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((root-prim (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> root-prim prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> root-prim prim-core collide-with))
)
(set! (-> this root) cshape)
)
(process-drawable-from-entity! this entity)
(initialize-skeleton
this
(the-as
skeleton-group
(art-group-get-by-name *level* "skel-mtn-step-plat-rocks-b" (the-as (pointer uint32) #f))
)
(the-as pair 0)
)
(set-vector! (-> this draw bounds) 0.0 -12288.0 0.0 40960.0)
(set! (-> this draw lod-set lod 0 dist) 163840.0)
(cond
((and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status subtask-complete)))
(go (method-of-object this done) #t)
)
(else
(add-process *gui-control* this (gui-channel art-load) (gui-action queue) "mtn-step-plat-rocks-b" -99.0 0)
(go (method-of-object this idle))
)
)
(none)
)
;; definition of type mtn-step-plat-rocks-c
(deftype mtn-step-plat-rocks-c (mtn-plat-buried-rocks)
()
)
;; definition for method 3 of type mtn-step-plat-rocks-c
(defmethod inspect ((this mtn-step-plat-rocks-c))
(when (not this)
(set! this this)
(goto cfg-4)
)
(let ((t9-0 (method-of-type mtn-plat-buried-rocks inspect)))
(t9-0 this)
)
(label cfg-4)
this
)
;; definition for method 11 of type mtn-step-plat-rocks-c
;; INFO: Used lq/sq
;; WARN: Return type mismatch object vs none.
(defmethod init-from-entity! ((this mtn-step-plat-rocks-c) (entity 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 ((cshape (new 'process 'collide-shape this (collide-list-enum hit-by-player))))
(let ((prim-group (new 'process 'collide-shape-prim-group cshape (the-as uint 24) 0)))
(set! (-> cshape total-prims) (the-as uint 25))
(set! (-> prim-group prim-core collide-as) (collide-spec obstacle pusher))
(set! (-> prim-group prim-core collide-with) (collide-spec jak player-list))
(set! (-> prim-group prim-core action) (collide-action solid))
(set! (-> prim-group transform-index) 3)
(set-vector! (-> prim-group local-sphere) 0.0 0.0 32768.0 57344.0)
(set! (-> cshape root-prim) prim-group)
(pusher-init cshape)
(let* ((s2-0 '((0 4 16384)
(1 6 16384)
(2 9 16384)
(3 11 16384)
(4 17 16384)
(5 19 16384)
(6 20 16384)
(7 28 16384)
(8 29 16384)
(9 30 16384)
(10 31 16384)
(11 32 16384)
(12 34 16384)
(13 35 16384)
(14 37 16384)
(15 38 16384)
(16 41 16384)
(17 42 16384)
(18 43 16384)
(19 44 16384)
(20 45 16384)
(21 49 16384)
(22 51 16384)
(23 53 16384)
)
)
(s1-0 (car s2-0))
)
(while (not (null? s2-0))
(let ((sv-16
(new 'process 'collide-shape-prim-mesh cshape (the-as uint (command-get-int (car s1-0) 0)) (the-as uint 0))
)
)
(let ((_prim-mesh sv-16))
(set! (-> _prim-mesh prim-core collide-as) (-> prim-group prim-core collide-as))
(set! (-> _prim-mesh prim-core collide-with) (-> prim-group prim-core collide-with))
(set! (-> _prim-mesh prim-core action) (-> prim-group prim-core action))
(set! (-> _prim-mesh transform-index) (command-get-int (car (cdr s1-0)) 0))
)
(set-vector! (-> sv-16 local-sphere) 0.0 0.0 0.0 (command-get-float (car (cdr (cdr s1-0))) 0.0))
)
(set! s2-0 (cdr s2-0))
(set! s1-0 (car s2-0))
)
)
)
(set! (-> cshape nav-radius) (* 0.75 (-> cshape root-prim local-sphere w)))
(let ((root-prim (-> cshape root-prim)))
(set! (-> cshape backup-collide-as) (-> root-prim prim-core collide-as))
(set! (-> cshape backup-collide-with) (-> root-prim prim-core collide-with))
)
(set! (-> this root) cshape)
)
(process-drawable-from-entity! this entity)
(initialize-skeleton
this
(the-as
skeleton-group
(art-group-get-by-name *level* "skel-mtn-step-plat-rocks-c" (the-as (pointer uint32) #f))
)
(the-as pair 0)
)
(set-vector! (-> this draw bounds) 0.0 0.0 32768.0 57344.0)
(set! (-> this draw lod-set lod 0 dist) 163840.0)
(cond
((and (-> this entity) (logtest? (-> this entity extra perm status) (entity-perm-status subtask-complete)))
(go (method-of-object this done) #t)
)
(else
(add-process *gui-control* this (gui-channel art-load) (gui-action queue) "mtn-step-plat-rocks-c" -99.0 0)
(go (method-of-object this idle))
)
)
(none)
)