mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
dd0a8a17b2
- started documenting the files I glossed over, some are totally done, others are just partially done - I changed the decompiler to automatically initialize the art-group-info from the json file. This makes updating gsrc, even a single file at a time, have consistent naming - Though I disabled this functionality for jak 1, as I have no idea if using the ntsc art groups will cause a regression for different versions - fix indentation for docstrings -- it still doesn't look great, but this is now a formatting concern, rather than the docstring having a bunch of happen-stance leading whitespace.
1593 lines
60 KiB
Common Lisp
1593 lines
60 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: ruins-part.gc
|
|
;; name in dgo: ruins-part
|
|
;; dgos: RUI
|
|
|
|
;; og:ignore-from-loc
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
(deftype ruins-part (part-spawner)
|
|
()
|
|
:heap-base #x30
|
|
:method-count-assert 16
|
|
:size-assert #xb0
|
|
:flag-assert #x10003000b0
|
|
)
|
|
|
|
|
|
(defpartgroup group-ruins-streetlight-glows
|
|
:id 284
|
|
:bounds (static-bspherem 0 0 0 5)
|
|
:parts ((sp-item 1 :fade-after (meters 100) :flags (bit6) :hour-mask #b111111111110000000)
|
|
(sp-item 2 :fade-after (meters 300) :flags (bit6) :hour-mask #b111111111110000000)
|
|
)
|
|
)
|
|
|
|
(defpart 1
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xbb :page #xc))
|
|
(sp-flt spt-num 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 0.1) 1.0)
|
|
(sp-flt spt-rot-x 409.6)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 255.0)
|
|
(sp-flt spt-g 255.0)
|
|
(sp-flt spt-b 255.0)
|
|
(sp-rnd-flt spt-a 24.0 8.0 1.0)
|
|
(sp-flt spt-omega 411648.0)
|
|
(sp-int spt-timer 5)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)
|
|
(sp-flt spt-userdata 2048.0)
|
|
)
|
|
)
|
|
|
|
(defpart 2
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xbb :page #xc))
|
|
(sp-flt spt-num 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 8) (meters 0.1) 1.0)
|
|
(sp-flt spt-rot-x 409.6)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 255.0)
|
|
(sp-rnd-flt spt-g 255.0 255.0 1.0)
|
|
(sp-flt spt-b 255.0)
|
|
(sp-rnd-flt spt-a 10.0 2.0 1.0)
|
|
(sp-flt spt-omega 1231667.2)
|
|
(sp-int spt-timer 5)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 glow)
|
|
(sp-flt spt-userdata 2048.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-dirt-collapse
|
|
:id 285
|
|
:duration (seconds 2)
|
|
:linger-duration (seconds 10)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 6 0 8)
|
|
:parts ((sp-item 1253 :period 2200 :length 320 :binding 1251)
|
|
(sp-item 1253 :period 2200 :length 200 :binding 1251)
|
|
(sp-item 1253 :period 2200 :length 150 :binding 1251)
|
|
(sp-item 1253 :period 2200 :length 100 :binding 1251)
|
|
(sp-item 1254 :period 2200 :length 80 :binding 1252)
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1252 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
(sp-item 1251 :flags (bit1 start-dead))
|
|
)
|
|
)
|
|
|
|
(defun check-drop-level-ruins-rubble ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix))
|
|
"TODO docs"
|
|
(let ((f30-0 (-> arg1 key origin trans y)))
|
|
(when (< (-> arg2 vector 0 y) f30-0)
|
|
(let ((vec (new 'stack-no-clear 'vector)))
|
|
(sp-kill-particle arg0 arg1)
|
|
(set-vector! vec (-> arg2 vector 0 x) f30-0 (-> arg2 vector 0 z) 1.0)
|
|
(let ((t9-1 sp-launch-particles-var)
|
|
(a0-2 *sp-particle-system-2d*)
|
|
(a1-1 (-> *part-id-table* 1255))
|
|
(a2-1 *launch-matrix*)
|
|
)
|
|
(set! (-> a2-1 trans quad) (-> vec quad))
|
|
(t9-1 a0-2 a1-1 a2-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
|
|
)
|
|
(let ((t9-2 sp-launch-particles-var)
|
|
(a0-3 *sp-particle-system-2d*)
|
|
(a1-2 (-> *part-id-table* 1256))
|
|
(a2-2 *launch-matrix*)
|
|
)
|
|
(set! (-> a2-2 trans quad) (-> vec quad))
|
|
(t9-2 a0-3 a1-2 a2-2 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
|
|
)
|
|
(let ((t9-3 sp-launch-particles-var)
|
|
(a0-4 *sp-particle-system-2d*)
|
|
(a1-3 (-> *part-id-table* 1257))
|
|
(a2-3 *launch-matrix*)
|
|
)
|
|
(set! (-> a2-3 trans quad) (-> vec quad))
|
|
(t9-3 a0-4 a1-3 a2-3 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(none)
|
|
)
|
|
|
|
(defpart 1252
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 0.0 0.25 1.0)
|
|
(sp-sound (static-sound-spec "debris-fall" :num 0.01 :volume 100.0))
|
|
(sp-rnd-flt spt-scale-x (meters 0.3) (meters 0.1) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 1) (meters 0.2) 1.0)
|
|
(sp-rnd-flt spt-r 80.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters -0.013333334) (meters -0.026666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.0016666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-y (meters 0) (meters 0.00033333333) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.042666666 -0.064 1.0)
|
|
(sp-rnd-flt spt-accel-y 0.0 1.3653333 1.0)
|
|
(sp-int spt-timer 250)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-func spt-func 'check-drop-group-center)
|
|
(sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1251
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 0.0 1.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.3) (meters 0.1) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 1) (meters 0.2) 1.0)
|
|
(sp-rnd-flt spt-r 80.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters -0.013333334) (meters -0.026666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.0016666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-y (meters 0) (meters 0.00033333333) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.042666666 -0.064 1.0)
|
|
(sp-rnd-flt spt-accel-y 0.0 1.3653333 1.0)
|
|
(sp-int spt-timer 750)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-func spt-func 'check-drop-group-center)
|
|
(sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1254
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 0.0 3.0 1.0)
|
|
(sp-rnd-flt spt-x (meters 0) (meters 2) 1.0)
|
|
(sp-flt spt-y (meters 16))
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 32.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 24.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 30.0 16.0 1.0)
|
|
(sp-flt spt-a 128.0)
|
|
(sp-rnd-flt spt-vel-y (meters -0.053333335) (meters -0.013333334) 1.0)
|
|
(sp-flt spt-scalevel-x (meters -0.00000033333333))
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 2.4) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int spt-timer 350)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-func spt-func 'check-drop-level-ruins-rubble)
|
|
(sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1253
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 0.0 0.5 1.0)
|
|
(sp-rnd-flt spt-x (meters 0) (meters 1) 1.0)
|
|
(sp-flt spt-y (meters 16))
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 32.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 24.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 30.0 16.0 1.0)
|
|
(sp-flt spt-a 128.0)
|
|
(sp-rnd-flt spt-vel-y (meters -0.053333335) (meters -0.013333334) 1.0)
|
|
(sp-flt spt-scalevel-x (meters -0.00000033333333))
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 2.4) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int spt-timer 350)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-func spt-func 'check-drop-level-ruins-rubble)
|
|
(sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1255
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 1.0 4.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.05) (meters 0.15) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.05) (meters 0.15) 1.0)
|
|
(sp-rnd-flt spt-r 32.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 24.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 30.0 16.0 1.0)
|
|
(sp-flt spt-a 128.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.006666667) (meters 0.026666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 2.4) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.42666668 -0.85333335 1.0)
|
|
(sp-flt spt-accel-y -2.7306666)
|
|
(sp-int spt-timer 600)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-rnd-flt spt-conerot-x (degrees 10.0) (degrees 60.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1256
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 1.0 2.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.05) (meters 0.15) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.05) (meters 0.15) 1.0)
|
|
(sp-rnd-flt spt-r 32.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 24.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 30.0 16.0 1.0)
|
|
(sp-flt spt-a 128.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.04) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 2.4) 1.0)
|
|
(sp-rnd-flt spt-friction 0.94 0.02 1.0)
|
|
(sp-int spt-timer 2400)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-int-plain-rnd spt-next-time 450 149 1)
|
|
(sp-launcher-by-id spt-next-launcher 1258)
|
|
(sp-flt spt-conerot-x (degrees 90.0))
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1258
|
|
:init-specs ((sp-flt spt-rotvel-z (degrees 0.0)) (sp-rnd-flt spt-fade-a -0.10666667 -0.10666667 1.0))
|
|
)
|
|
|
|
(defpart 1257
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 1.0 1.0 1.0)
|
|
(sp-sound (static-sound-spec "debris-ground" :num 0.01 :volume 100.0))
|
|
(sp-rnd-flt spt-scale-x (meters 1) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.5) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-r 80.0 16.0 1.0)
|
|
(sp-rnd-flt spt-g 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-b 70.0 16.0 1.0)
|
|
(sp-rnd-flt spt-a 16.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.026666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.0016666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-y (meters 0.0033333334) (meters 0.0016666667) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.026666667 -0.026666667 1.0)
|
|
(sp-rnd-flt spt-accel-y 0.0 1.3653333 1.0)
|
|
(sp-rnd-flt spt-friction 0.9 0.05 1.0)
|
|
(sp-int spt-timer 2400)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-conerot-x (degrees 70.0) (degrees 20.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-brick-dust-floor
|
|
:id 286
|
|
:duration (seconds 0.017)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1259 :fade-after (meters 60) :falloff-to (meters 60))
|
|
(sp-item 1260 :fade-after (meters 60) :falloff-to (meters 60))
|
|
(sp-item 1261 :fade-after (meters 120) :falloff-to (meters 120))
|
|
(sp-item 1262 :fade-after (meters 120) :falloff-to (meters 120))
|
|
(sp-item 1263)
|
|
)
|
|
)
|
|
|
|
(defpart 1259
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 4.0 8.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 192.0 64.0 1.0)
|
|
(sp-rnd-flt spt-g 128.0 64.0 1.0)
|
|
(sp-rnd-flt spt-b 128.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.10666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 720.0) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.42666668 -0.42666668 1.0)
|
|
(sp-rnd-flt spt-accel-y -5.4613333 -2.7306666 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 300)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-rnd-flt spt-conerot-x (degrees 80.0) (degrees 10.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.25) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1260
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 4.0 8.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 128.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.10666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 720.0) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.42666668 -0.42666668 1.0)
|
|
(sp-rnd-flt spt-accel-y -5.4613333 -2.7306666 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 300)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-rnd-flt spt-conerot-x (degrees 80.0) (degrees 10.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.25) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1261
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 2.0 4.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 1) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 128.0 64.0 1.0)
|
|
(sp-rnd-flt spt-g 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-b 64.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.053333335) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.013333334) (meters 0.016666668) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-conerot-x (degrees 80.0) (degrees 10.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1262
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 2.0 4.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 1) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.053333335) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.013333334) (meters 0.016666668) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-conerot-x (degrees 80.0) (degrees 10.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-brick-dust-wall
|
|
:id 287
|
|
:duration (seconds 0.017)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1263)
|
|
(sp-item 1264 :fade-after (meters 60) :falloff-to (meters 60))
|
|
(sp-item 1265 :fade-after (meters 60) :falloff-to (meters 60))
|
|
(sp-item 1266 :fade-after (meters 120) :falloff-to (meters 120))
|
|
(sp-item 1267 :fade-after (meters 120) :falloff-to (meters 120))
|
|
)
|
|
)
|
|
|
|
(defpart 1263
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x47 :page #xc))
|
|
(sp-flt spt-num 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 5) (meters 2) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 255.0)
|
|
(sp-rnd-flt spt-g 192.0 64.0 1.0)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-flt spt-rotvel-z (degrees 0.3))
|
|
(sp-flt spt-fade-a -1.6)
|
|
(sp-int spt-timer 20)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2)
|
|
)
|
|
)
|
|
|
|
(defpart 1264
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 4.0 8.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 192.0 64.0 1.0)
|
|
(sp-rnd-flt spt-g 128.0 64.0 1.0)
|
|
(sp-rnd-flt spt-b 128.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.10666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 720.0) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.21333334 -0.21333334 1.0)
|
|
(sp-rnd-flt spt-accel-y -5.4613333 -2.7306666 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 600)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.25) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1265
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x7 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 4.0 8.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 0.1) (meters 0.3) 1.0)
|
|
(sp-rnd-flt spt-r 128.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.10666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -1.2) (degrees 720.0) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.21333334 -0.21333334 1.0)
|
|
(sp-rnd-flt spt-accel-y -5.4613333 -2.7306666 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 600)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #x3e800700 #x3e800800 #x3e800900 #x3e800a00 #x3e800b00)
|
|
)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.25) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1266
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 2.0 4.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 1) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 128.0 64.0 1.0)
|
|
(sp-rnd-flt spt-g 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-b 64.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.053333335) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.013333334) (meters 0.016666668) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1267
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 2.0 4.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 1) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.053333335) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.013333334) (meters 0.016666668) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-brick-dust-slide
|
|
:id 288
|
|
:duration (seconds 0.017)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1268 :fade-after (meters 120) :falloff-to (meters 120))
|
|
(sp-item 1269 :fade-after (meters 120) :falloff-to (meters 120))
|
|
)
|
|
)
|
|
|
|
(defpart 1268
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 1.0 2.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.5) (meters 0.5) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 128.0 64.0 1.0)
|
|
(sp-rnd-flt spt-g 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-b 64.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.026666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.01) (meters 0.006666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-y (meters 0.0033333334) (meters 0.0033333334) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 1000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-flt spt-conerot-x (degrees 90.0))
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1269
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 1.0 2.0 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 0.5) (meters 0.5) 1.0)
|
|
(sp-rnd-int-flt spt-rot-z (degrees 0.0) 1 32768.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 64.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 8.0 24.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.026666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.01) (meters 0.006666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-y (meters 0.0033333334) (meters 0.0033333334) 1.0)
|
|
(sp-rnd-flt spt-fade-a -0.032 -0.032 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 1000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-flt spt-conerot-x (degrees 90.0))
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 0.6) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-birds
|
|
:id 289
|
|
:bounds (static-bspherem 0 8 0 45)
|
|
:parts ((sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1272 :fade-after (meters 120) :flags (bit1 launch-asap) :binding 1270)
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
(sp-item 1270 :flags (start-dead launch-asap) :binding 1271)
|
|
(sp-item 1271 :flags (is-3d start-dead))
|
|
)
|
|
)
|
|
|
|
(defun ruins-bird-bob-func ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix))
|
|
"Move the bird particles up and down, on a sinusoidal period with a wavelength of 300 frames
|
|
TODO - check argument types / what birds?"
|
|
(with-pp
|
|
(set! (-> arg2 vector 0 y)
|
|
(+ (-> arg1 key proc root trans y)
|
|
(* -2048.0 (sin (* 218.45334 (the float (mod (-> pp clock frame-counter) 300)))))
|
|
)
|
|
)
|
|
0
|
|
(none)
|
|
)
|
|
)
|
|
|
|
(defpart 1272
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xc9 :page #xc))
|
|
(sp-func spt-birth-func 'birth-func-random-next-time)
|
|
(sp-flt spt-num 1.0)
|
|
(sp-rnd-flt spt-x (meters -15) (meters 30) 1.0)
|
|
(sp-rnd-flt spt-y (meters 0) (meters 16) 1.0)
|
|
(sp-rnd-flt spt-z (meters -15) (meters 30) 1.0)
|
|
(sp-flt spt-scale-x (meters 1))
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 128.0)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-int spt-timer -1)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-3)
|
|
(sp-flt spt-userdata 199.98)
|
|
(sp-func spt-func 'ruins-bird-bob-func)
|
|
)
|
|
)
|
|
|
|
(defun sparticle-ruins-bird-moon ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 matrix))
|
|
"TODO - investigate, what even is this?"
|
|
(set! (-> arg2 vector 1 z) (the float (sar (shl (the int (+ -16384.0 (-> arg1 omega))) 48) 48)))
|
|
0
|
|
(none)
|
|
)
|
|
|
|
(defpart 1270
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xc9 :page #xc))
|
|
(sp-func spt-birth-func 'birth-func-copy-omega-to-z)
|
|
(sp-flt spt-num 1.0)
|
|
(sp-flt spt-x (meters 0))
|
|
(sp-flt spt-y (meters 0))
|
|
(sp-rnd-flt spt-z (meters 30) (meters 30) 1.0)
|
|
(sp-flt spt-scale-x (meters 0))
|
|
(sp-flt spt-rot-z (degrees 0.0))
|
|
(sp-rnd-flt spt-r 32.0 64.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-omega 0.0 65536.0 1.0)
|
|
(sp-rnd-flt spt-vel-x (meters 0.0014814815) (meters 0.0014814815) 1.0)
|
|
(sp-flt spt-vel-z (meters 0))
|
|
(sp-flt spt-scalevel-x (meters -0.04))
|
|
(sp-int spt-timer 600)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-3 ready-to-launch)
|
|
(sp-func spt-func 'sparticle-ruins-bird-moon)
|
|
(sp-int spt-next-time 199)
|
|
(sp-launcher-by-id spt-next-launcher 1273)
|
|
)
|
|
)
|
|
|
|
(defpart 1273
|
|
:init-specs ((sp-flt spt-scale-x (meters 8))
|
|
(sp-flt spt-scalevel-x (meters -0.08))
|
|
(sp-int spt-timer 600)
|
|
(sp-int spt-next-time 100)
|
|
(sp-launcher-by-id spt-next-launcher 1274)
|
|
)
|
|
)
|
|
|
|
(defpart 1274
|
|
:init-specs ((sp-flt spt-scale-x (meters 0))
|
|
(sp-flt spt-scalevel-x (meters -0.04))
|
|
(sp-int spt-timer 600)
|
|
(sp-int spt-next-time 199)
|
|
(sp-launcher-by-id spt-next-launcher 1273)
|
|
)
|
|
)
|
|
|
|
(defpart 1271
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x1 :page #x3e8))
|
|
(sp-func spt-birth-func 'birth-func-copy2-rot-color)
|
|
(sp-flt spt-num 2.0)
|
|
(sp-flt spt-scale-x (meters 5))
|
|
(sp-flt spt-scale-y (meters 2))
|
|
(sp-flt spt-a 128.0)
|
|
(sp-int spt-timer 5)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 aux-list sp-cpuinfo-flag-12)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-pillar-collapse-explosion
|
|
:id 290
|
|
:linger-duration (seconds 3)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 64)
|
|
:parts ((sp-item 1275) (sp-item 1276) (sp-item 1277) (sp-item 1278))
|
|
)
|
|
|
|
(defpart 1275
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-flt spt-num 10.0)
|
|
(sp-rnd-flt spt-x (meters 0) (meters 0.6) 1.0)
|
|
(sp-flt spt-y (meters 4))
|
|
(sp-rnd-flt spt-scale-x (meters 4.8) (meters 2.8) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 64.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.033333335) (meters 0.04) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.009333333) (meters 0.009333333) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.12) (degrees 0.24) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a 0.32 0.32 1.0)
|
|
(sp-rnd-flt spt-friction 0.94 0.04 1.0)
|
|
(sp-int spt-timer 2400)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int-plain-rnd spt-next-time 70 29 1)
|
|
(sp-launcher-by-id spt-next-launcher 1279)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
)
|
|
)
|
|
|
|
(defpart 1279
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.0046666665))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a 0.0)
|
|
(sp-int-plain-rnd spt-next-time 100 149 1)
|
|
(sp-launcher-by-id spt-next-launcher 1280)
|
|
)
|
|
)
|
|
|
|
(defpart 1280
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.0033333334))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.21333334 -0.10666667 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1276
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x32 :page #xc))
|
|
(sp-rnd-flt spt-num 10.0 20.0 1.0)
|
|
(sp-flt spt-x (meters 0.25))
|
|
(sp-flt spt-y (meters 4))
|
|
(sp-rnd-flt spt-scale-x (meters 1) (meters 2) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 128.0)
|
|
(sp-rnd-flt spt-g 96.0 32.0 1.0)
|
|
(sp-rnd-flt spt-b 64.0 32.0 1.0)
|
|
(sp-rnd-flt spt-a 16.0 32.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.13333334) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.006666667) (meters 0.0033333334) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.12) (degrees 0.24) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-accel-y -0.68266666 -2.7306666 1.0)
|
|
(sp-rnd-flt spt-friction 0.88 0.02 1.0)
|
|
(sp-int spt-timer 6000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int-plain-rnd spt-next-time 70 29 1)
|
|
(sp-launcher-by-id spt-next-launcher 1281)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 3) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1281
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.01))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int-plain-rnd spt-next-time 90 29 1)
|
|
(sp-launcher-by-id spt-next-launcher 1282)
|
|
)
|
|
)
|
|
|
|
(defpart 1282
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.0033333334))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.053333335 -0.053333335 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1277
|
|
:init-specs ((sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 10.0 20.0 1.0)
|
|
(sp-flt spt-y (meters 4))
|
|
(sp-rnd-flt spt-scale-x (meters 3.5) (meters 1.75) 1.0)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-rot-z)
|
|
:flags (sp-flag spflag7)
|
|
:random-rangef 655360.0
|
|
:random-multf 1.0
|
|
)
|
|
(sp-rnd-flt spt-scale-y (meters 4.5) (meters 2) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 64.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.05) (meters 0.1) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.02) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a -0.13333334)
|
|
(sp-rnd-flt spt-friction 0.92 0.02 1.0)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 80 1 0 #xc00000 #xc03300)
|
|
)
|
|
(sp-int spt-next-time 50)
|
|
(sp-launcher-by-id spt-next-launcher 1283)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-conerot-x)
|
|
:flags (sp-flag from-pointer)
|
|
:func '*sp-temp*
|
|
)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 2) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1278
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x34 :page #xc))
|
|
(sp-rnd-flt spt-num 10.0 20.0 1.0)
|
|
(sp-flt spt-y (meters 4))
|
|
(sp-rnd-flt spt-scale-x (meters 3.5) (meters 1.75) 1.0)
|
|
(sp-int spt-rot-x 4)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-rot-z)
|
|
:flags (sp-flag spflag7)
|
|
:random-rangef 65536.0
|
|
:random-multf 1.0
|
|
)
|
|
(sp-rnd-flt spt-scale-y (meters 4.5) (meters 2) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 64.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.05) (meters 0.1) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.02) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a -0.13333334)
|
|
(sp-rnd-flt spt-friction 0.92 0.02 1.0)
|
|
(sp-int spt-timer 2000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-func spt-func 'sparticle-motion-blur)
|
|
(sp-int spt-next-time 50)
|
|
(sp-launcher-by-id spt-next-launcher 1283)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-conerot-x)
|
|
:flags (sp-flag from-pointer)
|
|
:func '*sp-temp*
|
|
)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters -5) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1283
|
|
:init-specs ((sp-rnd-flt spt-scalevel-x (meters 0.02) (meters 0.02) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int-plain-rnd spt-next-time 60 19 1)
|
|
(sp-launcher-by-id spt-next-launcher 1284)
|
|
)
|
|
)
|
|
|
|
(defpart 1284
|
|
:init-specs ((sp-rnd-flt spt-scalevel-x (meters 0.01) (meters 0.01) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.18 -0.12 1.0)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-trailer
|
|
:id 291
|
|
:duration (seconds 0.017)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1285))
|
|
)
|
|
|
|
(defpart 1285
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 0.5 0.6 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 1) (meters 3) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.01) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.0033333334) (meters 0.01) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a 0.4 0.4 1.0)
|
|
(sp-flt spt-friction 0.98)
|
|
(sp-int spt-timer 650)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int spt-next-time 40)
|
|
(sp-launcher-by-id spt-next-launcher 1286)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 1) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1286
|
|
:init-specs ((sp-rnd-flt spt-fade-a -0.053333335 -0.053333335 1.0))
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-splash
|
|
:id 292
|
|
:duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 32)
|
|
:parts ((sp-item 1287 :period 900 :length 40)
|
|
(sp-item 1287 :period 900 :length 30)
|
|
(sp-item 1287 :period 900 :length 20)
|
|
(sp-item 1287 :period 900 :length 10)
|
|
(sp-item 1287 :period 900 :length 5)
|
|
(sp-item 1288 :flags (is-3d) :period 900 :length 30)
|
|
(sp-item 1289 :flags (is-3d) :period 900 :length 30)
|
|
)
|
|
)
|
|
|
|
(defpart 1289
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x2c :page #xc))
|
|
(sp-flt spt-num 3.0)
|
|
(sp-rnd-flt spt-x (meters 0) (meters 16) 1.0)
|
|
(sp-flt spt-y (meters 0))
|
|
(sp-rnd-flt spt-scale-x (meters 5) (meters 10) 1.0)
|
|
(sp-rnd-flt spt-rot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 128.0)
|
|
(sp-flt spt-g 128.0)
|
|
(sp-flt spt-b 128.0)
|
|
(sp-rnd-flt spt-a 32.0 32.0 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.033333335) (meters 0.05) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.053333335 -0.053333335 1.0)
|
|
(sp-int spt-timer 1200)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12)
|
|
(sp-rnd-flt spt-rotate-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1288
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x33 :page #xc))
|
|
(sp-flt spt-num 2.0)
|
|
(sp-rnd-flt spt-y (meters 0) (meters 4) 1.0)
|
|
(sp-flt spt-scale-x (meters 20))
|
|
(sp-rnd-flt spt-rot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 128.0)
|
|
(sp-flt spt-g 128.0)
|
|
(sp-flt spt-b 128.0)
|
|
(sp-flt spt-a 64.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.05) (meters 0.016666668) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.25) (meters 0.25) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a -0.53333336)
|
|
(sp-flt spt-accel-y -20.48)
|
|
(sp-int spt-timer 240)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12)
|
|
)
|
|
)
|
|
|
|
(defpart 1287
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x21 :page #xc))
|
|
(sp-flt spt-num 16.0)
|
|
(sp-flt spt-y (meters 3))
|
|
(sp-rnd-flt spt-scale-x (meters 0.6) (meters 0.05) 1.0)
|
|
(sp-int spt-rot-x 4)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 255.0)
|
|
(sp-flt spt-g 255.0)
|
|
(sp-flt spt-b 255.0)
|
|
(sp-rnd-flt spt-a 16.0 32.0 1.0)
|
|
(sp-rnd-flt spt-omega 8.192 4.096 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.23333333) (meters 0.26666668) 1.0)
|
|
(sp-rnd-flt spt-accel-y -20.48 -2.7306666 1.0)
|
|
(sp-flt spt-friction 0.95)
|
|
(sp-int spt-timer 1200)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12)
|
|
(sp-flt spt-userdata 0.0)
|
|
(sp-func spt-func 'check-drop-level-ruins-tower-userdata)
|
|
(sp-rnd-flt spt-conerot-x (degrees 70.0) (degrees 15.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 4) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1290
|
|
:init-specs ((sp-rnd-flt spt-r 64.0 64.0 1.0)
|
|
(sp-flt spt-g 0.0)
|
|
(sp-rnd-flt spt-b 128.0 128.0 1.0)
|
|
(sp-flt spt-fade-r -6.4)
|
|
(sp-flt spt-fade-b -12.8)
|
|
(sp-int-plain-rnd spt-next-time 0 224 1)
|
|
(sp-launcher-by-id spt-next-launcher 1290)
|
|
)
|
|
)
|
|
|
|
(defpart 1291
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x2c :page #xc))
|
|
(sp-flt spt-num 0.3)
|
|
(sp-rnd-flt spt-scale-x (meters 2) (meters 2.5) 1.0)
|
|
(sp-rnd-flt spt-rot-y (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-flt spt-r 255.0)
|
|
(sp-flt spt-g 255.0)
|
|
(sp-flt spt-b 255.0)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.04) (meters 0.013333334) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a 6.4)
|
|
(sp-int spt-timer 150)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-3 sp-cpuinfo-flag-12)
|
|
(sp-int spt-next-time 20)
|
|
(sp-launcher-by-id spt-next-launcher 1292)
|
|
)
|
|
)
|
|
|
|
(defpart 1292
|
|
:init-specs ((sp-rnd-flt spt-fade-a -0.53333336 -0.53333336 1.0))
|
|
)
|
|
|
|
(defun check-drop-level-ruins-tower-userdata-nosplat ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 vector))
|
|
"TODO - docs"
|
|
(when (< (-> arg2 y) (-> arg1 user-float))
|
|
(let ((vec (new 'stack-no-clear 'vector)))
|
|
(sp-kill-particle arg0 arg1)
|
|
(set! (-> vec x) (-> arg2 x))
|
|
(set! (-> vec y) (-> arg1 user-float))
|
|
(set! (-> vec z) (-> arg2 z))
|
|
(set! (-> vec w) 1.0)
|
|
)
|
|
)
|
|
(sparticle-motion-blur arg0 arg1 arg2)
|
|
(none)
|
|
)
|
|
|
|
(defun check-drop-level-ruins-tower-userdata ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 vector))
|
|
"TODO - docs"
|
|
(when (< (-> arg2 y) (-> arg1 user-float))
|
|
(let ((vec (new 'stack-no-clear 'vector)))
|
|
(sp-kill-particle arg0 arg1)
|
|
(set-vector! vec (-> arg2 x) (-> arg1 user-float) (-> arg2 z) 1.0)
|
|
(let ((t9-1 sp-launch-particles-var)
|
|
(a0-3 *sp-particle-system-3d*)
|
|
(a1-2 (-> *part-id-table* 1291))
|
|
(a2-1 *launch-matrix*)
|
|
)
|
|
(set! (-> a2-1 trans quad) (-> vec quad))
|
|
(t9-1 a0-3 a1-2 a2-1 (the-as sparticle-launch-state #f) (the-as sparticle-launch-control #f) 1.0)
|
|
)
|
|
)
|
|
)
|
|
(sparticle-motion-blur arg0 arg1 arg2)
|
|
(none)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-trailer-small
|
|
:id 293
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1293))
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-explosion-small
|
|
:id 294
|
|
:duration (seconds 3)
|
|
:linger-duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1294 :period 9600 :length 25)
|
|
(sp-item 1295 :period 9600 :length 10 :offset 10)
|
|
(sp-item 1296 :period 9600 :length 100 :offset 25)
|
|
(sp-item 1297 :period 9600 :length 35 :offset 10)
|
|
(sp-item 1298 :period 9600 :length 50 :offset 15)
|
|
(sp-item 1299 :period 9600 :length 50 :offset 15)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-explosion-medium
|
|
:id 295
|
|
:duration (seconds 3)
|
|
:linger-duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1294 :period 9600 :length 25)
|
|
(sp-item 1295 :period 9600 :length 10 :offset 10)
|
|
(sp-item 1296 :period 9600 :length 100 :offset 25)
|
|
(sp-item 1297 :period 9600 :length 35 :offset 10)
|
|
(sp-item 1298 :period 9600 :length 50 :offset 15)
|
|
(sp-item 1299 :period 9600 :length 50 :offset 15)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-explosion-large
|
|
:id 296
|
|
:duration (seconds 3)
|
|
:linger-duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1294 :period 9600 :length 25)
|
|
(sp-item 1295 :period 9600 :length 10 :offset 10)
|
|
(sp-item 1296 :period 9600 :length 100 :offset 25)
|
|
(sp-item 1297 :period 9600 :length 35 :offset 10)
|
|
(sp-item 1298 :period 9600 :length 50 :offset 15)
|
|
(sp-item 1299 :period 9600 :length 50 :offset 15)
|
|
)
|
|
)
|
|
|
|
(defpart 1297
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #xc9 :page #xc))
|
|
(sp-flt spt-num 32.0)
|
|
(sp-rnd-flt spt-y (meters -3.5) (meters 2) 1.0)
|
|
(sp-flt spt-scale-x (meters 3.5))
|
|
(sp-int spt-rot-x 4)
|
|
(sp-rnd-flt spt-scale-y (meters 0.3) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 64.0 32.0 1.0)
|
|
(sp-flt spt-omega 12.288)
|
|
(sp-rnd-flt spt-vel-y (meters 0.5) (meters 0.6666667) 1.0)
|
|
(sp-flt spt-fade-b -8.0)
|
|
(sp-rnd-flt spt-accel-y -13.653334 -6.826667 1.0)
|
|
(sp-rnd-flt spt-friction 0.9 0.08 1.0)
|
|
(sp-int-plain-rnd spt-timer 450 299 1)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-func spt-func 'sparticle-motion-blur)
|
|
(sp-int spt-next-time 15)
|
|
(sp-launcher-by-id spt-next-launcher 1300)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 140.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
)
|
|
)
|
|
|
|
(defpart 1300
|
|
:init-specs ((sp-rnd-flt spt-fade-a -0.096 -0.096 1.0))
|
|
)
|
|
|
|
(defpart 1299
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x34 :page #xc))
|
|
(sp-rnd-flt spt-num 8.0 5.0 1.0)
|
|
(sp-flt spt-y (meters -2.5))
|
|
(sp-rnd-flt spt-scale-x (meters 13) (meters 12) 1.0)
|
|
(sp-int spt-rot-x 4)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-rot-z)
|
|
:flags (sp-flag spflag7)
|
|
:random-rangef 65536.0
|
|
:random-multf 1.0
|
|
)
|
|
(sp-rnd-flt spt-scale-y (meters 18) (meters 14) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.2) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.06666667) (meters 0.06666667) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a -0.26666668)
|
|
(sp-rnd-flt spt-friction 0.92 0.02 1.0)
|
|
(sp-int spt-timer 1000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-func spt-func 'sparticle-motion-blur)
|
|
(sp-int spt-next-time 25)
|
|
(sp-launcher-by-id spt-next-launcher 1301)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-conerot-x)
|
|
:flags (sp-flag from-pointer)
|
|
:func '*sp-temp*
|
|
)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 2) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1301
|
|
:init-specs ((sp-rnd-flt spt-scalevel-x (meters 0.033333335) (meters 0.033333335) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int-plain-rnd spt-next-time 30 9 1)
|
|
(sp-launcher-by-id spt-next-launcher 1302)
|
|
)
|
|
)
|
|
|
|
(defpart 1302
|
|
:init-specs ((sp-rnd-flt spt-scalevel-x (meters 0.016666668) (meters 0.016666668) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.225 -0.225 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1298
|
|
:init-specs ((sp-func spt-birth-func 'birth-func-texture-group)
|
|
(sp-rnd-flt spt-num 8.0 5.0 1.0)
|
|
(sp-flt spt-y (meters -2.5))
|
|
(sp-rnd-flt spt-scale-x (meters 13) (meters 12) 1.0)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-rot-z)
|
|
:flags (sp-flag spflag7)
|
|
:random-rangef 655360.0
|
|
:random-multf 1.0
|
|
)
|
|
(sp-rnd-flt spt-scale-y (meters 18) (meters 14) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 16.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.2) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.06666667) (meters 0.06666667) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a -0.26666668)
|
|
(sp-rnd-flt spt-friction 0.92 0.02 1.0)
|
|
(sp-int spt-timer 1000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-userdata)
|
|
:flags (sp-flag plain-v2)
|
|
:object (new 'static 'boxed-array :type int32 40 1 0 #xc00000 #xc03300)
|
|
)
|
|
(sp-int spt-next-time 25)
|
|
(sp-launcher-by-id spt-next-launcher 1301)
|
|
(new 'static 'sp-field-init-spec
|
|
:field (sp-field-id spt-conerot-x)
|
|
:flags (sp-flag from-pointer)
|
|
:func '*sp-temp*
|
|
)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 2) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1296
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x32 :page #xc))
|
|
(sp-rnd-flt spt-num 6.0 8.0 1.0)
|
|
(sp-flt spt-x (meters 0.25))
|
|
(sp-flt spt-y (meters -2.5))
|
|
(sp-rnd-flt spt-scale-x (meters 3) (meters 5) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 16.0 48.0 1.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.33333334) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.033333335) (meters 0.033333335) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.12) (degrees 0.24) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-accel-y -1.3653333 -9.557333 1.0)
|
|
(sp-rnd-flt spt-friction 0.88 0.02 1.0)
|
|
(sp-int spt-timer 3000)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int-plain-rnd spt-next-time 35 14 1)
|
|
(sp-launcher-by-id spt-next-launcher 1303)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
(sp-rnd-flt spt-conerot-radius (meters 5) (meters 20) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1303
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.016666668))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-int-plain-rnd spt-next-time 45 14 1)
|
|
(sp-launcher-by-id spt-next-launcher 1304)
|
|
)
|
|
)
|
|
|
|
(defpart 1304
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.006666667))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.10666667 -0.10666667 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1294
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 4.0 4.0 1.0)
|
|
(sp-rnd-flt spt-x (meters 0) (meters 0.6) 1.0)
|
|
(sp-flt spt-y (meters -2.5))
|
|
(sp-rnd-flt spt-scale-x (meters 16.5) (meters 20) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.33333334) (meters 0.4) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.06666667) (meters 0.06666667) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.12) (degrees 0.24) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a 0.32 0.32 1.0)
|
|
(sp-rnd-flt spt-friction 0.89 0.04 1.0)
|
|
(sp-int spt-timer 2400)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int-plain-rnd spt-next-time 35 14 1)
|
|
(sp-launcher-by-id spt-next-launcher 1305)
|
|
(sp-rnd-flt spt-conerot-x (degrees -1440.0) (degrees 2880.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-flt spt-rotate-y (degrees 0.0))
|
|
)
|
|
)
|
|
|
|
(defpart 1305
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.033333335))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-flt spt-fade-a 0.0)
|
|
(sp-int-plain-rnd spt-next-time 600 599 1)
|
|
(sp-launcher-by-id spt-next-launcher 1306)
|
|
)
|
|
)
|
|
|
|
(defpart 1306
|
|
:init-specs ((sp-flt spt-scalevel-x (meters 0.016666668))
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a -0.026666667 -0.026666667 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1295
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :index #x31 :page #xc))
|
|
(sp-flt spt-num 4.0)
|
|
(sp-flt spt-y (meters -2.5))
|
|
(sp-rnd-flt spt-scale-x (meters 16) (meters 16) 1.0)
|
|
(sp-int spt-rot-x 4)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 360.0) 1.0)
|
|
(sp-rnd-flt spt-scale-y (meters 1) (meters 0.5) 1.0)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-rnd-flt spt-a 64.0 64.0 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.26666668) (meters 0.33333334) 1.0)
|
|
(sp-flt spt-fade-a -0.7111111)
|
|
(sp-int spt-timer 90)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-trailer-medium
|
|
:id 297
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1293))
|
|
)
|
|
|
|
(defpart 1293
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 0.5 0.6 1.0)
|
|
(sp-rnd-flt spt-y (meters 0) (meters -10) 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 12) (meters 12) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0) (meters 0.05) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.026666667) (meters 0.04) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a 0.16 0.16 1.0)
|
|
(sp-rnd-flt spt-accel-y -1.024 -0.4096 1.0)
|
|
(sp-flt spt-friction 0.98)
|
|
(sp-int spt-timer 1200)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int spt-next-time 150)
|
|
(sp-launcher-by-id spt-next-launcher 1286)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 16) 1.0)
|
|
)
|
|
)
|
|
|
|
(defpart 1307
|
|
:init-specs ((sp-rnd-flt spt-fade-a -0.04 -0.04 1.0))
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-splash-medium
|
|
:id 298
|
|
:duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 32)
|
|
:parts ((sp-item 1287 :period 900 :length 40)
|
|
(sp-item 1287 :period 900 :length 30)
|
|
(sp-item 1287 :period 900 :length 20)
|
|
(sp-item 1287 :period 900 :length 10)
|
|
(sp-item 1287 :period 900 :length 5)
|
|
(sp-item 1288 :flags (is-3d) :period 900 :length 30)
|
|
(sp-item 1289 :flags (is-3d) :period 900 :length 30)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-splash-large
|
|
:id 299
|
|
:duration (seconds 2)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 32)
|
|
:parts ((sp-item 1287 :period 900 :length 40)
|
|
(sp-item 1287 :period 900 :length 30)
|
|
(sp-item 1287 :period 900 :length 20)
|
|
(sp-item 1287 :period 900 :length 10)
|
|
(sp-item 1287 :period 900 :length 5)
|
|
(sp-item 1288 :flags (is-3d) :period 900 :length 30)
|
|
(sp-item 1289 :flags (is-3d) :period 900 :length 30)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-splash-small
|
|
:id 300
|
|
:duration (seconds 0.267)
|
|
:flags (use-local-clock)
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1287 :period 900 :length 40)
|
|
(sp-item 1287 :period 900 :length 30)
|
|
(sp-item 1287 :period 900 :length 20)
|
|
(sp-item 1287 :period 900 :length 10)
|
|
(sp-item 1287 :period 900 :length 5)
|
|
(sp-item 1288 :flags (is-3d) :period 900 :length 30)
|
|
(sp-item 1289 :flags (is-3d) :period 900 :length 30)
|
|
)
|
|
)
|
|
|
|
(defpartgroup group-ruins-tower-trailer-large
|
|
:id 301
|
|
:bounds (static-bspherem 0 0 0 15)
|
|
:parts ((sp-item 1308))
|
|
)
|
|
|
|
(defpart 1308
|
|
:init-specs ((sp-tex spt-texture (new 'static 'texture-id :page #xc))
|
|
(sp-rnd-flt spt-num 0.5 0.6 1.0)
|
|
(sp-rnd-flt spt-scale-x (meters 20) (meters 20) 1.0)
|
|
(sp-rnd-flt spt-rot-z (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-copy-from-other spt-scale-y -4)
|
|
(sp-rnd-flt spt-r 64.0 128.0 1.0)
|
|
(sp-copy-from-other spt-g -1)
|
|
(sp-copy-from-other spt-b -1)
|
|
(sp-flt spt-a 0.0)
|
|
(sp-rnd-flt spt-vel-y (meters 0.013333334) (meters 0.06666667) 1.0)
|
|
(sp-rnd-flt spt-scalevel-x (meters 0.04) (meters 0.053333335) 1.0)
|
|
(sp-rnd-flt spt-rotvel-z (degrees -0.3) (degrees 0.6) 1.0)
|
|
(sp-copy-from-other spt-scalevel-y -4)
|
|
(sp-rnd-flt spt-fade-a 0.16 0.16 1.0)
|
|
(sp-rnd-flt spt-accel-y -1.024 -0.4096 1.0)
|
|
(sp-flt spt-friction 0.98)
|
|
(sp-int spt-timer 1200)
|
|
(sp-cpuinfo-flags sp-cpuinfo-flag-2 sp-cpuinfo-flag-12)
|
|
(sp-int spt-next-time 150)
|
|
(sp-launcher-by-id spt-next-launcher 1286)
|
|
(sp-rnd-flt spt-conerot-x (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-y (degrees 0.0) (degrees 3600.0) 1.0)
|
|
(sp-rnd-flt spt-conerot-radius (meters 0) (meters 16) 1.0)
|
|
)
|
|
)
|