Files
jak-project/goal_src/jakx/levels/common/common-part.gc
T
2026-06-15 09:56:10 -04:00

314 lines
9.5 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: common-part.gc
;; name in dgo: common-part
;; dgos: CLF, CLFX, IBX, ICEBERGW, ICEPASSW, ICETOURW, IPX, PEAKW, PKX, SNO, SNOX, SNW, SNWX
;; DECOMP BEGINS
;; WARN: Return type mismatch float vs none.
(defun spt-birth-func-brightness-cliffs-fence-dust ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo))
(let ((s5-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 51) 90))
(s3-0 (logand 0 (rand-uint31-gen *random-generator*)))
(s4-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 6) 20))
(v1-6 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 6) 40))
)
(set! (-> arg2 rotate-x) (the float (- s5-0 (the-as int s3-0))))
(set! (-> arg2 rotate-y) (the float (- s5-0 s4-0)))
(set! (-> arg2 rotate-z) (the float (- s5-0 v1-6)))
)
(none)
)
;; WARN: Return type mismatch float vs none.
(defun spt-birth-func-brightness-cliffs-fence-splinters ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo))
(let ((s5-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 101) 70))
(s3-0 (logand 0 (rand-uint31-gen *random-generator*)))
(s4-0 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 6) 20))
(v1-6 (+ (mod (the-as int (rand-uint31-gen *random-generator*)) 6) 40))
)
(set! (-> arg2 rotate-x) (the float (- s5-0 (the-as int s3-0))))
(set! (-> arg2 rotate-y) (the float (- s5-0 s4-0)))
(set! (-> arg2 rotate-z) (the float (- s5-0 v1-6)))
)
(none)
)
(defpartgroup group-snow-icebreak-a
:id 423
:flags (sp0 sp4)
:bounds (static-bspherem 0 0 0 20)
:parts ((sp-item 1682 :flags (sp3 sp6)) (sp-item 1683 :flags (sp3 sp6)))
)
(defpart 1682
:init-specs ((:texture (new 'static 'texture-id :index #x78 :page #x4))
(:num 30.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 20))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 32.0 32.0)
(:vel-y (meters 0.006666667) (meters 0.006666667))
(:scalevel-x (meters 0.016666668) (meters 0.006666667))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.10666667 -0.10666667)
(:timer (seconds 2))
(:flags (sp-cpuinfo-flag-2 glow))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpart 1683
:init-specs ((:texture (new 'static 'texture-id :index #x63 :page #x4))
(:num 30.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 20))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 64.0 64.0)
(:vel-y (meters 0.016666668) (meters 0.016666668))
(:scalevel-x (meters 0.016666668))
(:scalevel-y :copy scalevel-x)
(:accel-y (meters -0.0016666667))
(:timer (seconds 2))
(:flags (glow left-multiply-quat))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpartgroup group-snow-icebreak-b
:id 424
:flags (sp0 sp4)
:bounds (static-bspherem 0 0 0 20)
:parts ((sp-item 1684 :flags (sp3 sp6)) (sp-item 1685 :flags (sp3 sp6)))
)
(defpart 1684
:init-specs ((:texture (new 'static 'texture-id :index #x78 :page #x4))
(:num 30.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 10))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 32.0 32.0)
(:vel-y (meters 0.006666667) (meters 0.006666667))
(:scalevel-x (meters 0.016666668) (meters 0.006666667))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.10666667 -0.10666667)
(:timer (seconds 2))
(:flags (sp-cpuinfo-flag-2 glow))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpart 1685
:init-specs ((:texture (new 'static 'texture-id :index #x63 :page #x4))
(:num 15.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 10))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 64.0 64.0)
(:vel-y (meters 0.016666668) (meters 0.016666668))
(:scalevel-x (meters 0.016666668))
(:scalevel-y :copy scalevel-x)
(:accel-y (meters -0.0016666667))
(:timer (seconds 2))
(:flags (glow left-multiply-quat))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpartgroup group-snow-icebreak-c
:id 425
:flags (sp0 sp4)
:bounds (static-bspherem 0 0 0 20)
:parts ((sp-item 1686 :flags (sp3 sp6)) (sp-item 1687 :flags (sp3 sp6)))
)
(defpart 1686
:init-specs ((:texture (new 'static 'texture-id :index #x78 :page #x4))
(:num 30.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 5))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 32.0 32.0)
(:vel-y (meters 0.006666667) (meters 0.006666667))
(:scalevel-x (meters 0.016666668) (meters 0.006666667))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.10666667 -0.10666667)
(:timer (seconds 2))
(:flags (sp-cpuinfo-flag-2 glow))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpart 1687
:init-specs ((:texture (new 'static 'texture-id :index #x63 :page #x4))
(:num 10.0)
(:x (meters 0) (meters 3))
(:y (meters 0) (meters 5))
(:scale-x (meters 5))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0 128.0)
(:g :copy r)
(:b :copy r)
(:a 64.0 64.0)
(:vel-y (meters 0.016666668) (meters 0.016666668))
(:scalevel-x (meters 0.016666668))
(:scalevel-y :copy scalevel-x)
(:accel-y (meters -0.0016666667))
(:timer (seconds 2))
(:flags (glow left-multiply-quat))
(:conerot-x (degrees 0) (degrees 360))
(:rotate-y (degrees 0) (degrees 3600))
)
)
(defpartgroup group-cliffs-fence-dust
:id 426
:flags (sp0 sp4)
:bounds (static-bspherem 0 0 0 20)
:parts ((sp-item 1688 :flags (sp6) :period (seconds 10) :length (seconds 0.067))
(sp-item 1689 :flags (sp6) :period (seconds 10) :length (seconds 0.067))
)
)
(defpart 1688
:init-specs ((:texture (new 'static 'texture-id :index #x78 :page #x4))
(:birth-func 'spt-birth-func-brightness-cliffs-fence-dust)
(:num 10.0)
(:x (meters -20) (meters 40))
(:y (meters 0) (meters 4))
(:scale-x (meters 5) (meters 2))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0)
(:g 128.0)
(:b 128.0)
(:a 32.0 64.0)
(:vel-z (meters -0.05) (meters 0.1))
(:scalevel-x (meters 0.016666668) (meters 0.006666667))
(:rotvel-z (degrees -0.1) (degrees 0.2))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.08 -0.08)
(:accel-y (meters -0.00066666666))
(:friction 0.9)
(:timer (seconds 4))
(:flags (sp-cpuinfo-flag-2 glow left-multiply-quat))
(:rotate-y (degrees 0))
)
)
(defpart 1689
:init-specs ((:texture (new 'static 'texture-id :index #x65 :page #x4))
(:birth-func 'spt-birth-func-brightness-cliffs-fence-splinters)
(:num 70.0)
(:x (meters -20) (meters 40))
(:y (meters 0) (meters 4))
(:scale-x (meters 0.3) (meters 1.2))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0)
(:g 128.0)
(:b 128.0)
(:a 32.0 64.0)
(:vel-y (meters 0.033333335) (meters 0.06666667))
(:rotvel-z (degrees -4) (degrees 8))
(:accel-y (meters -0.0033333334))
(:timer (seconds 2))
(:flags (glow))
(:conerot-x (degrees -45) (degrees 90))
(:conerot-z (degrees -45) (degrees 90))
(:rotate-y (degrees 0))
)
)
(defpartgroup group-cliffs-fence-dust-small
:id 427
:flags (sp0 sp4)
:bounds (static-bspherem 0 0 0 20)
:parts ((sp-item 1690 :flags (sp6) :period (seconds 10) :length (seconds 0.067))
(sp-item 1691 :flags (sp6) :period (seconds 10) :length (seconds 0.067))
)
)
(defpart 1690
:init-specs ((:texture (new 'static 'texture-id :index #x78 :page #x4))
(:birth-func 'spt-birth-func-brightness-cliffs-fence-dust)
(:num 10.0)
(:x (meters -10) (meters 20))
(:y (meters 0) (meters 4))
(:scale-x (meters 5) (meters 2))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0)
(:g 128.0)
(:b 128.0)
(:a 32.0 64.0)
(:vel-z (meters -0.05) (meters 0.1))
(:scalevel-x (meters 0.016666668) (meters 0.006666667))
(:rotvel-z (degrees -0.1) (degrees 0.2))
(:scalevel-y :copy scalevel-x)
(:fade-a -0.08 -0.08)
(:accel-y (meters -0.00066666666))
(:friction 0.9)
(:timer (seconds 4))
(:flags (sp-cpuinfo-flag-2 glow left-multiply-quat))
(:rotate-y (degrees 0))
)
)
(defpart 1691
:init-specs ((:texture (new 'static 'texture-id :index #x65 :page #x4))
(:birth-func 'spt-birth-func-brightness-cliffs-fence-splinters)
(:num 70.0)
(:x (meters -10) (meters 20))
(:y (meters 0) (meters 4))
(:scale-x (meters 0.3) (meters 1.2))
(:rot-z (degrees 0) (degrees 360))
(:scale-y :copy scale-x)
(:r 128.0)
(:g 128.0)
(:b 128.0)
(:a 32.0 64.0)
(:vel-y (meters 0.033333335) (meters 0.06666667))
(:rotvel-z (degrees -4) (degrees 8))
(:accel-y (meters -0.0033333334))
(:timer (seconds 2))
(:flags (glow))
(:conerot-x (degrees -45) (degrees 90))
(:conerot-z (degrees -45) (degrees 90))
(:rotate-y (degrees 0))
)
)