jak-project/goal_src/engine/ambient/weather-part.gc
Tyler Wilding 1c7c2132eb
decomp: weather-part (#798)
* stash

* decomp: finish what is currently possible in `time-of-day`

* need to know how sp-field-init-spec's functions are called

* solved some issues, but going to be blocked by the sparticle-group-item

* decompiler: Add support for `sparticle-launch-group` from static data

* decomp: finish `weather-part`
2021-08-31 21:36:19 -04:00

2570 lines
62 KiB
Common Lisp

;;-*-Lisp-*-
(in-package goal)
;; name: weather-part.gc
;; name in dgo: weather-part
;; dgos: GAME, ENGINE
;; failed to figure out what this is:
(set!
(-> *part-group-id-table* 188)
(new 'static 'sparticle-launch-group
:length 66
:duration #xbb8
:linger-duration #x5dc
:flags #x4
:name "group-rain-screend-drop-real"
:launcher
(new 'static 'inline-array sparticle-group-item 66
(new 'static 'sparticle-group-item :launcher #x12 :binding #x13)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x13 :flags #xc :binding #x14)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x14 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x15 :binding #x16)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x16 :flags #xc :binding #x17)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
(new 'static 'sparticle-group-item :launcher #x17 :flags #xc)
)
:bounds (new 'static 'sphere :w 65536.0)
)
)
;; definition for symbol group-rain-screend-drop, type sparticle-launch-group
(define group-rain-screend-drop (-> *part-group-id-table* 188))
;; failed to figure out what this is:
(set!
(-> *part-id-table* 21)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3dcccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:initial-value -963641344
:random-range #x47100000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value -968884224
:random-range #x46c00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x46200000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41400000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x442aaaab
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1085485875
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value 10
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 22)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200900)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x45c00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x43088889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1085485875
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x26
:flags #x1
:initial-value -1070677186
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x10e
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 15
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 24)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 24)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 4
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x41888889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1115125623
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 23)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 14
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xe
:initial-value 12
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x45800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x454ccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x454ccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x21
:flags #x1
:initial-value #x40c22e45
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x22
:flags #x1
:initial-value #x42888889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x23
:flags #x1
:initial-value #x40422e45
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x26
:flags #x1
:initial-value -1070677186
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x10e
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x100
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 30
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 25)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 25)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 2
(new 'static 'sp-field-init-spec
:field #x22
:flags #x1
:initial-value -1063004405
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 18)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x201200)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3dcccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:initial-value -963641344
:random-range #x47100000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value -968884224
:random-range #x46c00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x46800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41400000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x44888889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1085485875
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value 10
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 19)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200900)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x46266666
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x43888889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1085485875
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x26
:flags #x1
:initial-value -1070677186
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x10e
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 15
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 26)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 26)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 4
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x42088889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1115125623
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 20)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 14
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xe
:initial-value 24
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x46400000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x45cccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x45cccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x21
:flags #x1
:initial-value #x41422e45
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x22
:flags #x1
:initial-value #x43088889
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x23
:flags #x1
:initial-value #x40c22e45
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x26
:flags #x1
:initial-value -1070677186
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x10e
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x100
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 30
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 27)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 27)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 2
(new 'static 'sp-field-init-spec
:field #x22
:flags #x1
:initial-value -1054615797
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-group-id-table* 34)
(new 'static 'sparticle-launch-group
:length 3
:duration #xbb8
:linger-duration #x5dc
:flags #x2
:name "group-stars"
:launcher
(new 'static 'inline-array sparticle-group-item 3
(new 'static 'sparticle-group-item :launcher #x1c)
(new 'static 'sparticle-group-item :launcher #x1d)
(new 'static 'sparticle-group-item :launcher #x1e)
)
:bounds (new 'static 'sphere :w 32768.0)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 28)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 18
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x48200000
:random-range #x48200000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value #x3eda740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 60
:random-range #xef
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 31)
(new 'static 'sp-field-init-spec
:field #x3a
:flags #x1
:initial-value -964876334
:random-range #x46fd27d2
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3b
:flags #x1
:random-range #x48800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3e
:flags #x1
:initial-value #x4b9c4000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 31)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 4
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value #x1c9c254
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 32)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 32)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 2
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1092979698
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 29)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 18
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x48200000
:random-range #x48200000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value #x3eda740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 60
:random-range #xef
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 31)
(new 'static 'sp-field-init-spec
:field #x3a
:flags #x1
:initial-value #x45aaaaab
:random-range #x4627d27d
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3b
:flags #x1
:random-range #x49000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3e
:flags #x1
:initial-value #x4b9c4000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 30)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 18
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x48200000
:random-range #x48200000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value #x3eda740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 60
:random-range #xef
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 31)
(new 'static 'sp-field-init-spec
:field #x3a
:flags #x1
:initial-value #x462aaaab
:random-range #x45a4fa50
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3b
:flags #x1
:random-range #x49800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3e
:flags #x1
:initial-value #x4b9c4000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 33)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 21
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x40800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:initial-value #x47200000
:random-range #x47200000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value #x46000000
:random-range #x47600000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x444ccccd
:random-range #x43cccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #xe :initial-value 4 :random-mult 1)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1a
:flags #x1
:initial-value -1037838582
:random-range -1051036658
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value -1017482226
:random-range #x43da740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value #x3f5a740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x5dc
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x5004
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 75
:random-range 74
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 35)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 34)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 21
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200f00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:random-range #x47a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x444ccccd
:random-range #x43cccccd
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #xe :initial-value 4 :random-mult 1)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1a
:flags #x1
:initial-value -1037838582
:random-range -1051036658
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value -1017482226
:random-range #x43da740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value #x3f5a740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x5dc
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x5004
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value 75
:random-range 74
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 35)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 35)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 4
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x32
:initial-value #x4b0
:random-mult 1
)
(new 'static 'sp-field-init-spec :field #x33 :flags #x6 :initial-value 36)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 36)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 2
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1084591090
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; definition for function update-snow
;; INFO: Return type mismatch int vs none.
(defun update-snow ((arg0 target))
(let ((gp-0 (-> arg0 control trans)))
(let
((f0-0
(lerp-scale
0.0
1.0
(vector-length (-> arg0 control transv))
2048.0
40960.0
)
)
)
(set!
(-> *part-id-table* 34 init-specs 1 initial-value)
(the-as int (- 1.0 f0-0))
)
(set!
(-> *part-id-table* 33 init-specs 1 initial-value)
(the-as int (* 4.0 f0-0))
)
)
(set!
(-> *part-id-table* 33 init-specs 19 initial-value)
(the-as int (+ 32768.0 (vector-y-angle (-> arg0 control transv))))
)
(sp-launch-particles-var
*sp-particle-system-2d*
(-> *part-id-table* 34)
gp-0
#f
#f
1.0
)
(sp-launch-particles-var
*sp-particle-system-2d*
(-> *part-id-table* 33)
gp-0
#f
#f
1.0
)
)
0
(none)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 37)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3fc00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:random-range #x47a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x42f5c28f
:random-range #x42f5c28f
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x45000000
:random-range #x45000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42480000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42a00000
:random-range #x425c0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42480000
:random-range #x42480000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41800000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1a
:flags #x1
:initial-value -1014462327
:random-range -1006073719
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #xf0
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x4004
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'check-drop-level-rain
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 38)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 15
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x40900000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xa
:flags #x1
:random-range #x47a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x42f5c28f
:random-range #x42f5c28f
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x45000000
:random-range #x45000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42480000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42a00000
:random-range #x425c0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42480000
:random-range #x42480000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41800000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1a
:flags #x1
:initial-value -1014462327
:random-range -1022850935
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #xf0
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x4004
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 39)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 16
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200900)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x2
:random-range 1
:random-mult #x40000000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x434ccccd
:random-range #x4399999a
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42dc0000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42800000
:random-range #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x42800000
:random-range #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1a
:flags #x1
:initial-value #x41da740e
:random-range #x425a740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1084591090
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x26
:flags #x1
:initial-value -1070677186
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x96
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x3a
:flags #x1
:initial-value #x458e38e4
:random-range #x45e38e39
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x3b
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 40)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 17
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x201e00)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xb
:flags #x1
:initial-value #x42a3d70a
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x45800000
:random-range #x45800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xf
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42dc0000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x43000000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42c00000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x41800000
:random-range #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1c
:flags #x1
:initial-value #x41da740e
:random-range #x41da740e
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x20
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x24
:flags #x1
:initial-value -1093874483
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value #x78
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x3f
:flags #x1
:random-range #x47800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; definition for function check-drop-level-rain
(defun check-drop-level-rain ((arg0 int) (arg1 sparticle-cpuinfo) (arg2 vector))
(when (< (-> arg2 y) (-> arg1 user-float))
(let ((gp-0 (new 'stack-no-clear 'vector)))
(sp-kill-particle (the-as sparticle-system arg0) arg1)
(set-vector! gp-0 (-> arg2 x) (-> arg1 user-float) (-> arg2 z) 1.0)
(sp-launch-particles-var
*sp-particle-system-2d*
(-> *part-id-table* 39)
gp-0
#f
#f
1.0
)
(sp-launch-particles-var
*sp-particle-system-3d*
(-> *part-id-table* 40)
gp-0
#f
#f
1.0
)
)
)
(none)
)
;; definition for function update-rain
;; INFO: Return type mismatch int vs none.
(defun update-rain ((arg0 target))
(with-pp
(let ((a2-0 (new 'stack-no-clear 'vector)))
(set! (-> a2-0 x) (-> arg0 control transv x))
(set! (-> a2-0 y) 0.0)
(set! (-> a2-0 z) (-> arg0 control transv z))
(set! (-> a2-0 w) 1.0)
(let
((gp-0
(vector+float*!
(new 'stack-no-clear 'vector)
(-> arg0 control trans)
a2-0
0.0
)
)
)
(let* ((s5-0 (matrix-local->world #f #f))
(f28-0
(lerp-scale 122.88 245.76 (fabs (-> s5-0 vector 2 y)) 0.0 0.7)
)
(f30-0
(lerp-scale 2048.0 245.76 (fabs (-> s5-0 vector 2 y)) 0.0 0.7)
)
)
(let ((f26-0 (lerp-scale 0.0 0.1 (-> s5-0 vector 2 y) 0.3 0.7))
(f0-10 (lerp-scale 1.0 0.1 (-> s5-0 vector 2 y) 0.3 0.7))
)
(when (< 0.0 f26-0)
(let ((a1-6 (new 'stack-no-clear 'event-message-block)))
(set! (-> a1-6 from) pp)
(set! (-> a1-6 num-params) 2)
(set! (-> a1-6 message) 'part-water-drip)
(set! (-> a1-6 param 0) (the-as uint f26-0))
(set! (-> a1-6 param 1) (the-as uint f0-10))
(send-event-function *camera* a1-6)
)
)
)
(set!
(-> *part-id-table* 37 init-specs 4 initial-value)
(the-as int f28-0)
)
(set!
(-> *part-id-table* 37 init-specs 4 random-range)
(the-as int f28-0)
)
(set!
(-> *part-id-table* 38 init-specs 4 initial-value)
(the-as int f28-0)
)
(set!
(-> *part-id-table* 38 init-specs 4 random-range)
(the-as int f28-0)
)
(set!
(-> *part-id-table* 37 init-specs 5 initial-value)
(the-as int f30-0)
)
(set!
(-> *part-id-table* 37 init-specs 5 random-range)
(the-as int f30-0)
)
(set!
(-> *part-id-table* 38 init-specs 5 initial-value)
(the-as int f30-0)
)
(set!
(-> *part-id-table* 38 init-specs 5 random-range)
(the-as int f30-0)
)
)
(sp-launch-particles-var
*sp-particle-system-2d*
(-> *part-id-table* 37)
gp-0
#f
#f
1.0
)
(sp-launch-particles-var
*sp-particle-system-2d*
(-> *part-id-table* 38)
gp-0
#f
#f
1.0
)
)
)
0
(none)
)
)
;; definition for function cam-master-effect
;; INFO: Return type mismatch int vs none.
(defbehavior cam-master-effect camera-master ()
(when
(<
(+ (-> *display* base-frame-counter) -3000)
(the-as int (-> self water-drip-time))
)
(set!
(-> *part-id-table* 21 init-specs 1 initial-value)
(the-as int (-> self water-drip-mult))
)
(set!
(-> *part-id-table* 18 init-specs 1 initial-value)
(the-as int (* 0.9 (-> self water-drip-mult)))
)
(set!
(-> *part-id-table* 22 init-specs 11 initial-value)
(the-as int (* -2.7306666 (-> self water-drip-speed)))
)
(set!
(-> *part-id-table* 23 init-specs 8 initial-value)
(the-as int (* -2.7306666 (-> self water-drip-speed)))
)
(set!
(-> *part-id-table* 19 init-specs 11 initial-value)
(the-as int (* -2.7306666 (-> self water-drip-speed)))
)
(set!
(-> *part-id-table* 20 init-specs 8 initial-value)
(the-as int (* -2.7306666 (-> self water-drip-speed)))
)
(dummy-11 (-> self water-drip) *zero-vector*)
)
0
(none)
)
;; definition for function sparticle-track-sun
;; INFO: Return type mismatch int vs none.
(defun sparticle-track-sun ((arg0 int) (arg1 sparticle-cpuinfo) (arg2 matrix))
(-> arg1 key)
(let ((s5-0 (the int (-> arg1 user-float))))
(let* ((a1-1 (math-camera-pos))
(a2-1 (-> *sky-parms* upload-data sun (/ s5-0 4)))
(v1-3
(vector+float*!
(new 'stack-no-clear 'vector)
a1-1
(the-as vector a2-1)
4096.0
)
)
)
(set! (-> arg2 vector 0 x) (-> v1-3 x))
(set! (-> arg2 vector 0 y) (-> v1-3 y))
(set! (-> arg2 vector 0 z) (-> v1-3 z))
)
(if (!= (-> arg2 vector 2 w) 0.0)
(set! (-> arg2 vector 2 w) (* 128.0 (-> *time-of-day-context* sun-fade)))
)
(cond
((zero? s5-0)
(set!
(-> arg2 vector 2 x)
(-> *time-of-day-context* current-sun sun-color x)
)
(set!
(-> arg2 vector 2 y)
(-> *time-of-day-context* current-sun sun-color y)
)
(set!
(-> arg2 vector 2 z)
(-> *time-of-day-context* current-sun sun-color z)
)
)
((or (= s5-0 1) (= s5-0 2))
(set!
(-> arg2 vector 2 x)
(* 0.25 (-> *time-of-day-context* current-sun sun-color x))
)
(set!
(-> arg2 vector 2 y)
(* 0.25 (-> *time-of-day-context* current-sun sun-color y))
)
(set!
(-> arg2 vector 2 z)
(* 0.25 (-> *time-of-day-context* current-sun sun-color z))
)
)
)
)
0
(none)
)
;; failed to figure out what this is:
(set!
(-> *part-group-id-table* 35)
(new 'static 'sparticle-launch-group
:length 3
:duration #xbb8
:linger-duration #x5dc
:flags #x2
:name "group-sun"
:launcher
(new 'static 'inline-array sparticle-group-item 3
(new 'static 'sparticle-group-item :launcher #x79e)
(new 'static 'sparticle-group-item :launcher #x79f)
(new 'static 'sparticle-group-item :launcher #x7a0)
)
:bounds (new 'static 'sphere :w 286720.0)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1950)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 13
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4a960000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x500c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1951)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 15
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x203500)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4b2f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x4b098000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value -1055808844
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1952)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 15
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x203500)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4b098000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x4b2f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:initial-value #x42000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value #x4111a2b4
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:initial-value #x40000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-group-id-table* 36)
(new 'static 'sparticle-launch-group
:length 3
:duration #xbb8
:linger-duration #x5dc
:flags #x2
:name "group-green-sun"
:launcher
(new 'static 'inline-array sparticle-group-item 3
(new 'static 'sparticle-group-item :launcher #x7b6)
(new 'static 'sparticle-group-item :launcher #x7b7)
(new 'static 'sparticle-group-item :launcher #x7b8)
)
:bounds (new 'static 'sphere :w 286720.0)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1974)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 13
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x200400)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4a160000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x3
:initial-value -4
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x437f0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:initial-value #x40800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1975)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 15
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x203500)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4aaf0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x4a898000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value -1055808844
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:initial-value #x40a00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)
;; failed to figure out what this is:
(set!
(-> *part-id-table* 1976)
(new 'static 'sparticle-launcher
:init-specs
(new 'static 'inline-array sp-field-init-spec 15
(new 'static 'sp-field-init-spec :field #x1 :initial-value #x203500)
(new 'static 'sp-field-init-spec
:field #x6
:flags #x1
:initial-value #x3f800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #xd
:flags #x1
:initial-value #x4a898000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x10
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x11
:flags #x1
:initial-value #x4aaf0000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x12
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x13
:flags #x1
:initial-value #x42800000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x14
:flags #x1
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x15
:flags #x1
:initial-value #x43000000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x1f
:flags #x1
:initial-value #x4111a2b4
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x2e
:initial-value -1
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x2f
:initial-value #x400c
:random-mult 1
)
(new 'static 'sp-field-init-spec
:field #x30
:flags #x1
:initial-value #x40c00000
:random-mult #x3f800000
)
(new 'static 'sp-field-init-spec
:field #x31
:flags #x5
:func 'sparticle-track-sun
)
(new 'static 'sp-field-init-spec :field #x43)
)
)
)